TRANSFER_DATA_FROM_SUBSCREEN
Hi,
I added a new tab using BADI LE_SHP_TAB_CUST_HEAD,
from where I have a field where the user selects a value.
I store its value on a local variable within my TRANSFER_DATA_FROM_SUBSCREEN method, using GET PARAMETER ID... FIELD... .
The question is: how do I update the ITEMs under the corresponding HEADER line, with the value chosen at the header level (I'm talking about selecting a value of type EIPO-HERKL) ? I was working on implementing interface LE_SHP_TAB_CUST_ITEM, using the same GET PARAMETER ID logic inside TRANSFER_DATA_FROM_SUBSCREEN method, but the structures I have as CHANGING are the same, as far as I can see (for instance, I have no field that can help me in CS_LIKP).
(The field I want to change is -> Go to transaction VL02N, click on one item line, choose the FOREIGN TRADE tab, than choose the 2nd tab left to right - I want to update the Ctry of Origin field with the value I choose from the tab I added at the Header level).
Any clues ?
Thanks,
Avraham
hi narayana,
I think i have found the rght exit : EXIT_SAPLMEREQ_003
which has an import param :IM_REQ_ITEM and EX_CHANGED as export param
which is of type IF_PURCHASE_REQUISITION_ITEM(this is an interface) .i am very confused as to how do i fetch data in this exit +
2nd issue,the PR no is only generated at save of PR document.how wud i capture the PR no generated??
waiting 4 expert comment.
sachin
Similar Messages
-
Add custom fields in header of FI documents using FI_HEADER_SUB_1300IM
Hi
We are trying to add a couple of custom fields in header area of FB01 by making a copy of badi FI_HEADER_SUB_1300IM. With this method we are facing a couple of problems
- The custom fields added in bkpf structure, only appears in FB01 just in the case we have go before to FB03 or FB02.
- We don´t reach to save data of these fields in table BKPF.
can anybody help us with these problems?
thanks in advance for your help
I leave here the code we have used in the copy of badi FI_HEADER_SUB_1300IM
MODULE d1300_pbo OUTPUT.
IF exit IS INITIAL.
CALL METHOD cl_exithandler=>get_instance_for_subscreens
CHANGING
instance = exit
EXCEPTIONS
* NO_REFERENCE = 1
* NO_INTERFACE_REFERENCE = 2
* NO_EXIT_INTERFACE = 3
* DATA_INCONS_IN_EXIT_MANAGEM = 4
* CLASS_NOT_IMPLEMENT_INTERFACE = 5
OTHERS = 6.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDIF.
CALL METHOD exit->get_data_from_screen_pbo
EXPORTING
FLT_VAL = 'ES'
IMPORTING
ex_bkpf = g_bkpf
ex_x_no_input = g_no_input.
loop at screen.
if g_no_input = 'X'.
screen-input = 0.
modify screen.
endif.
endloop.
ENDMODULE.
**************************+
FORM put_value .
* import header data from main screen
call method exit->get_data_from_screen_pai
EXPORTING
FLT_VAL = 'ES'
importing
ex_bkpf = g_bkpf.
* set reference fields
g_bkpf-ZZDPTOAPROBADOR = bkpf-ZZDPTOAPROBADOR.
g_bkpf-ZZDELAPROBADOR = bkpf-ZZDELAPROBADOR.
* put data to main screen
call method exit->put_data_to_screen_pai
exporting
im_bkpf = g_bkpf
flt_val = 'ES'.
ENDFORM.
Added code tags
Edited by: Rob Burbank on May 10, 2011 12:17 PMSriVarma,
Cool! I didn't know this BADI!
Playing around with existing implementations I can see that, BADI_SD_TAB_CUST_H, can definitely enhance the Sales order header with additional tab strip screens. Similarly BADI_SD_TAB_CUST_I can be used to enhance Sales order item screens.
Here is what I understand from the coding of an existing implementation
ACTIVATE_TAB_PAGE - takes a module pool program name and a subscreen that you created and adds it as a additional tab page to sales order header screen. You need to pass back f_program and f_dynpro with your program and screen number that you painted
TRANSFER_DATA_TO_SUBSCREEN - can be used to read and pass data to the fields on the subscreen you created
TRANSFER_DATA_FROM_SUBSCREEN - can be used to pass back whatever changes done by user to the respective Z variables in VBAK
PASS_FCODE_TO_SUBSCREEN - Pass the fcode the user selected to your subscreen.
I would suggest that you create a function group and create screens, functions etc within that and use those in these methods. Refer existing implementations. The global data of the function group can then be used to communicate between all the above methods -
Update and transfer data via BADI LE_SHP_TAB_CUST_HEAD
Greetings All,
I've a requirement to create a custom tab in the VL01N/VL02N/VL03N header record displaying custom fields.
I've successfully implemented BADI LE_SHP_TAB_CUST_HEAD, created a subscreen, appended my custom fields to the LIKP table via append structure, and can now view my fields in the transactions listed above.
I'm having trouble updating the fields in the subscreen and save the values back to the LIKP table. First question is a) do I do this via the PBO PAI modules in my subscreen, or should I be doing this in the BADI?
Second question is, if I shuodl be doing this in the BADI, how do I do it. A simple example is that I have created a field called ZZ_CUST_TIME in LIKP, added it to my sub-screen using data dictionary linking.
How do I pass a value entered into this field via VL02N back to the transaction for update?
Any suggestions would be greatfully appreciated.
Regards,
SteveDear Abhishek, can you explain the step..in this step screen is comming but custom fields value is not coming and also likp table is not updated
Correct AnswerRe: Update and transfer data via BADI LE_SHP_TAB_CUST_HEAD
Abhisek Biswas Jan 21, 2009 7:28 AM (in response to Stephen Keam)
Hi Stephen,
You can do it by using PBO and PAI modules of the screen that you created. But you have to transfer the data from subscreen to the BADI method TRANSFER_DATA_FROM_SUBSCREEN and aslo from method TRANSFER_DATA_TO_SUBSCREEN to the subscreen. This will update the screen field data to LIKP.
You can aceive this by two ways.
1) You can use EXPORT in method TRANSFER_DATA_TO_SUBSCREEN and then IMPORT the value in the screen PBO. And You can EXPORT data from screen PAI and IMPORT data in method TRANSFER_DATA_FROM_SUBSCREEN.
2) Anither way to do it is by using Function modules and Function Group instead of EXPORT/IMPORT.
Create a Function group. In the global data define a structure/Work Area of type LIKP.
DATA w_likp TYPE likp.
Then create two Function modules, one to export data and another to import data.
Let us assume that the export FM takes in IS_LIKP as input and the import FM outputs the value of LIKP into ES_LIKP.
Then pass the value is_likp to the export FM in the BADI method TRANSFER_DATA_TO_SUBSCREEN and in the screen PAI pass the LIKP data to the export FM.
In the export Function module write the following code:
MOVE is_likp TO w_likp
Then in the Import FM write the following code:
MOVE w_likp TO es_likp.
The import FM is called from method TRANSFER_DATA_FROM_SUBSCREEN and from screen PBO.
This will solve your problem.
Regards,
Abhisek.
Alert Moderator
Like (0)
Reply -
VL01N / VL02N Delivery Header Screen Exit BAdI
Hi,
I am using LE_SHP_TAB_CUST_HEAD BAdI to add a custom tab in VL01N / VL02N header. I added a field with reference to VBPA-KNREF on my custom subscreen.
I need to update XVBPA and YVBPA tables (Partners data) in my subscreen based on the VBPA-KNREF custom field input and send back to the delivery processing. This BAdI allows to change only LIKP data when passing data from subscreen back to the delivery transaction/program.
Any experience with this BAdI or any ideas?
Thanks.You need to use the methods
TRANSFER_DATA_TO_SUBSCREEN to pass the data from the standard fields to Subscreen fields
TRANSFER_DATA_FROM_SUBSCREEN to pass the data from the subscreen fields to standard fields
1) Create a Function Group e.g. ZVL02N_CUST
2) Create your screen in this function Group
3) Pass this program & screen information in the ACTIVATE_TAB_PAGE method
ef_caption = 'ADD. TAB'.
ef_program = 'ZVL02N_CUST'.
ef_dynpro = '9100'.
4) Create a function module ZVL02N_SET_DATA_SUBSCREEN in the same Function Group. Put all the required fields as the importing parameters in this function module. Create the same fields in the TOP include of the function group. Save the data from the importing parameter to the TOP Include fields. You can use these fields in your screen PBO to set your subscreen fields.
5) Same way create a FM ZVL02N_GET_DATA_SUBSCREEN in the same Function Group. Put all the required fields as the exporting parameters in this Function Module. Set the this exporting parameters values from the TOP include fields.
Regards,
Naimesh Patel -
Get OBJEC hide screen and transfer data
Hi experts!
How can i hide this kind of selection screen when i call
"get objec"
and how can i transfer my data manually to the selection range of get objec.
eg. i want to use the "get objec" function to collect the data for three objectid.
i could loop and call get objec 3 times and set the PCHOBJID-LOW value before, but there must be a way to do this with a range.
can someone help me
greets, thomasDear Abhishek, can you explain the step..in this step screen is comming but custom fields value is not coming and also likp table is not updated
Correct AnswerRe: Update and transfer data via BADI LE_SHP_TAB_CUST_HEAD
Abhisek Biswas Jan 21, 2009 7:28 AM (in response to Stephen Keam)
Hi Stephen,
You can do it by using PBO and PAI modules of the screen that you created. But you have to transfer the data from subscreen to the BADI method TRANSFER_DATA_FROM_SUBSCREEN and aslo from method TRANSFER_DATA_TO_SUBSCREEN to the subscreen. This will update the screen field data to LIKP.
You can aceive this by two ways.
1) You can use EXPORT in method TRANSFER_DATA_TO_SUBSCREEN and then IMPORT the value in the screen PBO. And You can EXPORT data from screen PAI and IMPORT data in method TRANSFER_DATA_FROM_SUBSCREEN.
2) Anither way to do it is by using Function modules and Function Group instead of EXPORT/IMPORT.
Create a Function group. In the global data define a structure/Work Area of type LIKP.
DATA w_likp TYPE likp.
Then create two Function modules, one to export data and another to import data.
Let us assume that the export FM takes in IS_LIKP as input and the import FM outputs the value of LIKP into ES_LIKP.
Then pass the value is_likp to the export FM in the BADI method TRANSFER_DATA_TO_SUBSCREEN and in the screen PAI pass the LIKP data to the export FM.
In the export Function module write the following code:
MOVE is_likp TO w_likp
Then in the Import FM write the following code:
MOVE w_likp TO es_likp.
The import FM is called from method TRANSFER_DATA_FROM_SUBSCREEN and from screen PBO.
This will solve your problem.
Regards,
Abhisek.
Alert Moderator
Like (0)
Reply -
Regarding Screen exit in vl01n
Hi All,
I would like to add one more tab in the t.code Vl01n,Can i use this "DELIVERY_ADDR_SAP " BADI,Some body suggest me how to proceed as i am doing this for the first time.Kindly share your thoughtsHi
If you are enhancing the screen in HEADER level
Use BADI LE_SHP_TAB_CUST_HEAD
If you are enhancing the screen in ITEM level
Use BADI LE_SHP_TAB_CUST_ITEM
Methods:
ACTIVATE_TAB_PAGE " Assign the Program name & screen number
TRANSFER_DATA_TO_SUBSCREEN " transfer data from table to new tab
TRANSFER_DATA_FROM_SUBSCREEN " transfer data from new tab to table -
Updating Ekpo by adding item level Screen Exit
Hi,
I added 2 fields at the item level of the ME21N Screen using the following screen exit.
( SAPMM06E 0111 CUSTSCR1 SAPLXM06 0111 Subscreen: PO item. )
Now I just want to update EKPO table.,. How to proceed. any body know guide me.
Thanks & Regards.
Balajee.JHi Mou,
In this there are four methods
1)ACTIVATE_TAB_PAGE
2)TRANSFER_DATA_TO_SUBSCREEN
3)TRANSFER_DATA_FROM_SUBSCREEN
4)PASS_FCODE_TO_SUBSCREEN
In thw first method pass the tabname,screen no,position all.
fcaption = 'C Form Details'.
fprogram = 'Z_VLO1N_HEAD'.
fdynpro = '0200'. This is the screen created and kept all custom fields
Here you the concept set and get data and move and get the values.
TRANSFER_DATA_TO_SUBSCREEN
set PARAMETER ID 'Z' FIELD f_vbrk-ZCF.
TRANSFER_DATA_FROM_SUBSCREEN
get PARAMETER ID 'Z' FIELD fvbrk-ZCF.
Pass all these parameters it will resolve your issue.Check and post if need help.
Regards,
Madhu. -
Post Goods Receipt from Inbound Delivery
Hi,
I need to find a customer enhancement or a BADI that is modifyed a field when a Post Goods Receipt is created for an inbound delivery, in transaction VL32N.
I have tried to use the Business Add-In LE_SHP_GOODSMOVEMENT, but the field I modified after is overwritten. It is a field of the mseg structure.
Can anybody please advise on the available exits or BADIs?
ThanksHi,
Please clarify whether you want to modify th efield at item or header. Please check the Badi names Starting with LE_SHP* .These BADI' are for Delivery.find the Suitable BADI and Apply it. For custom tab at header BADI is LE_SHP_TAB_CUST_ITEM
LE_SHP_TAB_CUST_OVER
The BADI does not allow the update of data. There is a common trick used to perform the job ...
- in the BADI, export the data to memory (e.g. in TRANSFER_DATA_FROM_SUBSCREEN)
- in the old-fashion exit like USEREXIT_MOVE_FIELDS_TO_LIPS, import the data and map it.
I hope this will resolve your issue. Thanking you. -
Inspection Lot created before Post Goods Recept of Inbound Delivery
Does anyone have experience of an inspection lot being created before a Post Goods Receipt is performed for an Inbound Delivery. This is preventing me from receipting the stock as
1. When you try to post goods receipt, I receive a warning that the stock can only be moved in QM only
2. When I try to apply a UD in the inspection lot and post the stock, the stock cannot post as the Handling Units are linked to the Inbound delivery
Any help would be welcomeHi,
Please clarify whether you want to modify th efield at item or header. Please check the Badi names Starting with LE_SHP* .These BADI' are for Delivery.find the Suitable BADI and Apply it. For custom tab at header BADI is LE_SHP_TAB_CUST_ITEM
LE_SHP_TAB_CUST_OVER
The BADI does not allow the update of data. There is a common trick used to perform the job ...
- in the BADI, export the data to memory (e.g. in TRANSFER_DATA_FROM_SUBSCREEN)
- in the old-fashion exit like USEREXIT_MOVE_FIELDS_TO_LIPS, import the data and map it.
I hope this will resolve your issue. Thanking you.
Maybe you are looking for
-
How to change the color of text highlight
I'm trying to select and highlight certain text in the PDF. Here's my sample code. I want to change the color of the highlighted text. Something similar to what the Highlight Text tool does in acrobat. HiliteEntry hilite; hilite.offset = 10; //Highl
-
Need to check XI 3.0 has been installed properly or not on PC?
Hi, I have installed XI 3.0 on my PC with the help of BASIS people. I want to check whether the XI has been installed properly or not. Can anyone please let me know how to check this? Regards, Bala Raja
-
Show contents of the detail table in the CFL
Hi, I have a Choose From List (CFL) for my UDO. This UDO has 2 tables-- --one master <b>main</b> table. -- the other master <b>detail</b> table. I need to <b>show the contents</b> of the <b>detail</b> table in the <b>CFL</b>.. How can I d
-
Oracle apex select list display
hi all: i have 2 select list ,1. select list1 and 2.select list 2 ok .in select list1 have items like A,B,C,D,E,F LIKE THAT AND select list2 aslo have item's like X,Y in select list1 i am trying to select B ..in select list2 it should be display only
-
Photoshop CC : Lunching Error
Hello, I'm using windows XP SP3, After Installing Adobe Photoshop CC I tried to lunch it but i got a error massage says " The procedure entry point InitializeCriticalSectionEX could not be located in the dynami