abluesky

 

判断某项数据不能为空的方法

写在基类里面
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;

posted on 2008-01-08 17:16  深蓝色天空  阅读(426)  评论(0编辑  收藏  举报

导航