错误:FRM-41337:无法从记录组填充列表

时间:2018-03-19 16:35:00

标签: oracle forms oracleforms

我有一个使用块项目的记录组,即where cust_id = :order.cust_id

有时候它有效,有时候不行。

当我查询现有记录时,我能够添加一个新行并输入条件代码,即来自填充的记录组。但是当我输入新订单时,列表为空。我试图将代码放在when-new-record-instance中,但是我收到错误

select profile profile1, profile profile2 
  from dss.v_unit_conditions
  where cust_id = :order.dsp_cust_id
    and profile_type = 'UC' 
    and active = 'Y'
  

41337 - 无法从记录组中填充列表

如果我在when-tab-change中使用它,那么我会得到同样的错误。

1 个答案:

答案 0 :(得分:2)

执行查询时,您获取:ORDER.DSP_CUST_ID值,因此记录组查询会提取某些内容

另一方面,当您输入新订单时,我认为:ORDER.DSP_CUST_ID为空,查询不会返回任何内容并引发错误。

这意味着必须知道:ORDER.DSP_CUST_ID。为了使记录组查询起作用,请考虑动态创建它,即当:ORDER.DSP_CUST_ID获得其值时。由于您似乎手动输入,WHEN-VALIDATE-ITEM可能是您的选择。查看CREATE_GROUP_FROM_QUERY(以及可能的POPULATE_GROUP_FROM_QUERY)内置插件。它们在Forms Online Help System中进行了描述(带有示例)。