Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

IDOC EXtension

Former Member
0 Likes
638

Hi Gurus,

I gotta requirement in IDOC extension and i m new to this concept.Can anyone help me in doing this task...Full marks would be given...

here is the requirement..

Business Functionality

Current system has an issue that when product is cut or removed from an order an all that is left are pallets, and an ASN is still processed and eventually sent out to customers.

If the delivery is fully cut in the warehouse ie picking confirmation IDoc comes with Zero quantity and it has only pallet that delivery should not be sent in the ASN to customers.

The Delivery which is fully cut in the warehouse and has only pallet material should be removed from ASN. This is being achieved by sending a flag in the SHPMNT05 IDoc for delivery cut at the delivery level and ASN preprocessor, if find the value of Flag asu201D Y u201Cremoves the delivery from the customer ASN IDoc.

Processing Logic

Step 1: Modify extension [ZSHPMNT_TNDR] and create NEW field for NO Product ASN FLAG on the DELIVERY HEADER LEVEL under E1EDL20.

Object Type Domain Technical Name Description

Data Element New ZDELCUTFLG ZDELCUT_INDICATOR DELIVERY CUT INDICATOR

POssible Values

Yor Blank

Step2-Create New custom Field DELCUT_INDICATOR under Segment Z1EDLHAD for IDoc Extension : ZSHPMNT_TND

Object Technical Name Description Parent segment IDoc Extension

Field DELCUT_INDICATOR DELIVERY CUT INDICATOR Z1EDLHAD ZSHPMNT_TND

Basic Type

SHPMNT05

Step 3: Modify Method PO_ME_1060_Z1EDLHAD in the class ZVXX_CL_FILL_SEGMENTS for populating the DELCUT_INDICATOR in Z1EDLHAD segment for extension IDoc ZSHPMNT_TND.

For Message Type ZSHPMNT_ASN, Check for each delivery segment E1EDL20 and child segments E1EDL24, if one material in the delivery is found ne Zero ie as soon as it finds in one E1EDL24 segment Material qty for Non ZPAL material ne Zero, no further validation required and exit

if Material quantity for Non ZPAL material eq Zero in all E1EDL24 segments under delivery, the DELCUT_INDICATOR in Z1EDLHAD Segment should be populated with value u201CYu201D.

Pseudo Code in Processing Logic

Object : Method PO_ME_1060_Z1EDLHAD in the class ZVXX_CL_FILL_SEGMENTS

For Message Type ZSHPMNT_ASN

Read Idoc Data

Loop at Segnam E1EDL20

Loop at segnam E1EDL24

if E1EDL24- LFIMG ne 0 whereas E1EDL26-PSTVY ne ZPAL

Do nothing, stop further validation.

Else if E1EDL24- LFIMG eq 0 whereas E1EDL26-PSTVY ne ZPAL

Populate Z1EDLHAD-ZDELCUT with value "Y"

End if

End if

Kindly guide me in doing this..

Thanks in Advance..

Sahil

Hi Gurus,

I gotta requirement in IDOC extension and i m new to this concept.Can anyone help me in doing this task...Full marks would be given...

here is the requirement..

Business Functionality

Current system has an issue that when product is cut or removed from an order an all that is left are pallets, and an ASN is still processed and eventually sent out to customers.

If the delivery is fully cut in the warehouse ie picking confirmation IDoc comes with Zero quantity and it has only pallet that delivery should not be sent in the ASN to customers.

The Delivery which is fully cut in the warehouse and has only pallet material should be removed from ASN. This is being achieved by sending a flag in the SHPMNT05 IDoc for delivery cut at the delivery level and ASN preprocessor, if find the value of Flag asu201D Y u201Cremoves the delivery from the customer ASN IDoc.

Processing Logic

Step 1: Modify extension [ZSHPMNT_TNDR] and create NEW field for NO Product ASN FLAG on the DELIVERY HEADER LEVEL under E1EDL20.

Object Type Domain Technical Name Description

Data Element New ZDELCUTFLG ZDELCUT_INDICATOR DELIVERY CUT INDICATOR

POssible Values

Yor Blank

Step2-Create New custom Field DELCUT_INDICATOR under Segment Z1EDLHAD for IDoc Extension : ZSHPMNT_TND

Object Technical Name Description Parent segment IDoc Extension

Field DELCUT_INDICATOR DELIVERY CUT INDICATOR Z1EDLHAD ZSHPMNT_TND

Basic Type

SHPMNT05

Step 3: Modify Method PO_ME_1060_Z1EDLHAD in the class ZVXX_CL_FILL_SEGMENTS for populating the DELCUT_INDICATOR in Z1EDLHAD segment for extension IDoc ZSHPMNT_TND.

For Message Type ZSHPMNT_ASN, Check for each delivery segment E1EDL20 and child segments E1EDL24, if one material in the delivery is found ne Zero ie as soon as it finds in one E1EDL24 segment Material qty for Non ZPAL material ne Zero, no further validation required and exit

if Material quantity for Non ZPAL material eq Zero in all E1EDL24 segments under delivery, the DELCUT_INDICATOR in Z1EDLHAD Segment should be populated with value u201CYu201D.

Pseudo Code in Processing Logic

Object : Method PO_ME_1060_Z1EDLHAD in the class ZVXX_CL_FILL_SEGMENTS

For Message Type ZSHPMNT_ASN

Read Idoc Data

Loop at Segnam E1EDL20

Loop at segnam E1EDL24

if E1EDL24- LFIMG ne 0 whereas E1EDL26-PSTVY ne ZPAL

Do nothing, stop further validation.

Else if E1EDL24- LFIMG eq 0 whereas E1EDL26-PSTVY ne ZPAL

Populate Z1EDLHAD-ZDELCUT with value "Y"

End if

End if

Kindly guide me in doing this..

Thanks in Advance..

Sahil

1 REPLY 1
Read only

abapdeveloper20
Contributor
0 Likes
339

Hi ..

Even I'm newbie in idoc extension ..i can share with you some good things...

As per your requirement..... i guess.. u need to extend the existing idoc structures ..

1. Use WE31 to create or change the existing Z-segments for adding/delteing new fields in it...

2 . Once segment is finalised with the new fields then the data needs to populate as in the same order of the segments... This can be done inside the funtional modules ... which r mentioned there...

3. Use WE30 for checking the idoc extension structures with the list of segmetns and fields....

Thanks...