函数如下:
function newid(pzlb_id: string): string;
var
  cnlistid,d_year,d_month,d_day:string;
  i:integer;
  ADOSetTmp: TADODataSet;
begin
  d_year:=formatfloat('00',strtoint(formatdatetime('yy',getserverdate)));
  d_month:=d_year+formatfloat('00',strtoint(formatdatetime('mm',getserverdate)));
  d_day:=d_month+formatfloat('00',strtoint(formatdatetime('dd',getserverdate)))+pzlb_id;
    ADOSetTmp := nil;
    ADOSetTmp := TADODataSet.Create(ADOSetTmp);
    ADOSetTmp.CommandText := 'SELECT MAX(spbm) AS maxid FROM spbm where substring(spbm,1,8)=''d_day''';
    ADOSetTmp.Connection := DM1.ADOConnection1;
    ADOSetTmp.Open;
 if ADOSetTmp.fieldbyname('maxid').AsString='' then
  begin
    cnlistid:=d_day+'001';
  end
  else
  begin
    i:=strtoint(copy(ADOSetTmp.fieldbyname('maxid').asstring,9,3))+1;
    cnlistid:=d_day+formatfloat('000',i);
  end;
  result:=cnlistid;
end调示提示如下:[错误] spbm1pas.pas(305): Undeclared identifier: 'getserverdate'
[致命错误] FXsoft.dpr(251): Could not compile used unit 'spbm1pas.pas'