Manage Purchase Order Batch Entry

This document explains the work flow for purchase order (PO) batch entry.

Outcome

A purchase batch header is created, validated, and processed. It contains an address, charges, and a text block.

A purchase order batch entry is used for bulk purchase order entries.

These tables are updated:

  • Purchase Order Batch Origin (MPPBOR)
  • PO Batch Origin. Connect Exceptions (MPPBOX)
  • PO batch header (MXHEAD)
  • PO batch line (MXLINE)
  • PO batch address(MXPOAD)
  • PO batch charges(MXOEXP)
  • Account entries – PO batch line (MXCCST)
  • PO batch text (MXTEXT)

Before you start

The parameters in Settings for Purchase Order Batch Entry must be defined.

Follow these steps

Receive data for the batch PO through PPS370MI

PPS370MI (Purchase Order Batch Entry) is used to process external information to create a purchase order in M3.

The API program PPS370MI transfers data sent from the external system to M3 and creates records in the interface tables. The interface data are displayed and maintained in the interface programs named PPS370, PPS371, PPS372, PPS375, or PPS376.

These API transactions exist:

  • StartEntry - Retrieves a 'Message number' used for grouping PO batch information sent together
  • AddHead - Creates the PO batch header in the M3 interface table MXHEAD
  • AddLine - Creates the PO batch line in the M3 interface table MXLINE. The record in MXLINE is a new batch record or a batch record for adding a PO line to the existing PO.
  • AddAddress - Creates an address for a PO batch header or line in the M3 interface table MXPOAD. The record in MXPOAD is a new batch record or a batch record for adding an address to the existing PO line.
  • AddCharge - Creates a charge for a PO batch header or line in the M3 interface table MXOEXP. The record in MXOEXP is a new batch record or a batch record for adding a charge to the existing PO line.
  • AddAccString - Adds an accounting string for a PO batch line in the M3 interface table MXCCST. The record in MXCCST is a new batch record or a batch record for adding an accounting string to the existing PO line.
  • AddText - Adds text for a PO batch header or line in the M3 interface table MXTEXT. The record in MXTEXT is a new batch record or a batch record for adding text to the existing PO line.
  • CrtPOLineDlt - Creates a batch record in MXLINE to delete the existing PO line.
  • FinishEntry - Changes the status from 10 to 20 on an entire 'Message number' (containing several batch purchase orders) and starts the processing of the batch information
  • DeleteEntry - Deletes an entire 'Message number'. 'DeleteEntry' is done instead of 'FinishEntry'. Only a 'Message number' in status 10 can be deleted.
  • GetBatchHead - Obtains information about the PO batch header from the interface table MXHEAD
  • GetBatchLine - Obtains information about the PO batch line from the interface table MXLINE
  • LstBatchHead - Lists information about the PO batch headers from the interface table MXHEAD.
  • LstBatchLine - Lists information about the PO batch lines from the interface table MXLINE.

See Purchase Order Batch Entry.

You can also only receive key values for the purchase order while all other required information is created according to the default values for the supplier 'Supplier. Open' (CRS620), item (MMS001/002), and order type 'Purchase Order Type. Open' (PPS095). The purchase order number can be passed from the external system but it can also be left blank. The purchase order number is then generated according to the number series 'Number Series. Open' (CRS165).

Validate and check errors in received data

Validation can be performed in one of these ways:

  • From PPS370MI through the FinishEntry transaction
  • Directly from 'Purchase Order Batch. Open' (PPS370), 'Purchase Order Batch. Open Lines' (PPS371), 'Purchase Order Batch. Connect Address' (PPS372), 'Purchase Order Batch. Connect Charges' (PPS375), 'Purchase Order Batch. Connect Text' (PPS376), and so on using the Validate option
  • Directly from (PPS370) using the Process option.

The statuses of the header, line, address, charge, or text for the PO batch are as follows:

  • 10 - Order entry in progress
  • 20 - Order entry completed
  • 23 - Error during validation
  • 25 - Validation successful
  • 90 - Transferred, no errors detected.

Settings in 'Purchase Order Batch Origin. Open' (PPS090) and 'PO Batch Origin. Connect Exceptions' (PPS091) control how the validation process is performed, as follows:

  • 'Auto level' determines whether the API transaction FinishEntry should stop in status 20 or continue to process the transaction to status 90.
  • 'Process' method determines whether the processing is performed in a batch run or in an auto job. The capability to use auto jobs is not currently included in this M3 version. The validation and transfer process will therefore always be performed in a batch run if you use the API program PPS370MI to begin with.

You can also validate an entire batch order in (PPS370) or a single batch order line in (PPS371). The validation is always performed interactively from (PPS370/371), and so on.

Transfer data into M3 BE database

