SAP ABAP IMG Activity SIMG_OIH_ETAX_0005 (Map Excise Tax Rates to Rates in Cust.-Defined Cond. Table)
Hierarchy
IS-OIL (Software Component) IS-OIL
   IS-OIL-DS-TDP (Application Component) Tariffs, Duties and Permits
     OIH_ETAX (Package) Excise Tax Enhancements
IMG Activity
ID SIMG_OIH_ETAX_0005 Map Excise Tax Rates to Rates in Cust.-Defined Cond. Table  
Transaction Code S_SO7_65001336   IMG activity: SIMG_OIH_ETAX_0005 
Created on 20021028    
Customizing Attributes SIMG_OIH_ETAX_0005   Map Excise Tax Rates to Rates in Customer-Defined Condition Table 
Customizing Activity    
Document
Document Class SIMG   Hypertext: Object Class - Class to which a document belongs.
Document Name SIMG_OIH_ETAX_0005    

You define how the external excise tax rates are mapped to condition rates. This is a customer-specific approach, which does not comply with the standard SAP approach (using condition table A419 and conversion function module OIH01_CONVERT_TO_COND).

Excise tax and excise duty are used synonymously in this text.

There is additional design and implementation effort to create the needed repository objects. SAP ensures only that the implemented wrapper function module is called for the purposes of mapping. The responsibility for the technical support for the new function modules remains with the SAP customer, just as for all customer developed program code.

Below are details of the steps that you have to perform.

You need the following information:

  • If you want to create one or more new condition tables (to keep the example concise, in the following text only the case of one new condition table is described)
  • Number of the new condition table you want to use as the target for the excise tax rates
  • The combination of key fields for the new condition table
  • How the key fields of the table OIH01 are mapped to the key fields of the new condition table

Example

Refer to the condition table A419 and the function modules delivered by SAP and those mentioned in the activity steps.

Requirements

In your company excise tax rates depend on other criteria or on another order of criteria than the ones that represent the key fields of the condition table A419.

At least one of the following mapping conversions between key fields in OIH01 and the condition table A419 is not correct for the handling of excise tax rates in your company:

  • Company code -> Country
  • Plant -> Region
  • Excise duty tax group -> Product tax group
  • Handling type -> Handling type
  • Excise duty tax rate: element 1 -> Condition type 1
  • Excise duty tax rate: element 2 -> Condition type 2
  • Excise duty tax rate: element 3 -> Condition type 3
  • Excise duty tax rate: element 4 -> Condition type 4
  • Excise duty tax rate: element 5 -> Condition type 5
  • Excise duty tax rate: element 6 -> Condition type 6

Standard settings

This activity describes a customer-specific configuration, therefore no standard setting exists.

Recommendation

Perform this activity only if you want to use excise tax handling in a scenario integrating SAP CRM (4.0 or higher) with the SAP Oil & Gas.

This activity causes additional design, implementation, and maintenance effort. If possible, avoid this customer-specific configuration.

If you want to create a new wrapper function module (such as OIH01_CONVERT_TO_COND), it must comply with the following interface requirements:

  • IMPORT parameter:
    • One parameter, such as a line in table OIH_ETAX_CONDMAP
  • EXPORT parameter:
    • One parameter of type I to indicate the number of batch input sessions, which have been created
    • One parameter of type I to indicate the number of condition records, which have been processed
  • TABLES parameter:
    • One internal table like table OIH01 containing the list of OIH01 records, from which the condition rates should be created (used to import data)
    • One internal table like table OIH01 containing the list of OIH01 records, for which the condition rates creation has led to errors (used to export data)
  • EXCEPTIONS:
    • The exception ERROR_PROCESSING must be raised in the case an unexpected error occurs during function module processing.

