Cantara JDE Objects
The Cantara JDE Objects enable the interface between Cantara Integration Platform and the JDE software. They must be installed on each JDE server that Cantara will be integrating with.
The objects are available for download from the Rinami Portal. They consist of:
- A single Core Objects file (with filename format PRJ_CNTR_CORE_E9x0_6.0.x.par), and
- One or more Service Objects files (with filename format PRJ_CNTR_xxxx_E9x0_6.0.x.par).
The Service Objects necessary for a particular deployment are determined by the specific project requirements.
Building the Objects
The objects are provided as Object Management Workbench (OMW) archives, which must be built and configured using the JDE development client. Complete a Full package build and deployment to any enterprise servers that will be connected to Cantara for each environment required.
For information about how to create, manage and deploy OMW projects using your JDE development client, refer to your JDE documentation.
To Create and Build the OMW Project:
- Create a new project in OMW to contain the Cantara JDE Objects.
- Select the project and click on the Restore icon at the bottom of the OMW action icons.
- When prompted, click Yes to use a ZIP file.
- Browse to the Core Objects file.
- Click the Open button to extract the archive and create the necessary objects within the OMW project.
- Repeat the process for the Service Objects files.
- Generate the new tables that are included in the project (see special instructions below).
Deploying the Cantara JDE Objects
You must deploy all of the provided Cantara JDE Objects to each JDE Logic or Batch server that you wish to connect to, prior to defining the connections in the Cantara Administration Console.
Special Instructions
For new installations the only additional tasks to be completed are generating the tables included in your OMW projects. To see the lists of tables to be generated for each project, refer to Cantara JDE Object Tables.
B9801000 Data Structure attributes paper fix
Business Function B9801000 has known issues in as at January 2022, which are documented on Oracle Support Document ID 1626198.1.
Without addressing these issues in 32-bit systems, the NER NQ35PWD may cause Package Build errors like these, in the buildlog.txt file:
D:\JDEdwards\E920\DV920\package\...\source\NQ35PWD.c(247): error C2039: 'szDailyPasswordChangeLimit': is not a member of 'tagDSD9801000'
D:\JDEdwards\E920\DV920\package\...\include\b9801000.h(73): note: see declaration of 'tagDSD9801000'
D:\JDEdwards\E920\DV920\package\...\source\NQ35PWD.c(247): error C2198: 'jdeStrcpyFillAndTerminate': too few arguments for call
D:\JDEdwards\E920\DV920\package\...\source\NQ35PWD.c(249): error C2039: 'szForceImmediatePasswordCh': is not a member of 'tagDSD9801000'
D:\JDEdwards\E920\DV920\package\...\include\b9801000.h(73): note: see declaration of 'tagDSD9801000'
D:\JDEdwards\E920\DV920\package\...\source\NQ35PWD.c(249): error C2198: 'jdeStrcpyFillAndTerminate': too few arguments for call
D:\JDEdwards\E920\DV920\package\...\source\NQ35PWD.c(344): error C2065: 'IDERRszOWPassword_19': undeclared identifier
D:\JDEdwards\E920\DV920\package\...\source\NQ35PWD.c(344): warning C4204: nonstandard extension used: non-constant aggregate initializer
The cause of these errors is that the JDE object B9801000 is out-of-sync with the naming of the data structure parameters in D9801000
NOTE: The same data structures are used for multiple functions within B9801000, so the header definitions only require update once for each of the two Data Structure to correct the mismatch for all of them.
For template F98OWSEC Maintain OW Security, the parameters are misnamed, compared to the related Data Structure D9801000 shown here. This should be corrected in the header file B9801000.h
The highlighted parameters are szDailyPasswordChangeLimit and szForceImmediatePasswordCh, but in the B9801000.h file they are incorrectly referenced as szDailyPasswordChangLimit (missing “e”) and szForcePasswordChange (missing “Immediate” and extra “…ange”). So the changes for this require correcting the JCHAR declarations and also the #define statements, similar to the highlighted changes below:
…
For template F98OWSEC Maintain OW Security Long, the D9801000L parameters shown here now include Item #19 szOWPassword, but the #declare statement for that parameter is defined as Item #2 in the B9801000.h file. This should be corrected in the header file B9801000.h.
To address this the #declare statement needs to be corrected, similar to the highlighted code below for template F98OWSEC Maintain OW Security Long:
…
…
In addition to fixing the header declarations and definitions, there is also one internal function call in B9801000.c that requires correction for the parameter naming mismatch. It is in the body for internal function “I9801000_MaintainSecurityF98OWSEC” (not “I9801000_MaintainSecurityF98OWSECLong”, which looks very similar).
...
After these changes to the B9801000 object (header B9801000.h and body B9801000.c) are completed and checked-in, the NQ35PWD object should not have any build errors.
JDE.INI Settings
The properties contained in the JDE.INI settings file can be configured to suit your deployment. The following table defines minimum requirements for correct operation of all of the Cantara features. An example JDE.INI file is also shown below.
Property: | Value: (minimum requirement) |
[JDENET_KERNEL_DEF16] | |
---|---|
maxNumberOfProcesses | 3 |
numberOfAutoStartProcesses | 1 |
[JDENET_KERNEL_DEF22] | |
maxNumberOfProcesses | 3 |
numberOfAutoStartProcesses | 1 |
JDE.INI Example File
The settings file shown below is an example only.
The values for some of the properties defined in this example are for a minimum requirements deployment. Ensure that the settings you configure are suitable for your specific deployment.
Ensure that sufficient processes are available for the XML List Kernel
JDENET_KERNEL_DEF16
TEXT[JDENET_KERNEL_DEF16] krnlName=XML List Kernel dispatchDLLName=xmllist.dll dispatchDLLFunction=_XMLListDispatch@28 maxNumberOfProcesses=3 numberOfAutoStartProcesses=1
Ensure that sufficient processes are available for the XML Dispatch Kernel
JDENET_KERNEL_DEF22
TEXT[JDENET_KERNEL_DEF22] krnlName=XML DISPATCH KERNEL dispatchDLLName=xmldispatch.dll dispatchDLLFunction=_XMLDispatch@28 maxNumberOfProcesses=3 numberOfAutoStartProcesses=1
Ensure that the LREngine has a suitable output storage location and sufficient disk allocation. Note that the default Repository_Size of 20 indicates that 20% of the free disk space on your EnterpriseOne service will be allocated to the LREngine folder.
LREngine
TEXT[LREngine] System=C:\JDEdwardsPPack\E920\output Repository_Size=20 Disk_Monitor=YES
Ensure that the XML Kernels are correctly defined
XMLLookupInfo
TEXT[XMLLookupInfo] XMLRequestType1=list XMLKernelMessageRange1=5257 XMLKernelHostName1=local XMLKernelPort1=0 XMLRequestType2=callmethod XMLKernelMessageRange2=920 XMLKernelHostName2=local XMLKernelPort2=0 XMLRequestType3=trans XMLKernelMessageRange3=5001 XMLKernelHostName3=local XMLKernelPort3=0 XMLRequestType4=JDEMSGWFINTEROP XMLKernelMessageRange4=4003 XMLKernelHostName4=local XMLKernelPort4=0 XMLKernelReply4=0 XMLRequestType5=xapicallmethod XMLKernelMessageRange5=14251 XMLKernelHostName5=local XMLKernelPort5=0 XMLKernelReply5=0 XMLRequestType6=realTimeEvent XMLKernelMessageRange6=14251 XMLKernelHostName6=local XMLKernelPort6=0 XMLKernelReply6=0 XMLRequestType7=ube XMLKernelHostName7=local XMLKernelMessageRange7=380 XMLKernelPort7=0 XMLKernelReply7=1