在自定义查询,以增加依货品大类+单号多选查询视窗的受订单明细表为例:
1)、新增Z01受订单号的多笔查询视窗的自定义查询并设置自定义类别:CX自定义参数设置,多笔显示:Y。
语句:
select a.os_no as 受订单号,a.cus_no as 客户代号 from mf_pos a where a.os_id='SO'
效果图:
2)、新增Z02货品大类的多笔查询视窗的自定义查询并设置自定义类别:CX自定义参数设置,多笔显示:Y。
语句:
select '1' as 大类, '商品' as 大类名称
union all select '2' , '制成品'
union all select '3' , '半成品'
union all select '4' , '原料'
union all select '5' , '物料'
union all select '6' , '下脚品'
union all select 'A' , '人工'
union all select 'B' , '费用'
union all select 'C' , '外包'
效果图:
3)、通过SQL参数charindex实现依货品大类+单号多选查询视窗的受订单明细表。
语句:
DECLARE @OS_NO varchar(100),@KND varchar(50)
SET @OS_NO = :Z01!受订单号;--定位到自定义查询受订单号多选查询视窗的代号:Z01
SET @KND = :Z02!大类;--定位到自定义查询货品大类多选查询视窗的代号:Z02
SELECT B.KND,A.* FROM TF_POS A LEFT JOIN PRDT B ON A.PRD_NO = B.PRD_NO
WHERE OS_ID = 'SO'
AND (CHARINDEX(';'+A.OS_NO+';',';'+@OS_NO +';')>0 OR ISNull(@OS_NO,'') = '')
AND (CHARINDEX(';'+B.KND+';',';'+@KND +';')>0 OR ISNull(@KND,'') = '')
效果图: