亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Forms Menu Related Information

系統 1789 0

APP_SPECIAL.INSTANTIATE

Example 1

    
      APP_SPECIAL.INSTANTIATE('SPECIAL3','&Book Order', 'POBKORD', TRUE, 'LINE');

    
    
      
        APP_POPUP.INSTANTIATE('POPUP1','First Entry'); 
APP_POPUP.INSTANTIATE('POPUP2','Second Entry', TRUE,'LINE'); 
APP_POPUP.INSTANTIATE('POPUP3','Third Entry', FALSE);
      
    

Example 2

    
      app_special.instantiate('SPECIAL12_CHECKBOX',
                        'Specia&l 12 Check Box with Line',
                         separator=>'LINE'); 
app_special.set_checkbox('SPECIAL12_CHECKBOX','TRUE');  
    
  

results in a menu entry that looks like the following:

    
      -----------------------------------
[x] Specia
      
        l
      
      l 12 Check Box with Line

    
  

Example3

DECLARE
l_menu_label VARCHAR2(80);
BEGIN
fnd_message.set_name('PO', 'PO_SPECIAL_ALL_VIEW_MSG_HSTRY');
fnd_message.get(l_menu_label);
app_special.instantiate('SPECIAL9', l_menu_label, NULL,FALSE,NULL);
END;

Reference: http://docs.oracle.com/cd/E18727_01/doc.121/e12897/T302934T457083.htm#I_ax2Dtoolbar


APP_SPECIAL.ENABLE

    
      APP_SPECIAL.ENABLE('SPECIAL3',PROPERTY_ON);
app_special.enable('SPECIAL6', PROPERTY_ON); 
app_special.enable('SPECIAL6', PROPERTY_OFF); 

    
  


Set_Menu_Item_Property

Declare
mi_id MenuItem ;
BEGIN
If your_conditionThen
mi_id := Find_Menu_Item('menu.item');
If not id_null ( mi_id ) Then
Set_Menu_Item_Property( 'menu.item', ENABLED, PROPERTY_TRUE ) ;
Set_Menu_Item_Property( 'menu.item', ENABLED, PROPERTY_FALSE ) ;
End if ;
End if ;
END;

VISIBLE
set_menu_item_property ('menu1.TRANS',visible,PROPERTY_TRUE);
set_menu_item_property ('menu1.TRANS',visible,PROPERTY_FALSE);

=================================

Difference between menu & special in personalization

source: https://forums.oracle.com/forums/thread.jspa?messageID=10513442

MENU1 through MENU15 menu entries, available in the Tools pulldown menu. These are guaranteed not to be used by Oracle and are exclusively for customer use, therefore we strongly encourage you to use these entries as opposed to the SPECIAL menu entries in order to avoid collisions of code. When the user selects the entry, it will fire the corresponding MENU# trigger. You must also create another rule that traps this Trigger Event and performs the desired functionality.

Forms Personalization:
SPECIALn
Populate tools menu (SPECIAL 1-15)
Populate reports menu (SPECIAL 16-30)
Populate actions menu (SPECIAL 31-45)
MENUn
Populate tools menu (MENU1-15)
Use these before SPECIALn


=================================

Tools Menu

source: http://oracle.anilpassi.com/forms-personalization-best-practices-4.html

To create new Tool Menus, always use MENU1-MENU15, as Oracle guarantees never to use these during development.
Same is not true for SPECIAL Menus, as Oracle development may release a patch utilising the same SPECIALx as you may have personalized.
MENU1..15 is available starting from 11.5.10 CU2 onwards

=================================

Oracle EBS還允許客制化Form的菜單欄
zz: http://ryanlunar.blog.163.com/blog/static/183577092201283101830760/

用戶最多可以定義 45 form-level trigger ,名稱必須為 SPECIALn ,其中 SPECIAL1 to SPECIAL15 屬于 Tools 菜單項, SPECIAL16 to SPECIAL30 屬于 Reports 菜單項 , SPECIAL31 to SPECIAL45 屬于 Actions 菜單項 , 其中 Reports Actions 的名稱可以被修改。

SPECIAL1—SPECIAL15 在“工具”主菜單下。

SPECIAL16—SPECIAL30 在“報表”主菜單下。

SPECIAL31—SPECIAL45 在“活動”主菜單下。


SPECIAL菜單:

觸發器When-New-Form-Instance

Form級app_special.instantiate('SPECIAL1','<Prompt>');


觸發器Pre_Block

app_special.enable('SPECIAL1',property_on);