As with validation, transfer is possible by using any of these options:

  • PPS370MI through the FinishEntry transaction (in a batch run)
  • Directly from (PPS370) using the Process option (interactive).

The process is determined by the settings in (PPS090) and (PPS091). The order must be validated before the transfer can start, regardless of whether a separate validation has been made. The transfer process results in new records in the existing M3 tables and batch order tables.

Unexpected problems such as power cuts, which result in an interrupted transfer, will keep a work-in-progress flag and a job number on the purchase header in the interface. If a purchase order with several PO lines in the interface is transferred successfully to M3 except for one PO line, then the status of the interface PO would be 25/90. Also, the PO header in M3 will have status 06/06. This status indicates that the transfer is not completed. The PO line with the error can be processed again, when the power supply is working, including validation and transfer in the interface (PPS370-376).

Purchase order created

The result of the transfer process is a new purchase order (PO) in M3 that can be maintained and used as if it were created directly in 'Purchase Order. Open' (PPS200) and 'Purchase Order. Open Lines' (PPS201). The addition, changing, copying, or deletion of purchase order lines, as well as order confirmation, shipment advice, transportation notification, goods receipt, and invoice control are all possible for a purchase order created through POBE. Charges and text management are also included in this version.

One limitation is that only purchase order category 20-'Normal' can be used in this version.

Work with batch PO data manually in the PO batch entry

You can create and change batch PO data manually in the PO batch entry programs. The following sections describe how to do this.

Manually create batch purchase order

  1. Start (PPS370).

  2. Press F13 to activate the P panel. Set the panel sequence to EFU1. Press Enter to return to (PPS370). You cannot access (PPS370/A) from the P panel. You can only select F17 on (PPS370/B) to open (PPS370/A).

  3. On the A panel, specify the facility, warehouse, supplier, order type, request delivery date, and PO batch origin. The supplier's default order type is used if the order type is left blank.

  4. Specify purchase organization if it is available on the panel. The field is available if the use of purchase organizations for planning is activated on ‘Settings – Purchasing. Open’ (CRS780/H).

  5. Press Enter to continue to the E panel.

    The message number and purchase order number are created automatically.

  6. Press Enter to continue to the F panel.

  7. Press Enter to continue to the U panel.

    The U panel displays the user-defined fields. The user-defined fields are maintained in 'User-defined Fields. Open' (CMS082) for the purchase order head table (MPHEAD).
    Note: The U panel displays the maximum field length for the user-defined fields, but the specified data will be validated against the field length defined in (CMS082).
  8. Press Enter to continue to (PPS371).

  9. Press F13 to activate the P panel. Set the panel sequence to EFU.

  10. Press Enter to return to (PPS371/B).

  11. On the B panel, specify the line, item, and quantity. Click Create.

  12. On the E panel, click F11='Account Entry' to open a dialog box.

  13. Specify the account details and click OK.

  14. Press Enter to continue to the F panel.

  15. Press Enter to continue to the U panel.

    The U panel displays the user-defined fields. The user-defined fields are maintained in (CMS082) for the purchase order line table (MPLINE).
    Note: The U panel displays the maximum field length for the user-defined fields, but the specified data will be validated against the field length defined in (CMS082).
  16. Press Enter to return to (PPS371/A).

    A purchase order line with status 10 is created.

  17. Press F3 to continue to 'Purchase Order Batch. Open' (PPS370/A).

    Click F13 to open the P panel and set the opening panel as B1.

  18. Press Enter to continue to (PPS370/B1).

    A purchase order batch header with status 10 is created.

Manually connect address for batch PO header

  1. Click F12='PO Batch Address' to continue to (PPS372).

  2. On the B1 panel, specify the PO address type and click Create.

  3. On the E panel, specify the company name, address lines, city, state, postal code, and country.

  4. Press Enter to continue to (PPS372/B1).

  5. Press F3 to continue to (PPS370).

Manually connect charges for batch PO header

  1. Click F15='PO Batch Charges' to continue to (PPS375).

  2. On the B panel, specify the serial number and supplier costing element. Click Create.

  3. On the E panel, specify the costing markup.

  4. Press Enter to continue to (PPS370/B1).

Manually connect text for batch PO header

  1. Click F16='PO Batch Text' to continue to (PPS376).

  2. On the B panel, specify the text box and sequence number. Click Create.

  3. Press Enter to continue to (PPS370/B1).

  4. Click F16='Finish Entry' to complete the batch entry.

    The status is updated from 10 to 20.

  5. Select the PO batch header record and then select F25='Validate'.

    The status is updated from 20 to 25.

  6. Select the PO batch header record and then select F30='Process'.

    • The status is updated from 25 to 90.
    • The record will disappear from (PPS370) if parameter 40 is set to 2 on (PPS090/E).
    • A new purchase order is created on (PPS200).

