INVOICE CODE

Hi all,
I am not getting any output for the following code. While debugging it doesn't show any values in first select statement itself (it_header table), but in database it has values. Please help me out.
REPORT  ZSD_DAILY_INVOICE_REGISTER1 NO STANDARD PAGE HEADING.
TABLES: VBAK,
        VBAP,
        VBRK,
        KONV,
        VBRP,
        KNVP,
        MARA,
        J_1IEXCHDR,
        MSEG,
        ZDAILY,
        T001W.
TYPE-POOLS: SLIS.
TYPES: BEGIN OF T_VBRP,
       VBELN TYPE VBRK-VBELN,
       FKIMG TYPE VBRP-FKIMG,
       MEINS TYPE VBRP-MEINS,
       VOLUM TYPE VBRP-VOLUM,
       MATNR TYPE VBRP-MATNR,
      FKIMG TYPE VBRP-VOLUM,
       POSNR TYPE POSNR_VF,
       CHARG TYPE VBRP-CHARG,
       WERKS TYPE VBRP-WERKS,
       END OF T_VBRP.
*DATA: IT_VBRP TYPE STANDARD TABLE OF VBRP WITH HEADER LINE.
TYPES: BEGIN OF T_HEADER,
       VBELN TYPE VBRK-VBELN,
       FKIMG TYPE VBRP-FKIMG,
       FKART TYPE VBRK-FKART,
       FKDAT TYPE VBRK-FKDAT,
       KNUMV TYPE VBRK-KNUMV,
       NETWR TYPE VBRK-NETWR,
       KUNRG TYPE VBRK-KUNRG,
       MWSBK TYPE VBRK-MWSBK,
       NAME1 TYPE KNA1-NAME1,
       INV_VALUE TYPE VBRK-NETWR,
       CD TYPE NETWR,
       AREA TYPE KNVP-PERNR,
       TAXA TYPE KONV-KAWRT,
       KWERT TYPE KONV-KWERT,
       KBETR TYPE KONV-KBETR,
       PERNR LIKE KNVP-PERNR,
       PARVW LIKE KNVP-PARVW,
      PERNR TYPE KNVP-PERNR,
      MATNR LIKE MARA-MATNR,
       PRODUCTCODE LIKE ZPROD_CODE-PRODUCTCODE,
       PRODUCTDESC LIKE ZPROD_CODE-PRODUCTDESC,
       WERKS_1 TYPE STRING,
       MATNR LIKE MARA-MATNR,
      FKIMG TYPE VBRP-FKIMG,
       VOLUM TYPE VBRP-VOLUM,
       EXNUM LIKE J_1IEXCHDR-EXNUM,
       EXBED LIKE J_1IEXCHDR-EXBED,
       ECS LIKE J_1IEXCHDR-ECS,
       EXADDTAX1 LIKE J_1IEXCHDR-EXADDTAX1,
       TOTAL1 LIKE VBRK-NETWR,
       MEINS LIKE MARA-MEINS,
       ERFMG LIKE MSEG-ERFMG,
       STEUC LIKE MARC-STEUC,
       POSNR TYPE POSNR_VF,
       END OF T_HEADER.
TYPES: BEGIN OF T_CUST,
       KUNNR TYPE KNA1-KUNNR,
       NAME1 TYPE KNA1-NAME1,
      WERKS LIKE VBRP-WERKS,
      PERNR LIKE KNVP-PERNR,
       END OF T_CUST.
TYPES: BEGIN OF T_KNVP,
       PERNR TYPE KNVP-PERNR,
       PARVW TYPE KNVP-PARVW,
       KUNNR TYPE KNA1-KUNNR,
       END OF T_KNVP.
TYPES: BEGIN OF T_KONV,
       KNUMV TYPE KONV-KNUMV,
       KSCHL TYPE KONV-KSCHL,
      KBETR TYPE KONV-KWERT,
       KPOSN TYPE KPOSN,
       KAWRT TYPE KONV-KAWRT,
       KBETR TYPE KONV-KBETR,
       KWERT TYPE KONV-KWERT,
       END OF T_KONV.
TYPES: BEGIN OF T_MSEG,
      MATNR LIKE MSEG-MATNR,
      ERFMG LIKE MSEG-ERFMG,
      BWART LIKE MSEG-BWART,
      KZBEW LIKE MSEG-KZBEW,
      CHARG LIKE MSEG-CHARG,
      END OF T_MSEG.
DATA: IT_HEADER TYPE STANDARD TABLE OF T_HEADER WITH HEADER LINE,
      WA_HEADER TYPE T_HEADER,
      IT_HEADER1 TYPE STANDARD TABLE OF T_HEADER WITH HEADER LINE,
      WA_HEADER1 TYPE T_HEADER,
      IT_CUST TYPE STANDARD TABLE OF T_CUST,
      WA_CUST TYPE T_CUST,
      IT_KONV TYPE STANDARD TABLE OF T_KONV,
      WA_KONV TYPE T_KONV,
      IT_KONV1 TYPE STANDARD TABLE OF T_KONV,
      WA_KONV1 TYPE T_KONV,
      IT_VBRP TYPE STANDARD TABLE OF T_VBRP,
      WA_VBRP TYPE T_VBRP,
      IT_VBRP1 TYPE STANDARD TABLE OF T_VBRP,
      WA_VBRP1 TYPE T_VBRP,
      V_NAME1 TYPE T001W-NAME1,
      IT_JIVP TYPE STANDARD TABLE OF T_KONV,
      WA_JIVP TYPE T_KONV,
      IT_KNVP TYPE STANDARD TABLE OF T_KNVP,
      WA_KNVP TYPE T_KNVP,
      IT_MSEG TYPE STANDARD TABLE OF T_MSEG,
      WA_MSEG TYPE T_MSEG.
*DATA: IT_VBRP TYPE STANDARD TABLE OF VBRP WITH HEADER LINE.
DATA: V_REPID  LIKE SY-REPID.
DATA:IT_DESC TYPE STANDARD TABLE OF MARA WITH HEADER LINE.
DATA :ST_LAYOUT     TYPE  SLIS_LAYOUT_ALV,
      IT_FIELDCAT   TYPE  SLIS_T_FIELDCAT_ALV,
      IT_LISTHEADER TYPE  SLIS_T_LISTHEADER,
      IT_EVENT      TYPE  SLIS_T_EVENT.
TABLES  ZPROD_CODE.
DATA: BEGIN OF IT_MARA OCCURS 0,
      MATNR LIKE MARA-MATNR,
      MEINS LIKE MARA-MEINS,
      EXTWG LIKE MARA-EXTWG,
      END OF IT_MARA.
DATA: BEGIN OF IT_MARC OCCURS 0,
      MATNR LIKE MARC-MATNR,
      STEUC LIKE MARC-STEUC,
     MEINS LIKE MARA-MEINS,
      END OF IT_MARC.
