我使用C++ Builder 6.0

我使用TADODataSet执行以下SQL语句:

SELECT Id, SUM(Saldo) AS Saldo
FROM Table
GROUP BY Id

我仅将此数据集用于报告。不需要更新日期回到数据库。
当我尝试修改字段“Saldo”时
adospCard->Edit();
adospCard->FieldByName("Saldo")->AsFloat=0.0;
adospCard->Post();

我得到错误:
无法修改“Saldo”字段。
我添加这行
adospCard->FieldByName("Saldo")->ReadOnly=false;

并且不再发生错误,但字段“Saldo”没有更改。
adospCard->Edit();
//adospCard->FieldByName("Saldo")->AsFloat=1536.5
adospCard->FieldByName("Saldo")->AsFloat=0.0;
//adospCard->FieldByName("Saldo")->AsFloat=0
adospCard->Post();
//adospCard->FieldByName("Saldo")->AsFloat=1536.5

如何更改“Saldo”字段值?

最佳答案

  • 将计算出的字段添加到数据集中。
  • 计算Saldo的正确值
    在此计算字段中(您可以
    如果您使用Saldo作为来源
    想要)
  • 在报表中显示此计算字段
    代替Saldo字段。

  • 编辑:
    有关如何添加计算字段的示例,请参见hereherehere

    --jeroen

    关于c++ - 尝试修改只读的DataSet字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4781594/

    10-11 23:04
    查看更多