读书人

请教怎么取得Post前的数据

发布时间: 2012-03-15 11:50:38 作者: rapoo

请问如何取得Post前的数据
function TfrmEmployee.getData():String;
var
i: Integer;
Text: String;
Data: String;
begin
for i:=0 to SqlDM.ADOQueryEmployee.FieldCount-1 do
begin
Data := SqlDM.ADOQueryEmployee.Fields[i].DisplayText;
if Text = '' then
Text := Data
else
Text := Text + ',' + Data ;
end;
Result := Text;
end;
===================================

OldData := getData();
SqlDM.ADOQueryEmployee.Post;
NewData := getData();

发现修改过的文本框信息OldData和NewData是不同的,
但DBLookupComboBox信息OldData和NewData是相同的,都是Post后的数据。请问如何得到DBLookupComboBox的Post前数据呢?

[解决办法]
在ADOQuery的BeforePost事件中可以得到
OldData:=ADOQuery1.FieldByName('字段名').OldValue;
NewData:=ADOQuery1.FieldByName('字段名').NewValue;
注:OldValue/NewValue都为Variant类型.
可用VarToStr转成string型

读书人网 >.NET

热点推荐