Custom Versions Not Using the Processing Options as Set in the New Version (P4210)
Purpose of Document
The audience for this note is someone with developer level knowledge.
Error in the Log and the Business Case:
1576/4764 WRK:Starting jdeCallObject Mon Jan 11 15:37:09.062003 Rtk_frms.c790 RUN0000050 - Unable to retrieve DB Record for Application P4210, Version TEST03 from F983051.
In a certain business scenario, it is inevitable to add additional features and functionality based on the canned interactive application. For example,
Through OMW (Object Management Workbench), copy the EnterpriseOne standard program of P4210 and the processing option template of T4210 and name it as P564210B and T564210B respectively.
Create one version 'TEST01' for the program P564210B, set default option
Order Type: 'CO'
Line Type: 'C'
Last Status: '520'
Next Status: '529'
Run the local html client, add one order, verify that Default Value defined in Processing Option is working fine.
But in copying the version TEST01 to TEST03, which yield different outcome (the 'Next status' got set with 528 which is default value defined in P4210|ZJDE0001 version.
The Cause of Issue
Across the EnterpriseOne, many applications gets the processing option values (F983051) and the description of Processing Option Template (F98305) based on the hard code application ID and Version ID. For this example, the application ID 'P4210' is hard coded in the Sales Order Master Business Function. Please see below documents for detail,
<Document 988832.1> E1: FDA: Runtime Messages in jde.log from Interactive Applications
<Document 2080173.1> - E1: DSTR: Listing of Header Files Containing typedef for Processing Option Template
The implication of this configuration is that regardless the version you have specified (for example, P564210B|TEST03), the sales order master business function tries to get version data based on P4210|TEST03. So, the error in the jde.log is natural when you do not have this version.
Workaround:
Option 1 - Not to have this type of error, try below:
(Fast Path) IV to call the Interactive Version application.
Allocate Application ID P4210.
Add Version for standard application P4210 with Version ID you have defined for copied application P564210B.
Note that this option is not the best approach because you have to maintain and synchronize two versions (one for P4210 and another for P564210B).
Option 2 - If error persists, issue can be debugged as follows:
Look for JDE API AllocatePOVersionData as key word
Verify the parameter assigned for szApplication is hard coded
Prototype of API AllocatePOVersionData(HUSER hUser,NID szApplication,NID szVersion,unsigned int uSizeOf )
2nd parameter is Application ID
Create Version for szApplication for copied application and set same parameters
Note: JDE is not responsible for error caused by copied/customized application.
To discuss information further with Oracle experts and industry peers, we encourage you to review, join or start a discussion in the JDE1 Distribution Community.
To look at upcoming or archived Advisor Webcasts please see Advisor Webcast Details (Doc ID 548764.1) if your topic is not currently scheduled please suggest it.