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

Similar Messages

  • While developing a ALV report

    hi.
    i am developing  a ALV report.i need to add one extra button. can any one suggest me how

    Try this way:
    I am showing in OO ABAP area:
    Declare in TOP
          CLASS lcl_event_handler DEFINITION
          Class event handler
    CLASS lcl_event_handler DEFINITION .
      PUBLIC SECTION .
        METHODS:
    *To add new functional buttons to the ALV toolbar
        handle_toolbar FOR EVENT toolbar OF cl_gui_alv_grid
        IMPORTING e_object,
    *To implement user commands
        handle_user_command
        FOR EVENT user_command OF cl_gui_alv_grid
        IMPORTING e_ucomm.
      PRIVATE SECTION.
    ENDCLASS.                    "lcl_event_handler DEFINITION
    DATA: gr_event_handler1 TYPE REF TO lcl_event_handler,
          gr_event_handler2 TYPE REF TO lcl_event_handler,
          flag_alv          TYPE c.
    Implement the above defined methods in the forms(F01) or main pgm
          CLASS lcl_event_handler IMPLEMENTATION
          Implementing the method definitions
    CLASS lcl_event_handler IMPLEMENTATION .
    *Handle Toolbar
      METHOD handle_toolbar.
        PERFORM handle_toolbar USING e_object.
      ENDMETHOD .                    "handle_toolbar
    *Handle User Command
      METHOD handle_user_command .
        PERFORM handle_user_command USING e_ucomm.
      ENDMETHOD .                    "handle_user_command
    ENDCLASS.                    "lcl_event_handler IMPLEMENTATION
    *Create an object(instance) for the event handler in F01
    Creating an instance for the event handler
        CREATE OBJECT gr_event_handler1.
    Registering handler methods to handle ALV Grid events
        SET HANDLER gr_event_handler1->handle_user_command FOR g_alv_grid1.
        SET HANDLER gr_event_handler1->handle_toolbar FOR g_alv_grid1.
    *&      Form  handle_toolbar
          Create buttons on ALV Toolbar
          No parameters need to be passed to this form
    *FORM handle_toolbar USING
                       i_object TYPE REF TO cl_alv_event_toolbar_set .
    DATA: ls_toolbar TYPE stb_button.
    CLEAR ls_toolbar.
    MOVE 3 TO ls_toolbar-butn_type.
    APPEND ls_toolbar TO i_object->mt_toolbar.
    CLEAR ls_toolbar.
    IF flag_alv = '1'.
    Header Details
       MOVE   'FIND1'               TO ls_toolbar-function.
       MOVE   icon_select_detail    TO ls_toolbar-icon.
       MOVE   'Header Details'(t03) TO ls_toolbar-text.
       CLEAR  ls_toolbar-disabled.
       APPEND ls_toolbar            TO i_object->mt_toolbar.
       CLEAR  ls_toolbar.
    Item Details
       MOVE   'DETAIL1'             TO ls_toolbar-function.
       MOVE   icon_select_detail    TO ls_toolbar-icon.
       MOVE   'Item Details'(t04)   TO ls_toolbar-text.
       CLEAR  ls_toolbar-disabled.
       APPEND ls_toolbar            TO i_object->mt_toolbar.
    ENDIF.
    IF flag_alv = '2'.
    Header Details
       MOVE   'FIND2'               TO ls_toolbar-function.
       MOVE   icon_select_detail    TO ls_toolbar-icon.
       MOVE   'Header Details'(t03) TO ls_toolbar-text.
       CLEAR  ls_toolbar-disabled.
       APPEND ls_toolbar            TO i_object->mt_toolbar.
       CLEAR  ls_toolbar.
    Item Details
       MOVE   'DETAIL2'             TO ls_toolbar-function.
       MOVE   icon_select_detail    TO ls_toolbar-icon.
       MOVE   'Item Details'(t04)   TO ls_toolbar-text.
       CLEAR  ls_toolbar-disabled.
       APPEND ls_toolbar            TO i_object->mt_toolbar.
    *&      Form  handle_user_command
          User Command for ALV Toolbar Buttons
         -->P_E_UCOMM  UCOMM
    FORM handle_user_command  USING    p_e_ucomm TYPE any.
      CASE p_e_ucomm .
        WHEN 'FIND1'.
    For Header detail display
          PERFORM get_selected_rows USING g_alv_grid1.
          IF i_rowid IS INITIAL.
            MESSAGE i000(zv_gts) WITH 'Select atleast one row'(e11).
            EXIT.
          ENDIF.
          PERFORM read_detail TABLES i_zvfx_gts008_head_l .
          CALL SCREEN 9020.
        WHEN 'DETAIL1'.
    For Item Summary display
          PERFORM get_selected_rows USING g_alv_grid1.
          IF i_rowid IS INITIAL.
            MESSAGE i000(zv_gts) WITH 'Select atleast one row'(e11).
            EXIT.
          ENDIF.
          PERFORM read_detail TABLES i_zvfx_gts008_head_l.
          CALL SCREEN 9030.
        WHEN 'FIND2' .
    For Header detail display
          PERFORM get_selected_rows USING g_alv_grid2.
          IF i_rowid IS INITIAL.
            MESSAGE i000(zv_gts) WITH 'Select atleast one row'(e11).
            EXIT.
          ENDIF.
          PERFORM read_detail TABLES i_zvfx_gts008_head.
          CALL SCREEN 9020.
        WHEN 'DETAIL2'.
    For Item Summary display
          PERFORM get_selected_rows USING g_alv_grid2.
          IF i_rowid IS INITIAL.
            MESSAGE i000(zv_gts) WITH 'Select atleast one row'(e11).
            EXIT.
          ENDIF.
          PERFORM read_detail TABLES i_zvfx_gts008_head.
          CALL SCREEN 9030.
        WHEN OTHERS.
      ENDCASE .
    ENDFORM.                    " handle_user_command
    ENDIF.
    *ENDFORM.                    "handle_toolbar

  • Can somebody give some real time questions for alv report

    hi guru
    can somebody give some real time questions for alv report.
    answers also.
    regards
    subhasis.

    hi,
    The ALV is a set of function modules and classes and their methods which are added to program code. Developers can use the functionality of the ALV in creating new reports,  saving time which might otherwise have been spent on report enhancement
    The common features of report are column    alignment, sorting, filtering, subtotals, totals etc. <b>To implement these, a lot of coding and logic is to be put. To avoid that we can use a concept called ABAP List Viewer (ALV).</b>
    Using ALV, we can have three types of reports:
       1. Simple Report
       2. Block Report
       3. Hierarchical Sequential Report
    <b>Reward useful points</b>
    Siva

  • I need some parts for my MuVo V100, can anyone help?

    I need some parts for my MuVo V00, can anyone help I couldn't find any thread this would belong in, but if I've made a mistake, I'm sorry.
    I have a Creative Labs MuVo V00 2 gig player. I love it. The only problem is that the back peice of plastic that holds the battery in somehow has fallen off and has disappeared. I really, really, would like to replace it, but I can't find anywhere where parts like this are sold.
    So, does anyone know where I can buy this part Or does anyone have one they are willing to sell me If I have to get the whole little "docking bay" that holds the batery and the unit, that would be fine too. I'm not going to pay huge money for it, seeing that I can still get a new one at a few places, but if anyone has one that broke, or that they just aren't using, and wouldn't mind making a few bucks + postage, I would really appreciate it.
    Thanks for your time.

    Re: I need some parts for my MuVo V00, can anyone help As far as I'm concerned the subject is closed. I was just irritated that I asked for help, and got some glib little reply, telling me something that anyone who's been on the internet for more than ten seconds should know about. Because to be honest, him replying with those three words, might have made someone overlook the post, thinking, "Someone is handling that, let's move on." Someone who actually might have what I needed.
    But, as it turns out, I could order a reconditioned MuVo from Creative directly for about 6 bucks. (vs. 45+ if I'd gone through ebay) so the problem is resolved. If I could figure out a way to erase this entire post, I would do it. If you can do so, being a mod, I would appreciate it.
    Sorry if I upset you Loi-CL, I understand you're a moderator, but I don't take kindly to being treated like I'm stupid and that's exactly what coachop94 was doing. If he didn't have anything important or useful to tell me, he could have just skipped over my post.

  • I have lost my iphone 5 and after sometime I find it in my office but some one has lock it by Icoloud plz help me how to recover my phone

    Dear Friends
    I have lost my iphone 5 in my office  and after sometime I find it in my office in my back drawer but some one has lock it by ICloud plz help me how to recover my phone U have all details of my phone.

    The only way to locate/disable/erase any lost/stolen iPhone/iPod Touch is through Find My Phone or a similar app. However, this requires that Find My Phone be setup/activated, on your phone, before it was lost/stolen. You would then login at iCloud.com & try to locate it. This requires the phone be turned on & have an Internet connection. There is no other way to locate a lost/stolen iPhone. Apple can't/won't help you, nor will your carrier. Report the loss to the Police, your carrier & Insurance company. Change all of your passwords, especially your Apple ID/iCloud password NOW!
    If your carrier offers Blacklisting & they Blacklist the phone, it will be unusable as a phone.
    If locked with a passcode, and running iOS 7.0, then phone cannot be re-activated or the passcode removed without knowing your Apple iD/Password. It will be nothing but a useless paperweight.
    If not running iOS 7.0, the phone can be forced into recovery mode & restored.

  • 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.

  • Logic needed to print blank line in alv report

    hi experts,
    can anyone please tell me the logic for this
    i want to logic one is
    1) in alv report contains
    a set of data contains 100 (5 datas)
    and a set of data contain 200(5 datas)
    i want to have one coloum containing serial no
    ex for 100 i want to move no '5' to one coloumn ,but it should display only ones not for all 5 records.
    same for 200 also i want to move 7 to this ,it should b displayed ones
    i used for at new command alos its not working
    2)suppose for particular date, 200 related records is not there
    it should conatin blank line,displaying 'NIL'.
    SO THE OPT FROMAT MUST BE
    MATNR            DOCNO
    100                  1000
    100                  1000
    100                    "
    100                     "
    100                    "
    200                   2000
    200                      "
    200                     "
    200                    "
    200                    "
    SUPPOSE 200 RECORD IS NOT THERE THE OPT SHLD B
    100           1000
    100            1000
    200           NIL

    Arun,
    1)
    If you are using the  function module REUSE_ALV_GRID_DISPLAY, then use the internal table it_sort with a row for the column where you want the suppression of repeated values.
    2)
    If you are using the  function module REUSE_ALV_GRID_DISPLAY, then simply ensure that your internal table t_outtab has the rows that you need containing 'NIL'.
    John

  • Alv report please help

    Hi,
         Please help me in this.
    1) Create the selection screen with the following fields on it.
         S_REQUESTOR for ZSWAPHISTORY- REQUESTOR
         S_APPROVER for ZSWAPHISTORY- APPROVER providing range
         S_to_customer for ZSWAPHISTORY- to_customer providing range
         S_from_customer for ZSWAPHISTORY- from_customer providing range
         S_MRPC     for MARC-DISPO providing range
         S_MATNR     for MARA-MATNR providing range
         S_APPR_DATE for ZSWAPHISTORY- APPR_DATE Default to yesterdays date
         S_QUAN     for ZSWAPHISTORY-quan
    2) Validate the fields entered in the selection screen.
    3) Check the user authorizations for this report.
    4) Select the entries from the table ZSWAPHISTORY into an internal table based on the input from the selection screen and the value of the field ZSWAPHISTORY -STATUS is APPROVED.
    5) Then select the MRP Controller ID (DISPO) from the Table MARC for all entries in the internal table where MARC-MATNR equals to the internal table -material number.
    6) Move the field value of MRP Controller ID (DISPO) into the final internal table for the corresponding entries.
    7) Declare the Filed Catalogue with the fields that are to be displayed in the ALV
    Please help to create this , iam new to this area.
    Thanks
    Ali

    Hi
    See the sample code of ALV and do accordingly
    Since you are using a Z table it is not clear to create
    report ZRGRIRNA no standard page heading
           line-count 65
           line-size 255
           message-id mm.
                       GR IR Detail Report                               *
    Description          : The output has to be displayed
                           in the ALV Grid format with the Selection     *
                           screen appearing on the output. In The Output *
                           Subtotals for Vendor, Plant, Period, Material,*
                           Valuation Class, Purchase Order,Cost Center,  *
                           Cost Element and Receipt Date are displayed   *
                           after sorting the data by same fields.        *
    Declaration for Tables
    tables: t001,      " Company Codes
            t001w,     " Plants/Branches
            lfa1,      " Vendor Master
            ska1,      " GL Account Master
            mara,      " Material Master
            mbew,      " Material Valuation
            ekko,      " PO Header Data
            cska,      " Cost Elements
            csks,      " Cost Centers
            bsis,      " GL Accounts: Open Items Data
            bkpf.      " Accounting Doc: Header Data
    Type-pools
    Type pools for ALV display
    type-pools : slis.
    Global variables
    data: g_repid       like sy-repid,
          g_exit        type c,
          g_events      type slis_t_event,
          g_list_top_of_page type slis_t_listheader,
          g_exit_caused_by_caller,
          g_exit_caused_by_user type slis_exit_by_user,
          g_top_of_page  type slis_formname value 'TOP_OF_PAGE',
          g_variant like disvariant,
          g_save.
    Declaration for Constants
    constants : c_x  type c  value 'X',         " Flag
                c_c  type c  value 'C',         " Flag
                c_l  type c  value 'L',         " Flag
                c_a  type c  value 'A',         " Line Type
                c_h  type c  value 'H',         " Dr/Cr
                c_s  type c  value 'S',         " Line Type
                c_mkpf(4) type c value 'MKPF'.  " Table
    Declaration of Internal Tables
    Internal Table for BSIS Table data
    data: begin of i_bsis occurs 0,
            bukrs like bsis-bukrs,          " Company Code
            hkont like bsis-hkont,          " GR IR Account
            gjahr like bsis-gjahr,          " Fiscal Year
            belnr like bsis-belnr,          " Acc Document
            buzei like bsis-buzei,          " Item No
            budat like bsis-budat,          " Receipt Date(Posting)
            monat like bsis-monat,          " Period
          end of i_bsis.
    Internal Table for BSEG Table data
    data: begin of i_bseg occurs 0,
            bukrs like bsis-bukrs,          " Company Code
            belnr like bsis-belnr,          " Acc Document
            buzei like bsis-buzei,          " Item No
            gjahr like bsis-gjahr,          " Fiscal Year
            shkzg like bseg-shkzg,          " Dr/Cr Indicator
            lifnr like bseg-lifnr,          " Vendor Code
            matnr like bseg-matnr,          " Material No
            ebeln like bseg-ebeln,          " Purchase Order
            ebelp like bseg-ebelp,          " PO Item
            werks like bseg-werks,          " Plant
            menge like bseg-menge,          " PO Quantity
            meins like bseg-meins,          " UOM
            dmbtr like bseg-dmbtr,          " Amount in Local Currency
            wrbtr like bseg-wrbtr,          " Amount in Trans.Currency
          end of i_bseg.
    Internal Table for BKPF Table data
    data: begin of i_bkpf occurs 0,
            bukrs like bkpf-bukrs,          " Company Code
            belnr like bkpf-belnr,          " Acc Document
            gjahr like bkpf-gjahr,          " Fiscal Year
            waers like bkpf-waers,          " Trans. Currency
            awkey like bkpf-awkey,          " Object Key
            awtyp like bkpf-awtyp,          " Reference Procedure
          end of i_bkpf.
    Internal Table for MSEG Table data
    data: begin of i_mseg occurs 0,
            mblnr like mseg-mblnr,          " Material Document
            mjahr like mseg-mjahr,          " Fiscal Year
            bwart like mseg-bwart,          " Movement Type
            matnr like mseg-matnr,          " Material No
            menge like mseg-menge,          " PO Quantity
            meins like mseg-meins,          " UOM
          end of i_mseg.
    Internal Table for MBEW Table data
    data: begin of i_mbew occurs 0,
            matnr like mbew-matnr,          " Material No
            werks like mbew-bwkey,          " Plant
            bklas like mbew-bklas,          " Valuation Class
          end of i_mbew.
    Internal Table for EKPO Table data
    data: begin of i_ekpo occurs 0,
            ebeln like ekpo-ebeln,          " Purchase Order
            ebelp like ekpo-ebelp,          " PO Item
            matnr like ekpo-matnr,          " Material No
            txz01 like ekpo-txz01,          " Material Text
          end of i_ekpo.
    Internal Table for EKKN Table data
    data: begin of i_ekkn occurs 0,
            ebeln like ekkn-ebeln,          " Purchase Order
            ebelp like ekkn-ebelp,          " PO Item
            kostl like ekkn-kostl,          " Cost Center
            sakto like ekkn-sakto,          " Cost Element
          end of i_ekkn.
    Internal Table for LFA1 Table data
    data: begin of i_lfa1 occurs 0,
            lifnr like lfa1-lifnr,          " Vendor
            name1 like lfa1-name1,          " Name
          end of i_lfa1.
    Declaration of Output Internal Table
    data: begin of i_final occurs 0,
            lifnr like lfa1-lifnr,     " Vendor
            werks like bseg-werks,     " Plant
            monat like bsis-monat,     " Period
            matnr like mara-matnr,     " Material Number
            bklas like mbew-bklas,     " Val Class
            ebeln like bseg-ebeln,     " PO
            kostl like ekkn-kostl,     " Cost Center
            sakto like ekkn-sakto,     " Cost Element
            budat like bsis-budat,     " Rec. Date
            name1 like lfa1-name1,     " Vendor Name
            belnr like bsis-belnr,     " FI Document
            bwart like mseg-bwart,     " Movement Type
            txz01 like ekpo-txz01,     " Material Text
            menge like bseg-menge,     " Quantity
            meins like bseg-meins,     " UOM
            dmbtr like bseg-dmbtr,     " Local Amount
            wrbtr like bseg-wrbtr,     " Tran.Amount
            waers like bkpf-waers,     " Tran.Currency
            status type c,             " Material Status
          end of i_final.
    Internal table to hold field catgory data
    data:  i_fldcat  type slis_t_fieldcat_alv.   " Table - field catgory
    Internal table to hold Sort/Subtotals criteria data
    data:  i_sort  type slis_t_sortinfo_alv.     " Table - sort/Subtotals
    Structure
    data:  x_layout   type slis_layout_alv,      " Structure-layout
           x_fldcat   like line of i_fldcat,     " Structure-field catagory
           x_sort     like line of i_sort.       " Structure-Sort/Subtotals
           Selection screen
    selection-screen : begin of block b1 with frame title text-000.
    parameters:
       p_bukrs like t001-bukrs obligatory,          " Company Code
       p_grira like ska1-saknr default '0241101000' obligatory. " Account
    select-options:
       s_budat for bkpf-budat,        " Posting Date
       s_werks for t001w-werks,       " Plant
       s_lifnr for lfa1-lifnr,        " Vendor
       s_matnr for mara-matnr,        " Material Number
       s_kostl for csks-kostl,        " Cost Center
       s_kstar for cska-kstar,        " Cost Element
       s_ebeln for ekko-ebeln,        " Purchase Order
       s_monat for bsis-monat.        " Period
    selection-screen skip.
    parameters:
       p_incmt as checkbox default 'X',
       p_incnm as checkbox default 'X'.
    selection-screen end of block b1.
    Initialization
    initialization.
      g_repid = sy-repid.
      perform layout_init using x_layout.
      perform eventtab_build using g_events[].
      g_variant-report = g_repid.
      g_save           = 'A'.
    At selection screen
    at selection-screen.
    Validation of Selection Screen Fields
      perform validate_screen.
    Start of selection
    start-of-selection.
    Read Data from Database Tables
      perform read_data.
    End of selection
    end-of-selection.
    Build layout report layout.
      perform populate_layout_stucture.
    Perform build_field_catalog and Sort Table
      perform build_field_catalog.
      perform build_sort_totals.
    List Header for Top-Of-Page
      perform comment_build using g_list_top_of_page[].
    Call list viewer function module
      perform call_list_viewer .
    ****************Form - Routines**************************************
          Form        : layout_init
          Description : Form to Build layout for list display
    form layout_init using rs_layout type slis_layout_alv.
      rs_layout-detail_popup      = c_x.
    endform.
    Form         : Eventtab_build
    Description  : Registration of events to happen during list display
    form eventtab_build using rt_events type slis_t_event.
    Registration of events to happen during list display
      data: ls_event type slis_alv_event.
      call function 'REUSE_ALV_EVENTS_GET'
           exporting
                i_list_type = 0
           importing
                et_events   = rt_events.
      read table rt_events with key name = slis_ev_top_of_page
                               into ls_event.
      if sy-subrc = 0.
        move g_top_of_page to ls_event-form.
        append ls_event to rt_events.
      endif.
    endform.                                   "eventtab_build
          Form : top_of_page
    form top_of_page.
      call function 'REUSE_ALV_COMMENTARY_WRITE'
           exporting
             I_LOGO             = 'ENJOYSAP_LOGO'
                it_list_commentary = g_list_top_of_page.
    endform.
          Form validate_screen
    Validation of Selection Screen fields
    form validate_screen.
    Validation of Company Code
      clear t001.
      if not p_bukrs is initial.
        select single bukrs
          into t001-bukrs
          from t001
          where bukrs eq p_bukrs.
        if sy-subrc <> 0.
          message e899 with 'Enter Valid Company Code'(012).
        endif.
      endif.
    Validation of GL Account (GR/IR)
      clear ska1.
      if not p_grira is initial.
        select saknr
          into ska1-saknr
          from ska1
          up to 1 rows
          where saknr eq p_grira.
        endselect.
        if sy-subrc <> 0.
          message e899 with 'Enter Valid GR/IR Account'(013).
        endif.
      endif.
    Validation of Vendor Code
      clear lfa1.
      if not s_lifnr[] is initial.
        select single lifnr
          into lfa1-lifnr
          from lfa1
          where lifnr in s_lifnr.
        if sy-subrc <> 0.
          message e899 with 'Enter Valid Vendor'(001).
        endif.
      endif.
    Validation of Plant Code
      clear t001w.
      if not s_werks[] is initial.
        select single werks
          into t001w-werks
          from t001w
          where werks in s_werks.
        if sy-subrc <> 0.
          message e899 with 'Enter Valid Plant'(014).
        endif.
      endif.
    Validation of Material Code
      clear mara.
      if not s_matnr[] is initial.
        select single matnr
          into mara-matnr
          from mara
          where matnr in s_matnr.
        if sy-subrc <> 0.
          message e899 with 'Enter Valid Material'(015).
        endif.
      endif.
    Validation of Purchase Order
      clear ekko.
      if not s_ebeln[] is initial.
        select single ebeln
          into ekko-ebeln
          from ekko
          where ebeln in s_ebeln.
        if sy-subrc <> 0.
          message e899 with 'Enter Valid Purchase Order'(016).
        endif.
      endif.
    Validation of Cost Center
      clear csks.
      if not s_kostl[] is initial.
        select kostl
          into csks-kostl
          from csks
          up to 1 rows
          where kostl in s_kostl.
        endselect.
        if sy-subrc <> 0.
          message e899 with 'Enter Valid Cost Center'(017).
        endif.
      endif.
    Validation of Cost Element
      clear cska.
      if not s_kstar[] is initial.
        select kstar
          into cska-kstar
          from cska
          up to 1 rows
          where kstar in s_kstar.
        endselect.
        if sy-subrc <> 0.
          message e899 with 'Enter Valid Cost Element'(018).
        endif.
      endif.
    endform.                          "validate_screen
    *&      Form  read_data
    Read the Data from the database Tables
    form read_data.
    Get the Accounting Documents for the GR/IR Account Entered on
    Selection Screen
      clear i_bsis.
      refresh i_bsis.
      select bukrs           " Company Code
             hkont           " GR IR Account
             gjahr           " Fiscal Year
             belnr           " Acc Document
             buzei           " Item No
             budat           " Receipt Date(Posting)
             monat           " Period
       into table i_bsis
       from  bsis
       where  bukrs = p_bukrs
         and  hkont = p_grira
         and  budat in s_budat
         and  monat in s_monat .
      if sy-subrc <> 0.
        message i899 with 'No data found'(043).
        g_exit = c_x.
        stop.
      endif.
      sort i_bsis by bukrs hkont gjahr belnr buzei.
    Get the Vendor,PO,Material,Qty details from BSEG Table
      if not i_bsis[] is initial.
        clear i_bseg.
        refresh i_bseg.
        select bukrs           " Company Code
               belnr           " Acc Document
               buzei           " Item No
               gjahr           " Fiscal Year
               shkzg           " Dr/Cr Indicator
               lifnr           " Vendor Code
               matnr           " Material No
               ebeln           " Purchase Order
               ebelp           " PO Item
               werks           " Plant
               menge           " PO Quantity
               meins           " UOM
               dmbtr           " Amount in Local Currency
               wrbtr           " Amount in Trans.Currency
        into table i_bseg
        from   bseg
        for all entries in i_bsis
        where  bukrs = p_bukrs
        and    belnr = i_bsis-belnr
        and    gjahr = i_bsis-gjahr
        and    buzei = i_bsis-buzei
        and    lifnr in s_lifnr
        and    werks in s_werks
        and    matnr in s_matnr
        and    ebeln in s_ebeln.
        sort i_bseg by bukrs belnr buzei gjahr.
    Select the Trans.Currency from BKPF Table
        clear i_bkpf.
        refresh i_bkpf.
        select bukrs           " Company Code
               belnr           " Acc Document
               gjahr           " Fiscal Year
               waers           " Trans. Currency
               awkey           " Object Key
               awtyp           " Reference Procedure
        into table i_bkpf
        from   bkpf
        for all entries in i_bsis
        where  bukrs = p_bukrs
        and    belnr = i_bsis-belnr
        and    gjahr = i_bsis-gjahr.
      endif.
      sort i_bkpf by bukrs belnr gjahr.
    Get the Quantity and UOM of Material from MSEG Table
      if not i_bkpf[] is initial.
        clear i_mseg.
        refresh i_mseg.
        select mblnr           " Material Document
               mjahr           " Fiscal Year
               bwart           " Movement Type
               matnr           " Material No
               menge           " PO Quantity
               meins           " UOM
          into table i_mseg
          from   mseg
          for all entries in i_bkpf
          where  mblnr = i_bkpf-awkey(10).
      endif.
      sort i_mseg by mblnr mjahr.
    Get the Material And Description from EKPO Table
      if not i_bseg[] is initial.
        clear i_ekpo.
        refresh i_ekpo.
        select ebeln           " Purchase Order
               ebelp           " PO Item
               matnr           " Material No
               txz01           " Material Text
        into table i_ekpo
        from   ekpo
        for all entries in i_bseg
        where  ebeln = i_bseg-ebeln
        and    ebelp = i_bseg-ebelp.
        sort i_ekpo by ebeln ebelp.
    Get the Valuation Class from MBEW Table
        clear i_mbew.
        refresh i_mbew.
        select matnr           " Material No
               bwkey           " Plant
               bklas           " Valuation Class
        into table i_mbew
        from   mbew
        for all entries in i_bseg
        where  matnr = i_bseg-matnr
        and    bwkey = i_bseg-werks.
        sort i_mbew by matnr werks.
    Get the Cost Center and Cost Element of the PO from EKKN Table
        clear i_ekkn.
        refresh i_ekkn.
        select ebeln           " Purchase Order
               ebelp           " PO Item
               kostl           " Cost Center
               sakto           " Cost Element
        into table i_ekkn
        from   ekkn
        for all entries in i_bseg
        where  ebeln = i_bseg-ebeln
        and    ebelp = i_bseg-ebelp
        and    kostl in s_kostl
        and    sakto in s_kstar.
        sort i_ekkn by ebeln ebelp.
    Get the Vendor Name
        clear i_lfa1.
        refresh i_lfa1.
        select lifnr            " Vendor
               name1            " Name
        into table i_lfa1
        from   lfa1
        for all entries in i_bseg
        where  lifnr = i_bseg-lifnr.
      endif.
      sort i_lfa1 by lifnr.
    Move the data to Final Output Internal Table
      loop at i_bsis.
        i_final-belnr = i_bsis-belnr.     " FI Document
        i_final-monat = i_bsis-monat.     " Period
        i_final-budat = i_bsis-budat.     " Rec. Date
    Read the Transaction Currency from BKPF Internal Table
        read table i_bkpf with key bukrs = i_bsis-bukrs
                                   belnr = i_bsis-belnr
                                   gjahr = i_bsis-gjahr
                                   binary search.
        if sy-subrc = 0.
          i_final-waers = i_bkpf-waers.     " Tran.Currency
    Read the Movement Type for all Material Related
    Documents from MSEG Internal Table
          if i_bkpf-awtyp = c_mkpf.
            read table i_mseg with key mblnr = i_bkpf-awkey(10)
                                       mjahr = i_bkpf-awkey+10(4).
            if sy-subrc = 0.
              i_final-bwart = i_mseg-bwart.     " Movement Type
            endif.
          endif.
        endif.
    Read Vendor, Plant, PO Document, Local And Trans.Amounts
    from BSEG Internal Table
        read table i_bseg with key bukrs = i_bsis-bukrs
                                   belnr = i_bsis-belnr
                                   gjahr = i_bsis-gjahr
                                   buzei = i_bsis-buzei
                                   binary search.
        if sy-subrc = 0.
          i_final-lifnr = i_bseg-lifnr.     " Vendor
          i_final-werks = i_bseg-werks.     " Plant
          i_final-ebeln = i_bseg-ebeln.     " PO
          i_final-dmbtr = i_bseg-dmbtr.     " Local Amount
          i_final-wrbtr = i_bseg-wrbtr.     " Tran.Amount
          i_final-menge = i_bseg-menge.     " Quantity
          i_final-meins = i_bseg-meins.     " UOM
    For Credit Indicator(SHKZG = H) amounts should be (-)ve
          if i_bseg-shkzg = c_h.
            i_final-dmbtr = i_final-dmbtr * -1.
            i_final-wrbtr = i_final-wrbtr * -1.
            i_final-menge = i_final-menge * -1.
          endif.
    Read the Material and its Description from EKPO Internal Table
          read table i_ekpo with key ebeln = i_bseg-ebeln
                                     ebelp = i_bseg-ebelp
                                     matnr = i_bseg-matnr
                                     binary search.
          if sy-subrc = 0.
            i_final-matnr = i_ekpo-matnr.     " Material Number
            i_final-txz01 = i_ekpo-txz01.     " Material Text
    Populate the Material Status depending on the Input Checkbox
    On Selection Screen
            if not i_ekpo-matnr is initial.
              i_final-status = c_x.
            endif.
          endif.
    Read the PO related Cost Element and Cost Centers
    from EKKN Internal Table
          read table i_ekkn with key ebeln = i_bseg-ebeln
                                     ebelp = i_bseg-ebelp
                                     binary search.
          if sy-subrc = 0.
            i_final-kostl = i_ekkn-kostl.     " Cost Center
            i_final-sakto = i_ekkn-sakto.     " Cost Element
          endif.
    Read the Valuation Class from MBEW Internal Table
          read table i_mbew with key matnr = i_bseg-matnr
                                     werks = i_bseg-werks
                                     binary search.
          if sy-subrc = 0.
            i_final-bklas = i_mbew-bklas.     " Val Class
          endif.
    Read the Vendor Name from LFA1 Internal Table
          read table i_lfa1 with key lifnr = i_bseg-lifnr
                                     binary search.
          if sy-subrc = 0.
            i_final-name1 = i_lfa1-name1.     " Vendor Name
          endif.
        endif.
        append i_final.
        clear i_final.
      endloop.
      sort i_final by lifnr werks monat matnr.
    Depending on the check Box Selected display the data
      if p_incmt = c_x and p_incnm ne c_x.
        delete i_final where matnr eq space.
      elseif p_incnm = c_x and p_incmt ne c_x.
        delete i_final where matnr ne space.
      endif.
    endform.           "Read Data
         Form        : populate_layout_stucture
         Description : Populating the layout structure
    form populate_layout_stucture.
      clear x_layout .
    Layout properties
      x_layout-zebra                = c_x.
      x_layout-detail_popup         = c_x.
      x_layout-detail_initial_lines = c_x.
      x_layout-colwidth_optimize    = c_x.
    endform.                    " populate_layout_stucture
         Form        : build_field_catalog
         Description : Building the field catalog data
    form build_field_catalog.
      call function 'REUSE_ALV_FIELDCATALOG_MERGE'
           exporting
                i_program_name         = g_repid
                i_internal_tabname     = 'I_FINAL'
                i_inclname             = g_repid
           changing
                ct_fieldcat            = i_fldcat
           exceptions
                inconsistent_interface = 1
                program_error          = 2
                others                 = 3.
      if sy-subrc <> 0.
        message id sy-msgid type sy-msgty number sy-msgno
              with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      endif.
    Getting the Header text for the coloums
      loop at i_fldcat into x_fldcat where fieldname = 'LIFNR' or
                                           fieldname = 'NAME1' or
                                           fieldname = 'WERKS' or
                                           fieldname = 'MONAT' or
                                           fieldname = 'MATNR' or
                                           fieldname = 'BKLAS' or
                                           fieldname = 'EBELN' or
                                           fieldname = 'KOSTL' or
                                           fieldname = 'SAKTO' or
                                           fieldname = 'BUDAT' or
                                           fieldname = 'BELNR' or
                                           fieldname = 'BWART' or
                                           fieldname = 'TXZ01' or
                                           fieldname = 'MENGE' or
                                           fieldname = 'MEINS' or
                                           fieldname = 'DMBTR' or
                                           fieldname = 'WRBTR' or
                                           fieldname = 'WAERS' or
                                           fieldname = 'STATUS'.
        if x_fldcat-fieldname = 'LIFNR'.
          x_fldcat-seltext_l   = 'Vendor'(003).
          x_fldcat-seltext_m   = 'Vendor'(003).
          x_fldcat-seltext_s   = 'Vendor'(003).
          x_fldcat-reptext_ddic = 'Vendor'(003).
          x_fldcat-inttype   = c_c.
        endif.
        if x_fldcat-fieldname = 'NAME1'.
          x_fldcat-seltext_l   = 'Vendor Name'(002).
          x_fldcat-seltext_m   = 'Vendor Name'(002).
          x_fldcat-seltext_s   = 'Vendor Name'(002).
          x_fldcat-reptext_ddic = 'Vendor Name'(002).
          x_fldcat-inttype   = c_c.
        endif.
        if x_fldcat-fieldname = 'WERKS'.
          x_fldcat-seltext_l   = 'Plant'(010).
          x_fldcat-seltext_m   = 'Plant'(010).
          x_fldcat-seltext_s   = 'Plant'(010).
          x_fldcat-reptext_ddic   = 'Plant'(010).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'MONAT'.
          x_fldcat-seltext_l   = 'Period'(011).
          x_fldcat-seltext_m   = 'Period'(011).
          x_fldcat-seltext_s   = 'Period'(011).
          x_fldcat-reptext_ddic   = 'Period'(011).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'MATNR'.
          x_fldcat-seltext_l   = 'Material'(004).
          x_fldcat-seltext_m   = 'Material'(004).
          x_fldcat-seltext_s   = 'Material'(004).
          x_fldcat-reptext_ddic   = 'Material'(004).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'BKLAS'.
          x_fldcat-seltext_l   = 'Valuation Class'(009).
          x_fldcat-seltext_m   = 'Valuation Class'(009).
          x_fldcat-seltext_s   = 'Valuation Class'(009).
          x_fldcat-reptext_ddic   = 'Valuation Class'(009).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'EBELN'.
          x_fldcat-seltext_l   = 'Purchase Order'(005).
          x_fldcat-seltext_m   = 'Purchase Order'(005).
          x_fldcat-seltext_s   = 'Purchase Order'(005).
          x_fldcat-reptext_ddic   = 'Purchase Order'(005).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'KOSTL'.
          x_fldcat-seltext_l   = 'Cost Center'(006).
          x_fldcat-seltext_m   = 'Cost Center'(006).
          x_fldcat-seltext_s   = 'Cost Center'(006).
          x_fldcat-reptext_ddic   = 'Cost Center'(006).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'SAKTO'.
          x_fldcat-seltext_l   = 'Cost Element'(007).
          x_fldcat-seltext_m   = 'Cost Element'(007).
          x_fldcat-seltext_s   = 'Cost Element'(007).
          x_fldcat-reptext_ddic   = 'Cost Element'(007).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'BUDAT'.
          x_fldcat-seltext_l   = 'Receipt Date'(008).
          x_fldcat-seltext_m   = 'Receipt Date'(008).
          x_fldcat-seltext_s   = 'Receipt Date'(008).
          x_fldcat-reptext_ddic   = 'Receipt Date'(008).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'BELNR'.
          x_fldcat-seltext_l   = 'Acc.Document'(100).
          x_fldcat-seltext_m   = 'Acc.Document'(100).
          x_fldcat-seltext_s   = 'Acc.Document'(100).
          x_fldcat-reptext_ddic   = 'Acc.Document'(100).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'BWART'.
          x_fldcat-seltext_l   = 'Movement Type'(101).
          x_fldcat-seltext_m   = 'Movement Type'(101).
          x_fldcat-seltext_s   = 'Movement Type'(101).
          x_fldcat-reptext_ddic   = 'Movement Type'(101).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'TXZ01'.
          x_fldcat-seltext_l   = 'Material Text'(102).
          x_fldcat-seltext_m   = 'Material Text'(102).
          x_fldcat-seltext_s   = 'Material Text'(102).
          x_fldcat-reptext_ddic   = 'Material Text'(102).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'MENGE'.
          x_fldcat-seltext_l   = 'Quantity'(103).
          x_fldcat-seltext_m   = 'Quantity'(103).
          x_fldcat-seltext_s   = 'Quantity'(103).
          x_fldcat-reptext_ddic   = 'Quantity'(103).
          x_fldcat-ddictxt   = c_l.
          x_fldcat-do_sum    = c_x.
        endif.
        if x_fldcat-fieldname = 'MEINS'.
          x_fldcat-seltext_l   = 'UOM'(104).
          x_fldcat-seltext_m   = 'UOM'(104).
          x_fldcat-seltext_s   = 'UOM'(104).
          x_fldcat-reptext_ddic   = 'UOM'(104).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'DMBTR'.
          x_fldcat-seltext_l   = 'Amount in Local Curr'(105).
          x_fldcat-seltext_m   = 'Amount in Local Curr'(105).
          x_fldcat-seltext_s   = 'Amount in Local Curr'(105).
          x_fldcat-reptext_ddic   = 'Amount in Local Curr'(105).
          x_fldcat-ddictxt   = c_l.
          x_fldcat-do_sum    = c_x.
        endif.
        if x_fldcat-fieldname = 'WRBTR'.
          x_fldcat-seltext_l   = 'Amount in Trans.Curr'(106).
          x_fldcat-seltext_m   = 'Amount in Trans.Curr'(106).
          x_fldcat-seltext_s   = 'Amount in Trans.Curr'(106).
          x_fldcat-reptext_ddic   = 'Amount in Trans.Curr'(106).
          x_fldcat-ddictxt   = c_l.
          x_fldcat-do_sum    = c_x.
        endif.
        if x_fldcat-fieldname = 'WAERS'.
          x_fldcat-seltext_l   = 'Trans.Currency'(107).
          x_fldcat-seltext_m   = 'Trans.Currency'(107).
          x_fldcat-seltext_s   = 'Trans.Currency'(107).
          x_fldcat-reptext_ddic   = 'Trans.Currency'(107).
          x_fldcat-ddictxt   = c_l.
        endif.
        if x_fldcat-fieldname = 'STATUS'.
          x_fldcat-seltext_l   = 'Material Status'(019).
          x_fldcat-seltext_m   = 'Material Status'(019).
          x_fldcat-seltext_s   = 'Material Status'(019).
          x_fldcat-reptext_ddic   = 'Material Status'(019).
          x_fldcat-ddictxt   = c_l.
        endif.
        modify i_fldcat from x_fldcat index sy-tabix.
      endloop.
    endform.                    " build_field_catalog
         Form        : build_sort_totals
         Description : Building the Criteria for Sort/Subtotals
    form build_sort_totals.
      x_sort-fieldname = 'LIFNR'.
      x_sort-tabname   = 'I_FINAL'.
      x_sort-spos      =  1.
      x_sort-up        =  c_x.
      x_sort-subtot    = c_x.
      append x_sort to i_sort.
      clear  x_sort.
      x_sort-fieldname = 'WERKS'.
      x_sort-tabname   = 'I_FINAL'.
      x_sort-spos      =  2.
      x_sort-up        =  c_x.
      x_sort-subtot    = c_x.
      append x_sort to i_sort.
      clear  x_sort.
      x_sort-fieldname = 'MONAT'.
      x_sort-tabname   = 'I_FINAL'.
      x_sort-spos      =  3.
      x_sort-up        =  c_x.
      x_sort-subtot    = c_x.
      append x_sort to i_sort.
      clear  x_sort.
      x_sort-fieldname = 'MATNR'.
      x_sort-tabname   = 'I_FINAL'.
      x_sort-spos      =  4.
      x_sort-up        =  c_x.
      x_sort-subtot    = c_x.
      append x_sort to i_sort.
      clear  x_sort.
      x_sort-fieldname = 'BKLAS'.
      x_sort-tabname   = 'I_FINAL'.
      x_sort-spos      =  5.
      x_sort-up        =  c_x.
      x_sort-subtot    = c_x.
      append x_sort to i_sort.
      clear  x_sort.
      x_sort-fieldname = 'EBELN'.
      x_sort-tabname   = 'I_FINAL'.
      x_sort-spos      =  6.
      x_sort-up        =  c_x.
      x_sort-subtot    = c_x.
      append x_sort to i_sort.
      clear  x_sort.
      x_sort-fieldname = 'KOSTL'.
      x_sort-tabname   = 'I_FINAL'.
      x_sort-spos      =  7.
      x_sort-up        =  c_x.
      x_sort-subtot    = c_x.
      append x_sort to i_sort.
      clear  x_sort.
      x_sort-fieldname = 'SAKTO'.
      x_sort-tabname   = 'I_FINAL'.
      x_sort-spos      =  8.
      x_sort-up        =  c_x.
      x_sort-subtot    = c_x.
      append x_sort to i_sort.
      clear  x_sort.
      x_sort-fieldname = 'BUDAT'.
      x_sort-tabname   = 'I_FINAL'.
      x_sort-spos      =  9.
      x_sort-up        =  c_x.
      x_sort-subtot    = c_x.
      append x_sort to i_sort.
      clear  x_sort.
    endform.                    " build_sort_totals
      Form        : comment_build
      Description : This form is used to display the Report Header(ALV)
    form comment_build using lt_top_of_page type
                                            slis_t_listheader.
      data: l_line type slis_listheader,
            l_heading1 like rs38m-repti,
            l_date(10), l_time(8).
      clear l_line.
      l_heading1 = 'GR/IR DETAIL REPORT'(021).
      g_repid = sy-repid.
      write sy-uzeit to l_time.
      write sy-datum to l_date.
      l_line-typ = c_h.
      move l_heading1 to l_line-info.
      append l_line to lt_top_of_page.
      clear l_line.
      l_line-typ  = c_s.
      concatenate 'System:'(023) sy-sysid
                  'Date:'(024) l_date
                  ' Time:'(025)
                  l_time into l_line-info.
      append l_line to lt_top_of_page.
      concatenate 'Report:'(026) g_repid
                  ' User:'(027) sy-uname into
                  l_line-info.
      append l_line to lt_top_of_page.
      l_line-typ = c_a.
      move 'SELECTION CRITERIA:'(028) to l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Company Code : '(029)
                  p_bukrs into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' GR/IR Account: '(030)
                  p_grira into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Posting Date : '(032) s_budat-low
                  ' To: '(031) s_budat-high into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Plant : '(033) s_werks-low
                  ' To: '(031) s_werks-high into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Vendor: '(034) s_lifnr-low
                  ' To: '(031) s_lifnr-high into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Material: '(035) s_matnr-low
                  ' To: '(031) s_matnr-high into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Cost Center : '(036) s_kostl-low
                  ' To: '(031) s_kostl-high into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Cost Element: '(037) s_kstar-low
                  ' To: '(031) s_kstar-high into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Purchase Order: '(038) s_ebeln-low
                  ' To: '(031) s_ebeln-high into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Period : '(039) s_monat-low
                  ' To: '(031) s_monat-high into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Include Material Items: '(040)
                  p_incmt into l_line-info.
      append l_line to lt_top_of_page.
      concatenate ' Include Non-Material Items: '(041)
                  p_incnm into l_line-info.
      append l_line to lt_top_of_page.
    endform.
         Form        : call_list_viewer
         Description : This form is used to display the grid through ALV
    form call_list_viewer.
      call function 'REUSE_ALV_GRID_DISPLAY'
           exporting
                i_callback_program      = g_repid
                is_layout               = x_layout
                it_fieldcat             = i_fldcat[]
                i_default               = c_x
                it_sort                 = i_sort[]
                i_save                  = g_save
                is_variant              = g_variant
                it_events               = g_events[]
           importing
                e_exit_caused_by_caller = g_exit_caused_by_caller
                es_exit_caused_by_user  = g_exit_caused_by_user
           tables
                t_outtab                = i_final
           exceptions
                program_error           = 1
                others                  = 2.
      if sy-subrc <> 0.
        write: / 'Problem in calling the ALV report'(042).
      endif.
    endform.                    " call_list_viewer
    Regards
    Anji

  • To develope an alv report or module pool and field link.. and effor require

    HI,
    I want to display the fields with sort functionality with fields
    kunnr  kna1 table
    name1 kna1
    and email id from table ADR6 field SMTP_ADDR
    my question ison mapping
    from kna1 we can get field kunnr and name1
    and adrnr
    to put in adr6 to fetch email id
    can anyoe suggest on select statements link as table kna1 has one unique kunnr
    but it can have multiple name1 and adrnr
    so how to pick the kunnr ,name 1 and adrnr from table kna1 and map to
    adr6 table
    as witinn the table kna1 there can be multiple name1 related to one single kunnr
    so wil it be like
    select kunnr from kna1..into it_kunnr
    then select nam1 from table kna2 for all entrirs in It_kunnr
    or firse selet kunnr name1 from kna1 into table it_kunnr
    pls suggest an appropiat select statament
    and i suppose this can be achevied by alv report no need for moudle pool
    regards
    Arora

    opened  a new thread with changes subject

  • ALV issue plz help

    Hi experts
    plz help
    i have createed an alv using slis method
    in the output there must come a header
    in this header i ill have to show som details
    like on the left side of the header i want to show the details of the user and on the right side i want to show he data of vendor .
    i am able to get the data in the left side but i am not able to show the data of vendor on the right side
    the data of vendor is by default coming on left side only just below the details of user but i want to show those details on the right side of the header .
    plz tell me how to do it .
    thanx in advance.

    Hi Anit,
    I am attaching here the whole Code. It is somewhat big code so go through it thoroughly.If you still face problem reply this thread otherwise <b>REWARD POINT</b>.
    REPORT test
           MESSAGE-ID zzrefn01
           NO STANDARD PAGE HEADING
         *** Portrait: 93x80
           LINE-SIZE 150
           LINE-COUNT 80.
         *** Landscape: 132x65
         LINE-SIZE 132
         LINE-COUNT 65.
       INCLUDES                                                        **
    INCLUDE zbc_i00.                         "Customer Standard Include
    INCLUDE <icon>.                          "For Button on the ALV Tool Bar
    INCLUDE yyef_check_isp_top.
    INCLUDE yyef_check_isp_f01.
    INCLUDE yyef_check_isp_o01.
    INCLUDE yyef_check_isp_i01.
          CLASS zcl_event_handler IMPLEMENTATION
    CLASS zcl_event_handler IMPLEMENTATION.
    Top-of-page event
      METHOD top_of_page.
        PERFORM event_top_of_page
                USING z_dyndoc_id.
      ENDMETHOD.   "METHOD top_of_page
    Change Status Button
      METHOD handle_toolbar.
        IF NOT pa_prodr IS INITIAL.
          DATA: lz_toolbar  TYPE stb_button.
          CLEAR lz_toolbar.
          MOVE    'CHANGE_STATUS'  TO lz_toolbar-function.
          MOVE    text-001         TO lz_toolbar-text.
          APPEND  lz_toolbar       TO e_object->mt_toolbar.
        ENDIF.          "IF NOT pa_prodr IS INITIAL
      ENDMETHOD.   "METHOD handle_toolbar
    Handle User Command
      METHOD handle_user_command.
        CASE e_ucomm.
          WHEN 'CHANGE_STATUS'.
            LOOP AT    it_output
                 INTO  wa_output.
              IF wa_output-chk_box EQ kc_x.
                z_flag = 1.
                EXIT.
              ENDIF.          "IF wa_output-chk_box EQ kc_x
            ENDLOOP.      "LOOP AT it_output INTO  wa_output
            IF z_flag EQ 1.
              PERFORM display_selected_data.
            ELSE.
              MESSAGE i001(zzrefn01)
                      WITH text-023.
            ENDIF.       "IF z_flag EQ 1
        ENDCASE.      "CASE e_ucomm
      ENDMETHOD.   "METHOD handle_user_command
    ENDCLASS.   "zcl_event_handler IMPLEMENTATION
       Processing of selection screen                                  **
        First time initialization                                        *
        Get Default variant                                              *
    INITIALIZATION.
      z_repid = sy-repid.
      PERFORM variant_init.
      zx_variant = z_variant.
      CALL FUNCTION 'LVC_VARIANT_DEFAULT_GET'
        EXPORTING
          i_save        = kc_u
        CHANGING
          cs_variant    = zx_variant
        EXCEPTIONS
          wrong_input   = 1
          not_found     = 2
          program_error = 3
          OTHERS        = 4.
      IF sy-subrc EQ 0.
        pa_vari = zx_variant-variant.
      ELSE.
        MESSAGE i001(zzrefn01)
                WITH text-021.
      ENDIF.   "IF sy-subrc EQ 0
    *** First time initialization in online mode except calls with variant
    *** (is not processed on return from prog to selection screen)
    pa_xyz = ....
    so_xyz.....
    SET PF-STATUS 'STAT1000'.
    *** An example for select options restrictions is available
    *** in TT1/YYKA_EXPORT_START_HOST (remove comment)
        Selection screen PBO                                             *
        Comment........                                                  *
    AT SELECTION-SCREEN OUTPUT.
    *** Init selection screen, also on variants
    *** (only for online reports)
      IF NOT zn_init_seldynp IS INITIAL
      AND sy-batch IS INITIAL   "Not on batch calls (e.g. AutoSys)
      AND sy-slset IS INITIAL.  "Not on calls with variant
        IF NOT pa_prodr IS INITIAL.
          CLEAR: pa_prodr.
          MESSAGE w999(zbcc).  "Flag prod.run reseted
        ENDIF.
       CLEAR: pa_start.
      ENDIF.
      CLEAR: zn_init_seldynp.
    *** Process dynpro fields
      LOOP AT SCREEN.
      *** --> Read-Only fields
        IF screen-group1 EQ 'RDO'
        AND screen-input NE '0'
        AND screen-group3 NE 'VPU'.
          screen-input = '0'.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
        Selection screen PAI                                             *
        Comment........                                                  *
    *AT SELECTION-SCREEN ON so_xyz.
    AT SELECTION-SCREEN.
      PERFORM pai_of_selection_screen.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR pa_vari.
      PERFORM f4_for_variant.
    PERFORM btci_at_sel_screen.  "Call BTCI checks (optional)
       Program                                                         **
        Main routine                                                     *
    START-OF-SELECTION.
      PERFORM fetch_data.
      PERFORM build_data.
      PERFORM prepare_field_catalog
              CHANGING it_fieldcat.
      CALL SCREEN 100.
        End routine                                                      *
    END-OF-SELECTION.
       Interactive Reporting                                           **
        Comment........                                                  *
    AT LINE-SELECTION.
    *** Good example in TT1/YIIHART (remove comment)
        Comment........                                                  *
    AT USER-COMMAND.
      PERFORM handle_user_command.
        Comment........                                                  *
      AT PFN.
    iNCLUDE YYEF_CHECK_ISP_F01
    *&  Include           YYEF_CHECK_ISP_F01                               *
    *&      Form  pai_of_selection_screen
             Check Variant Exist or not
    FORM pai_of_selection_screen .
      IF NOT pa_vari IS INITIAL.
        MOVE z_variant TO zx_variant.
        MOVE pa_vari   TO zx_variant-variant.
        CALL FUNCTION 'LVC_VARIANT_EXISTENCE_CHECK'
          EXPORTING
            i_save        = kc_u
          CHANGING
            cs_variant    = zx_variant
          EXCEPTIONS
            wrong_input   = 1
            not_found     = 2
            program_error = 3
            OTHERS        = 4.
        IF sy-subrc EQ 2.
          MESSAGE i001(zzrefn01)
                  WITH text-024.
        ENDIF.   "IF sy-subrc EQ 2
        z_variant = zx_variant.
      ELSE.
        PERFORM variant_init.
      ENDIF.   "IF NOT pa_vari IS INITIAL
    ENDFORM.  "pai_of_selection_screen
    *&      Form  variant_init
          Initialization of Variant
    FORM variant_init .
      CLEAR z_variant.
      z_variant-report = z_repid.
    ENDFORM.                    " variant_init
    *&      Form  f4_for_variant
          F4 Help for Layout
    FORM f4_for_variant .
      CALL FUNCTION 'LVC_VARIANT_F4'
        EXPORTING
          is_variant    = z_variant
          i_save        = kc_u
        IMPORTING
          e_exit        = z_exit
          es_variant    = zx_variant
        EXCEPTIONS
          not_found     = 1
          program_error = 2
          OTHERS        = 3.
      IF sy-subrc EQ 1.
        MESSAGE i001(zzrefn01)
                WITH text-022.
      ELSE.
        IF z_exit = space.
          pa_vari = zx_variant-variant.
        ENDIF.     "IF z_exit = space
      ENDIF.     "IF sy-subrc EQ 1
    ENDFORM.   "f4_for_variant
    *&      Form  fetch_data
          Fetch data from DB tables.
    FORM fetch_data .
      SELECT *
             FROM yyeft1200
             INTO TABLE it_yyeft1200
             WHERE id_rech  IN so_idrec
             AND   fnumkred IN so_fnumk
             AND   status   IN so_stat
             AND   erdat    IN so_erdat
             ORDER BY PRIMARY KEY.
      IF sy-subrc EQ 0.
        SELECT *
               FROM yyeft1201
               INTO TABLE it_yyeft1201
               FOR ALL ENTRIES IN it_yyeft1200
               WHERE id_rech   EQ it_yyeft1200-id_rech
               AND   artnr_bp  IN so_artnr
               ORDER BY PRIMARY KEY.
        IF sy-subrc EQ 0.
          SELECT *
                 FROM  yyeft1008
                 INTO TABLE it_yyeft1008
                 FOR ALL ENTRIES IN it_yyeft1201
                 WHERE bp_refnr EQ it_yyeft1201-bprefnr.
          IF sy-subrc EQ 0.
            SORT it_yyeft1008[] BY bp_refnr.
          ENDIF.  "IF sy-subrc EQ 0.
        ENDIF.  "IF sy-subrc EQ 0.
      ELSE.
        zn_cancel = kc_x.
      ENDIF.  "IF sy-subrc EQ 0.
    ENDFORM.                    " fetch_data
    *&      Form  build_data
          Gather the data from all the internal tables into one.
    FORM build_data .
      LOOP AT it_yyeft1200
           INTO wa_yyeft1200.
        CLEAR wa_output.
        wa_output-id_rech    = wa_yyeft1200-id_rech.
        wa_output-fnumkred   = wa_yyeft1200-fnumkred.
        wa_output-status     = wa_yyeft1200-status.
        wa_output-erdat      = wa_yyeft1200-erdat.
        wa_output-bukrs      = wa_yyeft1200-bukrs.
        wa_output-belnr      = wa_yyeft1200-belnr.
        wa_output-gjahr      = wa_yyeft1200-gjahr.
        IF  wa_yyeft1200-status  GE kc_status10
        AND wa_yyeft1200-belnr   IS INITIAL.
          wa_output-com_delfnd  = 'FI Doc NOT found'(t03).
        ENDIF.
        IF  wa_yyeft1200-status    LT kc_status10
        AND NOT wa_yyeft1200-belnr IS INITIAL
        AND wa_output-com_delfnd   IS INITIAL
        AND NOT pa_det             IS INITIAL.
          wa_output-com_delfnd = 'FI Doc should be empty'(t01).
        ENDIF.
        LOOP AT it_yyeft1201
            INTO wa_yyeft1201
            WHERE id_rech EQ wa_yyeft1200-id_rech.
          wa_output-bprefnr    = wa_yyeft1201-bprefnr.
          wa_output-lfdat      = wa_yyeft1201-lfdat.
          wa_output-artnr_bp   = wa_yyeft1201-artnr_bp.
          READ TABLE it_yyeft1008
               WITH KEY bp_refnr = wa_yyeft1201-bprefnr
               BINARY SEARCH
               TRANSPORTING NO FIELDS.
          IF sy-subrc EQ 0.
            LOOP AT it_yyeft1008
                 INTO wa_yyeft1008
                 FROM sy-tabix.
              IF wa_yyeft1008-bp_refnr NE wa_yyeft1201-bprefnr.
                EXIT.
              ENDIF.
              wa_output-id_anlief  = wa_yyeft1008-id_anlief.
              IF NOT pa_det               IS INITIAL
              OR NOT wa_output-com_delfnd IS INITIAL.
                APPEND wa_output TO it_output.
              ENDIF.
            ENDLOOP.  "LOOP AT it_yyeft1008
          ELSE.
            CLEAR wa_output-id_anlief.
            wa_output-com_delfnd = 'Deliv. NOT found'(t06).
            APPEND wa_output TO it_output.
          ENDIF.
        ENDLOOP.  "LOOP AT it_yyeft1201
        IF sy-subrc NE 0.
          wa_output-com_delfnd = 'No Detail records in YYEFT1201'(e01).
          APPEND wa_output TO it_output.
        ENDIF.  "IF sy-subrc NE 0.
      ENDLOOP.  "LOOP AT it_yyeft1200
    Checkbox Editable for Production Run
      IF pa_prodr IS INITIAL.
        LOOP AT   it_output
             INTO wa_output.
          zs_style-fieldname = 'CHK_BOX'.
          zs_style-style     = cl_gui_alv_grid=>mc_style_disabled.
          INSERT zs_style INTO TABLE wa_output-celltab.
          MODIFY it_output FROM wa_output
                 TRANSPORTING celltab.
        ENDLOOP.      "LOOP AT it_output INTO wa_output.
      ENDIF.      "IF pa_prodr IS INITIAL
      LOOP AT   it_output
           INTO wa_output.
        IF  wa_output-status GE kc_status10
        AND wa_output-belnr  IS INITIAL
        AND NOT pa_prodr     IS INITIAL.
          zs_style-fieldname = 'CHK_BOX'.
          zs_style-style     = cl_gui_alv_grid=>mc_style_enabled.
          INSERT zs_style INTO TABLE wa_output-celltab.
          MODIFY it_output FROM wa_output
                 TRANSPORTING celltab.
        ENDIF.      "IF wa_output-status GE kc_status10
      ENDLOOP.    "LOOP AT it_output INTO wa_output
    ENDFORM.   "build_data
    *&      Form  prepare_field_catalog
          Field Catalog Preparation
         <--PIT_FIELDCAT     Field catalog
    FORM prepare_field_catalog
         CHANGING pit_fieldcat TYPE lvc_t_fcat.
      DATA: ls_fcat TYPE lvc_s_fcat.
      IF it_output1 IS INITIAL.
      Check Box
        CLEAR ls_fcat.
        ls_fcat-fieldname  = 'CHK_BOX'.
        ls_fcat-datatype   = 'CHAR'.
        ls_fcat-intlen     = '1'.
        ls_fcat-edit       = kc_x.
        ls_fcat-coltext    = text-014.
        ls_fcat-checkbox   = kc_x.
        ls_fcat-outputlen  = '5'.
        APPEND ls_fcat TO pit_fieldcat.
      ENDIF.      "IF it_output1 IS INITIAL
    ID RECH
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'ID_RECH'.
      ls_fcat-outputlen  = '10'.
      ls_fcat-coltext    = text-002.
      APPEND ls_fcat TO pit_fieldcat.
    BP Reference
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'BPREFNR'.
      ls_fcat-outputlen  = '15'.
      ls_fcat-coltext    = text-003.
      APPEND ls_fcat TO pit_fieldcat.
    Delivery date
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'LFDAT'.
      ls_fcat-outputlen  = '10'.
      ls_fcat-coltext    = text-004.
      APPEND ls_fcat TO pit_fieldcat.
    Article
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'ARTNR_BP'.
      ls_fcat-outputlen  = '18'.
      ls_fcat-coltext    = text-005.
      APPEND ls_fcat TO pit_fieldcat.
    Account Payable invoice
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'FNUMKRED'.
      ls_fcat-outputlen  = '16'.
      ls_fcat-coltext    = text-006.
      APPEND ls_fcat TO pit_fieldcat.
    Status
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'STATUS'.
      ls_fcat-outputlen  = '2'.
      ls_fcat-coltext    = text-007.
      APPEND ls_fcat TO pit_fieldcat.
    Create date
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'ERDAT'.
      ls_fcat-outputlen  = '10'.
      ls_fcat-coltext    = text-008.
      APPEND ls_fcat TO pit_fieldcat.
    Comment
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'COM_DELFND'.
      ls_fcat-outputlen  = '25'.
      ls_fcat-coltext    = text-009.
      APPEND ls_fcat TO pit_fieldcat.
    Delivery ID
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'ID_ANLIEF'.
      ls_fcat-outputlen  = '10'.
      ls_fcat-coltext    = text-010.
      APPEND ls_fcat TO pit_fieldcat.
    Company Code
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'BUKRS'.
      ls_fcat-outputlen  = '4'.
      ls_fcat-coltext    = text-011.
      APPEND ls_fcat TO pit_fieldcat.
    Accounting Document Number
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'BELNR'.
      ls_fcat-outputlen  = '10'.
      ls_fcat-coltext    = text-012.
      APPEND ls_fcat TO pit_fieldcat.
    Financial Year
      CLEAR ls_fcat.
      ls_fcat-fieldname  = 'GJAHR'.
      ls_fcat-outputlen  = '4'.
      ls_fcat-coltext    = text-013.
      APPEND ls_fcat TO pit_fieldcat.
    ENDFORM.                    " prepare_field_catalog
    *&      Form  EVENT_TOP_OF_PAGE
          TOP-OF-PAGE Preparation
         -->z_dyndoc_id  Text of TOP-OF-PAGE
    FORM event_top_of_page
         USING   z_dyndoc_id TYPE REF TO cl_dd_document.
      DATA : lz_text(255) TYPE c.
    System ID
      CLEAR :     lz_text.
      CONCATENATE text-015
                  sy-sysid
                  INTO lz_text
                  SEPARATED BY space.
      PERFORM     add_text
                  USING lz_text.
      CALL METHOD z_dyndoc_id->new_line.
    Title
      CLEAR :     lz_text.
      CONCATENATE text-016
                  sy-title
                  INTO lz_text
                  SEPARATED BY space.
      PERFORM     add_text
                  USING lz_text.
      CALL METHOD z_dyndoc_id->new_line.
    Date
      CLEAR :     lz_text.
      WRITE       sy-datum TO lz_text.
      CONCATENATE text-017
                  lz_text
                  INTO lz_text
                  SEPARATED BY space.
      PERFORM     add_text
                  USING lz_text.
      CALL METHOD z_dyndoc_id->new_line.
    User ID
      CLEAR :     lz_text.
      CONCATENATE text-018
                  sy-uname
                  INTO lz_text
                  SEPARATED BY space.
      PERFORM     add_text
                  USING lz_text.
      CALL METHOD z_dyndoc_id->new_line.
    Time
      CLEAR :     lz_text.
      WRITE       sy-uzeit TO lz_text.
      CONCATENATE text-019
                  lz_text
                  INTO lz_text
                  SEPARATED BY space.
      PERFORM     add_text
                  USING lz_text.
      CALL METHOD z_dyndoc_id->new_line.
    Program Name
      CLEAR :     lz_text.
      WRITE       sy-repid TO lz_text.
      CONCATENATE text-020
                  lz_text
                  INTO lz_text
                  SEPARATED BY space.
      PERFORM     add_text
                  USING lz_text.
      CALL METHOD z_dyndoc_id->new_line.
    Populating data to TOP-OF-PAGE
      PERFORM top-of-page.
    ENDFORM.                    " EVENT_TOP_OF_PAGE
    *&      Form  ADD_TEXT
          Add Text To TOP-OF-PAGE
    FORM add_text
         USING p_text TYPE sdydo_text_element.
      CALL METHOD z_dyndoc_id->add_text
        EXPORTING
          text = p_text.
    ENDFORM.                    " ADD_TEXT
    *&      Form  TOP-OF-PAGE
          TOP-OF-PAGE
    FORM top-of-page.
      CALL METHOD z_dyndoc_id->display_document
        EXPORTING
          reuse_control      = kc_x
          parent             = z_parent_top
        EXCEPTIONS
          html_display_error = 1.
      IF sy-subrc NE 0.
        MESSAGE i001(zzrefn01)
                WITH text-036 ' '.
      ENDIF.      "IF sy-subrc NE 0
    ENDFORM.   "TOP-OF-PAGE
    *&      Form  handle_user_command
          Handle the user command
    FORM handle_user_command .
      DATA lzi_lin TYPE i.
      REFRESH ra_id_rech[].
      CLEAR ra_id_rech.
      ra_id_rech-sign   = kc_include.
      ra_id_rech-option = kc_equal.
      CASE sy-ucomm.
        WHEN kc_ucomm-upd.
          DESCRIBE LIST NUMBER OF LINES lzi_lin.
          DO lzi_lin TIMES.
            CLEAR wa_output.
            READ LINE sy-index
                 FIELD VALUE wa_output-chk_box
                             wa_output-id_rech.
            IF sy-subrc NE 0.
              EXIT.
            ELSE.
              IF wa_output-chk_box EQ kc_x.
                ra_id_rech-low    = wa_output-id_rech.
                APPEND ra_id_rech.
              ENDIF.
            ENDIF.
          ENDDO.
          IF NOT ra_id_rech IS INITIAL.
            SORT ra_id_rech BY low.
            DELETE ADJACENT DUPLICATES FROM ra_id_rech
                   COMPARING low.
            IF NOT pa_prodr IS INITIAL.
              UPDATE yyeft1200
                     SET status = kc_status00
                     WHERE id_rech IN ra_id_rech.
              IF sy-subrc EQ 0.
                MESSAGE s900(zbcc)
                        WITH 'Status change successful'(m08)
                             space
                             space
                             space.
              ELSE.
                MESSAGE i900(zbcc)
                        WITH 'Status change failed'(m09)
                             space
                             space
                             space.
              ENDIF.  "IF sy-subrc EQ 0.
            ELSE.
              MESSAGE i900(zbcc)
                      WITH 'TEST RUN: NO databases will be changed'(m03)
                           space
                           space
                           space.
            ENDIF.  "IF NOT pa_prodr IS INITIAL.
          ELSE.
            MESSAGE i900(zbcc)
                    WITH 'Atleast one line should be selected'(m01)
                         'in order to update.'(m02)
                         space
                         space.
          ENDIF.  "IF NOT ra_id_rech IS INITIAL
        WHEN kc_ucomm-back
          OR kc_ucomm-exit
          OR kc_ucomm-cancel.
          LEAVE TO SCREEN 0.
        WHEN OTHERS.
      ENDCASE.  "CASE sy-ucomm
    ENDFORM.                    " handle_user_command
    *&      Form  display_selected_data
          Display Selected Data
    FORM display_selected_data.
      LOOP AT it_output
              INTO wa_output
              WHERE chk_box EQ kc_x.
        MOVE-CORRESPONDING wa_output TO wa_output1.
        APPEND wa_output1 TO it_output1.
      ENDLOOP.   "LOOP AT it_output
    call dialog screen and display new alv control
      IF NOT it_output1[] IS INITIAL.
        CALL SCREEN 101 STARTING AT 10 5.
      ENDIF.    "IF NOT it_output1[] IS INITIAL
    ENDFORM.   " change_status
    iNCLUDE YYEF_CHECK_ISP_I01
    *&  Include           YYEF_CHECK_ISP_I01                               *
    *&      Module  USER_COMMAND_0100  INPUT
          Handle user command for screen 0100
    MODULE user_command_0100 INPUT.
      CASE sy-ucomm.
        WHEN kc_ucomm-back.
          LEAVE TO SCREEN 0.
        WHEN kc_ucomm-exit.
          LEAVE TO SCREEN 0.
      ENDCASE.                 "CASE sy-ucomm.
    ENDMODULE.              "USER_COMMAND_0100  INPUT
    *&      Module  USER_COMMAND_0101  INPUT
          Handle User Command for screen 0101
    MODULE user_command_0101 INPUT.
      CASE sy-ucomm.
        WHEN kc_ucomm-back.
          LEAVE TO SCREEN 0.
      ENDCASE.      "CASE sy-ucomm
    ENDMODULE.    " USER_COMMAND_0101  INPUT
    Include YYEF_CHECK_ISP_O01
    *&  Include           YYEF_CHECK_ISP_O01                               *
    *&      Module  PBO  OUTPUT
          OO ALV Display
    MODULE pbo OUTPUT.
      CREATE OBJECT z_container
             EXPORTING container_name = kc_container.
    Create TOP-Document
      CREATE OBJECT z_dyndoc_id
             EXPORTING style = kc_alv.
    Create Splitter for custom_container
      CREATE OBJECT z_splitter
             EXPORTING parent  = z_container
                       rows    = 2
                       columns = 1.
    For TOP-OF-PAGE
      CALL METHOD z_splitter->get_container
        EXPORTING
          row       = 1
          column    = 1
        RECEIVING
          container = z_parent_top.
    For ALV Display
      CALL METHOD z_splitter->get_container
        EXPORTING
          row       = 2
          column    = 1
        RECEIVING
          container = z_parent_grid.
    Set height for g_parent_html
      CALL METHOD z_splitter->set_row_height
        EXPORTING
          id     = 1
          height = 20.
      CREATE OBJECT z_grid
             EXPORTING i_parent = z_parent_grid.
    Set Handler for TOP-OF-PAGE
      CREATE OBJECT z_handler.
      SET HANDLER z_handler->top_of_page FOR z_grid.
      z_repid = sy-repid.
      z_variant-report = z_repid.
    Display ALV
      zs_layout-stylefname = kc_style.
      CALL METHOD z_grid->set_table_for_first_display
        EXPORTING
          is_layout       = zs_layout
          i_save          = kc_u
          is_variant      = z_variant
        CHANGING
          it_outtab       = it_output[]
          it_fieldcatalog = it_fieldcat.
    Processing TOP-OF-PAGE Event
      CALL METHOD z_grid->list_processing_events
        EXPORTING
          i_event_name = kc_top
          i_dyndoc_id  = z_dyndoc_id.
    Set handler for ALV Tool Bar
      SET HANDLER z_handler->handle_toolbar      FOR z_grid.
      SET HANDLER z_handler->handle_user_command FOR z_grid.
      CALL METHOD z_grid->set_toolbar_interactive.
    ENDMODULE.                 " PBO  OUTPUT
    *&      Module  STATUS_0100  OUTPUT
          Set the GUI status
    MODULE status_0100 OUTPUT.
      SET PF-STATUS kc_status.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    *&      Module  STATUS_0101  OUTPUT
          Display selected records on screen 0101
    MODULE status_0101 OUTPUT.
      SET TITLEBAR kc_title.
      CREATE OBJECT z_container1
             EXPORTING container_name = kc_container1.
      CREATE OBJECT z_grid1
             EXPORTING i_parent = z_container1.
      PERFORM prepare_field_catalog
              CHANGING it_fieldcat1.
    Display ALV
      CALL METHOD z_grid1->set_table_for_first_display
        EXPORTING
          is_layout       = zs_layout
        CHANGING
          it_outtab       = it_output1[]
          it_fieldcatalog = it_fieldcat1.
    ENDMODULE.                 " STATUS_0101  OUTPUT
    INCLUDE YYEF_CHECK_ISP_TOP
    *&  Include           YYEF_CHECK_ISP_TOP                               *
       DATA DEFINITIONS                                                **
        Class declarations                                               *
    *class zcl_xyz definition deferred.
    CLASS :cl_gui_alv_grid DEFINITION LOAD,
           cl_gui_custom_container DEFINITION LOAD.
        Tables (old SAP style, please avoid and use workareas instead)   *
    TABLES: yyeft1200,
            yyeft1201.
    *tables: xyz.
        Controls                                                         *
    *controls: ctrl_xyz.
        Types                                                            *
    TYPES: BEGIN OF ty_output,
             chk_box(1) TYPE c,
             celltab    TYPE lvc_t_styl,
             id_rech    TYPE yyeft1200-id_rech,
             bprefnr    TYPE yyeft1201-bprefnr,
             lfdat      TYPE yyeft1201-lfdat,
             artnr_bp   TYPE yyeft1201-artnr_bp,
             fnumkred   TYPE yyeft1200-fnumkred,
             status     TYPE yyeft1200-status,
             erdat      TYPE yyeft1200-erdat,
             com_delfnd TYPE char25,
             id_anlief  TYPE yyeft1008-id_anlief,
             bukrs      TYPE yyeft1200-bukrs,
             belnr      TYPE yyeft1200-belnr,
             gjahr      TYPE yyeft1200-gjahr,
           END OF ty_output.
    TYPES: BEGIN OF ty_output1,
             celltab    TYPE lvc_t_styl,
             id_rech    TYPE yyeft1200-id_rech,
             bprefnr    TYPE yyeft1201-bprefnr,
             lfdat      TYPE yyeft1201-lfdat,
             artnr_bp   TYPE yyeft1201-artnr_bp,
             fnumkred   TYPE yyeft1200-fnumkred,
             status     TYPE yyeft1200-status,
             erdat      TYPE yyeft1200-erdat,
             com_delfnd TYPE char25,
             id_anlief  TYPE yyeft1008-id_anlief,
             bukrs      TYPE yyeft1200-bukrs,
             belnr      TYPE yyeft1200-belnr,
             gjahr      TYPE yyeft1200-gjahr,
           END OF ty_output1.
    TYPES: BEGIN OF ty_status,
             id_rech TYPE yyeft1200-id_rech,
           END OF ty_status.
    *TYPES-POOLS: xyz.
    *TYPES: ty_xyz.
        Internal tables                                                  *
    *DATA: it_xyz.
    DATA: it_yyeft1200 TYPE STANDARD TABLE OF yyeft1200,
          it_yyeft1201 TYPE SORTED   TABLE OF yyeft1201
                       WITH UNIQUE KEY id_rech posnr,
          it_yyeft1008 TYPE STANDARD TABLE OF yyeft1008,
          it_output    TYPE STANDARD TABLE OF ty_output,
          it_output1   TYPE STANDARD TABLE OF ty_output1,
          it_fieldcat  TYPE lvc_t_fcat,
          it_fieldcat1 TYPE lvc_t_fcat.
        Workareas                                                        *
    *DATA: wa_xyz.
    DATA: wa_yyeft1200 TYPE yyeft1200,
          wa_yyeft1201 TYPE yyeft1201,
          wa_yyeft1008 TYPE yyeft1008,
          wa_output    TYPE ty_output,
          wa_output1    TYPE ty_output1.
    *****OO ALV DATA DECLARATION
    DATA:  zs_style           TYPE        lvc_s_styl,
           zs_layout          TYPE        lvc_s_layo,
           z_container        TYPE REF TO cl_gui_custom_container,
           z_container1       TYPE REF TO cl_gui_custom_container,
           z_grid             TYPE REF TO cl_gui_alv_grid,
           z_grid1            TYPE REF TO cl_gui_alv_grid,
           z_dyndoc_id        TYPE REF TO cl_dd_document,
           z_splitter         TYPE REF TO cl_gui_splitter_container,
           z_parent_grid      TYPE REF TO cl_gui_container,
           z_parent_top       TYPE REF TO cl_gui_container.
        Constants                                                        *
    *constants: kc_xyz         value ...     "character
    *constants: kn_xyz         value ...     "numeric
    *constants: ki_xyz         value ...     "integer
    *constants: kp_xyz         value ...     "packed
    *constants: kx_xyz         value ...     "hex
    CONSTANTS: kc_status00   TYPE yyeft1200-status VALUE '00',
               kc_status10   TYPE yyeft1200-status VALUE '10',
               kc_x          TYPE char01           VALUE 'X',
               kc_include    TYPE char01           VALUE 'I',
               kc_equal(2)   TYPE c                VALUE 'EQ',
               kc_status(11) TYPE c                VALUE 'ZGUI_STATUS',
               kc_container  TYPE char10           VALUE 'ZCONTAINER',
               kc_container1 TYPE char11           VALUE 'ZCONTAINER1',
               kc_u          TYPE char01           VALUE 'U',
               kc_top        TYPE char30           VALUE 'TOP_OF_PAGE',
               kc_alv        TYPE char50           VALUE 'ALV_GRID',
               kc_style      TYPE char07           VALUE 'CELLTAB',
               kc_title      TYPE char07           VALUE 'ZTITLE'.
    CONSTANTS: BEGIN OF kc_ucomm,
                 upd     TYPE sy-ucomm VALUE  'UPD',
                 back    TYPE sy-ucomm VALUE  'BACK',
                 exit    TYPE sy-ucomm VALUE  'EXIT',
                 cancel  TYPE sy-ucomm VALUE  'CANCEL',
               END OF kc_ucomm.
        Sentence counters                                                *
    *data: cnt_xyz type i value 0.
        Calculation variables (Rechenfelder)                             *
    *data: r_xyz.
        Switches                                                         *
    *data: sw_xyz(1) type n value 0.
        Misc variables                                                   *
    *DATA: z_xyz.
    *** Initialization of parameters at call of/return to
    *** selection dynpro (for Online-only-reports)
    DATA: zn_init_seldynp(1) TYPE n
                                  VALUE 1.

  • Java Mail Project HELP Required....URGENT PLZ HELP!!!

    hello there!!
    i took up a pjct for my engineering on java mail..got the code..and i thought that ill analyse it...the code is submitting the mail to the smtp server but after dat its failing to deliver to the client..as i can see this error in the logs on SMTP server...can anyone help me out in analysing this code!!!
    plz help, exams are near...(am new to java)
    //java FINAL!
    import javax.swing.*;
    import java.net.URL;
    import javax.mail.*;
    import javax.mail.internet.*;
    import java.util.*;
    import java.awt.*;
    import java.awt.event.*;
    public class EmailProg extends JPanel implements ActionListener {
    protected JTextArea textArea;
    protected String newline = "\n";
    static final private String composemail = "compose";
    static final private String sendmail = "send";
    static final private String about = "about";
    static final private String submit = "submit";
    static final private String exit = "exit";
    JLabel lSubmit = new JLabel("Submit");
    JButton subbutton = new JButton();
    JTextArea emailfrom = new JTextArea(1,1);
    JTextArea emailto = new JTextArea(1, 1);
    JTextArea emailsubject = new JTextArea(1, 1);
    JTextArea emailmessage = new JTextArea(25, 1);
    //------BAG LAYOUT
    JLabel lFrom = new JLabel("From:");
    JTextField cFrom = new JTextField(32);
    JLabel lTo = new JLabel("To:");
    JTextField cTo = new JTextField(32);
    JFrame frame2 = new JFrame("Compose New");
    JLabel lSubject = new JLabel("Subject");
    JTextField cSubject = new JTextField(32);
    JLabel lMessage = new JLabel("Body");
    JTextArea cMessage = new JTextArea(5,32);
    //====================================
    public EmailProg() {
    super(new BorderLayout());
    //Create the toolbar.
    JToolBar toolBar = new JToolBar();
    addButtons(toolBar);
    //Create the text area used for output. Request
    //enough space for 5 rows and 30 columns.
    textArea = new JTextArea(5, 30);
    textArea.setEditable(false);
    textArea.setText("Welcome to Jeff's email program! With this program you can compose and send emails. I hope I get a good grade on thise, and marine world finds a good use for it :-D:-D (implements really just testing the scroller!!!)");
    JScrollPane scrollPane = new JScrollPane(textArea);
    //Lay out the main panel.
    setPreferredSize(new Dimension(450, 110));
    add(toolBar, BorderLayout.NORTH);
    add(scrollPane, BorderLayout.CENTER);
    //==================================
    protected void addButtons(JToolBar toolBar) {
    JButton button = null;
    //first button
    button = makeNavigationButton("/toolbarButtonGraphics/general/ComposeMail24.gif", composemail ,"Compose new Email", "compose new");
    toolBar.add(button);
    //second button
    button = makeNavigationButton("toolbarButtonGraphics/general/SendMail24.gif", sendmail,"Send The Mail","send");
    toolBar.add(button);
    //third button
    button = makeNavigationButton("toolbarButtonGraphics/general/About24.gif", about,"About","About");
    toolBar.add(button);
    //exit button
    button = makeNavigationButton("toolbarButtonGraphics/general/Stop24.gif", exit, "Exit", "Exit");
    toolBar.add(button);
    //===================================
    protected JButton makeNavigationButton(String imageName, String actionCommand, String toolTipText, String altText) {
    //Look for the image.
    String imgLocation = imageName;
    URL imageURL = EmailProg.class.getResource(imgLocation);
    //Create and initialize the button.
    JButton button = new JButton();
    button.setActionCommand(actionCommand);
    button.setToolTipText(toolTipText);
    button.addActionListener(this);
    if (imageURL != null) {                      //image found
    button.setIcon(new ImageIcon(imageURL));
    } else {                                     //no image found
    button.setText(altText);
    System.err.println("Resource not found: "+ imgLocation);
    return button;
    //=============================
    public void actionPerformed(ActionEvent e) {
    String cmd = e.getActionCommand();
    String description = null;
    // Handle each button.
    if (exit.equals(cmd)){
    textArea.setText("");
    description = "EXITING";
    System.exit(0);
    if (composemail.equals(cmd)) { //first button clicked
    textArea.setText("");
    description = "Write new mail.";
    composeWindow();
    } else if (sendmail.equals(cmd)) { // second button clicked
    textArea.setText("");
    description = "This button does'nt do anything yet :x";
    } else if (about.equals(cmd)) { // third button clicked
    textArea.setText("");
    description = "About this program. (See pop-up)";
    coolWindow();
    else if (submit.equals(cmd))
    if (cFrom.getText().equals("")||cTo.getText().equals("")||cSubject.getText().equals("")||cMessage.getText().equals(""))
    textArea.setText("One or more of the fields was not filled in.");
    else{
    try {
    String smtpServer="serverhere";
    String to=cTo.getText();
    String from=cFrom.getText();
    String subject=cSubject.getText();
    String body=cMessage.getText();
    send(smtpServer, to, from, subject, body);
    textArea.setText("");
    description = "Mail Sent.";
    JOptionPane.showMessageDialog(null, "Message Sent.");
    catch (Exception ex)
    System.out.println("Usage: java com.lotontech.mail.SimpleSender"
    +" smtpServer toAddress fromAddress subjectText bodyText");
    //CLOSE THE FRAME2 WINDOW IIIIIIIIFFFFFFF SENDING IS SUCCESSFUL!!
    }//end of else during send
    }//end of if of submit
    displayResult(description);
    //============================
    protected void displayResult(String actionDescription) {
    textArea.append(actionDescription + newline);
    //=============================
    public void coolWindow() {
    JFrame frame = new JFrame("About");
    JTextArea filecontents = new JTextArea();
    filecontents.setText("Use the tool bar to compose\n compose new emails, in which you can\n send to anyone on the\n srvhs email server. \n Fill in all the blanks before pressing send. If you dont\n you will receive an error! \n For more information about this program click on the\n information button.");
    frame.getContentPane().add(filecontents, BorderLayout.CENTER);
    frame.pack();
    frame.setResizable(false);
    frame.setSize(300,200);
    frame.setVisible(true);
    //===============================
    public void composeWindow() {
    frame2.getContentPane().setLayout(new GridBagLayout());
    frame2.setResizable(false);
    frame2.setSize(600,500);
    frame2.setVisible(true);
    GridBagConstraints gbc = new GridBagConstraints();
    gbc.insets = new Insets(5, 10, 5, 10);
    cMessage.setLineWrap(true);
    subbutton = makeNavigationButton("toolbarButtonGraphics/general/SendMail24.gif", submit,"submit","submit");
    addRow(gbc, lFrom, cFrom);
    addRow(gbc, lTo, cTo);
    addRow(gbc, lSubject, cSubject);
    addRow(gbc, lMessage, cMessage);
    addRow(gbc, lSubmit, subbutton);
    //===============================
    private void addRow(GridBagConstraints gbc, Component left, Component right) {
    gbc.gridx = GridBagConstraints.RELATIVE;
    gbc.gridy = GridBagConstraints.RELATIVE;
    gbc.gridheight = 1;
    gbc.gridwidth = 1;
    gbc.anchor = GridBagConstraints.EAST;
    frame2.getContentPane().add(left, gbc);
    gbc.gridwidth = GridBagConstraints.REMAINDER;
    gbc.anchor = GridBagConstraints.WEST;
    frame2.getContentPane().add(right, gbc);
    frame2.pack();
    //=======================
    public static void send(String smtpServer, String to, String from, String subject, String body) {
    try {
    Properties props = System.getProperties();
    props.put("localhost", smtpServer);
    Session session = Session.getDefaultInstance(props, null);
    System.out.println(smtpServer);
    // -- Create a new message --
    Message msg = new MimeMessage(session);
    // -- Set the FROM and TO fields --
    msg.setFrom(new InternetAddress(from));
    msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to, false));
    // -- We could include CC recipients too --
    // if (cc != null)
    // msg.setRecipients(Message.RecipientType.CC
    // ,InternetAddress.parse(cc, false));
    // -- Set the subject and body text --
    msg.setSubject(subject);
    msg.setText(body);
    // -- Set some other header information --
    msg.setHeader("X-Mailer", "LOTONtechEmail");
    msg.setSentDate(new Date());
    // -- Send the message --
    Transport.send(msg);
    System.out.println("Message sent OK.");
    catch (Exception ex)
    ex.printStackTrace();
    public static void main(String[] args) {
    JFrame frame = new JFrame("EmailProg");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    EmailProg newContentPane = new EmailProg();
    newContentPane.setOpaque(true);
    frame.setContentPane(newContentPane);
    //Display the window.
    frame.pack();
    frame.setVisible(true);
    }

    The code to retrieve the messages from SMTP
    finally all working fine...
    thanx guys!!!
    package EmailProg;
    import javax.mail.*;
    import javax.mail.internet.*;
    import java.util.*;
    import java.io.*;
      * A simple email receiver class.
    public class SimpleReceiver
        * Main method to receive messages from the mail server specified
        * as command line arguments.
      public static void main(String args[])
        try
          String popServer=args[0];
          String popUser=args[1];
          String popPassword=args[2];
          receive(popServer, popUser, popPassword);
        catch (Exception ex)
          System.out.println("Usage: java com.mail.SimpleReceiver" +" popServer popUser popPassword");
        System.exit(0);
         * "receive" method to fetch messages and process them.
       public static void receive(String popServer, String popUser, String popPassword)
         Store store=null;
         Folder folder=null;
         try
           // -- Get hold of the default session --
           Properties props = System.getProperties();
           Session session = Session.getDefaultInstance(props, null);
           // -- Get hold of a POP3 message store, and connect to it --
           store = session.getStore("pop3");
           store.connect(popServer, popUser, popPassword);
           // -- Try to get hold of the default folder --
           folder = store.getDefaultFolder();
           if (folder == null) throw new Exception("No default folder");
           // -- ...and its INBOX --
           folder = folder.getFolder("INBOX");
           if (folder == null) throw new Exception("No POP3 INBOX");
           // -- Open the folder for read only --
           folder.open(Folder.READ_ONLY);
           // -- Get the message wrappers and process them --
           Message[] msgs = folder.getMessages();
           for (int msgNum = 0; msgNum < msgs.length; msgNum++)
             System.out.println(msgs[msgNum]);
         catch (Exception ex)
           ex.printStackTrace();
         finally
           // -- Close down nicely --
           try
             if (folder!=null) folder.close(false);
             if (store!=null) store.close();
           catch (Exception ex2) {ex2.printStackTrace();
      }

  • Please help on this requirement ..  to develop an ALV report

    When there are changes in VC characteristic allowed values or in VC tables there is need to ensure that they will not affect existing orders or orders created with reference to the ones that have the corresponding value. Currently there is no report that will tell whether it is safe to delete a VC characteristic value and the solution has so far been to rename the description as u201CDo not useu201D. In a similar way, when a VC table is changed often existing orders need to be changed so that they take the new determination of value starting from a certain date.
    This requirement is for a report to show not archived orders that contain a certain value for a characteristic.
    Moderator Message: Do not expect others to do your work for you.
    Edited by: kishan P on Nov 26, 2010 10:50 AM

    Hi All ,
    my requirement is : Accepting Invoice Through EDI , for this reqirement i need to work out in Inbound side , why means i am going to get a invoice file in (AL11) i need to update that invoice Data into t.code (FB60), can any one please suggest me which method i need to use (i.e Message control or with out message control ) or any code for Accepting Invoice data , please help me out .
    Rgds
    Rafi.Vanalli .

  • 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.

  • Need some direction on developing a web service.

    Hi,
    My requirement is to develop a web service and expose 8 Oracle views as methods that can be invoked that will give the data within those views in XML format.
    What is the best approach in doing this?
    I've tried developing a PLSLQ procedure and publishing it as a web service but see that there are limitations related in using a PLSQL record type as out variable
    Not sure if I can do this by developing a BPEL process.
    Appreicate your help on this..
    Thanks
    -Prapoorna

    Here are some sample apps and tutorials that might help:
    http://brianchau.wordpress.com/2008/02/12/flash-media-server-3-demos/
    especially the VideoRecorder one.

  • After Effects CS4 crash report (PLZ HELP I NEED IT WORKING DESPERATELY)

    Ok, I'll type the window EXACTLY (There's 2 errors I need to fix): -
    After Effects error: Crash in progress. Last logged message was:,7832.
    <ASL.ResourceUtils.GetLanguageIDFromRegistry> >0< Unable to
    obtain the User 'Language' registry key at: Software\Adobe\After
    Effects\9.0.3\ Defaulting to 'en_US'.
    After Effects can't continue: sorry, After Effects has crashed. See
    http://www.adobe.com/support/products/aftereffects.html for known
    issues. If you still can't resolve the issue, please contact Adobe
    Technical Support (2)
    (0::42)
    I'm using CS4 ONLY because I have a 32 bit Windows 8.1 computer which has Nvidia GFX card and an i5 processor.
    It has 4GB of RAM and that's all you need to know. Please help me guys. <3
    Thnx,

    What I meant was that it was running at all was a lucky happenstance.
    xX360noscopfazeopticXx wrote:
    Could Adobe actually see my personal data of my computer and just put an error message there to prevent me from using After Effects just because they realized that I have a Windows 8.1 32 bit computer?
    No. There is no way they could do that. Especially not in CS4.
    There are a lot of people in the same situation as you who pop on the forums with some frequency. Well, not usually trying to run such an old version - it's usually CS5 or CS5.5, but the issues are similar: odd error messages. Trying to run old versions of software on new, unsupported operating systems can be a fun exercise (like getting Linux installed on a potato). However, even if it does work for a while, the least little thing can cause it to foul up. Maybe Windows updated, maybe a background service that wasn't running before is running now, maybe something subtle changed in your registry or your display settings or any of a thousand different things. The bottom line is that something changed between when it was working and now.
    The error message seems to indicate some sort of issue in your registry. That is a tricky area to mess around in. Have you installed ANYTHING on your computer between when it was working and now? Added any browser extensions? Installed any codec packs? Downloaded any apps? Updated any software?
    By the way, it's not very expensive to bump up to a 64-bit version of your OS if you did want to use a modern version of After Effects. I mean, if you want to continue working with After Effects, it would be a lot easier to use an older OS or a newer AE than to keep trying to kludge it like we are.

Maybe you are looking for

  • HP Photosmart Printer hangs - Snow Leopard

    I have an iMac and 2 MacBook Pros, all running Snow Leopard.  Using a Cisco Linksys WRT610 Router.  I have an HP Photosmart All-in-One printer that has been working flawlessly over WLAN for almost two years.   Over the last month or two I have starte

  • Networking g5 with pc

    i have a new g5 that is connected to a cable modem. i'm wanting to setup a wireless network with it and my pc. i bought a linksys router and already have a wireless card for the pc. but after reading on here and various other sources, linksys isn't c

  • Dell DataSafe vs Windows 7 Backup & restore

    I bought a Dell I620. I made 3 disks using Dell's DataSafe program. I used DVD+R disks for that. I'm hearing that DVD disks are not that reliable. I plan eventually to get a Ext HD, because they have come down a lot in cost. Until then, what type of

  • Are there any workarounds for iMacs not having flash?

    I recently purchased a new iMac and browsing the web/web research has been a challenge. Most often than not while browsing safari I run into a limitation due to the lack of adobe flash support. Last night my wife spent a half hour filling out an appl

  • Connect with correct server

    Dear expert      SAP in working with current server .We just change the server and connect to new server But we dont connect client machine to server.We dont known about that very well so please provide me solution in details,. Thanks Ashish Agrawal