Manually connect address for batch PO line

  1. Click F12='PO Batch Address' to continue to (PPS372).

  2. On the B1 panel, specify the PO address type. Click Create.

  3. On the E panel, specify the company name, address lines, city, state, postal code, and country.

  4. Press Enter to continue to (PPS372/B1).

  5. Press F3 to continue to (PPS371).

    A plus sign is displayed in the record for the address column.

Manually connect charges for batch PO line

  1. Click F15='PO Batch Charges' to continue to (PPS375).

  2. On the B panel, specify the serial number and supplier costing element. Click Create.

  3. On the E panel, specify the costing markup.

  4. Press Enter to continue to (PPS371/B1).

    A plus sign is displayed in the record for the charge column.

Manually connect text for batch PO line

  1. Click F16='PO Batch Text' to continue to (PPS376).

  2. On the B panel, specify the text box and sequence number. Click Create.

  3. Press Enter to continue to (PPS371/B1).

    A plus sign is displayed in the record for the text column.

  4. Click F16='Finish Entry' to complete the batch entry.

    The status is updated from 10 to 20.

  5. Select the PO batch header record and then select F25='Validate'.

    The status is updated from 20 to 25.

  6. Select the PO batch header record and then select F30='Process'.

Work with batch PO data manually in the PO batch entry to add or delete the existing PO line or to add PO line data

You can manually create, add, and delete records in the MX-tables which will add to or delete the existing PO data with the PO batch entry programs. These sections describe how to do this.

Prerequisites for updating existing PO lines in the batch entry:
  1. 'Entry code' (PBEC) must be set to '1' on (PPS370/A).
  2. The batch origin must have 50-'Existing PO' set to '1' on (PPS090/E).
  3. Value in the 'Opcd' column must be set to one of these:
    • 1='Create'
    • 2='Change on existing PO'
    • 4='Delete'
    • 9='No change' (Creates a copy of the existing PO line)
  4. A copy of the PO header must be created in the batch entry (PPS370).
Manually create a copy of the PO header:
  1. Start (PPS370/B).
  2. Click F17='Create PO Batch Header'.
  3. Set 'Entry code' to '1' on (PPS370/A).
  4. Specify the existing PO number and PO batch origin.
  5. Press 'Enter' to continue on (PPS371/B).

    A copy of the PO header has been created and a new message number has been assigned to the existing PUNO in the batch entry.

Manually create a copy of the existing PO line

  1. On (PPS371/B) specify the 'Line number' of the existing PO line.
  2. Specify '9' in 'OPCD' and click 'Create' to add the copy of the existing PO line.

If you want to add data to the existing PO line, that is, addresses, charges, texts, and accounting, a copy of the PO line must be created in the batch entry at first to connect the new data to the existing PO line. Specifying 9 in 'OPCD' field creates a copy of the PO line where the copy of the existing line is uneditable but data can be added to the line. It is indicated by the plus sign in the columns on (PPS371/B) when data are added. When adding the addresses, charges, texts, and accounting, 'OPCD' must be set to 1 because the data are created for the copy of the existing PO line.

The manual input and management of 'OPCD' is only necessary when you create records manually. 'OPCD' is automatically set for the API transactions. When you use the Add-transactions to add data to the existing record, 'OPCD' is automatically managed for each transaction, and follows the same logic as 'OPCD' when operates interactively. For the CrtDltPOLine transaction, 'OPCD' is automatically set to 4 for the 'Delete' record.

Manually create an 'Add' record to add a PO line to the existing PO

  1. On (PPS371/B) specify the 'Line number' of the existing PO line.
  2. Specify '1' in 'OPCD' and click 'Create' to create the 'Add' record for the existing PO.

Manually create a 'Delete' record to delete a PO line of the existing PO

  1. On (PPS371/B) specify the 'Line number' of the existing PO line.
  2. Specify '4' in 'OPCD' and click 'Create' to create the 'Delete' record for the existing PO line.

Manually add an address for the existing PO line

  1. Click F12='PO Batch Address' on the line to continue on (PPS372/B) from (PPS371/B).
  2. Specify the 'PO address type' on the B panel and specify '1' in 'OPCD' field.
  3. Click 'Create'.
  4. Specify the 'Company name', 'Address lines', 'City', 'State', 'Postal code', and 'Country' on the E panel.
  5. Press 'Enter' to continue on (PPS372/B).
  6. Press F3 to continue on (PPS371/B).

A plus sign is displayed in the 'Address' column.

Manually add charges for the existing PO line

  1. Click F15='PO Batch Charges' on the line to continue on (PPS375/B) from (PPS371/B).
  2. Specify the 'Serial number' and 'Supplier costing element' on the B panel.
  3. Specify '1' in 'OPCD' field.
  4. Click 'Create'.
  5. Specify the 'Costing markup' on the E panel.
  6. Press 'Enter' to continue on (PPS371/B1).

