刷新当前条记录(针对画面某控件修改而引起的当前条数据刷新)

最近碰到一个问题,需要一个控件modified之后,给另外几个字段赋值,

但是碰到问题了,要么就是必须光标离开该控件之后,别的字段值才会变化;

要么就是整个画面重新加载,数据光标重新选中在第一条数据上。

 

针对以上问题,我查看了系统的采购订单过账入库之后,采购订单头状态更新的代码。

 

代码在  purchFormletter \ mainonserver    方法中,有如下方法,

PurchFormLetter::updateCallerDataSource(purchTable_ds, recordExists, doExecuteQuery);

进去之后发现,内容如下:

if (recordExists)
    {
        if (doExecuteQuery)
        {
            purchTable_ds.executeQuery();
        }
        else
        {
            purchTable_ds.reRead();
            purchTable_ds.reFresh();
            purchTable_ds.editPurch();
            purchTable_ds.reReadLines();
        }
    }
    else
    {
        purchTable_ds.reSearch();
    }

如上代码,当数据存在的情况,要么只执行重新查询数据,要么执行刷新当前记录。

没错,就是

purchTable_ds.reRead();
purchTable_ds.reFresh();

上述两行代码起了刷新当前记录的作用。

 

posted on 2015-05-11 16:38  AX凡人学习传  阅读(603)  评论(0编辑  收藏  举报