Using module pool pgm, Con't modify the table field valus

Hello frnds,
i m create one rpt using module pool pgm, click display button display the table values .
Iwant to modify some fields that changes is update to table.
Bellow coding is correct or not, how can modify the fields with save changes.
TABLES : ZRFIM1.
DATA: ZREPNO TYPE ZRFIM1-ZREPNO,
ZPLANT TYPE ZRFIM1-ZPLANT,
ZRIMNO TYPE ZRFIM1-ZRIMNO,
ZRIMDAT TYPE ZRFIM1-ZRIMDAT,
DISPLAY TYPE C,
CLEAR TYPE C,
EXIT TYPE C,
SAVE TYPE C,
OK_CODE LIKE SY-UCOMM.
data : itab type table of zrfim1 with default key.
data : wa_itab type zrfim1.
CALL SCREEN 100.
*& Module STATUS_0100 OUTPUT
text
SET PF-STATUS 'SAVE'.
AT USER-COMMAND.
module STATUS_0100 output.
SET PF-STATUS 'xxxxxxxx'.
SET TITLEBAR 'xxx'.
CASE SY-UCOMM.
WHEN 'EXIT'.
LEAVE PROGRAM.
WHEN 'BACK'.
LEAVE PROGRAM.
WHEN 'DISPLAY'.
SELECT SINGLE ZREPNO ZPLANT ZRIMNO ZRIMDAT FROM ZRFIM1
INTO (ZRFIM1-ZREPNO, ZRFIM1-ZPLANT, ZRFIM1-ZRIMNO, ZRFIM1-ZRIMDAT)
WHERE ZREPNO = ZRFIM1-ZREPNO.
WHEN 'CLEAR'.
CLEAR ZRFIM1.
WHEN 'SAVE'.
select single * from zrfim1 into wa_itab where ZREPNO = ZRFIM1-ZREPNO.
wa_itab-zrepno = ZREPNO.
wa_itab-zplant = ZPLANT.
wa_itab-zrimno = ZRIMNO.
wa_itab-zrimdat = ZRIMDAT.
modify zrfim1 from wa_itab.
ENDCASE.
endmodule.
Thanks in advance.

hello,
change the code like:
(IF ZRFIM1 is the structure has been used on screen)
wa_itab-zrepno = ZRFIM1-ZREPNO.
wa_itab-zplant = ZRFIM1-ZPLANT.
wa_itab-zrimno = ZRFIM1-ZRIMNO.
wa_itab-zrimdat = ZRFIM1-ZRIMDAT.
modify zrfim1 from wa_itab.
thanks
K.

