## Setting Up Interfaces for Electronic Data Interchange

This chapter provides overviews of Electronic Data Interchange (EDI) interfaces and flat file data formatting and discusses how to:

- Set up customer billing instructions.

- Establish EDI information for suppliers.

- Define EDI tolerance rules.

### Understanding EDI Interfaces

You must customize the JD Edwards EnterpriseOne Data Interface for Electronic Data Interchange system, including the customization of information for each trading partner and each system, to fit your needs.

Examples of such changes include:

- In the Customer Master program (P03013), defining how specific trading partners are billed based on the type and amount of business that you conduct with them.

- In the Item Cross Reference program (P4104), defining relationships between the company's item numbers and each trading partner's item numbers.

  You can also set up substitute or replacement items that can be ordered for customers if the ordered item is out of stock. If you are ordering items from a supplier, you can set up replacement items for items that the supplier doesn't have in stock.

You also need to customize how you will maintain EDI data. Examples of customizing EDI data include:

- Defining and reviewing the codes that describe EDI documents that you send and receive.

- Defining and reviewing the actions that the system performs when you send and receive EDI documents.

  For example, if you receive a transaction, the JD Edwards EnterpriseOne Data Interface for Electronic Data Interchange system uses a transaction-set purpose code, such as deletion or inquiry, to determine which action to perform on the transaction.

- Defining the acceptable ranges for information, such as for quantities, unit costs, and extended amounts, in EDI documents.

Testing Strategies

Many organizations postpone the testing of the JD Edwards EnterpriseOne EDI software until the third-party translator software is also installed. However, if the JD Edwards EnterpriseOne EDI software is installed before the EDI translator software, you can begin testing it using data entry through the Status/Inquiry program or by manually creating and processing a flat file through the system. The Status/Inquiry program provides add, change, and delete capability to all the data in the system 47 tables.

User-defined Codes for EDI

Many fields accept only user-defined codes (UDCs). You must define these codes to perform EDI processes.

UDCs are stored in tables by system and code type. For example, system 47, type PU represents electronic commerce and transaction-set purpose codes.

You can view some UDCs from selections on the EDI Advanced & Technical Operations menu (G4731). Alternatively, you can access all codes through a single UDC form. After you select a UDC form from a menu, change the system code and the UDC type fields to access another UDC table. The system stores UDCs in the F0005 table.

These UDCs are primary to the EDI system:

- Record type codes (00/RD) define the type of inbound and outbound tables.

  These UDCs are preloaded and hard-coded, and you should not change the code or its meaning. To do so would interfere with correct processing.

- Transaction type codes (00/TT) identify the American National Standards Institute (ANSI) code and definition for each type of EDI transaction.

  For example, code 823 is the UDC code and the ANSI code for lockbox transactions, and 850 is the UDC and ANSI code for purchase order transactions. These codes are preloaded. You can review the list of codes to determine the current codes and their descriptions.

- EDI transaction-set number codes (40/ST) describe each type of EDI document that you send and receive.

  You can define transaction-set codes for any EDI standard. Transaction-set codes for EDI documents are preloaded. You do not need to modify them, but you can add a new transaction set to the table.

- Transaction-set purpose codes (47/PU) control the actions that the system performs when you send and receive EDI documents.

  The system uses the code each time that the transaction-set purpose appears in a table. These codes are preloaded, and they are intended for use with ANSI X12 element 353. For inbound documents, the system uses this code to determine the action to perform on the transaction. For outbound documents, this code communicates the purpose of the transaction to the trading partner.

  You can review the current list of codes and their descriptions.

#### Prerequisites

Before setting up EDI interfaces:

- Set up document types for:

  - EDI customer orders.

  - EDI purchase orders.

  - EDI quotes.

- Set up next numbers for:

  - EDI batch numbers.

  - EDI document numbers.

- Set up order activity rules for:

  - EDI sales order transactions.

  - EDI purchasing transactions.

- Verify that all customer and supplier information has been added to the address book.

- Verify that all items being sold or purchased have been entered in the system.

- Verify that all cost and pricing information has been added for items purchased and sold.

### Understanding Flat File Data Formatting

This section discusses:

- Flat file data.

- Formatting flat file data for inbound documents.

- Formatting flat file data for outbound documents.

#### Flat File Data

To use a flat file to receive or send EDI documents, you must be able to map a drive on a personal computer to the location of the flat file. The third-party translator software must be able to:

- Create a flat file for outbound documents or convert the data for inbound documents.

- Create fields.

- Insert delimiters.

- Write to every field in the EDI interface tables, even if the field is blank.