A plus sign is displayed in the 'Charge' column.

Manually add accounting string for the existing PO line

  1. Create a copy of the existing PO header and line on (PPS370/A) and (PPS371/B).
  2. Click F11='Account Entry' on (PPS371/B).
  3. Specify the accounting information in the pop-up window.
  4. Press 'Enter' to continue on (PPS371/B1).

A plus sign is displayed in the 'A/C' column.

Manually add text for the existing PO line

  1. Click F16='PO Batch Text' to continue on (PPS376) from (PPS371/B).
  2. Specify the 'Text box' and 'Sequence number' on the B panel.
  3. Specify '1' in 'OPCD' field.
  4. Click 'Create'.
  5. Press 'Enter' to continue on (PPS371/B1).

    A plus sign is displayed in the text column.

  6. Click F16='Finish Entry' to complete the batch entry.

    The status is updated from 10 to 20.

  7. Select the PO batch header record and then click F25='Validate'.

    The status is updated from 20 to 25.

  8. Select the PO batch header record and then click F30='Process'.

Work with batch PO data manually in the PO batch entry to update or change the existing PO line or PO line data

You can manually create update-records with the PO batch entry programs in the MX-tables which update and change the existing PO line data. These sections describe how to do this.

Manually update accounting string for the existing PO line
  1. Create a copy of the existing PO header and line on (PPS370/A) and (PPS371/B).
  2. Click F11='Account Entry' on (PPS371/B).
  3. Specify the accounting information in the pop-up window.
  4. Press Enter to continue on (PPS371/B1).
Manually update an address for the existing PO line
  1. Create a copy of the existing PO header and line on (PPS370/A) and (PPS371/B).
  2. Specify 'PO address type' on the B panel and specify 2 in 'OPCD' field.
  3. Click 'Create'.
  4. Specify the changes on the E panel for 'Company name', 'Address lines', 'City', 'State', 'Postal code', and 'Country'.
  5. Press Enter to continue on (PPS372/B).
  6. Press F3 to continue on (PPS371/B).

A plus sign is displayed in the 'Address' column.

Manually update charges for the existing PO line
  1. Create a copy of the existing PO header and line on (PPS370/A) and (PPS371/B).
  2. Specify 'Serial number' and 'Supplier costing element' on the B panel.
  3. Specify '2' in the 'OPCD' field.
  4. Click 'Create'.
  5. Specify the changes for 'Costing markup' on the E panel.
  6. Press Enter to continue on (PPS371/B1).

A plus sign is displayed in the 'Charge' column.

Manually update a PO line on the existing PO
  1. Specify the 'Line number' of the existing PO line on (PPS371/B) .
  2. 2. Specify '2' in the 'OPCD' field.
  3. Click 'Create' to create the update-record for the existing PO.
  4. Specify the changes for the PO line in panels E, F, G, and U.
Automatically add a PO line to the existing PO from the customer order flow

Adding PO lines or PO line data can be automated and you can use it to automatically add a PO line to the existing PO from the customer order flow.

To do so, settings for Purchase Order Batch Entry are appropriately adjusted to automation in the purchase order batch origin. It is used in the field 'Batch origin - pur planning' (WPBAO1) on 'Settings - Purchasing' (CRS780/H).

The appropriate settings for 'Purchase Order Batch Origin. Open' (PPS090/E) used on (CRS780/H) to facilitate automatically adding a PO line to an existing PO from the Customer order flow are:
  • Parameter 10 'No. series' set to 1.
  • Parameter 20 'Auto level' set to 2.
  • Parameter 30 'Process mtd' set to 1.
  • Parameter 40 'Del method' set to 2.
  • Parameter 50 'Existing PO' set to 1.
Manually convert to a new record

You can use related option 45='Convert to new' when you want to add or delete existing PO lines or PO line data, but the existing PO record no longer allows for changes.

After running 'Convert to new', you can see a message informing that a new purchase order number has been created in the batch entry. The pre-existing 'Message number' (MSGN) will be re-used.

The new record has 'Entry code for purchase order batch' (PBEC) equal to 0 and 'Operation code for purchase order batch' (POBO) equal to 0, indicating it is a new entry and will not be added to the existing PO record. Data will be copied over from the previous record in status 23, to the new record.

'Convert to new' is only allowed for a record with 'PBEC' equal to 1 and POBO' equal to 1, when the record is in status 23. It means that it can only be used on a batch entry which purpose is to add or delete existing PO lines, or existing PO line data.

  1. On the B panel on (PPS370/B), right click a record and use a related option 45='Convert to new'.

    Message will be displayed indicating which purchase order number has been created.

  2. The new batch entry record is displayed on (PPS370/B).