为什么不使用ADOStoredProc这个控件那?//示例
var
sl:string;
调用代码
with ADOStoredProc1 do
begin
ProcedureName:='p_update_sellinv';
Parameters.Refresh;
Parameters.FindParam('@invid').Value:=VarToStr(DisplayTexts[FilteredRecordIndex[I],1]);
Parameters.FindParam('@invloca').Value:=UpperCase(cxTextEdit6.Text);
Parameters.FindParam('@shipno').Value:=UpperCase(cxTextEdit7.Text);
Parameters.FindParam('@intype').Value:=UpperCase(cxComboBox4.Text);
Parameters.FindParam('@iqty').Value:=strtofloat(cxTextEdit8.Text);
Parameters.FindParam('@invtype').Value:=UpperCase(cxComboBox5.Text);
Parameters.FindParam('@invsta').Value:=UpperCase(cxComboBox6.Text);
Parameters.FindParam('@count1').Value:=selcount;
Parameters.FindParam('@ordqsusr').Value:=SysUsersName;
Parameters.FindParam('@sl').Value:='0';
ExecProc;
sl:=Parameters.ParamByName('@sl').Value; //返回值
end;
var
sl:string;
调用代码
with ADOStoredProc1 do
begin
ProcedureName:='p_update_sellinv';
Parameters.Refresh;
Parameters.FindParam('@invid').Value:=VarToStr(DisplayTexts[FilteredRecordIndex[I],1]);
Parameters.FindParam('@invloca').Value:=UpperCase(cxTextEdit6.Text);
Parameters.FindParam('@shipno').Value:=UpperCase(cxTextEdit7.Text);
Parameters.FindParam('@intype').Value:=UpperCase(cxComboBox4.Text);
Parameters.FindParam('@iqty').Value:=strtofloat(cxTextEdit8.Text);
Parameters.FindParam('@invtype').Value:=UpperCase(cxComboBox5.Text);
Parameters.FindParam('@invsta').Value:=UpperCase(cxComboBox6.Text);
Parameters.FindParam('@count1').Value:=selcount;
Parameters.FindParam('@ordqsusr').Value:=SysUsersName;
Parameters.FindParam('@sl').Value:='0';
ExecProc;
sl:=Parameters.ParamByName('@sl').Value; //返回值
end;
代码报错,就用了一个控件,还是报错,因要修改,就拷贝了一份,结果执行了一下,过了!如果不是系统的bug,那应该是我的设置有出入,没发现。谢谢各位,换ADO吧。