=================================

客制化Form的菜單欄和右鍵菜單

zz: http://blog.csdn.net/rfb0204421/article/details/7567199

Oracle EBS 還允許客制化 Form 的菜單欄。

用戶最多可以定義 45 form-level trigger ,名稱必須為 SPECIALn ,其中 SPECIAL1 to SPECIAL15 屬于 Tools 菜單項, SPECIAL16 to SPECIAL30 屬于 Reports 菜單項 , SPECIAL31 to SPECIAL45 屬于 Actions 菜單項 , 其中 Reports Actions 的名稱可以被修改。

修改代碼為:

APP_SPECIAL.INSTANTIATE('SPECIAL_B','庫存');
APP_SPECIAL.ENABLE('SPECIAL_B',PROPERTY_On);

其中SPECIAL,SPECIAL_B,SPECIAL_C分別代表的是Tools,Reports,Actions。

初始化示例:

IF (FND_FUNCTION.TEST('DEMVC_DEMVCEOR_PRINT_ORDER')) THEN

app_special.instantiate ('SPECIAL1','&Print Order');

app_special.enable ('SPECIAL1',PROPERTY_ON);

app_special.instantiate ('SPECIAL2','Specia&l 2 Line', '',TRUE,'LINE');

app_special.instantiate ('SPECIAL3_CHECKBOX','Spe&cial 3 Box w Line', '',TRUE,'LINE');

app_special.set_checkbox ('SPECIAL3_CHECKBOX','TRUE');

app_special.instantiate ('SPECIAL4_CHECKBOX','Special &4 Box');

app_special.set_checkbox ('SPECIAL4_CHECKBOX','TRUE');

app_special.instantiate ('SPECIAL18','Specia&l 18 Line SEP', separator=>'LINE');

app_special.instantiate ('SPECIAL32','Specia&l 32 Line', '',TRUE,'LINE');

app_special.instantiate ('SPECIAL33','Specia&l 33');

app_special.instantiate ('SPECIAL30','Specia&l 30');

app_special.instantiate ('SPECIAL31','Specia&l 31 Line','',TRUE,'LINE');

app_special.instantiate ('SPECIAL45','Spe&cial 45');

/* and display a button on the form */

app_item_property.set_property('orders.print_order',

DISPLAYED, PROPERTY_ON);

ELSE

app_item_property.set_property('orders.print_order',

DISPLAYED, PROPERTY_OFF);

END IF;

app_special.instantiate 設置菜單項的文字說明, app_special.enable 設置菜單項是否可用, app_special.set_checkbox 設置 check_box 菜單項的選定狀態。

form-level SPECIALn trigger 中,定義了這些菜單項選中后的處理代碼,如下所示:

Eg1

demvceor.PRINT_ORDER('SPECIAL1');

Eg2

if (app_special.get_checkbox('SPECIAL3_CHECKBOX')='TRUE') then

fnd_message.debug('Special 3 is True!');

else

fnd_message.debug('Special 3 is False!');

end if;

  右鍵菜單也可以自定義, form-level PRE-POPUP-MENU trigger 引用 APPSTAND.EVENT('PRE-POPUP-MENU') 建立 default menu ;建立 block /item level pre-pop-menu trigger ( Execution Hierarchy à After )

block /item level pre-pop-menu trigger( Execution Hierarchy à After ) 中調用 app_popup.instantate 函數初始化右鍵菜單項:

procedure APP_POPUP.INSTANTIATE(

option_name varchar2,

txt varchar2,

initially_enabled boolean default true,

separator varchar2 default null);

Example

? This example results in a menu that has a line above the second custom entry and

has the third custom entry grayed out (disabled)

APP_POPUP.INSTANTIATE(

‘POPUP1’,’First Entry’);

APP_POPUP.INSTANTIATE(

‘POPUP2’,’Second Entry’, TRUE, ‘LINE’);

APP_POPUP.INSTANTIATE(

‘POPUP3’,’Third Entry’, FALSE);

  右鍵菜單的處理函數寫在名為 POPUP1 through POPUP10 trigger 中,應該在正確的 level 上建立這些 trigger ( 通常是 block/item level)

客制化菜單

  Effect:

Forms Menu Related Information

  Usage:調用 app_special.instantiate包

  Examples:

  1、增加一個自定義Form Level的觸發器(SPECIAL11)

