2008 Jul 24 6:57 PM
hi,
i am selecting say customer number from kna1 and displaying as follows in my screen.
CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
EXPORTING
ENDPOS_COL = 20
ENDPOS_ROW = 30
STARTPOS_COL = 8
STARTPOS_ROW = 9
TITLETEXT = 'cust number'
IMPORTING
CHOISE = SY-TABIX
TABLES
VALUETAB = I_TAB
EXCEPTIONS
BREAK_OFF = 1
OTHERS = 2.
what happens is at end of the numbers, #### are displayed. is it bcos the popup window is bigger or some other reason..is there a better way to display the values like in SAP standard screen we get help on F4 ?? thks
2008 Jul 24 7:06 PM
Hi,
Use the function module F4IF_INT_TABLE_VALUE_REQUEST for F4 help..
Search in sdn with F4IF_INT_TABLE_VALUE_REQUEST...you will get a sample code..
Thanks
Naren
2008 Jul 24 7:06 PM
Hi,
Use the function module F4IF_INT_TABLE_VALUE_REQUEST for F4 help..
Search in sdn with F4IF_INT_TABLE_VALUE_REQUEST...you will get a sample code..
Thanks
Naren
2008 Jul 24 8:10 PM
Thanks Naren, but i have a doubt on the parameters of this function..in my case, the internal table is
TYPES: BEGIN OF X_ITAB,
KUNNR(10),
END OF X_ITAB.
DATA: WA_ITAB TYPE X_ITAB,
I_TAB LIKE TABLE OF WA_ITAB.
so my call to the FM wud be
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = ???????
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'KUNNR'
TABLES
value_tab = i_tab.
how to get the return value ?? the user is going to choose just one value and not multiples..
thks for ur help.
2008 Jul 24 9:20 PM
check the sample...
REPORT ztest_f4.
TYPES: BEGIN OF x_itab,
kunnr TYPE kunnr, "it should be type to some standard data element
END OF x_itab.
DATA: wa_itab TYPE x_itab,
i_tab LIKE TABLE OF wa_itab with HEADER LINE.
data lt_dfies_csit TYPE dfies OCCURS 0.
PARAMETERS: p_kunnr(10).
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_kunnr.
SELECT kunnr FROM kna1
INTO TABLE i_tab
UP TO 20 ROWS.
"retfield we will pass the column name we are going to get from f4
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'KUNNR' "<---Return field column name
dynpprog = sy-repid
dynpnr = '1000'
dynprofield = 'P_KUNNR'
value_org = 'S'
TABLES
value_tab = i_tab "lt_rec_csit
field_tab = lt_dfies_csit.
2008 Jul 24 9:55 PM
2008 Jul 24 8:32 PM
Hi,
U want POP-Up like standard va01..while u enter sold-to it will give list od ship-to for that sold-to in pop-up window ?
or
u just want to have pop-up wth customer no. ?
If u r looking for standard pop-up like va01 u need to do following :
DATA: I_COMWA LIKE WA_COMWA OCCURS 0 WITH
HEADER LINE,
I_VBUV LIKE WA_VBUV OCCURS 0 WITH HEADER
LINE,
I_XSADR LIKE SADRVB OCCURS 0 WITH HEADER LINE,
I_XVBPA LIKE VBPAV OCCURS 0 WITH HEADER LINE.
*-- I_VBUV and I_XSADR and I_XVBPA will be empty internal table while passing into the FM.
IF WS_SHIPTO IS INITIAL.
CLEAR WA_COMWA.
WA_COMWA-KUNNR = WS_SOLDTO.
WA_COMWA-SPART = WS_SPART.
WA_COMWA-VKORG = WS_VKORG.
WA_COMWA-VTWEG = WS_VTWEG.
WA_COMWA-VBOBJ = 'A'.
WA_COMWA-PARGR = 'ZTA'.
WA_COMWA-HITYP_PR = 'A'.
WA_COMWA-VBTYP = 'C'.
*--Get all Ship to in I_XVBPA with POP UP screen of Partner Selection.
CALL FUNCTION 'VIEW_KUAGV'
EXPORTING
COMWA = WA_COMWA
FIV_HI_DATE = SY-DATLO
TABLES
VBUV_TAB = I_VBUV
XSADR = I_XSADR
XVBPA = I_XVBPA
EXCEPTIONS
NO_KNA1 = 1
NO_KNVV = 2
NO_KUAGV = 3
NO_TVTA = 4
NO_CPD_ADDRESS = 5
NO_TPAKD = 6
NO_AUTHORIZATION = 7
NO_ADDRESS = 8
NO_REFERENCE_CUSTOMER_FOUND = 9
NO_LANGUAGE = 10
OTHERS = 11.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
READ TABLE I_XVBPA INTO WA_XVBPA WITH KEY PARVW = 'WE'.
IF SY-SUBRC EQ 0.
WS_SHIPTO = WA_XVBPA-KUNNR.
*Get Ship To address data
IF NOT WS_SHIPTO IS INITIAL.
WS_SHIPTO_TEMP = WS_SHIPTO.
CLEAR : I_KNA1, I_ADRC.
REFRESH : I_KNA1, I_ADRC.
SELECT KUNNR ADRNR FROM KNA1 INTO CORRESPONDING FIELDS OF TABLE I_KNA1
WHERE KUNNR = WS_SHIPTO.
SELECT * FROM ADRC INTO CORRESPONDING FIELDS OF TABLE I_ADRC
FOR ALL ENTRIES IN I_KNA1
WHERE ADDRNUMBER = I_KNA1-ADRNR.
READ TABLE I_KNA1 WITH KEY KUNNR = WS_SHIPTO.
IF SY-SUBRC EQ 0.
READ TABLE I_ADRC WITH KEY ADDRNUMBER = I_KNA1-ADRNR.
IF SY-SUBRC EQ 0.
WS_NAME1_SHIP = I_ADRC-NAME1.
WS_CITY1_SHIP = I_ADRC-CITY1.
WS_POST_CODE_SHIP = I_ADRC-POST_CODE1.
WS_REGION_SHIP = I_ADRC-REGION.
CONCATENATE WS_NAME1_SHIP '/' WS_CITY1_SHIP '/' WS_REGION_SHIP
WS_POST_CODE_SHIP INTO WS_SHIPTO_TEXT.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
Edited by: kinjal patel on Jul 24, 2008 9:33 PM
2008 Jul 24 9:04 PM