cancel
Showing results for 
Search instead for 
Did you mean: 

program and logic of selecting Generation variant and language

george_ainiveettil
Active Participant
0 Kudos

Hello all,

In general we generate MSDS in country format in that country's official language in a Sales order call. For example for Germany MSDS_DE in german it will generate the MSDS.

Now I have a requirement of sending one MSDS (MSDS_XOO) in EN language with sales orders when the customer is from a specific business group.This means irrespective of country it will always send MSDS_XOO in EN if the customer is from this business group.

Now the logic to find the customer is completed and added in the below userexits(Mentioned down).

But i am not sure how to trigger this MSDS_XOO in EN language when the customer is from a particular business group.

There are 2 user exits i found C1CA004 (For language selection) and C1CA005 (for Generation variant selection).

We have made changes in these user exits and checked if the MSDS_XOO in EN is generating if customer is from this particular business group.But its not triggering these user exits unfortunately.

I am familiar with MSDS generation with Sales order calls ,but would be helpful if get the following clarifications.

b) Anyone could help me if these user exits C1CA004 ,C1CA005 trigger after SDB generation normally?

c)Do we have to change any other programs for this scenario to get the MSDS_XOO

Your help will be appreciated as we are stuck with this issue now.

Thanks&regards

George

Accepted Solutions (1)

Accepted Solutions (1)

christoph_bergemann
Active Contributor
0 Kudos

Hello George

in MSDS distribution process there are a number of condition tables which can be used in my opinion if I understood your question correct. I just checked the docu,

http://help.sap.com/saphelp_470/helpdata/en/a7/2878600a6c11d28a220000e829fbbd/content.htm

Here SAP is giving these explanations:

The SAP System selects the generation variant using the condition schema in the IMG section Condition Schemas for RGV Selection.

The first of the condition tables contains the most accurate assignments. Here, for example, you can assign a generation variant directly to a ship-to party. If the SAP System cannot find a generation variant from this table it checks the second table and so on. The most general table is the fourth and final table. Here the selection is defined very generally so that the SAP System can always find a generation variant. In this fourth table, you can therefore specify a generation variant directly for a particular report category.

Normally the country of the business partner "selects" the generation variant and the "communication languages" of the business partner the language of the MSDS. In most cases this is really sufficient.

E.g. if customer is placed in GB a MSDS in EN would be a good option (form legal point of view nothing more is required).

Now e.g. if the customer is placed in Belgium there are three choices: is the business partner using FR or NL or DE as the communication language. In general it is a good idea to use as the language of the MSDS the communcation language. In doing so regardinjg the country BE there could be cases there you need three released MSDS (per language one) to fulfill legislation (dpending how many customer recieves the maeirlas linked to the specification).

Therefore my assumption would be that it makes sense to check these condition tables (there are four). But If I understood your demand correct there would be a "heavy" customizing to be done which is "not stable" (new business partners can be generated, new busines groups can be added may be deleted etc.)

I did not "catch" perfect your process but normally it is the other way around:

You define the "general" generation variant + language combination which should be used in MSDS distribution (something like generally you use MDS/XX but in special cases MSDS/YY) . Then you generate as the user the MSDS (released). Then there is a sales order. This sales order will be processed (if MSDS is required) using the condition tables etc. and finding a raw report and generating a final report. If no raw report is found a report request is generated which is normally processed by some user to generate the MSDS.

I believe the main use of both user exists is to do something "special" in the process. Normally the Business partner is analyzed to get an idea which language is used. IN most cases the use of the condition tables is the best choice. Here I believe the user exit can be helpful too. The same is true regarding the other one (selection of gen variant)

As an userexit is a "customer specific" implementation you can do whatsover in the exit. Now the main issue in my opinion: you have a busiiness partner; now you need to detect to which business groups that business partner belongs and then you select genvariant + language etc. (in most cases something like that is a "mapping" and therefore you could create "similar" tables like the standard SAP condition tables to do the job.

Generally I believe the "language" one will pass on to the process a "special" language and the next one a "special genvariant". So you should not try to "combine" both topics in the same userexit.

But there might be a "pitfall". You must make sure that as well as the "normal distribution" as well as the "subsequent distribution" uses the same logic. Please check that.

There is a general OSS available in SAP marketplace in which you will get an overview of the MSDS distribution process including the Userexits. May be this helps too

With best regards

C.B.

PS: Please check exit C1C10001 too.

Edited by: Christoph Bergemann on Jul 15, 2010 10:21 PM

Edited by: Christoph Bergemann on Jul 15, 2010 10:47 PM

Edited by: Christoph Bergemann on Jul 15, 2010 10:49 PM

george_ainiveettil
Active Participant
0 Kudos

Hello Christoph,

Thanks for your detailed reply . Yes,i have checked the condition schemas for RGV selection and langauge in SPRO and we concluded that the user exits i mentioned in my post could be used to overwrite the RGV selection and Langauge ( TCGRL table).

Now we are trying to debugg the user exits so that we could see when the user exits will be triggered in "SDB" out put generation.I will post the same once we find out a solution.

Mean while ,I will check the SAP notes you mentioned.

Regards

George

christoph_bergemann
Active Contributor
0 Kudos

Hello

take a look at OSS note: 1096697.

With best regards

C.B.

george_ainiveettil
Active Participant
0 Kudos

Hi Christoph,

Thanks for the mail. We solved the issue by modifying the code in User exits and its triggering as per the requirement.

Appreciate your help and inputs.

Regards

George

Answers (0)