!--a11y-->
Implementing New Subobjects 
You have decided to implement a new subobject using the criteria mentioned in Selection and Implementation of Customer Enhancement Types .
1 |
If necessary, familiarize yourself with the contents of the BDT Developer’s Manual . Pay particular attention to the following points: ● Function overview ● Basic settings ● Applications ● Dialog ● Program logic ● Roadmap for implementation ● New table fields and new tables ● New table ● New object part ● Enhancing screen layout and sequence |
2 |
Create a function group for processing the enhancement fields and define the screen fields in the global memory. |
3 |
In area menu CACSBDT define a new application for the function group. |
4 |
Create the new table in the DDIC. A prerequisite here is that all other necessary data dictionary objects have already been created (data elements in the customer name range, value tables, and so on). |
5 |
Make area menu CACSBDT aware of the new table under Tables. |
6 |
Write the coding for the PAI and PBO routines necessary for each view and define the screens. Entries in the screen fields are checked in the PAI routines, values are converted to the internal format, depending on their type, and transferred to the internal tables. PBO routines transfer any converted values from the internal table to the screen fields.
● You must always work with the current version. ● If you want to carry out checks on standard fields (in addition to the standard checks or in combination with enhancement fields), you can do this using functions that must first be defined in the BDT under Further checks. The PAI routines for standard views cannot be replaced with customer routines.
Sample coding: FUNCTION CD03_CSC_CD0301_PAI |
7 |
Using the area menu CACSBDT, create the BDT entries required for screen layout (field groups, views, sections, screens) for the new fields. |
8 |
In the area menu CACSBDT, make the necessary assignments using AssgnScrnField ® DBField. |
9 |
Create the necessary function modules at the following events for processing the enhancement fields for this enhancement type. |
10 |
In the area menu CACSBDT, define the function modules for the program logic using the path Events ® Assign Event ® Function Module.
You can find a general description of events in the BDT Developer’s Manual. Info on Commission Contact Events for Customer Attributes Sample coding for events: ○ ISTA: Function CD01_CSC_EVENT_ISSTA ○ ISDAT: Function CD03_CSC_EVENT_ISDAT ○ XCHNG: Function CD03_CSC_EVENT_CHNG ○ DTAKE: Function CD03_CSC_EVENT_DTAKE ○ DSAVE: Function CD03_CSC_EVENT_DSAVE ○ DLVE1: Function CD03_CSC_EVENT_DLVE1 ○ DLVE2: Function CD03_CSC_EVENT_DLVE2 ○ DINP2: Function CD03_CSC_EVENT_DINP2 ○ FCODE: Function CD03_CSC_EVENT_FCODE. |
11 |
In the next steps, create a program logic for the version comparison. |
12 |
Write a function module for the new table that compares the content of two versions, and informs the calling program of the differences in table T_RESULT. See function module CACS_COMPVERS_REMARU |
13 |
Make the Customizing settings for the version comparison in area menu CACSBDT. |
14 |
You must create a form routine to determine the corresponding current values for item scrolling. You can use form routine GET_VAL_DYN in function group CACS_BDT_SAMPLE as a template. This calls function CACS_CSC_GETACTVERS, which determines the version to be displayed. The current screen values are determined from the internal table, which contains the current data for the commission contract (in conjunction with the version currently valid), and then they are transferred to the BDT work structure with the screen output fields (fields of the same name - the rest must be transferred explicitly, for example in the ISDAT module). |
You have carried out all the necessary activities, and you can now begin testing the commission contract and its enhancements.
