| Status | Approved |
|---|---|
| Owner | AROKIARAJAN-ext, Francis |
| Stakeholders | |
| Jira Request ID | ERP-537 Outbound Delivery Distribution (LE to EWM) |
| Jira Development ID | ERP-640 Outbound Delivery Distribution (LE to EWM) |
High- Level Specification
| Parameter | Value |
|---|---|
| Application System | SyWay S/4HANA |
| Business Process Reference | 06.10.03.01. Manage Outbound Deliveries |
Functional Overview
Outbound Delivery creation will be happened through Manual/background job, which will be run periodically. At the time of outbound delivery creation, system will try to allocate the batch based on the predefined rules and distribution from S/4HANA to EWM is triggered when saving the delivery.
Enhancement to Check Distribute Outbound Delivery:
Once all the line item have been allocated batches in outbound delivery then allow to distribute the outbound delivery to EWM for those only relevant for deliveries with storage locations active for EWM.
Note: the distribution is for the whole outbound delivery, not for the individual delivery item.
Scope and Objectives
Objective
To Implement an automated check during Outbound Delivery processing that inspects all line items. When saving an outbound delivery, if any item is for a batch‑managed material and the batch field is empty, the system must prevent distribution to EWM (no ODO created; distribution status remains Relevant/Planned).
- In scope: Outbound deliveries relevant to Embedded EWM
- Out of scope: Other delivery (Inbound deliveries, IM outbound deliveries, return deliveries..etc).
Step | Description | Comment |
|---|---|---|
| 1 | Create Outbound Delivery Manually | An Automated check during Outbound Delivery processing that inspects all line items. if any item is for a batch‑managed material and the batch field is empty for EWM Relevant SLOC, the system must prevent distribution to EWM. |
| 2 | Create Outbound Delivery Via Batch Job | An Automated check during Outbound Delivery processing that inspects all line items. if any item is for a batch‑managed material and the batch field is empty for EWM Relevant SLOC, the system must prevent distribution to EWM. |
| 3 | Create Subcontracting Outbound Delivery | An Automated check during Outbound Delivery processing that inspects all line items. if any item is for a batch‑managed material and the batch field is empty for EWM Relevant SLOC, the system must prevent distribution to EWM. |
Assumptions & Dependencies
- Materials that participate are batch‑managed (
MARA-XCHPF = 'X'). - Plants/storage locations are EWM‑relevant (/SCWM/TMAPSTLOC - mapped to EWM based on Plant/SLOC standard integration active).
Security, Integrity and Controls
- BADI implementation class must be transportable and accessible in the Private Cloud tenant.
- No special end‑user auth needed beyond standard LE/EWM authorizations.
Configuration Requirements
Not Applicable
Language Requirements
Not Applicable
Special Requirements
Not Applicable
Design Rationale
Functional Requirements
When saving an outbound delivery (Document Category 'J'), if any line items (include Batch Spilt line also) Storage Location is relevant EWM and a batch‑managed material and the batch field is empty,
the system must prevent distribution to EWM (no ODO created; distribution status remains Relevant/Planned).
Note: For batch split, the main item’s batch is expected to be blank; validate each batch split subitem instead.
- Enhancement Spot:
ES_LE_SHP_EXTEND - BADI:
LE_SHP_CHECK_DISTRIBUTION - Interface:
IF_LE_SHP_CHECK_DISTRIBUTION - Method:
CHECK_DISTRIBUTION(parameters includeDELIVERY_DOCUMENT_IN,DELIVERY_DOCUMENT_ITEMS_IN,MESSAGES,DISTRIBUTION_NOT_ALLOWED_OUT).
Data Source Considerations| Table | Field Name | Comments/Calculation/Field Manipulation |
|---|---|---|
LIKP | VBTYP | delivery Header (Document Category) |
LIPS | MATNR | delivery items (Material) |
LIPS | CHARG | delivery items (Batch) |
LIPS | WERKS | delivery items (Plant) |
LIPS | LGORT | delivery items (Storage Location) |
MARA | XCHPF | Material Master (Batch Management Indicator) |
Data Validation Considerations
| Table | Field Name | Comments/Calculation/Field Manipulation |
|---|---|---|
| LIKP | VBTYP | If LIKP-VBTYP = 'J" then only apply the following conditions |
| LIPS | MATNR | To check Material Batch Management Indicator (MARA-XCHPF) as 'X' then apply the following conditions |
| LIPS | WERKS & LGORT | If LIPS-WERKS & LIPS-LGORT is EWM Relevant then only apply the following conditions |
Custom Tables
Not Applicable
Master Data
| Field | Description | Data Type/Length | Validation rule/ Value Help |
|---|---|---|---|
Configuration Table
| Field | Description | Data Type/Length | Validation rule/ Value Help |
|---|---|---|---|
Selection Screen Enhancement
| Field Name | Description | Select: | Data Type/Length | Default Value/ Validation rule/ Value Help | Selection Logic |
|---|---|---|---|---|---|
Processing Logic
To apply the following Logic at METHOD (CHECK_DISTRIBUTION) in interface (IF_LE_SHP_CHECK_DISTRIBUTION)
1) To check the Scope to Outbound Delivery only based on Document Category (J) of Delivery. If LIKP-VBTYP <> 'J" then RETURN. otherwise continue
2) Loop all items of delivery to check EWM Relevant and batch-managed material based on Plant & Storage Location combination and Material master Batch Management Indicator (MARA-XCHPF)
If batch-managed material (MARA-XCHPF) = "X" then check Batch not allocated in Delivery item.
If it is not allocated then update Block distribution as TRUE otherwise FALSE
3) If there is Block distribution as TRUE then
Update DISTRIBUTION_NOT_ALLOWED_OUT = TRUE
MESSAGE = "Batch missing on at least one batch-managed item; distribution to EWM blocked" with MSGID="VL' MSGNO = '000' MSGTY = 'E'.
Volumetrics
Not Applicable
Performance Considerations
- Use in-memory item tables where possible.
- Single
SELECTforMARA-XCHPFwithFOR ALL ENTRIES. - Early exit as soon as one batch is found.
Error Handling
- Info message : “Batch missing on at least one batch-managed item; distribution to EWM blocked”
- No hard error: Do not block save unless explicitly required.
- Logging: Add to application log (
BAL) with objectLEand sub objectDELIVERY.
Testing
How to Test
Create Outbound Deliveries (manual or via background jobs) with multiple line items, driven by EWM-relevant storage locations, supporting both Batch-Managed and Non-Batch-Managed materials.
Note: EWM distribution is applicable only when the Storage Location is EWM-relevant.
Test Conditions and Expected Results
| ID | Condition | Expected Result |
|---|---|---|
| TS1 | Block distribution when one item missing batch: Create a Outbound delivery ( | Distribution to EWM is prevented, error message shown; EWM ODO not created. |
| TS2 | Allow distribution when all batches allocated: Create a Outbound delivery ( | Distribution proceeds; ODO appears in EWM monitor /SCWM/MON or /SCWM/PRDO. |
| TS3 | Re‑distribution after correction: Change Outbound Delivery for outbound delivery previously distributed Erroneously (From TS1) and allocate Batch & SAVE Outbound Delivery. | Distribution proceeds; ODO appears in EWM monitor /SCWM/MON or /SCWM/PRDO. |
TS4 | Non‑batch material:Create a Outbound delivery ( | Distribution proceeds; ODO appears in EWM monitor /SCWM/MON or /SCWM/PRDO. |
Test Considerations/Dependencies
Other Information
Development Details
Package
| Package Name | Parent Package |
|---|---|
Enhancement Implementation
| Enhancement Type | Standard Definition Name | Custom Implementation Name | Design Rationale Reference |
|---|---|---|---|
Other Development Objects
| Object Type | Object Name | Purpose/High Level Logic | Design Rationale Reference |
|---|---|---|---|
Appendix
Custom Authorization Group Naming Convention
This table is based on the Syensqo development standards document. It provides the naming conventions for authorization groups to associated with custom reports and tables to comply with security requirements.
ABAP | ZFI | ZMM | ZPS | ZCO | ZSD | ZBC | ZFI | ZCA |
|---|---|---|---|---|---|---|---|---|
| TABLES | ZFIT | ZMMT | ZPST | ZCOT | ZSDT | ZBCT | ZFIT | ZCAT |
