Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

List Box in Selection Screen

Former Member
0 Likes
2,321

Hi ,

In the Selection Screen , field S_KUNNR should display a drop-down list whose values are KUNNR from KNVP But the condition is PARVW (Partner Function) of that KUNNR Should be 'SP'.

S_KUNNR --- Selection Screen Field

KNVP -


Check Table

Check that customer exists as sold to in KNVP (partner type SP). Provide drop down list based upon table KNA1 but only for sold-to customers based upon table KNVP that are in same sales org/dist channel entered. Customer must also be in sales office if that value was entered.

Thaks,

Sivai

Hi ,

In the Selection Screen , field S_KUNNR should display a drop-down list whose values are KUNNR from KNVP But the condition is PARVW (Partner Function) of that KUNNR Should be 'SP'.

S_KUNNR --- Selection Screen Field

KNVP -


Check Table

Check that customer exists as sold to in KNVP (partner type SP). Provide drop down list based upon table KNA1 but only for sold-to customers based upon table KNVP that are in same sales org/dist channel entered. Customer must also be in sales office if that value was entered.

Thaks,

Sivai

6 REPLIES 6
Read only

Former Member
0 Likes
1,104

Hi Sivai,

Refer to this code.

TYPE-POOLS vrm.

DATA: name TYPE vrm_id,

list TYPE vrm_values,

value LIKE LINE OF list.

DATA: wa_spfli TYPE spfli,

ok_code TYPE sy-ucomm,

save_ok TYPE sy-ucomm.

TABLES demof4help.

name = 'DEMOF4HELP-CONNID'.

CALL SCREEN 100.

MODULE cancel INPUT.

LEAVE PROGRAM.

ENDMODULE.

MODULE init_listbox OUTPUT.

CLEAR demof4help-connid.

SELECT connid cityfrom cityto deptime

FROM spfli

INTO CORRESPONDING FIELDS OF wa_spfli

WHERE carrid = demof4help-carrier2.

value-key = wa_spfli-connid.

WRITE wa_spfli-deptime TO value-text USING EDIT MASK '__:__:__'.

CONCATENATE value-text

wa_spfli-cityfrom

wa_spfli-cityto

INTO value-text SEPARATED BY space.

APPEND value TO list.

ENDSELECT.

CALL FUNCTION 'VRM_SET_VALUES'

EXPORTING

id = name

values = list.

ENDMODULE.

MODULE user_command_100.

save_ok = ok_code.

CLEAR ok_code.

IF save_ok = 'CARRIER' AND NOT demof4help-carrier2 IS INITIAL.

LEAVE TO SCREEN 200.

ELSE.

SET SCREEN 100.

ENDIF.

ENDMODULE.

MODULE user_command_200.

save_ok = ok_code.

CLEAR ok_code.

IF save_ok = 'SELECTED'.

MESSAGE i888(sabapdocu) WITH text-001 demof4help-carrier2

demof4help-connid.

ENDIF.

ENDMODULE.

This from ref. to library.

Hope it helps!

Much Regards,

Amuktha.

Read only

0 Likes
1,104

Hi,

Try this code.

REPORT ylistbox.

TYPE-POOLS: vrm.

DATA : BEGIN OF itab_k OCCURS 0,

kunnr TYPE kunnr,

name1 TYPE name1_gp,

END OF itab_k.

PARAMETERS : p_table(40) TYPE c AS LISTBOX VISIBLE LENGTH 40 .

INITIALIZATION.

DATA : i_help TYPE vrm_values WITH HEADER LINE.

SELECT kunnr name1 FROM kna1 UP TO 10 ROWS INTO TABLE itab_k.

LOOP AT itab_k.

i_help-key = itab_k-kunnr.

i_help-text = itab_k-name1.

APPEND i_help.

CLEAR itab_k.

CLEAR i_help.

ENDLOOP.

AT SELECTION-SCREEN OUTPUT.

CALL FUNCTION 'VRM_SET_VALUES'

EXPORTING

id = 'P_TABLE'

values = i_help[]

EXCEPTIONS

id_illegal_name = 1

OTHERS = 2.

IF sy-subrc <> 0.

ENDIF.

Best Regards,

Surendar Reddy.

Read only

Former Member
0 Likes
1,104

Hi,

Just copy and execute it .I tried in my system...it is working fine...

TYPE-POOLS: vrm.

DATA: name TYPE vrm_id,

list TYPE vrm_values,

value LIKE LINE OF list.

PARAMETERS: ps_parm(10) AS LISTBOX VISIBLE LENGTH 10.

AT SELECTION-SCREEN OUTPUT.

name = 'PS_PARM'.

value-key = '1'.

value-text = 'LINE 1'.

APPEND value TO list.

value-key = '2'.

value-text = 'LINE 2'.

APPEND value TO list.

CALL FUNCTION 'VRM_SET_VALUES'

EXPORTING id = name

values = list.

START-OF-SELECTION.

WRITE: / 'PARAMETER:', ps_parm.

Regards

Kiran

Read only

Former Member
0 Likes
1,104

Try this. This is an example where u can display months from table T247 but only those entries that are in english.

If u want to display kunnr for parvw = 'SP' then in the select query write where condition accordingly.

Your problem will be solved.

DATA : BEGIN OF t_month OCCURS 0,

mnth TYPE t247-mnr,

END OF t_month.

PARAMETERS: mnth TYPE t247-mnr.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR MNTH.

SELECT mnr FROM t247 INTO TABLE t_month

WHERE spras = 'EN'.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

  • DDIC_STRUCTURE = ' '

retfield = 'MNTH'

  • PVALKEY = ' '

dynpprog = sy-repid

dynpnr = sy-dynnr

dynprofield = 'T247-MNR'

  • STEPL = 0

  • window_title =

  • VALUE = ' '

value_org = 'S'

  • MULTIPLE_CHOICE = ' '

  • DISPLAY = ' '

  • CALLBACK_PROGRAM = ' '

  • CALLBACK_FORM = ' '

  • MARK_TAB =

  • IMPORTING

  • USER_RESET =

TABLES

value_tab = t_MONTH

  • FIELD_TAB =

  • RETURN_TAB =

  • 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.

Read only

Former Member
0 Likes
1,104

Hi,

Do you want listbox for select-options or for parameters...

Regards,

Siddarth

Read only

Former Member
0 Likes
1,104

Hi.

This is sample code according to ur need.

just check it by copy pasting in editor.

hope it will help.

REPORT ztn_test.


TABLES:knvp.

data: BEGIN OF itab OCCURS 10,
      kunnr like knvp-kunnr,
      END OF itab.
data: wa_itab like itab.

TYPE-POOLS: vrm.
DATA: name TYPE vrm_id,
list TYPE vrm_values,
value LIKE LINE OF list.

PARAMETERS: s_kunnr(20) type c  as LISTBOX VISIBLE LENGTH 40 .

AT SELECTION-SCREEN OUTPUT.
SELECT kunnr from knvp  into  CORRESPONDING FIELDS OF TABLE itab WHERE parvw = 'SP'. " SP for ur requirement
loop at itab into wa_itab.
  name = 'S_KUNNR'.
  value-key = sy-tabix.
  value-text = wa_itab-kunnr.
  append value to list.
  clear wa_itab.
endloop.

CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING id = name
values = list.