错误如下图:
代码如下:
if (StringUtils.pos('or',specialty)<1) or (duty<>'') then
begin
//处理单项专业资质,不处理“H or M or E”的情况
QuerySql.Close;
QuerySql.CommandText:='select pwq_id from personworkquality where workid='''+workID+''' and personid='''+personid
+''' and surveryitem='''+surveryitem+''' and qualitytype='''+qualitytype+''' and quality='''+quality
+''' and specialty='''+specialty+'''';
QuerySql.Open;
if QuerySql.RecordCount<1 then
begin
dsb_PersonQuality.DataSet.Insert;
dsb_PersonQuality.DataSet.FieldByName('personid').AsString:=personid;
dsb_PersonQuality.DataSet.FieldByName('workid').AsString:=workID;
dsb_PersonQuality.DataSet.FieldByName('jobno').AsString:=jobno;
dsb_PersonQuality.DataSet.FieldByName('qualityflag').AsString:=qualityflag;
dsb_PersonQuality.DataSet.FieldByName('gbts').AsString:=gbtsid;
dsb_PersonQuality.DataSet.FieldByName('qualitytype').AsString:=qualitytype; //证书
dsb_PersonQuality.DataSet.FieldByName('quality').AsString:=quality; //资质
dsb_PersonQuality.DataSet.FieldByName('surveryitem').AsString:=surveryitem; //检验种类
dsb_PersonQuality.DataSet.FieldByName('specialty').AsString:=specialty; //专业
dsb_PersonQuality.DataSet.FieldByName('accord').AsString:='n';
if (surveryitem='NB') and (header='组长') then
begin
dsb_PersonQuality.DataSet.FieldByName('specialtyother').AsString:='PM';
end;
dsb_PersonQuality.DataSet.ApplyUpdates;
end;
end;