DATA : BEGIN OF IT_J_1IEXCHDR OCCURS 0,
       EXNUM LIKE J_1IEXCHDR-EXNUM,
       EXGRP LIKE J_1IEXCHDR-EXGRP,
       SRGRP LIKE J_1IEXCHDR-SRGRP,
       RDOC LIKE J_1IEXCHDR-RDOC,
       EXBED LIKE J_1IEXCHDR-EXBED,
       ECS LIKE J_1IEXCHDR-ECS,
       EXADDTAX1 LIKE J_1IEXCHDR-EXADDTAX1,
       END OF IT_J_1IEXCHDR.
DATA:IT_J_1IEXCDTL TYPE STANDARD TABLE OF J_1IEXCDTL WITH HEADER LINE.
DATA : VAR TYPE VBRK-NETWR.
DATA:It_age type Standard table of Zageing with header line.
SELECTION-SCREEN BEGIN OF BLOCK B WITH FRAME TITLE TEXT-001 .
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
SELECT-OPTIONS :  S_DATE FOR VBRK-FKDAT,
                  S_WERKS FOR ZDAILY-WERKS NO-EXTENSION NO INTERVALS OBLIGATORY,
                  P_PERNR FOR KNVP-PERNR NO-EXTENSION NO INTERVALS,
                  S_GROUP FOR MARA-EXTWG, " OBLIGATORY,
                  S_EXGRP FOR J_1IEXCHDR-EXGRP  NO-EXTENSION.
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN END OF BLOCK B.
SELECTION-SCREEN BEGIN OF BLOCK A WITH FRAME TITLE TEXT-001 .
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME.
SELECTION-SCREEN END OF BLOCK B2.
SELECTION-SCREEN END OF BLOCK A.
     AT-Selection-Screen                                              *
AT SELECTION-SCREEN.
IF IT_AGE[] IS NOT INITIAL.
  LOOP AT S_WERKS.
   READ TABLE IT_AGE WITH KEY USERID = SY-UNAME
                              WERKS = S_WERKS-LOW.
     IF SY-SUBRC NE 0.
      MESSAGE 'You are not authorised to View the Plant' TYPE 'E'.
     ENDIF.
  ENDLOOP.
  ENDIF.
*INITIALIZATION
INITIALIZATION.
  V_REPID = SY-REPID.
  SELECT * FROM ZAGEING INTO CORRESPONDING FIELDS OF TABLE IT_AGE
                                                  WHERE USERID = SY-UNAME.
    IF SY-SUBRC = 0.
     LOOP AT IT_AGE.
      S_WERKS-SIGN  = 'I'.
      S_WERKS-OPTION  = 'BT'.
      S_WERKS-LOW = IT_AGE-WERKS.
      APPEND S_WERKS.
      CLEAR S_WERKS.
       endloop.
ENDif.
*START-OF-SELECTION
START-OF-SELECTION.
PERFORM GET_DATA USING S_DATE.
  PERFORM GET_EVENT USING IT_EVENT.
  PERFORM FILL_LISTHEADER USING IT_LISTHEADER.
  PERFORM DISPLAY.
*&      Form  GET_DATA
      text
-->  p1        text
<--  p2        text
FORM GET_DATA USING O_S_DATE.
SELECT VBELN FKART FKDAT NETWR MWSBK KUNRG KNUMV FROM VBRK INTO CORRESPONDING FIELDS OF TABLE IT_HEADER
WHERE FKDAT IN S_DATE AND
       FKART = 'JEX'.
*LOOP AT IT_HEADER.
SORT IT_HEADER BY VBELN.
SELECT VBELN FKIMG MATNR MEINS VOLUM POSNR CHARG FROM VBRP INTO CORRESPONDING FIELDS OF TABLE IT_VBRP FOR ALL ENTRIES IN IT_HEADER
                                   WHERE VBELN = IT_HEADER-VBELN
                                   AND   WERKS IN S_WERKS.
*READ TABLE IT_HEADER WITH KEY FKART = 'JEX'.
*ENDLOOP.
  SELECT AVBELN AMATNR AFKIMG AVOLUM APOSNR BFKDAT BNETWR BMWSBK BKUNRG BKNUMV             "Changed by
                              INTO CORRESPONDING FIELDS OF TABLE IT_HEADER
                              FROM VBRP AS A INNER JOIN VBRK AS B ON AVBELN = BVBELN
                              INNER JOIN MARA AS C ON CMATNR = AMATNR
                              WHERE WERKS IN S_WERKS AND EXTWG IN S_GROUP
                              AND  FKDAT IN  S_DATE AND  FKART = 'JEX'.
  DELETE IT_HEADER WHERE FKIMG = 0.
  IF IT_HEADER[] IS NOT INITIAL.
    SELECT MATNR MEINS EXTWG
              FROM MARA INTO TABLE IT_MARA
              FOR ALL ENTRIES IN IT_HEADER
              WHERE MATNR = IT_HEADER-MATNR
              AND EXTWG IN S_GROUP.
    SELECT MATNR ERFMG BWART KZBEW WERKS
                FROM MSEG
                INTO CORRESPONDING FIELDS OF TABLE IT_MSEG
                FOR ALL ENTRIES IN IT_HEADER
                WHERE MATNR = IT_HEADER-MATNR AND
                BWART = '101' AND KZBEW = 'F'
                AND WERKS IN S_WERKS.
  ENDIF.
LOOP AT IT_MARA.
   LOOP AT IT_VBRP INTO WA_VBRP WHERE MATNR = IT_MARA-MATNR.
     IF SY-SUBRC = 0.
       WA_VBRP1 = WA_VBRP.
       APPEND WA_VBRP1 TO IT_VBRP1 .
       CLEAR : WA_VBRP,WA_VBRP1.
     ENDIF.
   ENDLOOP.
ENDLOOP.
REFRESH IT_VBRP.
CLEAR  I.
IT_VBRP = IT_VBRP1.
LOOP AT IT_VBRP INTO WA_VBRP .
   READ TABLE IT_HEADER INTO WA_HEADER WITH KEY VBELN = WA_VBRP-VBELN.
   IF SY-SUBRC = 0.
     WA_HEADER-POSNR = WA_VBRP-POSNR.
     WA_HEADER1 = WA_HEADER.
     APPEND WA_HEADER1 TO IT_HEADER1.
     CLEAR WA_HEADER1.
   ENDIF.
ENDLOOP.
REFRESH IT_HEADER.
CLEAR  IT_HEADER.
SORT IT_HEADER1 BY VBELN.
DELETE ADJACENT DUPLICATES FROM IT_HEADER1 COMPARING VBELN POSNR.
IT_HEADER[] = IT_HEADER1[].
IF NOT IT_VBRP[] IS INITIAL.
ENDIF.
SELECT  KUNNR NAME1 FROM KNA1 INTO CORRESPONDING FIELDS OF TABLE IT_CUST FOR ALL ENTRIES IN IT_HEADER WHERE KUNNR = IT_HEADER-KUNRG.
SELECT PERNR KUNNR FROM KNVP INTO CORRESPONDING FIELDS OF TABLE IT_KNVP FOR ALL ENTRIES IN IT_CUST
                               WHERE KUNNR = IT_CUST-KUNNR
                               AND PARVW = 'VE'
                               AND PERNR IN P_PERNR.
  IF NOT IT_HEADER[] IS INITIAL.
    SELECT KNUMV KSCHL KBETR KPOSN KAWRT KWERT FROM KONV INTO CORRESPONDING FIELDS OF TABLE IT_KONV FOR ALL ENTRIES IN IT_HEADER WHERE KNUMV = IT_HEADER-KNUMV
                                                                                AND KSCHL IN ('ZTRA').
  ENDIF.
