当前位置:主页>销售管理软件> 列表

一个奇怪的问题,在线等。请高手帮忙看看 找金蝶财务软件价格

库存管理软件版1楼: 存储过程这样写到
CREATE PROCEDURE GetMaxNumBL
@Tempnum nvarchar, --参数:当天的日期字符串格式
@Temp1 nvarchar, --参数:当前的订料单编号
@i integer output --参数:返回订料单当前编号是否是系统中最大的编号
AS
declare @Tempmax nvarchar

select @Tempmax=max(Bldlbh) from Bldld where Bldlbh like ''%''+@Tempnum+''%''

if @Temp1 = @Tempmax
begin
Set @i = 1
end
Else
begin
Set @i= 0
end

return @i
GO

在delphi中调用语句如下:
with ADOGet do
begin
j:=0;
Close;
ProcedureName:= ''GetMaxNumBL'';
Parameters.Refresh;
Parameters.ParamByName(''@Tempnum'').Value:= wutemp1;
Parameters.ParamByName(''@Temp1'').Value:= wutemp2;
Parameters.ParamByName(''@i'').Value:= j;
Open;
j:=FieldByName(''i'').value;

end;

编译时能顺利通过
运行时却提示错误,好像是没有找到返回值之类的

请问是怎么回事儿呀

2楼: 急用呀

请帮帮忙 如金蝶财务软件价格

3楼: 存储过程中
return @i
改成 select @i as i

试试

4楼: 多谢道长

按你说的方法,问题是解决了

可就是弄不明白

为什么 return 返回却不行呀

5楼: 不用奇怪了!查帮助![:D]

6楼: 只有select会返回数据集

库存管理软件版7楼:

8楼: 多人接受答案了。