The default text qualifier is a double quotation mark, and the default field delimiter is a comma.

The format of the record in the flat file must follow the format of the EDI interface table. Consequently, every column in the table must be in the flat file record, and the columns must appear in the same order as in the table. The first field value in a flat file record indicates the record type. That is, the first field value indicates the conversion or creation program into which EDI interface tables insert the record. Record type values are defined and stored by record type UDC table 00/RD.

For example, suppose that a record in the header table appears as follows:

Record Type | Name | Address | City | Zip Code
1 | Joe | <Blank> | Denver | 80237

Here is how the record in the flat file appears:

1,Joe, Denver, 80237

In the preceding example, notice that the 1 corresponds to a header record type, and the blank space corresponds to the <Blank> value in the Address column.

When you receive inbound documents, the system converts data from the flat file to the EDI interface tables when you run the appropriate conversion program. When you send outbound documents, the system creates a flat file when you run the appropriate creation program (also known as a conversion program).

#### Formatting Flat File Data for Inbound Documents

Depending on the capabilities of the translator software, you might have to ensure that data is formatted correctly to receive documents in JD Edwards EnterpriseOne application programs. Therefore, you must define how the data should be formatted in the flat file when you run the Inbound Flat File Conversion program (R47002C) from the flat file into the EDI inbound interface tables.

All fields must be correctly formatted for the Inbound Flat File Conversion program to correctly interpret each field and move it to the corresponding field in the appropriate inbound interface table. All fields must be placed in the flat file in the exact order in which they appear in the inbound interface table in which the data is converted. In addition, each field must be enclosed by a symbol that marks the start and end of the field. Typically, this symbol is a double quotation mark. Each field must also be separated from the next field with a field delimiter. Typically, this separator value is a comma. For example:

1,1,00001, ,3333,AA, ,850, , ,R,2, ,9102

Note. For inbound documents that you receive, you can use any field delimiter and text qualifier as long as it does not interfere with the interpretation of the fields. Use the processing options from the applicable conversion program to define the text qualifiers and field delimiters that the system uses.

Dates

The system determines how a date is converted from the flat file to the EDI interface tables through a combination of the date-format user preference that you set up in the default value that you specify for the UDS for the century change year (CENTCHG in 00/DF).

The date format specified in the date-format user preference setup must match the date format of all dates in the flat files. Typically, this format is MDY and is the format used by ANSI EDI data; however, it might vary with other standards. The conversion of the dates from the flat files to the inbound interface tables is based on a combination of the user preference and the data dictionary item CENTCHG. When you enter a date with two positions for year, the system compares that value with the default value within CENTCHG to determine whether the date is less than or equal to this value. For example, assuming that the date is less than or equal to this value and it is a value within the year 2000 (00,01,02 up to and including the default value), the system interprets the date as a year 2000 date.

If the date is greater than the default value, the system assumes the current century as defined in data dictionary item CTRY. For instance, if the CENTCHG default value is 10 and the date-format user preference that you set up is MDY, the system formats the date as described in this table after you run the Inbound Flat File Conversion program (R47002C):

Desired Date | Format in Flat File | Formatted Date in Interface Table | Typical Date Storage in Interface Table (Julian)
June 1, 1998 | 6/1/98 | 6/1/98 | 98152
June 1, 2002 | 6/1/02 | 6/1/02 | 102152
June 1, 2010 | 6/1/10 | 6/1/10 | 110152
June 1, 2011 | 6/1/11 | 6/1/11 *Incorrect | 11152 *Incorrect
June 1, 2015 | 6/1/15 | 6/1/15 *Incorrect | 15152 *Incorrect
June 1, 1998 | 6/1/1998 | 6/1/98 | 98152
June 1, 2010 | 6/1/2010 | 6/1/10 | 110152
June 1, 2011 | 6/1/2011 | 6/1/2011 | 111152
June 1, 2015 | 6/1/2015 | 6/1/2015 | 115152

* Indicates a date that was converted incorrectly based on the desired date in the preceding examples.

Numeric Values

Numeric values do not need to be padded with 0s. If the value is a decimal value, it should be placed in the field with the decimal present. If the value is a whole number, no decimal is required. The Inbound Flat File Conversion program (R47002C) validates the value in the field and adjusts the value based on the data dictionary. For example, line number (EDLN) typically has three display decimals. If the value in the flat file is 1, the Inbound Flat File Conversion program converts it to 1000 so that it appears as 1.000 in an application. If no value needs to be mapped to the field, either a blank or a 0 is converted to a 0 in the EDI inbound interface tables.

This table shows how the system converts values for the data dictionary item EDI Line Number (EDLN) from the flat file into the EDI inbound interface tables:

Value in Flat File | Converted Value in Interface Table | Value Displayed with Three Display Decimals | Attribute of Field in Interface Table
1 | 1000 | 1.000 | Numeric 7, 3 Display
1. | 1000 | 1.000 | Numeric 7, 3 Display
1.0 | 1000 | 1.000 | Numeric 7, 3 Display
1.00 | 1000 | 1.000 | Numeric 7, 3 Display
1.000 | 1000 | 1.000 | Numeric 7, 3 Display

This table shows how the system converts values for the data dictionary item Units, Transaction/Quantity (UORG) from the flat file into the EDI inbound interface tables:

Value in Flat File | Converted Value in Interface Table | Value Displayed with Three Display Decimals | Attribute of Field in Interface Table
123 | 123 | 123 | Numeric 9
123 | 123 | 123 | Numeric 9
-123 | -123 | 123- | Numeric 9
123- | -123 | 123- | Numeric 9
| 0 | 0 | Numeric 9
0 | 0 | 0 | Numeric 9
000000000 | 0 | 0 | Numeric 9

When you send or receive documents with decimal numbers, you must use a placeholder, such as a period (.), to indicate the position of the decimal. You define the placeholder in the use preference table.

Character Values

Character values typically do not need to be padded with blanks if the field is populated with a value. One of the few exceptions to this rule is the data dictionary item Business Unit (MCU). Because this field is right justified in an alpha field, the value must be padded with blanks. In addition, all values must be surrounded with the special field start and stop qualifiers. If nothing is going to be mapped to a field, a blank must be placed between the two qualifiers. If the blank between the two qualifiers is not present, a single qualifier is converted into an alpha field in the interface table.

For example:

Purchase order number (VR01 - Alpha 25) and several blank fields:

Customer PO #, , , ,

Several blank fields and Business Unit (MCU - Alpha 12) right justified:

, , 30,

#### Formatting Flat File Data for Outbound Documents

Depending on the capabilities of the translator software that you use, you might have to specify how the data should be formatted in the flat file when running the Outbound Flat File Conversion program from the EDI outbound interface tables into the flat file.

Each record within a flat file must be consistent in record length and field position. Most EDI translator software packages read the data positionally within each record; if the data varies in length and field position, most fields are not read correctly by the translator software.

Dates

The system determines how a date is formatted in a flat file when you run the Outbound Flat File Conversion program through a combination of the date-format user preference and the default value for century change year (CENTCHG in UDC 00/DF). When the date-format user preference is MDY (month, day, year), YMD (year, month, day), or DMY (day, month, year), the Outbound Flat File Conversion program uses the default value for CENTCHG to determine whether the year (Y) portion of a date is four digits or two digits. If the year being processed by the Outbound Flat File Conversion program is less than or equal to the CENTCHG default value, the system converts the year in the flat file to two digits. If the year being processed by the Outbound Flat File Conversion program is greater than the CENTCHG default value, the system converts the year in the flat file to four digits.

For example, if the default value for the CENTCHG item is 15 and the date-format user preference is MDY, the system uses this formatting in the Outbound Flat File Conversion:

Date to Be Formatted | Typical Interface Table Format (Julian Dates) | Converted Value in Flat File
May 14, 1998 | 98134 | 05/14/98
December 12, 2014 | 114346 | 12/12/14
December 12, 2015 | 115346 | 12/12/15
December 12, 2016 | 116347 | 12/12/2016
Blank Date | 0 | 00/00/00

Note. Date formats for month, day, and year should always be converted as two digits for the month, two digits for the day, and two or four digits for the year. If the EDI translator software reads any flat file record positionally, you must select a specific date-format user preference for the user profile that uses the Flat File Conversion program. If the date-format user preference is blank, the displayed date is based on the system default value, and single digit months and days appear with only one position. For example, the output for the date May 14, 1998, appears as 5/14/98.

You can also set the year portion of the date so that it will always be produced as four digits in the flat file when you run the Flat File Conversion program. To set the year portion, follow these steps:

1. Set up a custom date format in UDC table 00/DF as MDE (month, day, four-digit year).

   This is a predefined date format that the Outbound Flat File Conversion program uses to display the date as four digits. The order of the date in the custom date format can be changed to produce the desired date-format output, such as DME (day, month, year), EMD (year, month, day), and so on.