LOOP AT IT_VBRP INTO WA_VBRP .
   READ TABLE IT_KONV INTO WA_KONV WITH KEY KPOSN = WA_VBRP-POSNR.
   IF SY-SUBRC = 0.
     WA_KONV1 = WA_KONV.
     APPEND WA_KONV1 TO IT_KONV1.
     CLEAR WA_KONV1.
   ENDIF.
ENDLOOP.
REFRESH IT_KONV.
IT_KONV = IT_KONV1.
  IF NOT IT_header[] IS INITIAL.
    SELECT EXNUM EXGRP RDOC EXBED ECS EXADDTAX1 FROM J_1IEXCHDR INTO CORRESPONDING FIELDS OF TABLE IT_J_1IEXCHDR
                                FOR ALL ENTRIES IN IT_VBRP WHERE RDOC = IT_VBRP-VBELN AND EXGRP IN S_EXGRP.
  ENDIF.
  IF NOT IT_J_1IEXCHDR[] IS INITIAL.
    SELECT * FROM J_1IEXCDTL INTO TABLE IT_J_1IEXCDTL FOR ALL ENTRIES IN IT_J_1IEXCHDR WHERE EXNUM = IT_J_1IEXCHDR-EXNUM.
  ENDIF.
  SELECT MATNR STEUC FROM MARC INTO TABLE IT_MARC FOR ALL ENTRIES IN IT_VBRP WHERE MATNR = IT_VBRP-MATNR AND WERKS IN S_WERKS.
  SORT IT_VBRP BY VBELN POSNR.
  LOOP AT IT_HEADER INTO WA_HEADER.
   READ TABLE IT_VBRP INTO WA_VBRP WITH KEY VBELN = WA_HEADER-VBELN.
   IF SY-SUBRC = 0.
      READ TABLE IT_J_1IEXCHDR WITH KEY RDOC = wa_header-VBELN.
      IF SY-SUBRC = 0.
       WA_HEADER-MATNR = wa_header-MATNR.
       WA_HEADER-VBELN = wa_header-VBELN.
   WA_HEADER-VOLUM = WA_VBRP-VOLUM.
       WA_HEADER-MEINS = WA_VBRP-MEINS.
       WA_HEADER-VOLUM = WA_HEADER-VOLUM + WA_VBRP-FKIMG.
        READ TABLE IT_MARC WITH KEY MATNR = wa_header-MATNR.
        WA_HEADER-STEUC = IT_MARC-STEUC.
        READ TABLE IT_MSEG INTO WA_MSEG WITH KEY MATNR = WA_HEADER-MATNR.
        IF SY-SUBRC = 0.
          WA_HEADER-ERFMG = WA_MSEG-ERFMG.
        ENDIF.
        LOOP AT IT_J_1IEXCDTL WHERE EXNUM = IT_J_1IEXCHDR-EXNUM AND MATNR = WA_HEADER-MATNR. "RDOC = WA_VBRP-VBELN.
          WA_HEADER-EXNUM = IT_J_1IEXCDTL-EXNUM.
          WA_HEADER-EXBED = WA_HEADER-EXBED + IT_J_1IEXCDTL-EXBED.
          WA_HEADER-ECS   = WA_HEADER-ECS + IT_J_1IEXCDTL-ECS.
          WA_HEADER-EXADDTAX1 = WA_HEADER-EXADDTAX1 + IT_J_1IEXCDTL-EXADDTAX1.
        ENDLOOP.
        LOOP AT IT_KONV INTO WA_KONV WHERE KNUMV = WA_HEADER-KNUMV.
          WA_HEADER-PERNR = WA_KNVP-PERNR.
          WA_HEADER-NAME1 = WA_CUST-NAME1.
          IF WA_KONV-KSCHL = 'ZTRA'.
            WA_HEADER-KWERT = WA_KONV-KWERT.
          ENDIF.
        ENDLOOP.
        SELECT SINGLE * FROM ZPROD_CODE WHERE PRODUCTCODE = WA_HEADER-MATNR+6(4).
        WA_HEADER-PRODUCTDESC = ZPROD_CODE-PRODUCTDESC.
        WA_HEADER-TOTAL1 = WA_HEADER-EXBED + WA_HEADER-ECS  + WA_HEADER-EXADDTAX1.
        MODIFY IT_HEADER FROM WA_HEADER.
     ENDIF.
   ENDIF.
  ENDLOOP.
ENDLOOP.
APPEND WA_HEADER TO IT_HEADER.
  SORT IT_HEADER.
  CLEAR IT_HEADER.
  DELETE IT_HEADER WHERE PRODUCTDESC = ' '.
COLLECT WA_HEADER INTO IT_HEADER.
ENDFORM.

Hi ivan
thanks for your reply. sorry i don't know how to use code tags. my exact problem is, in the below code i am not getting values in the first select statement itself (IT_HEADER---Table).
REPORT  ZSD_DAILY_INVOICE_REGISTER1 NO STANDARD PAGE HEADING.
TABLES: VBAK,
        VBAP,
        VBRK,
        KONV,
        VBRP,
        KNVP,
        MARA,
        J_1IEXCHDR,
        MSEG,
        ZDAILY,
        T001W.
TYPE-POOLS: SLIS.
TYPES: BEGIN OF T_VBRP,
       VBELN TYPE VBRK-VBELN,
       MATNR TYPE VBRP-MATNR,
       FKIMG TYPE VBRP-FKIMG,
       VOLUM TYPE VBRP-VOLUM,
      FKIMG TYPE VBRP-VOLUM,
       POSNR TYPE POSNR_VF,
       WERKS TYPE VBRP-WERKS,
       MEINS TYPE VBRP-MEINS,
       CHARG TYPE VBRP-CHARG,
       END OF T_VBRP.
*DATA: IT_VBRP TYPE STANDARD TABLE OF VBRP WITH HEADER LINE.
TYPES: BEGIN OF T_HEADER,
       VBELN TYPE VBRK-VBELN,
       FKIMG TYPE VBRP-FKIMG,
       FKART TYPE VBRK-FKART,
       FKDAT TYPE VBRK-FKDAT,
       NETWR TYPE VBRK-NETWR,
       MWSBK TYPE VBRK-MWSBK,
       KUNRG TYPE VBRK-KUNRG,
       NAME1 TYPE KNA1-NAME1,
       INV_VALUE TYPE VBRK-NETWR,
       CD TYPE NETWR,
       KNUMV TYPE VBRK-KNUMV,
       AREA TYPE KNVP-PERNR,
       TAXA TYPE KONV-KAWRT,
       KWERT TYPE KONV-KWERT,
       KBETR TYPE KONV-KBETR,
       PERNR LIKE KNVP-PERNR,
       PARVW LIKE KNVP-PARVW,
      PERNR TYPE KNVP-PERNR,
      MATNR LIKE MARA-MATNR,
       PRODUCTCODE LIKE ZPROD_CODE-PRODUCTCODE,
       PRODUCTDESC LIKE ZPROD_CODE-PRODUCTDESC,
       WERKS_1 TYPE STRING,
       MATNR LIKE MARA-MATNR,
      FKIMG TYPE VBRP-FKIMG,
       VOLUM TYPE VBRP-VOLUM,
       EXNUM LIKE J_1IEXCHDR-EXNUM,
       EXBED LIKE J_1IEXCHDR-EXBED,
       ECS LIKE J_1IEXCHDR-ECS,
       EXADDTAX1 LIKE J_1IEXCHDR-EXADDTAX1,
       TOTAL1 LIKE VBRK-NETWR,
       MEINS LIKE MARA-MEINS,
       ERFMG LIKE MSEG-ERFMG,
       STEUC LIKE MARC-STEUC,
       POSNR TYPE POSNR_VF,
       END OF T_HEADER.
