Purchase Orders Interface: Pipe Delimited Method
Use the Purchase Order Interface to load purchase order data from external applications. Information you load using this interface adds to or updates data already stored in PENTA.
Data files you load must have Request Types assigned to the P Interface Type.
Purchase Orders Initiate Batch Interface Requests Screen
Only if the following is true will PENTA attempt to process the Detail Records:
The Batch Number matches the file name.
The record count of the header equals the number of Detail Records.
If either the purchase order or line item data does not pass these validations, PENTA does the following:
Rejects the purchase order in its entirety (regardless of whether it is a request to create or update a PENTA purchase order).
Updates the request status to reflect the rejection.
Records exception messages.
Load purchase orders using sets of master and Detail Records. These sets consist of one Master Record and multiple Detail Records (one Detail Record per line item). In a data file, you can have more than one set of records for a purchase order, so it is possible that for the same purchase order, PENTA rejects the first set of records but accepts the second set.
Purchase Orders Limitations & Restrictions
The following restrictions apply:
Do not load tax lines into PENTA. PENTA calculates sales and use tax from the job’s Costcode tax rules or the job’s tax jurisdiction list if there are no rules. The PENTA-calculated tax may be different from the tax calculated by the external application.
You cannot charge purchase order items to fixed asset.
You cannot delete purchase orders and line items by loading a data file.
Available Records
Header Record
This information applies only if you use the Initiate Batch Interface Requests screen to load data files.
Each interface file should consist of one Header Record and one or more Detail Records. PENTA uses the information defined within the Header Record to validate the content of the interface file. If a header field fails validation, PENTA rejects the header and associated Detail Records.
# | Field | Entry | Format | Description |
---|---|---|---|---|
1 | Identifier | Req | C! 3 | Request Type code assigned to the P (Purchase Order) Interface Type. |
2 | Record Count | Req | I 10 | Each batch includes a count of the records (header and detail) within the file. If the number in the Header Record differs from the number read by PENTA, no update occurs and PENTA rejects the entire file. |
3 | Data Check Verifier | Req | I 10 | The sum of the Record Type Number fields for all Detail–Master and Detail-Detail records associated with this Header record. |
Detail - Master Record
Each purchase order addition or update requires a Detail–Master Record. You must include all detail–Detail Records associated with this detail–Master Record before subsequent detail–Master Records.
# | Field | Entry | Format | Description |
---|---|---|---|---|
1 | Record Type Number | Req | Z 1 | This value is 1 for Detail – Master records. |
2 | OU Id | Req | X | The organizational unit assigned to the purchase order |
3 | Job Id | Opt | X | The job associated with the purchase order |
4 | Purchase Order Number | Req | X | Id of the Purchase Order. |
5 | Activity Code | Req | C! 1 | The action to be taken with the purchase order:
|
6 | Purchase Order Status Code | Req | C! 1 | You must delete PO lines, not through the Interface module. The status can be:
|
7 | Request Date | Req | D | Issue date and status date |
8 | Change Order Id | Opt | X | Job Change Order Id |
9 | Vendor Id | Req | X | Validate against the VENDOR table. |
10 | Description | Req | C 30 | No validation other than checking to verify that the field contains a value. |
11 | Change Type Code | Req | C! 1 | Change Type Code identifies how purchase orders update. Valid values are:
|
12 | Purchase Order Type Code | Req | C! 4 | Validate against the PO_TYPE table. Possible values are:
|
13 | Terms | Opt | C! 3 | Validate against the table PAYMENT_TERM. |
14 | Currency Id | Req | C! 3 | If null, PENTA uses the currency of the Vendor. Validate against the table currency. Required if System Option 44 is Y; otherwise, do not enter a value. |
15 | Purchase Order Check Amount | Opt | F 15.2 | Sum of all the PO detail line records for a new (added) purchase order, or for a new (added) purchase order line. If null, PENTA does not check. PENTA uses this amount within the interface program only. It is not inserted into the PO_MSTR table, since PENTA calculates tax, which would create an immediate error the next time a user views the purchase order. |
16 | Tax Exempt Reason Code | Opt | C! 3 | Id explaining the reason why the Purchase Order is tax exempt. Validate against the table TAX_EXEMPT_REASON. |
17 | Tax Permit Id | Opt | C 15 | A free-format value signifying the tax-exempt permit number provided by the Vendor. No validation other than length. |
18 | User Id | Req | C 6 | The Id of the user assigned to the PO. Can be a generic user, but the Id must exist in PENTA. |
Optional Detail-Master Fields (place after Field 18)
Field | Format | Description | ||
---|---|---|---|---|
CONTACT_NUM | C! 4 | Id of the Purchase Order’s vendor contact. | ||
D_RELEASE_DATE | D | The date approved drawings must be released in order for the project to remain on schedule. | ||
FAB_DELIVERY_DAYS | I4 | The expected number of days to fabricate and deliver the Purchase Order materials. | ||
SHIP_METHOD_CD | C! 4 | Id of the preferred method of shipment. Typically, ground, next day, two day, etc. are usable values in this field. Valid values originate in the Shipping Methods window. | ||
SHIP_METHOD_DESCR | C 30 | Description of the preferred method of shipment. | ||
FREIGHT_TERM_CD | C! 8 | Id of the terms under which the purchased items will ship. | ||
PO_TYPE_CD | C! 1 | Available values:
| ||
ALLOW_OVRN_PCT | F 15.2 | The amount by which you allow the invoice value to be over the original cost. If the record is for a child line of a bulk purchase order, this should not contain a value. | ||
ALLOW_OVRN_PCT | F 6.3 | The percentage by which you allow the invoice value to be over the original cost. If the record is for a child line of a bulk purchase order, this should not contain a value. | ||
REQUESTER_EMP_ID | X | Id of the employee making a request for the Purchase Order. | ||
PURCH_AGENT_EMP_ ID | X | The employee Id of the purchasing agent. | ||
PMGR_EMP_ID | X | The employee Id of the project manager. |
Detail – Detail Record
For each Detail–Detail Record, a Detail–Master Record must exist.
# | Field | Entry | Format | Description |
---|---|---|---|---|
1 | Record Type Number | Req | I 1 | This value is 2 for Detail – Detail records. |
2 | OU Id | Req | X | The OU assigned to the purchase order |
3 | Job Id | Opt | X | The job associated with the purchase order line item |
4 | Purchase Order Number | Req | X | Id of the Purchase Order. |
5 | Line Number | Req | I 9 | The line number of the purchase order |
6 | Activity Code | Req | C! 1 | The action to be taken with the purchase order:
|
7 | Line Status | Req | C! 1 | Status types:
|
8 | Item Number | Opt | C 15 | Non-inventory reference number. Could be relevant to the vendor or a work reference. |
9 | Description | Opt | C 2000 | The description of the line item. If null, PENTA copies the value from the Detail – Master Record. |
10 | Distribution Type | Req | C! 1 |
|
11 | Overrun Amount | Opt | F 15.2 | The amount by which you allow the invoice value to be over the original cost. If the record is for a child line of a bulk purchase order, this should not have a value. |
12 | Overrun Percent | Opt | F 6.3 | The percentage by which you allow the invoice value to be over the original cost. If the record is for a child line of a bulk purchase order, this should not have a value. |
13 | Costcode | Req | X | The Costcode assigned to the line item |
14 | Cost Type Code | Req | C! 4 | The Cost Type assigned to the line item |
15 | Lump Sum Amount | Opt | F 15.2 | For an activity code of A, if the Lump Sum Amount is set, the Unit Price and Units must be null. |
16 | Unit Price | Opt | F 12.3 | For an activity code of A, if Unit Price contains a value, a value for Units is required and Lump Sum Amount must be null. Exception: BULK POs. The child lines cannot have an updated Unit Price. The parent exclusively controls the price. |
17 | Units | Req* | F 12.3 | For an activity code of A, if Unit Price contains a value, an entry in this field is required. |
18 | Change Order Id | Opt | X | Validate against the PO_CO table for the current purchase order. If the Id does not exist, PENTA adds it. |
19 | Change Order Description | Opt | C 30 | If the description is in the PO_CO table, update the description. If it does not exist, PENTA adds it. |
20 | Parent Line Number | Opt | I 9 | The line number may not be associated with a PO line that is a child to another line. The parent line must already exist. If the purchase order type code from the Detail – Master Record is BULK, this field must contain a value. |
21 | Line Type | Req | C! 1 | Validate against the PO_LINE_TYPE table. Available Types are:
|
22 | Unit Of Measure | Opt | C 5 | Validate against the UNIT_OF_MEASURE table. |
23 | Needed Date | Opt | D | The date the line item is needed in-house |
24 | Promise Date | Opt | D | The date the line item was promised |
25 | Tax Exempt Reason Code | Opt | C! 3 | Validate against the TAX_EXEMPT_REASON table. If null, PENTA uses the value from the Detail – Master Record. |
26 | Tax Permit Id | Opt | C 15 | No validation other than length. If null, PENTA uses the value from the Detail – Master Record. |
27 | User Id | Req | C 6 | The Id of the user assigned to the PO. Can be a generic user, but the Id must exist in PENTA. |
Optional Detail-Detail Fields (place after Field 27)
Field | Format | Description | ||
---|---|---|---|---|
ALLOW_OVRN_PCT | F 6.3 | Percent by which you allow the invoice value for the unit price of this line item to be over the original cost. | ||
ALLOW_OVRN_AMT | F 15.2 | Overrun for Unit Price amounts. Amount by which you allow the invoice value for the unit price of this line item to be over the original cost. | ||