Problem in Back button in ALV

Hi All,
I have developed ALV report using grid layout.The user wanted that when he execute the report and click on refresh button the report data gets refreshed as report output is based on Z table and same Z table is updating through RFC interface continously.So this functionality is working for me but problem is that after click refresh 2 to 3 times then to come back to selection screen he has to click back button same number of times as refresh button click.
Could anybody help how I can come back to selection screen on single click after click refresh button.
Thanks&Regards,
Sachin

Hi Sachin,
This is what Madhukar meant
On refresh button I am again fetching data and calling fieldcatlog and displaying report.
Do not call the fieldcatalog and function module again.
Get the new data into your internal table in user command event &
Just add refresh = 'X' in your user command event.
For example
FORM f_user_command USING UCOMM LIKE SY-UCOMM v_selfld TYPE slis_selfield.
if sy-ucomm = 'REF'.
PERFORM get_data.
selfld-refresh = u2018Xu2019.
endif.
ENDFORM.
Kesav

Similar Messages

  • Problem in Back Button in ALV report

    Hi Team,
    I have created a report which has a selection screen. Based on the input I am showing an ALV OO grid in my custom screen 0100. Now In the system toolbar on my 0100 screen I have enabled back, up and exit button. On click of which I am wrting 'LEAVE TO SCREEN 0. '
    But it doesn't take me to the selection screen. Rather it throws me out of the transaction. Can anybody
    suggest me a command so that when I click on back button it will take to the selection screen.
    Thanks,
    Mainak

    Hi,
    Go through given program it is very usefull for you,
    ***Correct your program as follows...
    PROGRAM rsolett1 MESSAGE-ID sy.
    TYPE-POOLS: slis.
    data: repid like sy-repid.
    DATA: w_fieldcat TYPE slis_fieldcat_alv,
    t_fieldcat TYPE slis_t_fieldcat_alv.
    DATA: w_listheader TYPE slis_listheader,
    t_listheader TYPE slis_t_listheader.
    DATA: BEGIN OF t_output OCCURS 0,
    slno TYPE char10,
    name TYPE char10,
    lino TYPE char10,
    prof TYPE char10,
    addr TYPE char10,
    fanm TYPE char10,
    plbu TYPE char10,
    END OF t_output.
    w_fieldcat-col_pos = 1.
    w_fieldcat-fieldname = 'SLNO'.
    w_fieldcat-seltext_m = 'SERIAL NUMBER'.
    APPEND w_fieldcat TO t_fieldcat.
    CLEAR w_fieldcat.
    w_fieldcat-col_pos = 2.
    w_fieldcat-fieldname = 'NAME'.
    w_fieldcat-seltext_m = 'NAME'.
    APPEND w_fieldcat TO t_fieldcat.
    CLEAR w_fieldcat.
    w_fieldcat-col_pos = 3.
    w_fieldcat-fieldname = 'LINO'.
    w_fieldcat-seltext_m = 'LICENCE NUMBER'.
    APPEND w_fieldcat TO t_fieldcat.
    CLEAR w_fieldcat.
    w_fieldcat-col_pos = 4.
    w_fieldcat-fieldname = 'PROF'.
    w_fieldcat-seltext_m = 'PROFESSION'.
    APPEND w_fieldcat TO t_fieldcat.
    CLEAR w_fieldcat.
    w_fieldcat-col_pos = 5.
    w_fieldcat-fieldname = 'ADDR'.
    w_fieldcat-seltext_m = 'ADDRESS'.
    w_fieldcat-do_sum = 'X'.
    APPEND w_fieldcat TO t_fieldcat.
    CLEAR w_fieldcat.
    w_fieldcat-col_pos = 6.
    w_fieldcat-fieldname = 'FANM'.
    w_fieldcat-seltext_m = 'FATHER NAME'.
    APPEND w_fieldcat TO t_fieldcat.
    CLEAR w_fieldcat.
    w_fieldcat-col_pos = 7.
    w_fieldcat-fieldname = 'PLBU'.
    w_fieldcat-seltext_m = 'PLACE OF BUSSINESS'.
    APPEND w_fieldcat TO t_fieldcat.
    CLEAR w_fieldcat.
    *PUPULATING TOP-OF-PAGE.
    w_listheader-typ = 'H'.
    w_listheader-info = 'FORMA'.
    APPEND w_listheader TO t_listheader.
    CLEAR w_listheader.
    repid = sy-repid.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_callback_program = repid
    i_callback_pf_status_set = 'SET_PF_STATUS'
    i_callback_user_command = ' '
    i_callback_top_of_page = 'SUB_TOP_OF_PAGE'
    it_fieldcat = t_fieldcat
    i_default = 'X'
    TABLES
    t_outtab = t_output.
    FORM set_pf_status USING rt_extab TYPE slis_t_extab.
    SET PF-STATUS 'ZPFSTATUS'.
    ENDFORM.
    Edited by: Ganesh Modhave on Aug 12, 2008 1:06 PM
    Thanks&Regards,
    Naresh kumar

  • Problem with back button in alv o/p

    Hi guys,
    I am using Grid display to display a data. but when i am clicking on back button on o/p the o/p is displaying duplicate records for the first o/p. i,e it is displaying multiple records, again clicking on back it displaying extended o/p with more duplicate data...

    Hi
    Check did u refreshed the internal that u displayed.
    And also check grid control is initial or not
    Data: g_cust_container TYPE REF TO cl_gui_custom_container,
             g_cust_grid TYPE REF TO cl_gui_alv_grid.
    **Create Container ALV Grid
      IF g_cust_grid IS INITIAL.
    Create Control Container for Grid
        CREATE OBJECT g_cust_container
           EXPORTING
              container_name = g_container.
        IF sy-subrc <> 0.
    add your handling, for example
          CALL FUNCTION 'POPUP_TO_INFORM'
            EXPORTING
              titel = sy-repid
              txt2  = sy-subrc
              txt1  = text-m02. "The control could not be created.
        ENDIF.
        CREATE OBJECT g_cust_grid
           EXPORTING
              i_parent = g_cust_container.
      ENDIF.
      CALL METHOD g_cust_grid->refresh_table_display.
    Regards,
    Raghu.

  • Back button in ALV

    Dear All,
    i have redefined the functionality of back button in ALV list display calling the FM popup_to_confirm....... but the problem is that the pop up is being generated twice in the program. can this be made to one.
    regards
    abhi

    hi praveen,
    You can check the value of sy-lsind on the click of back button and set its value to the previous list.
    so what i mean to say is forcefully change the value of sy-lsind on click of back button to (sy-lsind - 1)
    ,this will take you to its parent list.
    Hope this is helpful to you.
    Abhishek.

  • Regarding BACK button in ALV OO ABAP

    Hi ,
    I have created two screens with containers, first screen displays records in ALV grid and when user selects one or more records and clicks on release button (which i have created ), it should update the database field and displays the status report on the next screen.
    I have also done another functionality i.e., when user double clicks on a particular record, it should call the change order transaction(IW32).
    Now, the problem is when i select few records and click on release and after the status report i.e.,the secon screen is getting displayed.after coming back to the first screen if i double click on the record, it is going to the respective transaction(IW32).but when i click 'BACK' button in IW32,it is not going back at one click.i need to press so many times.then it is coming back to the first screen.
    Can anybody help me how to go back at one click.

    Hi,
    i thing the problem is in you internal table where you are selecting the record its still keeping the old selected record. you should refresh your internal table after first selection and than select for calling transaction.
    Atul

  • Customised Back button in ALV loses selection screen parameters

    Hi,
    In my ALV output, the user interacts with the output. I had to program my own back button in the pf-status so that when the user hit back they didnt return to the original alv output. (if that makes sense)
    I use LEAVE TO TRANSACTION 'ZZZZ'  (user_command form) but the problem is that i lose all the selection parameters that the user has entered.
    I have tried everything.........set screen 0, leave screen etc..........and searched the forum but cant find the answer.
    Anyone know what i need i do..........
    Cheers..........

    try submit ...
    submit the report of ZZZZ tcode... with the selection parameters of your existing report....
    e.g.
    SUBMIT  zbbp_sc_arch_initial_upload
    VIA SELECTION-SCREEN                              
      WITH p_r01    EQ p_r01
      WITH p_r02    EQ p_r02
      WITH p_mode   EQ p_mode.

  • BDC problem with back button

    Hi all,
    i have idoc number in alv output.when the user clicks on this ,it should take the control to BD87 transaction with idoc number getting transferred there .also BD87 screen has changed on select option where the default is sy-datum .i need to clear this along with transfer of idoc number.
    i tried using submit statement,but its not working.
    then i used call transaction in error mode to acheive this functionality and i was sucessful.
    beloe is my code:
       REFRESH bdcdata.
            READ TABLE t_out INTO wa_out INDEX rs_selfield-tabindex.
            DATA: lv_mode(1) TYPE c VALUE 'E'.
            PERFORM bdc_dynpro      USING 'RBDMON00' '1100'.
            PERFORM bdc_field       USING 'BDC_CURSOR'
                                          'SX_UPDDA-HIGH'.
            PERFORM bdc_field       USING 'BDC_OKCODE'
                                          '=CRET'.
            PERFORM bdc_field       USING 'SX_DOCNU-LOW'
                                          wa_out-docnum.
            PERFORM bdc_field       USING 'SX_CRETI-LOW'
                                          '00:00:00'.
            PERFORM bdc_field       USING 'SX_CRETI-HIGH'
                                          '00:00:00'.
            PERFORM bdc_field       USING 'SX_UPDDA-LOW'
            PERFORM bdc_field       USING 'SX_UPDDA-HIGH'
            PERFORM bdc_field       USING 'SX_UPDTI-LOW'
                                          '00:00:00'.
            PERFORM bdc_field       USING 'SX_UPDTI-HIGH'
                                          '00:00:00'.
            PERFORM bdc_call_transaction USING 'BD87' lv_mode 'N'.
    So,the control directly takes me inside the BD87 screen just after the screen which we get after execting the selection screen of bd87 with idoc details
    the problem is whn i click on back button or F3,the control does not take me back to the ALV output screen rather it takes me to the selection screen of BD87.
    So,any way out to solve the back button problem???
    Thanks

    Hi Kunal,
    That's a really tough report to handle by submit.
    You can try to call the transaction in error mode and place one moment to force the screen to appear. Then complete the BTCI with the last steps to exit the selection screen.
    Try it like this:
    REFRESH bdcdata.
    READ TABLE t_out INTO wa_out INDEX rs_selfield-tabindex.
    DATA: lv_mode(1) TYPE c VALUE 'E'.
    PERFORM bdc_dynpro USING 'RBDMON00' '1100'.
    PERFORM bdc_field USING 'BDC_CURSOR' 'SX_UPDDA-HIGH'.
    PERFORM bdc_field USING 'BDC_OKCODE' '=CRET'.
    PERFORM bdc_field USING 'SX_DOCNU-LOW' wa_out-docnum.
    PERFORM bdc_field USING 'SX_CRETI-LOW' '00:00:00'.
    PERFORM bdc_field USING 'SX_CRETI-HIGH' '00:00:00'.
    PERFORM bdc_field USING 'SX_UPDDA-LOW' ''.
    PERFORM bdc_field USING 'SX_UPDDA-HIGH' ''.
    PERFORM bdc_field USING 'SX_UPDTI-LOW' '00:00:00'.
    PERFORM bdc_field USING 'SX_UPDTI-HIGH' '00:00:00'.
    *btci is interrupted in presentation of the result screen
    *last steps to exit selection screen
    PERFORM bdc_dynpro   USING 'RBDMON00' '1100'.
    PERFORM bdc_field       USING 'BDC_OKCODE' '/ECBAC'.
    PERFORM bdc_field       USING 'BDC_CURSOR' 'SX_UPDDA-LOW'.
    *use error mode in call transaction
    CALL TRANSACTION 'BD87' USING bdcdata MODE 'E'.
    *PERFORM bdc_call_transaction USING 'BD87' lv_mode 'N'.
    hope it helps,
    Edgar

  • Problem with Back button in Top Level Navigation

    Hi all,
    We are facing a minor problem with the Back button in the Top Level Navigation in Portal. This button is present under the Roles and Worksets menu along with the History, Forward, and Add to Portal Favorites links.
    The problem is faced when we have some worksets under a single role. While browsing accross these worksets by randomly clicking on them, we wish to use the Back button as well to go back to the previous workset. But when we use the Back button, the Detailed Navigation panel in the last workset is not retrieved.
    I will explain with the System Administration Role. I open the worksets under this role in the following manner:
    First I open Transport;
    Next I open Portal Display;
    Next I open System Configuration;
    Now I wish to go back to Portal Display workset by clicking on the Back button. But when I do this, although the Portal Display workset opens up, but I cannot see the Detailed Navigation Panel. See the screenshot below:
    http://img399.imageshack.us/my.php?image=backbuttonkg6.jpg
    Please help me in solving this issue.
    Regards,
    Ankur

    I think I have found a resolution, although not very pleasant:
    [Note 950426 - Portal Back button not working correctly|https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_ep_pi/~form/handler%7b5f4150503d3030323030363832353030303030303031393732265f4556454e543d444953504c4159265f4e4e554d3d393530343236%7d]
    Regards,
    Ankur

  • Problem Using Back Button in IE When Viewing PDFs with Acrobat Pro

    I have an administrative page on my website where I view PDFs of form data submitted by my clients.  It has worked fine all along, but suddenly a problem.  When I view a PDF, I could always hit the back button and it would take me to the Administrative Interface (of all of my forms).  BUT now if I hit the back button it takes me right back to the same form (page) I'm viewing.  Below if the Administrative Interface....It may be hard to see but on the left side is a link for the PDFs of available forms.  Clicking on the link opens the form...but again when I then click back I'm supposed to return to this administrative page...but instead back viewing the exact same form.  HELP!

    How do I do the PDF View Previous if the PDF is opening in a browser window in IE?

  • Multiple Video Tracks Problem with Back Button

    Hi,
    I am making a DVD that has to contain 16 films. Unfortunately the videos don't have the same aspect ratios, so I have to create one video track for each film.
    When the DVD is started they are supposed to play all in a row (no menus). So the end action for each track is to jump to the first chapter of the next track.
    My problem is that once I am playing, say, track 5, there is no way to get back to track 4 with the "back button" on the remote control.
    Do I have to script this? And if yes, how?

    That is exactly my problem. Chapter markers only work on the same track, for some reason you can't jump to a chapter in a different track. What I need is a solution to jump from a track to the previous one when pressing the back button on the remote.
    As I wrote before I can't use just one track for all films, because they have different aspect ratios.
    Message was edited by: schmiddl

  • Servlet Problem with Back Button on IE

    Hello All:
    This is a weird problem I am facing on IE.
    I have a servlet which is invoked by the doGet() method. This servlet
    has a FORM which has few fields. One of the field has a hyperlink which
    makes a window.open() call for Onclick. This pop-up allows a user to
    search for some value. The result of the search is displayed in a
    SELECT box. Based on the value selected in this SELECT box, the field
    in the servlet that called this pop-up gets populated. After this is
    done, I close this pop-up & click on the proceed button of the FORM
    (using POST) which takes us to another servlet. Then when I click on
    the back button, the fields on the form which were populated are gone.
    I have made the following analysis:
    (i) On clicking the back button, a request is sent to the server.
    (ii) It works on FireFox & not on IE
    (iii) If I do not use the hyperlink to bring the pop-up, and then I
    click on proceed and then back, the fields do not vanish.
    (iv) I tried using http://www.google.com to the call on window.open().
    Does not help
    (v) The very action of using pop-up by clicking on it causes this
    problem
    (vi) I tried replacing the hyperlink with a button. It did not work.
    Any help or tips in this regard would be helpful.
    Thanks in advance.
    Mahesh

    I dont know how you can post on the back button, and am a bit confused as to why you need to go back, you would normally want to go forwards :).
    What I would do is have the same servlet handle both cases.
    I would make 1 servlet SUBMIT TO ITSELF.
    You may have to pass an additional parameter to indicate whether this is the initial / first request, or a subsequent request where the servlet has re-submitted back to itself.
    If you want to disable the back button you can use javaScript
    <script language="JavaScript" type="text/JavaScript">
    <!--
    javascript:window.history.forward(-1);
    -->
    </script>
    I used this when I found that users could use the back button and re-submit when I didnt want them to, kind of the opposite of your problem!

  • Problem with 'BACK' option for ALV grid

    Hi Friends,
    I'm using FM, REUSE_ALV_GRID_DISPLAY in my report.
    Once I got an ALV output, when I press the BACK button,
    it's going to blank sceen again when I press BACK am getting selection screen.
    From output am not able to goto the selection screen. Kindly suggest on this issue.
    Thanks in advance.
    Regards,
    Bharat.

    Hi,
    I don't have write statement anywhere in my prog.
    pls refer to the code.
    REPORT  ZCDC_TRACKING_REPORT no standard page heading message-id zz1
    tables:vbak,
           vbap,
           vbkd,
           vtfa,
           vbfa,
           vtrkh,
           vttk.
    TYPE-POOLS: SLIS.                      "Field catalog structure
    DATA: FCATALOG TYPE SLIS_FIELDCAT_ALV OCCURS 30.
    DATA: FZEILE   TYPE SLIS_FIELDCAT_ALV OCCURS 30 with header line.
    data:w_disp_variant TYPE disvariant,
         s_alv_layout   type slis_layout_alv.
    DATA: W_REPID     LIKE SY-REPID,
          W_SUBRC     LIKE SY-SUBRC,
          W_LOOPCOUNT LIKE SY-TABIX,
          W_LINES     TYPE I,
          IS_VARIANT  LIKE DISVARIANT,
          GS_LAYOUT   TYPE SLIS_LAYOUT_ALV.
    *Internal table declaration.
    data: begin of i_vbak occurs 0,
          vbeln like vbak-vbeln,
          kunnr like vbak-kunnr,
          bstnk like vbak-bstnk,
          end of i_vbak.
    data: begin of i_vbfa occurs 0,
          vbeln like vbfa-vbeln,
          vbelv like vbfa-vbelv,
          end of i_vbfa.
    data: begin of i_vtfa occurs 0,
          tknum like vtfa-tknum,
          vbeln like vbak-vbeln,
          end of i_vtfa.
    data: begin of i_vttp occurs 0,
          tknum like vtfa-tknum,
          vbeln like vbak-vbeln,
          end of i_vttp.
    data: begin of i_vttk occurs 0,
          tknum like vtfa-tknum,
          vsart like vttk-vsart,
          dtabf like vttk-dtabf,
          tdlnr like vttk-tdlnr,
          TNDR_TRKID like vttk-TNDR_TRKID,
          end of i_vttk.
    data: begin of i_final occurs 0,
          kunnr like vbak-kunnr,
          name1 like kna1-name1,
          vbeln like vbak-vbeln,
          bstkd like vbkd-bstkd,
          dtabf like vttk-dtabf,
          tdlnr like vttk-tdlnr,
          TNDR_TRKID like vttk-TNDR_TRKID,
          end of i_final,
          wa_final like i_final.
    data: v_name1 like kna1-name1,
          v_trackno like vtrkh-trackn.
    **selection-screen.
    SELECTION-SCREEN begin of block b1 with frame.
    parameters: R1 RADIOBUTTON GROUP rad1 DEFAULT 'X'.
    parameters: p_vbeln like vbak-vbeln,
                p_bstkd like vbkd-bstkd.
    SKIP.
    SKIP.
    *SELECTION-SCREEN end of block b1.
    *SELECTION-SCREEN begin of block b2.
    parameters: R2 RADIOBUTTON GROUP rad1.
    select-options: s_kunnr for vbak-kunnr.
    select-options: s_dtabf for VTTK-DTABF.
    SELECTION-SCREEN end of block b1.
    SELECTION-SCREEN begin of block b2 with frame.
    parameters: P_track RADIOBUTTON GROUP rad2 default 'X',
                P_car RADIOBUTTON GROUP rad2,
                P_both RADIOBUTTON GROUP rad2.
    SELECTION-SCREEN end of block b2.
    **Initialization.
    Initialization.
      MOVE SY-REPID TO W_REPID.
    *At selection-screen.
    At selection-screen.
    if R1 eq 'X'.
       if p_vbeln eq ' ' and p_bstkd eq ' '.
         message e000(zz1) with 'Please enter either PO # or SO #'.
       endif.
    elseif R2 eq 'X'.
      if ( s_kunnr-low is initial and  s_kunnr-high is initial ) and
         ( s_dtabf-low is initial and  s_dtabf-high is initial )  .
         message e000(zz1) with 'Please limit your selection criteria, this'
                             'cannot run without a Customer # & Date range'.
      endif.
    endif.
    **start-of-selection.
    start-of-selection.
    **if option foreground is selected
    IF R1 eq 'X'.
    **step1 select data from VBAK,VBKD
    **step2 select data from VTTK
      perform get_data_foreground.
    Perform process_data.
    elseif R2 eq 'X'.
    **if option Batch processing selected
    **select data from KNA1,VBAK,VTTKelseif R2 eq 'X'.
      perform get_data_batch_processing.
    endif.
      Perform process_data.
    end-of-selection.
    *&      Form  get_data_foreground
          text
    -->  p1        text
    <--  p2        text
    form get_data_foreground .
    if p_vbeln ne ' ' and p_bstkd ne ' '.
    select vbeln
           kunnr
           bstnk
           from vbak into table i_vbak
           where vbeln eq p_vbeln
             and bstnk eq p_bstkd.
    elseif p_vbeln eq ' ' .
    select vbeln
           kunnr
           bstnk
           from vbak into table i_vbak
           where bstnk eq p_bstkd.
    elseif p_bstkd eq ' '.
    select vbeln
           kunnr
           bstnk
           from vbak into table i_vbak
           where vbeln eq p_vbeln.
    endif.
    **Get data from VBFA
      if not i_vbak[] is initial.
       select vbeln
              vbelv from VBFA into table i_vbfa
              for all entries in i_vbak
              where vbelv = i_vbak-vbeln
                and vbtyp_n = 'J'.
      endif.
    **select data from VTTP
      if not i_vbfa[] is initial.
       select tknum
              vbeln
              from vttp into table i_vttp
              for all entries in i_vbfa
              where vbeln = i_vbfa-vbeln.
      endif.
    *select data from VTTK
    if not i_vttp[] is initial.
       select  tknum
               vsart
               dtabf
               tdlnr
               TNDR_TRKID  from vttk into table i_vttk
               for all entries in i_vttp
               where tknum eq i_vttp-tknum.
    endif.
    **select data from VTFA
    if not i_vbak[] is initial.
      select tknum
             vbeln
             from vtfa into table i_vtfa
             for all entries in i_vbak
             where vbeln = i_vbak-vbeln.
    endif.
    *select data from VTTK
    if not i_vtfa[] is initial.
      select  tknum
              dtabf
              tdlnr
              TNDR_TRKID  from vttk into table i_vttk
              for all entries in i_vtfa
              where tknum eq i_vtfa-tknum.
    endif.
    endform.                    " get_data_foreground
    *&      Form  get_data_batch_processing
          text
    -->  p1        text
    <--  p2        text
    form get_data_batch_processing .
    select vbeln
           kunnr
           bstnk
           from vbak into table i_vbak
           where kunnr in s_kunnr.
    **Get data from VBFA
      if not i_vbak[] is initial.
       select vbeln from VBFA into table i_vbfa
              for all entries in i_vbak
              where vbelv = i_vbak-vbeln
                and vbtyp_n = 'J'.
      endif.
    **select data from VTTP
      if not i_vbfa[] is initial.
       select tknum
              vbeln
              from vttp into table i_vttp
              for all entries in i_vbfa
              where vbeln = i_vbfa-vbeln.
      endif.
    *select data from VTTK
    if not i_vttp[] is initial.
       select  tknum
               vsart
               dtabf
               tdlnr
               TNDR_TRKID  from vttk into table i_vttk
               for all entries in i_vttp
               where tknum eq i_vttp-tknum
                 and dtabf eq s_dtabf.
    endif.
    **select data from VTFA
    if not i_vbak[] is initial.
      select tknum
             vbeln
             from vtfa into table i_vtfa
             for all entries in i_vbak
             where vbeln = i_vbak-vbeln.
    endif.
    **select data from VTTK
    if not i_vtfa[] is initial.
      select  tknum
              dtabf
              tdlnr
              TNDR_TRKID  from vttk into table i_vttk
              for all entries in i_vtfa
              where tknum eq i_vtfa-tknum
                and dtabf eq s_dtabf.
    endif.
    endform.                    " get_data_batch_processing
    *&      Form  process_data
          text
    -->  p1        text
    <--  p2        text
    form process_data .
    **loop processing
    loop at i_vbak.
       wa_final-vbeln = i_vbak-vbeln.
       wa_final-bstkd = i_vbak-bstnk.
       wa_final-kunnr = i_vbak-kunnr.
       select single name1 into v_name1
                           from kna1
                           where kunnr eq wa_final-kunnr.
       if sy-subrc eq 0.
         wa_final-name1 = v_name1.
       endif.
      read table i_vbfa with key vbelv = i_vbak-vbeln.
      if sy-subrc eq 0.
         read table i_vttp with key vbeln = i_vbfa-vbeln.
         if sy-subrc eq 0.
            read table i_vttk with key tknum = i_vttp-tknum.
             if sy-subrc eq 0.
                wa_final-dtabf = i_vttk-dtabf.
                if p_track eq 'X'.
                   if i_vttk-vsart = 'LTL'.
                      wa_final-TNDR_TRKID = i_vttk-TNDR_TRKID.
                   else.
                     select single trackn from VTRKH into v_trackno
                                      where uevbeln = i_vbfa-vbeln
                                        and uevbtyp = 'J'
                                        and vbtyp   = 'X'.
                       if sy-subrc eq 0.
                        wa_final-TNDR_TRKID = v_trackno.
                       endif.
                   endif.
                elseif P_car eq 'X'.
                   wa_final-tdlnr = i_vttk-tdlnr.
                else.
                   wa_final-tdlnr = i_vttk-tdlnr.
                   if i_vttk-vsart = 'LTL'.
                      wa_final-TNDR_TRKID = i_vttk-TNDR_TRKID.
                   else.
                     select single trackn from VTRKH into v_trackno
                                      where uevbeln = i_vbfa-vbeln
                                        and uevbtyp = 'J'
                                        and vbtyp   = 'X'.
                       if sy-subrc eq 0.
                        wa_final-TNDR_TRKID = v_trackno.
                       endif.
                   endif.
                endif.
             endif.
          endif.
      endif.
      append wa_final to i_final.
      clear : i_final, wa_final,i_vbak,i_vbfa,i_vttp, i_vttk,v_name1.
    endloop.
    IF R1 eq 'X'.
      PERFORM FIELDCATALOG.
      PERFORM LAYOUT_BUILD CHANGING GS_LAYOUT.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
          EXPORTING
             I_CALLBACK_PROGRAM       = W_REPID
             IS_LAYOUT                = GS_LAYOUT
             IT_FIELDCAT              = FCATALOG
            TABLES
                 T_OUTTAB             = i_final
            EXCEPTIONS
                 PROGRAM_ERROR        = 1
                 OTHERS               = 2.
    else.
      PERFORM BACKGROUND_JOB.
    **Transfer of data into Application server
    OPEN DATASET P_PFILE for output IN TEXT MODE encoding DEFAULT .
      if sy-subrc eq 0.
          loop at itab.
         transfer itab to p_pfile.
        endloop.
      else.
       message e000(zz1) with p_pfile.
      endif.
    CLOSE dataset p_pfile.
    endif.
    endform.                    " process_data
    *&      Form  FIELDCATALOG
          text
    -->  p1        text
    <--  p2        text
    form FIELDCATALOG .
      DATA: L_FIELDNO LIKE SY-TABIX.
      L_FIELDNO = 1.
    **Cust. Number
      CLEAR FZEILE.
      FZEILE-COL_POS    = L_FIELDNO.
      L_FIELDNO         = L_FIELDNO + 1.
      FZEILE-FIELDNAME  = 'KUNNR'.
      FZEILE-DATATYPE   = 'CHAR'.
      FZEILE-OUTPUTLEN  = 15.
      FZEILE-SELTEXT_L  = 'Customer' .
      FZEILE-LOWERCASE  = 'X'.
      FZEILE-SP_GROUP   = 'A'.
      FZEILE-KEY = 'X'.
      FZEILE-DDICTXT       = 'M'.          " medium text
      APPEND FZEILE TO FCATALOG.
    **Customer name
      CLEAR FZEILE.
      FZEILE-COL_POS    = L_FIELDNO.
      L_FIELDNO         = L_FIELDNO + 1.
      FZEILE-FIELDNAME  = 'NAME1'.
      FZEILE-DATATYPE   = 'CHAR'.
      FZEILE-OUTPUTLEN  = 35.
      FZEILE-SELTEXT_L  = 'Customer Name' .
      FZEILE-LOWERCASE  = 'X'.
      FZEILE-SP_GROUP   = 'A'.
      FZEILE-KEY = 'X'.
      FZEILE-DDICTXT       = 'M'.          " medium text
      APPEND FZEILE TO FCATALOG.
    **Sales order
      CLEAR FZEILE.
      FZEILE-COL_POS    = L_FIELDNO.
      L_FIELDNO         = L_FIELDNO + 1.
      FZEILE-FIELDNAME  = 'VBELN'.
      FZEILE-DATATYPE   = 'CHAR'.
      FZEILE-OUTPUTLEN  = 10.
      FZEILE-SELTEXT_L  = 'Sales order' .
      FZEILE-LOWERCASE  = 'X'.
      FZEILE-SP_GROUP   = 'A'.
      FZEILE-KEY = 'X'.
      FZEILE-DDICTXT       = 'M'.          " medium text
      APPEND FZEILE TO FCATALOG.
    **Custmoer PO
      CLEAR FZEILE.
      FZEILE-COL_POS    = L_FIELDNO.
      L_FIELDNO         = L_FIELDNO + 1.
      FZEILE-FIELDNAME  = 'BSTKD'.
      FZEILE-DATATYPE   = 'CHAR'.
      FZEILE-OUTPUTLEN  = 30.
      FZEILE-SELTEXT_L  = 'Custmoer PO' .
      FZEILE-LOWERCASE  = 'X'.
      FZEILE-SP_GROUP   = 'A'.
      FZEILE-KEY = 'X'.
      FZEILE-DDICTXT       = 'M'.          " medium text
      APPEND FZEILE TO FCATALOG.
    **Date shipped
      CLEAR FZEILE.
      FZEILE-COL_POS    = L_FIELDNO.
      L_FIELDNO         = L_FIELDNO + 1.
      FZEILE-FIELDNAME  = 'DTABF'.
      FZEILE-DATATYPE   = 'CHAR'.
      FZEILE-OUTPUTLEN  = 15.
      FZEILE-SELTEXT_L  = 'Date shipped' .
      FZEILE-LOWERCASE  = 'X'.
      FZEILE-SP_GROUP   = 'A'.
      FZEILE-KEY = 'X'.
      FZEILE-DDICTXT       = 'M'.          " medium text
      APPEND FZEILE TO FCATALOG.
    **Carrier
      CLEAR FZEILE.
      FZEILE-COL_POS    = L_FIELDNO.
      L_FIELDNO         = L_FIELDNO + 1.
      FZEILE-FIELDNAME  = 'TDLNR'.
      FZEILE-DATATYPE   = 'CHAR'.
      FZEILE-OUTPUTLEN  = 15.
      FZEILE-SELTEXT_L  = 'Carrier' .
      FZEILE-LOWERCASE  = 'X'.
      FZEILE-SP_GROUP   = 'A'.
      FZEILE-KEY = 'X'.
      FZEILE-DDICTXT       = 'M'.          " medium text
      APPEND FZEILE TO FCATALOG.
    **Tracking/Pro #
      CLEAR FZEILE.
      FZEILE-COL_POS    = L_FIELDNO.
      L_FIELDNO         = L_FIELDNO + 1.
      FZEILE-FIELDNAME  = 'TNDR_TRKID'.
      FZEILE-DATATYPE   = 'CHAR'.
      FZEILE-OUTPUTLEN  = 15.
      FZEILE-SELTEXT_L  = 'Tracking/Pro#' .
      FZEILE-LOWERCASE  = 'X'.
      FZEILE-SP_GROUP   = 'A'.
      FZEILE-KEY = 'X'.
      FZEILE-DDICTXT       = 'M'.          " medium text
      APPEND FZEILE TO FCATALOG.
      CLEAR FZEILE.
    endform.                    " FIELDCATALOG
    *&      Form  LAYOUT_BUILD
          text
         <--P_GS_LAYOUT  text
    form LAYOUT_BUILD  changing p_gs_layout TYPE SLIS_LAYOUT_ALV.
      CLEAR P_GS_LAYOUT.
      P_GS_LAYOUT-ZEBRA            = 'X'.
      P_GS_LAYOUT-BOX_FIELDNAME    = SPACE.
      P_GS_LAYOUT-MAX_LINESIZE     = 250.
    endform.                    " LAYOUT_BUILD
    *&      Form  BACKGROUND_JOB
          text
    -->  p1        text
    <--  p2        text
    form BACKGROUND_JOB .
    DATA: JOB_NAME         LIKE TBTCO-JOBNAME,
    JOB_NR           LIKE TBTCO-JOBCOUNT,
    JOB_RELEASED     TYPE C,
    JOB_START_SOFORT TYPE C.
    DATA: TITEL(15) TYPE C,
    TEXT1(35) TYPE C,
    TEXT2(40) TYPE C,
    ANSWER    TYPE C.
    DATA: PARAMS    LIKE PRI_PARAMS,
    VALID     TYPE C.
    JOB_NAME = SYST-REPID.
    CALL FUNCTION 'JOB_OPEN'
    EXPORTING
    JOBNAME          = JOB_NAME
    IMPORTING
    JOBCOUNT         = JOB_NR
    EXCEPTIONS
    CANT_CREATE_JOB  = 1
    INVALID_JOB_DATA = 2
    JOBNAME_MISSING  = 3
    OTHERS           = 4.
    IF SYST-SUBRC NE 0.
    MESSAGE I162(00) WITH
    'An error occured while creating the background job.'.
    STOP.
    ELSE.
    *set print parameters to output any errors to spool...
    CALL FUNCTION 'GET_PRINT_PARAMETERS'
    EXPORTING
    IMMEDIATELY            = ' '
    MODE                   = 'BATCH'
    NO_DIALOG              = 'X'
    RELEASE                = 'X'
    NEW_LIST_ID            = 'X'
    LINE_SIZE              = SY-LINSZ
    *LIST_NAME              = 'RBE'
    LIST_TEXT              = 'Extract Results'
    IMPORTING
    OUT_PARAMETERS         = PARAMS
    VALID                  = VALID
    EXCEPTIONS
    ARCHIVE_INFO_NOT_FOUND = 1
    INVALID_PRINT_PARAMS   = 2
    INVALID_ARCHIVE_PARAMS = 3
    OTHERS                 = 4.
    IF VALID NE SPACE.
    *submit job with all the selection screen params...
    SUBMIT (JOB_NAME) USER SYST-UNAME
    VIA JOB JOB_NAME NUMBER JOB_NR
    *WITH CLIENT   = CLIENT
    *WITH MONIFROM = MONIFROM
    *WITH MONI_TO  = MONI_TO
    *WITH TQ_FROM  = TQ_FROM
    *WITH TQ_TO    = TQ_TO
    *WITH WORKLOAD = WORKLOAD
    *WITH ALL      = ALL
    *WITH SPL1     = SPL1
    *WITH APPSERV1 = APPSERV1
    *WITH SPOOLNR  = SPOOLNR
    *WITH APPPATH1 = APPPATH1
    *WITH PCPATH   = PCPATH
    *WITH SPL2     = SPL2
    *WITH APPSERV2 = APPSERV2
    TO SAP-SPOOL SPOOL PARAMETERS PARAMS
    WITHOUT SPOOL DYNPRO
    AND RETURN.
    IF SYST-SUBRC <> 0.
    CASE SYST-SUBRC.
    WHEN  4.
    MESSAGE I162(00) WITH
    'Error defining background job!'
    ' Background job canceled by User.'.
    WHEN 8.
    MESSAGE I162(00) WITH
    'Error defining background job!'
    ' Error in job scheduling (JOB_SUBMIT)'.
    WHEN 12.
    MESSAGE I162(00) WITH
    'Error defining background job!'
    ' Error in internal number assignment'.
    ENDCASE.
    ENDIF.
    endif.
    endif.
    endform.                    " BACKGROUND_JOB

  • Problem with back button when using task flow to navigate through pages

    I am using unbounded task flow to navigate through my pages
    in page2 I added back button so I can back to page1 using the action A2
    task flow 1
    page 1 -----A1-------> page 2
    page2 ----A2--------> page1
    the problem when I used page2 in another task flow
    task flow 2
    page 3 -----A3------> page2
    page 2 -----A4 -----> page3
    here when I click on back button he take me to page1
    how can I back to page3 ???????

    For this you have to know where the user came from when he navigated to page2. You can e.g. store the back target in a variable in the session or pageflow scope (when the user navigates from page1 or page3 to page2), then you bind the back button of page 2 to the stored variable.
    Timo

  • Problem with back button  with myfaces/jsf

    Hi guys
    i have very strange kind of problem , i have a page where i am shwing tabular data with data scroller , thats work fine , in this tabbular data we are shing user infomration , and a link on user name ti see his details , this link works fine , and take user to user details page ,
    but from that page if user press back button , and reaches back to tabbular data page , in this page if user select any link , page reloads , and stay there , and after reloading page if user select any link then it works
    Any one geting this kind of preoblem , hope i am not alone
    please help me out
    X-preet

    Hi Luisa,
    1 .Create 2 views  View1 and View2
    2. Place buttons on both the views and create actions for both in view1 and view2
    3.Create outboundplug from View1 to View2.(Navigation link also)
    4.Create outboundplug from View2 to View1.(Navigation link also)
    5. In View1 button action fire the outboundplugto View2
    6. In View2 button action fire the outboundplugto View1.
    Regards, Anilkumar

  • Navigation problem with back button in module pool

    Hi everyone,
    I have a scenario in module pool programming in which i need help.
    I have an i/p filepath screen where the user inputs his/her file and clicks on validate button provided in the toolbar.
    After that it goes to the next screen which displays all the messages(error/success).
    After I click on Execution button it goes to next screen displaying all the created data.
    Now when I click on back button I want it to go to the i/o filepath screen.
    Please give me your comments on this.
    Leave to screen XXXX is giving me dump so any other options plz let me know.
    Thanks in advance.

    Hi Amit,
       Lets say you have 3 screens 100, 200 and 300. screen 100 has you input file path and 200 shows the message and 300 shows the created data.
    Now in PAI of 300 write as below.
    IN the screen as below
    MODULE USER_COMMAND_300_EXIT AT EXIT COMMAND.
    In the include as below
    MODULE USER_COMMAND_300_EXIT.
    CASE sy-ucomm.
    WHEN 'BACK'.   " OK code for BACK button.
    CALL SCREEN 100.
    WHEN 'CANCEl'.
    LEAVE TO SCREEN 0
    ENDCASE.
    ENDMODULE.
    Please revert if you still face problems.
    Regards,
    Praveenkumar T

