Need help in Hyperlink to ALV report

Hello Experts,
I want to give hyperlink to Sales Order Number.
I have one report. I am supposed to give hyperlink to Salesorder # so that when user clicks on it,
it should display VA03 transaction.
Can you please guide me how to do this?
Best Regards,
Harish

Hi,
In fieldcatalog make your VBELN column make attribute HOTSPOT = 'X'  and then handle this event in USER COMMAND as
FORM user_command USING r_ucomm LIKE sy-ucomm
                        rs_selfield TYPE slis_selfield.
    IF rs_selfield-fieldname = 'VBELN'.
      READ TABLE it_output INTO wa_output INDEX rs_selfield-tabindex.
      SET PARAMETER ID ''AUN' FIELD wa_output-vbeln.
      CALL TRANSACTION 'VA03' and skip first screen.
    ENDIF.
ENDFORM.

Similar Messages

  • Need help in creating custom crosstab reports

    Hello
    I need some help in creating custom crosstab reports.
    My current report shows the number of events that have occured over the time in a day
    The events and the eventdetails are read from the database before being printed on the crosstab
    i.e something like this.
    Note : there are no events between 3:00-3:59,5:00-5:59;6:00-6:59,7:00-7:59  (not present in the database)
    hence not displayed in the reports
    *08/07/2009*         01:00        02:00         04:00          08:00          10:00*
    Event X                    1               1                 4                 1                  3
    Event Y                   3               3                 2                 2                  1
    Total                        4                4                 6                 3                  4
    So far so good...
    Now i have to enhance my reporting application to include the event details which have not happened i.e to include the time details in the crosstab reports where no events have happened
    08/07/2009             01:00        02:00         03:00          04:00          05:00         6:00         07:00         8:00     9:00     10:00
    Event X                     1               1                0                 4                  0             4             0                1            0           3
    Event Y                     3               3                0                 2                  0             2             0                2            0           1
    Total                         4                4                0                 6                  0             6             0                3            0           4
    I have fell short of ideas this time around to implement such a thing
    Any help in this direction is deeply appreciated
    Regards
    Srivatsa
    Edited by: Srivatsa HG on Jul 8, 2009 10:56 AM

    Hi,
    It seems that you are having issue with Crystal Report Design.
    Post your question in [Crystal Report Design Forum|SAP Crystal Reports;
    That forum is monitored by qualified technicians and you will get a faster response there. Also, all Design queries remain in one place and thus can be easily searched in one place.
    Regards,
    Shweta

  • NEED HELP IN MATRIX WITH GROUP REPORT

    Dear All,
    I need small help in MATRIX WITH GROUP REPORT In Report Builder Test Report
    In my report, having periods as rows and location as columns as shown below,
    1) LOC-A
    JAN-10 FEB-10
    ITEM-GROUP -1 1 2
    ITEM-GROUP-2 3 4
    ITEM-GROUP 3 5 6
    2) LOC- B
    MAR-10 APR-10
    ITEM-GROUP -1 7 8
    ITEM-GROUP-2 9 10
    ITEM-GROUP-3 11 12
    But comming to my requirement, the periods should be in fix in matrix as shown below
    1) JAN-10 FEB-10 MAR-10 APR-10
    LOC-A
    ITEM-GROUP -1 1 2
    ITEM-GROUP-2 3 4
    ITEM-GROUP 3 5 6
    LOC- B
    ITEM-GROUP -1 0 0 7 8
    ITEM-GROUP-2 0 0 9 10
    ITEM-GROUP-3 0 0 11 12
    I am unable to get this kind of output format
    Please kindly waiting for reply from our team....
    Regards
    krishna.P

    For the periods, create a seperate dummy query and then use it as column group in the multi query matrix.

  • Needed select all button in alv report

    Dear Experts,
                    In alv report i want first field as button selectall then remaining fields must be displayed
    this is my code,,
    DEFINE m_fieldcat.
      is_fieldcat-fieldname = &1.
      is_fieldcat-hotspot   = &2.
      is_fieldcat-seltext_m = &3.
      is_fieldcat-col_pos   = &4.
      is_fieldcat-outputlen = &5.
      is_fieldcat-emphasize = &6.
      is_fieldcat-Checkbox  = &7.
      append is_fieldcat to it_fcat.
      clear is_fieldcat.
    END-OF-DEFINITION.
    m_fieldcat 'SLNO'     ''        text-112   '1'   '5'   'C310' ''.
    m_fieldcat 'KPI'      ''        text-110   '2'   '30'  'C310' ''.
    m_fieldcat 'PWEEK'    'X'       text-109   '3'   '16'  'C310' ''.
    m_fieldcat 'CWEEK'    'X'       text-111   '4'   '16'  'C310' ''.
    m_fieldcat 'MONTH'    'X'       text-122   '5'   '16'  'C310' ''.
    m_fieldcat 'PMONTH'   'X'       text-132   '6'   '16'  'C310' ''.
    m_fieldcat 'UOM '      ''       text-138   '7'   '10'  'C310' ''.
    Thanks,
    Thiru. R

    Hi,
    You can keep first field as checkbox. 'Select All' button is present in ALV whnever you use 'REUSE_ALV_GRID' F.M.
    You can click on select all button that appears in ALV grid toolbar and all your checkboxes that appears in first field will get selected. Similar to 'Select All' there is 'Deselct All' button also in ALV grid.
    Regards,
    Saba

  • Need Some help in Developing an ALV report ..Plz help me

    Hi Experts I am basic learner to ABAP Here I need some help in developing a Delivery *** Invoice Report....Please help me by spending a little time..
    Tables are VBAK VBAP LIPS LIKP   and Document floe table is VBFA
      SELECT VBELN VKORG VTWEG SPART
        FROM VBAK
        INTO TABLE I_VBAK
        WHERE VBELN IN S_VBELN.
      IF I_VBAK IS NOT INITIAL .
        SELECT VBELN POSNR MATKL POSAR WERKS
          FROM VBAP
          INTO TABLE I_VBAP
          FOR ALL ENTRIES IN I_VBAK
          WHERE VBELN = I_VBAK-VBELN.
      ENDIF.
      IF I_VBAP IS NOT INITIAL.
        SELECT * FROM LIPS
          INTO CORRESPONDING FIELDS OF TABLE I_LIPS
          WHERE VGBEL = VBAP-VBELN
          AND VGPOS = VBAP-POSNR.
      ENDIF.
      IF I_LIPS IS NOT INITIAL.
        SELECT VBELN VSTEL VKORG KUNNR
        FROM LIKP
        INTO TABLE I_LIKP.
      ENDIF.
    Moderator message : Outsourcing is not allowed, don't expect others to correct your source code. Thread locked.
    Edited by: Vinod Kumar on Aug 1, 2011 5:43 PM

    hi ,
      Look in this link
      <a href="http://help.sap.com/saphelp_nw04/helpdata/en/b3/0ef3e8396111d5b2e80050da4c74dc/frameset.htm">http://help.sap.com/saphelp_nw04/helpdata/en/b3/0ef3e8396111d5b2e80050da4c74dc/frameset.htm</a>
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/21/894eeee0b911d4b2d90050da4c74dc/content.htm">http://help.sap.com/saphelp_nw04/helpdata/en/21/894eeee0b911d4b2d90050da4c74dc/content.htm</a>
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/80/1a62bfe07211d2acb80000e829fbfe/content.htm">http://help.sap.com/saphelp_nw04/helpdata/en/80/1a62bfe07211d2acb80000e829fbfe/content.htm</a>
    Regards
    Renjith Kumar

  • Need to generate Header, item ALV report

    Hi All,
    I need to create an ALV something with like the following format as given bewlo:
    Comapny Code - <Description>     Date From: __/__/__  To __/__/__
    Contract    Sold-to         Ship-to        
    Kindly Help.
    -Ramesh K S Chakradhar

    Ramesh,
    FORM fill_list_header is for header in below code.
    REPORT zvendor_detail LINE-SIZE 255 LINE-COUNT 65.
    ** Vendor payment details
    ** Amit Gujargoud - 2008/07/16
    ** modification history
    ** by   date      description
    TABLES: bsik, bsak, bsis, bsas, bseg, ekpo, lfa1.
    TYPE-POOLS : slis.                              "TYPE POOL SLIS
    SELECTION-SCREEN: BEGIN OF BLOCK blk1 WITH FRAME TITLE text-010,
                      SKIP.
    SELECT-OPTIONS: s_lifnr FOR bsik-lifnr,
                    s_bukrs FOR bsik-bukrs,
                    s_budat FOR bsik-budat.
    PARAMETERS:     p_grdat LIKE bsik-augdt.
    SELECTION-SCREEN: SKIP,
                      END OF BLOCK blk1.
    DATA: BEGIN OF i_docs OCCURS 0,
            lifnr LIKE bseg-lifnr,
            hkont LIKE bseg-hkont,
            dmbtr LIKE bsis-dmbtr,
            kostl LIKE bseg-kostl,
            sgtxt LIKE bseg-sgtxt,
            bukrs LIKE bseg-bukrs,
            belnr LIKE bseg-belnr,
            buzei LIKE bseg-buzei,
            blart LIKE bkpf-blart,
            shkzg LIKE bseg-shkzg,
            budat LIKE bkpf-budat,
            augbl LIKE bseg-augbl,
            gjahr LIKE bseg-gjahr,
            name1 LIKE lfa1-name1,
            flag TYPE c,
            docsum TYPE p DECIMALS 0,
          END OF i_docs.
    DATA: i_revs LIKE i_docs OCCURS 100 WITH HEADER LINE,
          lifnr LIKE i_docs-lifnr,
            bukrs LIKE i_docs-bukrs,
            belnr LIKE i_docs-belnr,
            blart LIKE i_docs-blart,
            hkont LIKE i_docs-hkont,
            dmbtr LIKE i_docs-dmbtr,
            kostl LIKE i_docs-kostl,
            sgtxt LIKE i_docs-sgtxt,
            budat LIKE i_docs-budat,
            total LIKE i_docs-dmbtr,
            gjahr LIKE i_docs-gjahr,
            w_ebeln LIKE ekpo-ebeln,
            w_ebelp LIKE ekpo-ebelp,
            w_zuonr LIKE bseg-zuonr,
            toggle TYPE i VALUE 1.
    DATA: v_grir_acct LIKE bsis-hkont,
          v_coa LIKE t001-ktopl.
    *--------------------------ALV Declearation-----------------------------
    DATA: it_fieldcat     TYPE    slis_t_fieldcat_alv,
          wa_fieldcat     LIKE    LINE OF it_fieldcat,
          it_top_of_page  TYPE    slis_t_listheader,
          ls_layout       TYPE    slis_layout_alv,
          gt_events       TYPE    slis_t_event.
    START-OF-SELECTION.
      CASE sy-mandt.
        WHEN '500'.
          v_coa = 'MACK'.
        WHEN '600'.
          v_coa = 'COA1'.
      ENDCASE.
      PERFORM data_selection."amit
      PERFORM calculation.
      "PERFORM interactive.
    *********************************GET ALV  DATA
      PERFORM alv_get_data.
    *********************************ALV GRID DATA
      PERFORM alv_grid.
      PERFORM top_of_page.
    *&      Form  data_selection
    *       text
    FORM data_selection.
      SELECT konts FROM t030 INTO v_grir_acct
             WHERE ktopl = v_coa
               AND ktosl = 'WRX'.
      ENDSELECT.
      SELECT hkont dmbtr kostl sgtxt bukrs belnr
             buzei blart shkzg budat augbl gjahr
              FROM bsis
              INTO CORRESPONDING FIELDS OF TABLE i_docs
    *                     WHERE hkont = '211200' "goods received w/o invoice
                          WHERE hkont = v_grir_acct
                          AND   bukrs IN s_bukrs
                          AND   budat IN s_budat.
    *                      AND   blart = 'WE'.
      SELECT hkont dmbtr kostl sgtxt bukrs belnr
             buzei blart shkzg budat augbl gjahr
              FROM bsas
              APPENDING CORRESPONDING FIELDS OF TABLE i_docs
    *                     WHERE hkont = '211200' "goods received w/o invoice
                          WHERE hkont = v_grir_acct
                          AND   bukrs IN s_bukrs
                          AND   budat IN s_budat
    *                      AND   blart = 'WE'
                          AND   augdt GE p_grdat.
      LOOP AT i_docs.
        SELECT SINGLE lifnr ebeln ebelp FROM bseg
               INTO (i_docs-lifnr, w_ebeln, w_ebelp)
                                  WHERE bukrs = i_docs-bukrs
                                  AND   belnr = i_docs-belnr
                                  AND   lifnr NE ''.
        " AND   buzei = i_docs-buzei."commented by amit
        IF i_docs-lifnr IN s_lifnr.
          IF NOT w_ebeln IS INITIAL AND i_docs-sgtxt IS INITIAL.
            SELECT SINGLE txz01 FROM ekpo INTO i_docs-sgtxt
                                    WHERE ebeln = w_ebeln
                                    AND   ebelp = w_ebelp.
          ENDIF.
          MODIFY i_docs.
        ELSE.
          DELETE i_docs.
        ENDIF.
      ENDLOOP.
      SELECT lifnr hkont dmbtr kostl sgtxt bukrs belnr
             buzei blart shkzg budat augbl gjahr
             FROM bsik
             APPENDING TABLE i_docs
                         WHERE lifnr IN s_lifnr
                         AND   bukrs IN s_bukrs
                         AND   budat IN s_budat
    *                     AND   blart IN ('KR', 'RE').
                         AND   blart IN ('KR', 'RE', 'KN', 'RN').
    *see if there are reversal documents
      SELECT lifnr hkont dmbtr kostl sgtxt bukrs belnr
             buzei blart shkzg budat augbl gjahr
             FROM bsik
             APPENDING TABLE i_revs
                         WHERE lifnr IN s_lifnr
                         AND   bukrs IN s_bukrs
                         AND   blart IN ('KA').
      SELECT lifnr hkont dmbtr kostl sgtxt bukrs belnr
             buzei blart shkzg budat augbl gjahr
             FROM bsak
             APPENDING TABLE i_docs
                         WHERE lifnr IN s_lifnr
                         AND   bukrs IN s_bukrs
                         AND   budat IN s_budat
    *                     AND   blart IN ('KR', 'RE').
                         AND   blart IN ('KR', 'RE', 'KN', 'RN').
    * check for reversal
      SELECT lifnr hkont dmbtr kostl sgtxt bukrs belnr
             buzei blart shkzg budat augbl gjahr
             FROM bsak
             APPENDING TABLE i_revs
                         WHERE lifnr IN s_lifnr
                         AND   bukrs IN s_bukrs
                         AND   blart IN ('KA').
      SORT: i_docs BY lifnr bukrs budat hkont,
            i_revs BY lifnr bukrs augbl.
    ENDFORM.                    "data_selection
    *&      Form  calculation
    *       text
    FORM calculation.
      LOOP AT i_docs.
        i_docs-docsum = 1.
        MODIFY i_docs TRANSPORTING docsum.
        toggle = toggle * -1.
    *    on CHANGE OF i_docs-lifnr.
        SELECT SINGLE name1 FROM lfa1 INTO i_docs-name1
                            WHERE lifnr = i_docs-lifnr.
        CLEAR total.
        MODIFY i_docs TRANSPORTING name1.
    *    ENDon.
        IF i_docs-blart = 'KR' OR i_docs-blart EQ 'KN'.
          SELECT SINGLE hkont kostl gjahr FROM bseg
               INTO (i_docs-hkont, i_docs-kostl, i_docs-gjahr)
                                  WHERE bukrs = i_docs-bukrs
                                  AND   belnr = i_docs-belnr
                                  AND   kostl <> ' '.
          MODIFY i_docs TRANSPORTING hkont kostl gjahr.
        ELSEIF i_docs-blart = 'RE' OR i_docs-blart = 'RN'.
          SELECT SINGLE hkont kostl gjahr ebeln ebelp FROM bseg
               INTO (i_docs-hkont, i_docs-kostl, i_docs-gjahr,
                     w_ebeln, w_ebelp)
                                  WHERE bukrs = i_docs-bukrs
                                  AND   belnr = i_docs-belnr
                                  AND   ebeln <> ' '.
          MODIFY i_docs TRANSPORTING hkont kostl gjahr.
          IF NOT w_ebeln IS INITIAL
           AND i_docs-sgtxt IS INITIAL.
            SELECT SINGLE txz01 FROM ekpo INTO i_docs-sgtxt
                                    WHERE ebeln = w_ebeln
                                    AND   ebelp = w_ebelp.
            MODIFY i_docs TRANSPORTING sgtxt.
          ENDIF.
        ENDIF.
        CASE i_docs-shkzg.
          WHEN 'S'.
            i_docs-dmbtr = i_docs-dmbtr * -1.
    *        CONDENSE i_docs-dmbtr.
            MODIFY i_docs TRANSPORTING dmbtr.
        ENDCASE.
        lifnr = i_docs-lifnr.
        bukrs = i_docs-bukrs.
        belnr = i_docs-belnr.
        blart = i_docs-blart.
        hkont = i_docs-hkont.
        dmbtr = i_docs-dmbtr.
        kostl = i_docs-kostl.
        sgtxt = i_docs-sgtxt.
        budat = i_docs-budat.
        gjahr = i_docs-gjahr.
    *    PERFORM print_document USING lifnr lfa1-name1 bukrs belnr blart
    *                                 hkont dmbtr kostl sgtxt budat gjahr.
        total = total + dmbtr.
        IF i_docs-blart = 'KR' OR i_docs-blart EQ 'KN'.
          READ TABLE i_revs WITH KEY lifnr = i_docs-lifnr
                                     bukrs = i_docs-bukrs
                                     belnr = i_docs-augbl
                                     blart = 'KA'.
          IF sy-subrc EQ 0.
            dmbtr = i_revs-dmbtr * -1.
            lifnr = i_revs-lifnr.
            bukrs = i_revs-bukrs.
            belnr = i_revs-belnr.
            blart = i_revs-blart.
            hkont = i_revs-hkont.
            kostl = i_revs-kostl.
            sgtxt = space.
            budat = i_revs-budat.
            gjahr = i_revs-gjahr.
    *        PERFORM print_document USING lifnr lfa1-name1 bukrs belnr blart
    *                                    hkont dmbtr kostl sgtxt budat gjahr.
            total = total + dmbtr.
          ENDIF.
        ENDIF.
    *    ON CHANGE OF i_docs-lifnr.
    *      i_docs-flag = 'X'.
    *      SUM.
    **      i_docs-docsum = i_docs-docsum.
    *      i_docs-dmbtr = i_docs-dmbtr.
    *      MODIFY i_docs TRANSPORTING dmbtr flag.
    *    ENDON.
        AT END OF lifnr.
          i_docs-flag = 'X'.
          SUM.
    *      i_docs-docsum = i_docs-docsum.
          i_docs-dmbtr = i_docs-dmbtr.
          MODIFY i_docs TRANSPORTING dmbtr flag.
        ENDAT.
      ENDLOOP.
    *  SORT i_docs STABLE by lifnr  belnr dmbtr  DESCENDING.
      DELETE ADJACENT DUPLICATES FROM i_docs COMPARING belnr.
      "  SORT i_docs  by lifnr dmbtr ASCENDING.
      LOOP AT i_docs.
        AT END OF lifnr.
          SUM.
          i_docs-docsum = i_docs-docsum.
          MODIFY i_docs TRANSPORTING docsum.
        ENDAT.
    * i_docs-docsum = 1.
      ENDLOOP.
      LOOP AT i_docs WHERE flag NE 'X'.
        DELETE i_docs INDEX sy-tabix.
      ENDLOOP.
    ENDFORM."amit
    *FORM interactive.
    *AT LINE-SELECTION.
    *  CHECK belnr NE space.
    *  SET PARAMETER ID: 'BLN' FIELD i_docs-belnr,
    *                    'BUK' FIELD i_docs-bukrs,
    *                    'GJR' FIELD i_docs-gjahr.
    *  CALL TRANSACTION 'FB03'.
    *endform.
    *       FORM print_document                                           *
    *FORM print_document    USING lifnr name1 bukrs belnr blart hkont dmbtr
    *                       kostl sgtxt budat gjahr.
    **  IF toggle GT 0.
    **    FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
    **  ELSE.
    **    FORMAT COLOR COL_NORMAL INTENSIFIED ON.
    **  ENDIF.
    **  WRITE:/ lifnr,
    **          name1,
    **          bukrs,
    **          belnr COLOR COL_KEY HOTSPOT,
    **          blart,
    **      (6) hkont,
    **     (14) dmbtr,
    **      (7) kostl,
    **          sgtxt,
    **          budat.
    *  HIDE: i_docs-belnr, i_docs-lifnr, i_docs-bukrs, i_docs-gjahr.
    *ENDFORM.
    FORM alv_get_data.
      CLEAR it_fieldcat.
    ***************** Vendor Number
      wa_fieldcat-fieldname  = 'LIFNR'.
      wa_fieldcat-seltext_m  = 'Vendor Number'.
      wa_fieldcat-just       = 'L'.
      wa_fieldcat-no_zero(1) = 'X'.
      wa_fieldcat-outputlen  = 15.
      wa_fieldcat-tabname    = 'I_DOCS'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
    ***************** Vendor Name
    *  wa_fieldcat-col_pos    = '2'.                    " ALV O/P COL-1
      wa_fieldcat-fieldname  = 'NAME1'.
      wa_fieldcat-seltext_m  = 'Vendor Name'.
      wa_fieldcat-just       = 'L'.
      wa_fieldcat-no_zero(1) = 'X'.
      wa_fieldcat-outputlen  = 20.
      wa_fieldcat-tabname    = 'I_DOCS'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
    *****************Comapany Code
    *  wa_fieldcat-col_pos    = '2'.                    " ALV O/P COL-1
      wa_fieldcat-fieldname  = 'BUKRS'.
      wa_fieldcat-seltext_m  = 'Comapany Code'.
      wa_fieldcat-just       = 'L'.
      wa_fieldcat-no_zero(1) = 'X'.
      wa_fieldcat-outputlen  = 20.
      wa_fieldcat-tabname    = 'I_DOCS'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
    *********************Doc. Number
    *  wa_fieldcat-fieldname  = 'BELNR'.
    *  wa_fieldcat-seltext_m  = 'Doc. Number'.
    *  wa_fieldcat-just       = 'L'.
    *  wa_fieldcat-tabname    = 'I_DOCS'.
    *  wa_fieldcat-outputlen  = 15.
    *  APPEND wa_fieldcat TO it_fieldcat.
    *  CLEAR wa_fieldcat.
    ********************* Doc. type
    *  wa_fieldcat-fieldname  = 'BLART'.
    *  wa_fieldcat-seltext_l  = 'Doc. type'.
    **  wa_fieldcat-seltext_l  = 'Total number of days'.
    *  wa_fieldcat-just       = 'L'.
    *  wa_fieldcat-tabname    = 'I_DOCS'.
    *  wa_fieldcat-outputlen  = 20.
    *  APPEND wa_fieldcat TO it_fieldcat.
    *  CLEAR wa_fieldcat.
    ********************** GL Code
    *  wa_fieldcat-fieldname  = 'HKONT'.
    *  wa_fieldcat-seltext_l  = 'GL Code'.
    *  wa_fieldcat-just       = 'L'.
    *  wa_fieldcat-tabname    = 'I_DOCS'.
    *  wa_fieldcat-outputlen  = 20.
    *  APPEND wa_fieldcat TO it_fieldcat.
    *  CLEAR wa_fieldcat.
    *********************Amount
      wa_fieldcat-fieldname  = 'DMBTR'.
      wa_fieldcat-seltext_l  = 'Amount'.
      wa_fieldcat-just       = 'R'.
      wa_fieldcat-tabname    = 'I_DOCS'.
      wa_fieldcat-outputlen  = 15.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
    ******************* Cost Center
    *  wa_fieldcat-fieldname  = 'KOSTL'.
    *  wa_fieldcat-seltext_m  = 'Cost Center'.
    *  wa_fieldcat-just       = 'L'.
    *  wa_fieldcat-no_zero(1) = 'X'.
    *  wa_fieldcat-outputlen  = 15.
    *  wa_fieldcat-tabname    = 'I_DOCS'.
    *  APPEND wa_fieldcat TO it_fieldcat.
    *  CLEAR wa_fieldcat.
    ****************** Text
    **  wa_fieldcat-col_pos    = '2'.                    " ALV O/P COL-1
    *  wa_fieldcat-fieldname  = 'SGTXT'.
    *  wa_fieldcat-seltext_m  = 'Text'.
    *  wa_fieldcat-just       = 'L'.
    *  wa_fieldcat-no_zero(1) = 'X'.
    *  wa_fieldcat-outputlen  = 20.
    *  wa_fieldcat-tabname    = 'I_DOCS'.
    *  APPEND wa_fieldcat TO it_fieldcat.
    *  CLEAR wa_fieldcat.
    *****************Posting Date
    *  wa_fieldcat-col_pos    = '2'.                    " ALV O/P COL-1
      wa_fieldcat-fieldname  = 'BUDAT'.
      wa_fieldcat-seltext_m  = 'Posting Date'.
      wa_fieldcat-just       = 'L'.
      wa_fieldcat-no_zero(1) = 'X'.
      wa_fieldcat-outputlen  = 20.
      wa_fieldcat-tabname    = 'I_DOCS'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
    ******************** document sum
      wa_fieldcat-fieldname  = 'DOCSUM'.
      wa_fieldcat-seltext_l  = 'Total number of documents'.
      wa_fieldcat-just       = 'L'.
      wa_fieldcat-tabname    = 'I_DOCS'.
      wa_fieldcat-outputlen  = 20.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR wa_fieldcat.
    ********************* Average Days
    *    wa_fieldcat-fieldname  = 'DAYBET'.
    **  wa_fieldcat-seltext_l  = 'Days between PR creation to PO'.
    *    wa_fieldcat-seltext_l  = 'Total number of days'.
    *    wa_fieldcat-just       = 'L'.
    *    wa_fieldcat-tabname    = 'IT_FINAL'.
    *    wa_fieldcat-outputlen  = 20.
    *    APPEND wa_fieldcat TO it_fieldcat.
    *    CLEAR wa_fieldcat.
    ********************* Average Days
    *    wa_fieldcat-fieldname  = 'AVERAGE'.
    *    wa_fieldcat-seltext_l  = 'Average days per PO'.
    *    wa_fieldcat-just       = 'L'.
    *    wa_fieldcat-tabname    = 'IT_FINAL'.
    *    wa_fieldcat-outputlen  = 20.
    *    APPEND wa_fieldcat TO it_fieldcat.
    *    CLEAR wa_fieldcat.
    ENDFORM.                    "alv_get_data
    *&      Form  alv_grid
    *       text
    FORM alv_grid .
      PERFORM fill_list_header USING it_top_of_page[].
      PERFORM event-build USING gt_events[].
      PERFORM fill_layout USING ls_layout.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          i_callback_program     = sy-repid
    *      i_callback_top_of_page = 'TOP-OF-PAGE'
          is_layout              = ls_layout
          it_fieldcat            = it_fieldcat
          it_events              = gt_events[]
          i_save                 = 'A'
        TABLES
          t_outtab               = i_docs
        EXCEPTIONS
          program_error          = 1
          OTHERS                 = 2.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM.                    " alv_grid
    *&      Form  fill_layout
    *       text
    *      -->P_LS_LAYOUT  text
    FORM fill_layout  USING    p_ls_layout TYPE slis_layout_alv.
      p_ls_layout-zebra       = 'X'.
      p_ls_layout-cell_merge  = 'X'.
    ENDFORM.                    " fill_layout
    *&      Form  fill_list_header
    *       text
    *      -->P_IT_TOP_OF_PAGE[]  text
    FORM fill_list_header  USING p_slis_t_listheader TYPE slis_t_listheader.
      DATA: ls_line   TYPE slis_listheader,
              ls_line_1 TYPE slis_listheader.
      DATA : w_date   TYPE sy-datum,
             w_str    TYPE string,
             str      TYPE string,
             str1      TYPE string,
             str_low1  TYPE string,
             str_high1 TYPE string,
             str_low  TYPE string,
             str_high TYPE string.
      w_str =  'Vendor detail Report '.
      CLEAR ls_line.
      ls_line-typ  = 'H'.
      ls_line-info = w_str.
      APPEND ls_line TO it_top_of_page.
      CLEAR ls_line.
      IF NOT s_lifnr[] IS INITIAL.
        LOOP AT s_bukrs.
          ls_line-typ  = 'S'.
          ls_line-key = 'Vendor Number'.                        "'text-100.
          str_low = s_lifnr-low.
          str_high = s_lifnr-high.
          IF str_high = ' ' .
            MOVE str_low TO str.
          ELSE.
            CONCATENATE str_low str_high INTO str SEPARATED BY ' To '.
          ENDIF.
        ENDLOOP.
        ls_line-typ  = 'S'.
        ls_line-key  = 'Vendor Number'.
        ls_line-info = str.
        APPEND ls_line TO it_top_of_page.
        CLEAR ls_line.
      ENDIF.
      IF NOT s_bukrs[] IS INITIAL.
        LOOP AT s_bukrs.
          ls_line-typ  = 'S'.
          ls_line-key = 'Company Code'.                         "'text-100.
          str_low = s_bukrs-low.
          str_high = s_bukrs-high.
    *       move s_budat-low to str_low.
    *       move s_budat-high to str_high.
          IF str_high = ' ' .
            MOVE str_low TO str.
          ELSE.
            CONCATENATE str_low str_high INTO str SEPARATED BY ' To '.
          ENDIF.
        ENDLOOP.
      ENDIF.
      ls_line-typ  = 'S'.
      ls_line-key  = 'Company Code'.
      ls_line-info = str.
      APPEND ls_line TO it_top_of_page.
      CLEAR ls_line.
      IF NOT s_budat[] IS INITIAL.
        LOOP AT s_budat.
          ls_line-typ  = 'S'.
          ls_line-key = 'Posting DATE'.                         "'text-100.
    ***********date calculation
          CONCATENATE s_budat-low+6(2)  '.' s_budat-low+4(2)  '.' s_budat-low+0(4)  INTO str_low.
          CONCATENATE s_budat-high+6(2) '.' s_budat-high+4(2) '.' s_budat-high+0(4) INTO str_high.
          IF str_high = '' OR str_high = '00.00.0000'.
            MOVE str_low TO str.
          ELSE.
            CONCATENATE str_low str_high INTO str SEPARATED BY ' To '.
          ENDIF.
        ENDLOOP.
        ls_line-typ  = 'S'.
        ls_line-key  = 'Posting DATE'.
        ls_line-info = str.
        APPEND ls_line TO it_top_of_page.
        CLEAR ls_line.
      ENDIF.
    ENDFORM.                    " fill_list_header
    *&      Form  event-build
    *       text
    *      -->P_GT_EVENTS[]  text
    FORM event-build  USING    lt_events TYPE slis_t_event.
      DATA: ls_event     TYPE slis_alv_event.
      MOVE 'TOP_OF_PAGE' TO ls_event-name.
      MOVE 'TOP_OF_PAGE' TO ls_event-form.
      APPEND ls_event    TO lt_events.
      CLEAR ls_event.
    ENDFORM.                    " event-build
    *&      Form  top_of_page
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM top_of_page .
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary = it_top_of_page.
    ENDFORM.                    " top_of_page

  • Need help for creation of aging report of customer

    Hi Experts,
                     I am going to create aging report for custer so have a need of basic concept of creation of aging report.
    Thanks and Regards
    vijay
    Edited by: vijay dwivedi on Mar 9, 2009 1:19 AM

    Hi here is a guide of how to understand the components in an ageing report.Hope this helps
    Customer Receivables Aging Report
    Field
    Description/Activity
    Currency - Click This graphic is explained in the accompanying text and choose the currency in which you want to display the report results.
    The available options include:
    ●     Local currency
    ●     System currency
    ●     Business partner currency
    ●     Any additional currencies defined in SAP Business One
    Aging Date - Displays the aging date entered in the selection criteria window.
    Age By - Choose whether you calculate the age of the receivable according to the due date, posting date, or document date of the document/journal entry.
    Customer Code - Displays the code of the customer.
    Click This graphic is explained in the accompanying text to open the corresponding Business Partner Master Data.
    Customer Name - Displays the name of the customer.
    Total - Displays the total amount of open receivables.
    Figures in brackets mean that you have already received payments from a customer that exceed the amount of the receivables for the period.
    Future Remit. - Displays all open receivables owed by the customer according to the date selected in the Age By field for which the date specified in the Aging Date field has not yet been reached.
    Example:
    The customer has an open A/R Invoice for USD100, due on May 1st.
    Due Date is selected in the Age By field.
    The Aging Date is April 28th.
    Since the invoice is due after the aging date, the invoice amount is displayed in the Future Remit column..
    Letter - Indicates whether a dunning letter was created.
    This column is displayed only when generating the report by Sales Documents and by Due Date
    Time Intervals - These four columns are constructed according to the specifications you made in the Interval field in the selection criteria window.
    SAP Business One displays the relevant open receivables in four columns for the time interval. The amount of future remit is first subtracted from the total sum of receivables.
    ·         Days u2013 Each column represents the number of days entered in the selection criteria window starting from the aging date and backwards. The fourth column includes open receivables for the days prior to the first three columns.
    ·         Months u2013 Each column represents one month starting from the aging date month and backwards. The last column includes open receivables for months prior to the first three months.
    ·         Periods u2013 Each column represents one period (as defined in Administration ® System Initialization ® Posting Periods tab) starting from the aging date period and backwards. The last column includes open receivables for periods prior to the first three periods.
    If the number of periods in your company is less than the 4, the non-relevant columns will be titled as Not Valid.
    Doubtful Debt - Displays the doubtful debt amount if exists.
    Top Total Row - The top total row displays the sum of amounts listed in one column.
    Bottom Total Row - The bottom total row displays the percentage of open receivables for each time interval.
    Thanks
    Kevin

  • Need help on creating a new Report which is similar to SWI6

    Hi There,
        I have task to create a report which gives the values as SWI6 txn. I need to get the values like time stamp, performer etc from swi6. I mean to say my report should contain those values. Can someone help me out with some relevent info?
    Thanks in advance for your contribution
    Reddy

    Hi Sweta,
       First of all Thank you for information.
       It seems that you have provided me with swia T.code prog. The thing is I do not have the workitems to get that info. I only have my BO (AFVC_NETW) as well as network (PS module) number. Based on these 2 values i have to get a report with all the values like when that came in and when did the action take place and who is the performer. Could you please consider this and let me know other sol.
    Thanks
    Reddy

  • Need help in Plsql for Oracle Reports

    Hi i need urgent requirement for this, Kindly guide me. Since i couldnt do.
    Main Table:
    For example: Conside this table: (Card_no, month and year are unique constraint)
    Card_No Name Amount_1 Amount _2 Total Month Year
    1 Justin 50 1000 1050 Jan 2011
    1 Justin 100 500 600 Feb 2011
    2 Charles 50 100 150 Jan 2011
    1 Justin 100 50 150 Jan 2012
    1 Justin 50 1000 1050 Feb 2012
    1 Justin 100 500 600 Mar 2012
    2 Charles 50 100 150 Jan 2012
    1 Justin 100 50 150 Jan 2012
    Now i need Reports like this:
    1. When i select Year as 2012 and select amount1, i need report like this
    Card_No Name Jan Feb Mar Apr May June . . . . Dec Total
    1 Justin 100 50 100 0 0 0 . . . 0 250
    2 Charles 50 0 0 0 0 0 . . . 0 50
    2. If i select many years and select amount1, i need report like this
    Card_No Name Year Jan Feb Mar Apr May June . . . . Dec Total
    1 Justin 2012 100 50 100 0 0 0 . . . 0 250
    1 Justin 2011 50 100 0 0 0 0 0 150
    2 Charles 2012 50 0 0 0 0 0 . . . 0 50
    2 Charles 2011 50 0 0 0 0 0 . . . 0 50
    These are the two requirements
    Kindly guide me and many more suggestion also will be helpful
    Thanks in advance

    Actually you need to use matrix report in you report style to meet your requirement
    however please try below file if you use oracle 10g (I am not much sure as it was checked long time back)
    https://docs.google.com/file/d/0B6k7l8hLvpK2UnJwUDFRR1N5d2s/edit
    Best of luck
    Edited by: AppsLearner on Aug 3, 2012 12:49 AM

  • Need help in migrating SAP Bex Reports to BO

    Hi Experts,
       We have a requirment where we have to transfer bex reports to BO. Now my question is
    whether all the logic performed in Bex Query designer is possible to achive in BO?
    Like Customer Exit codes, Filters, Conditions,Exceptions ,Cell Definitions,Hierarchies,
        Variables (text,charateritisc etc) .
    Please can anyone suggest me on this any sort of document or material is very helpful.
    Thanks & Regards
    Sameer Khan

    Hi,
    Customer exit we can't write in BO,it need to be in Bex side only.
    Filters-we can define any where.
    Variables(char)-we can define any where but i'm not sure about Text variables.
    Please have a look  at the below links
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/008d15dc-f76c-2b10-968a-fafe5a121129
    https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b0320722-741c-2c10-afab-93b5c0fc7e96
    Thanks

  • Need help with hyperlinks in InDesign CS3 to PDF

    I've done everything I can see in the forums, in the InDesign help and in InDesign for Dummies... but other than spelling out the entire URL in the text (IE where you can see it in the document) I cannot get a URL hyperlink to work after exporting it to a PDF file. The sample document I used does show the link in the hyperlink pallette... I can even use the "forward" and "back" to identify the link in the document and actually open the link online from there. But - the link is not working in the PDF file. What am I doing wrong? I'm totally confused. Normaly, I figure these kinds of things out and this one seemed to be simple/straight forward.
    Thanks!

    If you're not using tagged PDF, then use it. If you are, disable it. Also, make sure you're fully patched to 5.0.4.
    Bob

  • Need help! in purchase order report..

    Hai,
    I need to write a report
    "<b>Interactive report</b> to display all the Purchase Orders for the Purchasing Organization and display the total, and individual values of all the Purchase Orders."
    what are the tables to use for the above report ?
    which field is used for Line-selection( for interactive report)
    thanks in advance

    Hi,
    Use the tables EKKO, EKPO and fetch the data and display.
    On the basic list display the only EKKO data of the Purchase orgn
    and in the second list Interactive  use the EKPO details and do the totals.
    Sort based on EKORG field and do the sums for Amount fields.
    see the sample code and do accordingly:
    REPORT  ZMM_PO_REPORT message-Id yb
           NO STANDARD PAGE HEADING
           LINE-COUNT 60(1)
           LINE-SIZE 230.
           D A T A B A S E  T A B L E S   D E C L A R A T I O N
    TABLES: lfa1,           " Vendor Master
            t161,           " PO Doc Types
            t024,           " Purchase Groups
            ekko.           " PO Header
                   T Y P E S  D E C L A R A T I O N S
    Purchase Orders Main Structure
    TYPES: BEGIN OF s_po,
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            bstyp TYPE bstyp,           " PO Category
            bukrs TYPE bukrs,           " Company Code
            bsart TYPE bbsrt,           " PO Type
            lifnr TYPE lifnr,           " Vendor No
            ekgrp TYPE bkgrp,           " Purchase Group
            waers TYPE waers,           " Currency
            bedat TYPE etbdt,           " PO Date
            txz01 TYPE txz01,           " Material Text
            werks TYPE ewerk,           " Plant
            lgort TYPE lgort_d,         " Storage Location
            matkl TYPE matkl,           " Material Group
            menge TYPE bamng,           " PR Quantity
            meins TYPE bamei,           " UOM
            bprme TYPE bbprm,           " Price Unit
            netpr TYPE netpr,           " Net price
            peinh TYPE peinh,           " Price Unit UOM
            pstyp TYPE pstyp,           " Item Category
            knttp TYPE knttp,           " Account Assignment Category
           END OF s_po.
    Purchase Orders History Structure
    TYPES: BEGIN OF s_account,
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            gjahr TYPE mjahr,           " Fiscal Year
            belnr TYPE mblnr,           " PO Invoice No
            menge TYPE menge_d,         " PR Quantity
            wrbtr TYPE wrbtr,           " Price in Local Currency
            dmbtr TYPE dmbtr,           " Price in Foreign Currency
            waers TYPE waers,           " Currency
            shkzg TYPE shkzg,           " Dr/Cr Indicator
           END OF s_account.
    Purchase Orders History Structure(Item Sum)
    TYPES: BEGIN OF s_inv_sum,
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            menge TYPE menge_d,         " PR Quantity
            wrbtr TYPE wrbtr,           " Price in Foreign Currency
            waers TYPE waers,           " Currency
           END OF s_inv_sum.
    Purchase Orders Main Structure
    TYPES: BEGIN OF s_rep,
            lifnr TYPE lifnr,           " Vendor No
            ebeln TYPE ebeln,           " PO No.
            ebelp TYPE ebelp,           " PO Item
            bstyp TYPE bstyp,           " PO Category
            bsart TYPE bbsrt,           " PO Type
            ekgrp TYPE bkgrp,           " Purchase Group
            waers TYPE waers,           " Currency
            bedat TYPE etbdt,           " PO Date
            txz01 TYPE txz01,           " Material Text
            werks TYPE ewerk,           " Plant
            lgort TYPE lgort_d,         " Storage Location
            matkl TYPE matkl,           " Material Group
            menge TYPE bamng,           " PR Quantity
            meins TYPE bamei,           " UOM
            bprme TYPE bbprm,           " Price Unit
            netpr TYPE netpr,           " Net price
            peinh TYPE peinh,           " Price Unit UOM
            pstyp TYPE pstyp,           " Item Category
            knttp TYPE knttp,           " Account Assignment Category
            name1 TYPE name1,           " Plant
            orewr TYPE netpr,           " To be Invoiced Price
            curr  TYPE waers,           " Inv Doc Currency
           END OF s_rep.
               D A T A  D E C L A R A T I O N S
    DATA: gv_title1 TYPE sylisel,            " Report title
          gv_dial.                           " Color flag
                C O N S T A N T S  D E C L A R A T I O N S
    CONSTANTS: c_x                VALUE 'X',   " Flag X
               c_h                VALUE 'H',   " Debit
               c_vgabe TYPE vgabe VALUE '2'.   " Transaction Type
         I N T E R N A L  T A B L E S  D E C L A R A T I O N S
    DATA: i_po    TYPE STANDARD TABLE OF s_po WITH HEADER LINE,
                                 " Purchase Order
          i_inv   TYPE STANDARD TABLE OF s_inv_sum WITH HEADER LINE,
                                         " PO Invoice Values
          i_rep   TYPE STANDARD TABLE OF s_rep WITH HEADER LINE,
                                     " PO Invoice Values
          i_ekbe  TYPE STANDARD TABLE OF s_account WITH HEADER LINE.
                               " PO Invoice Values
                     S E L E C T I O N  S C R E E N                      *
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS: s_lifnr FOR lfa1-lifnr MATCHCODE OBJECT kred,
                    s_ebeln FOR ekko-ebeln MATCHCODE OBJECT mekk,
                    s_bsart FOR t161-bsart,
                    s_ekgrp FOR t024-ekgrp,
                    s_bedat FOR ekko-bedat.
    SELECTION-SCREEN END OF BLOCK b1.
                      I N I T I A L I Z A T I O N                        *
    INITIALIZATION.
                  A T  S E L E C T I O N - S C R E E N                   *
    AT SELECTION-SCREEN.
    Validate the screen fields
      PERFORM validate_screen.
                   S T A R T - O F - S E L E C T I O N                   *
    START-OF-SELECTION.
    Fetch main data
      PERFORM fetch_data.
                   T O P - O F - P A G E                                 *
    TOP-OF-PAGE.
    Header of the List
      PERFORM header.
                   E N D - O F - P A G E                                 *
    Footer
    END-OF-PAGE.
      ULINE.
                   E N D - O F - S E L E C T I O N                       *
    END-OF-SELECTION.
    Display the Report Output data
      PERFORM display_data.
    At Line-Selection
    AT LINE-SELECTION.
    When double clicked on EBELN display the details of Purchase Doc
      PERFORM line_sel.
    *&      Form  validate_screen
    Validation of Selection Screen fields
    FORM validate_screen .
    Validation of Vendor Number
      CLEAR lfa1-lifnr.
      IF NOT s_lifnr[] IS INITIAL.
        SELECT lifnr UP TO 1 ROWS
            INTO lfa1-lifnr
            FROM lfa1
            WHERE lifnr IN s_lifnr.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Vendor'(002).
        ENDIF.
      ENDIF.
    Validation of PO Number
      CLEAR ekko-ebeln.
      IF NOT s_ebeln[] IS INITIAL.
        SELECT ebeln UP TO 1 ROWS
            INTO ekko-ebeln
            FROM ekko
            WHERE ebeln IN s_ebeln.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Document Number'(003).
        ENDIF.
      ENDIF.
    Validation of PO Document Type
      CLEAR t161-bsart.
      IF NOT s_bsart[] IS INITIAL.
        SELECT bsart UP TO 1 ROWS
            INTO t161-bsart
            FROM t161
            WHERE bsart IN s_bsart.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Purchase Document Type'(004).
        ENDIF.
      ENDIF.
    Validation of Purchasing Group
      CLEAR t024-ekgrp.
      IF NOT s_ekgrp[] IS INITIAL.
        SELECT ekgrp UP TO 1 ROWS
            INTO t024-ekgrp
            FROM t024
            WHERE ekgrp IN s_ekgrp.
        ENDSELECT.
        IF sy-subrc <> 0.
          MESSAGE e000 WITH 'Invalid Purchasing Group'(005).
        ENDIF.
      ENDIF.
    ENDFORM.                    " validate_screen
    *&      Form  fetch_data
    Fetching the PO related data from Database Tables
    FORM fetch_data .
      CLEAR i_po.
      REFRESH i_po.
      SELECT a~ebeln            " PO No.
             b~ebelp            " PO Item
             a~bstyp            " PO Category
             a~bukrs            " Company Code
             a~bsart            " PO Type
             a~lifnr            " Vendor No
             a~ekgrp            " Purchase Group
             a~waers            " Currency
             a~bedat            " PO Date
             b~txz01            " Material Text
             b~werks            " Plant
             b~lgort            " Storage Location
             b~matkl            " Material Group
             b~menge            " PR Quantity
             b~meins            " UOM
             b~bprme            " Price Unit
             b~netpr            " Net price
             b~peinh            " Price Unit UOM
             b~pstyp            " Item Category
             b~knttp            " Account Assignment Category
        INTO TABLE i_po
        FROM ekko AS a JOIN ekpo AS b
        ON a~ebeln = b~ebeln
        WHERE a~ebeln IN s_ebeln AND
              a~lifnr IN s_lifnr AND
              a~ekgrp IN s_ekgrp AND
              a~bsart IN s_bsart AND
              a~bedat IN s_bedat.
      SORT i_po BY ebeln ebelp.
      break-point.
      IF NOT i_po[] IS INITIAL.
    Fetch the PO History/Invoice Details from EKBE Table
        CLEAR i_ekbe.
        REFRESH i_ekbe.
        SELECT ebeln           " PO No.
               ebelp           " PO Item
               gjahr           " Fiscal Year
               belnr           " PO Invoice No
               menge           " PR Quantity
               wrbtr           " Price in Local Currency
               dmbtr           " Price in Foreign Currency
               waers           " Currency
               shkzg           " Dr/Cr Indicator
         INTO TABLE i_ekbe
         FROM ekbe
         FOR ALL ENTRIES IN i_po
         WHERE ebeln = i_po-ebeln AND
               ebelp = i_po-ebelp AND
               vgabe = c_vgabe.
      break-point.
        IF sy-subrc = 0.
          SORT i_ekbe BY ebeln ebelp.
          LOOP AT i_ekbe.
            IF i_ekbe-shkzg = c_h.
              i_ekbe-wrbtr = i_ekbe-wrbtr * -1.
            ENDIF.
            MODIFY i_ekbe.
          ENDLOOP.
      break-point.
    Sum up the Item wise Invoice totals
          LOOP AT i_ekbe.
            AT END OF ebelp.
              READ TABLE i_ekbe INDEX sy-tabix.
              SUM.
              MOVE-CORRESPONDING i_ekbe TO i_inv.
              APPEND i_inv.
            ENDAT.
            CLEAR i_inv.
          ENDLOOP.
          SORT i_inv BY ebeln ebelp.
            break-point.
        ENDIF.
      ENDIF.
    Move the Vendor Name and Invoice Values to I_rep Internal Table
      LOOP AT i_po.
        MOVE-CORRESPONDING i_po TO i_rep.
        CLEAR i_inv.
        READ TABLE i_inv WITH KEY ebeln = i_po-ebeln
                                  ebelp = i_po-ebelp.
        IF sy-subrc = 0.
          i_rep-orewr = ( i_po-menge - i_inv-menge ) * i_po-netpr.
          i_rep-curr  = i_inv-waers.
        ELSE.
          i_rep-orewr = i_po-menge * i_po-netpr.
          i_rep-curr  = i_po-waers.
        ENDIF.
      break-point.
    Get the Vendor Name
        CLEAR lfa1-name1.
        SELECT SINGLE name1 FROM lfa1 INTO lfa1-name1
          WHERE lifnr = i_po-lifnr.
        IF sy-subrc = 0.
          i_rep-name1  = lfa1-name1.
        ENDIF.
        APPEND i_rep.
        CLEAR  i_rep.
          break-point.
      ENDLOOP.
      SORT i_rep BY lifnr ebeln ebelp.
      DELETE i_rep WHERE orewr LE 0.
      break-point.
    ENDFORM.                    " fetch_data
    *&      Form  display_data
    Display the Report Output data
    FORM display_data .
      DATA: lv_flag,               " New Flag
            lv_rec TYPE i.         " No of Records
      CLEAR lv_rec.
      IF i_rep[] IS INITIAL.
        MESSAGE e000 WITH 'No Data found'(022).
      ELSE.
        LOOP AT i_rep.
    Toggle Color
          PERFORM toggle_color.
          IF lv_flag <> space.
            NEW-LINE.
          ENDIF.
    At New Purchase Document
          AT NEW ebeln.
            WRITE:/1 sy-vline, 2(10) i_rep-ebeln INTENSIFIED OFF.
            lv_flag = c_x.
            lv_rec = lv_rec + 1.
          ENDAT.
          WRITE: 1 sy-vline,
                12 sy-vline,13(4)   i_rep-bsart,
                17 sy-vline,18(10)  i_rep-lifnr,
                28 sy-vline,29(35)  i_rep-name1,
                64 sy-vline,65(4)   i_rep-ekgrp,
                69 sy-vline,70(10)  i_rep-bedat,
                80 sy-vline,81(5)   i_rep-ebelp,
                86 sy-vline,87(40)  i_rep-txz01,
               127 sy-vline,128(9)  i_rep-matkl,
               137 sy-vline,138(1)  i_rep-pstyp,
               139 sy-vline,140(1)  i_rep-knttp,
               141 sy-vline,142(4)  i_rep-werks,
               146 sy-vline,147(4)  i_rep-lgort,
               151 sy-vline,152(13) i_rep-menge UNIT i_rep-meins,
               165 sy-vline,166(3)  i_rep-meins,
               169 sy-vline,170(15) i_rep-netpr CURRENCY i_rep-waers,
               185 sy-vline,186(4)  i_rep-waers,
               190 sy-vline,191(5)  i_rep-peinh,
               196 sy-vline,197(4)  i_rep-bprme,
               201 sy-vline,202(15) i_rep-orewr CURRENCY i_rep-curr,
               217 sy-vline,218(4)  i_rep-curr,
               222 sy-vline,223(7)  i_rep-bstyp centered,
               230 sy-vline.
          NEW-LINE.
          hide: i_rep-ebeln.
        ENDLOOP.
        ULINE.
        FORMAT COLOR OFF.
        WRITE : /2 'Total Number of Purchasing Documents:'(025) COLOR 3,
                    lv_rec COLOR 3.
      ENDIF.
    ENDFORM.                    " display_data
    *&      Form  header
    Write the Report Header
    FORM header .
      FORMAT RESET.
    header
      WRITE:/1(230) 'LIST OF PURCHASE DOCUMENTS PER VENDOR'(006) CENTERED.
      SKIP.
      FORMAT COLOR COL_HEADING.
      ULINE.
      WRITE:/1 sy-vline,2(10)   'Pur.Doc.No'(006) CENTERED,
            12 sy-vline,13(4)   'Type'(007),
            17 sy-vline,18(10)  'Vendor'(008) CENTERED,
            28 sy-vline,29(35)  'Name'(009) CENTERED,
            64 sy-vline,65(4)   'PGrp'(010) CENTERED,
            69 sy-vline,70(10)  'Doc.Date'(012) CENTERED,
            80 sy-vline,81(5)   'Item'(011),
            86 sy-vline,87(40)  'Material Short Text'(024) CENTERED,
           127 sy-vline,128(9)  'Mat.Group'(013),
           137 sy-vline,138(1)  'I',
           139 sy-vline,140(1)  'A',
           141 sy-vline,142(4)  'Plnt'(014),
           146 sy-vline,147(4)  'SLoc'(015),
           151 sy-vline,152(13) 'Quantity'(016) CENTERED,
           165 sy-vline,166(3)  'UoM'(017),
           169 sy-vline,170(15) 'Net Value'(018) CENTERED,
           185 sy-vline,186(4)  'Curr'(019),
           190 sy-vline,191(5)  'Per'(020),
           196 sy-vline,197(4)  'Unit'(021),
           201 sy-vline,202(15) 'To be Invoiced'(023) CENTERED,
           217 sy-vline,218(4)  'Curr'(019),
           222 sy-vline,223(7)  'Doc.Cat'(026),
           230 sy-vline.
      ULINE.
    ENDFORM.                    " header
    *&      Form  toggle_color
    This routine alters the color of the records in the list
    FORM toggle_color.
      IF gv_dial = space.
        FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
        gv_dial = c_x.
      ELSE.
        FORMAT COLOR 1 INTENSIFIED OFF.
        CLEAR gv_dial.
      ENDIF.
    ENDFORM.                    " toggle_color
    *&      Form  LINE_SEL
    *When double clicked on EBELN field display the details of Purchase Doc
    FORM line_sel.
      CASE sy-lsind.
        WHEN '1'.
          DATA: lv_field(20),
                lv_value(10),
                lv_bstyp like i_rep-bstyp.
          clear: lv_bstyp,lv_value, lv_field.
          GET CURSOR FIELD lv_field VALUE lv_value.
          IF lv_field = 'I_REP-EBELN'.
            IF NOT lv_value IS INITIAL.
              READ LINE sy-index FIELD VALUE i_rep-bstyp
                                       INTO  lv_bstyp.
             READ CURRENT LINE FIELD VALUE i_rep-bstyp INTO lv_bstyp.
              if lv_bstyp = 'F'.
                SET PARAMETER ID 'BES' FIELD lv_value.
                CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
              elseif ( lv_bstyp = 'K' or lv_bstyp = 'L' ).
                SET PARAMETER ID 'VRT' FIELD lv_value.
                CALL TRANSACTION 'ME33' AND SKIP FIRST SCREEN.
              elseif lv_bstyp = 'A'.
                SET PARAMETER ID 'ANF' FIELD lv_value.
                CALL TRANSACTION 'ME43' AND SKIP FIRST SCREEN.
              endif.
            ENDIF.
          ENDIF.
      ENDCASE.
    ENDFORM.                    " line_sel
    reward if useful
    regards,
    ANJI
    Message was edited by:
            Anji Reddy Vangala

  • Need help in developing XML Publisher Report in Multi Language

    Hi Tim,
    We have requirement to develop XML Publisher report in Multi language.
    I know we can upload multiple Templates, one for each language.
    Can any one help me in knowing the process other than uploading multiple templates.
    Any documents or setup process related to this will be of great help.
    I appretiate your help.
    Thanks & Regards,
    Sahoo

    Hi,
    Lets say you have two smart styles with X and Y, and runtime based on the number of pages, if you would like to modify the style, then check any standard table or structue which holds and responsible for the holding the style value.
    If you can trace that, based on the coding we can modify accordingly.
    Regards,
    Santhosh.

  • Need help with Drill down Matrix Report

    Hi,
    I need to create a matrix report with a tree functionality with two line heading.
    Can some body tell me how can I generate this report?
    REGION1 REGION2 REGION3
    COL1 COL2 TOTAL COL1 COL2 TOTAL COL1 COL2 TOTAL
    ===========================================================
    CAT1+
    Sub_CAT1
    Sub_CAT2
    CAT2+
    Sub_SCAT3
    Sub_SCAT4
    Where CAT1 , CAT2 needs to be collapsible rows. SCAT1..SCAT4 are sub categories under main categories.
    REGION1.... REGION3 are top level headings. And COL1,COL2 are sub headings under top level headings.
    Thanks,
    Shrikant

    As I said when I believe you posted up a similar question under a different user name...., (yes, it's that easy to tell )
    Asking questions here about a version of Logic that was apparently, not legally purchased using  the Mac App Store.. is not wise.... no matter what your reasoning for not being able to afford it...
    Buy LPX, install it properly and then see if you have the same issues.....

  • Need help with hyperlink for jpeg

    I sound like a noob.. but i have a single jpeg with different images on it... and i want to create a hyperlink for specific areas that you point to and not the entire jpeg.... i just can't seem to figure out how to do this, any help would be greatly appreciated

    Welcome to the discussions. See here:
    http://allaboutiweb.com/index.php/2009/01/fake-an-image-map-in-iweb/
    You may find more suggestions by clicking here.

Maybe you are looking for