2008 Aug 04 9:15 AM
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
2008 Aug 11 10:28 AM
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...
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |