Wednesday 27 February 2019

How to enable key flex field (GL Code Combination) in Oracle Custom Form level


Enable Key Flex Field (GL Code Combination) in Oracle Custom Form level

Requirement: Required to enable Accounting Key Flex Field in From Acct and To Acct fields in below custom form.
Custom Form:



Step 1: Find Accounting Key Flex Field Structure Number which you want to enable in custom form level
Accounting Flex Field Structure Code: MWANI_QATAR_COA

Find Flex Field Structure Number using below sql query

select ID_FLEX_NUM from FND_ID_FLEX_STRUCTURES where id_flex_code='GL#'
and Application_id=101
and ID_FLEX_STRUCTURE_CODE='MWANI_QATAR_COA'; -- for GL




Step 2: Add Following Code in WHEN-NEW-FORM-INSTANCE Form level trigger.
-----From Account-----

FND_KEY_FLEX.DEFINE(
block => 'BUDGET_HDR_BLOCK',
Field => 'FROM_ACCT',
Description =>  'FROM_ACCT_DESC',
ID => 'FROM_ACCT_ID',
Appl_short_name => 'SQLGL',
Code => 'GL#',
Num => '50428',
--VRULE => 'GL_GLOBAL\nDETAIL_POSTING_ALLOWED \nE\nAPPL=''SQLGL'';
VRULE=>'\\nSUMMARY_FLAG\\nI\\nAPPL=SQLGL;NAME=GL_NO_PARENT_SEGMENT_ALLOWED\\nN', where_clause => 'summary_flag != ''Y''', QUERY_SECURITY =>'Y'
);

-----To Account-------

FND_KEY_FLEX.DEFINE(
block => 'BUDGET_HDR_BLOCK',
Field => 'TO_ACCT',
Description =>  'TO_ACCT_DESC',
ID => 'TO_ACCT_ID',
Appl_short_name => 'SQLGL',
Code => 'GL#',
Num => '50428',
--VRULE => 'GL_GLOBAL\nDETAIL_POSTING_ALLOWED \nE\nAPPL=''SQLGL'';
VRULE=>'\\nSUMMARY_FLAG\\nI\\nAPPL=SQLGL;NAME=GL_NO_PARENT_SEGMENT_ALLOWED\\nN', where_clause => 'summary_flag != ''Y''', QUERY_SECURITY =>'Y'
);


Step 3: Add WHEN-NEW-ITEM-INSTANCE trigger at field level (field : FROM_ACCT & TO_ACCT)
FND_FLEX.EVENT('WHEN-NEW-ITEM-INSTANCE');

Step 4: Add KEY-EDIT trigger at field level (field : FROM_ACCT & TO_ACCT)
                                FND_FLEX.EVENT('KEY-EDIT');

Step 5: Add WHEN-VALIDATE-ITEM trigger at field level (field : FROM_ACCT & TO_ACCT)


FROM_ACCT Trigger:
FND_FLEX.EVENT('WHEN-VALIDATE-ITEM');

IF :BUDGET_HDR_BLOCK.FROM_ACCT_ID = -1 THEN
FND_MESSAGE.SET_STRING('You Have Selected An Undefined Code Combination !');
FND_MESSAGE.SHOW;
RAISE FORM_TRIGGER_FAILURE;
END IF;
TO_ACCT Trigger:
                FND_FLEX.EVENT('WHEN-VALIDATE-ITEM');

IF :BUDGET_HDR_BLOCK.TO_ACCT_ID = -1 THEN
FND_MESSAGE.SET_STRING('You Have Selected An Undefined Code Combination !');
FND_MESSAGE.SHOW;
RAISE FORM_TRIGGER_FAILURE;
END IF;




Step 6: Set Filed property palette (FROM_ACCT & TO_ACCT)
FROM_ACCT


TO_ACCT


Step 7: Compile the Form and upload it on server.

Step 8: Key Flex field enabled on both field.

FROM_ACCT

TO_ACCT




No comments:

Post a Comment