‎2009 Jul 04 4:09 PM
i m working on report i m using a currency field in that NETWR
in an itab2 but its giving error in workarea "u can not use character type in wa" how to solve this problem .. i m facting data with repect to vbeln of vbak .
pls help me
‎2009 Jul 04 10:54 PM
Is type of the field netwr char ? You must define it like "netwr like vbap-netwr".
‎2009 Jul 05 5:34 AM
Hi,
Can you provide the code so that your question will be more clear.
Regards,
Prashant
‎2009 Jul 05 5:43 AM
&----
*& Report ZINVOICE1 *
*& *
&----
*& *
*& *
&----
REPORT ZINVOICE1 .
TABLES : VBRP,vbak.
TYPES : BEGIN OF YSTR_VBRP ,
VBELN TYPE VBRP-VBELN,
POSNR TYPE VBRP-POSNR,
MEINS TYPE VBRP-MEINS,
MATNR TYPE VBRP-MATNR ,
VRKME TYPE VBRP-VRKME,
END OF YSTR_VBRP.
PARAMETERS : INVOICE LIKE VBRP-VBELN.
TYPES : BEGIN OF TY_VBAK ,
VBELN TYPE VBAK-VBELN,
NETWR TYPE VBAK-NETWR,
END OF TY_VBAK.
TYPES : BEGIN OF TY_FINAL,
VBELN TYPE VBRP-VBELN,
POSNR TYPE VBRP-POSNR,
VRKME TYPE VBRP-VRKME,
MEINS TYPE VBRP-MEINS,
NETWR TYPE VBAK-NETWR,
MATNR TYPE VBRP-MATNR ,
END OF TY_FINAL.
DATA : IT_VBRP TYPE TABLE OF YSTR_VBRP,
WA_VBRP TYPE YSTR_VBRP.
INITIAL SIZE 0 WITH HEADER LINE.
DATA : V_FM TYPE RS38L_FNAM.
data: it_vbak type table of ty_vbak,
wa_vbak type ty_vbak,
it_final type table of ty_final,
wa_final type ty_final.
START-OF-SELECTION.
SELECT VBELN POSNR VRKME MEINS MATNR
FROM VBRP
INTO TABLE IT_VBRP
WHERE VBELN EQ INVOICE.
IF sy-subrc <> 0 .
MESSAGE e000 .
LEAVE LIST-PROCESSING.
ELSE .
SORT IT_VBRP BY VBELN .
ENDIF .
if it_vbrp[] is not initial.
select VBELN NETWR from VBAK into table it_vbak
for all entries in it_vbrp where vbeln = it_vbrp-vbeln.
ENDIF.
loop at it_vbrp into wa_vbrp.
wa_final-vbeln = wa_vbRP-vbeln.
wa_final-posnr = wa_vbrp-posnr.
wa_final-vrkme = wa_vbrp-vrkme.
wa_final-meins = wa_vbrp-meins.
wa_final-matnr = wa_vbrp-matnr.
append wa_final to it_final.
endloop.
loop at it_final into wa_final.
read table it_vbak into wa_vbak
with key vbeln = wa_final-vbeln binary search.
if sy-subrc = 0.
wa_final-netwr = wa_vbak-netwr.
modify it_final from wa_final index sy-tabix
transporting netwr.
endif.
endloop.
IF SY-SUBRC <> 0.
MESSAGE I000(YTRABAPMSG) WITH 'INVOICE NO. DOES NOT EXIST'.
LEAVE LIST-PROCESSING.
ENDIF.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = 'ZINVOICE1'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
FM_NAME = V_FM
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 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.
**
LOOP AT IT_FINAL INTO WA_FINAL.
*WRITE 😕 WA_FINAL.----
ENDLOOP.