Input Help in Dialog Modules
HI,
I have to provide F4 help for many fields that are present in tabstrip control(with 5 tabs). I had set the option "Possible entries" in the layout. In the flow logic, I created a module for POV. How would I get the screen element name (i.e., the field) from which F4 was pressed? While debugging, I dont get the field name in SYST and SCREEN table. For each tab, I am thinking of creating of only one module in POV so that I can avoid hardcoding the field name.
You can use DEMO_DYNPRO_F4_HELP_MODULE report in IDES if required.
Try this out it worked for me,
Will post in in 3 halves.
1. First half
MODULE help_zterm INPUT. "In POV
PERFORM help_zterm.
ENDMODULE. " HELP_ZTERM INPUT
FORM help_zterm .
DATA: BEGIN OF svbap OCCURS 12,
tabix LIKE sy-tabix,
END OF svbap.
DATA: BEGIN OF xvbap OCCURS 125.
INCLUDE STRUCTURE vbapvb.
DATA: END OF xvbap.
DATA: da_display LIKE ddrefstruc-bool.
DATA: da_value LIKE vbkd-zterm.
DATA: da_dynpro_program LIKE sy-repid.
DATA: da_dynpro_number LIKE sy-dynnr.
DATA: BEGIN OF dynpfield_zterm OCCURS 1.
INCLUDE STRUCTURE dynpread.
DATA: END OF dynpfield_zterm.
da_dynpro_program = sy-repid.
da_dynpro_number = sy-dynnr.
CLEAR dynpfield_zterm.
REFRESH dynpfield_zterm.
MOVE 'ZDEALHD-ZTERM' TO dynpfield_zterm-fieldname. u201DZDEALHD-ZTERM u2013 screen field name
APPEND dynpfield_zterm.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = da_dynpro_program
dynumb = da_dynpro_number
TABLES
dynpfields = dynpfield_zterm
EXCEPTIONS
OTHERS = 11.
IF sy-subrc <> 0.
EXIT.
ELSE.
READ TABLE dynpfield_zterm WITH KEY fieldname =
dynpfield_zterm-fieldname.
ENDIF.
LOOP AT SCREEN.
CHECK screen-name = 'ZDEALHD-ZTERM' AND
screen-input = '0'.
DA_DISPLAY = CHARX.
ENDLOOP.
IF dynpfield_zterm-fieldinp EQ space.
DA_DISPLAY = CHARX.
ENDIF.
Call SD Sales BAdI
DATA: da_line LIKE sy-tabix,
da_core_inactive TYPE xfeld,
wa_svbap LIKE svbap,
wa_xvbap LIKE xvbap.
Determining Cursor
CLEAR wa_xvbap.
GET CURSOR LINE da_line.
IF da_line GE 1.
READ TABLE svbap INTO wa_svbap INDEX da_line.
IF sy-subrc = 0.
READ TABLE xvbap INTO wa_xvbap INDEX wa_svbap-tabix.
ENDIF.
ENDIF.
Will send the second one and third one in few seconds.
Edited by: Abhijit Borkar on Jan 7, 2010 9:11 AM
Similar Messages
-
Hello gurus
I struck with a problem while designing the search help . The problem is described as below
Three Screen field in my screen namely
Itab1-vkorg Itab1-kunnr Itab1-vbeln
My Screen flow logic :
PROCESS AFTER INPUT.
MODULE USER_COMMAND_0100.
PROCESS ON VALUE-REQUEST.
FIELD ITAB1-VBELN MODULE SALESINVOICE_HELP.
My main Program :SALESINVOICE_HELP
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = ITAB1-KUNNR
IMPORTING
OUTPUT = ITAB1-KUNNR.
SELECT VBRKVBELN VBRKFKDAT
INTO CORRESPONDING FIELDS OF TABLE INVOICE_SRCHLP
FROM VBRK INNER JOIN VBRP ON VBRKVBELN EQ VBRPVBELN
WHERE VBRK~FKART EQ 'ZF2' AND
VBRK~VKORG EQ ITAB1-VKORG AND
VBRK~KUNAG EQ ITAB1-KUNNR AND
VBRK~FKSTO NE 'X'.
SORT INVOICE_SRCHLP BY FKDAT VBELN.
DELETE ADJACENT DUPLICATES FROM INVOICE_SRCHLP.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
RETFIELD = 'VBELN'
VALUE_ORG = 'S'
MULTIPLE_CHOICE = ' '
DISPLAY = ' '
CALLBACK_PROGRAM = ' '
CALLBACK_FORM = ' '
MARK_TAB =
IMPORTING
USER_RESET =
TABLES
VALUE_TAB = INVOICE_SRCHLP
FIELD_TAB =
RETURN_TAB = ITAB_RETURN.
DYNPFLD_MAPPING =
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ITAB1-VBELN = ITAB_RETURN-FIELDVAL.
My problem is unable to retieve the screen fields contents. so kindly provide the solution.Hi U have to append the field names u want to read.
Put this code before calling FM.
REFRESH dynpro_values[]. CLEAR dynpro_values.
dynpro_values-fieldname = Give ur screen field name u want to read.
APPEND dynp_fields.
Like this u have to append all the screen fields for which u want to read the data.
The finally Call FM.
After calling the FM read the table dynpro_values with key as field name. dynpro_values-FIELDVALUE contains the field content.
Check below sample code for your reference.
PARAMETERS: p_file LIKE rlgrap-filename MEMORY ID upl.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
DATA: dynp_fields LIKE dynpread OCCURS 0 WITH HEADER LINE.
REFRESH dynp_fields. CLEAR dynp_fields.
dynp_fields-fieldname = 'P_FILE'.
APPEND dynp_fields.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = sy-cprog
dynumb = sy-dynnr
TABLES
dynpfields = dynp_fields
EXCEPTIONS
invalid_abapworkarea = 1
invalid_dynprofield = 2
invalid_dynproname = 3
invalid_dynpronummer = 4
invalid_request = 5
no_fielddescription = 6
invalid_parameter = 7
undefind_error = 8
OTHERS = 9.
Thanks,
Vinod.
Edited by: Vinod Reddy Vemuru on Jul 25, 2008 3:15 PM -
Hi all.
I got this working code in selection screen. How can i convert this to a dialog screen? This code is for input help.
REPORT ZGARY_SEARCH_HELP.
Data : Begin of li_address,
STRAS type ZSTUDGARY-ADMINOGARY,
ORT01 type ZSTUDGARY-FNAMEGARY,
ORT02 type ZSTUDGARY-LNAMEGARY,
end of li_address.
Data : it_addr like table of li_address.
DATA: progname TYPE sy-repid,
dynnum TYPE sy-dynnr,
dynpro_values TYPE TABLE OF dynpread,
field_value LIKE LINE OF dynpro_values.
Parameters : p_pernr type ZSTUDGARY-ADMINOGARY,
p_addr type ZSTUDGARY-FNAMEGARY.
INITIALIZATION.
progname = sy-repid.
dynnum = sy-dynnr.
Search-help for P_WERKS-Low
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_addr.
CLEAR: field_value, dynpro_values, it_addr.
REFRESH dynpro_values.
field_value-fieldname = 'P_PERNR'.
APPEND field_value TO dynpro_values.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = progname
dynumb = dynnum
translate_to_upper = 'X'
TABLES
dynpfields = dynpro_values.
READ TABLE dynpro_values INDEX 1 INTO field_value.
Select data to be display on Search Help
Select ADMINOGARY FNAMEGARY LNAMEGARY
into table it_addr
from ZSTUDGARY
where ADMINOGARY = field_value-fieldvalue.
SORT it_addr BY STRAS.
DELETE ADJACENT DUPLICATES FROM it_addr
COMPARING stras ort01 ort02.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'P_ADDR'
dynpprog = progname
dynpnr = dynnum
dynprofield = 'P_ADDR'
value_org = 'S'
TABLES
value_tab = it_addr.REPORT zdemof4_help_module .
TYPES: BEGIN OF values,
carrid TYPE spfli-carrid,
connid TYPE spfli-connid,
END OF values.
DATA: carrier(3) TYPE c,
connection(4) TYPE c.
DATA: progname TYPE sy-repid,
dynnum TYPE sy-dynnr,
dynpro_values TYPE TABLE OF dynpread,
field_value LIKE LINE OF dynpro_values,
values_tab TYPE TABLE OF values.
CALL SCREEN 100.
MODULE init OUTPUT.
progname = sy-repid.
dynnum = sy-dynnr.
CLEAR: field_value, dynpro_values.
field_value-fieldname = 'CARRIER'.
APPEND field_value TO dynpro_values.
ENDMODULE.
MODULE cancel INPUT.
LEAVE PROGRAM.
ENDMODULE.
MODULE value_carrier INPUT.
CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
EXPORTING
tabname = 'DEMOF4HELP'
fieldname = 'CARRIER1'
dynpprog = progname
dynpnr = dynnum
dynprofield = 'CARRIER'.
ENDMODULE.
MODULE value_connection INPUT.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
dyname = progname
dynumb = dynnum
translate_to_upper = 'X'
TABLES
dynpfields = dynpro_values.
READ TABLE dynpro_values INDEX 1 INTO field_value.
SELECT carrid connid
FROM spfli
INTO CORRESPONDING FIELDS OF TABLE values_tab
WHERE carrid = field_value-fieldvalue.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'CONNID'
dynpprog = progname
dynpnr = dynnum
dynprofield = 'CONNECTION'
value_org = 'S'
TABLES
value_tab = values_tab.
ENDMODULE.
refer this. -
How to log input parameters for Function Modules?
Hi,
I need to create a Logging system to trace input parameters for function modules.
The log functionality could be done by developing a class method or a function module (For example 'write_log'), and calling it within each function module that I want to log. The 'write_log' code should be independent from the interface of the Function Module that I want to log.
For example, I'd like to write a function/class method that can log both these functions modules:
Function DummyA
Input parameters: A1 type char10, A2 type char10.
Function DummyB
Input parameters: B1 type char20, B2 type char20, B3 type char20, B4 type Z_MYSTRUCTURE
Now the questions...
- Is there a "standard SAP" function that provide this functionality?
- If not, is there a system variable in which I can access runtime all parameters name, type and value for a particular function module?
- If not, how can I loop at Input parameters in a way that is independent from the function module interface?
Thank you in advance for helping!check this sample code. here i am capturing only parameters (import) values. you can extend this to capture tables, changin, etc.
FUNCTION y_test_fm.
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(PARAM1) TYPE CHAR10
*" REFERENCE(PARAM2) TYPE CHAR10
*" REFERENCE(PARAM3) TYPE CHAR10
DATA: ep TYPE STANDARD TABLE OF rsexp ,
ip TYPE STANDARD TABLE OF rsimp ,
tp TYPE STANDARD TABLE OF rstbl ,
el TYPE STANDARD TABLE OF rsexc ,
vals TYPE tihttpnvp ,
wa_vals TYPE ihttpnvp ,
wa_ip TYPE rsimp .
FIELD-SYMBOLS: <temp> TYPE ANY .
CALL FUNCTION 'FUNCTION_IMPORT_INTERFACE'
EXPORTING
funcname = 'Y_TEST_FM'
* INACTIVE_VERSION = ' '
* WITH_ENHANCEMENTS = 'X'
* IGNORE_SWITCHES = ' '
* IMPORTING
* GLOBAL_FLAG =
* REMOTE_CALL =
* UPDATE_TASK =
* EXCEPTION_CLASSES =
TABLES
exception_list = el
export_parameter = ep
import_parameter = ip
* CHANGING_PARAMETER =
tables_parameter = tp
* P_DOCU =
* ENHA_EXP_PARAMETER =
* ENHA_IMP_PARAMETER =
* ENHA_CHA_PARAMETER =
* ENHA_TBL_PARAMETER =
* ENHA_DOCU =
EXCEPTIONS
error_message = 1
function_not_found = 2
invalid_name = 3
OTHERS = 4
IF sy-subrc = 0.
LOOP AT ip INTO wa_ip .
MOVE: wa_ip-parameter TO wa_vals-name .
ASSIGN (wa_vals-name) TO <temp> .
IF <temp> IS ASSIGNED .
wa_vals-value = <temp> .
ENDIF .
APPEND wa_vals TO vals .
ENDLOOP .
ENDIF.
ENDFUNCTION. -
How Do I Configure the PFI Lines as input in PXI 6713 module
Hi,
I have PXI 6713 module in my PXI 1044 chassis. I have configured PXI 6713 module to geneate certain analogue signals to my board.
Board inturn process this analogue signal and responds back the status signals through a status register on the board. In my application,the status bits in status register of the board are mapped to the PFI 0:3 bits on PXI 6713 module ( pins 11,10 , 42 and 43).
My query is how do i configue the PFI lines as input in PXI 6713 module to read these status bits ??
May be below explanation could give you little bit more information w.r.to my query.
When i use NI USB - 6008 module to read the same bits , since this device has 12 digital I/O lines, i could able to read the status bits in to the last 4 digital lines by configuring the those digital lines as input.
In PXI 6713 module i have only 8 digital lines. These 8 digital lines i have used to send the digital signals to the board. I am left with no digital I/O lines. Hence i couldn't use these digital lines. I am left with only one option to use. Theya re PFI lines. Moreover the status bits in the pin out of board are mapped such that the bits can be read through the PFI lines.
I am wondering do we have any example code to use inorder to read these status bits on the board using the PFI lines.
Please let me know if you need additional information to help me out.
Thanks.
Solved!
Go to Solution.Hello There,
When using the PFI pin as an input, you can individually configure each PFI for edge or level detection and for polarity selection. This PFI information can be referenced in the DAQ Analog Output Series Manual on page 6-1 (http://www.ni.com/pdf/manuals/370735e.pdf). Unfortunately, the PXI-6713 PFI lines are only capable of timing input and output signal for AI, AO, or counter/timer functions. The option of creating static DI from the PFI lines is not available for the PXI-6713. However, some cards have this capability. Newer National Instruments products with PFI lines have the option of setting PFI lines as:
Static Digital Input
Static Digital Output
Timing Input Signal for AI, AO, DI, DO, or counter/timer functions
Timing Output Signal from AI, AO, DI, DO, or counter/timer functions
(http://digital.ni.com/public.nsf/allkb/14F20D79C649F8CD86256FBE005C2BC4)
When set as static DIO, the PFI lines are assigned to a different port (eg. PFI0-7 is Port1). More details about this can be referenced at:
http://digital.ni.com/public.nsf/allkb/DA2D3CD0B8E8EE2A8625752F007596E1
http://digital.ni.com/public.nsf/allkb/862567530005F09E8625677800577C27
Regards,
Roman Sandoval | National Instruments | RF Systems Engineer -
I defaulted input help field (pick list) but SAP CRM still asking for one
We are running SAP CRM 7.0.
Some fields as you know are dialog / pick list fields.
What I mean by this is they are input help fields where you
can click a little square (in sap crm 7.0) to the right of the text box
and it brings up a dialog screen of values that you can select from.
Here is an example screen shot of what I am talking about:
http://img834.imageshack.us/img834/5676/imageschak.png
So what I have done is implemented the GETTER function for this input help field so that by default it has a value.
The code is like so:
method GET_CURRENCY.
CALL METHOD SUPER->GET_CURRENCY
EXPORTING
ATTRIBUTE_PATH = attribute_path
ITERATOR = iterator
RECEIVING
VALUE = value.
if value eq ''.
IF sy-langu EQ 'E'.
VALUE = 'USD'.
elseif sy-langu EQ 'D'.
VALUE = 'EUR'.
ENDIF.
endif.
endmethod.
Here even is a link to this method that I created: Field Currency of Context Node BTADMINH - How to set default
The method works great it sets the default of the currency to say USD. When I click the create button to create an opportunity the field currency is set to USD, this is great because it makes my job easier that I dont have to click the input help button and select a currency, it is already there.
But once I click the "Save" button for an opportunity I get a small error in the error notification box that tells me I need to select a currency! But why is this happening a currency already exists? So If I click the input help (the little button) and reselect the currency value USD then save my opportunity this error goes away.
The question is why does this happen? I need it so that the default currency value is recognized by the SAP CRM system. Why do I have to go back in and re-select the currency if it is already set? Is there some sort of consistency check or something I need to do to eliminate this problem?
Here is a screen shot after creating an opportunity with the default Currency set to USD (this means I did not select USD in the dialog input help it was defaulted by the getter method:
http://img832.imageshack.us/img832/3011/enteracurrency.png
Only if I go back into edit mode and actually click the little square to bring up the dialog of values and select USD does this error go away. Why does this happen ?I called SET_CURRENCY right after setting my value and the error is now gone.
SET_CURRENCY( EXPORTING ATTRIBUTE_PATH = ATTRIBUTE_PATH
iterator = iterator
value = value ).
Got the tip from Pieter who has a good blog on SAP CRM: http://sapcrmweblog.blogspot.com/ -
What are the input parameters for Function Module
Dear Experts,
I want to generate a Sales Tax returns report,those fields are not available in my existing Datasources.
For that i want to write a Generic Datasource with Function Module.
audat
bukrs
vkorg
vtweg
spart
aurat
auart
netwr
mwsbp
kschl zedp(consition type)
kschl zvat(condition type)
ksch zcst(condition type)
matkl material group
Here what are the Input parameters for Function Module.
Thanks in Advance.
Srinivasan.Srinivasan-
For creating a Generic extractor based on a FM, you first of all need to know what is going to be your structure.. i.e. what all fields you need to pull from what all tables. A functional consultant may help you identify the exact DB tables.
Once you know them, hand over the requirement and the pdf mentioned by Krishna to the ABAP guy, he would be able to take this up further.
Also decide 1st whether you would be using a full load or delta. There is a slight difference in the way they are built.
Let me know how it goes.
-Bhushan. -
Mapping a field from input help screen(Using POV) to user screen
I have used the Function module 'DYNP_VALUES_UPDATE', to get the value from Description field in the search help.Now its throwing a runtime error mentioned below.
Runtime errors: CALL_FUNCTION_CONFLICT_LENG
Except. CX_SY_DYN_CALL_ILLEGAL_TYPE.
Short text: Type conflict when calling a function module
the function module was called incorrectly.
Below is the code i implemented.
ws_dynpfields-fieldname = wc_scrfld.
ws_dynpfields-stepl = tc_1017-current_line.
ws_dynpfields-fieldvalue = ws_hssr-text.
APPEND ws_dynpfields TO wt_dynpfields.
CALL FUNCTION 'DYNP_VALUES_UPDATE'
EXPORTING
dyname = 'sapmzapp01'
dynumb = '1008'
TABLES
dynpfields = wt_dynpfields
EXCEPTIONS
invalid_abapworkarea = 1
invalid_dynprofield = 2
invalid_dynproname = 3
invalid_dynpronummer = 4
invalid_request = 5
no_fielddescription = 6
undefind_error = 7
OTHERS = 8.
IF sy-subrc <> 0.
MESSAGE e800(zmdb_mda_supplier).
ENDIF.
The above code is in screen USER COMMAND OF 1017(POV-input help screen).
wt_dynpfields is the internal table.
and its fields are fieldname,stepl and fieldvalue
ws_dynpfields is the workarea of the internal table.
wc_scrfld-Constant with value zbut0000qnnyxa-ztfldg6h7np'(the description field name of the screen 1008 where i want the description value to get in automatically after selecting from input help)
ws_hssr-text= The Work area containing the value 'eg ORDER'.
kindly get back immediately....Hi,
This function works only after POV.
So ensure that it is written in that module:
like AT SELECTION-SCREEN ON VALUE-REQUEST FOR f_name.
Hope it will guide you.
Jogdand M B -
Hi ,i want provide a input help for a Selection input field
Hi Experts,
I want to provide a input help for field in selection-screen ,
this field is non primary key Custom Table(Z) selection input field .
how we can get ,f4 help for this field.
how to get f4 help Suppose field Link s_mtart-low,s_mtart-high,
What are the function moduled available for this >
Thanks in Advance.
Regards,
Hitu.Hi,
refer to below code.
*AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_usnam-low.
**//To provide F4 help to S_USNAM-LOW
PERFORM f_f4help_usnam USING 'S_USNAM-LOW'.
*AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_usnam-high.
**//To provide F4 help to S_USNAM-HIGH
PERFORM f_f4help_usnam USING 'S_USNAM-HIGH'.
*AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_wbs-low.
**//To provide F4 help to S_WBS-LOW
PERFORM f_f4help_wbs USING 'S_WBS-LOW'.
*AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_wbs-high.
**//To provide F4 help to S_WBS-HIGH
PERFORM f_f4help_wbs USING 'S_WBS-HIGH'.
*& Form f_f4help_usnam
To provide F4 help to username
-->P_0019 text
*FORM f_f4help_usnam USING value(p_0019) TYPE any.
**// To retrieve username from mkpf.
SELECT bname
FROM usr01
INTO TABLE it_usnam.
SORT: it_usnam BY usnam.
DELETE ADJACENT DUPLICATES FROM it_usnam COMPARING usnam.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
retfield = c_retusnam
PVALKEY = ' '
dynpprog = c_dynpprog
dynpnr = c_dynpnr
dynprofield = p_0019
STEPL = 0
WINDOW_TITLE =
VALUE = ' '
value_org = c_s
MULTIPLE_CHOICE = ' '
DISPLAY = ' '
CALLBACK_PROGRAM = ' '
CALLBACK_FORM = ' '
MARK_TAB =
IMPORTING
USER_RESET =
TABLES
value_tab = it_usnam
field_tab = it_usnam.
return_tab = l_it_ret
DYNPFLD_MAPPING =
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3
*ENDFORM. " f_f4help_usnam
*& Form f_f4help_wbs
To create F4 help for wbs element
-->P_0039 text
*FORM f_f4help_wbs USING value(p_0039) TYPE any.
**// To retrive wbs element from mseg
SELECT pspel
FROM pspl
INTO TABLE it_wbs.
SORT:it_wbs BY wbs.
DELETE ADJACENT DUPLICATES FROM it_wbs COMPARING wbs.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
retfield = c_retwbs
PVALKEY = ' '
dynpprog = c_dynpprog
dynpnr = c_dynpnr
dynprofield = p_0039
STEPL = 0
WINDOW_TITLE =
VALUE = ' '
value_org = c_s
MULTIPLE_CHOICE = ' '
DISPLAY = ' '
CALLBACK_PROGRAM = ' '
CALLBACK_FORM = ' '
MARK_TAB =
IMPORTING
USER_RESET =
TABLES
value_tab = it_wbs
FIELD_TAB =
return_tab = l_it_ret1
DYNPFLD_MAPPING =
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3
*ENDFORM. " f_f4help_wbs -
Hi all,
Fora search help in dialog program.
I HAVE TO GET SEARCH FOR A FIELD ZID ON APARTICULAR SCREEN BASED ON DATA, MODIFIED BY AND A PLANT..
I HAVE A RECORD IN ONE MY ZTABLE.
I HAVE TO GET THAT BY SEVERAL SEARCH PARAMETERS SAY BY DATE , MODIFIED BY,PLANT ETC.
each user has been assigned a plant , so in search he has to get records belonging to that plant.
so i cannot include plant in my search help, because user may type in other plant.
so i tried two ways
1) i created a search help in se11 including the plant field again the problem arises if the user types a different plant.
so i want to know whether we can apassa value to plant field in search help(i.e the plant assigned to the user),
i have this kind of thing in some standard t -code i.e especially for searching material , the plant field in search help was filled by one plant.
this should be one of the solution
2)I tried to write a code in pov of program code.
this is how my code looks.
DATA : BEGIN OF ITAB OCCURS 0.
INCLUDE STRUCTURE ZXXX.
DATA : END OF ITAB.
ITAB HAS FIELDS ID, DATE , MODIFIEDBY , PLANT.
USER_PLANT = 'ABC'.
SELECT * FROM ZXXX INTO TABLE ITAB WHERE PLANT = USER_PLANT.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
RETFIELD = 'ZID'
PVALKEY = ' '
DYNPPROG = ' '
DYNPNR = ' '
DYNPROFIELD = ' '
STEPL = 0
WINDOW_TITLE = 'TEST'
VALUE = ' '
VALUE_ORG = 'S'
MULTIPLE_CHOICE = ' '
DISPLAY = ' '
CALLBACK_PROGRAM = ' '
CALLBACK_FORM = ' '
TABLES
VALUE_TAB = ITAB
FIELD_TAB =
RETURN_TAB = IT_RETURN4
DYNPFLD_MAPPING =
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
if sy-subrc = 0.
clear itab.
read table it_return4 index 1.
ZXXX-ZID = it_return4-fieldval.
endif.
THIS WORKS FINE , BUT HE CANNOT SEARCH BASED ON DATE AND MODIFIEDBY
ALL i want is is get a pop up window and should be able to search based on data and modifiedby for a predifined plant.
I hope iam clear.
ThanksHi,
Create a FM with the following code..The interface is defined in the code..
In the Function module top include add the following code.
<b>TYPE-POOLS: shlp, vrm.</b>
IN this code I am deleting the records that are not of the currency USD...
Do the same thing for your requirement...
FUNCTION Y_SEARCH_HELP_EXIT.
""Local interface:
*" TABLES
*" SHLP_TAB TYPE SHLP_DESCR_TAB_T
*" RECORD_TAB STRUCTURE SEAHLPRES
*" CHANGING
*" REFERENCE(SHLP) TYPE SHLP_DESCR_T
*" REFERENCE(CALLCONTROL) LIKE DDSHF4CTRL STRUCTURE DDSHF4CTRL
where z_test is my z table..
DATA: ITAB LIKE Z_TEST OCCURS 0 WITH HEADER LINE.
ITAB[] = RECORD_TAB[].
IF NOT RECORD_TAB[] IS INITIAL.
DELETE ITAB WHERE WAERS <> 'USD'.
RECORD_TAB[] = ITAB[].
ENDIF.
ENDFUNCTION.
Thanks,
Naren -
How to read the 'Input help with fixed values' of domain .
How to read the 'Input help with fixed values' of domain .
The domain has a Value range i want to read those values .
Are these values stored in any table ?
Plz help me i need it ver badly...
Thanks in Advance...Hi Chandra Shekhar,
To read the 'Input help with fixed values' of domain , you can use the function module : HR_P_GET_FIXED_VALUE_TEXT.
iIf you enter the domain name, you will find the fixed values entered in the domain.
These values are stored in a table DD07L(DD zero 7 L). Here the values are stored based on domain name.
See if it works for you.
Award points if its helpful.
Regards,
Bhanu -
Dropdown lists or F4 (input help) on custom field
I created a custom field and would like to either add a dropdown or an F4 input help. I know how to do the input help or the dropdown, but I would like the user to type in their own data on the field if they don't want to select from the list provided.
Does anyone know how to do this.Check out this code.... This module does F4 help for a screen field called P_TRFAR. It gets its values from the data base, you could easily build this internal table in your program without going to the database.
MODULE HELP_ON_TRFAR.
data: begin of help_trfar occurs 0,
trfar type t510a-trfar,
tartx type t510a-tartx,
end of help_trfar.
select * into corresponding fields of table help_trfar
from t510a
where molga = '10'.
call function 'F4IF_INT_TABLE_VALUE_REQUEST'
exporting
retfield = 'TRFAR'
dynprofield = 'P_TRFAR'
dynpprog = sy-cprog
dynpnr = sy-dynnr
value_org = 'S'
tables
value_tab = help_trfar.
ENDMODULE.
In you flow logic, you need the following line to trigger the help when the user presses F4.
PROCESS ON VALUE-REQUEST.
FIELD P_TRFAR MODULE HELP_TRFAR.
That should be all you need.
Please don't forget to award points accordingly for helpful answers. Thanks.
Regards,
Rich Heilman
Message was edited by: Rich Heilman -
hi,
what are the function modules do we use for the conversion of currency and units.
1) i want to convert currency(US$) to INR.
2) and to convert from one unit to another unit.
before using these function modules what we have to do in bdcs.
regards
vivekHi,
Check this sample code,
CALL FUNCTION 'CONVERT_TO_LOCAL_CURRENCY'
EXPORTING
* CLIENT = SY-MANDT
DATE = pdate
FOREIGN_AMOUNT = p_amt1
FOREIGN_CURRENCY = p_curr1
LOCAL_CURRENCY = p_curr2
* RATE = 0
* TYPE_OF_RATE = 'M'
* READ_TCURR = 'X'
IMPORTING
EXCHANGE_RATE = w_rate
FOREIGN_FACTOR = w_fact1
LOCAL_AMOUNT = w_amt
LOCAL_FACTOR = w_fact2
* EXCHANGE_RATEX =
* FIXED_RATE =
* DERIVED_RATE_TYPE =
EXCEPTIONS
NO_RATE_FOUND = 1
OVERFLOW = 2
NO_FACTORS_FOUND = 3
NO_SPREAD_FOUND = 4
DERIVED_2_TIMES = 5
OTHERS = 6.
IF SY-SUBRC <> 0.
write: / 'Conversion to loc.curr. failed:',
p_curr1, '->', p_curr2, 'err.code=', sy-subrc.
ELSE.
write: / 'to Loc.curr:', p_amt1 currency p_curr1, p_curr1, '->',
w_amt currency p_curr2, p_curr2,
'(', w_rate, ')', w_fact1, w_fact2.
ENDIF.
http://www.geocities.com/victorav15/sapr3/examples/currconv.txt
Check this
CONVERSION_FACTOR_GET
<b>Measurement unit conversion:</b> Get measurement unit conversion factor Not for Dimensionless Units of Measure
UNIT_CONVERSION_SIMPLE Measurement unit conversion by table T006, with rounding
UNIT_OF_MEASURE_SAP_TO_ISO
UNIT_OF_MEASURE_ISO_TO_SAP
MATERIAL_UNIT_CONVERSION Material quantity conversion from Base Unit of Measure to Alternative Unit of Measure and vice versa. For Dimensionless Units of Measure (Each, Piece, Box etc.) conversion depends on the given Material (see table MARM). For other Units of Measure (Length, Weigth etc.) conversion can be calculated from the T006 table or via CONVERSION_FACTOR_GET.
CONVERSION_EXIT_CUNIT_INPUT Conversion exit for commercial (3-char) measurement unit INPUT
CONVERSION_EXIT_CUNIT_OUTPUT Conversion exit for commercial (3-char) measurement unit OUTPUT
CONVERSION_EXIT_LUNIT_INPUT Conversion exit for technical (6-char) measurement unit INPUT
CONVERSION_EXIT_LUNIT_OUTPUT Conversion exit for technical (6-char) measurement unit OUTPUT
UNIT_OF_MEASUREMENT_HELP Input help for measurement units of a predefined dimension
http://www.geocities.com/victorav15/sapr3/abapfun.html -
Custom infotype replacement for dialog modules
Hi,
I have been asked to recreate a custom OM infotype (created with PPCI and based on the Planned Compensation infotype) to the new SAP EHP4 environment. Part of the infotype is a custom dialog maintenace module that allows the infotype to be viewed and maintain with the PP01 transaction (planned compensation is linked to a job).
When I recreate the code in the new environment (I cannot use a transport), I am unable to recreate the dialog module because the system says "dialog modules are obsolete and no longer supported." Can you tell me what is the new way to create the new maintenance screen and have it work with PP01. Also, it seems that if I try to change the configuration table T777D (using SM30) with something other than a dialog module name, it doesn't accept it, so where does the new maintenance screen go in that table?
Thank you in advance for your help.
Christian Durini.Hi,
whereever we create a custom OM infotype using PPCI transaction, the system will go to next level as with titles as
- Module Pool Program
- Screens
- Tables and etc...
so as per the structure of Module Pool Program, first of all we have to create Program (Double click on each Program after that the cursor will to next screen.here we have to click on create button). After that go to SE51 and enter the program and screen number, click on change button.
Normally whenever we create info type the system will maintain with screens as 1000, 2000, 3000
follow above procedure for 3 screens.
Ram. -
Adding Input Help to a Field in WebClient
Thanks Tanja for the input but I need to add input help to the u201CValueu201D field in conditions for alert rules to facilitate the input of Sold-To Party values. For example, the user can click the input help icon and that select the desired Sold-To Party from the list.
I inadvertently deleted my original posting so I am reposting again.
Thanks,
bamHi Corwin,
You can have Process on Value-Request on your screen where the field exist. You can use SE80 to edit the screen of the function group that table maintenance generator created.
1. Edit the screen using SE80.
2. Place a 'process on value-request' at the bottom of the flow logic.
3. Below that, put this line
field fieldname module get_help.
4. Double click on GET_HELP and create an input module pool program.
5. In this module pool, pass the values of the other fields in your screen to the function module that can provide you the list of values
6. Use function module F4IF_INT_TABLE_VALUE_REQUEST within this module pool to popup the values.
However, please keep in mind that the values from other fields on the screen are not populated in its field unless you hit enter.
Maybe you are looking for
-
Pages '08 to Microsoft Word '04
I have pages '08 and i was wondering if i could print out a document from pages from the application microsoft word '03 Is there a setting i have to change on page to do this?
-
I need help downloading apps from creative cloud.
I installed CC for the desktop and accepted my invites to use CC desktop, Illustrator, and Photoshop. I then go and click on the download button from my account in CC on the Adobe site, and it automatically opens CC for the desktop and I just get the
-
Hello Experts is it possible to hide the Filter values in our reports, i mean after opening the report from WAD, you have free characteristics, rows and columns, beside that you have filter where you filter based on paticular value.... But in my sene
-
HT204587 Why can't I add any fingerprint? The phone won't let me add
I've previously added three fingerprint into my touch id. But now I've like to add a fourth. But when I go into the fingerprint setting, it would not let me add or edit any fingerprint. Need help...
-
<snip> This (as you probably know) is due to the fact that the code provided by most of the DB vendors is not thread safe. <snip> Sean's comment, above, speaks to an issue that is causing some concern within my (large - 180 projects in development) o