My Oracle Support Banner

Check Funds and Reservation Taking Long Time for Foreign Currency Purchase Orders (Doc ID 2725162.1)

Last updated on NOVEMBER 02, 2020

Applies to:

Oracle Purchasing - Version 12.2.4 and later
Information in this document applies to any platform.

Symptoms

On : 12.2.4 version, Purchase Order


Performance problem occurs when checking funds or approving foreign currency POs


Steps to Reproduce :
-----------------------
1. Navigate to PO Summary form
2. Query foreign currency PO
3. Try to check funds or submit PO for approval - performance problem occurs

Expensive query :

UPDATE XLA_VALIDATION_LINES_GT T SET (CODE_COMBINATION_ID,
CONTROL_ACCOUNT_ENABLED_FLAG, MGT_SEG_VALUE) = ( SELECT
NC.CODE_COMBINATION_ID ,NC.REFERENCE3 ,DECODE(:B5 , :B4 , T.BAL_SEG_VALUE,
'SEGMENT1', SC.SEGMENT1, 'SEGMENT2', SC.SEGMENT2, 'SEGMENT3', SC.SEGMENT3,
'SEGMENT4', SC.SEGMENT4, 'SEGMENT5', SC.SEGMENT5, 'SEGMENT6', SC.SEGMENT6,
'SEGMENT7', SC.SEGMENT7, 'SEGMENT8', SC.SEGMENT8, 'SEGMENT9', SC.SEGMENT9,
'SEGMENT10', SC.SEGMENT10, 'SEGMENT11', SC.SEGMENT11, 'SEGMENT12',
SC.SEGMENT12, 'SEGMENT13', SC.SEGMENT13, 'SEGMENT14', SC.SEGMENT14,
'SEGMENT15', SC.SEGMENT15, 'SEGMENT16', SC.SEGMENT16, 'SEGMENT17',
SC.SEGMENT17, 'SEGMENT18', SC.SEGMENT18, 'SEGMENT19', SC.SEGMENT19,
'SEGMENT20', SC.SEGMENT20, 'SEGMENT21', SC.SEGMENT21, 'SEGMENT22',
SC.SEGMENT22, 'SEGMENT23', SC.SEGMENT23, 'SEGMENT24', SC.SEGMENT24,
'SEGMENT25', SC.SEGMENT25, 'SEGMENT26', SC.SEGMENT26, 'SEGMENT27',
SC.SEGMENT27, 'SEGMENT28', SC.SEGMENT28, 'SEGMENT29', SC.SEGMENT29,
'SEGMENT30', SC.SEGMENT30, NULL) FROM GL_CODE_COMBINATIONS NC,
GL_CODE_COMBINATIONS SC
WHERE
NVL(NC.SEGMENT1,:B3 ) = DECODE(:B4 ,'SEGMENT1', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT1,:B3 )) AND NVL(NC.SEGMENT2,:B3 ) = DECODE(:B4 ,'SEGMENT2',
T.BAL_SEG_VALUE,NVL(SC.SEGMENT2,:B3 )) AND NVL(NC.SEGMENT3,:B3 ) =
DECODE(:B4 ,'SEGMENT3', T.BAL_SEG_VALUE,NVL(SC.SEGMENT3,:B3 )) AND
NVL(NC.SEGMENT4,:B3 ) = DECODE(:B4 ,'SEGMENT4', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT4,:B3 )) AND NVL(NC.SEGMENT5,:B3 ) = DECODE(:B4 ,'SEGMENT5',
T.BAL_SEG_VALUE,NVL(SC.SEGMENT5,:B3 )) AND NVL(NC.SEGMENT6,:B3 ) =
DECODE(:B4 ,'SEGMENT6', T.BAL_SEG_VALUE,NVL(SC.SEGMENT6,:B3 )) AND
NVL(NC.SEGMENT7,:B3 ) = DECODE(:B4 ,'SEGMENT7', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT7,:B3 )) AND NVL(NC.SEGMENT8,:B3 ) = DECODE(:B4 ,'SEGMENT8',
T.BAL_SEG_VALUE,NVL(SC.SEGMENT8,:B3 )) AND NVL(NC.SEGMENT9,:B3 ) =
DECODE(:B4 ,'SEGMENT9', T.BAL_SEG_VALUE,NVL(SC.SEGMENT9,:B3 )) AND
NVL(NC.SEGMENT10,:B3 ) = DECODE(:B4 ,'SEGMENT10', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT10,:B3 )) AND NVL(NC.SEGMENT11,:B3 ) = DECODE(:B4 ,
'SEGMENT11', T.BAL_SEG_VALUE,NVL(SC.SEGMENT11,:B3 )) AND NVL(NC.SEGMENT12,
:B3 ) = DECODE(:B4 ,'SEGMENT12', T.BAL_SEG_VALUE,NVL(SC.SEGMENT12,:B3 ))
AND NVL(NC.SEGMENT13,:B3 ) = DECODE(:B4 ,'SEGMENT13', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT13,:B3 )) AND NVL(NC.SEGMENT14,:B3 ) = DECODE(:B4 ,
'SEGMENT14', T.BAL_SEG_VALUE,NVL(SC.SEGMENT14,:B3 )) AND NVL(NC.SEGMENT15,
:B3 ) = DECODE(:B4 ,'SEGMENT15', T.BAL_SEG_VALUE,NVL(SC.SEGMENT15,:B3 ))
AND NVL(NC.SEGMENT16,:B3 ) = DECODE(:B4 ,'SEGMENT16', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT16,:B3 )) AND NVL(NC.SEGMENT17,:B3 ) = DECODE(:B4 ,
'SEGMENT17', T.BAL_SEG_VALUE,NVL(SC.SEGMENT17,:B3 )) AND NVL(NC.SEGMENT18,
:B3 ) = DECODE(:B4 ,'SEGMENT18', T.BAL_SEG_VALUE,NVL(SC.SEGMENT18,:B3 ))
AND NVL(NC.SEGMENT19,:B3 ) = DECODE(:B4 ,'SEGMENT19', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT19,:B3 )) AND NVL(NC.SEGMENT20,:B3 ) = DECODE(:B4 ,
'SEGMENT20', T.BAL_SEG_VALUE,NVL(SC.SEGMENT20,:B3 )) AND NVL(NC.SEGMENT21,
:B3 ) = DECODE(:B4 ,'SEGMENT21', T.BAL_SEG_VALUE,NVL(SC.SEGMENT21,:B3 ))
AND NVL(NC.SEGMENT22,:B3 ) = DECODE(:B4 ,'SEGMENT22', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT22,:B3 )) AND NVL(NC.SEGMENT23,:B3 ) = DECODE(:B4 ,
'SEGMENT23', T.BAL_SEG_VALUE,NVL(SC.SEGMENT23,:B3 )) AND NVL(NC.SEGMENT24,
:B3 ) = DECODE(:B4 ,'SEGMENT24', T.BAL_SEG_VALUE,NVL(SC.SEGMENT24,:B3 ))
AND NVL(NC.SEGMENT25,:B3 ) = DECODE(:B4 ,'SEGMENT25', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT25,:B3 )) AND NVL(NC.SEGMENT26,:B3 ) = DECODE(:B4 ,
'SEGMENT26', T.BAL_SEG_VALUE,NVL(SC.SEGMENT26,:B3 )) AND NVL(NC.SEGMENT27,
:B3 ) = DECODE(:B4 ,'SEGMENT27', T.BAL_SEG_VALUE,NVL(SC.SEGMENT27,:B3 ))
AND NVL(NC.SEGMENT28,:B3 ) = DECODE(:B4 ,'SEGMENT28', T.BAL_SEG_VALUE,
NVL(SC.SEGMENT28,:B3 )) AND NVL(NC.SEGMENT29,:B3 ) = DECODE(:B4 ,
'SEGMENT29', T.BAL_SEG_VALUE,NVL(SC.SEGMENT29,:B3 )) AND NVL(NC.SEGMENT30,
:B3 ) = DECODE(:B4 ,'SEGMENT30', T.BAL_SEG_VALUE,NVL(SC.SEGMENT30,:B3 ))
AND NC.CHART_OF_ACCOUNTS_ID = SC.CHART_OF_ACCOUNTS_ID AND
SC.CODE_COMBINATION_ID = :B2 ) WHERE T.BALANCING_LINE_TYPE = :B1

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.