Similar Messages

  • System generated value for a field and incrementing (using module pool pro)

    Hi,
    I'm getting system generated value for a field and incrementing (i.e done by coding) when i'm saving the screen or transaction (which is created using module pool programming) while modifying, saving its working fine, but when i'm going out of the screen or exit n again i start the screen (with some ztransco) the value for the field again starting from 0 so i want to start from the same value for a field where we exit or got out from the screen n incremented respectively while saving the screen,
    Thanks & Regards,
    MS
    Edited by: Rob Burbank on May 4, 2010 10:40 AM

    Search the forum for number range objects.
    Rob

  • Need module pool pgm

    hi friends ,
    i need module pool pgm with table control
    it should allow user to enter data and that data should be stored in
    ZTABLE.plz don't give demo pgm.if any one has developed give brief idea
    thaks in advance
    regards,
    soorya

    hi Soorya ,
        First of all you can get many module pool programs in the SDN search itelf .
    Anyways here is one samplw program for your reference :
    Creation of table controls in mpools
    Here you go with the  complete steps  for creating module pool programs  using table control:
    open se51, choose the icon like a table for table control . drag it and then place it in your screen . click on F6 and you will get a screen where youi need to provide the table name / field name that ( fields ) you are going to use in the screen and table control. after giving the ztable name click on get it from dictionary . you will get the list of available fields in a table. next choose the fields you wish to place in the table control , and if you want to place all fields in your table control then select every fields . after this you will get a structure which you should drag place inside the table control area .
    double click on the table control , set the proper attributes, tickmark the horizontal and vertical scroll bars to appear in your TC in the screen . save , check and activate ..
    following are the sample code you should follow to display datas in your table control ..
    write the following code in the flow logic of the screen ............
    process before output.
    module tc_01_init.
    loop at g_tc_01_itab
    into g_tc_01_wa
    with control tc_01
    cursor tc_01-current_line.
    module tc_01_move.
    module tc_01_get_lines.
    endloop.
    module status_0001.
    process after input.
    loop at g_tc_01_itab.
    chain.
    field sflight-carrid.
    field sflight-connid.
    field sflight-fldate.
    module tc_01_modify on chain-request.
    endchain.
    endloop.
    module tc_01_user_command.
    Write the following code in your Zmodulepool program !!
    program z_tst_mpool_tc_01.
    data: begin of l_tab_sflight occurs 10,
    carrid like sflight-carrid,
    connid like sflight-connid,
    fldate like sflight-fldate,
    end of l_tab_sflight.
    tables: sflight.
    types: begin of t_tc_01,
    carrid like sflight-carrid,
    connid like sflight-connid,
    fldate like sflight-fldate,
    end of t_tc_01.
    data: g_tc_01_itab type t_tc_01 occurs 0,
    g_tc_01_wa type t_tc_01. "work area
    data: g_tc_01_copied. "copy flag
    controls: tc_01 type tableview using screen 0001.
    data: g_tc_01_lines like sy-loopc.
    data: ok_code like sy-ucomm.
    include z_tst_mpool_tc_01_pbo .
    include z_tst_mpool_tc_01_pai .
    include z_tst_mpool_tc_01_incl01 .
    include z_tst_mpool_tc_01_status_0001.
    include Z_TST_MPOOL_TC_01_PBO .
    inside include
    module tc_01_init output.
    if g_tc_01_copied is initial.
    select * from sflight
    into corresponding fields
    of table g_tc_01_itab.
    g_tc_01_copied = 'X'.
    refresh control 'TC_01' from screen '0001'.
    endif.
    endmodule.
    module tc_01_move output.
    move-corresponding g_tc_01_wa to sflight.
    endmodule.
    module tc_01_get_lines output.
    g_tc_01_lines = sy-loopc.
    endmodule.
    hope this will be helpful to you ...
    Revert for further assistance if needed ...
    Regards,
    Ranjita

  • Saving Ztable using Module Pool

    hi
    I want to save the entries into a Ztable using Module pool programming.. I want the Module Pool Program to work like the SM30 table maintenance...
    Right now.. I have 2 module pool screen on the screen... one which displays the entries of Ztable and the other which is an input enabled screen so that I can enter records into it..
    When I save the records the Ztable should get updated and when the screen again comes to PBO the enetered records should be displayed in the first table control
    Right now I am stuck here
    PROCESS BEFORE OUTPUT.
    * MODULE STATUS_0001.r45
    MODULE FILL_TABLE.
    LOOP AT TBL_ZTVM3 into wa_ztvm3 WITH CONTROL TC1 CURSOR TC1-TOP_LINE.
    ENDLOOP.
    LOOP AT TBL2_ZTVM3 into ztvm3 WITH CONTROL TC2 CURSOR TC2-TOP_LINE.
    ENDLOOP.
    PROCESS AFTER INPUT.
    LOOP AT TBL_ZTVM3.
    ENDLOOP.
    LOOP AT TBL2_ZTVM3.
    ENDLOOP.
    MODULE USER_COMMAND_0001.
    user command goes like this
    *&  Include           YENTRIES_ZTABLE_I01
    *&      Module  USER_COMMAND_0001  INPUT
    *       text
    MODULE USER_COMMAND_0001 INPUT.
    CASE SY-ucomm.
    when 'SAVE'.
    modify tbl2_ztvm3 from wa2_ztvm3 INDEX TC2-CURRENT_LINE.
    ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0001  INPUT
    SO quite a simple code.. but after 1 year I just lost touch with this.. I have defined the Selection Column check rows too for the table control
    Can you please help me with this.. I <REMOVED BY MODERATOR>
    Edited by: Alvaro Tejada Galindo on Mar 27, 2008 1:41 PM

    IN PAI of the Module flow logic
    you need to modify the internal table with the modified content.
    Like this
    PROCESS AFTER INPUT.
      MODULE EXIT AT EXIT-COMMAND.
      MODULE CHECK_PAI.
      LOOP WITH CONTROL TC.
        MODULE MODIFY_DATA.
      ENDLOOP.
    IN side the MODIFY_DATA
    You need to update the Internal table with the modified content. then your internal table will have the latest Information.
    You save the latest information.

  • How to update field values in a database table using module pool prg?

    hi
    how to update field values in a database table using module pool prg?
    we created a customized table, and we put 2 push buttons in screen painter update and display.
    but update is not working?
    data is enter into screen fields and to internal table, but it is not updated in database table.
    thanks in adv
    vidya

    HI,
    we already used the update statement. but its not working.
    plz check this.
    *& Module Pool       ZCUST_CALL_REC
    PROGRAM  ZCUST_CALL_REC.
    TABLES: ZCUST_CALL_REC,ZREMARKS.
    data:  v_kun_low like ZCUST_CALL_REC-kunnr ,
           v_kun_high like ZCUST_CALL_REC-kunnr,
           v_bud_low like ZCUST_CALL_REC-budat,
           v_bud_high like ZCUST_CALL_REC-budat.
    ranges r_kunnr for ZCUST_CALL_REC-kunnr  .
    ranges r_budat for zcust_call_rec-budat.
    DATA: ITAB TYPE STANDARD TABLE OF ZCUST_CALL_REC WITH HEADER LINE,
          JTAB TYPE STANDARD TABLE OF ZREMARKS WITH HEADER LINE.
    *data:begin of itab occurs 0,
        MANDT LIKE ZCUST_CALL_REC-MANDT,
        kunnr like ZCUST_CALL_REC-kunnr,
        budat like ZCUST_CALL_REC-budat,
        code like ZCUST_CALL_REC-code,
        remarks like ZCUST_CALL_REC-remarks,
        end of itab.
    *data:begin of Jtab occurs 0,
        MANDT LIKE ZCUST_CALL_REC-MANDT,
        kunnr like ZCUST_CALL_REC-kunnr,
        budat like ZCUST_CALL_REC-budat,
        code like ZCUST_CALL_REC-code,
        remarks like ZCUST_CALL_REC-remarks,
        end of Jtab.
    CONTROLS:vcontrol TYPE TABLEVIEW USING SCREEN '9001'.
    CONTROLS:vcontrol1 TYPE TABLEVIEW USING SCREEN '9002'.
    *start-of-selection.
    *&      Module  USER_COMMAND_9000  INPUT
          text
    MODULE USER_COMMAND_9000 INPUT.
    CASE sy-ucomm.
    WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
    SET SCREEN 0.
    LEAVE SCREEN.
    CLEAR sy-ucomm.
    WHEN 'ENQUIRY'.
    perform multiple_selection.
    perform append_CUSTOMER_code.
    PERFORM SELECT_DATA.
    call screen '9001'.
    WHEN 'UPDATE'.
          perform append_CUSTOMER_code.
          PERFORM SELECT_DATA.
          call screen '9002'.
          perform update on commit.
    WHEN 'DELETE'.
          perform append_CUSTOMER_code.
          PERFORM SELECT_DATA.
          call screen '9002'.
    ENDCASE.
    ENDMODULE.                 " USER_COMMAND_9000  INPUT
    *&      Module  STATUS_9000  OUTPUT
          text
    MODULE STATUS_9000 OUTPUT.
      SET PF-STATUS 'ZCUSTOMER'.
    SET TITLEBAR 'xxx'.
    ENDMODULE.                 " STATUS_9000  OUTPUT
    *&      Module  USER_COMMAND_9001  INPUT
          text
    MODULE USER_COMMAND_9001 INPUT.
    CASE sy-ucomm.
    WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
    SET SCREEN 0.
    LEAVE SCREEN.
    CLEAR sy-ucomm.
    endcase.
    ENDMODULE.                 " USER_COMMAND_9001  INPUT
    *&      Module  STATUS_9001  OUTPUT
          text
    MODULE STATUS_9001 OUTPUT.
      SET PF-STATUS 'ZCUSTOMER'.
    SET TITLEBAR 'xxx'.
    move itab-MANDT   to zcust_call_rec-MANDT.
    move itab-kunnr   to zcust_call_rec-kunnr.
    move itab-budat   to zcust_call_rec-budat.
    move itab-code    to zcust_call_rec-code.
    move itab-remarks to zcust_call_rec-remarks.
    vcontrol-lines = sy-dbcnt.
    ENDMODULE.                 " STATUS_9001  OUTPUT
    *&      Module  USER_COMMAND_9002  INPUT
          text
    module  USER_COMMAND_9002 input.
    CASE sy-ucomm.
       WHEN 'BACK' OR 'EXIT' OR 'CANCEL'.
          SET SCREEN 0.
          LEAVE SCREEN.
          CLEAR sy-ucomm.
       WHEN 'UPDATE'.
             perform move_data.
         UPDATE ZCUST_CALL_REC FROM TABLE ITAB.
            IF SY-SUBRC = 0.
               MESSAGE I000(0) WITH 'RECORDS ARE UPDATED'.
             ELSE.
               MESSAGE E001(0) WITH 'RECORDS ARE NOT UPDATED'.
            ENDIF.
      WHEN 'DELETE'.
             perform move_data.
             DELETE ZCUST_CALL_REC FROM TABLE ITAB.
              IF SY-SUBRC = 0.
               MESSAGE I000(0) WITH 'RECORDS ARE DELETED'.
             ELSE.
               MESSAGE E001(0) WITH 'RECORDS ARE NOT DELETED'.
            ENDIF.
    endcase.
    endmodule.                 " USER_COMMAND_9002  INPUT
    *&      Module  STATUS_9002  OUTPUT
          text
    module STATUS_9002 output.
      SET PF-STATUS 'ZCUSTOMER1'.
    SET TITLEBAR 'xxx'.
    endmodule.                 " STATUS_9002  OUTPUT
    *&      Module  update_table  OUTPUT
          text
    module update_table output.
         move itab-MANDT   to zcust_call_rec-MANDT.
         move itab-kunnr   to zcust_call_rec-kunnr.
         move itab-budat   to zcust_call_rec-budat.
         move itab-code    to zcust_call_rec-code.
         move itab-remarks to zcust_call_rec-remarks.
    vcontrol-lines = sy-dbcnt.
    endmodule.                 " update_table  OUTPUT
    ***Selection Data
    FORM SELECT_DATA.
    SELECT  mandt kunnr budat code remarks  FROM zcust_call_rec INTO
                            table itab
                             WHERE kunnr IN r_kunnr AND BUDAT IN R_BUDAT.
    ENDFORM.
    ****append vendor code
    FORM APPEND_CUSTOMER_CODE.
    clear r_kunnr.
    clear itab.
    clear r_budat.
    refresh r_kunnr.
    refresh itab.
    refresh r_kunnr.
    IF r_kunnr  IS INITIAL
                  AND NOT v_kun_low IS INITIAL
                   AND NOT v_kun_high IS INITIAL.
                        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                                    EXPORTING
                                       input         = v_kun_low
                                    IMPORTING
                                       OUTPUT        = r_kunnr-low.
                       CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                                  EXPORTING
                                      input         = v_kun_high
                                  IMPORTING
                                      OUTPUT        = r_kunnr-high.
                     r_kunnr-option = 'BT'.
                     r_kunnr-sign = 'I'.
                     append r_kunnr.
       PERFORM V_BUDAT.
    ELSEIF r_kunnr  IS INITIAL
                  AND NOT v_kun_low IS INITIAL
                   AND  v_kun_high IS INITIAL.
                        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                                    EXPORTING
                                       input         = v_kun_low
                                    IMPORTING
                                       OUTPUT        = r_kunnr-low.
                    r_kunnr-SIGN = 'I'.
                    r_kunnr-OPTION = 'EQ'.
                    APPEND r_kunnr.
       PERFORM V_BUDAT.
    ELSEIF r_kunnr IS INITIAL
                  AND  v_kun_low IS INITIAL
                   AND NOT v_kun_high IS INITIAL.
                        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                                    EXPORTING
                                       input         = v_kun_low
                                    IMPORTING
                                       OUTPUT        = r_kunnr-low.
                    r_kunnr-SIGN = 'I'.
                    r_kunnr-OPTION = 'EQ'.
                    APPEND r_kunnr.
          PERFORM V_BUDAT.
    ELSEIF r_kunnr IS INITIAL
                  AND  v_kun_low IS INITIAL
                   AND  v_kun_high IS INITIAL.
                        IF SY-SUBRC = 0.
                             MESSAGE I003(0) WITH 'ENTER CUSTOMER NUMBER'.
                              CALL SCREEN '9000'.
                        ENDIF.
    PERFORM V_BUDAT.
    ENDIF.
    ENDFORM.
    FORM V_BUDAT.
    IF  R_BUDAT IS INITIAL
                   AND NOT v_BUD_low IS INITIAL
                   AND NOT v_BUD_high IS INITIAL.
                     r_budat-low = v_bud_low.
                     r_budat-high = v_bud_high.
                     r_budat-option = 'BT'.
                     r_budat-sign = 'I'.
                     append r_budat.
             ELSEIF  R_BUDAT IS INITIAL
                   AND NOT v_BUD_low IS INITIAL
                   AND  v_BUD_high IS INITIAL.
                     r_budat-low = v_bud_low.
                     r_budat-high = v_bud_high.
                     r_budat-option = 'EQ'.
                     r_budat-sign = 'I'.
                     append r_budat.
             ELSEIF  R_BUDAT IS INITIAL
                   AND  v_BUD_low IS INITIAL
                   AND NOT v_BUD_high IS INITIAL.
                     r_budat-HIGH = v_bud_HIGH.
                     r_budat-option = 'EQ'.
                     r_budat-sign = 'I'.
                     append r_budat.
              ELSEIF  R_BUDAT IS INITIAL
                   AND  v_BUD_low IS INITIAL
                   AND  v_BUD_high IS INITIAL.
                   IF SY-SUBRC = 0.
                       MESSAGE I002(0) WITH 'ENTER POSTING DATE'.
                      CALL SCREEN '9000'.
                    r_budat-low = ''.
                    r_budat-option = ''.
                    r_budat-sign = ''.
                    ENDIF.
            ENDIF.
    ENDFORM.
    *&      Form  update
          text
    -->  p1        text
    <--  p2        text
    form update .
    commit work.
    endform.                    " update
    *&      Form  move_data
          text
    -->  p1        text
    <--  p2        text
    form move_data .
       clear itab.
      refresh itab.
           move-corresponding  zcust_call_rec to itab.
           MOVE ZCUST_CALL_REC-MANDT   TO ITAB-MANDT.
           MOVE ZCUST_CALL_REC-KUNNR   TO ITAB-KUNNR.
           MOVE ZCUST_CALL_REC-BUDAT   TO ITAB-BUDAT.
           MOVE ZCUST_CALL_REC-CODE    TO ITAB-CODE.
           MOVE ZCUST_CALL_REC-REMARKS TO ITAB-REMARKS.
         APPEND ITAB.
         delete itab where kunnr is initial.
    endform.                    " move_data
    thanks in adv
    vidya

  • How to use module pool program in my custom report?

    Hi,
    I am developing a custom report in abap. I want to fetch data from a standard module pool program.I want output of this standard module pool program to be used in my standad report.Submit cannot be used with module pool programs. How can i do this?Can u please suggest?

    HI friend,
    For this you can directly use the table fields i.e. each and every module pool screen fields will be having the table name along with its fields (which you can see by double clicking the field and selecting technical settings button) and since it is a standard module pool program that will get populated directly. So you can get the screen field values directly from the table. I think this will help. Please try and let us know wheather it is solved.
    Thanks and regards,
    Sri Hari Anand Kumar
    Edited by: srihari.kumar on Apr 6, 2011 3:31 PM

  • Entering values in MARA table using module pool programming

    Hi All,
    I need a help from you all. I want to enter the values in the MARA table using module pool programming.
    Can you please give me the detailed approach and if possible then code also as i am new to ABAP.
    Thanks in Advance

    Create the screen fields with ref to field in MARA table, once data is entered on screen by user then fill appropriate structure of FM BAPI_MATERIAL_SAVEDATA. If call to Fm BAPI_MATERIAL_SAVEDATA is successful then call FM BAPI_TRANSACTION_COMMIT to make changes permanent in database .

  • Checking Records in multiple screens using module pool programming

    Hi,
        I created student registration form using module pool programming.In first SCREEN i designed like the Below.
              Name:     <INPUT/OUTPUT Field>
             Emailid:    <INPUT/OUTPUT Field>
             Password:<INPUT/OUTPUT Field>
              CREATE<Push Button>    SIGNIN<Push Button>       cancel<Push Button>
    in  screen 1000 I created like the above screen and i wrote the code for it.It's successfully inserted records in ZSTUDENT database.
    BUT
        when i call the second screen 2000.I design the screen like below.And database table is ZSTU_LOGIN.
          username : <INPUT/OUTPUT Field>
         password  : <INPUT/OUTPUT Field>
             LOGIN<push Button>   EXIT<Push Button>
    AND i created Third screen 3000.Like full of detail of student details like First Name,Last Name,DOB,Education Details,Contact Details etc...
    BUT I'm facing the pbm is
                  whatever the record is stored in table ZSTUDENT-Name & password when i call the screen 2000 that USERNAME & PASSWORD are same
    Then go to THIRD screen 3000.BUT i wrote the code for second screen 2000 by using SELECT statement.without my code check it will go to third
    screen 3000 By the Statement of Call screen 3000.
    PLZ any one help me HOW to CHECK the Exact Record From second Screen 2000 to First Screen 1000.
    HOW to Check the code AND can u provide me any code available.
    thanks,
    Anusha

    Hi vikram,
        I wrote the code for screen 2000 like below.
    MODULE STATUS_2000 OUTPUT.
    *  SET PF-STATUS 'xxxxxxxx'.
    *  SET TITLEBAR 'xxx'.
       TABLES : ZSTUDENT_ENTER.
      TYPES: BEGIN OF ST_TAB1,
          USERNAME TYPE ZSTUDENT_ENTER-USERNAME,
         PASSWORD1 TYPE ZSTUDENT_ENTER-PASSWORD1,
         END OF ST_TAB1.
       DATA : W_TAB1 TYPE ZSTUDENT_ENTER.
       DATA : IT_TAB1 TYPE STANDARD TABLE OF ZSTUDENT_ENTER.
       DATA : USERNAME TYPE CHAR50,
             PASSWORD1 TYPE CHAR25.
    ENDMODULE.                 " STATUS_2000  OUTPUT
    *&      Module  USER_COMMAND_2000  INPUT
    *       text
    MODULE USER_COMMAND_2000 INPUT.
    CLEAR W_TAB1.
       MOVE-CORRESPONDING W_TAB TO W_TAB1.
    IF SY-SUBRC EQ 0.
       SELECT SINGLE MAILID PASSWORD
         INTO CORRESPONDING FIELDS OF W_TAB
           FROM ZSTUDENT_INFO
           WHERE USERNAME = W_TAB-MAILID AND
                PASSWORD1 = W_TAB-PASSWORD.
           CALL SCREEN 2000.
           ENDSELECT.
                 ELSEIF SY-SUBRC NE 0.
               MESSAGE 'INVALID USERNAME/PASSWORD'.
               ELSEIF SY-UCOMM = 'LOGIN'.
                 CALL SCREEN 3000.
                 ENDIF.
    ENDMODULE.                 " USER_COMMAND_2000  INPUT
    But i could not found whether code is write or not.
    syntax error is USERNAME is Unknown.
    could solve me my pbm anybody.....
    Thanks,
    Anusha

  • How to create subscreens in tabstrip control using  module pool

    hai experts,
    can u plz give me step by step procedure to create subscreens in tabstrip control using  module pool,

    hi,
    You can check this program
    <b>  DEMO_DYNPRO_TABSTRIP_LOCAL </b>
    This will help you in understanding the concept and how to create subscreens.
    Regards
    Nishant

  • Calculator for addition using module pool

    Hai all,
       I going to create a calculator for addition using module pool .
       i have set a screen 9001 and i placed a box and inside that i 
      placed 9 push buttons with the naming of 1,2,...9 as same as the normal calulator
      then i have a "PLUS" push button which is used to add the 2 numbers and i have a "SUM" push button in 9001.
      when i click the SUM push button it will call screen 9002 which have the input box for the result purpose.
    can i do this or not??
    i know it is little complicated but i need ur help..and also tell me can push button hold value or not??
                                  thanks and regards,
                                      pradeep.
    Moderator Message: try it and find out for yourself.
    Edited by: kishan P on Jan 19, 2011 4:18 PM

    Hai maha,
      Using i/o is very simpler one that i know but i need to create by using 9 push buttons.
                                                                             thanks,
                                                                             pradeep

  • Table maintenance by using module pool program

    Hi
    Please give me step by step procedure to generate table maintenance by using module pool program

    While creating table maintenance, you can go thro' the module pool program used for that.In that,in PBO part,just try making particular field active = 1 inside loop at screen.
    Girish Kumar Lo...  
    Posts: 1,518
    Questions: 2
    Registered: 4/19/07
    Forum points: 1,982 
       Re: Regarding Table maintanence generator  
    Posted: Jun 26, 2007 9:02 AM    in response to: Younus Khan       Reply      E-mail this post 
    here is the code for that
    REPORT ZTAB_MAINT
           NO STANDARD PAGE HEADING
           MESSAGE-ID ZZ.
                      T Y P E  D E C L A R A T I O N S
    *--Types declaration for selection to be passed as parameter into
    *--VIEW_MAINTENANCE_CALL FM
    TYPES: BEGIN OF TP_RANGETAB.
            INCLUDE STRUCTURE VIMSELLIST.
    TYPES: END OF TP_RANGETAB.
                   D A T A  D E C L A R A T I O N S
    DATA: V_MATNR TYPE MATNR,              " Material Number
          V_WERKS TYPE WERKS_D,              " Plant
          V_KONOB TYPE KONOB,              " Product allocation object
          V_ZCPLT(40) TYPE C.              " Message
           I N T E R N A L  T A B L E  D E C L A R A T I O N S
    Internal table to subroutine code
    *Internal table used as selection for VIEW_MAINTENANCE_CALL FM
    DATA: IT_RANGETAB TYPE STANDARD TABLE OF TP_RANGETAB WITH HEADER LINE.
    *--Internal table used for getting the tablefields
    DATA: BEGIN OF IT_HEADER OCCURS 1.
            INCLUDE STRUCTURE VIMDESC.
    DATA: END   OF IT_HEADER.
    *--Name Tabel
    DATA: BEGIN OF IT_NAMTAB OCCURS 50.
            INCLUDE STRUCTURE VIMNAMTAB.
    DATA: END   OF IT_NAMTAB.
    *--Used for handling 'BT' option
    DATA: BEGIN OF IT_MATNR OCCURS 0,
            MATNR TYPE MATNR,
          END OF IT_MATNR.
    *--Used for handling 'BT' option
    DATA: BEGIN OF IT_WERKS OCCURS 0,
            WERKS TYPE WERKS,
          END OF IT_WERKS.
    *--Used for handling 'BT' option
    DATA: BEGIN OF IT_KONOB OCCURS 0,
            KONOB TYPE KONOB,
          END OF IT_KONOB.
    *--Used for handling 'BT' option
    DATA: BEGIN OF IT_ZCPLT OCCURS 0,
            ZCPLT(40) TYPE C,
          END OF IT_ZCPLT.
                       I N P U T  S C R E E N
    SELECTION-SCREEN BEGIN OF BLOCK SELSCR WITH FRAME TITLE TEXT-001.
    RANGES: R_MATNR FOR V_MATNR.
    RANGES: R_WERKS FOR V_WERKS.
    RANGES: R_KONOB FOR V_KONOB.
    RANGES: R_ZCPLT FOR V_ZCPLT.
    Select Options
    SELECT-OPTIONS: S_MATNR FOR V_MATNR NO-EXTENSION,     " Material
                    S_WERKS FOR V_WERKS NO-EXTENSION,     " Plant
                    S_KONOB FOR V_KONOB NO-EXTENSION,
                                            " Product allocation object
                    S_ZCPLT FOR V_ZCPLT NO-EXTENSION.     " Plant
    SELECTION-SCREEN END OF BLOCK SELSCR.
                 A T  S E L E C T I O N  S C R E E N
    AT SELECTION-SCREEN.
    Validate user inputs
      PERFORM FRM_VALIDATIONS.
                S T A R T  O F  S E L E C T I O N
    START-OF-SELECTION.
    Fetch Data from Data Base
      PERFORM FRM_GET_DATA.
                         S U B  R O U T I N E S
    *&      Form  frm_get_data
          Call the function module VIEW_MAINTENNACE_CALL to get data
          based on selection criteria
    FORM FRM_GET_DATA .
      CALL FUNCTION 'VIEW_GET_DDIC_INFO'
        EXPORTING
          VIEWNAME = 'ZTAB'
        TABLES
          X_HEADER = IT_HEADER
          X_NAMTAB = IT_NAMTAB
          SELLIST  = IT_RANGETAB
        EXCEPTIONS
          NO_TVDIR_ENTRY = 1
          TABLE_NOT_FOUND = 2.
      IF SY-SUBRC <> 0.
        MESSAGE E002 WITH 'Error in ZTAB table'(005).
      ENDIF.
      CLEAR: IT_RANGETAB,
             IT_RANGETAB[].
      LOOP AT IT_NAMTAB.
        CASE IT_NAMTAB-VIEWFIELD.
          WHEN 'MATNR'.
            CLEAR IT_RANGETAB.
            IT_RANGETAB-VIEWFIELD = 'MATNR'.
            IT_RANGETAB-TABIX     = SY-TABIX.
            IT_RANGETAB-DDIC      = IT_NAMTAB-READONLY.
            LOOP AT S_MATNR.
              CASE S_MATNR-OPTION.
                WHEN 'EQ'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR  = 'EQ'.
                  IT_RANGETAB-VALUE     = S_MATNR-LOW.
                  APPEND IT_RANGETAB.
                WHEN 'BT'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = 'GE'.
                  IT_RANGETAB-VALUE     = S_MATNR-LOW.
                  APPEND IT_RANGETAB.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = 'LE'.
                  IT_RANGETAB-VALUE     = S_MATNR-HIGH.
                  APPEND IT_RANGETAB.
                WHEN 'NB'.
                  CLEAR: R_MATNR,
                         R_MATNR[].
                  R_MATNR-SIGN = 'I'.
                  R_MATNR-OPTION = 'BT'.
                  R_MATNR-LOW = S_MATNR-LOW.
                  R_MATNR-HIGH = S_MATNR-HIGH.
                  APPEND R_MATNR.
                  SELECT MATNR
                         INTO TABLE IT_MATNR
                         FROM ZTAB
                         WHERE MATNR IN R_MATNR.
                  DELETE ADJACENT DUPLICATES FROM IT_MATNR COMPARING MATNR
                  LOOP AT IT_MATNR.
                    IT_RANGETAB-AND_OR    = 'AND'.
                    IT_RANGETAB-OPERATOR = 'NE'.
                    IT_RANGETAB-VALUE    = IT_MATNR-MATNR.
                    APPEND IT_RANGETAB.
                  ENDLOOP.
                WHEN 'NE'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR  = 'NE'.
                  IT_RANGETAB-VALUE     = S_MATNR-LOW.
                  APPEND IT_RANGETAB.
                WHEN OTHERS.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = S_MATNR-OPTION.
                  IT_RANGETAB-VALUE    = S_MATNR-LOW.
                  APPEND IT_RANGETAB.
              ENDCASE.
            ENDLOOP.
          WHEN 'WERKS'.
            CLEAR IT_RANGETAB.
            IT_RANGETAB-VIEWFIELD = 'WERKS'.
            IT_RANGETAB-TABIX     = SY-TABIX.
            IT_RANGETAB-DDIC      = IT_NAMTAB-READONLY.
            LOOP AT S_WERKS.
              CASE S_WERKS-OPTION.
                WHEN 'EQ'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR  = 'EQ'.
                  IT_RANGETAB-VALUE     = S_WERKS-LOW.
                  APPEND IT_RANGETAB.
                WHEN 'BT'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = 'GE'.
                  IT_RANGETAB-VALUE     = S_WERKS-LOW.
                  APPEND IT_RANGETAB.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = 'LE'.
                  IT_RANGETAB-VALUE     = S_WERKS-HIGH.
                  APPEND IT_RANGETAB.
                WHEN 'NB'.
                  CLEAR: R_WERKS,
                         R_WERKS[].
                  R_WERKS-SIGN = 'I'.
                  R_WERKS-OPTION = 'BT'.
                  R_WERKS-LOW = S_WERKS-LOW.
                  R_WERKS-HIGH = S_WERKS-HIGH.
                  APPEND R_WERKS.
                  SELECT WERKS
                         INTO TABLE IT_WERKS
                         FROM MARC
                         WHERE WERKS IN R_WERKS.
                  DELETE ADJACENT DUPLICATES FROM IT_WERKS COMPARING WERKS
                  LOOP AT IT_WERKS.
                    IT_RANGETAB-AND_OR    = 'AND'.
                    IT_RANGETAB-OPERATOR = 'NE'.
                    IT_RANGETAB-VALUE    = IT_WERKS-WERKS.
                    APPEND IT_RANGETAB.
                  ENDLOOP.
                WHEN 'NE'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR  = 'NE'.
                  IT_RANGETAB-VALUE     = S_WERKS-LOW.
                  APPEND IT_RANGETAB.
                WHEN OTHERS.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = S_WERKS-OPTION.
                  IT_RANGETAB-VALUE    = S_WERKS-LOW.
                  APPEND IT_RANGETAB.
              ENDCASE.
            ENDLOOP.
          WHEN 'KONOB'.
            CLEAR IT_RANGETAB.
            IT_RANGETAB-VIEWFIELD = 'KONOB'.
            IT_RANGETAB-TABIX     = SY-TABIX.
            IT_RANGETAB-DDIC      = IT_NAMTAB-READONLY.
            LOOP AT S_KONOB.
              CASE S_KONOB-OPTION.
                WHEN 'EQ'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR  = 'EQ'.
                  IT_RANGETAB-VALUE     = S_KONOB-LOW.
                  APPEND IT_RANGETAB.
                WHEN 'BT'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = 'GE'.
                  IT_RANGETAB-VALUE     = S_KONOB-LOW.
                  APPEND IT_RANGETAB.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = 'LE'.
                  IT_RANGETAB-VALUE     = S_KONOB-HIGH.
                  APPEND IT_RANGETAB.
                WHEN 'NB'.
                  CLEAR: R_KONOB,
                         R_KONOB[].
                  R_KONOB-SIGN = 'I'.
                  R_KONOB-OPTION = 'BT'.
                  R_KONOB-LOW = S_KONOB-LOW.
                  R_KONOB-HIGH = S_KONOB-HIGH.
                  APPEND R_KONOB.
                  SELECT KONOB
                         INTO TABLE IT_KONOB
                         FROM T190
                         WHERE KONOB IN R_KONOB.
                  DELETE ADJACENT DUPLICATES FROM IT_KONOB COMPARING KONOB
                  LOOP AT IT_KONOB.
                    IT_RANGETAB-AND_OR    = 'AND'.
                    IT_RANGETAB-OPERATOR = 'NE'.
                    IT_RANGETAB-VALUE    = IT_KONOB-KONOB.
                    APPEND IT_RANGETAB.
                  ENDLOOP.
                WHEN 'NE'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR  = 'NE'.
                  IT_RANGETAB-VALUE     = S_KONOB-LOW.
                  APPEND IT_RANGETAB.
                WHEN OTHERS.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = S_KONOB-OPTION.
                  IT_RANGETAB-VALUE    = S_KONOB-LOW.
                  APPEND IT_RANGETAB.
              ENDCASE.
            ENDLOOP.
          WHEN 'ZCPLT'.
            CLEAR IT_RANGETAB.
            IT_RANGETAB-VIEWFIELD = 'ZCPLT'.
            IT_RANGETAB-TABIX     = SY-TABIX.
            IT_RANGETAB-DDIC      = IT_NAMTAB-READONLY.
            LOOP AT S_ZCPLT.
              CASE S_ZCPLT-OPTION.
                WHEN 'EQ'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR  = 'EQ'.
                  IT_RANGETAB-VALUE     = S_ZCPLT-LOW.
                  APPEND IT_RANGETAB.
                WHEN 'BT'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = 'GE'.
                  IT_RANGETAB-VALUE     = S_ZCPLT-LOW.
                  APPEND IT_RANGETAB.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = 'LE'.
                  IT_RANGETAB-VALUE     = S_ZCPLT-HIGH.
                  APPEND IT_RANGETAB.
                WHEN 'NB'.
                  CLEAR: R_ZCPLT,
                         R_ZCPLT[].
                  R_ZCPLT-SIGN = 'I'.
                  R_ZCPLT-OPTION = 'BT'.
                  R_ZCPLT-LOW = S_ZCPLT-LOW.
                  R_ZCPLT-HIGH = S_ZCPLT-HIGH.
                  APPEND R_ZCPLT.
                  SELECT ZCPLT
                         INTO TABLE IT_ZCPLT
                         FROM ZTAB
                         WHERE ZCPLT IN R_ZCPLT.
                  DELETE ADJACENT DUPLICATES FROM IT_ZCPLT COMPARING ZCPLT
                  LOOP AT IT_ZCPLT.
                    IT_RANGETAB-AND_OR    = 'AND'.
                    IT_RANGETAB-OPERATOR = 'NE'.
                    IT_RANGETAB-VALUE    = IT_ZCPLT-ZCPLT.
                    APPEND IT_RANGETAB.
                  ENDLOOP.
                WHEN 'NE'.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR  = 'NE'.
                  IT_RANGETAB-VALUE     = S_ZCPLT-LOW.
                  APPEND IT_RANGETAB.
                WHEN OTHERS.
                  IT_RANGETAB-AND_OR    = 'AND'.
                  IT_RANGETAB-OPERATOR = S_ZCPLT-OPTION.
                  IT_RANGETAB-VALUE    = S_ZCPLT-LOW.
                  APPEND IT_RANGETAB.
              ENDCASE.
            ENDLOOP.
        ENDCASE.
      ENDLOOP.
      IF S_ZCPLT[] IS INITIAL.
        CALL FUNCTION 'VIEW_MAINTENANCE_CALL'
          EXPORTING
            ACTION      = 'U'
            VIEW_NAME   = 'ZTAB'
          TABLES
            DBA_SELLIST = IT_RANGETAB
          EXCEPTIONS
            CLIENT_REFERENCE                     = 1
            FOREIGN_LOCK                         = 2
            INVALID_ACTION                       = 3
            NO_CLIENTINDEPENDENT_AUTH            = 4
            NO_DATABASE_FUNCTION                 = 5
            NO_EDITOR_FUNCTION                   = 6
            NO_SHOW_AUTH                         = 7
            NO_TVDIR_ENTRY                       = 8
            NO_UPD_AUTH                          = 9
            ONLY_SHOW_ALLOWED                    = 10
            SYSTEM_FAILURE                       = 11
            UNKNOWN_FIELD_IN_DBA_SELLIST         = 12
            VIEW_NOT_FOUND                       = 13
            MAINTENANCE_PROHIBITED               = 14
            OTHERS                               = 15.
        IF SY-SUBRC <> 0.
          MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
      ELSE.
        CALL FUNCTION 'VIEW_MAINTENANCE_CALL'
          EXPORTING
            ACTION      = 'U'
            VIEW_NAME   = 'ZTAB_ZTEST'
          TABLES
            DBA_SELLIST = IT_RANGETAB
          EXCEPTIONS
            CLIENT_REFERENCE                     = 1
            FOREIGN_LOCK                         = 2
            INVALID_ACTION                       = 3
            NO_CLIENTINDEPENDENT_AUTH            = 4
            NO_DATABASE_FUNCTION                 = 5
            NO_EDITOR_FUNCTION                   = 6
            NO_SHOW_AUTH                         = 7
            NO_TVDIR_ENTRY                       = 8
            NO_UPD_AUTH                          = 9
            ONLY_SHOW_ALLOWED                    = 10
            SYSTEM_FAILURE                       = 11
            UNKNOWN_FIELD_IN_DBA_SELLIST         = 12
            VIEW_NOT_FOUND                       = 13
            MAINTENANCE_PROHIBITED               = 14
            OTHERS                               = 15.
        IF SY-SUBRC <> 0.
          MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
      ENDIF.
    ENDFORM.                    " frm_get_data
    *&      Form  frm_validations
          Validating field values
    FORM FRM_VALIDATIONS .
    Material number should not be validated (10/17/2005)
      CLEAR V_MATNR.
      SELECT SINGLE MATNR
                    INTO V_MATNR
                    FROM MARA
                    WHERE MATNR IN S_MATNR.
      IF SY-SUBRC <> 0.
        MESSAGE E002 WITH 'Material not found'.
      ENDIF.
      CLEAR V_WERKS.
      SELECT SINGLE WERKS
                    INTO V_WERKS
                    FROM ZTAB
                    WHERE WERKS IN S_WERKS.
      IF SY-SUBRC <> 0.
        MESSAGE E002 WITH 'Plant (WERKS) not found'(002).
      ENDIF.
      CLEAR V_KONOB.
      SELECT SINGLE KONOB
                    INTO V_KONOB
                    FROM ZTAB
                    WHERE KONOB IN S_KONOB.
      IF SY-SUBRC <> 0.
        MESSAGE E002 WITH ' Product allocation object not found'(003).
      ENDIF.
      CLEAR V_WERKS.
      SELECT SINGLE WERKS
                    INTO V_WERKS
                    FROM ZTAB
                    WHERE WERKS IN S_ZCPLT.
      IF SY-SUBRC <> 0.
        MESSAGE E002 WITH 'Plant (ZCPLT) not found'(004).
      ENDIF.
    ENDFORM.                    " frm_validations
    reward points if it is usefull ...
    Regarding Table maintanence generator

  • Another User Modified the table

    Hi,
    I have a user defined form, which is bound to Master-Data UDO.
    I have matrices in the form which is bound to its child objects.
    Following problem happens once in a while:
    When I press update button, I get the error message 'Another User Modified the table'.
    This is not consistent, but happens once in a while.
    My SBO version is 2007.
    In what situations you will get the error - "Another User Modified the table" ?
    Please help me with this.
    I'll appreciate your help.
    Thanks.
    -Geetha

    Hi Mahendra,
    Thanks for your reply.
    In my case, I take back-up of the database from client site and bringing into our in-house.
    If clients complained about record# 25, then the same record# has the 'Another user' issue in in-house also. (By record# I mean the Master UDO DocEntry#).
    So, I think the locking is stored in the database, rather than in a PC specific place.
    Please tell me any ideas you get in this angle.
    Regards,
    Geetha

  • How to modify the table control?

    Hi all,
    How to modify the table control after setting the lines  = 1. ie tbl_ctr-lines = 1.(tbl_ctr is the table control).
    Can anyone explain this with an example?
    Thanks.

    hi
    http://help.sap.com/saphelp_nw04/helpdata/EN/9f/dbac5e35c111d1829f0000e829fbfe/content.htm
    Regards
    pavan

  • Using Acrobat Pro how do I lock the fillable fields once the data is collected?

    Using Acrobat Pro how do I lock the fillable fields once the data is collected?

    Hi,
    Have a look at Paul's LockAllFields solution. You can download it in Paul's post here: http://forums.adobe.com/message/3168183#3168183.
    I have a version of it here as well: http://assure.ly/yDtfsM.
    Hope that helps,
    Niall

  • Modifying the table in streams

    Hi,
    We have two Oracle 10.2.0.4 databases having bi-directional streams.
    Now I want to modify one of the table to table partitioning.
    Can I stop the apply process on both and modify the table and start the apply process?
    Will this approach work?
    Thanks,
    DR

    It should be as with all things database ... do it in a test environment first ... and my personal advice ... make starting Flashback Database logging with a guaranteed restore point part of your process.

