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

Debugging the Delivery Program

Former Member
0 Likes
2,886

Hello,

          I was looking for a way to debug the delivery creation program to find out why system is not allowing creation of multiple deliveries? ( The shipping points differ in this case). How does one find out the key tables, performs, function modules, master data & structures used ?

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
2,230

Thank you for input. I was able to find out something about the structure being used here - LIKP ( Delivery Header ). And, the logic of actually creating the delivery with reference is happening in this 'include' - vbap_c_aufbauen.

Are there any other function modules, performs and key tables which participate in determining the creation of 2 delivery notes? (In this case, as the shipping ponts differ)

11 REPLIES 11
Read only

FredericGirod
Active Contributor
0 Likes
2,230

Hi,

usualy in the SD module, SAP put the data into an internal table with the structure LIKP. With a COLLECT, SAP delete the different lines. If there is only one line at the end you will have one delivery, if one of the field is different, you will have 2 lines and you will have two deliveries

hope is clear

regards

Fred

Read only

Former Member
0 Likes
2,230

Please check the requirement/copy/data transfer routines for delivery in tcode VOFM

Read only

Former Member
0 Likes
2,231

Thank you for input. I was able to find out something about the structure being used here - LIKP ( Delivery Header ). And, the logic of actually creating the delivery with reference is happening in this 'include' - vbap_c_aufbauen.

Are there any other function modules, performs and key tables which participate in determining the creation of 2 delivery notes? (In this case, as the shipping ponts differ)

Read only

0 Likes
2,230

SAP provide a report (ZLE_ANALYZE_DELIVERY_SPLIT) in note 355404 that allows you to check the cause of a delivery split.

The best place to set a breakpoint is here:

SAPLV50S FORM GN_STEUERUNG_ZENTRAL (Include LV50SF06)

**************************************************

%x.                                                 "#EC NOBREAK "AIP
loop at xkomdlgn.

      perform /spe/fill_spe_vbfs.                           "n_1580720

**************************************************

Within the above LOOP, there are a number of other calls to different forms that are relevant. Essentially, the system will compare the ZLIKP structure with the XLIKP structure to see if they are different. If they are different, then a delivery split occurs.

So you need to check why XLIKP & ZLIKP differ.

Read only

0 Likes
2,230

Thank you. That helped!

Read only

Former Member
0 Likes
2,230

Hi,

You can split delivery by manipulating LIKP-ZUKRL parameter. Normally this is done in a VOFM routine data transfer ( order to billing ).  ZUKRL is basically a concatenation of key fields . If ZUKRL field of two items differ, delivery wlll split.

Regards,

DPM

Read only

0 Likes
2,230

Hello DPM,

                 I found the form 'DATEN_KOPIEREN_001' in the include FV50C001 which has the LIKP-ZUKRL parameter( the difference in which actually causes the split to happen). What I don't seem to get is the fact that I find the combination criteria given as the following:

"    * Fill field ZUKRL with combination criteria
  LIKP-ZUKRL(2)      = CVBAK-VTWEG.
  LIKP-ZUKRL+2(2)    = CVBAK-SPART.

  LIKP-STAFO = CVBAK-STAFO.
  LIKP-STWAE = CVBAK-STWAE.   "

VTWEG and SPART fields hold only the distribution channel & Division data respectively, right? Where does the Shipping Point - VSTEL come into the picture here? Where does the check and split determination happen?

Thanks & Regards,

Roy.

Read only

Former Member
0 Likes
2,230

I found the form 'DATEN_KOPIEREN_001' in the include FV50C001 which has the LIKP-ZUKRL parameter( the difference in which actually causes the split to happen). What I don't seem to get is the fact that I find the combination criteria given as the following: 

"    * Fill field ZUKRL with combination criteria
  LIKP-ZUKRL(2)      = CVBAK-VTWEG.
  LIKP-ZUKRL+2(2)    = CVBAK-SPART.

  LIKP-STAFO = CVBAK-STAFO.
  LIKP-STWAE = CVBAK-STWAE.   "

VTWEG and SPART fields hold only the distribution channel & Division data respectively, right? Where does the Shipping Point - VSTEL come into the picture here? Where does the check and split determination happen?

Read only

0 Likes
2,230

Hi Roy,

Kindly go through this document on invoice splitting. You can adopt the similar logic for delivery.

Search in google with the keyword "saptechsolutions.com + sd split" .

Regards,

DPM

Read only

ThangaPrakash
Active Contributor
0 Likes
2,230

Hello Alice,

Check for the copy control routine assigned to the delivery type which you are trying to create,

Check for the field LIKP-ZUKRL inside the routine.

Background of the field LIKP-ZUKRL:

Similar ZUKRL fields are combined to create a delivery.

Regards,

Thanga

Read only

Former Member
0 Likes
2,230

Thank you!