判断某项数据不能为空的方法
写在基类里面
procedure TINF_BILLGLOBAL.DataSetDetailBeforeApplyUpdates(Sender: TObject; var OwnerData: object);
const CNotNullField = 'substancenum,sumNumber,usednumber,substanceid,substancebatch,'
+'summoney,disposeprice,summoney,rejectprice,preparedunitprice,'
+'buydate,unitprice,dispositiondate';
var
i : integer;
begin
Inherited;
with DataSetDetail do
begin
First;
while not eof do
begin
for i := 0 to FieldCount - 1 do
if StringUtils.Pos(Fields.Fields[i].FieldName,SysUtils.UpperCase(CNotNullField)) > 0 then
begin
if DataSetDetail.FieldByName(Fields.Fields[i].FieldName).IsNull then
begin
dialogs.ShowMessage(Fields.Fields[i].DisplayName +'不能为空');
abort;
end;
end;
Next;
end;
end;
end;
procedure TINF_BILLGLOBAL.DataSetDetailBeforeApplyUpdates(Sender: TObject; var OwnerData: object);
const CNotNullField = 'substancenum,sumNumber,usednumber,substanceid,substancebatch,'
+'summoney,disposeprice,summoney,rejectprice,preparedunitprice,'
+'buydate,unitprice,dispositiondate';
var
i : integer;
begin
Inherited;
with DataSetDetail do
begin
First;
while not eof do
begin
for i := 0 to FieldCount - 1 do
if StringUtils.Pos(Fields.Fields[i].FieldName,SysUtils.UpperCase(CNotNullField)) > 0 then
begin
if DataSetDetail.FieldByName(Fields.Fields[i].FieldName).IsNull then
begin
dialogs.ShowMessage(Fields.Fields[i].DisplayName +'不能为空');
abort;
end;
end;
Next;
end;
end;
end;