A long time, I come across the following situation in many projects:
- Copyof transactions: FBL1N, FBL3NandFBL5N;
- CreateunnecessaryZ reports in FI;
- Creating incorrect append (BSEG);
Although there is great material in SDN, enough for a good development, I realize thatthere is alwaysthe same dilemma. Many times I myself was the spreader of it was not possible to include a new field in FB02, for example. SoI decided tocentralizeall thissubject in ablog, and I hopetohelpeveryone!
To make it easierI willseparate thesubjecttopics:
1 - Create new fields in transactions FBLXN
There are two ways:
- FIBF and EXIT
Create new product:
You need copy the FM SAMPLE_INTERFACE_00001650:
Create new event 1650 for FM (Copy):
Eachrow processedin reports (FBL1N, FBL3N and FBL5N) will pass throughFM Z.
The function module has the I_POSTAB parameter that will receive the amounts already filled by the standard.
Simply fill out thenew field in the parameter E_POSTAB.
Observation: check with SY-TCODE which transaction it is being processed.
OR
- BADI:
Implements the standard definition FI_ITEMS_CH_DATA.
In CHANGE_ITEMS method simply fill the new field (parameter CT_ITEMS):
The big difference is that the BTE processing is done line to line and BADI the standard "delivery" all report list.
The two formsis necessary create the new fields in the structures RFPOS and RFPOSX.
You need to runRFPOSXEXTENDviaSE38program (all environments).
I advise you to include the execution of the program RFPOSXEXTEND in taskof yourrequest.
ID = R3TR and TYPE = XPRA.
2 - Changedynamic selectionFBLXN
Yes, it is possible! Don`t worry!
First step,you must identify thelogical databaseused by thestandardin the transaction.
Transaction | Program | Logical DataBase |
---|---|---|
FBL1N | RFITEMAP | KDF |
FBL3N | RFITEMGL | SDF |
FBL5N | RFITEMAR | DDF |
Expand the logical database in SE36:
Choose option: Copy (F7)
There is only one lock of this procedure is allowed only include some fields tables for each transaction.
Basically the tables are displayed in the table list in transaction SE36.
Obs.: Check SAPNote 310886.
For example FBL1N:
In this case, the new field it was included in BSIK. Just click on thechosentable.
Complementingthe issue, you can also includestandardfields thatare not deliveredbydefault.
It is possible create new box, for example, 04 Test.
This way you will get a new box of courses in the dynamic selection in the transaction.
Choose the new field andwhich foldershould be included.
3 - Change screen using coding block
Thisis the most criticalof allitem, especially because I myselfwasthe propagatorofthis idea was not possible.
First step. Create new fields in Structure CI_COBL.
Attention: BSEG activationamong otherimportant tables.
Transaction OXK3:
The same step for Add Field BI, but the Structure is CI_COBL_BI.
The step more important, add new append structure in BSEG.
The field namesmust alwaysstartwith twoZ.
The next steps arecustomizing. 4 basic steps.
1 - Identify which release keys should display the fields in the transaction. Setting should be made in OB41, enabling the visualization of fields.
Example: ZZBSEG (Workflow).
2 - Identify the status-field groups that need to be modified in OBC4 (OB14), determining in ledger account level visualization of the field.
3 - Identify the types of release, account type and operating class, in the OB32 transaction to determine which types of accounts fields must be displayed.
4 - Make the setting in the table TCOBX via SM30 to determine the modification group for the field you can modify the field information.
RESTRICTION:
- In the coding block of the system you can create your own fields.
- The new coding fields can then be used in FI General Ledger accounts, MM Inventory Management and MM Purchasing, and are also updated in the line items created in the Controlling applications.
- The new coding fields cannot be used for account type D or K.
- SAPNote 1607020.
4 - Change functions in transactions FBLXN
Under construction...