How to quickly go to top of page or end of page

i hve looked everywhere but cant find the answer. pls help.
when the web pages are lengthy, i cant go to top or end of page instantly.
thanks

That feature does not exist.

Similar Messages

  • How do I edit my Top Sites Page on Mavericks?

    I am trying to figure out how do I edit the top sites page. Before you were able to click an edit button that allowed you to delete and pin the pages but now I can't figure it out. More specifically I want to know who to delete certain pages.

    I know this is old, but I just figured I would shed some light on solving the issue I think you are actually speaking of. When I upgraded, I immediately noticed I could not click "edit" in the bottom corner to change the amount of top sites, which slightly irritated me. I tried everything, and eventually thought they had done away with the feature altogether, but then I saw if you click safari (from here, that Bold Safari word in the top left corner of the screen) and choose 'preferences' it will take you to a tab that allows you to modify the number of top sites, allowing me to go back down to 6. Easier to read, easier to make sense of. (A lot of websites cannot be made out when they are '16 top site' size. So this was something I wanted to fix, with my 11" screen.) Hope this helps!

  • How do you add a "top of page" button to an iWeb page?

    How do you add a "top of page" button to an iWeb page?

    Two solutions:
    The Easy One:
    Create a Form (which will be the button) and add text to it or choose a picture from iphoto. Now give the form/picture a hyperlink to the same site. So now if you press the button, the site will refresh and start at the beginning/top
    The advanced way:
    1. Publish your site on the web (not just local). Copy the URL
    2. Now create a Button like displained in the solution above. As Hyperlink you'll now have to set external site and paste the before copied link AND add the following at the end of the url:      #widget0
    3. Add a html widget to the top of the site.
    4. The widget's content should be   <a name="anchor"></a>
    5. Publish your site again on the web and look wether it works.
    This way won't work, if the created site is linked as an iframe.

  • How to display values in top of page in ALV report

    Hai,
      This is my billing report program, i developed that object by using ALV but i could not able to use Top-of-page. please any one correct my code,
    *& Report  ZE0232_ALV_BILLING                                          *
    report  ze0232_alv_billing.
    type-pools: slis.
    data: repid like sy-repid.
    data: fieldcatalog type slis_t_fieldcat_alv,
          wa_fieldcatalog type slis_fieldcat_alv.
    data : ievent type slis_t_event,
    wevent type slis_alv_event.
    data: sal_text like tvkot-vtext,
          DIS_TEXT LIKE TVTWT-VTEXT,
          DIV_TEXT LIKE TSPAT-VTEXT.
    tables: vbrk.
    data: begin of i_vbrk occurs 0,
          vbeln like vbrk-vbeln,
          fkdat like vbrk-fkdat,
          erdat like vbrk-erdat,
          kunrg like vbrk-kunrg,
          name1 like kna1-name1,
          netwr like vbrk-netwr,
          stext like tvkot-vtext,
          dtext like tvtwt-vtext,
          divtext like tspat-vtext,
          end of i_vbrk.
    selection-screen begin of block billing with frame.
    parameters: salesorg like vbrk-vkorg.
    select-options: dischanl for vbrk-vtweg,
                    division for vbrk-spart,
                    bildat for vbrk-fkdat.
    selection-screen end of block billing.
    select vbeln fkdat erdat kunrg netwr from vbrk into corresponding fields of table i_vbrk where vkorg = salesorg
                                                                                    and vtweg in dischanl
                                                                                    and spart in division
                                                                                    and fkdat in bildat.
    select vtext from tvkot into sal_text where vkorg = salesorg and spras = 'EN'.
    endselect.
    select vtext from TVTWT into DIS_text where VTWEG IN dischanl and spras = 'EN'.
    endselect.
    select vtext from TSPAT into DIV_text where SPART IN DIVISION and spras = 'EN'.
    endselect.
    loop at i_vbrk.
      move: sal_text to i_vbrk-stext,
            DIS_TEXT TO I_VBRK-DTEXT,
            DIV_TEXT TO I_VBRK-DIVTEXT.
      modify i_vbrk.
    endloop.
    perform get_fieldcatalog.
    call function 'REUSE_ALV_GRID_DISPLAY'
    exporting
        i_callback_program                = repid
      I_GRID_TITLE                      =
        i_callback_top_of_page            = 'TOPS'
        it_fieldcat                       = fieldcatalog
      tables
        t_outtab                          = i_vbrk
    exceptions
       program_error                     = 1
       others                            = 2.
    if sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    endif.
    *&      Form  GET_FIELDCATALOG
          text
    <b>form tops.
      write :/ 'Hai Welcome'.
    endform.                    "tops</b>&----
    *&      Form  get_fieldcatalog
          text
    form get_fieldcatalog.
      wa_fieldcatalog-col_pos = '1'.
      wa_fieldcatalog-fieldname = 'VBELN'.
      wa_fieldcatalog-tabname   = 'I_VBAK'.
      wa_fieldcatalog-seltext_m = 'SALES DOCUMENT'.
    WA_fieldcatalog-rollname  = 'VBELN'.
      wa_fieldcatalog-hotspot   = 'X'.
      append wa_fieldcatalog to fieldcatalog.
      clear wa_fieldcatalog.
      wa_fieldcatalog-col_pos = '2'.
      wa_fieldcatalog-fieldname = 'FKDAT'.
      wa_fieldcatalog-tabname   = 'I_VBAK'.
      wa_fieldcatalog-seltext_m = 'BILL DATE'.
    WA_fieldcatalog-rollname  = 'VBELN'.
    WA_fieldcatalog-hotspot   = 'X'.
      append wa_fieldcatalog to fieldcatalog.
      clear wa_fieldcatalog.
      wa_fieldcatalog-col_pos = '3'.
      wa_fieldcatalog-fieldname = 'ERDAT'.
      wa_fieldcatalog-tabname   = 'I_VBAK'.
      wa_fieldcatalog-seltext_m = 'CREATED DATE'.
      append wa_fieldcatalog to fieldcatalog.
      clear wa_fieldcatalog.
      wa_fieldcatalog-col_pos = '4'.
      wa_fieldcatalog-fieldname = 'KUNRG'.
      wa_fieldcatalog-tabname   = 'I_VBAK'.
      wa_fieldcatalog-seltext_m = 'CUSTOMER NO'.
      append wa_fieldcatalog to fieldcatalog.
      clear wa_fieldcatalog.
      wa_fieldcatalog-col_pos = '5'.
      wa_fieldcatalog-fieldname = 'NAME1'.
      wa_fieldcatalog-tabname   = 'I_VBAK'.
      wa_fieldcatalog-seltext_m = 'CUSTOMER NAME'.
      append wa_fieldcatalog to fieldcatalog.
      clear wa_fieldcatalog.
      wa_fieldcatalog-col_pos = '6'.
      wa_fieldcatalog-fieldname = 'NETWR'.
      wa_fieldcatalog-tabname   = 'I_VBAK'.
      wa_fieldcatalog-seltext_m = 'NET VALUE'.
      append wa_fieldcatalog to fieldcatalog.
      clear wa_fieldcatalog.
      wa_fieldcatalog-col_pos = '7'.
      wa_fieldcatalog-fieldname = 'STEXT'.
      wa_fieldcatalog-tabname   = 'I_VBAK'.
      wa_fieldcatalog-seltext_m = 'SALES ORG'.
      append wa_fieldcatalog to fieldcatalog.
      clear wa_fieldcatalog.
      wa_fieldcatalog-col_pos = '8'.
      wa_fieldcatalog-fieldname = 'DTEXT'.
      wa_fieldcatalog-tabname   = 'I_VBAK'.
      wa_fieldcatalog-seltext_m = 'DIS.CHANNEL'.
      append wa_fieldcatalog to fieldcatalog.
      clear wa_fieldcatalog.
      wa_fieldcatalog-col_pos = '9'.
      wa_fieldcatalog-fieldname = 'DIVTEXT'.
      wa_fieldcatalog-tabname   = 'I_VBAK'.
      wa_fieldcatalog-seltext_m = 'DIVISION'.
      append wa_fieldcatalog to fieldcatalog.
      clear wa_fieldcatalog.
    endform.                    "GET_FIELDCATALOG

    HI see this report
    you can know how to write TOP-OF_PAGE code
    and insert LOGO also
    *& Report  ZTEST_ALV_LOGO
    REPORT  ztest_alv_logo.
    TYPE-POOLS : slis.
    *ALV Formatting tables /structures
    DATA: gt_fieldcat TYPE slis_t_fieldcat_alv.
    DATA: gt_events   TYPE slis_t_event.
    DATA: gs_layout   TYPE slis_layout_alv.
    DATA: gt_page     TYPE slis_t_listheader.
    DATA: gs_page     TYPE slis_listheader.
    DATA: v_repid     LIKE sy-repid.
    *ALV Formatting work area
    DATA: w_fieldcat TYPE slis_fieldcat_alv.
    DATA: w_events   TYPE slis_alv_event.
    DATA: gt_bsid TYPE TABLE OF bsid WITH HEADER LINE.
    INITIALIZATION.
      PERFORM build_events.
      PERFORM build_page_header.
    START-OF-SELECTION.
    *perform build_comment.     "top_of_page - in initialization at present
      SELECT * FROM bsid INTO TABLE gt_bsid UP TO 10 ROWS.
    *perform populate_for_fm using '1' '3' 'BUKRS' '8' 'GT_BSID' 'Whee'.
    *USING = Row, Column, Field name, display length, table name, heading
    *OR
      PERFORM build_fieldcat.
      gs_layout-zebra = 'X'.
    *top of page event does not work without I_callback_program
      v_repid = sy-repid.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          i_callback_program                = v_repid
          i_structure_name                  = 'BSID'
       i_background_id                   = 'ALV_BACKGROUND'
          i_grid_title                      = 'This is the grid title'
      I_GRID_SETTINGS                   =
          is_layout                         = gs_layout
          it_fieldcat                       = gt_fieldcat[]
          it_events                         = gt_events[]
        TABLES
          t_outtab                          = gt_bsid.
    Form..............:  populate_for_fm
    Description.......:  Populates fields for function module used in ALV
    FORM populate_for_fm USING p_row
                               p_col
                               p_fieldname
                               p_len
                               p_table
                               p_desc.
      w_fieldcat-row_pos      = p_row.          "Row Position
      w_fieldcat-col_pos      = p_col.          "Column Position
      w_fieldcat-fieldname    = p_fieldname.    "Field name
      w_fieldcat-outputlen    = p_len.          "Column Lenth
      w_fieldcat-tabname      = p_table.        "Table name
      w_fieldcat-reptext_ddic = p_desc.         "Field Description
      w_fieldcat-input        = '1'.
      APPEND w_fieldcat TO gt_fieldcat.
      CLEAR w_fieldcat.
    ENDFORM.                    " populate_for_fm
    *&      Form  build_events
    FORM build_events.
      DATA: ls_event TYPE slis_alv_event.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          i_list_type = 0
        IMPORTING
          et_events   = gt_events.
      READ TABLE gt_events
                 WITH KEY name =  slis_ev_user_command
                 INTO ls_event.
      IF sy-subrc = 0.
        MOVE slis_ev_user_command TO ls_event-form.
        APPEND ls_event TO gt_events.
      ENDIF.
      READ TABLE gt_events
                 WITH KEY name =  slis_ev_top_of_page
                 INTO ls_event.
      IF sy-subrc = 0.
        MOVE slis_ev_top_of_page TO ls_event-form.
        APPEND ls_event TO gt_events.
      ENDIF.
    ENDFORM.                    " build_events
    *&      Form  USER_COMMAND
    When user command is called it uses 2 parameters. The itab
    passed to the ALV is in whatever order it currently is on screen.
    Therefore, you can read table itab index rs_selfield-tabindex to get
    all data from the table. You can also check r_ucomm and code
    accordingly.
    FORM user_command USING  r_ucomm     LIKE sy-ucomm
                             rs_selfield TYPE slis_selfield.
      READ TABLE gt_bsid INDEX rs_selfield-tabindex.
    error checking etc.
      SET PARAMETER ID 'KUN' FIELD gt_bsid-kunnr.
      CALL TRANSACTION 'XD03' AND SKIP FIRST SCREEN.
    ENDFORM.                    "user_command
    *&      Form  top_of_page
    Your own company logo can go here if it has been saved (OAOR)
    If the logo is larger than the size of the headings in gt_page,
    the window will not show full logo and will have a scroll bar. Thus,
    it is a good idea to have a standard ALV header if you are going to
    use logos in your top of page.
    FORM top_of_page.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary = gt_page
          i_logo             = 'ENJOYSAP_LOGO'.
    ENDFORM.                    "top_of_page
    *&      Form  build_fieldcat
    *Many and varied fields are available here. Have a look at documentation
    *for FM REUSE_ALV_LIST_DISPLAY and REUSE_ALV_FIELDCATALOG_MERGE
    FORM build_fieldcat.
      w_fieldcat-fieldname  = 'BUDAT'.
      w_fieldcat-seltext_m  = 'Dte pst'.
      w_fieldcat-ddictxt(1) = 'M'.
      w_fieldcat-edit = 'x'.
    Can change the position of fields if you do not want them in order
    of the DDIC or itab
    w_fieldcat-row_pos = '1'.
    w_fieldcat-col_pos = '10'.
      APPEND w_fieldcat TO gt_fieldcat.
      CLEAR w_fieldcat.
    ENDFORM.                    " build_fieldcat
    *&      Form  build_page_header
          gt_page is used in top of page (ALV subroutine - NOT event)
          *H = Header, S = Selection, A = Action
    FORM build_page_header.
    For Headers, Key is not printed and is irrelevant. Will not cause
    a syntax error, but is not used.
      gs_page-typ  = 'H'.
      gs_page-info = 'Header 1'.
      APPEND gs_page TO gt_page.
      gs_page-typ  = 'H'.
      gs_page-info = 'Header 2'.
      APPEND gs_page TO gt_page.
    For Selections, the Key is printed (bold). It can be anything up to 20
    bytes. It gets printed in order of code here, not by key value.
      gs_page-typ  = 'S'.
      gs_page-key  = 'And the winner is:'.
      gs_page-info = 'Selection 1'.
      APPEND gs_page TO gt_page.
      gs_page-typ  = 'S'.
      gs_page-key  = 'Runner up:'.
      gs_page-info = 'Selection 2'.
      APPEND gs_page TO gt_page.
    For Action, Key is also irrelevant.
      gs_page-typ  = 'A'.
      gs_page-info = 'Action goes here'.
      APPEND gs_page TO gt_page.
    ENDFORM.                    " build_page_header
    <b>Reward if useful</b>

  • How to avoid multiple Header(TOP-OF-PAGE) because of page break

    Hi All,
    I am working with a classical report in which we are getting multiple header because of page break.
    can we get a single header, in other words can we trigger TOP-OF-PAGE event only once not every
    time when a page break occurs.
    Regards
    Manish

    use TOP_OF_LIST Event Instead of TOP_OF_PAGE.
    Sandip Sonar.

  • When using letter DIN5008-A how can i start on top of page 2?

    Hello,
    i use the draft letter DIN5008-A which comes with pages. On page 1 there is space for the adress of the recipient and so on.
    on page to the pages starts 8 cm deeper because it has the same format like page one.
    i would like to start on top page page 2. how i set this up?
    thanks
    martin

    Hi Peter,
    set the margin to the top for all pages and on the first page use an empty Textbox or transparent Shape with Textwrap to push the starting text down.
    Brilliant!
    Document Panel > Document > Document Margins > Top > 2.5 cm
    (Menu > View > Show Layout for clarity.
    Text Boxes shown with Borders for clarity).
    And Page 2:
    Regards,
    Ian.

  • How do we anchor to top of page on page load?

    HI! I use iframes and when a user clicks a link in the middle
    of a page it
    loads the new child iframe in the iframe BUT the new page is
    at the same
    vertical spot as the previous page. I want the page to be
    loaded at the top
    so the user can see the see it at the beginning.
    I thought of adding an anchor to the link but this would put
    the child page
    at the top but also hide the top of the main parent. so is
    there way of
    loading the child page and at the same time make the parent
    page stay at the
    top?'
    Paul

    darrel wrote:
    >> Lets say you have a normal page ( without Iframes )
    and at the bottom of
    >> the page you have a link. now, if you click on that
    link the page will
    >> load and you will now be at the top of that page,
    right! now. in my case
    >> however you will not be at the top, you will be in
    fact at the bottom of
    >> the new page.
    >
    > What do you mean by 'new page'?
    >
    > If you mean the link you are clicking on ONLY loads a
    new page within the
    > iFrame, then this is perfectly normal. You are not
    loading a new page
    > within the browser--you're staying on the same page, as
    such, nothing
    > should change with the parent page...only the iFrame.
    >
    >> so I figure perhapes a function that works with an
    onload event.
    >
    > You could probably use javascript. Have the onClick
    event handle that. I
    > don't know what syntax to use off the top of my head,
    though.
    >
    > That said, why are you using an iFrame? They're often
    used for wrong
    > reasons. I bet we can figure out a better solution for
    you without iframes
    > at all.
    >
    > -Darrel
    Hi! I use iframes to load templates that are brought in by
    java script. My
    design has a top flash animation with static expandable
    images on both sides
    and iframes are used on one side to display the templates and
    the other side
    is text. The Parent does not get reloaded because I dont want
    the flash
    animation to be reloaded as it take a few seconds to load. so
    by using
    iframes I only need to load the flash ani once. and the other
    pages that
    make up the larger part of the page are loaded into the
    iframe.
    Now that I think of it, I dont think the unload event in the
    body would work
    because this means that body would have to be reloaded. I
    would have to
    trigger it another way. so I would have to trigger it from
    either inside
    childpage that gets loaded or from the link itself. hmmm, do
    you have any
    ideas?
    Paul

  • JEditorPnae setCaretPosition ? how to place position on top of page

    Hi,
    i am new to here ,
    sorry if i violate anything.. anything.
    we are making a multimedia cd with swing.
    we show content in a JEditorPane . we paste a html document with paragraphs with known id"s
    15,16,17,18... for example:
    i want to place the caret( or make visible a paragraph)
    Element text=doc.getElement(String.valueOf(paragraphId));
    aJEditorPane.setCaretPosition(text.getStartOffset());
    but this shows the paragraph at the end of visible area. But i want this to be seen at begining of page...
    is it clear or i have talked so much? i do not known. Think u are searchinfg with
    ctrl + F
    when u hit enter resuly seems at bottom.
    ok. thanks for helps..

    You need to scroll the viewport to the top of the scroll pane. You would do something like:
    Rectangle r = textComponent.modelToView( text.getStartOffset() );
    textComponent.scrollRectToVisible( r );

  • How do I make the top sites page store more than 9 sites?

    Firefox allows only 9. I couldn't find customization in about:config

    See also:
    *New Tab Tools: https://addons.mozilla.org/firefox/addon/new-tab-tools/

  • How to write ICONS in ALV TOP of Page

    Hai experts,
    How to ICON in ALV  Top of PAGE
    i want to wrire
    ICON_LED_RED for cancellation Invioce
    ICON_LED_GREEN for  Invioce
    but i pass this values to wa_header-info it comes  @5C@ @5B@
    thanks
    sitaram

    Hi...
       I think this code is help full for u....
    *& Report ZFI_TEST *
    REPORT ZFI_ICON_TEST MESSAGE-ID zz .
    *& TABLES DECLARATION *
    TABLES: vbak.
    *& TYPE POOLS DECLARATION *
    TYPE-POOLS: slis.
    *& INTERNAL TABLE DECLARATION *
    DATA: BEGIN OF itab OCCURS 0,
    icon TYPE icon-id, "itab-icon = '@08@' -> Green ; '@09@' -> Yellow ; '@0A@' -> Red
    vbeln LIKE vbak-vbeln,
    audat LIKE vbak-audat,
    vbtyp LIKE vbak-vbtyp,
    auart LIKE vbak-auart,
    augru LIKE vbak-augru,
    netwr LIKE vbak-netwr,
    waerk LIKE vbak-waerk,
    END OF itab.
    *INTERNAL TABLE FOR FIELD CATALOG
    DATA: wa_fieldcat TYPE slis_fieldcat_alv,
    it_fieldcat TYPE slis_t_fieldcat_alv.
    IT_FIELDCAT TYPE STANDARD TABLE OF SLIS_FIELDCAT_ALV
    WITH HEADER LINE,
    *INTERNAL TABLE FOR EVENTS
    DATA: it_event TYPE slis_t_event,
    wa_event TYPE slis_alv_event,
    *INTERNAL TABLE FOR SORTING
    it_sort TYPE slis_t_sortinfo_alv,
    wa_sort TYPE slis_sortinfo_alv,
    *INTERNAL TABLE FOR LAYOUT
    wa_layout TYPE slis_layout_alv.
    *& VARIABLE DECLARATION *
    DATA : v_repid TYPE sy-repid,
    v_pagno(4) TYPE n,
    v_date(8) TYPE c.
    *& CONSTANTS *
    CONSTANTS: c_x TYPE c VALUE 'X'.
    *& SELECTION SCREEN *
    SELECTION-SCREEN: BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS: s_vbeln FOR vbak-vbeln,
    s_vbtyp FOR vbak-vbtyp DEFAULT 'C'.
    SELECTION-SCREEN: END OF BLOCK b1.
    SELECTION-SCREEN: BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
    SELECTION-SCREEN : BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(20) text-003.
    PARAMETERS: p_list RADIOBUTTON GROUP rad1 DEFAULT 'X'.
    SELECTION-SCREEN : END OF LINE.
    SELECTION-SCREEN : BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(20) text-004.
    PARAMETERS: p_grid RADIOBUTTON GROUP rad1.
    SELECTION-SCREEN : END OF LINE.
    SELECTION-SCREEN: END OF BLOCK b2.
    AT SELECTION-SCREEN.
    PERFORM validate_screen.
    *& START OF SELECTION *
    START-OF-SELECTION.
    CLEAR: itab, itab[].
    V_REPID = SY-REPID.
    PERFORM get_data.
    PERFORM display_data.
    *& END OF SELECTION *
    END-OF-SELECTION.
    *--DO ALV Process
    v_repid = sy-repid.
    *--Sort the Output Fields
    PERFORM sort_fields.
    *--Build Field catalog for the Output fields
    PERFORM BUILD_FIELDCAT.
    *--Set the Layout for ALV
    PERFORM set_layout.
    *& Form GET_DATA
    text
    TO GET THE DATA FROM TABLES INTO ITAB
    FORM get_data .
    SELECT vbeln
    audat
    vbtyp
    auart
    augru
    netwr
    waerk
    INTO CORRESPONDING FIELDS OF TABLE itab
    FROM vbak
    WHERE vbeln IN s_vbeln AND
    audat > '04.04.2005'
    AND netwr > 0.
    LOOP AT itab.
    IF itab-netwr < 10000.
    itab-icon = '@08@'.
    ELSEIF itab-netwr > 10000 AND itab-netwr < 100000.
    itab-icon = '@09@'.
    ELSEIF itab-netwr > 100000.
    itab-icon = '@0A@'.
    ENDIF.
    MODIFY itab INDEX sy-tabix.
    ENDLOOP.
    ENDFORM. " GET_DATA
    *& Form sort_fields
    FORM sort_fields .
    CLEAR wa_sort.
    wa_sort-fieldname = 'VBTYP'.
    wa_sort-spos = '1'.
    wa_sort-up = 'X'.
    APPEND wa_sort TO it_sort.
    CLEAR wa_sort.
    wa_sort-fieldname = 'NETWR'.
    wa_sort-spos = '2'.
    wa_sort-up = 'X'.
    wa_sort-subtot = 'X'.
    APPEND wa_sort TO it_sort.
    ENDFORM. " sort_fields
    *& Form set_layout
    FORM set_layout .
    IF p_list = c_x .
    wa_layout-window_titlebar = 'LIST DISPLAY'(016).
    wa_layout-zebra = 'X'.
                    +
                    +
    ALV LIST DISPLAY
    PERFORM list_display TABLES itab.
              o
                    +
                    + ALV GRID DISPLAY
    ELSEIF p_grid = c_x.
    wa_layout-window_titlebar = 'GRID DISPLAY'(017).
    wa_layout-zebra = 'X'.
    PERFORM grid_display TABLES itab.
    ENDIF.
    ENDFORM. " set_layout
    *& Form list_display
    FORM list_display TABLES p_itab .
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
    i_callback_program = v_repid
    is_layout = wa_layout
    it_fieldcat = it_fieldcat[]
    it_sort = it_sort[]
    i_save = 'U'
    TABLES
    t_outtab = itab
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    IF sy-subrc 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    ENDFORM. " list_display
    *& Form GRID_DISPLAY
    FORM grid_display TABLES p_itab .
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_callback_program = v_repid
    is_layout = wa_layout
    it_fieldcat = it_fieldcat[]
    it_sort = it_sort[]
    it_events = it_event
    TABLES
    t_outtab = itab
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    IF sy-subrc 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
    WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    ENDFORM. " GRID_DISPLAY
    *& Form VALIDATE_SCREEN
    text
    --> p1 text
    <-- p2 text
    FORM validate_screen .
    DATA: lv_vbeln LIKE vbak-vbeln.
    IF NOT s_vbeln IS INITIAL.
    SELECT vbeln
    INTO lv_vbeln
    UP TO 1 ROWS
    FROM vbak
    WHERE vbeln IN s_vbeln.
    ENDSELECT.
    IF sy-subrc <> 0.
    MESSAGE e000 WITH 'INVALID SALES DOC'.
    ENDIF.
    ENDIF.
    ENDFORM. " VALIDATE_SCREEN
    *& Form display_data
    text
    --> p1 text
    <-- p2 text
    FORM display_data .
    DEFINE m_fieldcat.
    add 1 to wa_fieldcat-col_pos.
    wa_fieldcat-fieldname = &1.
    wa_fieldcat-ref_tabname = 'VBAK'.
    wa_fieldcat-do_sum = &2.
    wa_fieldcat-cfieldname = &3.
    append wa_fieldcat to it_fieldcat.
    END-OF-DEFINITION.
    DATA:
    ls_fieldcat TYPE slis_fieldcat_alv,
    lt_fieldcat TYPE slis_t_fieldcat_alv.
    m_fieldcat 'ICON' '' ''.
    m_fieldcat 'VBELN' '' ''.
    m_fieldcat 'AUDAT' '' ''.
    m_fieldcat 'VBTYP' '' ''.
    m_fieldcat 'AUART' '' ''.
    m_fieldcat 'AUGRU' '' ''.
    m_fieldcat 'NETWR' 'C' 'WAERK'.
    m_fieldcat 'WAERK' '' ''.
    ENDFORM. " display_data[/code]
    Regards,
    Rahul
    Edited by: Rahul Reddy on Apr 14, 2008 12:33 PM

  • Top of page in Block list ALV

    HI,
    I have a Requirement where i have a Block list ALV . I have 4 blocks to be Displayed in the output and the output has to be transfered to the PDF.
    I am able to get the 4 blocks in the output and the Top of Page for the Report in each page.
    But the Problem is when i download the output containing the top of page of output with 4 blocks into a PDF.
    I want the Top of page of Report to be the Top of Page of the PDf also.
    In PDF the Top of page of Report is coming in the center of the PDF also in some other places also.
    How to make sure the Top of page of Report comes in the top of the PDf
    Can you kinldy help me in this.
    Thanks,
    Gokul

    Duplicate post.
    Reported.

  • Dynamic Header(TOP-OF-PAGE) In HIERSEQ ALV

    Hi Experts,
    My Requirment is to develop a customer ledger in which the top of page is the detailed customer address follwed by list doc no...
    please suggest me how to get the Dynamic top-of page in HIERSEQ ALV ...
    Thanks in advance,
    With regards,
    Prakash

    Hi Prakash,
    Try this way.
    <font color=blue><b><pre>REPORT ZTEST_NOTEPAD.
    DATA: BEGIN OF IT_EKKO OCCURS 0,
             EBELN TYPE EKKO-EBELN,
             BUKRS TYPE EKKO-BUKRS,
             BSTYP TYPE EKKO-BSTYP,
             BSART TYPE EKKO-BSART,
           END OF IT_EKKO.
    DATA: BEGIN OF IT_EKPO OCCURS 0,
             EBELN TYPE EKPO-EBELN,
             EBELP TYPE EKPO-EBELP,
             LOEKZ TYPE EKPO-LOEKZ,
             TXZ01 TYPE EKPO-TXZ01,
             MATNR TYPE EKPO-MATNR,
           END OF IT_EKPO.
    TYPE-POOLS : SLIS.
    DATA : IT_EVENTS   TYPE SLIS_T_EVENT,
            WA_EVENTS   TYPE SLIS_ALV_EVENT,
            IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
            WA_FIELDCAT LIKE LINE OF IT_FIELDCAT,
            LIST_LAYOUT TYPE SLIS_LAYOUT_ALV,
            GS_KEYINFO  TYPE SLIS_KEYINFO_ALV.
    DATA:PROGRAM TYPE SY-REPID.
    START-OF-SELECTION.
       PROGRAM = SY-REPID.
       SELECT * FROM EKKO INTO CORRESPONDING FIELDS OF TABLE IT_EKKO UP TO 100 ROWS.
       IF NOT IT_EKKO[] IS INITIAL.
         SELECT * INTO CORRESPONDING FIELDS OF TABLE IT_EKPO FROM EKPO FOR ALL ENTRIES IN IT_EKKO
               WHERE EBELN = IT_EKKO-EBELN.
       ENDIF.
       WA_EVENTS-NAME = 'TOP_OF_PAGE'.
       WA_EVENTS-FORM = 'TOP_OF_PAGE'.
       APPEND WA_EVENTS TO IT_EVENTS.
       GS_KEYINFO-HEADER01 = 'EBELN'.
       GS_KEYINFO-ITEM01   = 'EBELN'.
       DEFINE FIELDCATALOG.
         WA_FIELDCAT-COL_POS   = &1.
         WA_FIELDCAT-FIELDNAME = &2.
         WA_FIELDCAT-TABNAME   = &3.
         WA_FIELDCAT-SELTEXT_M = &4.
         APPEND WA_FIELDCAT TO IT_FIELDCAT.
         CLEAR  WA_FIELDCAT.
       END-OF-DEFINITION.
       FIELDCATALOG: '1' 'EBELN' 'IT_EKKO' 'EKKO-EBELN',
                     '2' 'BUKRS' 'IT_EKKO' 'EKKO-BUKRS',
                     '3' 'BSTYP' 'IT_EKKO' 'EKKO-BSTYP',
                     '4' 'BSART' 'IT_EKKO' 'EKKO-BSART'.
       FIELDCATALOG:  '1' 'EBELN' 'IT_EKPO' 'EKPO-EBELN',
                     '2' 'EBELP' 'IT_EKPO' 'EKPO-EBELP',
                     '3' 'LOEKZ' 'IT_EKPO' 'EKPO-LOEKZ',
                     '4' 'TXZ01' 'IT_EKPO' 'EKPO-TXZ01',
                     '5' 'MATNR' 'IT_EKPO' 'EKPO-MATNR'.
       CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
         EXPORTING
           I_CALLBACK_PROGRAM = PROGRAM
           IT_FIELDCAT        = IT_FIELDCAT
           I_TABNAME_HEADER   = 'IT_EKKO'
           I_TABNAME_ITEM     = 'IT_EKPO'
           IT_EVENTS          = IT_EVENTS
           IS_KEYINFO         = GS_KEYINFO
         TABLES
           T_OUTTAB_HEADER    = IT_EKKO
           T_OUTTAB_ITEM      = IT_EKPO.
    *&      Form  TOP-OF-page
    FORM TOP_OF_PAGE.
       WRITE: SY-TITLE,
             / SY-REPID.
       WRITE: SY-DATUM, SY-UZEIT.
       WRITE sy-uline.
    ENDFORM.                    "TOP-OF-page</pre></b></font>
    Thanks
    Venkat.O

  • Top-of-page for  OO ALV

    Hi all,
    Somebody Could tell me how can I create a top-of-page for my OO ALV report?
    Please help...!
    Thanks in advance.
    regards Marisol.

    HI,
    You should set the handler for the event :
    SET HANDLER l_event->handle_top_of_page FOR grid.
    And then call the set_table_for_first_display
    CALL METHOD grid->set_table_for_first_display
        EXPORTING
          is_layout       = gd_layout
        CHANGING
          it_outtab       = outtab[]
          it_fieldcatalog = gd_fieldcat[].
    In  The handle_top_of_page method you can then make some WRITE statemments.
    Regards,
    David Matias

  • Create TOP-OF-PAGE display for REUSE_ALV_GRID_DISPLAY

    Hi,
    I need to create a TOP-OF-PAGE display to show the MATNR, description and EA per CSE for my report.
    The report is output using "REUSE_ALV_GRID_DISPLAY."
    See following code:
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
      I_CALLBACK_TOP_OF_PAGE            =
         I_STRUCTURE_NAME                  = 'ZSTATE_PROD_INQ'
        TABLES
          T_OUTTAB                          = I_ALV_MATNR.
    How do I add a TOP-OF-PAGE display to the report, while using the above alv?
    Points will be rewarded and all responses will be greatly appreciated.
    Thanks,
    John

    See the example Program :
    Use FM - 
       CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
           EXPORTING
                I_LOGO             = 'FDLOGO'
                IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.
    REPORT ZMM_INV_DAYS_SUPPLY no standard page heading
                                message-id zwave.
    ======================================================================
    Program Name : ZMM_INV_DAYS_SUPPLY                                   *
    Description  : this report  identify Obsolete and Excessive inventory*
                   it show show days of supply by date. Need to define   *
                   Average daily sales for a sku. Possibly look back to  *
                   the last 3 weeks or look at the same period a year ago*
                   puls a growth factor to help with seasonal items      *
    Author       : Seshu                                                 *
    Date         : 03/14/2007                                            *
    MODIFICATION HISTORY                                                 *
    DATE    | AUTHOR   | CHANGE #   | DESCRIPTION OF MODIFICATION        *
    --|||--
    03/14/07| Seshu    | DEVK922128 | Initial                            *
    03/22/07| Seshu    | DEVK922148 | Removed Duplicates                 *
    03/26/07| Seshu    | DEVK922152 | Added new selection-screen         *
    03/27/07| Seshu    | DEVK922154 | Material status as range option now*
    03/27/07| Seshu    | DEVK922158 | Corrected storage type in where con*
    ======================================================================
    type-pools
    type-pools : slis.
    Data Declaration
    tables : mara,
             marc,
             lagp,
             mvke,
             makt.
    Constants
    constants : c_werks(4) type c value '1000'," Plant
                c_lgort(4) type c value '1000'," Storage Location
                c_periv like MARC-PERIV value 'XX',
                c_perkz like MVER-PERKZ value 'T'.
    Internal Tables
    Internal Table for MARA and MAKT and MARD
    data : begin of I_material occurs 0,
           matnr like mara-matnr, " Material
           lgpla like mlgt-lgpla," Storage Type
           zzdept like marc-zzdept," Pick Dept
           ZZPRODDEPT like marc-ZZPRODDEPT," Prod Dept
           vmsta like mvke-vmsta, " Material Status
           end of i_material.
    Structure
    data : begin of i_final occurs 0 ,
           matnr like mara-matnr," Material #
           maktx like makt-maktx," Description
           lgpla like mlgt-lgpla, " Storage Bin
           days  like P0347-SCRDD, " No of Days
           menge like mseg-menge, " Avg Daily Sales
           kbetr like konp-kbetr, " Avg
           labst like mard-labst," Inventory Stock
           stprs like mbew-stprs, " Mvg avg Price
           dos   like mseg-menge, " DOS Units
           dosm  like konp-kbetr, " DOS $$
           end of i_final.
    data : int_ges_verb_tab like sverbtaba
                                occurs 0 with header line.
    Internal table for A004
    data : i_a004 like a004 occurs 0 with header line.
    Data Variables
    data : v_stprs like konp-kbetr,
           v_repid like sy-repid,
           v_labst like mard-labst,
           v_maktx like makt-maktx.
      ALV Function Module Variables
    DATA: g_repid like sy-repid,
          gs_layout type slis_layout_alv,
          g_exit_caused_by_caller,
          gs_exit_caused_by_user type slis_exit_by_user.
    DATA: gt_fieldcat    type slis_t_fieldcat_alv,
          gs_print       type slis_print_alv,
          gt_events      type slis_t_event,
          gt_list_top_of_page type slis_t_listheader,
          g_status_set   type slis_formname value 'PF_STATUS_SET',
          g_user_command type slis_formname value 'USER_COMMAND',
          g_top_of_page  type slis_formname value 'TOP_OF_PAGE',
          g_top_of_list  type slis_formname value 'TOP_OF_LIST',
          g_end_of_list  type slis_formname value 'END_OF_LIST',
          g_variant LIKE disvariant,
          g_save(1) TYPE c,
          g_tabname_header TYPE slis_tabname,
          g_tabname_item   TYPE slis_tabname,
          g_exit(1) TYPE c,
          gx_variant LIKE disvariant.
    Selection-screen
    selection-screen : begin of block blk with frame title text-001.
    parameters : p_werks like marc-werks obligatory default '1000'.
    select-options : s_matnr for mara-matnr,
                     s_MATKL for mara-MATKL,
                     s_mtart for mara-mtart,
                     s_LGTYP for LAGP-LGTYP,
                     p_vmsta for MVKE-VMSTA,
                     s_dept  for marc-zzdept,
                     s_pdept for MARC-ZZPRODDEPT.
    selection-screen: end of block blk.
    selection-screen begin of block periods with frame title text-002.
    selection-screen begin of line.
    selection-screen comment (15) text-c01.
    selection-screen position 18.
    Period 1
    parameters: p_stdat1 like mkpf-budat obligatory.
    selection-screen position 35.
    selection-screen comment (10) text-c02.
    parameters: p_endat1 like mkpf-budat obligatory.
    selection-screen end of line.
    selection-screen end of block periods.
    Fill the default values
    initialization.
      v_repid = sy-repid.
      PERFORM LAYOUT_INIT USING GS_LAYOUT.
      PERFORM EVENTTAB_BUILD USING GT_EVENTS[].
    Validation for Dates
    at selection-screen.
      if p_stdat1 > p_endat1.
        message e206(zwave) with
           ' End date should be greater than or equal to Start Date'.
      endif.
    Make one of the Selection should be mandatory
      if s_matnr-low is initial.
        if s_matkl-low is initial and s_mtart-low is initial and
           s_dept-low is initial  and s_pdept-low is initial.
          message e208(zwave) with
                       'Enter atleast one selection Criteria'.
        endif.
      endif.
    Start-of-selection.
    start-of-selection.
    Get the data from MARA,MARD,MAKT Table
      perform get_data_tables.
    Read the data into FInal Table.
      perform read_data.
    END-OF-SELECTION.
    end-of-selection.
      if not i_final[] is initial.
    ALV Function Module
        perform print_alv.
      endif.
    *&      Form  get_data_tables
    Get the data from Tables MARA,MARD,MAKT
    FORM get_data_tables.
      select a~matnr
             b~lgpla
             czzdept cZZPRODDEPT d~vmsta into table i_material
             from mara as a inner join mlgt as b on amatnr = bmatnr
             inner join marc as c on cmatnr = amatnr
             inner join mvke as d on dmatnr = amatnr
             where a~matnr in s_matnr
                   and   c~werks = p_werks
                   and   a~mtart in s_mtart
                   and   c~ZZPRODDEPT in s_pdept
                   and   a~MATKL in s_MATKL
                   and   c~zzdept in s_dept
                   and   b~lgnum = '100'
                   and   b~LGTYP in s_lgtyp
                   and   b~lgpla ne space
                   and   d~vkorg = '0001'
                   and   d~vtweg = '01'
                   and   d~matnr in s_matnr
                   and   d~vmsta in p_vmsta.
      if sy-subrc ne 0.
      message e207(zwave) with 'No data found for Given Selection Criteria'.
      endif.
      sort i_material by matnr .
      DELETE ADJACENT DUPLICATES FROM i_material COMPARING matnr.
    ENDFORM.                    " get_data_tables
    *&      Form  read_data
          Read the data
    FORM read_data.
      loop at i_material.
      Storage Bin
        i_final-lgpla = i_material-lgpla.
    Days of Sales ( End date - Start date )
        CALL FUNCTION 'HR_HK_DIFF_BT_2_DATES'
             EXPORTING
                  DATE1         = p_endat1
                  DATE2         = p_stdat1
                  OUTPUT_FORMAT = '02'
             IMPORTING
                  DAYS          = i_final-days.
    Get the Average Daily Sales (Units) from MVER Table
        perform get_average_sales.
    Get the Average Daily Sales ($$) from VK13 Transaction
        perform get_avgsales_price.
        clear : v_labst.
    Get the Inventory from MARD Table
        select single labst from mard into v_labst
                                 where matnr = i_material-matnr
                                 and   werks = p_werks
                                 and   lgort = c_lgort.
        if sy-subrc eq 0.
    Inventory Stock - MARD-LABST
          i_final-labst = v_labst.
        endif.
    Material #
        i_final-matnr = i_material-matnr.
    Get the Material Description
        clear v_maktx.
        select single maktx from makt into v_maktx
                            where matnr = i_material-matnr
                            and   spras = 'EN'.
        if sy-subrc eq 0.
    Description
          i_final-maktx = v_maktx.
        endif.
    Get the Mvg Average Price
        perform get_moving_avgpr.
    Days of Supply Units.
        if i_final-kbetr ne 0.
          i_final-dos = i_final-labst / i_final-menge.
        endif.
    Days of Supply $$
        i_final-dosm =  i_final-dos * v_stprs.
        append  i_final.
        clear : i_final,
                i_material.
      endloop.
      refresh i_material.
    ENDFORM.                    " read_data
    *&      Form  get_average_sales
          Get the data from MVER Table
    FORM get_average_sales.
      data : lv_menge like mseg-menge.
      refresh int_ges_verb_tab.
      clear : int_ges_verb_tab,
              lv_menge.
      CALL FUNCTION 'CONSUMPTION_READ_FOR_MM'
        EXPORTING
      KZRFB              = ' '
          MATNR              = i_material-matnr
          WERKS              = c_werks
          PERKZ              = c_perkz
          PERIV              = c_periv
       TABLES
         GES_VERB_TAB       = int_ges_verb_tab
      UNG_VERB_TAB       =
       EXCEPTIONS
         WRONG_CALL         = 1
         NOT_FOUND          = 2
         OTHERS             = 3
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      loop at int_ges_verb_tab.
        if int_ges_verb_tab-ertag   >= p_stdat1  and
           int_ges_verb_tab-ertag  <= p_endat1.
          add int_ges_verb_tab-vbwrt to lv_menge.
        endif.
      endloop.
      i_final-menge = lv_menge / i_final-days.
    ENDFORM.                    " get_average_sales
    *&      Form  get_avgsales_price
          Avg Daily Sales Price
    FORM get_avgsales_price.
    Get the data from A004 table to get KNUMH
    Added new field Sales Unit - Seshu 01/09/2006
      refresh : i_a004.
      clear :   i_a004.
      data : lv_kbetr like konp-kbetr," Condition value
             lv_KPEIN like konp-kpein , "per
             lv_KMEIN like konp-KMEIN. " Sales Unit
      select * from a004 into table i_a004
                              where matnr = i_material-matnr
                              and   vkorg = '0001'
                              and   vtweg = '01'.
      if sy-subrc eq 0.
        sort i_a004 by DATAB descending.
    Get the Latetest Date
        read table i_a004 with key matnr = i_material-matnr
                                   vkorg = '0001'
                                   vtweg = '01'
                                   binary search.
    Get the Sales Value
        select single kbetr KPEIN KMEIN from konp
                 into (lv_kbetr,lv_KPEIN, lv_KMEIN)
                                 where knumh = i_a004-knumh
                                 and   kappl = i_a004-kappl
                                 and   kschl = i_a004-kschl.
        if sy-subrc eq 0.
          i_final-kbetr = lv_kbetr / lv_KPEIN.
          i_final-kbetr = i_final-kbetr * i_final-menge.
        endif.
      endif.
      clear : lv_kbetr,
              lv_kpein,
              lv_KMEIN.
    ENDFORM.                    " get_avgsales_price
    *&      Form  get_moving_avgpr
          Get the data from MVEW Table
    FORM get_moving_avgpr.
    Local Variables
      data : lv_stprs like mbew-stprs, " Standard Price
             lv_verpr like mbew-verpr, " Moving avg Price
             lv_vprsv like mbew-vprsv. " Price Indicator
      clear : lv_stprs,
              lv_verpr,
              lv_vprsv,
              v_stprs.
      select single stprs verpr vprsv from mbew
                    into (lv_stprs,lv_verpr,lv_vprsv)
                    where matnr = i_material-matnr.
      if sy-subrc eq 0.
        if lv_vprsv = 'S'.
          i_final-stprs = lv_stprs * i_final-labst.
          v_stprs = lv_stprs.
        elseif lv_vprsv = 'V'.
          i_final-stprs = lv_verpr * i_final-labst.
          v_stprs = lv_verpr.
        endif.
      endif.
    ENDFORM.                    " get_moving_avgpr
    *&      Form  print_alv
          REUSE_ALV_GRID_DISPLAY Function Module
    FORM print_alv.
      PERFORM COMMENT_BUILD USING GT_LIST_TOP_OF_PAGE[].
    Populate field catalog
      PERFORM fieldcat_init  using gt_fieldcat[].
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
       I_INTERFACE_CHECK                 = ' '
       I_BYPASSING_BUFFER                =
       I_BUFFER_ACTIVE                   = ' '
         I_CALLBACK_PROGRAM                = v_repid
       I_CALLBACK_PF_STATUS_SET          = ' '
        I_CALLBACK_USER_COMMAND           = g_user_command
        I_CALLBACK_TOP_OF_PAGE            =  g_top_of_page
       I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
       I_CALLBACK_HTML_END_OF_LIST       = ' '
       I_STRUCTURE_NAME                  =
       I_BACKGROUND_ID                   = ' '
       I_GRID_TITLE                      =
       I_GRID_SETTINGS                   =
         IS_LAYOUT                         = gs_layout
          IT_FIELDCAT                       = gt_fieldcat[]
       IT_EXCLUDING                      =
       IT_SPECIAL_GROUPS                 =
       IT_SORT                           =
       IT_FILTER                         =
       IS_SEL_HIDE                       =
       I_DEFAULT                         = 'X'
         I_SAVE                            = 'A'
        IS_VARIANT                        =
         IT_EVENTS                         = GT_EVENTS[]
       IT_EVENT_EXIT                     =
       IS_PRINT                          =
       IS_REPREP_ID                      =
       I_SCREEN_START_COLUMN             = 0
       I_SCREEN_START_LINE               = 0
       I_SCREEN_END_COLUMN               = 0
       I_SCREEN_END_LINE                 = 0
       IT_ALV_GRAPHICS                   =
       IT_ADD_FIELDCAT                   =
       IT_HYPERLINK                      =
       I_HTML_HEIGHT_TOP                 =
       I_HTML_HEIGHT_END                 =
       IT_EXCEPT_QINFO                   =
    IMPORTING
       E_EXIT_CAUSED_BY_CALLER           =
       ES_EXIT_CAUSED_BY_USER            =
        TABLES
          T_OUTTAB                          = i_final
       EXCEPTIONS
         PROGRAM_ERROR                     = 1
         OTHERS                            = 2
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " print_alv
    *&      Form  get_fieldcatlog
          Fieldcatlog
    *&      Form  fieldcat_init
          Fieldcat
    FORM fieldcat_init USING  e01_lt_fieldcat type slis_t_fieldcat_alv.
      DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
    Material #
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'MATNR'.
      LS_FIELDCAT-ref_fieldname = 'MATNR'.
      LS_FIELDCAT-ref_tabname = 'MARA'.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'Material'.
      ls_fieldcat-seltext_M = 'Material'.
      ls_fieldcat-seltext_S = 'Material'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Material Description
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'MAKTX'.
      LS_FIELDCAT-OUTPUTLEN    = 30.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'Description'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Storage Bin
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'LGPLA'.
      LS_FIELDCAT-OUTPUTLEN    = 10.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'Storage Bin'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Start Date
    CLEAR LS_FIELDCAT.
    LS_FIELDCAT-FIELDNAME    = 'SDATE'.
    LS_FIELDCAT-OUTPUTLEN    = 10.
    LS_FIELDCAT-TABNAME    = 'I_FINAL'.
    ls_fieldcat-seltext_L = 'Start Date'.
    APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    End Date.
    CLEAR LS_FIELDCAT.
    LS_FIELDCAT-FIELDNAME    = 'EDATE'.
    LS_FIELDCAT-OUTPUTLEN    = 10.
    LS_FIELDCAT-TABNAME    = 'I_FINAL'.
    ls_fieldcat-seltext_L = 'End Date'.
    APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Days of Sales
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'DAYS'.
      LS_FIELDCAT-OUTPUTLEN    = 12.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'Days of Sales'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Average Daily Sales(Units).
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'MENGE'.
      LS_FIELDCAT-OUTPUTLEN    = 18.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'Average Daily Sales(Units)'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Average Daily Sales($$)
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'KBETR'.
      LS_FIELDCAT-OUTPUTLEN    = 18.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'Average Daily Sales($$)'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Inventory(Units)
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'LABST'.
      LS_FIELDCAT-OUTPUTLEN    = 18.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'Inventory(Units)'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    Inventory($$)
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'STPRS'.
      LS_FIELDCAT-OUTPUTLEN    = 18.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'Inventory($$)'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    DOS($$)
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'DOSM'.
      LS_FIELDCAT-OUTPUTLEN    = 13.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'DOS($$)'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    DOS(Days)
      CLEAR LS_FIELDCAT.
      LS_FIELDCAT-FIELDNAME    = 'DOS'.
      LS_FIELDCAT-OUTPUTLEN    = 13.
      LS_FIELDCAT-TABNAME    = 'I_FINAL'.
      ls_fieldcat-seltext_L = 'DOS(Days)'.
      APPEND LS_FIELDCAT TO E01_LT_FIELDCAT.
    ENDFORM.                    " get_fieldcatlog
          FORM COMMENT_BUILD                                            *
    -->  LT_TOP_OF_PAGE                                                *
    FORM COMMENT_BUILD USING LT_TOP_OF_PAGE TYPE
                                            SLIS_T_LISTHEADER.
      DATA: LS_LINE TYPE SLIS_LISTHEADER.
    Variables for Date
      data : lv_year(4) type c,
             lv_mon(2) type c,
             lv_day(2) type c,
             lv_date1(10) type c,
             lv_date2(10) type c.
    LIST HEADING LINE: TYPE H
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'H'.
      LS_LINE-INFO = sy-title.
      APPEND LS_LINE TO LT_TOP_OF_PAGE.
      clear : lv_year,
              lv_day,
              lv_mon,
              lv_date1.
      lv_year = p_stdat1+0(4).
      lv_mon = p_stdat1+4(2).
      lv_day = p_stdat1+6(2).
      concatenate lv_mon '/' lv_day '/' lv_year into lv_date1.
    STATUS LINE: TYPE S
      CLEAR LS_LINE.
      LS_LINE-TYP  = 'S'.
      LS_LINE-KEY  = TEXT-c01.
      LS_LINE-INFO = lv_date1.
      APPEND LS_LINE TO LT_TOP_OF_PAGE.
      clear : lv_year,
                lv_day,
                lv_mon,
                lv_date2.
      lv_year = P_ENDAT1+0(4).
      lv_mon = P_ENDAT1+4(2).
      lv_day = P_ENDAT1+6(2).
      concatenate lv_mon '/' lv_day '/' lv_year into lv_date2.
      LS_LINE-KEY  = text-c02.
      LS_LINE-INFO = lv_date2.
      APPEND LS_LINE TO LT_TOP_OF_PAGE.
      CLEAR LS_LINE.
    ENDFORM.
          FORM TOP_OF_PAGE                                              *
    FORM TOP_OF_PAGE.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
           EXPORTING
                I_LOGO             = 'FDLOGO'
                IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.
    ENDFORM.
          FORM EVENTTAB_BUILD                                           *
    -->  RT_EVENTS                                                     *
    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.
          FORM LAYOUT_INIT                                              *
    -->  RS_LAYOUT                                                     *
    FORM LAYOUT_INIT USING RS_LAYOUT TYPE SLIS_LAYOUT_ALV.
    **"Build layout for list display
      RS_LAYOUT-DETAIL_POPUP      = 'X'.
    lslayout-f2code            = p_f2code.
    rs_layout-zebra             = 'X'.
    rs_layout-colwidth_optimize = 'X'.
    ENDFORM.

  • Suppress Top-of-page

    Hello,
    I want to suppress top-of-page for the first page.
    I only want top-of-page from the second page.
    The fisrt page contains just some info about the list,.
    The second page is where the actual list starts.
    How do I trigger the top-of-page only from the second page.
    My second page contains the column names. I want these to be non scrollable. Thats why want to give these column names in top-pf-page.

    Hi Azeem,
    in top of page event.
    TOP-OF-PAGE.
    IF sy-PAGNO <> 1.
    write your top of page statemetns here
    endif.
    also try SY-CPAGE
    Regards
    Ramchander Rao.K
    Edited by: ramchander krishnamraju on Dec 12, 2008 10:47 AM

Maybe you are looking for

  • ITunes open in multiple accounts on the same Mac

    I have a family of 3, and I'd like to use different accounts on the same Mac to sync for each.  However, I like to only use one of the account for my apple tv.  What I discovered is if I have more than 1 instance of iTunes 10.5 running, home share br

  • Goods Receipt for packaging material - Item cat. ELP

    Hi expert, I am facing a problem regarding receive Packaging Material Item i MIGO via inbound. Problem detail as below hope you can advise me: 1. I create PO order 1pc of Throttle 2. In Inbound Delivery Screen I do Packing for Throttle by using Handl

  • Issues in ALE

    hi experts ,                 I have some issues like, basically a PO is raised in nonsap and this po should be made it as PO requsition based on some conditions  in SAP but there are some conditions,based on these IDOC should be created- 1)IDoc with

  • NWSSO and Digital Signatures

    This is a follow-up to Re-authenticate or provide additional credentials to access sensitive data. We are currently looking at implementing NWSSO. As far as I know, NWSSO can't be used as an external security product for Digital Signatures so that us

  • Issues With ADF-BC Business Events.

    Hi All, I was just trying out how ADF-BC business events works, so tried to create a small application based on scott.EMP table. In the EmpEO entity, created and published a new business event for employee creation. However, when I run the AM Tester