cancel
Showing results for 
Search instead for 
Did you mean: 

Customer master information

Former Member
0 Kudos
59

Hi.

I have an question about Archiving Billing Invoices.

When our business is sending invoices to costumers we have discovered that there has been a period where these did not has been archived. We have tried to reprint but that shows the problem. Customer Master Data has changed and that is against the law.

Does anyone have a solution for using the past Customer Master setup?

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

The solutiuons can be :

- read change history of your customer in the print program and revert changes back to invoice issue/print date. This one works in our system. Be careful with chaneg history selection (CDHDR/CDPOS) as it may cause performance issues if the code is written in correctly.

- store customer details used on the invoice in custom table so it can be re-printed with same customer details. It helps from now on... but does not help in case with old invoices, created prior to the change.

Former Member
0 Kudos

Hi.

Thanks for your answer. But is there not any other possibility to restore Custumer data?

For undstanding the proces I would like to know if the custumer data is taken as a foreign key in an billing doc. or are the data transfered to SD area?

Former Member
0 Kudos

Per,

the answer is ... it depends, if you do not change customer address in any particualr sales order -> it uses address from Customer master and if customer master address is changed -> it's changed in SD docs as well.

If you change address in sales order -> it gets new address number which is linked to this SD doc (and subsequent docs) so address changes in CMR has no impact on this document.

We used "revert changes based on change history" approach as it's universal and works for old documents (created prior to implementation of this change) and it works fine.

rmazzali
Active Contributor
0 Kudos

unfortunately you cannot do it !!

I also had this problem, and I opened some OSS messages but SAP told us that no date-dependent customer master data is supported.

So you have to go back to customer master, check for the changes, restore them manually, print/archive the invoice and then restore the customer master data to the new one. While doing this stop all activities like order entry, delivery and billing.

The best way to prevent this problem in the future is to create customers with 2 account groups, one for sold-to and one for bill-to. When the customer data change, then simply create a new bill-to and set it in the customer master of the sold-to as a payer, and then block the old one. New documents are ok, and the old ones too, because they refer to old payer.

regards

Roberto

pls. reward point if this could help you !

Former Member
0 Kudos

Roberto,

we actually put some logic to the print program to check if the customer address was changed and restore it based on changes recorded in CDHDR/CDPOS back to the state on original billing date. It works fine. So invoice print always uses address on original invoice date.

Former Member
0 Kudos

Hi.

Thats sounds interesting. What is the concept behind the logic? Could give an short resume of it?

Former Member
0 Kudos

select all changes from CDHDR for objectclass = 'DEBI', objectid in (vbdkr-kunre,vbdkr-kunwe) made before original print date/time if the invoice has been printed already (from nast) or invoice creation date/time (vbrk).

select all details (field changes) from CDPOS for all records selected in previous step where tabname = 'KNA1'.

update this second internal table with date/time from the 1st internal table (as there is no date/time in CDPOS).

sort by fieldname date time... the goal is to have the first record for each field with oldest change.... then you just need to find in this tabel the first record (fisrt change) for each address field you are going to print on the invoice and assign value_old to corresponding field... it will actually restore the field to the value it had before the first change.

Answers (3)

Answers (3)

Former Member
0 Kudos

Thanks for the help.

Former Member
0 Kudos

I will try all your solution and be back if there are more issues.

Thanks everyone for your support.

rmazzali
Active Contributor
0 Kudos

pls. reward points to those who helped (at least tried !) you.

thx

Roberto

Former Member
0 Kudos

Hi

Nice really to see people being thanked for the help. But giving them points for the ideas would make it better. I stand by Roberto.

Dear Per, by mistake if you have forgotten to award points, please consider.

regards

Sadhu Kishore

Former Member
0 Kudos

Hi

the previous post could well be done.

otherwise what i could think of is the production server back up which normally every business takes periodically. your basis team would know much about it.

if you have a system back up copy still existing in archives, you may actually make use of it. correct me if i am wrong.

Thanks & Regards

Sai