ABAP - Set Parameter

Hi Guru's,
In My program i need to set parameter for transaction 'FBL3N', fields are Radio button 'OPEN ITEMS ' , Account Group , Posting date ( Range) for these fields i need  Parameter Id.  I searched in FBL3N F1 help , Tables of SKA1 , Tpara table and screen painter but i did't get parameter Id from those places. Where to search these Parameter ID?
Meenakshi

Dear MeenachiR      
Please check these posts:
[ID PARAMETER for a variant of FBL3N;
[Parameter ID for the transaction fb03-document display;
[What is the parameter ID for transaction FB03;
Kind Regards
/Ricardo Quintas

Similar Messages

  • Set parameter abap/fieldexit = YES

    Hi guys! I'm practicing with FIELDEXIT, and when I try to test my field exit, it says: Set parameter abap/fieldexit = YES, but I don't know how to do that. Could you guys please help me with that?
    Thanks!
    Gabriela
    Edited by: gpsoria on Nov 13, 2009 9:49 AM

    The default value for this parameter is No (after installation of an SAP system).
    Via RZ11 you can check the actual parameter value.
    When it needs to be changed to Yes it should be done by your basis administrators via transaction RZ10.
    This is not a dynamic parameter, this means that the complete SAP system you be restarted in order to activate the new parameter value.
    Success.
    Wim

  • SET PARAMETER AND GET PARAMETER

    What is the difference between Set parameter and Get parameter?

    Hi,
    Set parameter is used to put some value into ABAP memory area, get paramter is used to retrive values form ABAP memory.
    refer the below sample code.
    here i am taking one material number and i am passing that mateial number by using 'set parameter id', the material number will be stored in ABAP-memory area 'MAT', and then i am calling the Tcode 'MM03', after executing the Tcode  (from program) automatically 'MM03' will reads that material number from that ABAP-memory area and it will displays the 'MM03' tcode along with material number.
    you can find the parameter-id's from data element of that field.
    parameters: p_matnr like mara-matnr.
    set parameter id 'MAT' field p_matnr.
    call transaction 'MM03'.
    Reward if useful.
    Thanks,
    Sreeram.

  • Issue with using GET n SET Parameter in module pool programming.

    Hello Friends,
                         I am using SET n GET Parameter to access input values from a screen. But when I use it, the values are not transfered back n forth. Getting initial values.
    Your expertise would be appreciated.
    Cheers,
    Senthil

    Hi,
    check this
    Filling an Initial Screen using SPA/GPA Parameters
    To fill the input fields of a called transaction with data from the calling program, you can use the SPA/GPA technique. SPA/GPA parameters are values that the system stores in the global, user-specific SAP memory. SAP memory allows you to pass values between programs. A user can access the values stored in the SAP memory during one terminal session for all parallel sessions. Each SPA/GPA parameter is identified by a 20-character code. You can maintain them in the Repository Browser in the ABAP Workbench. The values in SPA/GPA parameters are user-specific.
    ABAP programs can access the parameters using the SET PARAMETER and GET PARAMETER statements.
    To fill one, use:
    SET PARAMETER ID <pid> FIELD <f>.
    This statement saves the contents of field <f> under the ID <pid> in the SAP memory. The code <pid> can be up to 20 characters long. If there was already a value stored under <pid>, this statement overwrites it. If the ID <pid> does not exist, double-click <pid> in the ABAP Editor to create a new parameter object.
    To read an SPA/GPA parameter, use:
    GET PARAMETER ID <pid> FIELD <f>.
    This statement fills the value stored under the ID <pid> into the variable <f>. If the system does not find a value for <pid> in the SAP memory, it sets SY-SUBRC to 4, otherwise to 0.
    To fill the initial screen of a program using SPA/GPA parameters, you normally only need the SET PARAMETER statement.
    The relevant fields must each be linked to an SPA/GPA parameter.
    On a selection screen, you link fields to parameters using the MEMORY ID addition in the PARAMETERS or SELECT-OPTIONS statement. If you specify an SPA/GPA parameter ID when you declare a parameter or selection option, the corresponding input field is linked to that input field.
    On a screen, you link fields to parameters in the Screen Painter. When you define the field attributes of an input field, you can enter the name of an SPA/GPA parameter in the Parameter ID field in the screen attributes. The SET parameter and GET parameter checkboxes allow you to specify whether the field should be filled from the corresponding SPA/GPA parameter in the PBO event, and whether the SPA/GPA parameter should be filled with the value from the screen in the PAI event.
    When an input field is linked to an SPA/GPA parameter, it is initialized with the current value of the parameter each time the screen is displayed. This is the reason why fields on screens in the R/3 System often already contain values when you call them more than once.
    When you call programs, you can use SPA/GPA parameters with no additional programming overhead if, for example, you need to fill obligatory fields on the initial screen of the called program. The system simply transfers the values from the parameters into the input fields of the called program.
    However, you can control the contents of the parameters from your program by using the SET PARAMETER statement before the actual program call. This technique is particularly useful if you want to skip the initial screen of the called program and that screen contains obligatory fields.
    If you want to set SPA/GPA parameters before a program call, you need to know which parameters are linked to which fields on the initial screen. A simple way of doing this is to start the program that you want to call, place the cursor on the input fields, and choose F1 followed by Technical info. The Parameter ID field contains the name of the corresponding SPA/GPA parameter. Alternatively, you can look at the screen definition in the Screen Painter.
    The technical information for the first input field of the booking transaction TCG2 looks like this:
    The SPA/GPA parameter for the input field Company has the ID CAR. Use this method to find the IDs CON, DAY, and BOK for the other input fields.
    The following executable program is connected to the logical database F1S and calls an update transaction:
    REPORT BOOKINGS NO STANDARD PAGE HEADING.
    TABLES SBOOK.
    START-OF-SELECTION.
      WRITE: 'Select a booking',
      SKIP.
    GET SBOOK.
      WRITE: SBOOK-CARRID, SBOOK-CONNID,
             SBOOK-FLDATE, SBOOK-BOOKID.
      HIDE:  SBOOK-CARRID, SBOOK-CONNID,
             SBOOK-FLDATE, SBOOK-BOOKID.
    AT LINE-SELECTION.
      SET PARAMETER ID: 'CAR' FIELD SBOOK-CARRID,
                        'CON' FIELD SBOOK-CONNID,
                        'DAY' FIELD SBOOK-FLDATE,
                        'BOK' FIELD SBOOK-BOOKID.
      CALL TRANSACTION 'BOOK'.
    The basic list of the program shows fields from the database table SBOOK according to the user entries on the selection screen. These data are also stored in the HIDE areas of each line.
    If the user selects a line of booking data by double-clicking, the system triggers the AT LINE-SELECTION event and takes the data stored in the HIDE area to fill them into the SPA/GPA parameters of the initial screen of the transaction. Then it calls the transaction. Since you do not suppress the initial screen using AND SKIP FIRST SCREEN, the initial screen may appear as follows:
    If you would use the AND SKIP FIRST SCREEN option with the CALL TRANSACTION statement, the second screen would appear immediately, since all obligatory fields of the first screen are filled.
    Regards
    Edited by: K.P.N on Jan 9, 2008 5:21 AM

  • Set Parameter problem

    my code is like this
    START-OF-SELECTION.
    SELECT * FROM SBOOK UP TO 10 ROWS.
    WRITE: / sbook-carrid, sbook-connid, sbook-fldate, sbook-bookid.
      HIDE:  SBOOK-CARRID, SBOOK-CONNID,
             SBOOK-FLDATE, SBOOK-BOOKID.
    ENDSELECT.
    AT LINE-SELECTION.
    set parameter id 'CAR' field sbook-CARRID.
    set parameter id 'CON' field sbook-CONNID.
    set parameter id 'DAY' field sbook-FLDATE.
    set parameter id 'BOK' field sbook-BOOKID.
    call transaction 'ZSBOOK'
    when i click on any line, the values are not coming on screen( ie in zsbook  tcode ). what's the problem ?
    Thanks, points for sure

    HIDE
    The HIDE statement is one of the fundamental statements for interactive reporting. You use the HIDE technique when creating a basic list. It defines the information that can be passed to subsequent detail lists.
    You use the HIDE technique while creating a list level to store line-specific information for later use. To do so, use the HIDE statement as follows:
    HIDE <f>.
    This statement places the contents of the variable <f> for the current output line (system field SY-LINNO) into the HIDE area. The variable <f> must not necessarily appear on the current line.
    To make your program more readable, always place the HIDE statement directly after the output statement for the variable <f> or after the last output statement for the current line.
    As soon as the user selects a line for which you stored HIDE fields, the system fills the variables in the program with the values stored. A line can be selected
    by an interactive event.
    For each interactive event, the HIDE fields of the line on which the cursor is positioned during the event are filled with the stored values.
    by the READ LINE statement.
    You can think of the HIDE area as a table, in which the system stores the names and values of all HIDE fields for each list and line number. As soon as they are needed, the system reads the values from the table.
    The example below presents some of the essential features of interactive reporting. The basic list contains summarized information. By means of the HIDE technique, each detail list contains more details.
    u can use
    To read a line from a list after an interactive list event, use the READ LINE statement:
    READ LINE <lin> [INDEX <idx>]
    [FIELD VALUE <f1> [INTO <g 1>] ... <f n> [INTO <g n>]]
    [OF CURRENT PAGE|OF PAGE <p>].
    SET PARAMETER ID <pid> FIELD <f>.
    This statement saves the contents of field <f> under the ID <pid> in the SAP memory. The code <pid> can be up to 20 characters long. If there was already a value stored under <pid>, this statement overwrites it. If the ID <pid> does not exist, double-click <pid> in the ABAP Editor to create a new parameter object.
    <b>Before call transaction print content on output.
    Check it out.</b>
    regards
    vinod

  • How to pass value to select-option parameter using SET PARAMETER Command

    Hi,
        Am passing values to selection-screen fields in report RV13A004 ( used in VK11, VK12 and VK13). using below statement but material number is select-option in this report. am able to pass  MATERIAL FROM using SET PARAMETER ID, can i know how to pass values MATERIAL TO range in select-options fields using SET PARAMETER Command ??
    Passing values to parameter id
    set parameter id 'VKS' field kschl.
    set parameter id 'VKO' field vkorg.
    set parameter id 'VTW' field vtweg.
    set parameter id 'KDA' field erdat.
    set parameter id 'MAT' field matnr_from.
    Change condition price.
    call transaction 'VK12' and skip first screen.
    Thanks in advance.
    Regards,
    Balamurugan.

    Hi,
    instead of using set parameters and dden call transaction use this..........
    submit RV13A004  WITH SELECTION-TABLE rspar
    Effect
    If you specify this addition, parameters and selection criteria on the selection screen are supplied from an internal table rspar. You must specify an internal table with the row type RSPARAMS for rspar. The structured data type RSPARAMS is defined in the ABAP Dictionary and has the following components, all of which are data type CHAR:
    SELNAME (length 8),
    KIND (length 1),
    SIGN (length 1),
    OPTION (length 2),
    LOW (length 45),
    HIGH (length 45).
    To supply parameters and selection criteria for the selection screen with specific values, the lines in the internal table rspar must contain the following values:
    SELNAME must contain the name of a parameter or selection criterion for the selection screen in block capitals
    KIND must contain the type of selection screen component (P for parameters, S for selection criteria)
    SIGN, OPTION, LOW, and HIGH must contain the values specified for the selection table columns that have the same names as the selection criteria; in the case of parameters, the value must be specified in LOW and all other components are ignored.
    If the name of a selection criterion is repeated in rspar, this defines a selection table containing several lines and passes it on to the selection criterion. If parameter names occur several times, the last value is passed on to the parameter.
    The contents of the parameters or selection tables for the current program can be entered in the table by the function module RS_REFRESH_FROM_SELECTOPTIONS.
    Notes
    In contrast to selection tables, the data types of the components LOW and HIGH in table rspar are always of type CHAR and are converted to the type of the parameter or selection criterion during transfer, if necessary.
    When entering values, you must ensure that these are entered in the internal format of the ABAP values, and not in the output format of the screen display.
    Cheers
    Will.

  • A small app setting parameter on the user

    Hello
    I have a portal that use an ABAP system as a UME.
    I need to make an webdynpro application that can update a parameter on the user in the ABAP system (parameter CVR set in su01).
    Is this possible done by webdynrpo on the Portal (Java) ? Or should i consider an abap for webdynpro for abap on the system that has the UME (Abap) ?
    Best Regards
    Kristoffer Engh

    Kristoffer,
    that doesn't really matter, as long as the used JCo-Connection (in case of WD for Java) has the proper authorities to change the user settings.
    I think, you can achieve this really easy with BAPI_USER_CHANGE.
    WD/J has the advantage, the application can run on the portal itself.
    kr, achim

  • About User command & SET Parameter

    Hi All,
    What is the User Command? What it means? And how to handle in normal and ALV Report..?
    What is happening when I write the statement like below.
    SET PARAMETER ID 'TAB' FIELD 'ZPCA' ? What is the purpose of set parameter in the program..?
    Akshitha.

    Hi,
    see this prog..
    sy-ucomm is for doing the functions what the user wishes to do at that particular event. You use it in menus and other place . this mainly in using <pfstatus>
    USER COMMAND will perform actions on radiobutton click, or wen puhbutton is cliketced
    in this if the user clicks a push button, see bold letters..in the prog
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 10(15) lb1.
    PARAMETERS : a(10).
    SELECTION-SCREEN COMMENT 40(15) lb2.
    PARAMETERS : b(10).
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN PUSHBUTTON 10(10) lb3 USER-COMMAND pb1.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN PUSHBUTTON /10(10) lb5 USER-COMMAND pb3.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN PUSHBUTTON /10(10) lb4 USER-COMMAND pb2.
    *SELECTION-SCREEN BEGIN OF SCREEN 200 AS WINDOW TITLE T2.
    SELECTION-SCREEN BEGIN OF BLOCK b1.
    PARAMETERS : ch1 AS CHECKBOX, ch2 AS CHECKBOX, ch3 AS CHECKBOX.
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN BEGIN OF BLOCK b2.
    PARAMETERS : rb1 RADIOBUTTON GROUP a,
                 rb2 RADIOBUTTON GROUP a,
                 rb3 RADIOBUTTON GROUP a.
    SELECTION-SCREEN END OF BLOCK b2.
    *SELECTION-SCREEN END OF SCREEN 200.
    INITIALIZATION.
      lb1 = 'ENTER A VALUE'.
      lb2 = 'ENTER B VALUE'.
      lb3 = 'DISPLAY'.
      lb4 = 'EXIT'.
      lb5 = 'CALL NEXT'.
    AT SELECTION-SCREEN.
      CASE sy-ucomm.
        WHEN 'PB1'.
          LEAVE TO LIST-PROCESSING.
          WRITE : a, b.
          IF ch1 = 'X'.
            LEAVE TO LIST-PROCESSING.
            WRITE 'FIRST CHECKBOX IS SELECTED'.
          ENDIF.
          IF ch2 = 'X'.
            WRITE :/ 'SECOND CHECKBOX IS SELECTED'.
          ENDIF.
          IF ch3 = 'X'.
            WRITE :/ 'THIRD CHECKBOX IS SELECTED'.
          ENDIF.
          IF rb1 = 'X'.
            WRITE :/ 'FIRST RADIOBUTTON'.
          ELSEIF rb2 = 'X'.
            WRITE :/ 'SECOND RADIOBUTTON'.
          ELSEIF rb3 = 'X'.
            WRITE :/ 'THIRD RADIOBUTTON'.
          ENDIF.
        WHEN 'PB2'.
          LEAVE PROGRAM.
        WHEN 'PB3'.
          CALL SELECTION-SCREEN 200.
      ENDCASE.
    SET parameter :
    this is used to pass a value from one report a memory n from there we can use in the same report or the other report..
    SAP memory is a memory area to which all main sessions within a SAPgui have access. You can use SAP memory either to pass data from one program to another within a session, or to pass data from one session to another.  Application programs that use SAP memory must do so using SPA/GPA parameters (also known as SET/GET parameters). These parameters can be set either for a particular user or for a particular program using the SET PARAMETER statement. Other ABAP programs can then retrieve the set parameters using the GET PARAMETER statement. The most frequent use of SPA/GPA parameters is to fill input fields on screens
    Hope this helps u,
    Regards,
    Arunsri
    Edited by: Arunsri on Mar 11, 2008 11:52 AM

  • Problem with set parameter id

    hi all,
    i am using the below code to set the parameter id to project , subproject and object for the t-code in lsmw. but when it goes to lsmw
    it does not take these values in lsmw . can anyone please check where i am going wrong? thanks in advance.
    at selection-screen.
    data: project type /SAPDMC/LSSCREEN-PROJECT,
          subproj  type /SAPDMC/LSSCREEN-SUBPROJ,
          object  type /SAPDMC/LSSCREEN-OBJECT.
          if sscrfields-ucomm eq 'CLI1'.
         if p_up = 'X'.
            data: project type c length 20 value 'SIVA',
                  subproj type c length 20 value 'PRICING',
                  object  type c length 20 value 'SD'.
         proj = 'SIVA'.
         subproj = 'PRICING'.
         obj = 'SD'.
                SET PARAMETER ID: PROJECT   FIELD   PROJECT,
                                                SUBPROJ   FIELD   SUBPROJ,
                                                OBJECT    FIELD   OBJECT.
                call transaction 'LSMW' and skip first screen.
          endif.
    saurabh.

    hi,
    looking at the source code of LSMW, not parameter ID is what you need, but memory id:
      IMPORT /SAPDMC/LSMEMORY FROM MEMORY ID '/SAPDMC/LSMW'.
      IF SY-SUBRC = 0.
        PROJECT = /SAPDMC/LSMEMORY-PROJECT.
        SUBPROJ = /SAPDMC/LSMEMORY-SUBPROJ.
        OBJECT = /SAPDMC/LSMEMORY-OBJECT.
      ELSE.
    ENDIF.code}
    use EXPORT TO MEMORY ... statement in your program acc. to the needs above.
    hope this helps
    ec

  • Report  using Set parameter & get parameters.

    Hi,
           My requirement is from select query  the list of PO will be display. Now i want when i click on one of the purchase order .
    i want to diaplay PO using CALL TRANSACTION 'ME23N'  with the help of set and get parameters .  or can i do it with interactive report.
    Regards,

    Hi,
    1) Write a Report to show the Output(Use HIDE statment for PO filed while outputing the list).
    2) In the event AT LINE-SELECTION write logic.
    GET CURSOR FIELD field VALUE val.
    SET PARAMETER ID 'BES' FIELD dobj.
    CALL TRANSACTION ME23N.
    Regards,
    J.

  • Get and Set Parameter ID in BDC Call transaction

    Hi all
    I have written this BDC program to run a transaction eg33  to install meter. After meter get installled System generates  Device location number. I need to use this device location number in calling another transaction il03.  but my data fetching using get and set parameter id is not giving accurate result. Kindly check my code and suggest where should I improve. Or whatelse can I do to fullfill this type of requirement other than GET and SET PARAMETER ID.
    REPORT  ZAC_EG33 NO STANDARD PAGE HEADING
                     LINE-SIZE 100.
    TABLES: EABL,
            BUT000,
            ZISUH0003.
    DATA :
          XYZ LIKE IFLO-TPLNR.
    DATA: IT_STATUS TYPE ZISUH0003.
    DATA: G_INDEX TYPE I,
          G_START_COL TYPE I VALUE '1',      "start column
          G_START_ROW TYPE I VALUE '14',      "start row
          G_END_COL   TYPE I VALUE '18',     "maximum column
          G_END_ROW   TYPE I VALUE '75',  "maximum row
          G_TEXT(20),                         "stores error messages
          G_PAGES        TYPE I,
          G_CURRENT_PAGE TYPE I,
          G_COUNT LIKE SY-DBCNT.
    data: l_file   type file_table,
          file1    type string,
          l_title  type string,
          LENGTH   TYPE I,
          FILES    type filetable,
          SUBRC    type i,
          STR_FILE type STRING,
          D_FILE   type RLGRAP-FILENAME,
          filename TYPE String,
          L_itab_date(10).
    FIELD-SYMBOLS : <FS>.
    DATA: IT_EXCEL LIKE STANDARD TABLE OF ALSMEX_TABLINE WITH HEADER LINE,
          IT_MESS TYPE STANDARD TABLE OF BDCMSGCOLL WITH HEADER LINE.
    TYPES: BEGIN OF TY_OPEN,
            HAUS LIKE REG30-HAUS,
            EADAT(10),
            GERAETNEU LIKE REG30-GERAETNEU,
            MESSDRCK LIKE REG30-MESSDRCK,
            ZWSTANDCE LIKE REG30-ZWSTANDCE,
            END OF TY_OPEN.
    DATA : T_ANLAGE LIKE EANLD-ANLAGE,
           VSTELLE LIKE EVBS-VSTELLE,
           S_ANLAGE LIKE EANLD-ANLAGE,
           temp_c(7).
    DATA: IT_OPEN TYPE STANDARD TABLE OF TY_OPEN WITH HEADER LINE.
    DATA: BDCDATA TYPE STANDARD TABLE OF BDCDATA WITH HEADER LINE.
    SELECTION-SCREEN BEGIN OF BLOCK 1 WITH FRAME TITLE TEXT-001.
    SELECTION-SCREEN SKIP 2.
    PARAMETERS: P_FILE like RLGRAP-FILENAME OBLIGATORY.
    SELECTION-SCREEN SKIP 2.
    SELECTION-SCREEN END OF BLOCK 1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE  .
      PERFORM GET_FILE_NAME.
      MOVE FILENAME TO P_FILE.
    START-OF-SELECTION.
    CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
      EXPORTING
        FILENAME                      = p_file
        I_BEGIN_COL                   = 1  "VF_START_COL
        I_BEGIN_ROW                   = 2  "VF_START_ROW
        I_END_COL                     = 5  "VF_END_COL
        I_END_ROW                     = 10000  "VF_END_ROW
      TABLES
        INTERN                        = IT_EXCEL
      EXCEPTIONS
        INCONSISTENT_PARAMETERS       = 1
        UPLOAD_OLE                    = 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.
    IF IT_EXCEL[] IS INITIAL.
      G_TEXT = 'No Data Uploaded'.
    ELSE.
      SORT IT_EXCEL BY ROW COL.
      LOOP AT IT_EXCEL.
        MOVE : IT_EXCEL-COL TO G_INDEX.
        ASSIGN COMPONENT G_INDEX OF STRUCTURE IT_OPEN TO <FS>.
        MOVE IT_EXCEL-VALUE TO <FS>.
        AT END OF ROW.
          IF NOT IT_OPEN IS INITIAL.
          APPEND IT_OPEN." TO IT_LINE.
          CLEAR IT_OPEN.
          CLEAR IT_EXCEL.
          ENDIF.
        ENDAT.
      ENDLOOP.
    ENDIF.
    REFRESH IT_EXCEL.
    ULINE.
    FORMAT COLOR 3 ON.
    WRITE: /1 sy-vline ,
           2 'Material No.' ,
           25 sy-vline,
            2 'Logs' ,
            100 sy-vline.
    uline.
    FORMAT COLOR OFF.
    PERFORM BDC_OPEN_READING.
    MESSAGE S013(ZPS).
    *&      Form  GET_FILE_NAME
          text
    -->  p1        text
    <--  p2        text
    FORM GET_FILE_NAME .
    REFRESH FILES.
    call method cl_gui_frontend_services=>file_open_dialog
                exporting
                  window_title            = l_title
                changing
                  file_table              = files
                  rc                      = subrc
                exceptions
                  file_open_dialog_failed = 1
                  cntl_error              = 2
                  error_no_gui            = 3
                  others                  = 4.
              check sy-subrc = 0.
              loop at files into l_file.
                str_file = l_file.
                move str_file to filename.
                exit.
              endloop.
    ENDFORM.                    " GET_FILE_NAME
    *&      Form  BDC_OPEN_READING
          text
    -->  p1        text
    <--  p2        text
    FORM BDC_OPEN_READING .
    LOOP AT IT_OPEN.
    REFRESH BDCDATA.
    clear : temp_c.
    move it_open-MESSDRCK to temp_c.
    condense : temp_c.
    PERFORM MAP1.
    CALL TRANSACTION 'EG33' USING BDCDATA MODE 'A' MESSAGES INTO IT_MESS.
    +***changes by added on 28/02/08 +
    get parameter id 'IFL' FIELD XYZ.
    PERFORM MAP2.
    set parameter id 'IFL' FIELD XYZ.
    ++*
    CALL TRANSACTION 'IL03' USING BDCDATA MODE 'A' MESSAGES INTO IT_MESS.
    +****end change added on 28.02.08+DATA: G_INSNO LIKE IT_OPEN-HAUS.
    IF NOT IT_MESS[] IS INITIAL.
      G_INSNO = IT_OPEN-HAUS.
      PERFORM GET_MESSAGES  TABLES IT_MESS USING G_INSNO." IT_LINE.
    ENDIF.
    READ TABLE IT_MESS WITH KEY MSGTYP = 'E'.
    IF SY-SUBRC NE 0.
    READ TABLE IT_MESS WITH KEY MSGTYP = 'S'  MSGNR = '622'.
    IF SY-SUBRC EQ 0.
    SELECT SINGLE VSTELLE FROM EVBS INTO VSTELLE WHERE HAUS = IT_OPEN-HAUS.
    SELECT SINGLE ANLAGE FROM EANL INTO T_ANLAGE WHERE VSTELLE = VSTELLE.
    MOVE T_ANLAGE TO IT_STATUS-ANLAGE.
    MOVE 'X' TO IT_STATUS-RFC.
    *perform get_date_format using IT_OPEN-EADAT.
    MOVE IT_OPEN-EADAT TO IT_STATUS-ADATE.
    SELECT SINGLE ANLAGE FROM ZISUH0003 INTO  S_ANLAGE WHERE ANLAGE =
    T_ANLAGE.
      IF SY-SUBRC EQ 4.
        INSERT ZISUH0003 FROM IT_STATUS.
      ELSE.
        UPDATE ZISUH0003 FROM IT_STATUS.
      ENDIF.
      ENDIF.
      ENDIF.
      REFRESH IT_MESS.
      CLEAR   IT_MESS.
    ENDLOOP.
    ENDFORM.                    " BDC_OPEN_READING
           Start new screen                                              *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR BDCDATA.
      BDCDATA-PROGRAM  = PROGRAM.
      BDCDATA-DYNPRO   = DYNPRO.
      BDCDATA-DYNBEGIN = 'X'.
      APPEND BDCDATA.
    ENDFORM.
           Insert field                                                  *
    FORM BDC_FIELD USING FNAM FVAL.
      IF FVAL <> SPACE.
        CLEAR BDCDATA.
        BDCDATA-FNAM = FNAM.
        BDCDATA-FVAL = FVAL.
        APPEND BDCDATA.
      ENDIF.
    ENDFORM.
    *&      Form  MAP1
          text
    -->  p1        text
    <--  p2        text
    FORM MAP1 .
    perform bdc_dynpro      using 'SAPLE30D' '0100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'REG30-GERAETNEU'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'REG30-HAUS'
                                  IT_OPEN-HAUS.  "'100000000033'.
    perform bdc_field       using 'REG30-EADAT'
                                  IT_OPEN-EADAT.  "'18.02.2006'.
    perform bdc_field       using 'REG30-GERAETNEU'
                                  IT_OPEN-GERAETNEU.  "'66a'.
    perform bdc_dynpro      using 'SAPLE30D' '0220'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'REG30-TEMP_AREA(02)'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=SAVE'.
    perform bdc_field       using 'REG30-MESSDRCK'
                                   temp_c. "IT_OPEN-MESSDRCK'0.0125'.
    perform bdc_field       using 'REG30-GERWECHS'
                                  '05'.
    perform bdc_field       using 'REG30-ANZDAYSOFPERIOD(01)'
                                  '30'.
    perform bdc_field       using 'REG30-ZWSTANDCE(01)'
                                  IT_OPEN-ZWSTANDCE.  "'10'.
    perform bdc_field       using 'REG30-ZWSTANDCE(02)'
                                  '0'.
    perform bdc_field       using 'REG30-PERVERBR(01)'
                                  '0'.
    perform bdc_field       using 'REG30-PERVERBR(02)'
                                  '0'.
    perform bdc_field       using 'REG30-TEMP_AREA(01)'
                                  '0001'.
    perform bdc_field       using 'REG30-TEMP_AREA(02)'
                                  '0001'.
    perform bdc_field       using 'REG30-PR_AREA_AI(01)'
                                  '0001'.
    perform bdc_field       using 'REG30-PR_AREA_AI(02)'
                                  '0001'.
    ENDFORM.                    " MAP1
    ****CHANGEs added BY ALKA 28.02.08
    *&      Form  MAP2
          text
    -->  p1        text
    <--  p2        text
    FORM MAP2 .
    perform bdc_dynpro      using 'SAPMILO0' '1110'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'IFLO-TPLNR'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '/00'.
    perform bdc_field       using 'IFLO-TPLNR'
                                  XYZ..
    perform bdc_field       using 'RILO0-TPLKZ'
                                  'AO_GP'.
    perform bdc_dynpro      using 'SAPMILO0' '2100'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'IFLO-PLTXT'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=T\04'.
    perform bdc_field       using 'IFLO-PLTXT'
                                  'DEVICE LOCATION'.
    perform bdc_dynpro      using 'SAPMILO0' '2100'.
    perform bdc_field       using 'BDC_OKCODE'
                                  '=BU'.
    perform bdc_field       using 'IFLO-PLTXT'
                                  'DEVICE LOCATION'.
    perform bdc_field       using 'BDC_CURSOR'
                                  'ITOBATTR-EINZL'.
    perform bdc_field       using 'ITOBATTR-IEQUI'
                                  'X'.
    perform bdc_field       using 'ITOBATTR-EINZL'
                                  'X'.
    ENDFORM.                    " MAP2
    *****END CHANGE added on 28.02.08
    *&      Form  get_date_format
          text
         -->P_IT_ORDER_TABLE_C_DATE  text
    FORM get_date_format USING L_ITAB_DATE." LIKE SY-DATUM.
    data: d_temp(4),
          m_temp(2),
          y_temp(4).
    *move L_ITAB_DATE to L_ITAB_DATE.
    y_temp = L_ITAB_DATE(4).
    m_temp = L_ITAB_DATE+4(2).
    d_temp = L_ITAB_DATE+6(2).
    CONCATENATE d_temp '.' m_temp '.' y_temp into L_ITAB_DATE.
    ENDFORM.                    " get_date_format
    *&      Form  GET_MESSAGES
          text
         -->P_IT_MESS  text
         -->P_G_INSNO  text
    FORM GET_MESSAGES  TABLES IT_MESS STRUCTURE BDCMSGCOLL USING G_INSNO .TABLES T100.
    DATA: L_MSTRING(255).
    LOOP AT IT_MESS WHERE MSGTYP = 'E'   OR MSGTYP = 'S'.
          SELECT SINGLE * FROM T100 WHERE SPRSL = IT_MESS-MSGSPRA
                                    AND   ARBGB = IT_MESS-MSGID
                                    AND   MSGNR = IT_MESS-MSGNR.
          IF SY-SUBRC = 0.
            L_MSTRING = T100-TEXT.
            IF L_MSTRING CS '&1'.
              REPLACE '&1' WITH IT_MESS-MSGV1 INTO L_MSTRING.
              REPLACE '&2' WITH IT_MESS-MSGV2 INTO L_MSTRING.
              REPLACE '&3' WITH IT_MESS-MSGV3 INTO L_MSTRING.
              REPLACE '&4' WITH IT_MESS-MSGV4 INTO L_MSTRING.
            ELSE.
              REPLACE '&' WITH IT_MESS-MSGV1 INTO L_MSTRING.
              REPLACE '&' WITH IT_MESS-MSGV2 INTO L_MSTRING.
              REPLACE '&' WITH IT_MESS-MSGV3 INTO L_MSTRING.
              REPLACE '&' WITH IT_MESS-MSGV4 INTO L_MSTRING.
            ENDIF.
            CONDENSE L_MSTRING.
          ENDIF.
          CONDENSE G_INSNO.
          CONCATENATE 'For' ' ' G_INSNO ',' L_MSTRING INTO L_MSTRING SEPARATED BY SPACE.
    FORMAT COLOR 2 ON.
    *IF IT_MESS-MSGTYP = 'S' AND IT_MESS-MSGNR = '622'.
    *WRITE: 1 sy-vline,
            L_MSTRING    under 'Error Messages',
           100 sy-vline.
    *ULINE.
    *ELSEIF IT_MESS-MSGTYP = 'E'.
    WRITE: 1 sy-vline,
             L_MSTRING    under 'Logs',
            100 sy-vline.
    ULINE.
    *ENDIF.
    ENDLOOP.
    ENDFORM.                    " GET_MESSAGES

    i think there might be some time gap between CALL TRANSACTION and GET PARAMETER ID.....,that is to say,the new No. has not been generated and what you fetch is an old No..
    i think you should use the "CALL TRANSACTION" like the following one:
    CALL TRANSACTION 'EG33' USING BDCDATA MODE 'A'  UPDATE 'L'  MESSAGES INTO IT_MESS .
    then i think you can get the right value.
    P.S: the different update model(from SAP document)
           upd Effect
    "A"   Asynchronous update. Updates of called programs are executed in the same way as if in the             COMMIT WORK statement the AND WAIT addition was not specified.
    "S" Synchronous processing. Updates of the called programs are executed in the same way as if in the COMMIT WORK statement the AND WAIT addition had been specified.
    "L" Local update. Updates of the called program are executed in such a way as if the SET UPDATE TASK LOCAL statement had been executed in it.
    Other As for "A".

  • How to set parameter id for a field, which is in disable mode ?

    Hi,
    I Have to set parameter id for field ledger for transaction FAGLB03, which is in disable mode, i have to set it through program,please let me know how to set it.
    Thanks.

    Say i have 5 rows then
    for(int i=1;i<=5;i++){
    String Newpath = updatepath(eval("{{obj.libraryname.web_input_text_fieldname}}"),i)
    web.text_area(Newpath).setText("Text to be set")
    Below function is used to update my path
    public String updatepath(String path,int i) throws exception {
    String FPath = "";
    if(i<2) {
    FPath = path.substring(0, path.indexOf("'", path.lastIndexOf("@id=")+5))+path.substring(path.indexOf("'", path.lastIndexOf("@id=")+5));
    } else {
    FPath = path.substring(0, path.indexOf("'", path.lastIndexOf("@id=")+5))+(i-1)+path.substring(path.indexOf("'", path.lastIndexOf("@id=")+5));
    return Fpath
    anyother way to update path and set the fields in mutiple block is appreciable
    thanks
    Suresh

  • How to find out the SET PARAMETER ID for FB02 transaction

    hi masters,
    i m working on a alv report and in that i have to make a BELNR field as a interactive field. i m using the 'user command' for this.
    FORM user_command USING ucomm TYPE sy-ucomm
                        selfield TYPE slis_selfield.
      IF selfield-value IS NOT INITIAL.
        CASE selfield-fieldname.
          WHEN 'BELNR'.
            SET PARAMETER ID 'FBAS'  FIELD selfield-value.
            CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.
          WHEN OTHERS.
            MESSAGE text-000 TYPE 'W'.
        ENDCASE.
      ENDIF.
    ENDFORM.                    "user_command
    i used this code using this. using this code my program goes to FB03 tc but it don't shows the data of BELNR what i was clicked. it always shows first BELNR no. in the table. plz anyone help me for this..
    the  SET PARAMETER ID 'FBAS'  i m using is right? if not plz suggest me how to find out correct one?

    Hi Vicky,
    To know the Parameter Id of any field in a transaction ,
    you just press F1 onthe particular field then in technical settings under Field data
    you can see the PARMATER ID.
    So if you check like this you can see 'BLN' as parameter id for Document number in FB03
    transaction
    Regards,
    Manoj Kumar P

  • Set Parameter id is not working in case of select-options

    Hi,
    i am using the below code to get the SWIA first field fill with some data which i am getting by logic written..but its not getting filled since in tcode the first input box is select-options not a parameter..if it would have been a parameter than my logic would have worked finest. so kindly suggest what to do now in case of select-options.
    form user_command  using p_ucomm    type sy-ucomm
                             p_selfield type slis_selfield.
      data : wi type sww_wiid .
      clear : wi .
      read table it_final into wa_final index p_selfield-tabindex.
      if sy-subrc = 0.
        check ( wa_final-wi_id is not initial ).
        wi = wa_final-wi_id .
        case p_ucomm.
          when '&IC1'.
            set parameter id 'WID' field wi.
            call transaction 'SWIA'and skip first screen.
        endcase.
      endif.
    endform.
    Regards,
    HiM

    ThanQ..i got you totally..thanks to remind
    Regards,
    HiM

  • CrystalReportViewer - Setting parameter throws ancestor error on page navigation

    We are having web application reports in the application using BO-XI SDK Viewer API. This API approach was working fine earlier. We upgrade our reporting component to SAP BO-4 (Crystal Server 2011) due to EOL of BOXI.
    We have updated new API’s provided by SAP as per guide.
    We updated web based Crystal Report Viewer (DHTML Viewer). The crystalreportviewer folder coming with SAP CS 2011.
    We applied updated patch set upto last patch released CS2011 SP4 Patch4.
    We still facing issue while viewing report in DHTML viewer provided by SAP. Please advice on below.
    In our web application we do have updated folder for /crystalreportviewer.
    We dynamically creating enterprise session object to get client document which explained as below –
    IEnterpriseSession es = null;
    try{
    es = sm.logon(mUser, mPassword, mAPSName, mAuthType);
    }catch(Exception e){
    // request dispatched to error page
    // Get the Report Application Factory service from Crystal Enterprise
    IReportAppFactory rptAppFactory = (IReportAppFactory)es.getService("", "RASReportService");
    // Get the InfoStore service from Crystal Enterprise
    IInfoStore infoStore = (IInfoStore)es.getService("", "InfoStore");
    IInfoObjects oInfoObjects = infoStore.query(“Select * From CI_INFOOBJECTS…for RPT File.”);
    ReportClientDocument clientDoc = rptAppFactory.openDocument((IInfoObject)oInfoObjects.get(0), 0, objLocale);
    Setting parameter
    // Setting Parameter to clientDoc
    Object[] parameters = { 
                                                    parseDate(fromDate),
                                                    parseDate(endDate),
                                                    getLanguageID(request),
                                                    reportName,
                                                    getLanguageID(request)
    Fields parameterFields = clientDoc.getDataDefController().getDataDefinition().getParameterFields();
    for(int index=0; index < parameters.length; index++){
                    ParameterField oldParameter = (ParameterField)parameterFields.getField(index);
                    ParameterField newParameter = (ParameterField) oldParameter.clone(true);
                    newParameter.getCurrentValues().removeAllElements();                                                   
                    ParameterFieldDiscreteValue newDiscreteValueObj = new ParameterFieldDiscreteValue();
                    newDiscreteValueObj.setValue(parameters[index]);
                    newParameter.getCurrentValues().add(newDiscreteValueObj);
                    ParameterFieldController paramController = clientDoc.getDataDefController().getParameterFieldController();
                    paramController.modify(oldParameter, newParameter);
    // Create an  Viewer
    CrystalReportViewer viewer = new CrystalReportViewer();
    //Set the name for the interactive viewer
    viewer.setName("Crystal_Report_Viewer");
    viewer.setDisplayPage(true);
    //Set Navigation button false
    viewer.setHasHistoryNavigationButtons(false);
    //Set best fit to page true
    viewer.setBestFitPage(true);
    // Set reuse parameter on referesh
    viewer.setReuseParameterValuesOnRefresh(true);
    // Set Own Page true
    viewer.setOwnPage(true);
    // Enabled export and print button
    viewer.setHasExportButton(true);
    viewer.setHasPrintButton(true);
    // Group Tree Removed
    viewer.setDisplayGroupTree(false);
    // Toggle group false
    viewer.setHasToggleGroupTreeButton(false);
    //viewer.refresh();
    // Removed refersh button
    viewer.setHasRefreshButton(false);
    viewer.setPrintMode(CrPrintMode.ACTIVEX);
    // Set the source for the interactive viewer to the client documents report source
    viewer.setReportSource(clientDoc.getReportSource());
    // Retain parameter and set again for pagination in viewer
    setReportURL(viewer,request);
    // Process the http request to view the report
    viewer.processHttpRequest(request, response, getServletConfig().getServletContext(), out);
    //response.flushBuffer();
    // Close client document
    clientDoc.close();
    // Dispose of the viewer object
    viewer.dispose();
    es.logoff();
    Issue we faced?
    a) On Pagination thorws exception in webreportinglog as
    [@APPNAME@] ERROR [[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'] WebReportLogger.error(62) | Unable to set the ancestors
    com.businessobjects.report.web.json.JSONException: JSONObject["ancestors"] is not a JSONArray.
                    at com.businessobjects.report.web.json.JSONObject.getJSONArray(JSONObject.java:456)
                    at com.businessobjects.report.web.shared.JSONParameter.getDiscreteValueFromJSON(JSONParameter.java:670)
                    at com.businessobjects.report.web.shared.JSONParameter.getValueFromJSON(JSONParameter.java:609)
                    at com.businessobjects.report.web.shared.JSONParameter.jsonToDefaultFieldValues(JSONParameter.java:587)
                    at com.businessobjects.report.web.shared.JSONParameter.getDefaultValues(JSONParameter.java:474)
                    at com.businessobjects.report.web.shared.JSONParameter.toParameterField(JSONParameter.java:872)
                    at com.businessobjects.report.web.shared.ParametersHelper.jsonToFields(ParametersHelper.java:309)
                    at com.businessobjects.report.web.state.ViewerState.restoreCommonState(ViewerState.java:2838)
                    at com.businessobjects.report.web.state.ViewerState.restore(ViewerState.java:2741)
                    at com.businessobjects.report.web.component.ViewerContainer.restoreState(ViewerContainer.java:210)
                    at com.businessobjects.report.web.WorkflowController.loadViewState(WorkflowController.java:418)
                    at com.businessobjects.report.web.WorkflowController.init(WorkflowController.java:393)
    b) On Export / print button nothing happened even request didn’t passed.
    WEB-INF/web.xml entry as below.
    <?xml version="1.0"?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
                    <context-param>
            <param-name>crystal_document_view</param-name>
                                    <!-- weblayout : Fills the entire report view pane with the report. There is no grey background -->
            <param-value>weblayout</param-value>
                    </context-param>
                    <context-param>
                                    <param-name>crystal_exception_log_file</param-name>
                                    <param-value>webreportingexception.log</param-value>
                    </context-param>
                    <context-param>
            <param-name>crystal_exception_info</param-name>
                                    <!-- long - Displays the exception information with the accompanying stack trace. -->
            <param-value>long</param-value>
                    </context-param>
                    <context-param>
                                    <param-name>crystal_image_uri</param-name>
                                    <param-value>/TangibleWebApp/crystalreportviewers</param-value>
                    </context-param>
                    <context-param>
            <param-name>crystal_image_use_relative</param-name>
            <param-value>webapp</param-value>
                    </context-param>
                    <context-param>
                                    <param-name>crystal_processing_indicator_delay</param-name>
                                    <param-value>100</param-value>
                    </context-param>
                    <context-param>
                                    <param-name>crystal_use_asynchronous_requests</param-name>
                                    <param-value>false</param-value>
                    </context-param>
                    <context-param>
                                    <param-name>crystal_servlet_uri</param-name>
                                    <param-value>/TangibleWebApp/CrystalReportViewerHandler</param-value>
                    </context-param>
                    <servlet>
            <servlet-name>CrystalReportViewerServlet</servlet-name>
            <servlet-class>com.crystaldecisions.report.web.viewer.CrystalReportViewerServlet</servlet-class>
                    </servlet>
                    <servlet-mapping>
                                    <servlet-name>CrystalReportViewerServlet</servlet-name>
                                    <url-pattern>/TangibleWebApp/CrystalReportViewerHandler</url-pattern>
                    </servlet-mapping>
                    <servlet>
                                    <servlet-name>document</servlet-name>
                                    <servlet-class>com.oreilly.servlet.OpenDoc</servlet-class>
                    </servlet>
                    <servlet>
                                    <servlet-name>InitialServlet</servlet-name>
                                    <servlet-class>com.servlet.InitialServlet</servlet-class>
                                    <load-on-startup>1</load-on-startup>
                    </servlet>
                    <servlet>
                                    <servlet-name>FactorsLogo</servlet-name>
                                    <servlet-class>com.servlet.FactorsLogo</servlet-class>
                    </servlet>
                    <servlet-mapping>
                                    <servlet-name>FactorsLogo</servlet-name>
                                    <url-pattern>/servlet/FactorsLogo</url-pattern>
                    </servlet-mapping>
                    <servlet-mapping>
                                    <servlet-name>document</servlet-name>
                                    <url-pattern>/servlet/document</url-pattern>
                    </servlet-mapping>
                    <session-config>
                                    <session-timeout>30</session-timeout>
                    </session-config>
                    <welcome-file-list>
                                    <welcome-file>/tangible/index.jsp</welcome-file>
                    </welcome-file-list>
                    <listener>
                                    <listener-class>com.common.util.applistener.AppListener</listener-class> 
                    </listener>
    </web-app>
    Thanks in advance for your advice / suggestions.

    Am I right in guessing that you were previously using the ActiveX viewer?
    Currently your code is closing the document and logging off Enterprise.  Pretty much any action that is done in the DHTML viewer will cause a postback to the server which will no longer have the document or session available with your current code which will cause all sorts of problems.  You need to persist these objects, and only clean them up once you are completely finished with them.

Maybe you are looking for