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

Structure for partner functions for billing creation program

0 Kudos

Hi All,

when we invoice two outbound deliveries, the system instead of making one invoice, makes two invoices simply because the ship to party is different.

Our sold to party /payer is equal in sales order/delivery.

but ship to party is different in sales order/delivery.

so we need to replace ship to party with sold to party value during run time when we are invoicing deliveries so that invoices do not split and they only combine.

I need to know which is the structure/internal table where the partner functions like sold to /ship to party is populated before finally passing the data to invoice table VBRK and invoice partner function table VRKPA.

as soon as we know the stucture name, we can change the ship to party value to sold to party value during run time and those values will be updated to billing tables by the system in its own standard way

we cannot change ship to party at sales order level, that is why we need to put a code as above.

can anyone inform the structure name and where it is available(billing user exit RV60AFZA or data t/f routine for billing or some where else) where all partner functions are populated from sales order/delivery including ship to party ??




Former Member
0 Kudos


you could use the exits USEREXIT_NEWROLE_XVBPAK_AVBPAK and/ or USEREXIT_NEWROLE_XVBPAP_AVBPAK in RV60AFZD for this purpose.

Think you have to change the XVBPAK - Table in that exits to avoid the splitt.

Regards Wolfgang

0 Kudos

Hello Valtin,

Thanks a lot for the answer. we have been able to change the ship to party and made it equal to sold to party while debugging in the structure XVBPAK and while invoicing, in the split analysis, the ship to party does not appear in the splitting criteria.

However other fields do appear in the splitting criteria like address number and we have been able to make the address eqaul to sold to party address number.

However after the above changes, we have two more fields which we have to make equal during run time while creating invoices as follows:-

1) Region

2) Transporttation zone.

these are the i think ship to party region and transportatio zone. we thought once ship to party is made eqaul to sold to party, these will disappear in split criteria. However this is not the case and we need to make region of ship to party partner function/Transportation zone =sold to party region/Transportation zone.

we could not find fields REGion and transportation zone in structure XVBPAK...

when i see the master data for ship to party, the field region and transportation zone is available in structure ADDR1_DATA.

your expert views please... can we pick up from ADDR1_data while running t code vf01/vf06/vf06 for invoce creation or do you know any other structure available during run time where these fields are available.

Iam a functional guy lookfing for helping out my tehcincal guys.....



0 Kudos

Hello Sonu,

Region is a field in VBRK. that makes sense because in some countries taxes depend on the region you deliver something. You could check if you could change that in the exit USEREXIT_FILL_VBRK_VBRP in RV60AFZC. That exit is called by a form 'vbrk_vbrp_fuellen' in LV60AA93 - you could set a breakpoint there.

The transportation zone may be a splitt criteria by using the exit routines in copy customizing - check if that one goes into VBRK-ZUKRI ( additional spitt criteria ).

Regards Wolfgang

0 Kudos

Hello Sir,

thanks for the reply. we will use breakpoint and see for the ship to party region field.

The transportation zone is not a split criteria in zukri field. in fact "transportation zone" of ship to party is not used in zulri.

any tips where we can modify transportation zone ??



0 Kudos

Hello Valtin,

Thanks a lot for your suggestions. We have been able to make ship to party and the ship to party region/address/transportation zone equal during run time for more than one sales orders/deliveries by doing coding in RV60AFZD and taking structure XVBPAK into account.

now we are able to combine deliveries while creating invoices in VF01 mode or VF04(online mode).

The issue is the invoices are not combining in background creation mode through VF06 and VF04(backround mode).

We know background processing calls program SDBILLDL and VF01 calls SAPMV60A.

what do we do now for invoices to combine in background mode ??