日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle中app文件夹下,Oracle Form开发之folder(文件夹)功能开发(一)

發布時間:2025/4/5 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle中app文件夹下,Oracle Form开发之folder(文件夹)功能开发(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、模板制作:YSFOLDER.FMB

打開TEMPLATE.FMB,如果打開的是APPSTAND.FMB,以下步驟省略:

1、FORM級觸發器:

1、在WHEN-NEW-FORM-INSTANCE后面添加以下代碼:

--定義文件夾數據塊

app_folder.define_folder_block(

object_name => ' DETAILBLOCK _FOLDER' ,

folder_block_name => 'DETAILBLOCK',

prompt_block_name => 'DETAILBLOCK_PROMPT',

folder_canvas_name => 'DETAILBLOCK_STACKED',

folder_window_name => 'BLOCKNAME',

disabled_functions => '');

--以上參數均為VARCHAR2,長度不得超過20個字符

2、增加FORM級觸發器:FOLDER_ACTION,PL/SQL代碼如下:

app_folder.event(:global.folder_action);

3、增加FORM級觸發器:FOLDER_RETURN_ACTION,PL/SQL代碼如下:

null;

--

-- action code is in :global.folder_action

-- affected field is in :global.folder_field

--

2、Attached Libraries:

添加文件:APPFLDR.PLL

來源:ERP安裝目錄下,AU目錄下查找該類文件所在的目錄

3、Object Groups

繼承一個對象組:STANDARD_FOLDER

做法:復制APPSTAND.FMB中的同名對象,粘貼到模板對象組中,選擇“Refence”(繼承),路徑方式選擇“Remove path”(不要路經)。

結果:將會把對象組中的所有對象映射添加到相應的對象節點中。

二、模板例子的制作

1、修改WHEN-NEW-FORM-INSTANCE中文件夾數據塊定義語句中的參數,確定對象名稱(一般為form對象名稱)、文件夾數據塊名稱、標題塊名稱、堆疊畫布名稱、窗口名稱。

2、定義窗口(windows),win_main:繼承屬性WINDOW_NORMAL

3、定義堆疊畫布(stacked canvas-views), cv_detail_stacked:繼承屬性類CANVAS_STACKED

4、定義文件夾數據塊(folder block),blk_detail:繼承屬性類BLOCK

(1)觸發器:

·KEY-EXEQRY:

app_folder.event('KEY-EXEQRY');

·KEY-NEXT-ITEM

app_folder.event('KEY-NEXT-ITEM');

·KEY-PREV-ITEM

app_folder.event('KEY-PREV-ITEM');

·POST-BLOCK

app_folder.event('POST-BLOCK');

·PRE-BLOCK

app_folder.event('PRE-BLOCK');

·WHEN-NEW-BLOCK-INSTANCE

App_folder.event('WHEN-NEW-BLOCK-INSTANCE');

·KEY_CLRBLK

App_folder.event(' KEY_CLRBLK ');

·KEY_ENTQRY

App_folder.event(' KEY_ENTQRY ');

·KEY_NXTREC

App_folder.event(' KEY_NXTREC ');

·KEY_PRVREC

App_folder.event(' KEY_PRVREC ');

·PRE_QUERY

App_folder.event(' PRE_QUERY ');

·WHEN-NEW-RECORD-INSTANCE

App_folder.event('WHEN-NEW-RECORD-INSTANCE');

(2)定義數據項,可以是表項,也可以是非基表項,確定哪些項需要放在堆疊畫布上,注意只有在堆疊畫布上的項才能使用文件夾功能

(3)注意:數據項的類型不能是:Display Item、List Item等;

可以是:Text Item、Check Box等;

如果打開folder時出現錯誤:“Set_Item_Property沒有這樣的屬性”,說明erp標準程序中用到的屬性在個別項中不存在,出現幾次就有幾個缺乏這個屬性的Item;是否擁有這個屬性,是由Item的類型確定的,因此有些Item類型不能用于folder功能。

(4)確定各個項在畫布中的位置

5、定義標題數據塊(prompt block), blk_detail_prompt:繼承屬性類BLOCK_DIALOG

便捷的做法:先復制文件夾數據塊blk_detail,改名稱,再刪去新塊下的全部觸發器,然后除去不需要的項,修改剩下所有項的屬性繼承FOLDER_PROMPT_MULTRIROW,最后將各個項的default

value屬性值寫入對應的中文或英文標題

(1)觸發器:無

(2)標題項,來自文件夾數據塊blk_detail,屬性繼承自FOLDER_PROMPT_MULTIROW,default value屬性值寫入相應的中英文標題

總結

以上是生活随笔為你收集整理的oracle中app文件夹下,Oracle Form开发之folder(文件夹)功能开发(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。