Adding custom text besides selection screen field
Hi All,
I need to add some custom text to the selection screen field "CtegoryID" in the Product search screen(thru the link "Internal Goods")....I sthis possible thru change os some template?If yes,which one??
Regards,
Disha.
Well...
I don't remember an existing search help with some fields using a combo-box.
In the FM assigned to the search help (the search help exit), you can pre and post process some data.
IF callcontrol-step = 'PRESEL', 'SELONE', 'SELECT'.....
But I don't see anything for seach a feature.
In conclusion, I don't think this is supported by generic search help.
Rgds
Christophe
PS: please reward points for helpfull answers
Similar Messages
-
Adding Selection Screen Fields in IQ09
Hi All,
My requirement is to add a selection screen field on screen of transaction code IQ09. Also , I need to filter records based on the same.
Is this feasible ?
Thanks
HarshHi Harsh,
Please use the Enhancment framework.
Use the Implicit or the Explicit Enhancement Options and then add the Additional Field on the screen.
you can then use the Source code plug-ins to modify the code.
Regards,
Deepak. -
Hi,
I want to group the selection screen fields. where should i group.
I want to group using the modif Id
T Y P E S
TYPES:
BEGIN OF TYVBAK,
VBELN TYPE VBAK-VBELN,
AUART TYPE VBAK-AUART,
AUDAT TYPE VBAK-AUDAT,
KUNNR TYPE VBAK-KUNNR,
NETWR TYPE VBAK-NETWR,
END OF TYVBAK.
D A T A D E C L A R A T I O N S
DATA:
STVBAK TYPE TYVBAK,
ITVBAK TYPE TABLE OF TYVBAK.
S E L E C T I O N S C R E E N
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS:
SKUNNR FOR STVBAK-KUNNR.
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
SELECT-OPTIONS:
SVBELN FOR STVBAK-VBELN,
SAUDAT FOR STVBAK-AUDAT.
SELECTION-SCREEN END OF BLOCK B2.
I N I T I A L I Z A T I O N
*INITIALIZATION.
FILLING SELECT OPTIONS WITH DEFAULTS
SKUNNR-SIGN = 'I'.
SKUNNR-OPTION = 'BT'.
SKUNNR-LOW = '1'.
SKUNNR-HIGH = '4000000'.
APPEND SKUNNR.
T O P O F P A G E
TOP-OF-PAGE.
WRITE:/1'SALES DOC',12 'DOC TYPE',20 'SALES DATE',32 'NETWORTH',60 'CUSTOMER'.
*A T S E L E C T I O N S C R E E N O U T P U T .
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF SCREEN-NAME = 'SVBELN-LOW'.
SCREEN-INPUT = 0.
MODIFY SCREEN.
ENDIF.
IF SCREEN-NAME = 'SVBELN-HIGH'.
SCREEN-INPUT = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
where should i group SBVELN and SAUDATHi
Instead of SCREEN-NAME use SCREEN-GROUP1 and for your select options give MODIF ID.
As follows
SELECTION-OPTIONS: selcrt for dobj MODIF ID MOD1.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
CHECK SCREEN-GROUP1 = 'MOD1.
SCREEN-REQUIRED = 1.
MODIFY SCREEN.
ENDLOOP.
This is COZ when you use select-options you get TWO fileds on the INPUT screen LOW and HIGH so you have to check for selcrit-low and selctri-high you can avoid all this my assigning a MODIF ID.
See this sample programs for this
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS: pa_file TYPE rlgrap-filename MODIF ID abc,
pa_lifnr TYPE lfa1-lifnr MODIF ID abc,
pa_vkorg TYPE vbak-vkorg MODIF ID abc.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
PARAMETERS: pa_kunnr TYPE vbak-kunnr MODIF ID def.
SELECT-OPTIONS: s_lifnr FOR gs_lfa1-lifnr MODIF ID def,
s_date FOR gs_lfa1-erdat MODIF ID def,
s_augru FOR gs_vbak-augru MODIF ID def,
s_vbeln FOR gs_vbak-vbeln MODIF ID def.
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: pa_upd RADIOBUTTON GROUP g1 USER-COMMAND uc01 DEFAULT 'X'."#EC *
SELECTION-SCREEN COMMENT 3(60) text-004 FOR FIELD pa_upd.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: pa_rep RADIOBUTTON GROUP g1 ."#EC *
SELECTION-SCREEN COMMENT 3(60) text-005 FOR FIELD pa_rep.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b3.
IF pa_rep EQ gc_x.
LOOP AT SCREEN.
IF screen-group1 = gc_abc.
screen-input = gc_zero_num.
ELSEIF screen-group1 = gc_def.
screen-active = gc_one_num.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
ELSEIF pa_upd EQ gc_x.
*For Reprocessing
LOOP AT SCREEN.
IF screen-group1 = gc_def.
screen-input = gc_zero_num.
ELSEIF screen-group1 = gc_abc.
screen-active = gc_one_num.
ENDIF.
MODIFY SCREEN.
CLEAR pa_upd.
ENDLOOP.
ENDIF.
REPORT zrich_001.
PARAMETERS: p_rad1 RADIOBUTTON GROUP grp1 DEFAULT 'X'
user-command chk,
p_rad2 RADIOBUTTON GROUP grp1.
SELECT-OPTIONS: s_datum1 FOR sy-datum MODIF ID d1,
s_datum2 FOR sy-datum MODIF ID d2.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF p_rad1 = 'X'
AND screen-group1 = 'D2'.
screen-active = '0'.
ENDIF.
IF p_rad2 = 'X'
AND screen-group1 = 'D1'.
screen-active = '0'.
ENDIF.
MODIFY SCREEN.
ENDLOOP -
Selection-screen fields validation for dialog
Hello ABAP Gurus
Requirements: this is a report wherein , depending upon the correct select-options , user will pick some field values from table and some will be entered by the user in the next se51 custom screen for creation of a record in a ztable .
the problem is :without validating select-options values , it calls the se51 screen 100.
How to keep the cursor at the selection-screen field until & unless user enters the correct i/p s .if i/p are correct then only it should call screen 100 otherwise remain in the selection screen only .
*& Report ZSD_REP_QUOT_BANK_CREATE *
REPORT ZSD_REP_QUOT_BANK_CREATE NO STANDARD PAGE HEADING LINE-SIZE 255.
TABLES: VBAK,VBAP,VBRK,ZSD_TABL_QOTBANK,MARA,KONV.
DATA: OK_CODE LIKE SY-UCOMM,
SAVE_OK_CODE LIKE SY-UCOMM,
WA_ITAB LIKE ZSD_TABL_QOTBANK,
ANSWER TYPE C,
COPIED ,
STS TYPE N,
EMGRP LIKE MARA-EXTWG,
QTY LIKE ZSD_TABL_QOTBANK-QTY,
UPRICE LIKE ZSD_TABL_QOTBANK-UPRICE,
TOT LIKE ZSD_TABL_QOTBANK-TOT,
INO LIKE VBAP-POSNR.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-000.
SELECT-OPTIONS: S_QTNO FOR ZSD_TABL_QOTBANK-QTNO
NO INTERVALS NO-EXTENSION OBLIGATORY,
S_ITNO FOR ZSD_TABL_QOTBANK-ITNO
NO INTERVALS NO-EXTENSION OBLIGATORY.
S_MATNO FOR ZSD_TABL_QOTBANK-MATNO
NO INTERVALS NO-EXTENSION. "
SELECTION-SCREEN END OF BLOCK b1.
AT SELECTION-SCREEN.
SELECT SINGLE VBTYP
INTO VBAK-VBTYP
FROM VBAK
WHERE VBELN IN S_QTNO.
IF SY-SUBRC EQ 0 AND VBAK-VBTYP NE 'B'.
MESSAGE I005(ZQOTBANK).
SET CURSOR FIELD S_QTNO-LOW.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
CLEAR WA_ITAB.
SELECT SINGLE QTNO ITNO
INTO WA_ITAB
FROM ZSD_TABL_QOTBANK
WHERE QTNO IN S_QTNO
AND ITNO IN S_ITNO.
IF SY-SUBRC EQ 0.
MESSAGE I001(ZQOTBANK).
SET CURSOR FIELD S_QTNO-LOW.
SET CURSOR FIELD S_ITNO-LOW.
SUBMIT (SY-REPID) VIA SELECTION-SCREEN.
ENDIF.
*START-OF-SELECTION.
END-OF-SELECTION.
CALL SCREEN 0100.
*& Module STATUS_0100 OUTPUT
text
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS '0100'.
SET TITLEBAR '0100'.
ZSD_TABL_QOTBANK-QTNO = S_QTNO-LOW.
SELECT SINGLE BUKRS_VF VKORG VTWEG SPART KUNNR ERDAT BNDDT
KNUMV
INTO (ZSD_TABL_QOTBANK-CCODE,
ZSD_TABL_QOTBANK-SORG,
ZSD_TABL_QOTBANK-DISTCHAN,
ZSD_TABL_QOTBANK-DIV,
ZSD_TABL_QOTBANK-CUSTNO,
ZSD_TABL_QOTBANK-QTDAT,
ZSD_TABL_QOTBANK-QTVALDAT,
VBAK-KNUMV)
FROM VBAK
WHERE VBELN IN S_QTNO
AND VBTYP = 'B'.
IF SY-SUBRC EQ 0.
SELECT SINGLE KWMENG POSNR MATNR
INTO (QTY , INO , ZSD_TABL_QOTBANK-MATNO)
FROM VBAP
WHERE VBELN IN S_QTNO.
SELECT SINGLE EXTWG
INTO EMGRP
FROM MARA
WHERE MATNR EQ ZSD_TABL_QOTBANK-MATNO.
ZSD_TABL_QOTBANK-ITNO = INO.
ZSD_TABL_QOTBANK-EMATGRP = EMGRP.
ZSD_TABL_QOTBANK-QTY = QTY.
SELECT SINGLE KBETR
INTO UPRICE
FROM KONV
WHERE KNUMV = VBAK-KNUMV
AND KPOSN = INO
AND KSCHL = 'PR00'.
ENDIF.
ZSD_TABL_QOTBANK-UPRICE = UPRICE.
TOT = QTY * UPRICE .
ZSD_TABL_QOTBANK-TOT = TOT .
CLEAR: QTY, UPRICE, TOT.
QTY = ZSD_TABL_QOTBANK-CGL_QTY.
UPRICE = ZSD_TABL_QOTBANK-CGL_UPRICE .
TOT = QTY * UPRICE .
ZSD_TABL_QOTBANK-CGL_TOT = TOT .
CLEAR: QTY, UPRICE, TOT.
QTY = ZSD_TABL_QOTBANK-BHEL_QTY.
UPRICE = ZSD_TABL_QOTBANK-BHEL_UPRICE .
TOT = QTY * UPRICE .
ZSD_TABL_QOTBANK-BHEL_TOT = TOT .
CLEAR: QTY, UPRICE, TOT.
QTY = ZSD_TABL_QOTBANK-BHEL_QTY.
UPRICE = ZSD_TABL_QOTBANK-BHEL_UPRICE .
TOT = QTY * UPRICE .
ZSD_TABL_QOTBANK-BHEL_TOT = TOT .
CLEAR: QTY, UPRICE, TOT.
QTY = ZSD_TABL_QOTBANK-ALSTOM_QTY.
UPRICE = ZSD_TABL_QOTBANK-ALSTOM_UPRICE .
TOT = QTY * UPRICE .
ZSD_TABL_QOTBANK-ALSTOM_TOT = TOT .
CLEAR: QTY, UPRICE, TOT.
QTY = ZSD_TABL_QOTBANK-SIEMENS_QTY.
UPRICE = ZSD_TABL_QOTBANK-SIEMENS_UPRICE .
TOT = QTY * UPRICE .
ZSD_TABL_QOTBANK-SIEMENS_TOT = TOT .
CLEAR: QTY, UPRICE, TOT.
QTY = ZSD_TABL_QOTBANK-TELK_QTY.
UPRICE = ZSD_TABL_QOTBANK-TELK_UPRICE .
TOT = QTY * UPRICE .
ZSD_TABL_QOTBANK-TELK_TOT = TOT .
CLEAR: QTY, UPRICE, TOT.
QTY = ZSD_TABL_QOTBANK-OTH_QTY.
UPRICE = ZSD_TABL_QOTBANK-OTH_UPRICE .
TOT = QTY * UPRICE .
ZSD_TABL_QOTBANK-OTH_TOT = TOT .
CLEAR: QTY, UPRICE, TOT.
ENDMODULE. " STATUS_0100 OUTPUT
*& Module USER_COMMAND_0100 INPUT
text
MODULE USER_COMMAND_0100 INPUT.
CASE OK_CODE.
WHEN 'SAVE'.
INSERT ZSD_TABL_QOTBANK.
IF SY-SUBRC EQ 0.
MESSAGE I000(ZQOTBANK).
COMMIT WORK.
CALL SELECTION-SCREEN 1000.
ELSE.
MESSAGE E001(ZQOTBANK).
CALL SELECTION-SCREEN 1000.
ENDIF.
ENDCASE.
ENDMODULE. " USER_COMMAND_0100 INPUT
*& Module EXIT_COMMAND INPUT
text
MODULE EXIT_COMAND INPUT.
SAVE_OK_CODE = OK_CODE.
CLEAR OK_CODE.
CASE SAVE_OK_CODE.
WHEN 'CANCEL'.
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TITLEBAR = 'Quotation Bank Entry'
TEXT_QUESTION = 'Do you want to Cancel ?'
TEXT_BUTTON_1 = 'Yes'
TEXT_BUTTON_2 = 'No'
DEFAULT_BUTTON = '2'
IMPORTING
ANSWER = ANSWER.
IF ANSWER = '1'.
LEAVE PROGRAM.
ELSE.
CALL SELECTION-SCREEN 1000.
ENDIF.
WHEN 'EXIT'.
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
TITLEBAR = 'Quotation Bank Entry'
TEXT_QUESTION = 'Do you want to Exit ?'
TEXT_BUTTON_1 = 'Yes'
TEXT_BUTTON_2 = 'No'
DEFAULT_BUTTON = '2'
IMPORTING
ANSWER = ANSWER.
IF ANSWER = '1'.
LEAVE PROGRAM.
ELSE.
CALL SELECTION-SCREEN 1000.
ENDIF.
ENDCASE.
ENDMODULE. " EXIT_COMMAND INPUT
Thnx in AdvancePut the statement
CALL SCREEN 100
in the event <b>AT SELECTION-SCREEN</b> and NOT in <b>END-OF-SELECTION</b>.
Regards,
Subramanian V. -
Regarding Search help on selection-screen field
Hi there,
I am working on custom tables.
I have a requirement to maintain search pattern on a selection-screen field.
selection-screen parameter: p_name which is company name filed from Z table.
By giving a string like Holl* and by pressing F4 on the field p_name it has to popup a dialogbox having list of company names starting with Holl.
Thanks in advance.
-TulasiHi
Go through the link given below :
How to create a search help for my own fields in selection screen
F4 search help on report selection screen
also try :
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
RETFIELD = 'VKORG'
PVALKEY = ' '
DYNPPROG = SY-REPID
DYNPNR = SY-DYNNR
DYNPROFIELD = 'P_VKORG'
STEPL = 0
WINDOW_TITLE =
VALUE = ' '
VALUE_ORG = 'C'
TABLES
VALUE_TAB = T_TABLE1
FIELD_TAB = field_tab
RETURN_TAB = RET_TAB
DYNPFLD_MAPPING = DYN_TAB
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3
With Regards
Nikunj shah -
F4 Help for the selection screen field
Hi Gurus,
I have to display F4 help for a selection screen field. i am using following code:
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'CODE'
dynpprog = lw_repid
dynpnr = sy-dynnr
VALUE_ORG = 'S'
TABLES
value_tab = gi_text
field_tab = li_fields_tab
return_tab = pi_return_tab
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
My internal table gi_emp has two fields CODE & TEXT. When i select 1 particular value, it returns the CODE value in the pi_return_tab table.
But my requirement is i have to capture the corresponding TEXT value for the Returned CODE. Ex: following is the F4 help being displayed: -
001 test
001 test1
but is i select code 001(First Value), i also need to capture it's corresponding Text value. In return table pi_return_tab i have only Code value.
Please help me out.
Note: Based on return code i can't search into the internal table gi_code, because as shown in the example, code has multiple text.Sachin,
I think this is what you need. The following code will return the key and the text (OR any other columns), if both columns are in the selection screen the selected values (both columns) will also be passed to the corresponding parameters. If you only need the text to be in the return table and not passed to the selection screen then set the parameter for text with NO-DISPLAY option.
REPORT zktest01 .
DATA :
BEGIN OF value_tab OCCURS 0,
field LIKE e070-trkorr,
text LIKE e07t-as4text,
END OF value_tab.
DATA: t_fldtab LIKE dfies OCCURS 0 WITH HEADER LINE,
t_rettab LIKE ddshretval OCCURS 0 WITH HEADER LINE,
t_dynmap LIKE dselc OCCURS 0 WITH HEADER LINE.
PARAMETERS : p_field LIKE value_tab-field,
p_text LIKE value_tab-text. "NO-DISPLAY.
INITIALIZATION.
t_fldtab-tabname = 'VALUE_TAB'.
t_fldtab-fieldname = 'FIELD'.
t_fldtab-langu = 'E'.
t_fldtab-position = 1.
t_fldtab-offset = 0.
t_fldtab-fieldtext = 'Key'.
t_fldtab-reptext = 'Key'.
t_fldtab-leng = 20.
t_fldtab-intlen = 20.
t_fldtab-outputlen = 20.
t_fldtab-datatype = 'CHAR'.
t_fldtab-inttype = 'C'.
t_fldtab-headlen = 20.
t_fldtab-keyflag = 'X'.
t_fldtab-lowercase = ' '.
APPEND t_fldtab.
t_fldtab-tabname = 'VALUE_TAB'.
t_fldtab-fieldname = 'TEXT'.
t_fldtab-position = 2.
t_fldtab-offset = 20.
t_fldtab-fieldtext = 'Text'.
t_fldtab-reptext = 'Text'.
t_fldtab-leng = 60.
t_fldtab-intlen = 60.
t_fldtab-outputlen = 60.
t_fldtab-headlen = 60.
t_fldtab-keyflag = ' '.
t_fldtab-lowercase = ' '.
APPEND t_fldtab.
value_tab-field = '101'.
value_tab-text = 'dddd'.
APPEND value_tab.
value_tab-field = '202'.
value_tab-text = 'aaaa'.
APPEND value_tab.
t_dynmap-fldname = 'FIELD'.
t_dynmap-dyfldname = 'P_FIELD'.
APPEND t_dynmap.
t_dynmap-fldname = 'TEXT'.
t_dynmap-dyfldname = 'P_TEXT'.
APPEND t_dynmap.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_field.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'FIELD'
dynpprog = 'ZKTEST01'
dynpnr = '1000'
dynprofield = 'P_FIELD'
value_org = 'S'
TABLES
field_tab = t_fldtab
value_tab = value_tab
return_tab = t_rettab
dynpfld_mapping = t_dynmap
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc EQ 0.
ENDIF.
START-OF-SELECTION.
Jeffrey Satriadi -
Displaying error message while entering selection screen fields
Moderator message: don't offer points
hi experts...
i generated a report.
in that report, the selection screen fields are plant and material type..
now my rqmt is like this :
if user enters any plant except '8210' in the selection screen, then a pop up should appear like.. enter 8210 plant only, and the cursor should remain in the same screen allowing user to enter correct plant.
and then same with the case of material type also..user should enter 'mcfe' material type only..
im using message classes like this:
if so_bwkey-low ne '8210' or so_bwkey-high ne '8210'.
message i000(zts).
endif.
if so_mtart-low is not initial and so_mtart-high is not initial and so_mtart-low ne 'mcfe'
or so_mtart-high ne 'mcfe'.
message i001(zts).
endif.
with this logic, when i enter plant..it is prompting
1) enter plant 8210 only..
and then when i press enter key it is again prompting
2)enter material type mcfe only..
but iam not entering material type here..
i want to get 2nd error message if and only if i enter material type..
help me regarding this issue..
<<text removed>>
thanks in advance,
harini.
Edited by: Matt on Feb 9, 2009 10:14 AMHi,
Use Error type message in SELECTION SCREEN EVENT.It will place the cursor in the relevant Field.
At SELECTION-SCREEN ON SO_BWKEY-Low.
if so_bwkey-low ne '8210' .
message E000(zts).
endif.
At SELECTION-SCREEN ON SO_BWKEY-HIGH.
if so_bwkey-high ne '8210'.
message E000(zts).
endif.
At SELECTION-SCREEN ON so_mtart-LOW.
if so_mtart-low is not initial and so_mtart-low ne 'mcfe' .
message E001(zts).
endif.
At SELECTION-SCREEN ON so_mtart-HIGH.
if so_mtart-high is not initial
and so_mtart-high ne 'mcfe'.
message E001(zts).
endif.
This will resolve the issue..
Regards,
Gurpreet -
Search help for custom entries in selection screen
Hi Gurus,
I have a requirement of adding four entries as a search help to a selection screen field P_TABLE.I tried using the function module F4IF_INT_ TABLE_VALUE_REQUEST as below.I want to add four entries Revenue,Cost,RIH and Summarised WBS Actual Data for the selection screen field P_TABLE but the problem is the function module is not getting triggered.
See the code below.
REPORT Z_DEL_OHTABLE.
DATA: V_RESPONSES(6),
V_TEXTS LIKE ALDBOUT,
V_PROG TYPE SY-REPID,
V_DYNNR TYPE SY-DYNNR.
DATA: begin of it_openhubs occurs 0,
v_tabname type c length 30,
end of it_openhubs.
DATA:
it_return type STANDARD TABLE OF DDSHRETVAL,
wa_return like line of it_return,
l_i_field_tab TYPE STANDARD TABLE OF dfies INITIAL SIZE 0,
l_i_dynpfld_mapping TYPE STANDARD TABLE OF dselc INITIAL SIZE 0.
SELECTION-SCREEN BEGIN OF BLOCK B0 WITH FRAME TITLE title.
parameters:P_TABLE(30) type c. " USER-COMMAND UPD,
SELECTION-SCREEN END OF BLOCK B0.
V_PROG = SY-REPID.
V_DYNNR = SY-DYNNR.
it_openhubs-v_tabname = 'Cost and Expense'.
append it_openhubs.
it_openhubs-v_tabname = 'Revenue'.
append it_openhubs.
it_openhubs-v_tabname = 'Revenue in Hand'.
append it_openhubs.
it_openhubs-v_tabname = 'Summarised WBS Actual Data'.
append it_openhubs.
CLEAR IT_OPENHUBS.
INITIALIZATION.
title = 'OH TABLE DELETION- DELETE CAREFULLY'.
START-OF-SELECTION.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_TABLE.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
RETFIELD = 'v_tabname'
PVALKEY = ' '
DYNPPROG = V_PROG
DYNPNR = V_DYNNR
DYNPROFIELD = 'P_TABLE'
STEPL = 0
WINDOW_TITLE =
VALUE = ' '
VALUE_ORG = 'S'
MULTIPLE_CHOICE = ' '
DISPLAY = ' '
CALLBACK_PROGRAM = ' '
CALLBACK_FORM = ' '
MARK_TAB =
IMPORTING
USER_RESET =
TABLES
VALUE_TAB = it_openhubs
FIELD_TAB = l_i_field_tab
RETURN_TAB = it_return
DYNPFLD_MAPPING = l_i_dynpfld_mapping
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3
IF SY-SUBRC <> 0.
READ TABLE it_return INTO wa_return INDEX 1.
IF sy-subrc EQ 0.
p_table = wa_return-fieldval.
endif.
Please help me out.
Thanks,
Srini.
Edited by: Srinivasan Ganapathy on Jan 28, 2010 6:05 AMHi ,
Change your code as below:
1. Fill the internal table it_openhubs inside the event "at selection screen on value request".
2. Always follow the below sequence:
Initialisation
At selection screen
Start of selection.
3. The declaration of variable v_tabname is changed from type c length 30 to type char30.
I tried the below code , its working fine.
DATA: V_RESPONSES(6),
V_TEXTS LIKE ALDBOUT,
V_PROG TYPE SY-REPID,
V_DYNNR TYPE SY-DYNNR.
DATA: begin of it_openhubs occurs 0,
v_tabname type char30, " length 30,
end of it_openhubs.
DATA:
it_return type STANDARD TABLE OF DDSHRETVAL,
wa_return like line of it_return,
l_i_field_tab TYPE STANDARD TABLE OF dfies INITIAL SIZE 0,
l_i_dynpfld_mapping TYPE STANDARD TABLE OF dselc INITIAL SIZE 0.
SELECTION-SCREEN BEGIN OF BLOCK B0 WITH FRAME TITLE title.
parameters:P_TABLE(30) type c. " USER-COMMAND UPD,
SELECTION-SCREEN END OF BLOCK B0.
INITIALIZATION.
title = 'OH TABLE DELETION- DELETE CAREFULLY'.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_TABLE.
V_PROG = SY-REPID.
V_DYNNR = SY-DYNNR.
clear IT_OPENHUBS.
it_openhubs-v_tabname = 'Cost and Expense'.
append it_openhubs.
it_openhubs-v_tabname = 'Revenue'.
append it_openhubs.
it_openhubs-v_tabname = 'Revenue in Hand'.
append it_openhubs.
it_openhubs-v_tabname = 'Summarised WBS Actual Data'.
append it_openhubs.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'v_tabname'
dynpprog = v_prog
dynpnr = v_dynnr
dynprofield = 'P_TABLE'
value_org = 'S'
TABLES
value_tab = it_openhubs
return_tab = it_return
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc <> 0.
READ TABLE it_return INTO wa_return INDEX 1.
IF sy-subrc EQ 0.
p_table = wa_return-fieldval.
ENDIF.
ENDIF -
How to assign maintenance view to a selection screen field in a program.
Hi Experts,
I have created a custom table. Now, I have a program where there is a selection screen field for example "Load". After entering a value in the selection screen, and press enter, the user must be redirected to the maintenance view of the custom table to modify the specifed record.
Can anyone help me on how to do that?
Thanks a lot for ur precious help.
Regards,
AkshHi,
What is the need to search for a program.
Use transaction SM30 or SE16 to create or maintain entries in the table.
e.g. if the Maintenance view is created on table A, then Goto transaction SM30 or SE16 and give the table name as A and proceed. This will automatically take u to the maintenance view on tha table A.
Regards,
Himanshu -
Validating a selection-screen field
Hi all,
I am Anil.can any body explains me how to validate a selection-screen field for the following scenario?
I have customer nos ranging from 100-1000.among them i dont have any sales orders for the customers who are in between 150-250.I have sales order(VBELN) as select-options and Plant(WERKS) as Parameter on the selection-screen.I want to validate these fields without hardcaode.How can i do that?Please send me the complete code.
I am not getting how to validate a field which is declared as parameter?
regards and thanks in advance.
Anil.Make sure that u are validating against the header table.
say eg if u wnat t validate matnr in marc, then do as below.
SELECT-OPTIONS: s_matnr FOR marc-matnr. "Material No
AT SELECTION-SCREEN.
*Validate material no details
PERFORM validate_matno.
FORM validate_matno.
DATA: v_matnr LIEK mara-matnr.
SELECT SINGLE matnr INTO v_matnr
FROM <b>mara</b>
WHERE matnr IN s_matnr.
IF sy-subrc NE 0.
MESSAGE i128.
LEAVE LIST-PROCESSING.
ENDIF.
ENDFORM.
Dont select from marc.
Hope this is clear. -
Auto Incrementation of a Selection-Screen Field
Hi Folks,
How to Increment a Selection-Screen Field (Consider Parameter)..
When we press a back button on Urs Output List.
( For Example : we have a slelction screen field (parameter) by name customer. When we enter 1000(say) in it then an output list is displayed.
after we press the BACK button on the displayed list the next time the Selectio screen fieeld should Automatically Display an Incremented value of 1001 (instead if 1000).
Plz help me..!!hi
try this logic
at user-command.
case sy-ucomm.
when 'BACK'.
customer = customer + 1.
leave to screen 100.
endcase .
Cheers -
Hiding selection screen fields upon clicking a button
Hi .
I have a requirement like we need to hide and bring back the selection screen fields upon clicking a button( Expand and collapse in the same button) .
in ABAP Query,we can maintain this, for the variant we created.
We need this functionality on the selection-screen presently.
How to achieve this in the selection -screen?
Valuale pointers are desparately needful.
Regards,
SSR.Hi,
SELECTION SECREEN (P_) Parameter
(S_) Select Options
SELECTION-SCREEN : BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001,
BEGIN OF LINE,
COMMENT (26) C1 MODIF ID XYZ.
SELECT-OPTIONS : S_MATNR FOR MARA-MATNR MODIF ID XYZ NO-EXTENSION .
SELECTION-SCREEN : END OF LINE,
BEGIN OF LINE,
COMMENT (26) C2 MODIF ID XYZ.
SELECT-OPTIONS : S_MATKL FOR MARA-MATKL MODIF ID XYZ NO-EXTENSION .
SELECTION-SCREEN : END OF LINE.
PARAMETERS : R_MATNR RADIOBUTTON GROUP RAD1 DEFAULT 'X'
MODIF ID ABC USER-COMMAND MAT,
R_MATKL RADIOBUTTON GROUP RAD1.
SELECTION-SCREEN END OF BLOCK blk1.
INITIALIZATION.
C1 = 'Product Code'.
c2 = 'Product Group'.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF SCREEN-NAME0(7) = 'S_MATNR' OR SCREEN-NAME0(7) = 'S_MATKL'.
SCREEN-INPUT = '0'.
SCREEN-INVISIBLE = '1'.
ENDIF.
CASE SCREEN-NAME+0(7).
WHEN 'S_MATNR'.
IF R_MATNR = 'X'.
SCREEN-INPUT = '1'.
SCREEN-INVISIBLE = '0'.
ENDIF.
WHEN 'S_MATKL'.
IF R_MATKL = 'X'..
SCREEN-INPUT = '1'.
SCREEN-INVISIBLE = '0'.
ENDIF.
ENDCASE.
IF R_MATNR = 'X'.
IF SCREEN-NAME = 'C1'.
C1 = 'Product code'.
C2 = SPACE.
ENDIF.
ENDIF.
IF R_MATKL = 'X'.
IF SCREEN-NAME = 'C2'.
C2 = 'Product Group'.
C1 = SPACE.
ENDIF.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
Hope it helps.
best regards,
Nagaraj Kalbavi -
RESCIS - Unable to select custom report from Selection Screen
Hi all,
we have developed a custom report for transaction "RESCIS-Evaluation of service charge settlement" but we have found that althought the report appears in selection screen field called "REPORT" it throws message RESCIS003 but the report is not shown.
If we doesn't fulfill report field in selection screen, the program shows a second screen where a couple of ALVGrids are shown allowing the user to select the report that will be displayed. Here we are able to select our custom report and the data in it is displayed.
We have analyzed the standard program that is executed via transaction RESCIS and we've found that the selection screen executes standard function RESC_GUI_ANYREPORTS_APPL that doesn't executes reports dinamically but statically. That means that SAP doesn't allows to execute custom reports directly from selection screen.
I think this is a SAP error but afert opening an OSS message SAP sais that is not an error but a bad configuration or lack of knowledge for customizing it.
Has anyone developed a custom report for RESCIS transaction?Hm what exactly did you want to change? Normally it is in REFX cases you should not copy standard REPORTS. In your case with transaction RESCIS, I myself do not see any need to add any functionality in this report because it is only a sum of all lists from your service charge settlement. What else do you want to see there?
For displaying new fields in the separate lists maybe there is some BADI for it.
Regards
Michael -
How to assign F1 help to the selection screen fields
Hi All,
I have a requirement.I have to create a button named "HELP" at the side of Execute button in the selection screen.If I place my cursor in the selection screen field and I press that "HELP" button, I should get the Documentation help for that field.
Please suggest me on this.
Thanks in advance.
Sreeharsha SinguruHi sreeharsha,
here a short example:
TABLES: MARA.
TABLES: SSCRFIELDS.
TYPE-POOLS: ICON.
DATA: CURSORFIELD(20).
SELECTION-SCREEN: BEGIN OF LINE.
SELECT-OPTIONS: S_MATNR FOR MARA-MATNR.
SELECTION-SCREEN: END OF LINE.
SELECTION-SCREEN: BEGIN OF LINE.
SELECT-OPTIONS: S_MTART FOR MARA-MTART.
SELECTION-SCREEN: END OF LINE.
SELECTION-SCREEN: SKIP 3.
SELECTION-SCREEN: BEGIN OF LINE.
SELECTION-SCREEN: PUSHBUTTON (10) PB01 USER-COMMAND HELP.
SELECTION-SCREEN: END OF LINE.
AT SELECTION-SCREEN.
GET CURSOR FIELD CURSORFIELD.
CASE SSCRFIELDS.
WHEN 'HELP'.
CASE CURSORFIELD.
WHEN 'S_MATNR-LOW'.
CALL FUNCTION 'POPUP_TO_DISPLAY_TEXT' "Make your own Text
EXPORTING
TITEL = 'Information'
TEXTLINE1 = 'Information for field:'
TEXTLINE2 = 'S_MATNR-LOW'
START_COLUMN = 10
START_ROW = 15.
WHEN 'S_MTART-LOW'.
CALL FUNCTION 'POPUP_TO_DISPLAY_TEXT' "Make your own Text
EXPORTING
TITEL = 'Information'
TEXTLINE1 = 'Information for field:'
TEXTLINE2 = 'S_MTART-LOW'
START_COLUMN = 10
START_ROW = 15.
ENDCASE.
ENDCASE.
INITIALIZATION.
CONCATENATE ICON_INFORMATION 'Help' INTO PB01.
START-OF-SELECTION.
SELECT * FROM MARA WHERE MATNR IN S_MATNR.
WRITE: / MARA-MATNR.
ENDSELECT.
Hope it helps.
Regards, Dieter -
How to change standard selection-screen fields
hi i am kishore.
i have requirement.
i have to change selection-screen label purchase order to purchase docuement in request for quatation.
pls suggest that how to change the standard selection screen field labels.Hi.
This is possible.
Just try out this way.Heres is an example.
TABLES: pernr.
data: i_tab type standard table of RSSELTEXTS with header line.
initialization.
i_tab-name = 'PNPPERNR'.
i_tab-kind = 'S'.
i_tab-text = 'Employee ID'.
append i_tab.
CALL FUNCTION 'SELECTION_TEXTS_MODIFY'
EXPORTING
program = 'ZESO_TEST'
tables
seltexts = i_tab
EXCEPTIONS
PROGRAM_NOT_FOUND = 1
PROGRAM_CANNOT_BE_GENERATED = 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.
Thanks and regards,
Maheshwari.V
Maybe you are looking for
-
Photostream photos lost after IOS 8 update
Hello, I was wondering if anyone could please help me... every since updating to IOS 8 recently, I can't seem to find my photos that were in my photostream. Can anyone recommend a good photo recovery software or advice on how to retrieve lost photost
-
How do I find itunes for 64 bit windows?
Where do I find itunes 10 64 bit for windows?
-
Problem with native ldapsearch in Solaris 10
Hi all, someone could tell me please why native ldapsearch in Solaris 10 do not work with SSL connection when same command comes with Sun Directory Server 5.2 works perfectly ? With native ldapsearch in Solaris 10, I get the error message "Can't cont
-
Ipod Nano worked, now it's screwing up
Ok, it worked fine. I picked it up this am, it's pretty new, I got it 2 mo's ago, and I turned it on and it just started running thru all my songs, like it was playing them for 1 sec ea. ,then the next, & so on. Then I put the earbuds in, & no noise
-
Choosing block size for RAID 0 & Final Cut
Hi. I now have 3 500GB internal Seagate drives in bays 2/3/4 and want to make a striped 1.5TB RAID to use with Final Cut Studio 2. The help page talks about choosing a "large" data block size for use with video, but makes no specific size suggestion.