快哭了…有关adoStoredProc的问题……(100分)

  • 主题发起人 主题发起人 二泉.net
  • 开始时间 开始时间

二泉.net

Unregistered / Unconfirmed
GUEST, unregistred user!
一模一样的程序
在formA里可正确执行
copy在了FormB里却报错:adoStoredProc1:'@BookCode' not found.
Parameters.ParamByName('@BookCode').Value:=trim(edtBookCode.Text);//这行
相应的变量也都有
存储过程并无问题
为什么?
还有:adoStoredProc的ProcedureName属性,是不是不能动态的赋值?
 
[Error] LostForFeitFm.pas(113): Undeclared identifier: 'params'
具体怎么写?
谢谢……
 
是否有些变量依赖控件,COPY代码要保证两个Form上有相同属性的控件(假如有引用到)。
 
再多点代码。
 
怪啊……今天写的程序
竟然都不能用adoStoredProc了……
看:
adoStoredProc1.Close;
adoStoredProc1.Prepared:=false;
adoStoredProc1.Parameters.ParamByName('@ID').Value:=IntToStr(0);
adoStoredProc1.Parameters.ParamByName('@Code').Value:=trim(edtCode.Text);
adoStoredProc1.Parameters.ParamByName('@Unit').Value:=trim(edtUnit.Text);
adoStoredProc1.Parameters.ParamByName('@OutDate').Value:=trim(edtOutDate.Text);
adoStoredProc1.Parameters.ParamByName('@ManName').Value:=trim(edtManName.Text);
adoStoredProc1.Parameters.ParamByName('@StoreMan').Value:=trim(edtStoreMan.Text);
adoStoredProc1.Parameters.ParamByName('@CauseID').Value:=cmbCauseID.KeyValue;
try
adoStoredProc1.Prepared:=true;
adoStoredProc1.ExecProc;
adoQuery1.Close;
adoQuery1.Open;
......

还是报:adoStoredProc1:parameter '@ID' not found……
哪里不对呢?
谢谢了…
 
代码好象没什么问题,检查以下Connection是不是拷贝过来后数据连接没了,存储过程的
名称是可以改变的,如:
with DataM.ADOCommand1 do //生成采购单,用通用的TADOCommand
Begin
Connection:=ADOConnection1;
CommandType:=cmdStoredProc;
CommandText:='TranferToPurchase;1';
Parameters.Clear;
Parameters.CreateParameter('@OrderSeq',ftInteger,pdInput,0,0);
Parameters.CreateParameter('@ErrorType',ftInteger,pdInputOutput,0,0);
Parameters.ParamByName('@OrderSeq').Value:=OrderNo;
Execute;
Result:=Parameters.ParamByName('@ErrorType').Value;
end;

 
你的数据控件的Params属性看一下吧,是否与其它的Form不同,应该是这样子吧。
 
>>你的数据控件的Params属性看一下吧,是否与其它的Form不同,应该是这样子吧。
这句话对了,看看你的adoStoredProc1控件是否有这些变量,把Delphi多余自动生成的
删掉.
 
用 adoStoredProc1 里的的参数要和存储过程的参数的顺序一样的,返回值放在第一个
如果这样赋值
 
2 Tuatara:你的这个救了我:
Parameters.Clear;
Parameters.CreateParameter('@OrderSeq',ftInteger,pdInput,0,0);
2 mazhayang:返回值应该放到最后…

谢谢楼上的各位……
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部