TYPES: BEGIN OF T_CUST,
       KUNNR TYPE KNA1-KUNNR,
       NAME1 TYPE KNA1-NAME1,
      WERKS LIKE VBRP-WERKS,
      PERNR LIKE KNVP-PERNR,
       END OF T_CUST.
TYPES: BEGIN OF T_KNVP,
       PERNR TYPE KNVP-PERNR,
       PARVW TYPE KNVP-PARVW,
       KUNNR TYPE KNA1-KUNNR,
       END OF T_KNVP.
TYPES: BEGIN OF T_KONV,
       KNUMV TYPE KONV-KNUMV,
       KSCHL TYPE KONV-KSCHL,
      KBETR TYPE KONV-KWERT,
       KPOSN TYPE KPOSN,
       KAWRT TYPE KONV-KAWRT,
       KBETR TYPE KONV-KBETR,
       KWERT TYPE KONV-KWERT,
       END OF T_KONV.
TYPES: BEGIN OF T_MSEG,
      MATNR LIKE MSEG-MATNR,
      ERFMG LIKE MSEG-ERFMG,
      BWART LIKE MSEG-BWART,
      KZBEW LIKE MSEG-KZBEW,
      CHARG LIKE MSEG-CHARG,
      END OF T_MSEG.
DATA: IT_HEADER TYPE STANDARD TABLE OF T_HEADER WITH HEADER LINE,
      WA_HEADER TYPE T_HEADER,
      IT_HEADER1 TYPE STANDARD TABLE OF T_HEADER WITH HEADER LINE,
      WA_HEADER1 TYPE T_HEADER,
      IT_CUST TYPE STANDARD TABLE OF T_CUST,
      WA_CUST TYPE T_CUST,
      IT_KONV TYPE STANDARD TABLE OF T_KONV,
      WA_KONV TYPE T_KONV,
      IT_KONV1 TYPE STANDARD TABLE OF T_KONV,
      WA_KONV1 TYPE T_KONV,
      IT_VBRP TYPE STANDARD TABLE OF T_VBRP,
      WA_VBRP TYPE T_VBRP,
      IT_VBRP1 TYPE STANDARD TABLE OF T_VBRP,
      WA_VBRP1 TYPE T_VBRP,
      V_NAME1 TYPE T001W-NAME1,
      IT_JIVP TYPE STANDARD TABLE OF T_KONV,
      WA_JIVP TYPE T_KONV,
      IT_KNVP TYPE STANDARD TABLE OF T_KNVP,
      WA_KNVP TYPE T_KNVP,
      IT_MSEG TYPE STANDARD TABLE OF T_MSEG,
      WA_MSEG TYPE T_MSEG.
*DATA: IT_VBRP TYPE STANDARD TABLE OF VBRP WITH HEADER LINE.
DATA: V_REPID  LIKE SY-REPID.
DATA:IT_DESC TYPE STANDARD TABLE OF MARA WITH HEADER LINE.
DATA :ST_LAYOUT     TYPE  SLIS_LAYOUT_ALV,
      IT_FIELDCAT   TYPE  SLIS_T_FIELDCAT_ALV,
      IT_LISTHEADER TYPE  SLIS_T_LISTHEADER,
      IT_EVENT      TYPE  SLIS_T_EVENT.
TABLES  ZPROD_CODE.
DATA: BEGIN OF IT_MARA OCCURS 0,
      MATNR LIKE MARA-MATNR,
      EXTWG LIKE MARA-EXTWG,
      MEINS LIKE MARA-MEINS,
      END OF IT_MARA.
DATA: BEGIN OF IT_MARC OCCURS 0,
      MATNR LIKE MARC-MATNR,
      STEUC LIKE MARC-STEUC,
     MEINS LIKE MARA-MEINS,
      END OF IT_MARC.
DATA : BEGIN OF IT_J_1IEXCHDR OCCURS 0,
       EXNUM LIKE J_1IEXCHDR-EXNUM,
       EXGRP LIKE J_1IEXCHDR-EXGRP,
       SRGRP LIKE J_1IEXCHDR-SRGRP,
       RDOC LIKE J_1IEXCHDR-RDOC,
       EXBED LIKE J_1IEXCHDR-EXBED,
       ECS LIKE J_1IEXCHDR-ECS,
       EXADDTAX1 LIKE J_1IEXCHDR-EXADDTAX1,
       END OF IT_J_1IEXCHDR.
DATA:IT_J_1IEXCDTL TYPE STANDARD TABLE OF J_1IEXCDTL WITH HEADER LINE.
DATA : VAR TYPE VBRK-NETWR.
DATA:It_age type Standard table of Zageing with header line.
SELECTION-SCREEN BEGIN OF BLOCK B WITH FRAME TITLE TEXT-001 .
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
SELECT-OPTIONS :  S_DATE FOR VBRK-FKDAT,
                  S_WERKS FOR ZDAILY-WERKS NO-EXTENSION NO INTERVALS OBLIGATORY,
                 P_PERNR FOR KNVP-PERNR NO-EXTENSION NO INTERVALS,
                  S_GROUP FOR MARA-EXTWG, " OBLIGATORY,
                  S_EXGRP FOR J_1IEXCHDR-EXGRP  NO-EXTENSION.
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN END OF BLOCK B.
SELECTION-SCREEN BEGIN OF BLOCK A WITH FRAME TITLE TEXT-001 .
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME.
SELECTION-SCREEN END OF BLOCK B2.
SELECTION-SCREEN END OF BLOCK A.
     AT-Selection-Screen                                              *
AT SELECTION-SCREEN.
  IF IT_AGE[] IS NOT INITIAL.
  LOOP AT S_WERKS.
     READ TABLE IT_AGE WITH KEY USERID = SY-UNAME
                                WERKS = S_WERKS-LOW.
     IF SY-SUBRC NE 0.
      MESSAGE 'You are not authorised to View the Plant' TYPE 'E'.
     ENDIF.
  ENDLOOP.
  ENDIF.