Forms Menu Related Information

  2、增加測試代碼如下:

  ――――――――――――――――――――――――――――――――――――――――――――――

  declare

  v_invoice_num varchar2(50);

  begin

  v_invoice_num := '菜單欄客制化100';

  fnd_message.debug(v_invoice_num);

  end;

  ―――――――――――――――――――――――――――――――――――――――――――――――

  3、在Form WHEN-NEW-FORM-INSTANCEFJ 進行調用:

  APP_SPECIAL.INSTANTIATE('SPECIAL11','測試菜單2', '', TRUE, 'LINE');

  ―――――――――――――――――――――――――――――――――――――――――――――――

  4、一些特殊說明:

  上面自定義FORMS級觸發器,名字必須定義為“SPECIAL+數字‖,否則會報錯。并且數字的大小決定了菜單出現的先后順序。數字還有更大作用就是決定了,自定義菜單選項放在哪個主菜單下。

  SPECIAL1—SPECIAL15在“工具”主菜單下。

  SPECIAL16—SPECIAL30在“報表”主菜單下。

  SPECIAL31—SPECIAL45在“活動”主菜單下。

  SPECIAL46以上就直接報錯了。^_^

  如下圖

Forms Menu Related Information

  5、 控制自定義菜單的是否激活可用。

  使用app_special.enable函數可以控制菜單是否可以使用。

  例如:基于不同的數據塊,實現菜單的不可用。在block的‖when-new-block-instance‖中加入

  效果:

  app_special.enable('SPECIAL1',property_off);

  效果

  6、 在自定義的菜單上使用checkbox按鈕。

  ①增加一個自定義Form Level的觸發器(SPECIAL1_CHECKBOX),代碼如下:

  if app_special.get_checkbox('SPECIAL1_CHECKBOX')='TRUE' then

  fnd_message.debug('Special 1 is True!');

  else

  fnd_message.debug('Special 1 is False!');

  end if;

  注:使用app_special.get_checkbox來獲取checkbox的狀態值。

  ②在Form的WHEN-NEW-FORM-INSTANCE觸發器中初始化菜單。

  app_special.instantiate('SPECIAL1_CHECKBOX','Spe&cial 1 Box w Line', '',TRUE,'LINE');

  app_special.set_checkbox('SPECIAL1_CHECKBOX','TRUE');

  注:app_special.set_checkbox是對checkbox進行賦值操作。

  ③效果如下:

Forms Menu Related Information

客制化右鍵菜單

  1、 首先如果是要為某個ITEM,另外開發一個右鍵菜單。這個需要直接按照FORM的開發教程,自定義一個POPUP菜單就可以了。但本文講的在EBS所有的快捷菜單上,額外增加所需的菜單按鈕。也就是要圖上所示的快捷菜單上增加菜單按鈕。

Forms Menu Related Information

  2、 在FROM-LEVEL增加自定義觸發器(名字規則為:POPUP+N)

  3、 ITEM的“PRE-POPUP-MENU”觸發器上初始化菜單。

  APP_POPUP.INSTANTIATE('POPUP1','First Entry');

  APP_POPUP.INSTANTIATE('POPUP10','SECONED Entry',TRUE,'LINE');

  APP_POPUP.INSTANTIATE('POPUP3','THREE Entry',FALSE,NULL);

Forms Menu Related Information

  4、 如果是整個BLOCK的ITEM都需要客制化快捷菜單,可以在BLOCK的“PRE-POPUP-MENU”定義。

  APP_POPUP.INSTANTIATE('POPUP1','global');

Forms Menu Related Information

 調用EBS日期控件

  1、 首先將ITEM的LOV屬性設置為“ENABLE_LIST_LAMP”、列表驗證屬性設置為“否”

  2、在ITEM的“KEY-LISTVAL”解發器下加入對下代碼:

  BEGIN

  calendar.show();

  END;

  3、注意:ITEM對應數據庫類型必須是DATE類型,否則會報frm-40700錯誤。效果如下:

Forms Menu Related Information



Oracle EBS 還允許客制化 Form 的菜單欄。

用戶最多可以定義 45 form-level trigger ,名稱必須為 SPECIALn ,其中 SPECIAL1 to SPECIAL15 屬于 Tools 菜單項, SPECIAL16 to SPECIAL30 屬于 Reports 菜單項 , SPECIAL31 to SPECIAL45 屬于 Actions 菜單項 , 其中 Reports Actions 的名稱可以被修改。

修改代碼為:

APP_SPECIAL.INSTANTIATE('SPECIAL_B','庫存');
APP_SPECIAL.ENABLE('SPECIAL_B',PROPERTY_On);

