ZL用来添加的,CX用来查询的,用同一个ADOSTOREDPROC1(SP1),添加可以,再调用查询CX后显示为空.
CX过程如下(CREATE PROCEDURE vertex_sg_dgd_cx
@cgdl char
AS
select * from sg_dgd where 采购单号=@cgdl
GO)
with sp1 do
begin
close;
// procedurename:='vertex_sg_dgd_tj;1';
parameters.Refresh;
parameters.ParamByName('@dgrq').Value :=cxdateedit1.date;
parameters.ParamByName('@qhrq').Value :=cxdateedit2.Date;
parameters.ParamByName('@cgbh').Value :=trim(cxtextedit2.text);
parameters.ParamByName('@cgdh').Value :=trim(cxcombobox1.text);
parameters.ParamByName('@dghh').Value :=trim(cxtextedit1.text);
parameters.ParamByName('@wlbm').Value :=trim(cxlookupcombobox1.text);
parameters.ParamByName('@pm').Value :=trim(cxtextedit9.text);
parameters.ParamByName('@gg').Value :=trim(cxtextedit3.text);
parameters.ParamByName('@ys').Value :=trim(cxtextedit4.text);
parameters.ParamByName('@dw').Value :=trim(cxtextedit5.text);
parameters.ParamByName('@sl').Value :=strtofloat(cxtextedit6.text);
parameters.ParamByName('@dj').Value :=strtofloat(cxtextedit7.text);
parameters.ParamByName('@jbry').Value :='0';
parameters.ParamByName('@bz').Value :=trim(cxtextedit8.text);
parameters.ParamByName('@tz').Value :=trim(cxcombobox2.text);
prepared:=true; execproc;
end;
showmessage('保存成功!');
同题应出在这段: with adoquery do
begin
close;
ProcedureName:='vertex_sg_dgd_cx;1';
parameters.Refresh;
Parameters.ParamByName('@cgdl').Value:=trim(cxcombobox1.text);
//prepared:=true;
Open;
end;
CXTEXTEDIT1.Text:='';
CXTEXTEDIT3.Text:='';
CXTEXTEDIT4.Text :='';
CXTEXTEDIT5.Text:='';
CXTEXTEDIT6.TEXT:='';
CXTEXTEDIT7.TEXT:='';
CXTEXTEDIT8.TEXT:='0';
cxtextedit9.text:='';
exit; except
showmessage('保存失败!');
exit; end;
CX过程如下(CREATE PROCEDURE vertex_sg_dgd_cx
@cgdl char
AS
select * from sg_dgd where 采购单号=@cgdl
GO)
with sp1 do
begin
close;
// procedurename:='vertex_sg_dgd_tj;1';
parameters.Refresh;
parameters.ParamByName('@dgrq').Value :=cxdateedit1.date;
parameters.ParamByName('@qhrq').Value :=cxdateedit2.Date;
parameters.ParamByName('@cgbh').Value :=trim(cxtextedit2.text);
parameters.ParamByName('@cgdh').Value :=trim(cxcombobox1.text);
parameters.ParamByName('@dghh').Value :=trim(cxtextedit1.text);
parameters.ParamByName('@wlbm').Value :=trim(cxlookupcombobox1.text);
parameters.ParamByName('@pm').Value :=trim(cxtextedit9.text);
parameters.ParamByName('@gg').Value :=trim(cxtextedit3.text);
parameters.ParamByName('@ys').Value :=trim(cxtextedit4.text);
parameters.ParamByName('@dw').Value :=trim(cxtextedit5.text);
parameters.ParamByName('@sl').Value :=strtofloat(cxtextedit6.text);
parameters.ParamByName('@dj').Value :=strtofloat(cxtextedit7.text);
parameters.ParamByName('@jbry').Value :='0';
parameters.ParamByName('@bz').Value :=trim(cxtextedit8.text);
parameters.ParamByName('@tz').Value :=trim(cxcombobox2.text);
prepared:=true; execproc;
end;
showmessage('保存成功!');
同题应出在这段: with adoquery do
begin
close;
ProcedureName:='vertex_sg_dgd_cx;1';
parameters.Refresh;
Parameters.ParamByName('@cgdl').Value:=trim(cxcombobox1.text);
//prepared:=true;
Open;
end;
CXTEXTEDIT1.Text:='';
CXTEXTEDIT3.Text:='';
CXTEXTEDIT4.Text :='';
CXTEXTEDIT5.Text:='';
CXTEXTEDIT6.TEXT:='';
CXTEXTEDIT7.TEXT:='';
CXTEXTEDIT8.TEXT:='0';
cxtextedit9.text:='';
exit; except
showmessage('保存失败!');
exit; end;
如果用adoQuery可以用SQL.Text:='exec 存储过程名';