*INITIALIZATION
INITIALIZATION.
  V_REPID = SY-REPID.
  SELECT * FROM ZAGEING INTO CORRESPONDING FIELDS OF TABLE IT_AGE
                                                  WHERE USERID = SY-UNAME.
    IF SY-SUBRC = 0.
     LOOP AT IT_AGE.
      S_WERKS-SIGN  = 'I'.
      S_WERKS-OPTION  = 'BT'.
      S_WERKS-LOW = IT_AGE-WERKS.
      APPEND S_WERKS.
      CLEAR S_WERKS.
endloop.
     ENDif.
*START-OF-SELECTION
START-OF-SELECTION.
  PERFORM GET_DATA.
  PERFORM GET_EVENT USING IT_EVENT.
  PERFORM FILL_LISTHEADER USING IT_LISTHEADER.
  PERFORM DISPLAY.
*&      Form  GET_DATA
      text
-->  p1        text
<--  p2        text
FORM GET_DATA .
  SELECT AVBELN AMATNR AFKIMG AVOLUM APOSNR BFKDAT BNETWR BMWSBK BKUNRG BKNUMV   INTO CORRESPONDING FIELDS OF TABLE IT_HEADER
                              FROM VBRP AS A INNER JOIN VBRK AS B ON AVBELN = BVBELN
                              INNER JOIN MARA AS C ON CMATNR = AMATNR
                              WHERE WERKS IN S_WERKS AND EXTWG IN S_GROUP
                              AND  FKDAT IN  S_DATE AND  FKART = 'JEX'.
  DELETE IT_HEADER WHERE FKIMG = 0.

