Lesson 2 of 6
DESADV and DELVRY07: the delivery IDoc
10 min
Listen to this lesson
The ship notice is built from the outbound delivery, not from the order. For Great Lakes that is delivery 80001234: created from sales order 1000457 at shipping point 1710, picked in EWM warehouse 1710 from storage location 171A, packed at work center PK01, and issued when the GL-NORTH truck leaves. SAP's delivery documentation describes the shipping notification as the advance announcement of the delivery at the customer, sent as message type DESADV with output type LAVA in application V2 (shipping).
- Output LAVAMessage control in V2 finds Great Lakes' record: partner function SP, medium 6, dispatch time 4
- WE20 DESADV rowKU 17100001, message control V2 / LAVA / DELV, port XP1_PO, transfer immediately
- Process code DELVFunction module IDOC_OUTPUT_DELVRY reads the delivery and its handling units
- DESADV IDocBasic type DELVRY07, status 03 when handed to the port
- 856 outProcess Orchestration maps it to X12 004010 and sends it over AS2
Which version: DELVRY07
SAP's documentation shows several DELVRY versions because the pages were written over many releases: examples name DELVRY01, DELVRY03 or DELVRY06, and one older table still says DELVRY01 is current. The rule SAP states on the same pages is the one to follow: the IDoc type is a version number, and the highest number is the latest. SAP's current documentation describes the enhanced segments of DELVRY07, and that is what Contoso's DESADV row uses. When a partner's translator was built for an older version, the segment release in WE20 can hold the older segment definitions, but changing the basic type is a partner retest, not a configuration tweak.
The shape of DELVRY07
The most important thing to know about the delivery IDoc is that it is flat where the 856 is deep. Under the header segment E1EDL20 sit, side by side, the delivery items (E1EDL24) and the handling units (E1EDL37). Handling units do not contain items in the IDoc; they point to them. Each handling unit item (E1EDL44) names the delivery number, the delivery item number and the packed quantity, or, for a pallet that holds cartons, the external ID of the lower-level handling unit.
| Segment | Content | Fields the 856 map uses |
|---|---|---|
E1EDL20 delivery header | Delivery number, shipping point, route, weights, number of packages, bill of lading, means of transport ID, external delivery ID | VBELN, VSTEL, ROUTE, BTGEW, NTGEW, GEWEI, ANZPK, BOLNR, TRAID, LIFEX |
E1EDL22 | Delivery header descriptions | Texts for shipping point, route and similar |
E1ADRM1 | Partners with addresses (ship-to, sold-to, carrier) | Ship-to number and address for N1*ST |
E1EDT13 | Deadlines by qualifier, with planned and actual dates | Qualifier 006 goods issue (actual date) for DTM*011 |
E1EDL24 delivery item | Item number, material, customer material, delivered quantity, sales unit, weights | POSNR, MATNR, KDMAT, LFIMG, VRKME |
E1EDL41 | Reference data of the ordering party: customer PO number and date | BSTNR, BSTDT for PRF |
E1EDL37 handling unit header | External HU identifier, packaging material, weights, volumes, dimensions | EXIDV, VHILM, BRGEW |
E1EDL44 handling unit item | Delivery and item number, quantity in the HU, or a lower-level HU | VBELN, POSNR, VEMNG, EXIDV, VELIN |
DELVRY07 segments that matter for an outbound ASN. WE60 shows the full documentation for your release.
Header control and deadlines
Two segment names confuse people on their first DESADV project. E1EDL18 (delivery header control) carries qualifiers such as PGI (post goods issue), DEL (delete delivery) and PIC (picking with flow records). SAP documents these for inbound delivery messages from a warehouse subsystem, where they tell SAP what to do. They are not a status flag on an outbound ASN, and a map that reads E1EDL18 to decide whether goods were issued is reading the wrong thing. E1EDT13 (deadlines) is the right place: SAP lists qualifier 006 for goods issue and 010 for picking, each with planned and actual dates.
Partners, references and customer numbers come from the order and the master data. E1EDL24-KDMAT carries the customer material number that sap-edi-203 translated on the way in (GLF-ALT-100), so the 856 can quote Great Lakes' own part number. E1EDL41 brings back the customer's purchase order number GLF-PO-55120, which the 856 needs at order level. If the order did not store the customer PO number, the ASN cannot carry it, and Great Lakes' receiving cannot match the shipment to its PO.
| Question | Where the answer lives | Common mistake |
|---|---|---|
| Which order and PO? | E1EDL41 under each delivery item | Reading the SAP order number and sending it as the customer PO |
| When did it ship? | E1EDT13 qualifier 006, actual date | Using the IDoc creation date or the planned goods issue date |
| What is in each package? | E1EDL44 under each E1EDL37 | Assuming items are nested inside handling units in the IDoc |
| Which part number? | E1EDL24 KDMAT (customer) and MATNR (Contoso) | Sending only CMC-ALT-100 to a partner that receives by its own number |
Partner function and partner profile
The ship notice is usually addressed to the ship-to. Great Lakes is different: it receives every 856 at one EDI ID at head office and reads the delivery location inside the message, so Contoso's LAVA records use partner function SP and the DESADV row sits on KU 17100001 (sap-edi-201). SAP's own example partner profile for DESADV shows the same pattern of a sold-to row, V2 message control and process code DELV. If Great Lakes ever asked for 856s per depot, each ship-to (17100006, 17100007) would need its own partner profile, its own records, and a fresh partner test.
What would you do?
A tester in CMQ sees a DESADV IDoc for delivery 80001234 in status 03, but Process Orchestration's 856 has no PRF segment, so Great Lakes' test system cannot match it to GLF-PO-55120. Which check comes first?
- DESADV uses output type LAVA (V2), process code DELV (IDOC_OUTPUT_DELVRY) and basic type DELVRY07, the highest version.
- DELVRY07 is flat: items (E1EDL24) and handling units (E1EDL37) are siblings; HU items (E1EDL44) point to delivery items or lower HUs.
- Customer PO references come from E1EDL41; the goods issue date from E1EDT13 qualifier 006; customer part numbers from E1EDL24-KDMAT.
- E1EDL18 qualifiers (PGI, DEL, PIC) are documented for inbound control, not as an outbound shipped flag.
Check your understanding · not graded
Lesson check
1. Which segment carries the customer's purchase order number for a delivery item in DELVRY07?
2. How are handling units related to delivery items inside a DELVRY07 IDoc?
3. Which output type and application send the shipping notification in SAP's standard?
4. Where should the 856 map read the actual goods issue date from?