盒子
导航

点击按钮打开指定的文件夹

项目中要求在一个平台中只允许应用文件夹而不允许执行删除、新建等其他文件夹操作,这些操作在另外的地方进行定义,可通过在该平台中使用form功能参数的形式来为按钮关联指定的文件夹,然后分配给用户,每个用户通过点击按钮或者在form打开的时候就自动Load一个定义好的文件夹,这里提供点击按钮打开指定文件夹的测试代码,将这部分代码添加到button的when-button-pressed触发器当中即可。另外在禁用文件夹的时候还要在触发器代码的末尾以及使用到App_Folder.Event('XXX'); 代码的触发器后面添加禁用文件夹菜单和打开文件夹按钮的代码。

Just a sample code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
--
-- 点击按钮打开定义好的文件夹,在button的when-button-pressed中添加代码:
--------------------------------------------------------------
App_Folder_Frd_Stmt('Entering app_folder_load_fldr.');
Copy(Fnd_Utilities.Current_Language, 'global.app_folder_lang_id');
Copy(App_Folder.Curr_Object, 'global.app_folder_object_id');
Copy(To_Char(App_Folder.Curr_User_Id), 'global.app_folder_user_id');

SELECT T.Folder_Id
INTO App_Folder.Curr_Folder_Id
FROM Fnd_Folders t
WHERE T.Object = 'ORDER_LINES'--Folder define code
AND T.Name = '柜身_NEW'; --Folder Name

IF NOT App_Folder_Get_Folder_Cont(App_Folder.Curr_Folder_Id) THEN
App_Folder_Get_Onscrn_List;
END IF;
App_Folder_Paint_List;

Copy('OPEN-FOLDER', 'global.folder_action');
Copy(To_Char(App_Folder.Curr_Folder_Id), 'global.folder_id');
Execute_Trigger('folder_return_action');

App_Folder_Autoquery(Name_In('system.cursor_block'));
App_Folder.Pending_Where_Clause := NULL;
--
App_Folder_Move_Cursor('1');
App_Folder_Set_Instance_Values;

结果如图所示:
Form中点击按钮打开指定的已定义文件夹