Ansicht
Dokumentation

/SAPAPO/RRP_REQ_NETTING - Distribution of Requirements to Receipts

/SAPAPO/RRP_REQ_NETTING - Distribution of Requirements to Receipts

General Material Data   ROGBILLS - Synchronize billing plans  
This documentation is copyright by SAP AG.
SAP E-Book

Functionality

The function module /SAPAPO/RRP_REQ_NETTING assigns requirements (input nodes) to receipts (output nodes). Assignment is a kind of net requirements calculation. The function module provides data as to when requirements are covered by receipts. It also provides the information about which requirements are covered by which receipts with the quantities used and the availability dates/times of the receipts. Pegging relationships and shelf life are not considered, but characteristics are considered.

Two different assignment strategies are considered by the module:

  • Use earliest receipts (first in first out)
  • Use timely receipts

Use earliest receipts

For this logic, the requirements and the receipts should be sorted according to the requirements date/time and the availability date/time. The function module does not perform this sort.

To cover the first requirement, the first receipt (according to the availability date/time) is used. Characteristics are taken into account here. If the quantity of the first receipt is not sufficient, the next receipt is used. The requirement is shifted to the last receipt that covers it completely.

Use timely receipts

In this logic, which starts from the requirements date/time of the requirement, the system first searches for suitable receipts in a backward direction. If the quantity of the receipt found does not cover the whole requirement, the next receipt in the backward direction is used. If not enough receipts exist in the backward direction, then the earliest receipt in the forward direction is used. The requirement is shifted to the availability date/time of the last receipt, which is used to cover it.

Requirements can be sorted according to various criteria (for example, priority, fixing, requirements date/time,...). The receipts should be sorted according to the availability date/time.

Interface

The parameter IT_OUTPUTS contains all the output nodes that have to be considered by the module. They should be sorted according to the availability date/time.

The input nodes (requirements elements), which are relevant for the assignment, are transferred to the function module using the import parameter IT_INPUTS. The order in which the requirements are shifted is provided by the sorting of the requirement elements, which corresponds to the sequence of the nodes in the table IT_INPUTS.

The import parameter IV_ALLOC_STRATEGY specifies which logic should be used to assign the requirements to the receipts ("Use Earliest Receipts" or "Use Timely Receipts").

The export table ET_COV_DEMANDS contains the input nodes that are covered completely using the available receipts. It also contains the information about when the requirements are covered.

The table ET_UNCOV_DEMANDS contains all orders that are not covered completely.

The export table ET_ALLOCATION contains data about the assignment. The entries describe assignment relationships; in other words, which requirement is covered by which receipt in which quantity, and at what time.

Description of the process flow of the module

  • Copy the import parameters IT_OUTPUTS and IT_INPUTS into local tables
  • Loop over all inputs to check each requirement separately
  • Determine all compatible receipts for the requirements (consider characteristics)
  • Remark: It is necessary to check each requirement separately because of the wildcard problem with characteristics.

  • Example: Requirement D1 with characteristic C1 exists on 10/21/02, requirement D2 with C2 exists on 10/22/02, and requirement D3 with C1 exists on 10/23/02. Three receipts cover these requirements. S1 with C1 on 10/18/02, S2 with a wildcard (which means the receipt can cover each requirement, irrespective of the characteristics of the requirement) on 10/19/02 and S3 with C1 on 10/20/02. All nodes have the same quantities. It is easy to understand that S2 should cover requirement D2, because otherwise there would be a shortage.

  • If the module did not check each requirement separately and instead planned all requirements together that have the same characteristics, then D3 would use receipt S2 for coverage. S2 would not be available to cover D2, and D2 would not be assigned to S2.

  • Assign receipt quantities to the requirement quantities according to the assignment strategy
Use earliest receipts (FIFO logic)
  • Loop over the compatible receipts.

  • If the receipt quantity is greater than the requirement quantity, the receipt quantity is updated and an entry created for the tables ET_COV_DEMANDS and ET_ALLOCATION. The requirement is deleted from the local table.

  • If the quantities are the same, the receipt and the requirement are deleted. Entries for the tables ET_COV_DEMANDS and ET_ALLOCATION are created.

  • If the receipt quantity is smaller than the requirement quantity, the requirement quantity is updated and the receipt deleted. Only one entry is created for the table ET_ALLOCATION.

Use timely receipts
  • Loop over the compatible receipts.

  • Search for a receipt where the availability date/time is the same as the requirements date/time of the requirement.

  • If such a receipt does not exist, the first receipt with an earlier availability date/time is used.

  • If no such receipt exists either, the receipt with a later availability date/time is used.

  • If no receipt is found, the requirement cannot be covered and an entry is created in the table ET_UNCOV_DEMANDS.

  • If the receipt quantity is greater than the requirement quantity, the receipt quantity is updated and an entry created for the tables ET_COV_DEMANDS and ET_ALLOCATION. The requirement is deleted from the local table.

  • If the quantities are the same, the receipt and the requirement are deleted. Entries for the tables ET_COV_DEMANDS and ET_ALLOCATION are created.

  • If the receipt quantity is smaller than the requirement quantity, the requirement quantity is updated and the receipt deleted. Only one entry is created for the table ET_ALLOCATION.

  • An entry is created in the table ET_UNCOV_DEMANDS for each requirement that cannot be covered completely during the assignment process.

Example

Notes

Further information





Parameters

ET_ALLOCATION
ET_COV_DEMANDS
ET_INPUT_DEFICIT
ET_OUTPUT_SURPLUS
ET_UNCOV_DEMANDS
IR_COMP_CHECK
IT_INPUTS
IT_OUTPUTS
IV_ALLOC_STRATEGY
IV_IO_COMPATIBLE_ALL
IV_NO_CONFR_CHECK

Exceptions

Function Group

APO/SAPLRRP_PLANNING

RFUMSV00 - Advance Return for Tax on Sales/Purchases   rdisp/max_wprun_time - Maximum work process run time  
This documentation is copyright by SAP AG.

Length: 8141 Date: 20240419 Time: 025649     sap01-206 ( 128 ms )