Similar Messages

  • Purchasing Report for invoice and stock

    Hi guys,
    in your opinion does it exist a unique report which contains the following informations for suppliers:
    -          invoice codes from supplier not yet paid
    -          POu2019s to supplier not yet delivered
    -          ATH stock at supplier
    At the moment my customer separates informations per supplier  via FBL1N (invoices not paid), ME2L or ME2M (open for delivery), and MB52 (special stock, type O)
    Iu2019m looking for a solution were this 3 information will show on 1 screen by entering the supplier.I have tyed with ME2M but it is not sufficient...
    Thanks in advance best regards
    Massimiliano

    hi,
    What are you trying to get is an Updates from three different area, which are not connected to each other..
    FBL1N will get updated once the Payement is done,
    ME2M would be updated once the GR is done, (ME2M does have any selection Parameter which will include 'Payement done')
    MB52 would be cumulative Stock on Hand (this stock deoesnt link to PO)
    However, you can go for a small Z program to built a customised Report.

  • Classes, invoice program

    I HAVE THE FOLLOWING CODE WHICH IS SUPPOSED TO PRODUCE A SIMPLE INVOICE USING THROUGH A DRIVER PROGRAM AND SETTERS AND GETTERS. BOTH THE INVOICE CODE AND TESTINVOICE CODE SHOW NO PROBLEMS AND COMPILE, I JUST CANT SEEM TO GET IT WORK PROPERLY, WHEN I TRY TO START IT NO DIALOG BOXS APPEAR and nothing seems to happen.
    CAN SOMEONE PLEASE EXPLAIN WHY WHY WHY WHY THIS IS HAPPENING.
    CODE
    public class Invoice
    private String partNumber;
    private String description;
    private double quantity;
    private double price;
    public Invoice()
    partNumber = "";
    description = "";
    quantity = 0;
    price = 0;
    * The setPart method stores value in part field.
    * @param number the value to store in part.
    public void setPartNumber(String piece)
    partNumber = piece;
    * The setDescription method stores value in part field.
    * @param desc the value to store in description.
    public void setDescription(String descrip)
    description = descrip;
    * The setQuantity method stores value in part field.
    * @param quan the value to store in quantity.
    public void setQuantity(double quan)
    quantity = quan;
    * The setPrice method stores value in part field.
    * @param amount the value to store in price.
    public void setPrice(double amount)
    price = amount;
    * The getPart method returns value.
    * @return the value in the part field.
    public String getPartNumber()
    return partNumber;
    * The getdescription method returns value.
    * @return the value in the description field.
    public String getDescription()
    return description;
    * The getQuantity method returns value.
    * @return the value in the quantity field.
    public double getQuantity()
    return quantity;
    * The getPrice method returns value.
    * @return the value in the price field.
    public double getPrice()
    return price;
    THEN I HAVE THE DRIVER PROGRAM NAMED TESTINVOICE, WHICH I HAVE CHANGED AROUND A BIT WITH THE WAY THE SETTERS ARE SET UP BUT NOT SURE IF THIS IS THE CORRECT WAY.
    public class TestInvoice
    String input;
    String piece;
    String descrip;
    double quan;
    double amount;
    public void main(String[] args)
    Invoice myInvoice = new Invoice();
    myInvoice.setPartNumber(piece);
    myInvoice.setDescription(descrip);
    myInvoice.setQuantity(quan);
    myInvoice.setPrice(amount);
    piece = JOptionPane.showInputDialog("Please enter Part Number");
    descrip = JOptionPane.showInputDialog("Please enter Part Description");
    input = JOptionPane.showInputDialog("Please Enter Quantity of Part Required");
    quan = Double.parseDouble(input);
    input = JOptionPane.showInputDialog("Please enter Part Price");
    amount = Double.parseDouble(input);
    JOptionPane.showMessageDialog(null, myInvoice.getPartNumber() + " " + myInvoice.getDescription() + " " +
    " " + myInvoice.getQuantity() + " " + myInvoice.getPrice());
    }

    1. Please use code tags.
    2. In this code, what is price set to by the setPrice call?:
        double amount;
        myInvoice.setPrice(amount);
        amount  = 23.55;
        System.out.println(myInvoice.getPrice()); // what displays here?
    }Message was edited by:
    petes1234

  • Merging issue in BO

    Hello Experts,
    I have records as below
    Universe 1
    Billing Doc.            Material                                     Qty
    0096007994         000000000001398908              1
    0096008110         000000000001398908              2
    Above universe has Billing Doc and material as key.
    Universe 2
    Material                                Counter        Type      Code                           
    000000000001398908         1                  1            03.10.02
    000000000001398908         2                  1            03.10.01
    000000000001398908         1                  2            #
    Above universe has Material, Counter and type as key.
    At BO Webi report level I am merging on Material, there is no other matching char.
    Output is coming as below which is not desired.
    Material                 Invoice                   Code
    1398908               0096008110          03.10.01
    1398908               0096007994          03.10.02
    1398908               0096007994          #
    I need it as :
    Material                 Invoice                   Code
    1398908               0096008110          03.10.01
    1398908               0096008110          03.10.02
    1398908               0096008110         #
    1398908               0096007994          03.10.01
    1398908               0096007994          03.10.02
    1398908               0096007994         #
    If I drag any of material objects, the merged material, Univeerse 1 material, Universe 2 material into report result is 3 records which is not desired.
    Can someone help sp that I get six records.
    Regards,
    Mihir

    HI
    From which Universe the data for invoice object is coming?
    You can check the u201Cavoid duplicate aggregationu201D Property from the Table properties to check the results once again.
    Basically when you merge the queries a full outer join is implied on the queries.
    Regards
    Kultar

  • Txt file read in- StringTokenizer- Try Block Catch for errors

    Hello
    So I am having a few issues with a school project. First is with my ReadWithScanner. It does not read in the file giving me a NullPointerException error on the line <Scanner in = new>. I have tried a few other read in files and they do not seem to be working.
    I am also stuck on the logic on the try block catch statement. How does a person set up a �custom� try block that looks for errors like the ones below? I have attempted to start in the commented code.
    The text file has to read in 1000 individual lines of code and are separated by �;� and should be separated into tokens with the StringTokenizer class what I attempted to do below also. Both are mere attempts and need help�
    This is some what of the logic I thought of doing
    1.Read the first line in first with the scanner class
    2.use delimiter separated by �;�
    3.Tokenizer the line into separate tokens- invoiceCode, fName, lName�
    4.Check classes- check Name, check Date, checkPrice, checkPrice, checkGenre, checkShippingDate invoiceCode = "Error Code" checkInvoiceCode(String invoiceCode)checkName(String name), checkPrice(String price), checkGenre(String genre)
    5.Apply the regular expressions to each try block statement
    a.Assign a letter to each error for example if invoice was to short it would be assigned a letter A
    b.If invoice does have the right characters it would be assigned B
    c.If name has to few words it would be assigned D
    d.�
    This is an example of a good field from the text file
    XYG726;Smith,Mr. John M.;29.96;comedy;101008;100604
    Not so good line
    Lu15;Will, Mark;50.00;Science;030305;030807
    The file should then be printed out in the program not to a text file. It only needs to print the invoice number and error code letter assignment.
    If you have any questions feel free to let me know. Thanks for all or any help you have to offer.
    Invoice
    Three upper case letters followed by three digits
    Regular Expression "[A-Z]{3}[0-9]{3}"
    Customer Name
    Should be in the form: last name followed by a <,> optional title (Mrs. Mrs�) then first name optional middle initial Titles must be
    So regular expression something like �[a-z][A-Z]+([A-Z]{1}?[a-z][./})+[a-z][A-Z]�
    Sale Price
    Two decimal digits to the left of the decimal point. The price should not have a leading zero.
    Regular Expression [0-9]{2}*./[0-9]
    Genre
    The genre should only contain lowercase letters. Regular expression �[a-z]�
    ShipDate and Order Date-
    Must be standard dates- MMDDYY. The order date and shipping date has to be after today�s date. Regular expression �[0-9]{2}+[0-9]{2}+[0-9]{2}�
    package Project3;
    import java.util.StringTokenizer;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    import java.io.*;
    import java.util.Scanner;
    public class ReadWithScanner {
    private final File fFile;
    public static void main (String args[]){
    Scanner in = new Scanner(new File("e:\\work_space_java\\Project\\Package3\\movie.txt"));
    Scanner.processLineByLine();
    public ReadWithScanner(String aFileName){
    fFile = new File(aFileName);
    public final void processLineByLine(){
    try {
    //use a Scanner to get each line
    Scanner scanner = new Scanner(fFile);
    while ( scanner.hasNextLine() ){
    processLine( scanner.nextLine() );
    scanner.close();
    catch (IOException ex){
    protected void processLine(String aLine){
    //use a second scanner again to raed the content of each line
    Scanner scanner = new Scanner(aLine);
    scanner.useDelimiter(";");
    if (scanner.hasNext() ){
    //read each file?
    String name = scanner.next();
    String value = scanner.next();
    else {
    scanner.close();
    //Token Names that are seperated
    StringTokenizer st;
    String invoiceCode = st.nextToken();
    String fname = st.nextToken();
    String lname = st.nextToken();
    String price = st.nextToken();
    String genre = st.nextToken();
    String orderDate = st.nextToken();
    String shipDate = st.nextToken();
    String invoiceCode;
    invoiceCode = "A" checkInvoiceCode(String invoiceCode);
    Pattern p = Pattern.compile("[a-z]{6}[A-Z]{6}[0-9]{6}");
    Matcher m = p.matcher(invoiceCode);
    p.matcher(invoiceCode);
    if(m.matches()) {
    System.out.println(invoiceCode);
    else {
    System.out.println ("A");
    try
    invoiceCode = Integer.parseInt(String);
    catch (NumberFormatException e)
    { System.out.println ("B"); System.exit(1); }
    */

    I have made a quite a few updates to my code. Please look it over again. I have also made many comments to help with the logic. Once again if you have any questions please feel free to ask. Sorry about not using the tags before- I was no aware of them. Thanks for the advice sabre150.
    package Project3;
    import java.util.StringTokenizer;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    import java.io.*;
    import java.util.Scanner;
    public class ReadWithScanner {
         private final File fFile;
         public static void main (String args[]){
                   //read in text file from directory currently it can not read the file
                  Scanner in = new Scanner(new File("e:\\work_space_java\\Project\\Package3\\movie.txt"));
                  //Scans each line of the text in
                  Scanner.processLineByLine();
                //assigns new file name to file
                public ReadWithScanner(String aFileName){
                  fFile = new File(aFileName); 
                public final void processLineByLine(){
                  try {
                    //use a Scanner to get each line from the processLineByLine
                    Scanner scanner = new Scanner(fFile);
                    while ( scanner.hasNextLine() ){
                      processLine( scanner.nextLine() );
                    scanner.close();
                  catch (IOException ex){
                protected void processLine(String aLine){
                  //use a second scanner again to read the content of each line
                   //delmiter should then break each line in the text file into seperate "tokens"
                  Scanner scanner = new Scanner(aLine);
                  scanner.useDelimiter(";");
                  if (scanner.hasNext() ){
                       //reads each line from scanner
                    String name = scanner.next();
                  else {
                  scanner.close();
               /*Convert Tokens from Scanner into String Tokenizer with assigment to each variable
                * I am missing something
                * Need to convert each line read from the scanner (name variable) to the String
                * Tokenizer class
              //Tokens names now assigned a varaible
              StringTokenizer st;
              String invoice = st.nextToken();
              String name = st.nextToken();
              String price  = st.nextToken();
              String genre = st.nextToken();
              String orderDate = st.nextToken();
              String shipDate = st.nextToken();
          /*If statments (Try Block Statements?) with Regular Expressions
          * This is where I have the most issues on how to set up
          * "custom" try and block errors trying to match what I have
          * in the regular expressions. 
          * I believe try and catch statements
          * make this easier but I have used 'match' and 'pattern' with if
          * statments.  If try block statements are easier please show!
          * Regular Expressions may not be correct either
           invoice = checkInvoiceCode(invoice);
           //Defined cerita for Inovice are:
           //Error A = Invoice code is too short  
           //Error B = Invoice code does not have the right characters 
           //Error C = Invoice code digits are all zero
           //Checks for error A
           //Has at least six characters
            Pattern invoiceShort = Pattern.compile("{6}");
            Matcher shortInvoice = invoiceShort.matcher(invoice);
            p.matcher(invoiceCode);
            if(m.matches()) {
                 System.out.println(invoice);      
            else {
                 System.out.println ("A");
            //Checks for error B
            //3 Upper Case Letters followed by three numbers,
            Pattern rightChar = Pattern.compile("[A-Z]{3}[0-9]^0{3}");
            Matcher charRight = rightChar.matcher(invoice);
            p.matcher(invoiceCode);
            if(m.matches()) {
                 System.out.println(invoice);
            else {
                     System.out.println ("B");
            //Checks for error C
            //Where the last three digits are not all zeros
            Pattern notZero = Pattern.compile("*{3}^0{3}");
            Matcher ZeroNot = notZero.matcher(invoice);
            p.matcher(invoiceCode);
            if(m.matches()) {
                 System.out.println(invoice); 
                 else {
                     System.out.println ("C");
         //name = checkFullName(name);
         //Error D = Name field has fewer than two words
         //Error E = Name field has more than four words
         //Error F = Name field has no comma
         //Error G = Name field has a bad title 
         //Error H = Name field has a bad initial 
        /*Have a lot more to do...
        * Still need to go through the same if statement or Try Block statements with this data:
        *      String fname = st.nextToken();
              String lname = st.nextToken();
              String price  = st.nextToken();
              String genre = st.nextToken();
              String orderDate = st.nextToken();
              String shipDate = st.nextToken();
        * But for now I would like to see an example of an if statement I could use
        * (if mine is even right) or catch statement- the rest of the project we look
        * for similar certia as defined in the reg exp for invoice
         /*Writes to Report in the Console
         * Prints data into two columns:
         * Invoice Code and Error Type
         //Prints both column Headings
         private void columnHeadings ()
         System.out.println (padL("",5) +
         padL("Invoice",20) +padL("",20)+
         padL("Error Code",40));
         //movie is the name of the text file
         private void printMovie(Movie aReport) {
         System.out.println(aReport.getInvoiceCode()+"\t"+
               aReport.getErrorType()+"\t");
      *This method pads the string start to the length newLength leaving the
      *string left justified and returning the result.
      private String padL (String start, int newLength)
         String result = new String (start);
         while (result.length() <= newLength) result += " ";
         return result;
      } // end padL
       * This method pads the string start to the length newLength leaving the
       * string right justified and returning the result.
      private String padR (String start, int newLength)
         String result = new String (start);
         while (result.length() <= newLength) result = " " + result;
         return result;
    // end padRThanks a lot.

  • AddChangeListener on LocalProperty Based on Query

    Hi, i have this code based on Items in a INVOICE, code:
    Table ITEMSINVOICE (Field, ITEM, SerialNumber)
    Table Items (ITEM, NAME) One to Many on ITEMSINVOICE
    Table Serials (ITEM, SERIAL, USED )  (Many to One with Item)
    I've added a Query on my Screen Named (SerialsforArticlenorUSED)
    And finally i've added a local property named Serials with Source Query SerialsforArticlenorUSED named QUERYFORSERIALS
    I need to detect changes when i Select correct Serial from Local Property and put Value on ITEMINVOICE.SERIAL 
    Can anyone help me?
    This is my code, but not working...
    myapp.AñadirArticulos.created = function (screen) {
        function onPropertyChanged2() {
            screen.IncidenciasArticulos.Serie = "1";
        screen.IncidenciasArticulos.addChangeListener(
            "CodigoArtículo", onPropertyChanged);
    //test 1
        screen.addChangeListener(
        "SerialsforArticlenorUSED.Serie", onPropertyChanged2);
    //test 2
        //screen.SerialsforArticlenorUSED.addChangeListener(
        //    "serie", onPropertyChanged2);
    //test 3
        //screen.QUERYFORSERIALS.addChangeListener(
        //    "serie", onPropertyChanged2);
        screen.details.rootContentItem
        .handleViewDispose(function () {
            screen.removeChangeListener(
                "SERIESLIBRES.Serie", onPropertyChanged2);

    To detect changes, how about using SaveChanges_CanExecute,
    call to determine whether this operation is available or not

  • How can I write this query

    Customer Trans          Transaction     Invoice
    Code     Date Type      Amount
    A001     01-JAN-2004     invoice      1000
    A001     01-FEB-2004      Receipt      -1500
    A001     01-MAR-2004     invoice          2000
    A001     01-APR-2002     invoice          2500
    OUTPUT wanted to be...
    Customer Trans     Transaction     Invoice          
    Code     Date Type      Amount     Balance
    A001 01-JAN-2004 invoice 1000          1000
    A001     01-FEB-2004 receipt -1500          500     
    A001     01-MAR-2004 invoice     2000          2500
    A001     01-APR-2002 invoice     2500          5000
    Hi All,
    Please look into the above data, If analytic function LAG(),CASE expression are possible to locate the cursor position in the single query, then any one can help me out about it. I tried but could not.
    Regards,
    Neel.

    You can do this with the SUM analytic function. Taking the emp table, for example,
      1  select ename, sal, SUM(sal) OVER (order by empno)
      2    from emp
      3*  order by empno
    SQL> /
    ENAME                                 SAL SUM(SAL)OVER(ORDERBYEMPNO)
    SMITH                                 800                        800
    ALLEN                                1600                       2400
    WARD                                 1250                       3650
    JONES                                2975                       6625
    MARTIN                               1250                       7875
    BLAKE                                2850                      10725
    CLARK                                2450                      13175
    SCOTT                                3000                      16175
    KING                                 5000                      21175
    TURNER                               1500                      22675
    ADAMS                                1100                      23775
    JAMES                                 950                      24725
    FORD                                 3000                      27725
    MILLER                               1300                      29025
    14 rows selected.Justin
    Distributed Database Consulting, Inc.
    http://www.ddbcinc.com/askDDBC

  • Upload a file in b64 coding???

    Hi, Abapers.
    Recently, I've been told to make a program which could upload a XML file and build an invoice automatically -nothing new at the moment since I've used the codings in other forums (thanks for it).
    The question I've got is that I've been told that the file to upload is codified (sorry for my English) in b64, which mades some of the contents not to be "visible" when I upload the file and transform it from binary. It is consider that the XML file has being set from a signed e-invoice.
    Has anybody done something similar to it?
    Thanks for your helping.

    No way to do it since a signed e-invoice code cannot be transformed.

  • How to enter invoice with two different tax codes in one line?

    Dear friends,
    I have this PO for which I enter the invoice.
    I recieve later a subsequent debit for this PO from the transporter. This subsequent invoice has got extra debits, one with 21% VAT and one with 19% VAT, which means two items with two different tax codes.
    I want to enter this subsequent debit for each item of the PO, and I want to enter both debits in every item of the PO.
    How can I enter in one row in MIRO a debit with two different tax codes.
    Thank you.

    I want in the same line item to enter two tax codes.
    Do you Know if there is any way to do this?
    It is a subsequent debit and it has two items with two different tax codes. I want to enter the subsequent debit for a PO with many items and enter the value of the whole subsequent invoice. So there is the need to enter one line item with two tax codes.
    How can this be done?
    Thank you?

  • Error while posting A/R Downpayment Invoice with Excisable Tax Code.

    While posting A/R Dowpayment Invoice with Excisable Tax Code error of "Unbalanced Transaction" appears. This error does not occur while posting A/R Downpayment Invoices with Non-Excisable Tax Codes.
    Kindly provide a solution for the same.

    SAP Note Number: 1179405
    Error -5002 when trying to copy a document with Sales BOM
    In order to create the delivery via the DI, you need to set the oDoc.Lines.BaseLine value to the LineNum value from the RDR1 table (in the above example you should enter the value 2).
    we set oDoc.Lines.BaseLine=0 before starting the lines loop. This has resolved the issue.
    This note was really helpful and it was found in another query.
    You can also refer to this. https://forums.sdn.sap.com/click.jspa?searchID=19070513&messageID=6178079
    Thanks.
    Edited by: Sadanand Manda on Nov 24, 2008 12:16 PM

  • Getting error while posting invoice in T-code F-02

    Hello,
    When i try to post invoice in T-code F-02 gives me the error message"There is no item category assigned to account bank a/c/company"
    Can any one suggest me why this is error came up and how to resolve this.
    Thanks,
    Lavi

    Hi,
    I think u have activated doc splitting i.e. new gl acconting. Go to
    Financial Accounting (New) > General Ledger Accounting (New) > Business Transactions > Document Splitting  > Classify G/L Accounts for Document Splitting
    And make setting for u r account. Also see all the nodes there are configured, to avoid any other error.
    Regards

  • Wrong Vendor Invoice Posting Due To Wrong Excise Tax Code

    Hi:
    We have created a Purchase Order as per below:
    Qty     10
    Price     100
    Value     1000
    Excsie 10%     0
    Cess     0
    SECess     0
    Value+Excise     1000
    VAT 5%     50
    ValueExciseVAT     1050
    (Please note that the PO was to be created in the following fashion as the Material was excisable)
    Qty     10
    Price     100
    Value     1000
    Excsie 10%     100
    Cess     2
    SECess     1
    Value+Excise     1103
    VAT 5%     55.15
    ValueExciseVAT     1158.15
    We did the Goods Receipt and the FI Document is as follows:
    24340000     Paper Stock     BSX     1,000.00
    13110100     GR/IR-ext proc     WRX     1,000.00-
    We did the Vendor Invoice Posting as follows:
    100183     SIEGWERK INDIA PVT LTD (SICPA)     KBS     1,050.00-
    13110100     GR/IR-ext proc     WRX     1,000.00
    24638100     VAT Recoverable     JP5     50.00
    The Material was issued to Cost Centre
    Later at the time of Excise Invoice posting, we came to know that the Tax Code in the Purchase Order was wrong. Here in our case, we have created separate Tax Code based on Excise Percentage. For example, V1 for VAT 5%, E1 for VAT %+Excise 10.3%.
    To post the excise invoice, we changed the Tax Code in the Purchase Order and did the Excise Posting as follows:
    24820020     CENVAT Inp SHEcess     1.00
    24820000     CENVAT Inp BED     100.00
    24820010     CENVAT InpEcess     2.00
    13113920     CENVAT clearing     103.00-
    My Question:
    a. Is this the correct way?
    b. What about the following FI Entries which got generated when we do the MIRO with actual Tax Code:
    100183     SIEGWERK INDIA PVT LTD (SICPA)     KBS     1,158.15-
    13110100     GR/IR-ext proc     WRX     1,000.00
    13113920     CENVAT clearing     JI1     100.00
    13113920     CENVAT clearing     VS9     2.00
    13113920     CENVAT clearing     JI6     1.00
    24638100     VAT Recoverable     JP5     55.15
    Please guide.
    Regards,

    Thanks Sanjoo for the reply.
    Here my worry is the all the postings have been made in SAP in Production Client.
    The User has already done the postings for MIRO & J1IEX without informing to us, and the volume of transactions is huge.
    We are in the back-log mode and at this stage, we can't go for any reversal . I am Just exploring the alternatives.
    Our MM & FI Users are little bit smart, when ever they do some mistake, they simply say "we will pass a JV" and we are not able to educate them that the JV is not a Solution. Please guide.
    Regards,
    PK

  • Unable to clear the invoice/credit in SAP via T-Code F-04

    Hello Guys,
    Unable to clear the invoice/credit in SAP via  T-Code F-04.
    While I proceed to Clear the cutomer open item i am getting below error.
    " The Entry GB XX Is Missing in Table T059Q".
    Kindly suggest what needs to be done to overcome with this message.
    Thanks and regards,
    Hemanth.

    Hi Hemanth,,
    Hope you are using Classic WHT for your company code in country GB.
    And the Classic WHT tcode XX was maintained in customer master data, but the same code would have been deleted from the system. Since these line items to be cleared also, stored that tax code only. So you are getting this erro in F-04.
    So you need to create the above said tax code in OBA7 and then you will be able to clear the customer line items with F-04.
    Regards,
    Srinu

  • "T-Code" - ACACDATATRANS - Transfer Vendor Invoices to Accruals Engine

    Dear All,
    My Company is considering implementing the accruals engine. To my knowledge the accruals engine does NOT have the functionality to to pay vendor invoices. In particular we are looking to see if it's possible to do Automatic Vendor Prepayments" via the ACCRUALS ENGINE.
    I was about to give up when I came across this T-Code:
    "ACACDATATRANS" - Transfer of Vendor Invoices to the Accruals Engine (AE).
    Would any one be kind enough to post/email me further information on this transaction. Can this transaction be used to:
    > Transfer Invoices to the (AE)
    > Automatically Pay the Invoices
    > And/Or - Automatically - Prepay the invoice (pre-payments)
    I would greatly appreciate any assistance in this matter, and if anyone can provide me with further insight/details to the <b>ACACDATATRANS</b> transaction (links to notes & guides to the above transaction would be greatly appreciated).
    Thanks again
    Kind Regards
    RICK.

    Hello RIck
    I am not an expert in this matters but I have found the following information that may be useful:
    "The report your are trying to use to create accrual objects from vendor invoices is only an example report which should be used as a template for your own. So if you want to use the possibility to create accrual objects automatically from vendor invoices you would have to develop your own selection method with the delivered example function module as template. In transaction ACACDATATRANS you will also find detailed information about it (please read program ACAC_DATA_TRANSFER_EXAMPLE documentation in SE38). But you can also find detailed information about automatic data feed into the accrual engine in the detailed presentation about the accrual engine beginning with slide 79 which you can find via link in the note 633924."
    I have found also this information:
    "There is only the possibility to link the invoice to the accrual engine document (and so indirect with the FI-document). Therefore you can use transaction 'ACACDATATRANS' with the according selections
    methods. Afterwards you have an automatically created accrualobject
    from your invoice and if you now double click the object number in
    the reference date you navigate to the invoice."
    Sorry I cannot be of further help.
    Regards
    Javier

  • Aging report - detailed needs invoice project code

    Dear All,
    Would it be possible for us to have project code (on A/R invoice header) on Aging report - detailed print layout? I found all fields in Aging report - detailed PLD are sys var. Is there a way for us to figure out which sys var is for project code of the invoice? Thanks a lot.
    Regards,
    Yuka

    Unfortunately you can't, you have to recreate it using crystal. In all SAP std reports you only able to show/print what it already shows.

Maybe you are looking for