在触发器的声明部分不能调用函数吗?
ebs 11.0.3 reports二次开发,
我在AfterPForm中begin前面的声明部分,声明一个游标,
在此游标中调用一个自定义函数zd_pub_get.get_style(bz.SWAP_ITEM_CODE)
编译时报错:
Error 231 at line 41,colunm 36
function 'GET_STYLE'may not be used in SQL
代码如下:
function AfterPForm return boolean is
x_group_id number;
cursor c1 is
select NVL(a.vendor_name, bz.duty_name) DEPARTMENT,
bz.swap_id,
bz.EXCEPT_CLASS,
bz.SWAP_ITEM_CODE,
msi.description,
bz.SWAP_QTY,
bz.QUALITY_CODE,
bz.SWAP_DISPOSE_CODE,
replace(INSPECTION_PERSON, ',', '') INSPECTION_PERSON,
bz.comments,
transaction_date,
decode(substr(bz.SWAP_ITEM_CODE, 1, 1),
'3',
zd_pub_get.get_style(bz.SWAP_ITEM_CODE),
null) jx_kind
from qa_part_plan_v bz,
po.po_vendors a,
inv.mtl_system_items msi
where bz.duty_name = a.vendor_name(+)
-- and substr(bz.SWAP_ITEM_CODE, 2, 2) = jx.jx_id(+)
and a.vendor_name is not null
and nvl(a.VENDOR_TYPE_LOOKUP_CODE, 'VENDOR') = 'VENDOR'
and DISPOSE_CODE = '01替代'
--and transaction_date >= :start_date
--and transaction_date < :end_date + 1
and transaction_date >= to_date('&start_date','yymmdd')
and transaction_date < to_date('&end_date','yymmdd') + 1
and bz.SWAP_ITEM_CODE = msi.segment1(+)
and msi.organization_id(+) = 4
ORDER BY DEPARTMENT;
begin
.............
return (TRUE);
end;
难道在触发器的声明部分不能调用函数吗?哪位帮帮忙啊