2. Assign this custom date format to the date-format user preference.

   For example, if you set the date formatting so that the output always appears as four digits, the system formats the date as indicated in this table after you run the Outbound Flat File Conversion program:

   Date to be Formatted | Typical Interface Table Format (Julian Dates) | Converted Value in Flat File
   May 14, 1998 | 98134 | 05/14/1998
   December 12, 1998 | 98346 | 12/12/1998
   December 12, 2015 | 115346 | 12/12/2015
   December 12, 2016 | 116347 | 12/12/2016
   Blank Date | 0 | 00/00/0000

Numeric Values

Numeric fields in Flat File Cross-Reference program (P47002) output appear as 32 positions. The first position indicates the sign of the subsequent value. A 0 indicates the number that follows is positive, and a dash indicates that the number that follows is negative. The next 20 positions indicate the whole number portion of the value, followed by a separator and then by 10 digits that indicate the decimal portion of the value. The separator character is based on the setting in the user preference for the decimal format character. Typically in North America, this value is a period. Numeric values always appear in this format, regardless of whether the field in the EDI outbound interface table is stored with a decimal.

This table shows the flat file format that corresponds to the values shown in the EDI outbound interface tables:

Value in Interface Table | Format in Flat File
1 or 1.0 | 000000000000000000001.0000000000
100686.54 | 000000000000000100686.5400000000
100686.54- | -00000000000000100686.5400000000
0 | 00000000000000000000000000000000

When you send or receive documents with decimal numbers, you must use a place holder such as a period (.) to indicate the position of the decimal. You define the place holder in the user preference table.

Character Values

The system produces character strings from the EDI outbound interface tables to the flat file and pads the values with blank spaces out to the number of positions of the field. Typically, these positions are left justified in the field. However, a few exceptions exist, such as the data dictionary item Business Unit (MCU), which is right justified (just as it appears in the actual field). The system pads fields that are blank with blanks.

This table lists the character strings that are produced from the EDI outbound interface tables to the flat file:

Value in Interface Table | Interface Table Field and Attributes | Format in Flat File
F47047 | ZAFILE in F4714 - Alpha 10 | F47047
30 | SYMCU in F47046 - Alpha 12 | 30
| A blank field in any F47 table |

Example: Formatting Flat File Data for Outbound Documents

These examples illustrate correctly formatted flat file data:

1,000000000000000000001.0000000000,00001,00000000000000010005.0000000000,IN 3,000000000000000000002.0000000000,00001,000000000000000100035.0000000000,IN 2,000000000000000000001.0000000000,00001,000000000000000100035.0000000000,IN 4,000000000000000000002.0000000000,00001,000000000000000100035.0000000000,IN 2,000000000000000000001.0000000000,00001,000000000000000100035.0000000000,IN 4,000000000000000000002.0000000000,00001,000000000000000100035.0000000000,IN

### Setting Up Customer Billing Instructions

This section provides an overview of customer billing instructions and discusses how to:

- Set up customer billing instructions.

- Enter EDI information for the customer.

- Enter EDI transaction cross-reference data for the customer.

#### Understanding Customer Billing Instructions

The Customer Master program (P03013) enables you to control the way the system processes EDI information for each customer or trading partner. The EDI information that you set up determines whether you can exchange EDI information with the trading partner and how the system processes the trading partner's records.

For example, you can specify that the customer needs all bills to be sent to a parent company for items that are shipped to branch offices. The system retrieves the parent company billing information every time an order is processed for the customer. You should set up information for all trading partners.

#### Prerequisites

Before setting up customer billing instructions:

- Verify that address book records exist for the customer.

- Verify that the UDCs for the EDI transaction set (40/ST) are set up for the types of transactions that you conduct with the customer.

#### Forms Used to Set Up Customer Billing Instructions

Form Name | FormID | Navigation | Usage
Customer Master Revision | W03013B | EDI Advanced & Technical Operations (G4731), Customer Billing Instructions On the Work With Customer Master form, click Find to locate customers who have been set up in the JD Edwards EnterpriseOne Address Book system. Select the customer and click Select. | Review and change customer default information.
Customer Billing Instructions - EDI Information | W03013B | On the Customer Master Revision form, select the EDI Information tab. | Enter identifying information for EDI exchanges with the customer.
EDI Transaction Cross Reference | W40131A | On the Customer Master Revision form, select X-Ref Revision from the Form menu. | Enter cross-reference information for each document that is traded with this trading partner.

#### Setting Up Customer Billing Instructions

Access the Customer Master Revision form.

#### Entering EDI Information for the Customer

Access the Customer Billing Instructions - EDI Information form.

#### Entering EDI Transaction Cross-Reference Data for the Customer

Access the EDI Transaction Cross Reference form.

Batch Processing Mode | Enter a value that identifies whether a customer is prohibited from batch processing or if that customer is in a test or production mode. Values are: I: The customer is prohibited from availability for batch processing. T: Test mode. Only reports produced when processed. P: Production mode. During processing, the system produces reports and live orders.
Customer Type Identifier | Enter a value from UDC 40/CI to specify the type of number to be sent in an EDI transaction; for example, DUNS number or telephone number.
Item Type Identifier | Enter a code to specify the type of item number to be sent in an EDI transaction; for example, UPC code, supplier part number, or customer part number.
Amount Decimals and Quantity Decimals | Enter the number of positions to the right of the decimal point that are included in values for all amount or quantity fields in EDI transactions for a particular customer.
S/R/B Ind | Enter a code to specify whether a specific transaction set can be sent, received, or both. Values are: S : Send R : Receive B : Both Note. You must complete this field.
Transaction Set Number | Enter a number to identify a specific type of EDI transaction. Note. You must complete this field.

### Establishing EDI Information for Suppliers

This section provides an overview of EDI supplier information and discusses how to enter EDI information for suppliers.

#### Understanding EDI Information for Suppliers

You must set up the EDI information for each supplier with whom you want to exchange data using EDI. This information can be set up when you originally set up a new supplier or when you update an existing record.

See Also

Setting Up Supplier Self-Service and Buyer Workspace in JD Edwards EnterpriseOne

#### Form Used to Enter EDI Information for Suppliers

Form Name | FormID | Navigation | Usage
Supplier Master Revision - EDI Information | G43B41 | Supplier Information (G43B41), Purchasing Instructions On the Work With Supplier Master form, click Find to locate suppliers. Select a supplier and, on the Supplier Master Revision form, select the EDI Information tab. | Enter EDI information for suppliers.

#### Entering EDI Information for Suppliers

Access the Supplier Master Revision - EDI Information form.

Batch Processing Mode | Enter a code to indicate whether a customer is prohibited from batch processing or whether the customer is in test or production mode. Values are: I : Inhibited. Not available for batch processing. T : Test mode. Only reports produced when processed. P : Production mode. Reports and live orders are produced when processed.
Customer Type Identifier | Enter a value from UDC 40/CI to specify the type of number to be sent in an EDI transaction; for example, DUNS number or telephone number.
Item Type Identifier | Enter a code to specify the type of item number to be sent in an EDI transaction; for example, UPC code, supplier part number, or customer part number.
Amount Decimals and Quantity Decimals | Enter the number of positions to the right of the decimal that are included in values in all amount or quantity fields in EDI transactions for a particular customer.
Send Method | Enter a code to indicate how documents are sent to a customer or supplier. The code is part of the Accounts Payable Batch Upload process and can be used as a criterion when you write reports.

### Defining EDI Tolerance Rules

This section provides an overview of EDI tolerance rules and discusses how to add a tolerance rule.

#### Understanding EDI Tolerance Rules

The JD Edwards EnterpriseOne Data Interface for Electronic Data Interchange system uses the tolerance rules that you define to edit inbound EDI documents and to extract outbound EDI documents. Tolerance rules determine whether the transaction falls within an acceptable range for the transaction set and trading partner. You can add tolerance rules for quantity, unit cost, extended amount, and tolerance days. The purchasing tolerance rules are used for the inbound receiving advice and inbound invoice with voucher match.

Note. You define EDI tolerance rules only if you are using either inbound or outbound purchase order change (860/ORDCHG) or inbound purchase order change acknowledgment (865/ORDRSP).
A tolerance error occurs when the value in a field exceeds the range that you specify in the EDI or purchasing tolerance rules. If any EDI document falls outside the range, the program prints an error message on the exception report that the system produces whenever you send or receive EDI documents.

#### Form Used to Define EDI Tolerance Rules

Form Name | FormID | Navigation | Usage
EDI Tolerance Rules Revisions | G4731 | EDI Advanced & Technical Operations (G4731), EDI Tolerance Rules | Define tolerance rules to edit inbound EDI documents and to extract outbound EDI documents.

#### Adding Tolerance Rules

Access the EDI Tolerance Rules Revisions form.

Transaction Set | Enter an identifier for a specific type of EDI standard document or transaction. Note. You must complete this field.
Trading Partner | Enter a number to identify an entry in the JD Edwards EnterpriseOne Address Book system, such as employee, applicant, participant, customer, supplier, tenant, or location. Note. You must complete this field.
Tolerance Percentage | Enter the percentage for which the system accepts a purchase order line for the commodity without issuing a warning message. The percentage is based on the line price and is used during the matching process. If you leave this field blank, the system does not perform tolerance checking. Enter the percentage as a whole number. For example, enter 10 percent as 10.