Folder Option for Custom Forms
How to Enable Folder Options for Custom Forms
Steps to Develop Folder Option
11) Open the Template.fmb and remove the “DetailBlock and BlockName” at Block level and “Blockname” at canvas level “Blockname” at window level.
22) Now you are going to develop the Form. Before that We need to attach the Library “APPFLDR.pll”.

Click on yes and it will attached to the attached libraries.
Next Copy the STANDARD_FOLDER Object group from APPSTAND.fmb (Which resides in AU_TOP/Resource)
Click on Copy it will attach all the Default Properties.
Next create the window and canvas and blocks. While creating canvas u need to create one stacked canvas and one content canvas. Because the data block fields should be placed on Stacked canvas only and then stacked canvas should be placed on Content Canvas.
Create the window with these properties
Create the Content canvas
Create one stacked Canvas.
Data block properties are as follows. U can increase the no of records displayed also.
Next Create The Prompt Block Manually.
Next Copy all the items from your Main data block and paste it in the prompt block. After that change the properties for all the items.(Initial Value is Mandatory). The Name of the items in prompt block is same as in data block Items Name.
Next Create the Folder Switcher Item Manually along with these properties in main data block. That folder switcher should be first item of the Data block.
Item Name:Folder_Switcher, Item Type:Text_Item,Canvas: XX_CONTENT,Subclass:SWITCHER
Next Create the DRILL_DOWN_RECORD_INDICATOR in Main Data block.(i.e XXBLOCK)
Next create the items in Prompt Block Manually.
Item Name: FOLDER_OPEN, Item Type:Push Button, Canvas: XX_CONTENT,Subclass:Folder_Open
Item Name: FOLDER_DUMMY, Item Type: Text Item , Canvas: TOOLBAR ,Subclass:Folder_Dummy
Item Name: FOLDER_TITLE, Item Type: Display Item, Canvas: XX_CONTENT,Subclass:Dynamic_Title
Item Name: ORDER_BY1, Item Type: Push Button, Canvas: XX_STACKED1
Item Name: ORDER_BY2, Item Type: Button, Canvas: XX _STACKED1
Item Name: ORDER_BY3, Item Type: Button, Canvas: XX_STACKED1
Next Create one parameter
Next Create following eight triggers on main block
WHEN-NEW-BLOCK-INSTANCEapp_folder.event('WHEN-NEW-BLOCK-INSTANCE');
KEY-PREV-ITEM
if (:parameter.XX_BLOCK_RECORD_COUNT = 1) then
previous_item;
else
app_folder.event('KEY-PREV-ITEM');
end if;
KEY-NEXT-ITEM
if (:parameter.XX_BLOCK_RECORD_COUNT = 1) then
next_item;
else
app_folder.event('KEY-NEXT-ITEM');
end if;
PRE-BLOCKapp_folder.event('PRE-BLOCK');
POST-BLOCKapp_folder.event('POST-BLOCK');
PRE-QUERY
app_folder.event('PRE-QUERY');
app_folder.event('PRE-QUERY');
KEY-EXEQRYapp_folder.event('KEY-EXEQRY');
POST-QUERYapp_folder.event('POST-QUERY');
Next in the When new form instance trigger write the following script :
app_folder.define_folder_block('XX_OHQ', -- 'Object Name'
'XX_BLOCK', -- 'folder_block',
'XX_BLOCK_PROMPT', -- 'prompt_block',
'XX_STACKED1', --'stacked_canvas',
'XX_ON_HAND_QUANTITY', --'window',
NULL); --'disabled functions');
app_folder.event('INSTANTIATE');
Then save the Form and compile and run the form. The out put of the form with folder options is look like this
No comments:
Post a Comment