Activities

  1. Create the required conditon table as described in Customizing for Sales and Distribution by choosing Basic Functions -> Pricing -> Pricing Control -> Define Condition Tables
  2. Create new function modules <FM1i> to perform the field to field mapping or conversion between the key fields of table OIH01 and the key fields of your new condition table defined in the previous step. It is recommended that you create one function module for each field to field mapping or conversion operation. As a blueprint, look at the function modules in function group OIH_ETAX_CONVERSION, which are used to convert the key fields of table OIH01 to the key fields of condition table A419.
  3. Optionally, if you have to implement a more complex mapping logic on top of the field to field level, create additional function modules <FM2i>.
  4. Create a function module <FM3> to convert the records of table OIH01 into records, which have the format of the newly defined condition table. This function module should call function modules from the two previous steps. As a blueprint, look at the function module OIH_CONVERT_OIH01_TO_ETAX_COND, which is used to convert records of table OIH01 format to records with the format of condition table A419.
  5. Create a function module <FM4>, which creates new condition records using batch input technology. To do this, perform the following steps in the system client, where repository objects can be created and developed:
    1. To simulate the creation of a data record in the newly created condition table, you must ensure that this client contains enough data (for example sales organization, customer master data, and so on) to which the condition table key fields can refer.
    2. Call transaction SHDB (Batch Input Transaction Recorder).
    3. Choose Create (New recording).
    4. Specify a name for the recording, enter VK11 in the transaction code field and choose Enter.
    5. When recording the batch input session, enter typical data to simulate the creation of a data record in the newly created condition table. End the recording by choosing Save in the condition record maintenance. Ensure that only the necessary steps are recorded, because all recorded steps are later processed when condition records are saved in the background when you save tax rates in table OIH01.
    6. To save the recording, on the Transaction recorder screen, choose Save.
    7. Choose Back.
    8. From the overview list, select the recording you just created and choose Create function module.
    9. Enter a function module name, the corresponding function group, both in the SAP customer name range, and a short text for the description.
    10. Call the function builder (transaction SE37) or from the SAP Menu by choosing Tools -> ABAP Workbench -> Development -> Function Builder and enter the name of the function module that you have just created.
    11. For all import parameters of type BDCDATA-FVAL , delete the default value or adapt them to the defaults you want to use.
    12. As a blueprint, look at the function module OIH_OIH01_TO_A419, which creates records in condition table A419 using batch input technique. This function module has been created as described in the previous steps.
  6. Create a new function module <FM5>, which converts the condition records from an internal to an external format, that must be used for batch input technique. For example condition rates not corresponding to currencies with two decimals such as the Japanese Yen have to be converted. Implemement the call of function module <FM4> as defined in the previous step. As a blueprint, look at the function module OIH_CONVERT_OIH01_TO_ETAX_COND.
  7. Create a new function module <FM6>, which complies with the interface requirements mentioned in the recommendation paragraph. This function module should act only as a wrapper around all other function modules created in the previous steps. It must implement the call to the function modules <FM3> and <FM5>. Take into account that its name is used for configuration in Customizing and only the name is visible in this context. As a blueprint, look at the function module OIH01_CONVERT_TO_COND, which is used to replicate the tax rates from table OIH01 to condition table A419.
  8. Test your new functionality carefully.
  9. In Customizing, configure the mapping functions using the number of the newly created condition table and the name of the wrapper function module. To do this, choose Industry Solution Oil & Gas (Downstream) -> Integration with Customer Relationship Management -> Excise Tax -> Maintain Rule for Mapping External Excise Tax Rates to Condition Rates. The report ROIH01_REPLICATE, automatically takes this setting into account, when it is started to initially replicate the tax rates from table OIH01 to the condition table.
  10. If you want to update more than one condition table in the background, when you save tax rates in table OIH01, you must repeat all previous steps for any additional condition table.

Further notes

Business Attributes
ASAP Roadmap ID 254   Transfer Data 
Mandatory / Optional 2   Optional activity 
Critical / Non-Critical 2   Non-critical 
Country-Dependency A   Valid for all countries 
Assigned Application Components
Documentation Object Class Documentation Object Name Current line number Application Component Application Component Name
SIMG SIMG_OIH_ETAX_0005 0 I270009311 Tariffs, Duties and Permits 
Maintenance Objects
Maintenance object type    
History
Last changed by/on SAP  20021202 
SAP Release Created in 46C