‎2008 Jul 03 3:49 PM
hai friends ,
i am sorry.the coding has benn changed little bit now.
the perform in se71 is.
PERFORM SUB_FORM2 IN PROGRAM ZSSS_NEW
USING &EKKO-EBELN&
CHANGING &L_KBERT&
ENDPERFORM
FORM sub_form2 TABLES in_tab STRUCTURE itcsy
out_tab STRUCTURE itcsy.
TYPES : BEGIN OF ty_itab,
kschl TYPE konv-kschl,
kbetr TYPE konv-kbetr,
END OF ty_itab.
DATA : t_itab TYPE STANDARD TABLE OF ty_itab,
wa_itab TYPE ty_itab.
DATA :
l_knumv TYPE knumv,
l_ebeln TYPE ebeln.
break damlek.
READ TABLE in_tab WITH KEY name = 'EKKO-EBELN'.
IF sy-subrc = 0.
l_ebeln = in_tab-value.
ENDIF.
SELECT SINGLE knumv FROM ekko INTO l_knumv WHERE ebeln = l_ebeln.
if not l_knumv is initial.
SELECT kschl kbetr
FROM konv
INTO corresponding fields of table t_itab
where knumv = l_knumv.
endif.
break damlek.
if sy-subrc = 0.
loop at t_itab into wa_itab.
READ TABLE out_tab with key = 'KONV-KNUMV'.
out_tab-value = wa_itab-kbetr.
modify out_tab.
endif.
now here upto itab i am gettinfg the value of kbert,but i want to populate it into out_tab so that i can print it in po.
plz give me the solution.
‎2008 Jul 03 3:56 PM
U cannot pass table data(mutiple records) directly to out_tab. By using out_tab parameter u can pass only 1 value at a time.
To pass table data u have to use a standard text where all table records need to be pass from this subroutine pool.
For details pl. check this link.
http://www.saptechnical.com/Tutorials/Smartforms/PassingTableData/Script1.htm
and one this when u r reading form out_tab u should use "NAME" as key.
loop at t_itab into wa_itab.
READ TABLE out_tab with key name = 'KONV-KNUMV'.
out_tab-value = wa_itab-kbetr.
modify out_tab.
Regards,
Joy.
Edited by: Joyjit Ghosh on Jul 3, 2008 5:01 PM
‎2008 Jul 03 4:41 PM
thannx for ur reply ghosh,
here as i am passinfg only one value(i.e.wa_itab-kbetr) why the value is not getting populated into out_tab.
‎2008 Jul 03 4:49 PM
Ok,..I think u are populating data into wrong parameter, name should be L_KBERT not KONV-KNUMV.
Check this modified code:
PERFORM SUB_FORM2 IN PROGRAM ZSSS_NEW
USING &EKKO-EBELN&
CHANGING &L_KBERT&
ENDPERFORM
FORM sub_form2 TABLES in_tab STRUCTURE itcsy
out_tab STRUCTURE itcsy.
TYPES : BEGIN OF ty_itab,
kschl TYPE konv-kschl,
kbetr TYPE konv-kbetr,
END OF ty_itab.
DATA : t_itab TYPE STANDARD TABLE OF ty_itab,
wa_itab TYPE ty_itab.
DATA :
l_knumv TYPE knumv,
l_ebeln TYPE ebeln.
break damlek.
READ TABLE in_tab WITH KEY name = 'EKKO-EBELN'.
IF sy-subrc = 0.
l_ebeln = in_tab-value.
ENDIF.
SELECT SINGLE knumv FROM ekko INTO l_knumv WHERE ebeln = l_ebeln.
if not l_knumv is initial.
SELECT kschl kbetr
FROM konv
INTO corresponding fields of table t_itab
where knumv = l_knumv.
endif.
break damlek.
if sy-subrc = 0.
loop at t_itab into wa_itab.
READ TABLE out_tab with key name = 'L_KBERT'.
out_tab-value = wa_itab-kbetr.
modify out_tab.
endif.
Regards,
Joy.
‎2008 Jul 04 5:30 AM
hai,
but it is going to dump when i read out_tab with l_kbetr (or) konv-kbetr.so with which field i have to read this table and i am getting the value into l_kbetr but not into out_tab-value.can u give reply immediately.
‎2008 Jul 04 10:31 AM
Hi,
Sorry for my late reply..if ur prob. is not solved yet then try this modified code.
PERFORM SUB_FORM2 IN PROGRAM ZSSS_NEW
USING &EKKO-EBELN&
CHANGING &L_KBERT&
ENDPERFORM
FORM sub_form2 TABLES in_tab STRUCTURE itcsy
out_tab STRUCTURE itcsy.
TYPES : BEGIN OF ty_itab,
kschl TYPE konv-kschl,
kbetr TYPE konv-kbetr,
END OF ty_itab.
DATA : t_itab TYPE STANDARD TABLE OF ty_itab,
wa_itab TYPE ty_itab.
DATA :
l_knumv TYPE knumv,
l_ebeln TYPE ebeln.
break damlek.
READ TABLE in_tab WITH KEY 'EKKO-EBELN'.
IF sy-subrc = 0.
l_ebeln = in_tab-value.
ENDIF.
SELECT SINGLE knumv FROM ekko INTO l_knumv WHERE ebeln = l_ebeln.
if not l_knumv is initial.
SELECT kschl kbetr
FROM konv
INTO corresponding fields of table t_itab
where knumv = l_knumv.
endif.
break damlek.
if sy-subrc = 0.
loop at t_itab into wa_itab.
READ TABLE in_tab with key 'L_KBERT'.
if sy-subrc = 0.
out_tab-value = wa_itab-kbetr.
modify out_tab INDEX SY-TABIX.
endif.
endif.
Regards,
Joy.