存储过程数据集没有结果,存储过程:
CREATE PROCEDURE dbo.proc_pg_order_query;1
@com_id char(4) ,@dept_id char(8),@flag_return char(1)
AS
BEGIN
SELECT dept_name=ctlm08.report_order+ctlm08.dept_name,
corr_name=ctlm23.corr_id+ctlm23.corr_name,
flag_return=sat04.flag_return,
item_name=ctlm22.item_name,
spec=ctlm22.spec,
unit_name=ctlm17.unit_name,
qty_d_order=sat05.qty_d_order,
amt_d_order=sat05.amt_d_order,
sa_price=sat05.sa_price,
p_g_order_no=sat04.p_g_order_no,
d_remark= sat04.d_remark,
date_of_fill=sat04.date_of_fill,
l_date_d=sat04.l_date_d,
s_man_name=sam10.s_man_name,
receive_date=sat04.receive_date ,
reas_name = (select sam09.reas_name from sam09 where sam09.com_id=@com_id and sam09.reas_code=sat05.reas_code)
FROM ctlm08,
ctlm17,
ctlm23,
ctlm22,
sat04,
sat05,
sam10
WHERE sat04.com_id = sat05.com_id and
sat04.p_g_order_no = sat05.p_g_order_no and
sat05.com_id = ctlm22.com_id and
sat05.item_no = ctlm22.item_no and
sat04.com_id = ctlm08.com_id and
sat04.dept_code = ctlm08.dept_id and
sat04.com_id = ctlm23.com_id and
sat04.c_code = ctlm23.corr_id and
sat05.com_id = ctlm17.com_id and
sat05.sa_unit = ctlm17.unit and
sat04.com_id = sam10.com_id and
sat04.s_man_code = sam10.s_man_code and
sat04.com_id = @com_id AND
sat04.dept_code = @dept_id AND
sat04.flag_return = @flag_return AND
( sat04.date_of_fill between '2006-1-31 00:00:00' and '2008-3-31 23:59:59' )
END
开发平台中的执行:DataSetBroker1.DataSet.Close;
DataSetBroker1.DataSet.Params.ParamByName('@com_id').AsString:=edit1.text;
DataSetBroker1.DataSet.Params.ParamByName('@dept_name').AsString:=ComboBox1.Text;
DataSetBroker1.DataSet.Params.ParamByName('@flag_return').AsString:=s;
DataSetBroker1.DataSet.execute;
DataSetBroker1.DataSet.Open;
数据库为sybase,经过测试该存储过程无误,返回数据符合要求,但是在x3中返回的数据集为空 |