目前日期文章:200906 (5)

瀏覽方式: 標題列表 簡短摘要

如何依據User 於參數輸入的資料,限制帶出另一個參數值,建立Parameter 相依性

:$FLEX$.<VALUE_SET_Name>

image

<Parameter 15>

image

SomebabyTina 發表在 痞客邦 PIXNET 留言(0) 人氣()

[Query Data Souce Name] : View Name

image 

[DML Data Target ]

image

Column 上的設定

SomebabyTina 發表在 痞客邦 PIXNET 留言(0) 人氣()

問題說明:
客製Form時,常常並不是一個Block裡面的Item都是Database Item,有些Item 我們是Non-DB column.
但對於這些Non-DB column 我們常常都要秀在Form Canvas上,讓User可以選擇他看得懂的值。
在設計上,Execute_qury 後我們會把這個Non-DB Value帶出(因為他不是Block DB column),
所以原則上Form是不會自動帶出的,我們必須自己code it.
而作法呢,很簡單,寫在Post-query trigger上。
然在Query all data in UI 是ok,但關閉Form時(沒有做任何變更),竟會出現”Do you want to save the changes you have made”的字樣,
該怎麼讓它不要出現呢?
下面就是..我的註記---
 
In Oracle Forms, you attach a List of Values (LOV) to a non-base table
text item (a control item). The LOV returns a value into a base table
item. When you close your form,
it will prompt "Do you want to save the changes you have made? " even no change in here.

 

<Solution> 

Add a statement below on your post-query trigger.

SET_RECORD_PROPERTY(TO_NUMBER(NAME_IN('SYSTEM.TRIGGER_RECORD')),'blockname', STATUS, QUERY_STATUS);

SomebabyTina 發表在 痞客邦 PIXNET 留言(1) 人氣()

Excel VBA的限制就是必須開啟Application才能用其VB code.

但User常常錄好的巨集是在一個工作簿上,如果想要使用到開工作簿的Macro.

就得先打開另一該巨集的Excel File.才能呼叫的到那個程序。

不然,還有一各方法就是要教User將Macro 匯出存到固定的folder.

想要用的時候,再載入,這各方法,我想很多End user其實會覺得很複雜,

SomebabyTina 發表在 痞客邦 PIXNET 留言(3) 人氣()

Collection Type 有3種

1. PL/SQL Table : 只存在Memory 裡,效能較好

2. Nested Table:可以存在DB中,可以被DB Table 拿來宣告成DB column

3. VARRAYs :可以存在DB中,可以被DB Table 拿來宣告成DB column

 

=Case=<PL/SQL Table>==

DECLARE
  TYPE para_tab IS TABLE OF fnd_descr_flex_col_usage_vl.form_left_prompt%TYPE   INDEX BY BINARY_INTEGER;
  para_list   para_tab;
BEGIN
   FOR ass_r IN (SELECT RANK () OVER (ORDER BY column_seq_num) seq  -- , form_left_prompt
                ,      UPPER ('P_' || REPLACE (form_left_prompt, ' ', '_') ) parameter
                   FROM fnd_descr_flex_col_usage_vl
                  WHERE descriptive_flexfield_name = '$SRS$.DITAR_PR2009005' AND application_id = 222)
   LOOP
      para_list (ass_r.seq) := ass_r.parameter;
   END LOOP;

   FOR x IN para_list.FIRST .. para_list.LAST
   LOOP
      DBMS_OUTPUT.put_line (para_list (x) );
   END LOOP;
END;

SomebabyTina 發表在 痞客邦 PIXNET 留言(0) 人氣()

找更多相關文章與討論