An ERP system contains a company's complete operational data, and it needs to interact with external systems for various operational needs. A fully automated interface on an ERP system such as JD Edwards is necessary to transmit huge data load accurately without manual intervention.
This article discusses six factors to be considered in designing a fully automated interface between JD Edwards and external systems such as, say, a bank.
The type and format of file should be finalized in such a way that they are compatible between JD Edwards and the external system. Identify the interface file (such as flat file with tab delimited, EDI based, CSV) and also finalize the exchange format. Usually banks have predefined formats for interface and check if there are any standard formats for that process.
For example, Automated Bank Reconciliation from JD Edwards requires flat file transmission in BAI2 format (Cash Management Balance Reporting Specifications Version 2) and JD Edwards EnterpriseOne accommodates formats like prearranged payment and deposit (PPD) format and corporate trade exchange (CTX) for Electronic Fund Transfer.
If standard format is not available, then decide on the format that works for both parties. Standard format generally uses globally adopted features and helps in interface maintenance even if ERP is moved to a different system. For example, NACHA file format is one of the standards for Electronic File transfer.
Verify with the bank or third party on operating system requirements as well. Check the flat file encoding format required for the interface. JD Edwards requires the flat file in Unicode format. Use the setup application P93081 -- Unicode Flat File Encoding Configuration to convert the file in source format to JD Edwards required Unicode format for further processing. Also ensure that the output file format produced by JD Edwards is in the acceptable format the third-party system requires.
Data transmission service
Secured transmission can be achieved by choosing the right data transmission service. There are many file transfer protocols available to send and receive data over two computers. HTTPS, SSH/FTP, SFTP, FTP/PGP, FTP/SSL, VAN, AS2 (Applicability Statement 2), connect: Direct with Secure+, VPN, and the like, are some of the data transmission services.
Choosing the right transmission option depends on cost, transaction volume, frequency of transaction, transaction file size, compatibility between system and compliance.
Check with the bank or third party on the transmission service available with them, and choose the right one based on your need. Every transmission service has specific software and hardware requirements. For example, HTTPS requires Web browser IE 6, or higher, and Netscape browser 7, or higher.
Check on data sensitivity. Say the FTP/SSL mode is sufficient for JD Edwards accounts payable to the bank for electronic file transfer. But to receive payroll data from the external system (ADP), JD Edwards would need SFTP (secure FTP) open SSH standard, since payroll data are more sensitive.
ERP servers and end users can be located in different geographies and operate on different platforms. It's always better to connect the client FTP server with the third-party FTP server and not from an end user's computer to bank's system. Say an accounts payable manager sends a positive pay file to the bank from the local machine. The bank port should connect with the JDE server.
In this article, enterprise server is treated as FTP server. Establish connectivity between JD Edwards and the bank system by opening the port of bank system and allowing the JD Edwards Enterprise Server to access it directly. The FTP server admin creates a username and password for the FTP client. It's better to install the FTP client in the JD Edwards Enterprise Server.
Always check if the external file is JD Edwards-compatible. The file from the bank or third party can contain lot of information that they need, but not all the information is needed for JD Edwards processing.
Before processing external files in JD Edwards, use some program to validate if the key details are present. Then load the details in staging tables before processing and updating transaction tables. Raw data from external files has to be checked for compatibility and converted to usable data for JD Edwards for further processing.
JD Edwards Scheduler
The end-to-end interface process has multiple programs running in order for processing. So for Automatic Bank Reconciliation in JD Edwards, Process Automatic Bank Statements Flat File R09600picks the bank statement and updates the data in staging tables (F09610 and F09611). Then Load Bank Statement Program R09612 runs and picks data from the staging table and updates transaction tables. Process Automatic Bank Statements R09616 reconciles bank data with JDE data. These three programs run one after another, and the scheduler can automate the entire run.
Check with the third party for file transmission timing. If the bank deposits a file at 3 p.m., schedule a batch program to pick the file at 3:15 p.m. and place it in Enterprise Server. Run JDE process programs from 3:30 p.m. onward for further processing.
Keep a separate job queue for JDE Scheduler jobs to avoid interference with normal running jobs. The timing of the scheduler program run has to be derived to help automate the process.
Notifications and workflows
Interface processing has stages like FTP, encryption/decryption and file processing, and each stage has its own substages. It's good practice to send electronic mail notifications to concerned people on completion of specific activity.
For example, trigger notification if the FTP process is completed by picking the file from bank system to JDE Enterprise Server. When decryption of the file is complete, send another notification.
Trigger email notification by using workflow, for both successful and unsuccessful processing. This helps the technical team to immediately debug, spot and correct the errors.
By considering the above factors, the development of the interface can be easy.
About the authors:
Sukinder George is a technical architect in consulting and systems integration at Infosys. Shankar Raman is a technology lead in consulting and systems integration at Infosys. They have a combined 18 years' experience in JD Edwards EnterpriseOne.
Improve JDE user adoption with Oracle User Productivity Kit
Read some best practices for launching JDE to the cloud