Adding new tab @ Delivery Header for Tcode VL02N (/ VL01 / VL03)
Step:1 Creating Sub-screen
Overview – For adding new tab, First we nee do create a screen with required fields.
Procedure
->Create a Function Group (say F)
->Declare Global data
->Create a Sub-screen (say S) for function group .
->Select Input/Output fields in Sub-screen (Fields to be displayed in new Tab)
-> These Input/Output fields should refer to Global data in function group
-> Activate FG & S.
*******************************************************
The Badi LE_SHP_TAB_CUST_HEAD handles the enhancements for Delivery Transaction
Implements following methods
Method Name | Description |
---|---|
ACTIVATE_TAB_PAGE | Activate the Additional Tab Pages |
TRANSFER_DATA_TO_SUBSCREEN | Data Transfer: Delivery Data to Subscreen |
TRANSFER_DATA_FROM_SUBSCREEN | Data Transfer: Data from Subscreen Back to Delivery |
PASS_FCODE_TO_SUBSCREEN | Transfer Current Function Code to Subscreen |
Step:2 Activating New tab
Overview: You have to include sub-screen in the delivery transaction by implementing ACTIVATE_TAB_PAGE method. So that the system displays the sub-screen as new tab in the delivery transaction.
Procedure
->Go to Tcode SE18
-> Select Radio button Badi and enter the Badi name LE_SHP_TAB_CUST_HEAD .
-> Display
->In the Interface tab you can see all 4 methods and descriptions
-> Now we need to create new class / interface for our object
-> Select Implementaion -> Create
-> Enter the Implementation Name (it is nothing but the Function Group name)
->OK
-> One implementation object will be created with the FG name
-> Enter the short description
-> And Save and Activate
->Double click on ACTIVATE_TAB_PAGE method
->Edit the method implementation
-> Mandatory fields to pass to the method are
EF_CAPTION = Caption for the Tab.
EF_PROGRAM = Program name (SAPLXXX here xxx is the FG name)
EF_DYNPRO = Sub-screen number
-> Save and activate the method.
-> After you activating the implementation and Badi, the system displays the new tab in the delivery transaction
-> Check the Tcode VL02N whether the new tab is added or not………!
Step:3 Supplying Data from Delivery Processing
Overview: Supplying data from delivery processing to the Sub-screen
Procedure:
->The global data in the FG must be filled with data from delivery before the screen is called
->For this you have to create a Function module in the FG
->The import parameters of this Function module should get values from delivery data
->In the source code assign these parameters to the global data in the FG.
->so that in the subscreen fields values will be available do display before it is called.
->And we call this function module in the TRANSFER_DATA_TO_SUBSCREEN method implementation.
->This method ensures that the delivery data is available before the BPO of the sub-screen.
>In the Badi implementation Double click on TRANSFER_DATA_TO_SUBSCREEN
->Edit the method implementation
-> Call the Function module
-> Export the delivery data to the function module
-> The current delivery data is available in itab IS_LIKP.
-> Save and activate the method.
Step:4 Transfer Data to Delivery Processing from Sub-screen
Overview: This step is required if you want change delivery data on subscreen and want to return the changes to delivery processing
and as well as corresponding DB table.
Procedure:
->The delivery data should be saved or updated in the global data of the FG.
->To do this, create another function module in FG.
->The export parameters of this Function module must be filled with FG’s global data.
->And we call this functin module in the TRANSFER_DATA_FROM_SUBSCREEN method implementation
>In the Badi implementation Double click on TRANSFER_DATA_FROM_SUBSCREEN
->Edit the method implementation
-> Call the Function module
-> Just import the data.to delivery fields
-> In order to update / save data in delivery use itab CS_LIKP.
-> Save and activate the method.
NOW YOU CAN CHECK THE DELIVERY TRANSACTION -EDIT THE NEW TAB FIELD’S DATA AND SAVE AND CHECK IN LIKP TABLE..
Good work
How does one connect the new TAB to the Menu Bar Goto -> Header -> new tab ?
The GUI Status is WO and an entry may be made in the menu, but what Function Code to connect to new TAB ??
Thanks in Advance.
Jim