其中SPECIAL,SPECIAL_B,SPECIAL_C分別代表的是Tools,Reports,Actions。

初始化示例:

IF (FND_FUNCTION.TEST('DEMVC_DEMVCEOR_PRINT_ORDER')) THEN

app_special.instantiate ('SPECIAL1','&Print Order');

app_special.enable ('SPECIAL1',PROPERTY_ON);

app_special.instantiate ('SPECIAL2','Specia&l 2 Line', '',TRUE,'LINE');

app_special.instantiate ('SPECIAL3_CHECKBOX','Spe&cial 3 Box w Line', '',TRUE,'LINE');

app_special.set_checkbox ('SPECIAL3_CHECKBOX','TRUE');

app_special.instantiate ('SPECIAL4_CHECKBOX','Special &4 Box');

app_special.set_checkbox ('SPECIAL4_CHECKBOX','TRUE');

app_special.instantiate ('SPECIAL18','Specia&l 18 Line SEP', separator=>'LINE');

app_special.instantiate ('SPECIAL32','Specia&l 32 Line', '',TRUE,'LINE');

app_special.instantiate ('SPECIAL33','Specia&l 33');

app_special.instantiate ('SPECIAL30','Specia&l 30');

app_special.instantiate ('SPECIAL31','Specia&l 31 Line','',TRUE,'LINE');

app_special.instantiate ('SPECIAL45','Spe&cial 45');

/* and display a button on the form */

app_item_property.set_property('orders.print_order',

DISPLAYED, PROPERTY_ON);

ELSE

app_item_property.set_property('orders.print_order',

DISPLAYED, PROPERTY_OFF);

END IF;

app_special.instantiate 設置菜單項的文字說明, app_special.enable 設置菜單項是否可用, app_special.set_checkbox 設置 check_box 菜單項的選定狀態。

form-level SPECIALn trigger 中,定義了這些菜單項選中后的處理代碼,如下所示:

Eg1

demvceor.PRINT_ORDER('SPECIAL1');

Eg2

if (app_special.get_checkbox('SPECIAL3_CHECKBOX')='TRUE') then

fnd_message.debug('Special 3 is True!');

else

fnd_message.debug('Special 3 is False!');

end if;

  右鍵菜單也可以自定義, form-level PRE-POPUP-MENU trigger 引用 APPSTAND.EVENT('PRE-POPUP-MENU') 建立 default menu ;建立 block /item level pre-pop-menu trigger ( Execution Hierarchy à After )

block /item level pre-pop-menu trigger( Execution Hierarchy à After ) 中調用 app_popup.instantate 函數初始化右鍵菜單項:

procedure APP_POPUP.INSTANTIATE(

option_name varchar2,

txt varchar2,

initially_enabled boolean default true,

separator varchar2 default null);

Example

? This example results in a menu that has a line above the second custom entry and

has the third custom entry grayed out (disabled)

APP_POPUP.INSTANTIATE(

‘POPUP1’,’First Entry’);

APP_POPUP.INSTANTIATE(

‘POPUP2’,’Second Entry’, TRUE, ‘LINE’);

APP_POPUP.INSTANTIATE(

‘POPUP3’,’Third Entry’, FALSE);

  右鍵菜單的處理函數寫在名為 POPUP1 through POPUP10 trigger 中,應該在正確的 level 上建立這些 trigger ( 通常是 block/item level)

客制化菜單

  Effect:

Forms Menu Related Information

  Usage:調用 app_special.instantiate包

  Examples:

  1、增加一個自定義Form Level的觸發器(SPECIAL11)

Forms Menu Related Information

  2、增加測試代碼如下:

  ――――――――――――――――――――――――――――――――――――――――――――――

  declare

  v_invoice_num varchar2(50);

  begin

  v_invoice_num := '菜單欄客制化100';

  fnd_message.debug(v_invoice_num);

  end;

  ―――――――――――――――――――――――――――――――――――――――――――――――

  3、在Form WHEN-NEW-FORM-INSTANCEFJ 進行調用:

  APP_SPECIAL.INSTANTIATE('SPECIAL11','測試菜單2', '', TRUE, 'LINE');

  ―――――――――――――――――――――――――――――――――――――――――――――――

  4、一些特殊說明:

  上面自定義FORMS級觸發器,名字必須定義為“SPECIAL+數字‖,否則會報錯。并且數字的大小決定了菜單出現的先后順序。數字還有更大作用就是決定了,自定義菜單選項放在哪個主菜單下。

  SPECIAL1—SPECIAL15在“工具”主菜單下。

  SPECIAL16—SPECIAL30在“報表”主菜單下。

  SPECIAL31—SPECIAL45在“活動”主菜單下。

  SPECIAL46以上就直接報錯了。^_^

  如下圖

