我现在是用 WebSnap 做B/S 方面的应用。碰到的问题如下:
一个TWebDataModule 模块中有 TADODataSet 和 TDataSetAdapter配合向一个TWebPageModule 提供数据,在页面设计模块中(TWebPageModule),TAdapterPageProducer 对象里面的 TAdapterForm增加了一个TAdapterGrid,它的Adapter设置为数据模块中的 TDataSetAdapter 对象,然后我在TAdapterGrid对象总增加了TAdapterCommandColumn,在AdapterCommandColumn中有一个按钮是自己定义的,目的用于取出网格中当前的记录值以便做其他处理,现在的问题就是如果访问当前的记录集,值可能是空的。数据模块中取当前记录信息的代码如下:
procedure TdmOperatorInfo.actConfigUserExecute(Sender: TObject;
Params: TStrings);
var
varUserCode: Variant;
begin //G_GetADODSCurValue用于取当前记录的某字段的值
varUserCode := G_GetADODSCurValue(adsOperatorInfo, 'USERCODE');
...end; 以上代码执行的结果,varUserCode总是为 NULL,跟踪发现,原来记录集已经被close,如果我再去 open 记录集,那么记录指针肯定就不对了。所以该如何取TAdapterGrid中指定行的信息??
我发现Delphi6.0 系统提供的那些ActionEditRow等,都能把记录指针定位到指定位置的记录,它们是如何实现的?
希望哪位高手能帮我解决以上问题,谢谢!!!
Email:[email protected]
一个TWebDataModule 模块中有 TADODataSet 和 TDataSetAdapter配合向一个TWebPageModule 提供数据,在页面设计模块中(TWebPageModule),TAdapterPageProducer 对象里面的 TAdapterForm增加了一个TAdapterGrid,它的Adapter设置为数据模块中的 TDataSetAdapter 对象,然后我在TAdapterGrid对象总增加了TAdapterCommandColumn,在AdapterCommandColumn中有一个按钮是自己定义的,目的用于取出网格中当前的记录值以便做其他处理,现在的问题就是如果访问当前的记录集,值可能是空的。数据模块中取当前记录信息的代码如下:
procedure TdmOperatorInfo.actConfigUserExecute(Sender: TObject;
Params: TStrings);
var
varUserCode: Variant;
begin //G_GetADODSCurValue用于取当前记录的某字段的值
varUserCode := G_GetADODSCurValue(adsOperatorInfo, 'USERCODE');
...end; 以上代码执行的结果,varUserCode总是为 NULL,跟踪发现,原来记录集已经被close,如果我再去 open 记录集,那么记录指针肯定就不对了。所以该如何取TAdapterGrid中指定行的信息??
我发现Delphi6.0 系统提供的那些ActionEditRow等,都能把记录指针定位到指定位置的记录,它们是如何实现的?
希望哪位高手能帮我解决以上问题,谢谢!!!
Email:[email protected]
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货