cancel
Showing results for 
Search instead for 
Did you mean: 

Create and assign substitution

Former Member
0 Kudos

Hi,

Can anyone tell me how to define substitution via user-exists and how to assign the substitution to controlling area T001 via Financial Accounting (New) ->General Ledger Accounting (New) ->Tools ->Validation/Substitution -> Substitution of Profit Centers in Customer Orders -> Assign Substitution Rules.

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

what is that you are facing now?

you are not geting the logic?

Former Member
0 Kudos

Hi Venkatesh,

Now I understood the logic and am able to retrieve profit center prctr from zf_substitution table.

Now my question is why do we need to create a substitution and give the user exit name and is the zprogram related to this substitution?

Former Member
0 Kudos

Hi,

Did you able to create the substituion?

you have to write your logic in form.

FORM U999. (substituion exit in ZGGBS000)...

write your code here.

ENDFORM.

let me know if you still need any help.

Former Member
0 Kudos

Hi Venkatesh,

I have created the substitution and gave the user-exit name in the substitution.In GCX2 transaction I have given the zprogram name.Now when I double click on the user-exit name it is taking to zprogram zrggbs000 where I have to give my code.But now I am facing problem with substitution logic I have to put in form ...endform of user-exit.

The subtitution logic is given as

- DATAB / DATBI

 look up sy-date (system date). sy-date should be between DATAB and DATBI

- KOKRS

 is available in VBAK, so should be available in an internal table at the moment of substitution. If not, look-up via sales organization  company code  controlling area

- Z_SOL_CODE (solution code)

 the solution code will be available on each sales order line as a partner function: partner function u2018ZSu2019

 from solution code, look-up solution grouping in ZF_SOL_MAPPING

- Z_MACRO_SEG (macro segment)

 the macro segment needs to be looked-up from the sold-to part of the sales order  in the customer master  (menu) additional data  Attribute 1 (field BRSCH)

Based on the above logic, the system needs to look-up the correct profit center in ZF_SUBSTITUTION.

brad_bohn
Active Contributor
0 Kudos

You'll find this information in the help docs and documentation in the IMG - it just takes a bit of effort on your part...

Former Member
0 Kudos

Hi,

1. check if you system has already implemented substituion for other application, if not then you must first copy standard SAP include (RGGBS000) in a customer include (Zxxxxx), and update the include name in table T80D (SM30) and then declare you exit in that zXXXXXX include. if already implemented declare your exit (e.g U992) in that include program.

2. go to tcode GGB1 Financial Accounting

select Document header if you want update BKPF fields(Header) or

Line item for BSEG(line items) select create substitution enter all relevant values then create a step mentioning the prerequisites, field to be substituted and the exit name .

3. do the coding in the exit mentioned.

4. Call transaction OBBH (or via SPRO) and create a substitution for the company code involved

Hope this helps.

Former Member
0 Kudos

Hi Venkatesh,

Thanks for your reply.

substitution logic.

The substitution look all relevant information and look for an entry in the Z-tables:

- DATAB / DATBI

-> look up sy-date (system date). sy-date should be between DATAB and DATBI

- KOKRS

->is available in VBAK, so should be available in an internal table at the moment of substitution. If not, look-up via sales organization  company code  controlling area

- Z_SOL_CODE (solution code)

->the solution code will be available on each sales order line as a partner function: partner function u2018ZSu2019

->from solution code, look-up solution grouping in ZF_SOL_MAPPING

- Z_MACRO_SEG (macro segment)

-> the macro segment needs to be looked-up from the sold-to part of the sales order  in the customer master  (menu) additional data  Attribute 1 (field BRSCH)

Based on the above logic, the system needs to look-up the correct profit center in substitution table.

1.I will copy the include RGGBS000 into a Z include and put my exit in that include.How to update the include name in T80D table.

2. Through SPRO I will create a substitution and the step containing prerequisites and substitutions.

How can I include the above substitution logic in the substitution field and what needs to be filled in the prerequisites field.

Where can I do the coding for the exit mentioned in the zinclude program and how is this zinclude related to substistution.

Please reply

Former Member
0 Kudos

Hi,

Looking at your logic it seems that you have go for substituion "Cost of sales accounting, call up point 5".

but i am not clear with which field you want to substitute.

1. maintain the table T80D in SM30 or in spro Financial accounting->special purpose ledger->basic settings->User exits->Maintain client specific user exits

2. in the include program u find FORM get_exit_titles here you give your exit name as shown below

exits-name = 'U100'.

exits-param = c_exit_param_none.

exits-title = text-100. "Cost center from CSKS

APPEND exits.

then you define your form exit as shown below and do the coding as per your logic in that form

FORM u100.

do the coding here

ENDFORM.

3. prerequsites are like for what condition you want this to be triggered , example BUKRs = X, if you dont want any condition to be given then done mention any.

hope this helps.

Former Member
0 Kudos

This message was moderated.

Former Member
0 Kudos

This message was moderated.

Former Member
0 Kudos

Hi,

Using the transaction GGB1 transaction, directly you can create the Substitution rule.

Mention the pre requisites here, and mention the substition you required. It is also possible that you can assign one routine and code accordingly.