How to Capture Dynamic System ID in transformation

Hi Gurus,
               I would like to capture System ID in Update rules to get dynamic values in all landscape ( Dev, QA, Production). Right now I defined constant value in Update rules i.e B6DCLNT100 and transported to QA. Still it is taking Dev Id.....
              I saw one option in Update rules under formula called SAP SYSID, but the length of this values is 8 whereas our system ID is 10.
              Your help is really appreciated....
Thanks
Ganesh Reddy.

Use
Result = g_s_minfo-logsys.
in the routine.
or yu can use
RESULT = p_r_request->get_logsys( ).
Pravender

Similar Messages

  • How to capture dynamic data in BPM and send to next step ?

    Hi Folks,
    How can i capture the dynamic data and later on send it to the next message type in send step in BPM ?
    Regards,

    Hi Santhosh,
        In your sceanrio your getting the response from RFC and preapring the XML file.Where you are poulating the Dynamic File name inside of the BPM or Outside of the BPM. Might be it is inside of the BPM, if yes Use another transformation step where you can catch the Dynamic file name to sending to Oracle database and Use send step to sending the message of out of the BPM.
    Cheers
    Veera

  • BPM: How to capture Webservice system Time

    Dear friends,
    I  have one Sybchrounous Interface as follows :
    Local PI folder -
    >PI -
    > Webservice system
                                 ( Sync Interface )
    Overall flow:
    1.        PI Picks up the Control file consisting of date& time, count and start fields from PI folder.
    2.        PI mapping converts the file to soap request message and sends it to Web Service
    3.        PI receives the response soap message from web service converts into an XML file and places in the PI folder.
    4.        The loop continues in PI BPM until all the records of particular time period are retrieved.
    Logic in Detail:
    5.     The initial request file consists of a user defined time stamp (since), count and start values to retrieve the initial load.
    6.     PI BPM sends this request in a synchronous mode to Web service and gets the response back.
    7.     Apart from the device details, the response message from WS consists of u2018current_timeu2019 field which is the current  system  time of webservice when the query is executed on the web service System.
    8.     BPM has to capture this field during first iteration and updates the source request message field u2018sinceu2019 with the web      service system time.
    9.      From next cycle, PI picks up the file which consists of WB service system time in the u2018sinceu2019 field.
    10   BPM continues in loop until all the records are fetched from web service and writes the files with time stamp concatenated to the PI folder.
    Bottlenecks:
    Tried to implement with BPM ..But facing problems to implement point 4 ,8 and 10 .
    Kindly guide  me how we can design this interface .
    Renu.

    Dear friends,
    I  have one Sybchrounous Interface as follows :
    Local PI folder -
    >PI -
    > Webservice system
                                 ( Sync Interface )
    Overall flow:
    1.        PI Picks up the Control file consisting of date& time, count and start fields from PI folder.
    2.        PI mapping converts the file to soap request message and sends it to Web Service
    3.        PI receives the response soap message from web service converts into an XML file and places in the PI folder.
    4.        The loop continues in PI BPM until all the records of particular time period are retrieved.
    Logic in Detail:
    5.     The initial request file consists of a user defined time stamp (since), count and start values to retrieve the initial load.
    6.     PI BPM sends this request in a synchronous mode to Web service and gets the response back.
    7.     Apart from the device details, the response message from WS consists of u2018current_timeu2019 field which is the current  system  time of webservice when the query is executed on the web service System.
    8.     BPM has to capture this field during first iteration and updates the source request message field u2018sinceu2019 with the web      service system time.
    9.      From next cycle, PI picks up the file which consists of WB service system time in the u2018sinceu2019 field.
    10   BPM continues in loop until all the records are fetched from web service and writes the files with time stamp concatenated to the PI folder.
    Bottlenecks:
    Tried to implement with BPM ..But facing problems to implement point 4 ,8 and 10 .
    Kindly guide  me how we can design this interface .
    Renu.

  • How to capture System Error in XI?

    Hello All,
    1. Can any one tell me , How to capture the system error , Adapter Error and send the alert to make sure the guarenteed delivery from Source to Target via XI ?
    2.I have done the configuration for to capture the mapping error in transaction ALRTCATDEF .But still i am not able to see any messages in my Alert Inbox???
    I have checked with the two weblogs Alert step by step and Alert Trouble shooting guide.but still i am not getting any messages in Alert inbox .Any one can tell me how to fix this?
    Thanks!

    Hi,
      You wrote:
    <i>How to capture the system error , Adapter Error </i>
    Errors are captures in many ways and at different stages,
    like alert, sld errors or even sxmb_moni or even with visual administrator trace, I am not sure of your requirement but if you want a centrlished point to access all these error you may refer a good example as,
    /people/michal.krawczyk2/blog/2005/09/07/xi-why-dont-start-searching-for-all-errors-from-one-place
    <i>have checked with the two weblogs Alert step by step and Alert Trouble shooting guide.but still i am not getting any messages in Alert inbox .Any one can tell me how to fix this?</i>
    The two weblogs are my favourite and best resources but still if you are missing, please elaborate if you are getting any errors or other fesible traces as to why your alerts are not coming in inbox.
    Regards,
    Anirban.

  • How to capture the dynamic fields in the form...urgent...Please help me

    Hi Gurus,
    I'm working on Adobe Interactive form developed in WDP ABAP. I have a dynamic field called Roles. User can give n number of roles as Input. How can I capture them in my WDP. I know how to capture if there is a fixed field like name, age, email id etc.. Please give me the detail explaination on this.

    hi,
    when you create a form, the UI elements are created by either directlly dragging and dropping the context elements or map form elements with context elements.
    when pdf is online its contents are reflected in the Context Attributes.
    so if you change/modify the Context Attributes, the change is reflected in the corresponding form fields.
    regards,
    -amol gupta

  • How to Identify the Source System in a Transformation Rule?

    Hi,
       In a 3.x system if I needed to identify the source system, the interface had a parameter SOURCE_SYSTEM LIKE RSUPDSIMULH-LOGSYS. I do not see the same in a Transformation Rule. Can anyone tell me how can I make a decision in my transformation rule depending on the Source System?
        Say for instance I want to change the following Update Rule from a 3.x System to a Transformation in BI7:
    IF SOURCE_SYSTEM = 'ABC'.
       RESULT = 1.
    ELSEIF SOURCE_SYSTEM = 'A11'.
       RESULT = 2.
    ELSEIF SOURCE_SYSTEM = 'AZ1'.
       RESULT = 3.
    ELSE.
       RESULT = 0.
    ENDIF.
      Can anyone help? Points will be rewarded.
    Regards,
    Kazmi.

    Hi Siggi,
       But how would I know the Request ID within a transformation ? REQUID is the key of the table rsbkrequest ? The interface of the transformation method has the following parameters:
      IMPORTING
        request     type rsrequest
        datapackid  type rsdatapid
        SOURCE_FIELDS
       EXPORTING
         RESULT
    So all I can be aware of is the Request Name and the Data Packet Number. For instance when I took your approach, I got the Request Name as "DTPR_8E3VKVN0RJPDNXAKMP0PZJ99B" now I cannot look up with this against the key of the table because REQUID is a number field. Now, if I look up against the field "Data Transfer Process ID (DTP)" I do not find any entry in this table.
       Any more info?
    Regards,
    Thanks.

  • How to capture values dynamically from output screen

    Hi all,
    I have a new requirement.
    i developed a report which is showing output correctly. Here i have to take a check box for every record in output screen. if i check some of the check boxs then it should allow for further processing.
    i succeeded upto put checkboxes on output screen.
    but i don't know how to capture the values of checkboxes of every record into an internal table. it is necessary to capture into an internal table
    will it be work by using LOOP AT SCREEN statement.
    could you please explain with examples. it is normal report program only.
    i would appreciate an early reply
    Regards
    Prabhakar

    Sample code for usage:
    Internal table for Region and its Description
      data: begin of t_t005u occurs 0,
             LAND1 like t005u-land1,
             BLAND like t005u-bland,
             Bezei like t005u-bezei,
            end of t_t005u.
    Ranges for Country
      ranges: r_land1 for t005u-land1.
    Get the country codes and their descriptions
        refresh r_land1.
        clear r_land1.
      refresh t_dynpfields.
      move 'V_LAND1' to t_dynpfields-fieldname.
      append t_dynpfields.
      clear t_dynpfields.
    Read the value in the Country field on the screen
      call function 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = 'SAPLZ_VENDOR_MASTER'
          dynumb               = '0004'
          translate_to_upper   = 'X'
        TABLES
          dynpfields           = t_dynpfields
        EXCEPTIONS
          invalid_abapworkarea = 01
          invalid_dynprofield  = 02
          invalid_dynproname   = 03
          invalid_dynpronummer = 04
          invalid_request      = 05
          no_fielddescription  = 06
          undefind_error       = 07.
      read table t_dynpfields with key fieldname = 'V_LAND1'.
      if not t_dynpfields-FIELDVALUE is initial.
        r_land1-low = t_dynpfields-FIELDVALUE.
        r_land1-sign = 'I'.
        r_land1-option = 'EQ'.
        append r_land1.
        clear r_land1.
      endif.
    Get the Regions to be displayed as F4 Help
      select land1
             bland
             bezei
        from t005u
        into table t_t005u
       where spras = 'EN'
         and land1 in r_land1.
      if not t_t005u[] is initial..
    Popup to display Valid Regions for the selected country
        CALL FUNCTION 'POPUP_WITH_TABLE_DISPLAY'
          EXPORTING
            ENDPOS_COL   = 60
            ENDPOS_ROW   = 40
            STARTPOS_COL = 40
            STARTPOS_ROW = 20
            TITLETEXT    = 'Region'
          IMPORTING
            CHOISE       = v_choice
          TABLES
            VALUETAB     = t_t005u
          EXCEPTIONS
            BREAK_OFF    = 1
            OTHERS       = 2.
        if sy-subrc = 0.
          if v_activity = 'V'.
            read table t_t005u index v_choice.
            if sy-subrc = 0.
              v_regio = t_t005u-bland.
              move 'V_BEZEI' to t_dynpfields-fieldname.
              move t_t005u-bezei to t_dynpfields-fieldvalue.
              append t_dynpfields.
    Update the Region description on the screen.
              call function 'DYNP_VALUES_UPDATE'
                EXPORTING
                  dyname               = 'SAPLZ_VENDOR_MASTER'
                  dynumb               = '0004'
                TABLES
                  dynpfields           = t_dynpfields
                EXCEPTIONS
                  invalid_abapworkarea = 01
                  invalid_dynprofield  = 02
                  invalid_dynproname   = 03
                  invalid_dynpronummer = 04
                  invalid_request      = 05
                  no_fielddescription  = 06
                  undefind_error       = 07.
            endif.
          endif.
        endif.
      endif.

  • How to capture System MAC address On internet

    Hi,
    I am doing internet based application. I want to capture user system MAC address when ever user is logged in to my application over internet. So please tell me how i can capture users mac address. please help me.. with out this i cant i go further in my process. please help
    Regards,,

    I think you're out of luck--the IP packets that come to your web server don't contain the MAC address; that would only be available on the LAN where the NIC resided. All the other components of the Internet don't use the MAC address (that's actually what the "Inter" part means).
    I assume you're wanting to track unique users. You might try cookies or something of the like.
    Best of luck.
    John

  • How  do the dynamic state to record image in the cell-phone?

    Excuse me.How do the dynamic state to record image in the cell-phone?Or whether it has the feasibility or not?..Somebody can give me some opinions and data,please.
    Thanks.

    I don't understand very well what you want, but to record and image (get and snapshot) you have to create an Player, realize the player, start it and then get the snapshot. ex:
                player = Manager.createPlayer("capture://video");
                player.realize();           
                VideoControl videoControl = (VideoControl) player.getControl("VideoControl");
                player.start();
                byte[] data = videoControl.getSnapshot(null);
                Image image = Image.createImage(data, 0, data.length);To find out if a device can record images you can use this:
                boolean mmapiAvailable = System.getProperty("microedition.media.version") != null;
                boolean canGetSnapshots = System.getProperty("supports.video.capture") != null;Hope that answer your question.

  • Deployment Workbench - how to capture an image after customisation?

    I have deployed Vista to a machine using WinPE (Created through Workbench) and chose the option when deploying "Prepare for capture"
    I then customised Vista - in this case removing the Fax applications and ran Sysprep with OOBE, Generalise and Shutdown.
    In workbench I created a new task sequence 'Standard Client Replace task sequence' which seems to be the right task to capture an image.
    When selecting the task when booting the machine with WinPE, it forces me to capture the user data - I cannot select 'Do not save data and settings'
    I must be doing something wrong!
    What I want to do is:
    Deploy Vista
    Install some apps manually i.e. not using a task sequence
    Capture the image
    Deploy to machines
    How can I do this using Workbench? Thanks.

    Hi,
    Thank you for the reply.
    I suggest referring to the following article:
    Creating a Computer Image
    http://technet.microsoft.com/en-us/library/bb977918.aspx
    If you select “Capture an image of this reference computer” on the “Specify whether to capture an image” page when running Deployment Wizard, it will sysprep and capture the system for you automatically.
    If you would like to
    “Install Vista and prepare for capture
    Install my own applications WITHOUT using task sequences
    Capture the OS”,
    I am afraid that you do not need to use MDT (you cannot perform a LTI without running Task Sequences). You can do this by only using WDS.
    1.   Install and configure the WDS Server.
    2.   Add the default Windows Server 2008 boot image to the WDS Server.
    3.   Create Capture Boot Image and add it to boot image in WDS Server.
    4.  Create a reference computer (install the operating system, applications, and make any other changes)
    5.  Sysprep.
    6.  PXE boot the reference computer into capture image on the boot screen and then capture the image (If non-PXE supported, make a discover image to boot)
    7.  Upload the captured image to WDS server.
    8.  Clients can PXE boot and install Windows (If non-PXE supported, use a discover image to boot).
    Hope it helps.
    Tim Quan - MSFT

  • How to increase dynamically open_cursors and session_cached_cursors

    how to increase dynamically open_cursors and session_cached_cursors
    for Ex. alter system open_cursors = 500

    instane level:
    alter system set session_cached_cursors=200 scope = spfile; or set init.ora file.
    alter system set open_cursors=400;
    More details about open_cursor and session_cached_cursor, refer the below link
    http://www.orafaq.com/node/758
    Regards
    RajaBaskar

  • How to capture the user change in an input field on a selection screen?

    I am coding a selection screen in which there are two input fields. The first field takes a Unix directory from the user input. Based on the input value, the second field will be populated with a the name of a file under the corresponding directory.
    My question is how I can make the program capture the user input without having to make the user press ENTER after they enter the value in the first field?
    Any help will be greatly appreciated.

    Venkat,
    Actually you led me to the real solution! It's the function module DYNP_VALUES_READ that does the trick for me. This function enables the program to capture dynamic user changes without recourse to PAI. Please refer to the code below:
    REPORT   zreiabsintf MESSAGE-ID zreiabsintfmc.
    *<HGDC------------------------------------------------------------------
    *  Selection screen for the conversion program
    *HGDC>------------------------------------------------------------------
    SELECTION-SCREEN BEGIN OF BLOCK input WITH FRAME TITLE text-001.
    PARAMETERS: p_indir   LIKE epsf-epsdirnam OBLIGATORY,                   " Inbound file directory
                p_infile  LIKE epsf-epsfilnam DEFAULT gc_infile OBLIGATORY, " Inbound file name
    SELECTION-SCREEN END OF BLOCK input.
    *<HGDC------------------------------------------------------------------
    *   Displays a file-open dialog when the user clicks the search
    *   help button next to the inbound file text field. The user
    *   can select the inbound file visually.
    *HGDC>------------------------------------------------------------------
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_infile.
    * Capture any user change to the directory.
      PERFORM check_dir_change.
    * Display the file open dialog
      PERFORM file_open_dialog CHANGING p_infile.
    *<HGDC------------------------------------------------------------------
    * Global constants
    *HGDC>------------------------------------------------------------------
    CONSTANTS:
        gc_indir  LIKE epsf-epsdirnam
                  VALUE '/interfaces/<SID>/inbound/',      " Default inbound directory template
        gc_infile LIKE epsf-epsfilnam VALUE 'input'.       " Default inbound file name
    *<HGDC------------------------------------------------------------------
    * Global data
    *HGDC>------------------------------------------------------------------
    DATA:
        gs_dynpfields   TYPE dynpread,                        " Fields of the current screen
         gt_dynpfields   LIKE STANDARD TABLE OF gs_dynpfields. " Table of the screen fields
    *&      Form  file_open_dialog
    *       Opens a dialog window for the user to choose a file in
    *       the specified Unix directory.
    *      <--P_FILE is the file to be selected.
    FORM file_open_dialog  CHANGING p_file.
    * Validate the directory.
      OPEN DATASET p_indir FOR INPUT IN BINARY MODE.
      IF sy-subrc NE 0.
        MESSAGE i001(zreiabsintfmc) WITH p_indir.    " Unable to open the given directory
        EXIT.
      ENDIF.
      CLOSE DATASET p_indir.
    * Call the dialog window to open a file in the directory.
      CALL FUNCTION '/SAPDMC/LSM_F4_SERVER_FILE'
        EXPORTING
          directory        = p_indir
        IMPORTING
          serverfile       = p_file
        EXCEPTIONS
          canceled_by_user = 1
          OTHERS           = 2.
      IF sy-subrc NE 0.
        MESSAGE i002(zreiabsintfmc).                 " Failed to open the file.
        EXIT.
      ENDIF.
    ENDFORM.                    " file_open_dialog
    *&      Form  check_dir_change
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM check_dir_change .
      CLEAR gs_dynpfields.
      CLEAR gt_dynpfields.
      gs_dynpfields-fieldname = 'P_INDIR'.
      gs_dynpfields-fieldvalue = p_indir.
      APPEND gs_dynpfields TO gt_dynpfields.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = sy-repid
          dynumb               = sy-dynnr
        TABLES
          dynpfields           = gt_dynpfields
        EXCEPTIONS
          invalid_abapworkarea = 1
          invalid_dynprofield  = 2
          invalid_dynproname   = 3
          invalid_dynpronummer = 4
          invalid_request      = 5
          no_fielddescription  = 6
          invalid_parameter    = 7
          undefind_error       = 8
          double_conversion    = 9
          stepl_not_found      = 10
          OTHERS               = 11.
      IF sy-subrc  NE 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      READ TABLE gt_dynpfields INTO gs_dynpfields INDEX 1.
      p_indir = gs_dynpfields-fieldvalue.
    ENDFORM.                    " check_dir_change
    Thanks for all your answers! The problem is now solved.
    Edited by: Ning Hu on Apr 9, 2008 11:32 AM
    Edited by: Ning Hu on Apr 9, 2008 11:34 AM

  • How to pass dynamic filename to Receiver JMS channel

    Hi experts,
    I want to pass the dynamic filename to receiver JMS message Properties.
    for example
    I am passing directory name via adapter module AF_Modules/DynamicConfigurationBean with key and value combination like below. How to pass dynamic filename value to a dynamic property ( say DCJMSMessageProperty1)
    eg.
    key.0 - >insert http://sap.com/xi/XI/System/JMS DCJMSMessageProperty0
    value.0 - >  testdirectory ( which is static value)
    Note: Im have not created any ESR object . i just have to bypass the file to a jms queue. I have used AAE integrated configuration scenario ( file to jms )
    Regards,
    Balaji
    Edited by: Balaji Pichaimuthu on Jan 27, 2011 4:45 PM
    Edited by: Balaji Pichaimuthu on Jan 27, 2011 4:46 PM

    Already given link for the dynamic configuration code snippet in the earlier reply... Below is the code snippet
    Note: Use Adapter Specific Message Attributes for the target Communication Channel(CC).Check the indicator for filename in the advanced tab of CC
    //UDF code
    String filename="";
    String NameSpace = "http:/"+"/sap.com/xi/XI/System/JMS";
    try{
          DynamicConfiguration conf = (DynamicConfiguration) param.get(
            StreamTransformationConstants.DYNAMIC_CONFIGURATION);
          DynamicConfigurationKey key  =  DynamicConfigurationKey.create( "http://sap.com/xi/XI/System/File",   "FileName");
           // read filename value
           filename = conf.get(key);     
          // So far we extracted filename value .. now do your logic  something like this...
          DynamicConfigurationKey key2 = DynamicConfigurationKey.create(NameSpace,"yourjmsvalue goes here");
           conf.put(key2,filename);
         } catch(Exception e){

  • How to capture the data entered in a textfield in a JTable

    How to capture the data entered in a textfield present in a cell of a textfield or how to add listener to this textfield

    A sample of my code is:
              model = new GridDisplayTableModel(gridDisp,columnName,getRows(),getCols());
              final ComboRenderer cRenderer = new ComboRenderer();
              final TextFieldRenderer tRenderer = new TextFieldRenderer();
              combo.addItem("one");
              combo.addItem("two");
              combo.addItem("three");
              final JTextField textfield = new JTextField();
              final DefaultCellEditor cmbEditor = new DefaultCellEditor(combo);
         //     final JEnterDataCellEditor textEditor = new JEnterDataCellEditor(12);
              final DefaultCellEditor textEditor = new DefaultCellEditor(textfield);
              rm = new RowEditorModel();
              table = new JTable(model){
         public TableCellRenderer getCellRenderer(int row, int column) {
              int posx = 0;
                   int posy = 0;
                   TableCellRenderer renderer = null;
         for(int l=0;l<getDataVec().size();l++)
                   beanObj =(Helperbean)dataVec.elementAt(l);
                   posx = beanObj.getPosx();
                   posy = beanObj.getPosy();
                   if(row==posx && column==posy)
                             if(beanObj.getModeofDisplay() != null && beanObj.getModeofDisplay().equalsIgnoreCase("textfield"))
                                  rm.addEditorForRow(row,textEditor);
                                  renderer = tRenderer;
                             else if(beanObj.getModeofDisplay() != null && beanObj.getModeofDisplay().equalsIgnoreCase("combo"))
                                  rm.addEditorForRow(row,cmbEditor);
                                  renderer = cRenderer;
                             break;
                        renderer = super.getCellRenderer(row, column);
              //     System.out.println("getEditor"+rm.getEditor(1));
         return renderer;
    public TableCellEditor getCellEditor(int row, int col) {   
         int posx = 0;
         int posy = 0;
         TableCellEditor tmpEditor = null;
    for(int l=0;l<getDataVec().size();l++)
         beanObj =(Helperbean)dataVec.elementAt(l);
         posx = beanObj.getPosx();
         posy = beanObj.getPosy();
         if(row==posx && col==posy)
                   if(beanObj.getModeofDisplay() != null && beanObj.getModeofDisplay().equalsIgnoreCase("textfield"))
                        System.out.println("celleditorval "+textEditor.getCellEditorValue());
                        tmpEditor = textEditor;
                   else if(beanObj.getModeofDisplay() != null && beanObj.getModeofDisplay().equalsIgnoreCase("combo"))
                        tmpEditor = cmbEditor;
                   break;
              tmpEditor = super.getCellEditor(row, col);
    return tmpEditor;
    public boolean isCellEditable(int row,int col){
         boolean isEditable = false;
         int posx = 0;
         int posy = 0;
    for(int l=0;l<getDataVec().size();l++)
         beanObj =(Helperbean)dataVec.elementAt(l);
         posx = beanObj.getPosx();
         posy = beanObj.getPosy();
         if(row==posx && col==posy)
              if(beanObj.getModeofDisplay() != null )     
                        isEditable = true;     
                   else
                        isEditable = false;     
                   break;
         isEditable = false;
         return isEditable;
    public void changeSelection(final int row, final int column, boolean toggle, boolean extend) {
         super.changeSelection(row, column, toggle, extend);
         //my attempt to avoid editCellAt from being called twice in a row
         if (getModel().isCellEditable(row, column) && !(isEditing() && getEditingRow() == row && getEditingColumn() == column))
              if (editCellAt(row, column)) {
                   getEditorComponent().requestFocus();
         // Select the text when the cell starts editing
    public boolean editCellAt(int row, int column) {       
         boolean result = super.editCellAt(row, column);
         final Component editor = getEditorComponent();
         if (editor != null && editor instanceof JTextField) {           
              SwingUtilities.invokeLater(new Runnable() {               
                   public void run() {                   
                        ((JTextField)editor).selectAll();
              return result;
         public boolean hasFocus()
              Component editorComponent = getEditorComponent();
              // Try to install the editor
              int anchorRow = getSelectionModel().getAnchorSelectionIndex();
              int anchorColumn = getColumnModel().getSelectionModel().
              getAnchorSelectionIndex();
              if (anchorRow != -1 && anchorColumn != -1 && !isEditing())
              if ((this.getSelectedRow() == anchorRow) && (this.getSelectedColumn() == anchorColumn))
              if (!editCellAt(anchorRow, anchorColumn)) {}
              return super.hasFocus();
         public void valueChanged(ListSelectionEvent e)
              super.valueChanged(e);
              if ((this.getSelectedRow() == 2) && (this.getSelectedColumn() == 3))
                   DefaultFocusManager focusManager = new DefaultFocusManager();
                   focusManager.focusNextComponent(this);
                   model.fireTableStructureChanged();
         

  • How to create dynamic context based on a structure defined in the program?

    Hi Experts,
             I need to create a dynamic context based on a structure wa_struc which i have define programatically.
    When I pass wa_struc to structure_name parameter of create_nodeinfo_from_struc, i get a runtime error:
    "Parameter STRUCTURE_NAME contains an invalid value wa_struc."
    How to create dynamic context based on a structure defined in the program?
    I have written the code like this:
    TYPES: BEGIN OF t_type,
                v_carrid TYPE sflight-carrid,
                v_connid TYPE sflight-connid,
             END OF t_type.
      Data:  i_struc type table of t_type,
             wa_struc type t_type.
      data: dyn_node   type ref to if_wd_context_node.
      data: rootnode_info   type ref to if_wd_context_node_info.
      rootnode_info = wd_context->get_node_info( ).
      clear i_struc. refresh i_struc.
      select carrid connid into corresponding fields of table i_struc from sflight where carrid = 'AA'.
    cl_wd_dynamic_tool=>create_nodeinfo_from_struct(
      parent_info = rootnode_info
      node_name = 'dynflight'
      structure_name = 'wa_struc'
      is_multiple = abap_true ).
    dyn_node = wd_context->get_child_node( name = 'dynflight' ).
    dyn_node->bind_table( i_struc ).
    Thanks
    Gopal
    Message was edited by: gopalkrishna baliga

    Hi Michelle,
              First of all Special thanks for your informative answers to my other forum questions. I really appreciate your help.
    Coming back to this question I am still waiting for an answer. Please help. Note that my structure is not in a dictionary.
    I am trying to create a new node. That is
    CONTEXT
    - DYNFLIGHT
    CARRID
    CONNID
    As you see above I am trying to create 'DYNFLIGHT' along with the 2 attributes which are inside this node. The structure of the node that is, no.of attributes may vary based on some condition. Thats why I am trying to create a node dynamically.
    Also I cannot define the structure in the ABAP dictionary because it changes based on condition
    I have updated my code like the following and I am getting error:
    TYPES: BEGIN OF t_type,
    CARRID TYPE sflight-carrid,
    CONNID TYPE sflight-connid,
    END OF t_type.
    Data: i_struc type table of t_type,
    dyn_node type ref to if_wd_context_node,
    rootnode_info type ref to if_wd_context_node_info,
    i_node_att type wdr_context_attr_info_map,
    wa_node_att type line of wdr_context_attr_info_map.
    wa_node_att-name = 'CARRID'.
    wa_node_att-TYPE_NAME = 'SFLIGHT-CARRID'.
    insert wa_node_att into table i_node_att.
    wa_node_att-name = 'CONNID'.
    wa_node_att-TYPE_NAME = 'SFLIGHT-CONNID'.
    insert wa_node_att into table i_node_att.
    clear i_struc. refresh i_struc.
    select carrid connid into corresponding fields of table i_struc from sflight where carrid = 'AA'.
    rootnode_info = wd_context->get_node_info( ).
    rootnode_info->add_new_child_node( name = 'DYNFLIGHT'
    attributes = i_node_att
    is_multiple = abap_true ).
    dyn_node = wd_context->get_child_node( 'DYNFLIGHT' ).
    dyn_node->bind_table( i_struc ).
    l_ref_interfacecontroller->set_data( dyn_node ).
    But now I am getting the following error :
    The following error text was processed in the system PET : Line types of an internal table and a work area not compatible.
    The error occurred on the application server FMSAP995_PET_02 and in the work process 0 .
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Method: IF_WD_CONTEXT_NODE~GET_STATIC_ATTRIBUTES_TABLE of program CL_WDR_CONTEXT_NODE_VAL=======CP
    Method: GET_REF_TO_TABLE of program CL_SALV_WD_DATA_TABLE=========CP
    Method: EXECUTE of program CL_SALV_WD_SERVICE_MANAGER====CP
    Method: APPLY_SERVICES of program CL_SALV_BS_RESULT_DATA_TABLE==CP
    Method: REFRESH of program CL_SALV_BS_RESULT_DATA_TABLE==CP
    Method: IF_SALV_WD_COMP_TABLE_DATA~MAP_FROM_SOURCE_DATA of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_COMP_TABLE_DATA~MAP_FROM_SOURCE of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_COMP_TABLE_DATA~UPDATE of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_VIEW~MODIFY of program CL_SALV_WD_C_TABLE_V_TABLE====CP
    Method: IF_SALV_WD_COMPONENT~VIEW_MODIFY of program CL_SALV_WD_A_COMPONENT========CP
    -Gopal
    Message was edited by: gopalkrishna baliga

Maybe you are looking for

  • FTP sender - requirement

    Hi, We have to pick the files from an FTP server. The FTP vendor wants us to do the following while picking the files. 1.     Log in with your parameters 2.     go to folder 'ExportSAP 3.     Search for u201ESAP_Order.txtu201C 4.     Rename file u201

  • How to convert fractional decimal number to hex number?

    Hi, Can any one help me to convert the fractional decimal number to its equivalent hex number and vice versa ? if u have any code please share. thanks neethu

  • ADF-af:inputListOfValues  not working properly when used in inside table

    Hi All, i am using jdev version 11.1.1.5.0 . In my usecase i have create one eo based vo where in empname attribute i have add lov and drag this vo as adf table on jsff page. and i have create row on table and select empname from lov. lov working pro

  • Downloaded JDK Package is Missing File Extension

    I am trying to download and install the latest JDK package for windows 64 bit.  The downloaded file doesn't contain the .exe extension that is shown in the download page so I can't install the software.  The name of the downloaded file is jdk-7u45-wi

  • How to uninstall all CS6 apps at once

    Hi there Since the update yesterday to Creative Cloud my InDesign CS6 crashes on startup. In the CC-aqpp I see both the CS6 and CC version. I can't uninstall all CS6 apps at once & make a fresh start with the CC version do I? I can only uninstall the