Enterprise Resource Planning Blogs by Members
Gain new perspectives and knowledge about enterprise resource planning in blog posts from community members. Share your own comments and ERP insights today!
cancel
Showing results for 
Search instead for 
Did you mean: 
35,097

VF04 is the transaction used to display the billing due list. It displays only those deliveries which are posted or whose PGI is complete. If we need deliveries which are not posted also to appear in the output list, we have explore enhancement user exits. This document explains how we can achieve this new functionality.

Procedure:

In order to find the deliveries which are not PGI ed we can use the transaction VL06o.

By clicking on push button  "For Good issue" we can let the list of deliveries which are not yet posted in the system.

Execute this report after giving relevant criteria for your search.

The output would look as below:

Now we can check in VL03N,for the document flow of this outbound delivery.

It is clear from the above document flow that, PGI has not been done.

Now, we can execute VF04 for this delivery: Result: No entry found

Steps to achieve the intended functionality to display the above delivery in VF04 output, for which goods issue is not done.

1.  1. Check and note down the program name for VF04 tcode : SAPLV60P

1.  2. Using this package we can search the list of userexits for tcode VF04 either in SMOD or SE80.

3. Go to SE80 and search for relevant exit:

4. Following list appears. We are interested in the billing list for deliveries:

We have to keep in mind that we are looking for something where we can check and use the billing status of the delivery.

Also, we need to debug VF04 to some extent to know from which database table does the report display data.

Program SDBILLDL is being called at F8

The relevant code part of the standard program is shown below:

So we are aware that VKDFS table has been used to fetch data that would be displayed in VF04 output.

5. Further exploring the exit:

EXIT_SAPLV05I_002 is related to our scenario. However, this exit would not be called during VF04 for delivery.

As I have pointed out earliar, VKDFS table would be updated and this is called during delivery updation.

I have created a new delivery for this purpose.

Let me place a break point within the exit which we have found.

 

  

Now we will do the picking for the delivery :

Go to picking tab and enter the picking quantity and save the delivery.

The customer exit would get called.

The picking is complete!

Hence, we have found the correct exit.

1. 6.  The coding would depend on project requirements but for the above functionality to work we need to make sure table VKDFS gets updated.

IMPORTANT: Currently VKDFS would not have an entry since PGI is not done for the delivery.

During picking we would make a forceful entry in VKDFS for our delivery and hence, that would later appear in VF04 output.

FKSTK = Billing status

KOSTK = Overall picking / putaway status

Both have same domain values.

1.  7.  Lets now do the picking for another delivery to check how VKDFS gets updated.

    

     Make picked qty as 1 and save delivery. The debugger will be called.

    

     8. The code is we have written in the exit would get executed now.

    

    

        The importing field from the above customer function exit determines whether it should populate an dupdate VKDFS or not.

    

      9. Now VKDFS updation in standard code.

    

    

       10 . Lastly you now check the delivery to be present in VKDFS table.

   

       11.  Now our functionality has been coded and tested. Lets us finally check VF04. You can find that this delivery, even if not PGI ed ,  it appears in billing due list output.

   

 

 

10 Comments
Former Member
0 Kudos

Hi Sapna,

Nice document. Agree that enhancing VF04 will fulfill the requirement to display deliveries against which PGI is not done. Usually it is not recommended to enhance/modify standard SAP reports. It is always better to develop our own customized reports to suit the requirement. To avoid developing a report from scratch, we can copy the standard report and then do the modifications required and assign a ztcode to it.

0 Kudos

Hi Rahul,

Thanks for your valuable feedback.

The requirement was very specific to the client who did not want to use any Z copy of standard report. They rather wanted some logic specific only to a couple of sales organizations. 

However, we have a user exit in place for the above functionality.

I have gone through SAP note 356061 - Incorrect index compilation caused by own checks

before I could arrive at above solution.

Regards,

Sapna

former_member199670
Participant
0 Kudos

Hi Sapna,

Very Nice and detailed document and exactly what I was looking.

Thanks you very much.

0 Kudos

Hi Manimaran,

I am glad it helped you. :smile:

Regards,

Sapna

ajmal_siddiqui
Participant
0 Kudos

Hi Sapna,

    In which type of business case will PGI be not mandatory? Please advise.

Thanks,

Ajmal

Former Member
0 Kudos

Peculiar requirement. Good POC.

shashirv6
Participant
0 Kudos
Hi Sapna ,

Thanks for detailed blog , My requirement is exactly opposite to this where in , deliveries without PGI

should not appear in VF04 .

In my case , VF04 displays deliveries without PGI for Non stock i.e. service items.

Can you kindly pour some suggestions on the same as am new to SD.

Regards,

Shashi

 
sapna_rao
Discoverer
0 Kudos
VF04 is the transaction used to display the billing due list. It displays only those deliveries which are posted or whose PGI is complete. If its showing reverse, there must be something custom developed in your system.
shashirv6
Participant
0 Kudos
Hi Sapna ,

Thank You so much for your response , In VTFL for Invoice F2 and Delivery LF combination copy

control at header is 903 and at item and item category level 904 . Does this mean that Copy control

has effect on listing Or only changes in VF04 program is causing this

Thanks & Regards,

Shashi

 
sapna_rao
Discoverer
Please keep a breakpoint in your routine program and run VF04 to confirm its effect on deliveries selected for output.
Labels in this area