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

#

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.
For example, if this file contains 1 Detail–Master record (Record Type Number = 1) with 6 Detail–Detail records (Record Type Number = 2), the Data Check Verifier value is 13 ((1 * 1) + (6 * 2)).

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

#

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:

  • A (Add) – Adds the record to the database. PENTA provides an error message if the record already exists in the database.

  • C (Change) – Update an existing record. If the field is not updateable, PENTA records an error.

6

Purchase Order Status Code

Req

C! 1

You must delete PO lines, not through the Interface module. The status can be:

  • A – Active

  • C – Complete

  • I – Inactive

  • P - Pending

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:

  • I (Incremental) – PENTA data is preserved while adding new information (this kind of change applies primarily to line item pricing updates). PENTA adds the units and lump sum amount to the existing line item pricing criteria; all other purchase order and line item data replaces that stored in PENTA. PENTA does not mark line items for deletion if there is no data from the external application—only include line items that need updating.

  • R (Replace) – Data in PENTA is compared to data submitted by the external application.
    Anywhere there is a difference between the PENTA data and the interface data, the PENTA data is replaced.

12

Purchase Order Type Code

Req

C! 4

Validate against the PO_TYPE table. Possible values are:

  • STD

  • BULK

  • FAB

  • BLKT

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

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:

  • STD (Standard)

  • BULK (Bulk)

  • FAB (Fabrication)

  • BLKT (Blanket)

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

#

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:

  • A(Add) – Adds the record to the database. PENTA provides an error message if the record already exists in the database.

  • C (Change) – Update an existing record. If the field is not updateable, PENTA records an error.

7

Line Status

Req

C! 1

Status types:

  • A – Active

  • C – Complete

  • P – Pending

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

  • A – Account Distribution

  • J – Job Distribution

  • O –Work Order Distribution

  • X – Parent Line of a Bulk Purchase Order

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:

  • R – Regular

  • F – Freight

  • T – Tax

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

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.