Here is workaround for automatic/mass CCID generation or insertion of new
CCID’s in GL_CODE_COMBINATIONS Table, when new values in Accounting Flexfield
Segment are created, EXCEPT “Dynamic Insert” option activated .
you can use the api (function) -> fnd_flex_ext.get_ccid to create the
ccid.
If the combination already exists, it returns the existing ccid else
creates a new one and returns the id. Explicit commit command needs to be
executed after calling this function.
Use below function which returns the CCID if it is exist and create the CCID
if it doesn't exist in the application.
fnd_flex_ext.get_ccid(application_short_name ='SQLGL',
key_flex_code ='GL#',
structure_number =l_coa_id,
concatenated_segments =l_account);
Initialize the mandatory parameter if you are running the
code in SQL Plus/TOAD
BEGIN FND_GLOBAL.APPS_INITIALIZE(l_user_id, l_resp_id, l_appl_id); END;
Query to Find the Flex Structure
SELECT fifst.STRUCTURE_VIEW_NAME, fifst.CONCATENATED_SEGMENT_DELIMITER, fifs.application_column_name, fifs.segment_name, fifs.segment_num, ffs.flex_value_set_name FROM fnd_id_flex_structures_vl fifst, fnd_id_flex_segments fifs, fnd_flex_value_sets ffs WHERE fifst.id_flex_structure_code = 'ACCOUNTING_FLEXFIELD' AND fifst.application_id = 101 AND fifst.id_flex_code = 'GL#' AND fifs.application_id = fifst.application_id AND fifs.id_flex_code = fifst.id_flex_code AND fifs.id_flex_num = fifst.id_flex_num AND ffs.flex_value_set_id = fifs.flex_value_set_id;