Forms Menu Related Information

  5、 控制自定義菜單的是否激活可用。

  使用app_special.enable函數可以控制菜單是否可以使用。

  例如:基于不同的數據塊,實現菜單的不可用。在block的‖when-new-block-instance‖中加入

  效果:

  app_special.enable('SPECIAL1',property_off);

  效果

  6、 在自定義的菜單上使用checkbox按鈕。

  ①增加一個自定義Form Level的觸發器(SPECIAL1_CHECKBOX),代碼如下:

  if app_special.get_checkbox('SPECIAL1_CHECKBOX')='TRUE' then

  fnd_message.debug('Special 1 is True!');

  else

  fnd_message.debug('Special 1 is False!');

  end if;

  注:使用app_special.get_checkbox來獲取checkbox的狀態值。

  ②在Form的WHEN-NEW-FORM-INSTANCE觸發器中初始化菜單。

  app_special.instantiate('SPECIAL1_CHECKBOX','Spe&cial 1 Box w Line', '',TRUE,'LINE');

  app_special.set_checkbox('SPECIAL1_CHECKBOX','TRUE');

  注:app_special.set_checkbox是對checkbox進行賦值操作。

  ③效果如下:

Forms Menu Related Information

客制化右鍵菜單

  1、 首先如果是要為某個ITEM,另外開發一個右鍵菜單。這個需要直接按照FORM的開發教程,自定義一個POPUP菜單就可以了。但本文講的在EBS所有的快捷菜單上,額外增加所需的菜單按鈕。也就是要圖上所示的快捷菜單上增加菜單按鈕。

Forms Menu Related Information

  2、 在FROM-LEVEL增加自定義觸發器(名字規則為:POPUP+N)

  3、 ITEM的“PRE-POPUP-MENU”觸發器上初始化菜單。

  APP_POPUP.INSTANTIATE('POPUP1','First Entry');

  APP_POPUP.INSTANTIATE('POPUP10','SECONED Entry',TRUE,'LINE');

  APP_POPUP.INSTANTIATE('POPUP3','THREE Entry',FALSE,NULL);

Forms Menu Related Information

  4、 如果是整個BLOCK的ITEM都需要客制化快捷菜單,可以在BLOCK的“PRE-POPUP-MENU”定義。

  APP_POPUP.INSTANTIATE('POPUP1','global');

Forms Menu Related Information

 調用EBS日期控件

  1、 首先將ITEM的LOV屬性設置為“ENABLE_LIST_LAMP”、列表驗證屬性設置為“否”

  2、在ITEM的“KEY-LISTVAL”解發器下加入對下代碼:

  BEGIN

  calendar.show();

  END;

  3、注意:ITEM對應數據庫類型必須是DATE類型,否則會報frm-40700錯誤。效果如下:

Forms Menu Related Information

Forms Menu Related Information


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久色成人 | 福利视频午夜 | 天天做夜夜做久久做狠狠 | 午夜视频在线网站 | 亚洲一区二区三区精品国产 | 羞羞免费观看视频 | 在线国产播放 | 欧美大吊视频 | 久久精品视频免费 | 久久www免费人成精品香蕉 | 欧美精品99久久久久久人 | 伊人网站在线观看 | 国内精品久久久久尤物 | 一级毛片一级毛片 | 欧美在线观看第一页 | 精品国产一区二区三区免费 | 一本色道久久综合亚洲精品 | 亚洲我射 | 在线日韩视频 | 欧美色视频在线观看 | 久久日本精品99久久久久 | 国产毛片毛片精品天天看 | 精品视频在线观看一区二区三区 | 幻女bbwxxxxyounu | 亚洲已满18点击进入在线观看 | 免费日本黄色网址 | 成人亚洲欧美 | 天天插天天操天天干 | 亚洲成a人伦理 | 久久国产高清视频 | 91一区二区三区四区五区 | 日韩欧美三区 | 在线观看视频亚洲 | 日韩中文字幕高清在线专区 | 国产自愉自愉全免费高清 | 国产精品视频一区牛牛视频 | 亚洲一区二区三区影院 | 乡下女色又黄一级毛片 | 久久精品亚洲欧美日韩久久 | 夜夜躁狠狠躁日日躁视频 | 狠狠色噜噜狠狠狠狠网站视频 |