Maybe you are looking for

  • How to add in the new characteristic for a infocube in RSECADMIN

    Hi, The authorization relevant characteristics for cube Material stock/Movement are only (I click the InfoCube authorization in the RSECADMIN - it only show the below 5): 1. 0COMP_CODE 2. 0PLANT 3. 0STOR_LOC 4. ZCUSTOMER 5. 0TCAKYFNM But I want to co

  • Problem in accounting entry

    Hi what will be the  correct accounting entry at the time of 412    E movement . I am getting Consumption account  a/c   to Inventery account. But i want  Inventory a/c   DR    To inventory account as i am transfering this stock to sale order. advise

  • Dump LOGDB_SSCR_NOT_FOUND

    Hi All. I have installed an ECC 6.0 on aix/oracle 64bit platform. During the post activities, i noticed that the standard job SAP_COLLECTOR_FOR_PERFMONITOR habend with the following dump: <b>Runtime Errors         LOGDB_SSCR_NOT_FOUND Short text     

  • HT201359 If I brought the clean version of s album can I exchange it for the explicit versions

    I did not notice I brought the edited version if a album I was wondering if I could get an exchange

  • Dynamic vs. Declarative HtmlDataTable pagination/scolling issue

    I've been struggling with trying to create a paginating HtmlDataTable dynamically to replace my current jsf declarative datatable. I've tried to crib from the BalusC examples and multiple google searches. I've removed a lot of the 'read-only' data co