Maybe you are looking for

  • [SOLVED] Problem with acpid and systemd-logind

    Hi, I have the following problem: I want set an action, when power button is pushed, different from shutdown and I want do this with a rule in acpid. Before set a rule in acpid, I modified the /etc/systemd/logind.conf in the following way: HandlePowe

  • Can no longer access on-line banking (citizens) with latest version

    With the latest upgrade (29.0.1)(Mac 0sx 10.9.2), firefox seems to block access to on-line banking. endless wait.

  • Using an Airport Extreme and a Time Capsule at the same time

    Guys I have had an Airport Extreme and a Time Capsule running together for nearly a year now and over the last few days the TC has been behaving badly. I changed its settings and now I'm in a mess. No, I can't remember the previous settings Does anyo

  • Slow Motion Problems With Twixtor Pro in AE CS5.5

    Hello forum! I recorded some footage at 1080p and at 60 fps. My shutter speed was 1/1000 and the ISO was 3200. After importing my footage and applying twixtor pro to a solid and setting the color source to my footage, i get a lot of ghosting effects.

  • Canon T3i Rebel won't turn on( Intermittently)

    Hi, My Canon T3i Rebel sometimes goes off while I am shooting. When I try to get it back, it just won't turn on. Now if I take the memory card and the battery out, leave it overnight and next day re-assemble them and turn it on it MAY or MAY NOT turn