1

I am using a custom prompt table (PS_AVZ_JD_JBCD_SRC) based on the JOBCODE_TBL record: SELECT a.jobcode , a.descr , a.eff_status , a.flsa_status ,a.job_family FROM ps_jobcode_tbl a WHERE 1=1 AND A.setid='GLOBL' AND a.effdt = ( SELECT MAX(a_ed.effdt) FROM ps_jobcode_tbl a_ed WHERE a_ed.jobcode = a.jobcode AND a_ed.effdt <= sysdate)

This ought to return both active and inactive jobcodes (I am not specifying this in the view). However, when I click the prompt button, only active jobcodes are returned. A SQL Trace shows the following SQL being fired: SELECT /*+ FIRST_ROWS */ JOBCODE, DESCR, EFF_STATUS FROM PS_AVZ_JD_JBCD_SRC WHERE EFF_STATUS<>'I' ORDER BY JOBCODE

Where is the eff_status criteria coming from? The prompt is on a non-key field if that matters...

4

1 に答える 1

1

どうやら、EFF_STATUS は「特別な」フィールドであり、コンポーネント プロセッサはプロンプトに eff_status (および effdt) ロジックを自動的に適用します。これを回避するために、EFF_STATUS フィールドを STATUS に置き換えました。ルックアップは希望どおりに機能します。

于 2012-07-05T22:00:03.273 に答える