SMSY generating runtime error on adding new system

In our solution manager system, while trying to add a new system details
via SMSY transaction we are getting the Runtime Errors
OBJECTS_OBJREF_NOT_ASSIGNED.
Please find the dump details.
Runtime Errors         OBJECTS_OBJREF_NOT_ASSIGNED
Exception              CX_SY_REF_IS_INITIAL
Date and Time          29.05.2008 10:47:54
Short text
    Access via 'NULL' object reference not possible.
What happened?
    Error in the ABAP Application Program
    The current ABAP program "SAPLSMSY_ACTUALIZE_DATA" had to be terminated because
     it has
    come across a statement that unfortunately cannot be executed.
Error analysis
    An exception occurred that is explained in detail below.
    The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not
     caught in
    procedure "UPDATE_HOST_LCR" "(FORM)", nor was it propagated by a RAISING
     clause.
    Since the caller of the procedure could not have anticipated that the
    exception would occur, the current program is terminated.
    The reason for the exception is:
    You attempted to use a 'NULL' object reference (points to 'nothing')
    access a component (variable: "ACCESSOR").
    An object reference must point to an object (an instance of a class)
    before it can be used to access components.
    Either the reference was never set or it was set to 'NULL' using the
    CLEAR statement.
Information on where terminated
    Termination occurred in the ABAP program "SAPLSMSY_ACTUALIZE_DATA" - in
     "UPDATE_HOST_LCR".
    The main program was "SAPLSMSY_MAIN ".
    In the source code you have the termination point in line 2013
    of the (Include) program "LSMSY_ACTUALIZE_DATAF01".
    The termination is caused because exception "CX_SY_REF_IS_INITIAL" occurred in
    procedure "UPDATE_HOST_LCR" "(FORM)", but it was neither handled locally nor
     declared
    in the RAISING clause of its signature.
    The procedure is in program "SAPLSMSY_ACTUALIZE_DATA "; its source code begins
     in line
    1983 of the (Include program "LSMSY_ACTUALIZE_DATAF01 ".
Source Code Extract
Line  SourceCde
1983 FORM UPDATE_HOST_LCR  USING    IV_HOST STRUCTURE SMSY_HOST.
1984
1985   DATA:
1986         ACCESSOR        TYPE REF TO CL_SLD_ACCESSOR,
1987         VALUE           TYPE STRING,
1988         VALUE1          TYPE STRING,
1989         EX              TYPE REF TO CX_SLD_API_EXCEPTION,
1990         T_INAMES        TYPE SLD_T_STRING,
1991         INSTREF         TYPE REF TO CL_SLD_CIM_INSTANCE,
1992         SYSTREF         TYPE REF TO CL_SLD_CIM_INSTANCE,
1993         CLNTREF         TYPE REF TO CL_SLD_CIM_INSTANCE,
1994         LINKREF         TYPE REF TO CL_SLD_CIM_INSTANCE,
1995         INSTHANDLE      TYPE STRING,
1996         SYSTHANDLE      TYPE STRING,
1997         CLNTHANDLE      TYPE STRING,
1998         LINKHANDLE      TYPE STRING,
1999         T_KEYPROP       TYPE SLD_T_VALUELIST,
2000         I               TYPE I,
2001         PROPLIST        TYPE SLD_T_VALUELIST,
2002         PROPERTY        TYPE SLD_S_VALUELIST,
2003         FILTER          TYPE REF TO CL_SLD_FILTER.
2004
2005   DATA STRING          TYPE STRING.
2006   DATA IV_SYSTEM       TYPE SMSY_SYSTEM_SAP.
2007
2008   GET_SLD_TOP_INFO.
2009
2010 * Test the connection to the SLD server:
2011   TRY.
2012
>>>>>       ACCESSOR->PING( ).
2014
2015     CATCH CX_SLD_API_EXCEPTION INTO EX.
2016       VALUE = EX->GET_TEXT( ).
2017       MSGMACRO 'SCDT_LIS_IF' 'E' 11 'LCR_ERROR'.
2018   ENDTRY.
2019
2020
2021 * Catch all exceptions potentially triggered by the API:
2022   TRY.
2023
2024
2025 *   Create a new instance representation object for class SAP_BCSystem.
2026 *   If an accessor object is supplied in the constructor, the object
2027 *   reference of the representation can be used in other accessor
2028 *   methods.
2029       CREATE OBJECT SYSTREF
2030         EXPORTING
2031           CLASSNAME      = 'SAP_ComputerSystem'
2032           ACCESSOR       = ACCESSOR.
I am already at the latest support package i.e13
Regards
Anthony

Hi Anthony
  Is your problem solved . I M facing the same problem . I found another thread which is suggesting to follow SAP note 1042815. But it seems that we need to change Some standard include to get it fixed .
Does SAP suggest to change their own program .
Waiting for your reply .

Similar Messages

  • Portal Runtime Error while creating  new system in portal content

    Hi
      Can anyone  solve my problem, i am geting error while creating new system in p ortal content
    Portal Runtime Error
    An exception occurred while processing a request for :
    iView : pcd:portal_content/com.sap.pct/admin.templates/iviews/editors/com.sap.portal.templateSelection
    Component Name : com.sap.portal.admin.templateselectionwizard.default
    com/sap/portal/iviewserver/cache/OClass.
    Exception id: 11:29_26/12/06_0014_5891950
    See the details for the exception ID in the log file

    Hi,
    Check this link for creating system object
    http://help.sap.com/bp_epv260/EP_EN/documentation/EP/N03_BB_InstallGuide_EN_US.doc
    Regards
    Arun

  • RUNTIME ERROR WHILE CREATING NEW SYSTEM IN EP6

    Hi
    Can anyone solve my problem, i am geting error while creating new system PORTAL FOR to connect biw 3.5 system
    Portal Runtime Error
    An exception occurred while processing a request for :
    iView : pcd:portal_content/com.sap.pct/admin.templates/iviews/editors/com.sap.portal.templateSelection
    Component Name : com.sap.portal.admin.templateselectionwizard.default
    com/sap/portal/iviewserver/cache/OClass.
    Exception id: 11:29_26/12/06_0014_5891950
    See the details for the exception ID in the log file
    thanks in advance
    Rock

    hi,
    check the log file and let me the the error.
    manish

  • Error in Adding new vritual machine server to HaA cluster ???

    Hi
    when i adding new Server to my cluster i see this error
    Check prerequisites to add server (192.168.20.253) to server pool (karkas) succeed
    2009-11-29 12:16:33     Check prerequisites to add server (192.168.20.253) to server pool (karkas) succeed
    2009-11-29 12:16:46     During adding servers ([192.168.20.253]) to server pool (karkas), Cluster setup failed: (OVM-1011 OVM Manager communication with 192.168.20.254 for operation HA Setup for Oracle VM Agent 2.2.0 failed: errcode=50006, errmsg=Do 'clusterm_init_root_sr' on servers ('192.168.20.253') failed. )
    but when edited again see solved problem but not HA feature work correctly(when shutdown server pool virtual machine is goes down )
    i test is with nfs server but not work i user iscsci target on RHEL5 for create iscsi server
    i see ha work correctly same az this
    2009-11-29 12:25:44     Check prerequisites to add server (192.168.20.253) to server pool (karkas) succeed
    2009-11-29 12:25:50     Check prerequisites to add server (192.168.20.253) to server pool (karkas) succeed
    Select     Server Pool Name     Status     High Availability Status     Servers     Users     Logs
    Select     karkas     Active     Enabled     Total: 2     Total: 1     View Logs
    and no error in /var/log/ovs/*.log
    but when add new server i see in status "error in adding server "" and when edited again see server add and active state
    1-i have no ocfs2 partition on my machine use iscsi initiator
    2-all server use root cluster id /var/ovs/mount/disk_id
    3-all permission set for everybody and 777
    any idea for solve this problem
    thanks

    hi
    and very thanks for your reply
    every this work good
    [root@OVS2-253-32 ~]# service o2cb online
    Starting O2CB cluster ocfs2: OK
    [root@OVS2-253-32 ~]# service o2cb start
    Starting O2CB cluster ocfs2: OK
    [root@OVS2-253-32 ~]#
    but see :
         During adding servers ([192.168.20.253]) to server pool (jojo), Cluster setup failed: (OVM-1011 OVM Manager communication with 192.168.20.254 for operation HA Setup for Oracle VM Agent 2.2.0 failed: errcode=50006, errmsg=Do 'clusterm_init_root_sr' on servers ('192.168.20.253') failed. )
    Select     Server Host/IP     Server Name     Server Type     Status     Server Location     Server Pool Name     Logs
    Select     192.168.20.254     254     Server Pool Master,Utility Server,Virtual Machine Server     Active          jojo     View Logs
    Select     192.168.20.253     253     Virtual Machine Server     Error          jojo     View Logs
    but edit this server work fine. i use doc in step by step configure and no error occur in configuration but still see this error on adding new server and HA can't works correctly (only when i power off virtual quest machine after 15 second this server goes up and live migration not work correctly )when i shutting down one virtual machine server guest still wait for powering up this server
    ocfs2 kernel module load correctly
    cat /var/log/ovs-agent/ovs_root.log
    StackTrace:
    File "/opt/ovs-agent-2.3/OVSXCluster.py", line 115, in clusterm_init_root_sr
    sr.initialize()
    File "/opt/ovs-agent-2.3/_storage/OVSFileSR.py", line 127, in initialize
    self.sp.mount(mp)
    File "/opt/ovs-agent-2.3/_storage/plugins/OVSFileSP.py", line 209, in mount
    fs_spec = self.get_fs_spec()
    File "/opt/ovs-agent-2.3/_storage/plugins/OVSFileSP.py", line 184, in get_fs_spec
    tgt_dev = get_dev_spec(self.fs_uuid, self.fs_spec)
    File "/opt/ovs-agent-2.3/_storage/plugins/OVSFileSP.py", line 82, in get_dev_spec
    raise Exception("No device found: dev_uuid=%s" % dev_uuid)
    are you have any idea for solve this problem ???
    very thanks

  • Can't open PDFs, Initially received runtime error,updated Reader - new error Adobe Reader has stopped working, uninstalled re-installed same error message Adobe Reader has stopped working

    Can't open PDFs, Initially received runtime error,updated Reader - new error Adobe Reader has stopped working, uninstalled re-installed same error message Adobe Reader has stopped working

    Assuming that you are in Win (which you haven't said), you can try using this tool to first remove all traces of previous versions of Reader:
    http://labs.adobe.com/downloads/acrobatcleaner.html
    Then, download the full offline Reader installer from 
    http://get.adobe.com/reader/enterprise/
    and run it immediately after restarting your computer.

  • Runtime error while executing New Hire action in PA40

    Hi All,i am getting short dump while executing PA40 for new hire action typecan anyone look into this and guide as i am new to HCMNote: getting dump only for one user id for rest all other user id i am not getting dump.
    Category               ABAP Programming Error                                                      
    Runtime Errors         SYNTAX_ERROR                                                                
    ABAP Program           /1PAPAXX/HDR_21000A                                                         
    Application Component  Not Assigned                                                                
    Date and Time          21.08.2014 14:07:03                                                         
    Short text                                                                                       
        Syntax error in program "/1PAPAXX/HDR_21000A ".                                              
    What happened?                                                                                   
        Error in the ABAP Application Program                                                        
        The current ABAP program "SAPFP50M" had to be terminated because it has                      
        come across a statement that unfortunately cannot be executed.                               
        The following syntax error occurred in program "/1PAPAXX/HDR_21000A " in                     
        include "/1PAPAXX/HDR_21000AO01 " in                                                        
        line 52:                                                                                     
        ""LV_LENGTH" has already been declared"                                                      
        The include has been created and last changed by:                                            
        Created by: "HCM04 "                                                                         
        Last changed by: "HCM03 "                                                                    
        Error in the ABAP Application Program                                                        
        The current ABAP program "SAPFP50M" had to be terminated because it has                      
        come across a statement that unfortunately cannot be executed.                               
    What can you do?                                                                                 
        Please eliminate the error by performing a syntax check                                      
        (or an extended program check) on the program "/1PAPAXX/HDR_21000A ".                        
        You can also perform the syntax check from the ABAP Editor.                                  
        If the problem persists, proceed as follows:                                                 
        Note down which actions and inputs caused the error.                                         
        To process the problem further, contact you SAP system                                       
        administrator.                                                                               
        Using Transaction ST22 for ABAP Dump Analysis, you can look                                  
        at and manage termination messages, and you can also                                         
        keep them for a long time.                                                                   
    Error analysis                                                                                   
        The following syntax error was found in the program /1PAPAXX/HDR_21000A :                    
        ""LV_LENGTH" has already been declared"                                                      
    How to correct the error                                                                         
        Probably the only way to eliminate the error is to correct the program.                      
        If you cannot solve the problem yourself and want to send an error                           
        notification to SAP, include the following information:                                      
        1. The description of the current problem (short dump)                                       
           To save the description, choose "System->List->Save->Local File                           
        (Unconverted)".                                                                              
        2. Corresponding system log                                                                  
           Display the system log by calling transaction SM21.                                       
           Restrict the time interval to 10 minutes before and five minutes                          
        after the short dump. Then choose "System->List->Save->Local File                            
        (Unconverted)".                                                                              
        3. If the problem occurs in a problem of your own or a modified SAP                          
        program: The source code of the program                                                      
           In the editor, choose "Utilities->More                                                    
        Utilities->Upload/Download->Download".                                                       
        4. Details about the conditions under which the error occurred or which                      
        actions and input led to the error.                                                          
    System environment                                                                               
        SAP Release..... 731                                                                         
        SAP Basis Level. 0007                                                                        
        Application server... "dc-ds-erp"                                                            
        Network address...... "172.16.23.111"                                                        
        Operating system..... "Linux"                                                                
        Release.............. "3.0.13-0.27-default"                                                  
        Hardware type........ "x86_64"                                                               
        Character length.... 16 Bits                                                                 
        Pointer length....... 64 Bits                                                                
        Work process number.. 1                                                                      
        Shortdump setting.... "full"                                                                 
        Database server... "dc-ds-erp"                                                               
        Database type..... "ORACLE"                                                                  
        Database name..... "ECD"                                                                     
        Database user ID.. "SAPSR3"                                                                  
        Terminal.......... "NLC-HP"                                                                  
        Char.set.... "C"                                                                             
        SAP kernel....... 720                                                                        
        created (date)... "Sep 14 2013 06:16:24"                                                     
        create on........ "Linux GNU SLES-11 x86_64 cc4.3.4 use-pr130820"                            
        Database version. "OCI_112, 11.2.0.3.0, V1, default"                                         
        Patch level. 500                                                                             
        Patch text.. " "                                                                             
        Database............. "ORACLE 10.1.0.*.*, ORACLE 10.2.0.*.*, ORACLE 11.2.*.*.*"              
        SAP database version. 720                                                                    
        Operating system..... "Linux 2.6, Linux 3"                                                   
        Memory consumption                                                                           
        Roll.... 0                                                                                   
        EM...... 37708200                                                                            
        Heap.... 0                                                                                   
        Page.... 106496                                                                              
        MM Used. 4666776                                                                             
        MM Free. 3709976                                                                             
    User and Transaction                                                                             
        Client.............. 210                                                                     
        User................ "HCM03"                                                                 
        Language key........ "E"                                                                     
        Transaction......... "PA40 "                                                                 
        Transaction ID...... "53EF470299AB5D67E1000000AC10176F"                                      
        EPP Whole Context ID.... "005056A301D11EE48A9D08B337F884E3"                                  
        EPP Connection ID....... 00000000000000000000000000000000                                    
        EPP Caller Counter...... 0                                                                   
        Program............. "SAPFP50M"                                                              
        Screen.............. "MP000000 1000"                                                         
        Screen Line......... 3                                                                       
        Debugger Active..... "none"                                                                  
    Information on where terminated                                                                  
        Termination occurred in the ABAP program "SAPFP50M" - in                                     
        "GET_HEADER_WITH_TCLAS".                                                                    
        The main program was "MP000000 ".                                                            
        In the source code you have the termination point in line 146                                
        of the (Include) program "FP50MDHD".                                                         
    Source Code Extract                                                                              
    Line
    SourceCde                                                                                  
      116
      CALL FUNCTION 'HR_HEADER_GET'                                                            
      117
          EXPORTING                                                                            
      118
               DHDID                    = FHD_HID                                              
      119
               BEGDA                    = BEGDA                                                
      120
               TCLAS                    = TCLAS                                                
      121
    * Es wird nur einer der folgenden 3 Parameter benutzt.                                     
      122
    * Ausgewertet wird zunaechst MOLGA, dann P0001 dann PERNR.                                 
      123
    * Der erste der nicht initial ist wird ausgewertet.                                        
      124
    *           MOLGA                   =                                                      
      125
               P0001                    = P0001                                                
      126
               PERNR                    = PSPAR-PERNR                                          
      127
          IMPORTING                                                                            
      128
               PROG                     = HEADER_PROG                                          
      129
               DNUM                     = HEADER_DYNNR                                         
      130
           EXCEPTIONS                                                                          
      131
                HEADER_DEACTIVATED          = 1                                                
      132
                HEADER_UNKNOWN              = 2                                                
      133
                HEADER_GENERATE_DEACTIVATED = 3                                                
      134
                HEADER_GENERATE_FAILED      = 4                                                
      135
                INTERNAL_ERROR              = 5                                                
      136
                OTHERS                      = 6.                                               
      137
      138
      IF NOT SY-SUBRC IS INITIAL.                                                              
      139
    * Bei Problemen gibt's eben ein leeres Dynpro.                                             
      140
        HEADER_PROG = 'SAPMP50A'.                                                              
      141
        HEADER_DYNNR = '0090'.                                                                 
      142
      ELSE.  " NOT sy-subrc IS INITIAL.                                   "                    
      143
    * Dann setzen wir jetzt auch noch das Datum fest.                                          
      144
        PERFORM HEADER_BEGDA_SET IN PROGRAM (HEADER_PROG) USING BEGDA.                         
      145
    * Und schalten auf Uebergabe der PERNR mit globalen Variablen.                             
    >>>>>
        PERFORM HEADER_LAZY_ON IN PROGRAM (HEADER_PROG).                                       
      147
      ENDIF.  " (ELSE) NOT sy-subrc IS INITIAL.                           "                    
      148
    * Merken wie der Header heisst. Damit MPPERS00 sich erinnern kann.                         
      149
    * Wird mit Einfuehrung des Headerobjekts obsolet.                                          
      150
      PERFORM REMEMBER_HEADER  "                             "XYVPH4K015649                    
      151
        USING HEADER_PROG HEADER_DYNNR 'S'.  "               "XYVPH4K015649                    
      152
    ENDFORM.                                                                                   
      153
      154
    *       FORM RE588I                                                   *                    
      155
      156
      157
      158
    *  -->  T588I_DHDID                                                   *                    
      159
    *  -->  T588I_MOLGA                                                   *                    
      160
    *  -->  T588I_TCLAS                         

    Implement SAP Note 1004280.. your issue if fixed
    If your issue is resolved request you to close the thread or else free feel to touch base
    BR
    Anil

  • Error while adding new function to HRMS fast formula

    Hi,
    when i m trying to add a new external function to BG_ABSENCE_DURATION formula, it is getting verified successfully. But when i m trying to save it, it is giving error as below:
    APP-FF-33980: Internal error.
    A compilation error has been detected while attempting to generate package FFP294_01011900
    Please consult your system administrator.
    I have compliled the package successfully using TOAD and registered the function using Define Function form. Please help me to resolve this problem.

    Usually this error occurs when the called function has not been properly defined. You say you have defined it, but check that the parameters are the same in the FF call to the function and the function itself.
    If that is OK, I would then create a new FF with all the same code and try to save that
    Finally, if all else fails, check MetaLink as thee are a few references to other problems in this area which require patches to solve them.
    Regards
    Tim

  • Why does content.setLayout()  generate runtime error?

    Hi all.
    Can some guru please explain to me why this code is generating following runtime error:
    java.lang.Error: Do not use SampleView.setLayout() use SampleView.getContentPane().setLayout() instead
         at javax.swing.JApplet.createRootPaneException(Unknown Source)
         at javax.swing.JApplet.setLayout(Unknown Source)
    This is the top level TopLevelMenu.java which calls SampleView.java
    public void init()
        // java code
        public void actionPerformed(ActionEvent aevt)
            SampleView sampleview = new SampleView();  // <-- OKAY so far
    }And here is the snippet for SampleView.java
    public class SampleView extends JApplet
        public SampleView()
          Container content = getContentPane();
          content.setLayout(newBorderLayout());  // <-- RUNTIME ERROR HERE
    }Instead of just correcting my code, could you please explain to me what is wrong with it?
    TIA :-)

    Thanks, but that was a typo, I'm still getting this runtime error!
    I tried several different ways e.g.
    public void init()
        Container content = getContentPane();
        JPanel headerPane = new JPanel(new BorderLayout());
        SampleView sampleview = new SampleView();
        headerPane.add(sampleview, BorderLayout.NORTH);
        content.add(headerPane);
    public SampleView()
      // etc
      return;
    }throws the same runtime error! Very puzzled!

  • Error whille adding new mapping into FDM

    Hi,
    When i am trying to add new account mapping into account(The account already having 4000 mappings already) in FDM am getting error like, "Error: Error adding new record.
    Detail: An invalid value was entered for the dimension (Customer)" .
    What should I correct for this situation?
    Thanks so much!!!

    Loading a target system member that does not exist in the target application is only going to cause you an error when loading to the target system. I would not recommend this approach. Either update the maps to a valid member or add the member to the target application.

  • TableSorter errors when adding new data

    so here is the deal:
    I am using the TableSorter.java helper class with DefaultTableModel
    from: http://java.sun.com/docs/books/tutorial/uiswing/components/table.html
    It works great when the data is static and I get it for the first time. however, occationally, when adding new data I get a NullPointerException error.
    in use:
    DefaultTableModel.addRow()
    DefaultTableModel.removeRow() and
    DefaultTableModel.insertRow() methods.
    Error:
    java.lang.ArrayIndexOutOfBoundsException: 5
         at com.shared.model.TableSorter.modelIndex(TableSorter.java:294)
         at com.shared.model.TableSorter.getValueAt(TableSorter.java:340)
         at javax.swing.JTable.getValueAt(Unknown Source)
         at javax.swing.JTable.prepareRenderer(Unknown Source)...
    code problem I:
        public Object getValueAt(int row, int column)
            return tableModel.getValueAt(modelIndex(row), column);
        }code problem II:
        public int modelIndex(int viewIndex)
                 return getViewToModel()[viewIndex].modelIndex;     
        }TableSroter class:
    package com.shared.model;
    import java.awt.*;
    import java.awt.event.*;
    import java.util.*;
    import java.util.List;
    import javax.swing.*;
    import javax.swing.event.TableModelEvent;
    import javax.swing.event.TableModelListener;
    import javax.swing.table.*;
    * TableSorter is a decorator for TableModels; adding sorting
    * functionality to a supplied TableModel. TableSorter does
    * not store or copy the data in its TableModel; instead it maintains
    * a map from the row indexes of the view to the row indexes of the
    * model. As requests are made of the sorter (like getValueAt(row, col))
    * they are passed to the underlying model after the row numbers
    * have been translated via the internal mapping array. This way,
    * the TableSorter appears to hold another copy of the table
    * with the rows in a different order.
    * <p/>
    * TableSorter registers itself as a listener to the underlying model,
    * just as the JTable itself would. Events recieved from the model
    * are examined, sometimes manipulated (typically widened), and then
    * passed on to the TableSorter's listeners (typically the JTable).
    * If a change to the model has invalidated the order of TableSorter's
    * rows, a note of this is made and the sorter will resort the
    * rows the next time a value is requested.
    * <p/>
    * When the tableHeader property is set, either by using the
    * setTableHeader() method or the two argument constructor, the
    * table header may be used as a complete UI for TableSorter.
    * The default renderer of the tableHeader is decorated with a renderer
    * that indicates the sorting status of each column. In addition,
    * a mouse listener is installed with the following behavior:
    * <ul>
    * <li>
    * Mouse-click: Clears the sorting status of all other columns
    * and advances the sorting status of that column through three
    * values: {NOT_SORTED, ASCENDING, DESCENDING} (then back to
    * NOT_SORTED again).
    * <li>
    * SHIFT-mouse-click: Clears the sorting status of all other columns
    * and cycles the sorting status of the column through the same
    * three values, in the opposite order: {NOT_SORTED, DESCENDING, ASCENDING}.
    * <li>
    * CONTROL-mouse-click and CONTROL-SHIFT-mouse-click: as above except
    * that the changes to the column do not cancel the statuses of columns
    * that are already sorting - giving a way to initiate a compound
    * sort.
    * </ul>
    * <p/>
    * This is a long overdue rewrite of a class of the same name that
    * first appeared in the swing table demos in 1997.
    * @author Philip Milne
    * @author Brendon McLean
    * @author Dan van Enckevort
    * @author Parwinder Sekhon
    * @version 2.0 02/27/04
    public class TableSorter extends AbstractTableModel
        protected TableModel tableModel;
        public static final int DESCENDING = -1;
        public static final int NOT_SORTED = 0;
        public static final int ASCENDING = 1;
        private static Directive EMPTY_DIRECTIVE = new Directive(-1, NOT_SORTED);
        public static final Comparator COMPARABLE_COMAPRATOR = new Comparator()
            public int compare(Object o1, Object o2)
                return ((Comparable) o1).compareTo(o2);
        public static final Comparator LEXICAL_COMPARATOR = new Comparator()
            public int compare(Object o1, Object o2)
                return o1.toString().compareTo(o2.toString());
        private Row[] viewToModel;
        private int[] modelToView;
        private JTableHeader tableHeader;
        private MouseListener mouseListener;
        private TableModelListener tableModelListener;
        private Map columnComparators = new HashMap();
        private List sortingColumns = new ArrayList();
        public TableSorter()
            this.mouseListener = new MouseHandler();
            this.tableModelListener = new TableModelHandler();
        public TableSorter(TableModel tableModel)
            this();
            setTableModel(tableModel);
        public TableSorter(TableModel tableModel, JTableHeader tableHeader)
            this();
            setTableHeader(tableHeader);
            setTableModel(tableModel);
        private void clearSortingState()
            viewToModel = null;
            modelToView = null;
        public TableModel getTableModel()
            return tableModel;
        public void setTableModel(TableModel tableModel)
            if (this.tableModel != null)
                this.tableModel.removeTableModelListener(tableModelListener);
            this.tableModel = tableModel;
            if (this.tableModel != null)
                this.tableModel.addTableModelListener(tableModelListener);
            clearSortingState();
            fireTableStructureChanged();
        public JTableHeader getTableHeader()
            return tableHeader;
        public void setTableHeader(JTableHeader tableHeader)
            if (this.tableHeader != null)
                this.tableHeader.removeMouseListener(mouseListener);
                TableCellRenderer defaultRenderer = this.tableHeader.getDefaultRenderer();
                if (defaultRenderer instanceof SortableHeaderRenderer)
                    this.tableHeader.setDefaultRenderer(((SortableHeaderRenderer) defaultRenderer).tableCellRenderer);
            this.tableHeader = tableHeader;
            if (this.tableHeader != null)
                this.tableHeader.addMouseListener(mouseListener);
                this.tableHeader.setDefaultRenderer
                        new SortableHeaderRenderer(this.tableHeader.getDefaultRenderer())
        public boolean isSorting()
            return sortingColumns.size() != 0;
        private Directive getDirective(int column)
            for (int i = 0; i < sortingColumns.size(); i++)
                Directive directive = (Directive)sortingColumns.get(i);
                if (directive.column == column)
                    return directive;
            return EMPTY_DIRECTIVE;
        public int getSortingStatus(int column)
            return getDirective(column).direction;
        private void sortingStatusChanged()
            clearSortingState();
            fireTableDataChanged();
            if (tableHeader != null)
                tableHeader.repaint();
        public void setSortingStatus(int column, int status)
            Directive directive = getDirective(column);
            if (directive != EMPTY_DIRECTIVE)
                sortingColumns.remove(directive);
            if (status != NOT_SORTED)
                sortingColumns.add(new Directive(column, status));
            sortingStatusChanged();
        protected Icon getHeaderRendererIcon(int column, int size)
            Directive directive = getDirective(column);
            if (directive == EMPTY_DIRECTIVE)
                return null;
            return new Arrow(directive.direction == DESCENDING, size, sortingColumns.indexOf(directive));
        private void cancelSorting()
            sortingColumns.clear();
            sortingStatusChanged();
        public void setColumnComparator(Class type, Comparator comparator)
            if (comparator == null)
                columnComparators.remove(type);
            else
                columnComparators.put(type, comparator);
        protected Comparator getComparator(int column)
            Class columnType = tableModel.getColumnClass(column);
            Comparator comparator = (Comparator) columnComparators.get(columnType);
            if (comparator != null)
                return comparator;
            if (Comparable.class.isAssignableFrom(columnType))
                return COMPARABLE_COMAPRATOR;
            return LEXICAL_COMPARATOR;
        private Row[] getViewToModel()
            if (viewToModel == null)
                int tableModelRowCount = tableModel.getRowCount();
                viewToModel = new Row[tableModelRowCount];
                for (int row = 0; row < tableModelRowCount; row++)
                    viewToModel[row] = new Row(row);
                if (isSorting())
                    Arrays.sort(viewToModel);
            return viewToModel;
        public int modelIndex(int viewIndex)
                 return getViewToModel()[viewIndex].modelIndex;     
        private int[] getModelToView()
            if (modelToView == null)
                int n = getViewToModel().length;
                modelToView = new int[n];
                for (int i = 0; i < n; i++)
                    modelToView[modelIndex(i)] = i;
            return modelToView;
        // TableModel interface methods
        public int getRowCount()
            return (tableModel == null) ? 0 : tableModel.getRowCount();
        public int getColumnCount()
            return (tableModel == null) ? 0 : tableModel.getColumnCount();
        public String getColumnName(int column)
            return tableModel.getColumnName(column);
        public Class getColumnClass(int column)
            return tableModel.getColumnClass(column);
        public boolean isCellEditable(int row, int column)
            return tableModel.isCellEditable(modelIndex(row), column);
        public Object getValueAt(int row, int column)
            return tableModel.getValueAt(modelIndex(row), column);
        public void setValueAt(Object aValue, int row, int column)
            tableModel.setValueAt(aValue, modelIndex(row), column);
        // Helper classes
        private class Row implements Comparable
            private int modelIndex;
            public Row(int index)
                this.modelIndex = index;
            public int compareTo(Object o)
                int row1 = modelIndex;
                int row2 = ((Row) o).modelIndex;
                for (Iterator it = sortingColumns.iterator(); it.hasNext();)
                    Directive directive = (Directive) it.next();
                    int column = directive.column;
                    Object o1 = tableModel.getValueAt(row1, column);
                    Object o2 = tableModel.getValueAt(row2, column);
                    int comparison = 0;
                    // Define null less than everything, except null.
                    if (o1 == null && o2 == null)
                        comparison = 0;
                    } else if (o1 == null)
                        comparison = -1;
                    } else if (o2 == null)
                        comparison = 1;
                    } else {
                        comparison = getComparator(column).compare(o1, o2);
                    if (comparison != 0)
                        return directive.direction == DESCENDING ? -comparison : comparison;
                return 0;
        private class TableModelHandler implements TableModelListener
            public void tableChanged(TableModelEvent e)
                // If we're not sorting by anything, just pass the event along.            
                if (!isSorting())
                    clearSortingState();
                    fireTableChanged(e);
                    return;
                // If the table structure has changed, cancel the sorting; the            
                // sorting columns may have been either moved or deleted from            
                // the model.
                if (e.getFirstRow() == TableModelEvent.HEADER_ROW)
                    cancelSorting();
                    fireTableChanged(e);
                    return;
                // We can map a cell event through to the view without widening            
                // when the following conditions apply:
                // a) all the changes are on one row (e.getFirstRow() == e.getLastRow()) and,
                // b) all the changes are in one column (column != TableModelEvent.ALL_COLUMNS) and,
                // c) we are not sorting on that column (getSortingStatus(column) == NOT_SORTED) and,
                // d) a reverse lookup will not trigger a sort (modelToView != null)
                // Note: INSERT and DELETE events fail this test as they have column == ALL_COLUMNS.
                // The last check, for (modelToView != null) is to see if modelToView
                // is already allocated. If we don't do this check; sorting can become
                // a performance bottleneck for applications where cells 
                // change rapidly in different parts of the table. If cells
                // change alternately in the sorting column and then outside of            
                // it this class can end up re-sorting on alternate cell updates -
                // which can be a performance problem for large tables. The last
                // clause avoids this problem.
                int column = e.getColumn();
                if (e.getFirstRow() == e.getLastRow()
                        && column != TableModelEvent.ALL_COLUMNS
                        && getSortingStatus(column) == NOT_SORTED
                        && modelToView != null)
                    int viewIndex = getModelToView()[e.getFirstRow()];
                    fireTableChanged(new TableModelEvent(TableSorter.this,
                                                         viewIndex, viewIndex,
                                                         column, e.getType()));
                    return;
                // Something has happened to the data that may have invalidated the row order.
                clearSortingState();
                fireTableDataChanged();
                return;
        private class MouseHandler extends MouseAdapter
            public void mouseClicked(MouseEvent e)
                JTableHeader h = (JTableHeader) e.getSource();
                TableColumnModel columnModel = h.getColumnModel();
                int viewColumn = columnModel.getColumnIndexAtX(e.getX());
                int column = columnModel.getColumn(viewColumn).getModelIndex();
                if (column != -1)
                    int status = getSortingStatus(column);
                    if (!e.isControlDown())
                        cancelSorting();
                    // Cycle the sorting states through {NOT_SORTED, ASCENDING, DESCENDING} or
                    // {NOT_SORTED, DESCENDING, ASCENDING} depending on whether shift is pressed.
                    status = status + (e.isShiftDown() ? -1 : 1);
                    status = (status + 4) % 3 - 1; // signed mod, returning {-1, 0, 1}
                    setSortingStatus(column, status);
        private static class Arrow implements Icon
            private boolean descending;
            private int size;
            private int priority;
            public Arrow(boolean descending, int size, int priority)
                this.descending = descending;
                this.size = size;
                this.priority = priority;
            public void paintIcon(Component c, Graphics g, int x, int y)
                Color color = c == null ? Color.GRAY : c.getBackground();            
                // In a compound sort, make each succesive triangle 20%
                // smaller than the previous one.
                int dx = (int)(size/2*Math.pow(0.8, priority));
                int dy = descending ? dx : -dx;
                // Align icon (roughly) with font baseline.
                y = y + 5*size/6 + (descending ? -dy : 0);
                int shift = descending ? 1 : -1;
                g.translate(x, y);
                // Right diagonal.
                g.setColor(color.darker());
                g.drawLine(dx / 2, dy, 0, 0);
                g.drawLine(dx / 2, dy + shift, 0, shift);
                // Left diagonal.
                g.setColor(color.brighter());
                g.drawLine(dx / 2, dy, dx, 0);
                g.drawLine(dx / 2, dy + shift, dx, shift);
                // Horizontal line.
                if (descending) {
                    g.setColor(color.darker().darker());
                } else {
                    g.setColor(color.brighter().brighter());
                g.drawLine(dx, 0, 0, 0);
                g.setColor(color);
                g.translate(-x, -y);
            public int getIconWidth()
                return size;
            public int getIconHeight()
                return size;
        private class SortableHeaderRenderer implements TableCellRenderer
            private TableCellRenderer tableCellRenderer;
            public SortableHeaderRenderer(TableCellRenderer tableCellRenderer)
                this.tableCellRenderer = tableCellRenderer;
            public Component getTableCellRendererComponent(JTable table,
                                                           Object value,
                                                           boolean isSelected,
                                                           boolean hasFocus,
                                                           int row,
                                                           int column)
                Component c = tableCellRenderer.getTableCellRendererComponent(table,
                        value, isSelected, hasFocus, row, column);
                if (c instanceof JLabel) {
                    JLabel l = (JLabel) c;
                    l.setHorizontalTextPosition(JLabel.LEFT);
                    int modelColumn = table.convertColumnIndexToModel(column);
                    l.setIcon(getHeaderRendererIcon(modelColumn, l.getFont().getSize()));
                return c;
        private static class Directive
            private int column;
            private int direction;
            public Directive(int column, int direction)
                this.column = column;
                this.direction = direction;
    }any input will be appreciated.
    thanks
    Peter

    The code you posted doesn't help us at all. Its just a duplicate of the code from the tutorial. The custom code is what you have written. For example do you update the TableModel from the Event Thread? Do you update the SortModel or the DefaultTableModel? If you actually provide your test code and somebody has already downloaded the sort classes, then maybe they will test your code against the classes. But I doubt if people will download the sort classes and create a test program just to see if they can duplicate your results (at least I know I'm not about to).

  • Error while Creating New System

    Hi,
    I am working on the HANA Sandbox and getting the following Error when I am trying to create a new system.
    u201CLicense Key could not be installedu201D.
    Regards,
    Surya Kumar

    To revert to the new snapshot, if you don't see the red bar...follow this steps...
    Go to Actions (Just below Logout) and press Revert Now.
    You will be redirected to the snapshot.
    Greetings,
    Blag.

  • Getting Runtime error while adding Second page in Smartform.

    I added 2 pages in smartform. When I worked with single page. smartform working properly. Now I added one more page(i.e Second page) I am getting runtime error.  ("The current ABAP/4 program encountered an unexpected
    situation".   A RAISE statement in the program "SAPLSTXBC" raised the exception
    condition "ERROR".)   When I debug this standard program Something width problem getting on line number 110. Both width not matched so program raising exception. Can you please tell me to solve this problem what changes will I do in my smartform?

    Please let me know the details of each page.
    Error can occur in these cases.
    1) You copied the first page to second. and later you change the width of second page
    2) You created the second page and there is template in second page. each column width is not matching with the total width of the template.
    3) windows width is greater than the page width
    Please have a look.
    Regards,
    Nikhil
    Edited by: Nikhil V Kumar on Jul 27, 2010 12:16 PM

  • Gettin a portal runtime error when adding iviews in web page composer

    we are getting the Following error when we try to add a iview in page builder .we have done the configurations as per the documentation ((http://help.sap.com/saphelp_nw70/helpdata/en/45/3fe7b4f34d4a18e10000000a114a6b/frameset.htm).and will appreciate any help on this issue .
    Portal Runtime Error
    An exception occurred while processing your request
    Exception id: 08:09_31/10/07_0015_15308650
    See the details for the exception ID in the log file.
    #1.5 #00145ECC9C67007E000000190000117800043DC0D68F6E39#1193798349688#com.sap.portal.prt.runtime#sap.com/irj#com.sap.portal.prt.runtime#myadmin#5872##myportalci.keells_JPP_15308650#myadmin#015ef900875a11dc8a3700145ecc9c67#Thread[PRT-Async 2,5,PRT-Async]##0#0#Error##Java###08:09_31/10/07_0015_15308650
    [EXCEPTION]
    #1#com.sapportals.portal.prt.runtime.PortalRuntimeException: Can&\#39;t read the prameter &\#39;siteString&\#39; from the PCD.
         at com.sapportals.portal.httpconnectivity.urliviews.runtime.URLIView.checkPCDVal(URLIView.java:631)
         at com.sapportals.portal.httpconnectivity.urliviews.runtime.URLIView.readFromPCD(URLIView.java:528)
         at com.sapportals.portal.httpconnectivity.urliviews.runtime.URLIView.doContent(URLIView.java:326)
         at com.sapportals.portal.prt.component.AbstractPortalComponent.service(AbstractPortalComponent.java:149)
         at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
         at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
         at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:189)
         at com.sapportals.portal.prt.core.async.AsyncPortalComponentResponse.include(AsyncPortalComponentResponse.java:355)
         at com.sapportals.portal.prt.core.async.AsyncPortalComponentResponse.include(AsyncPortalComponentResponse.java:310)
         at com.sap.nw.wpc.runtime.AbstractContainerComponent.doContent(AbstractContainerComponent.java:88)
         at com.sap.nw.wpc.runtime.ContainerComponent.doDesign(ContainerComponent.java:183)
         at sun.reflect.GeneratedMethodAccessor362.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at com.sapportals.portal.prt.component.AbstractPortalComponent.service(AbstractPortalComponent.java:134)
         at com.sapportals.portal.prt.component.CachablePortalComponent.service(CachablePortalComponent.java:273)
         at com.sapportals.portal.prt.core.PortalRequestManager.callPortalComponent(PortalRequestManager.java:328)
         at com.sapportals.portal.prt.core.PortalRequestManager.dispatchRequest(PortalRequestManager.java:136)
         at com.sapportals.portal.prt.core.async.AsyncIncludeRunnable$1$DoDispatchRequest.run(AsyncIncludeRunnable.java:375)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sapportals.portal.prt.core.async.AsyncIncludeRunnable.run(AsyncIncludeRunnable.java:388)
         at com.sapportals.portal.prt.core.async.ThreadContextRunnable.run(ThreadContextRunnable.java:164)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:729)
         at java.lang.Thread.run(Thread.java:534)

    Dear Prabash Balsuriya,
    I got similar issue while adding iView to WPC during public, can you elaborate how you solve this issue?
    Thanks.
    Regards,
    Weng

  • Runtime Errors DBIF_RSQL_TABLE_UNKNOWN in BW system

    Hi Guys,
    We refreshed BW system from production to sandbox. SGEN finished successfully.
    Now I am strucked at bdls. when i ran bdls i am getting below dump pls help me to resolve this.
    Runtime Errors         DBIF_RSQL_TABLE_UNKNOWN
    Date and Time          05.02.2008 08:32:09
    What happened?
         Error in ABAP application program.
         The current ABAP program "SBDLS31220080205083134" had to be terminated because
          one of the
         statements could not be executed.
         This is probably due to an error in the ABAP program.
    What can you do?
         Print out the error message (using the "Print" function)
         and make a note of the actions and input that caused the
         error.
         To resolve the problem, contact your SAP system administrator.
         You can use transaction ST22 (ABAP Dump Analysis) to view and administer
          termination messages, especially those beyond their normal deletion
         date.
         is especially useful if you want to keep a particular message.
    Error analysis
         An SAP Open SQL statement contains a table that does not exist in the
         database or is not listed in the ABAP Data Dictionary.
         The table is "/BI0/0100000086 " or another table that is accessed in the
          statement.
    How to correct the error
         Probably the only way to eliminate the error is to correct the program.
         Please check the entries in the system log (Transaction SM21).
         Internal call code.........: "[RSQL/READ//BI0/0100000086 ]"
         You may able to find an interim solution to the problem
         in the SAP note system. If you have access to the note system yourself,
         use the following search criteria:
         "DBIF_RSQL_TABLE_UNKNOWN" C
         "SBDLS31220080205083134" or "SBDLS31220080205083134"
         "RELEVANT_TABLES_DETERMINE"

    Hi Nani,
    check the temp tables like :
    EDP13
    EDP21
    EDPP
    Change source system entry to target system manually. Then try to rerun the BDLS.
    Thanks,
    Sanjay

  • Getting Runtime Error on SAP CRM  system TSV_ILLEGAL_REFERENCE

    Runtime Errors         TSV_ILLEGAL_REFERENCE
    Date and Time          07.03.2011 13:05:08
         Short text
              The reference to an internal table is destroyed.
         What happened?
              Error in the ABAP Application Program
              The current ABAP program "SAPLBUPA_SELECT" had to be terminated because it has
              come across a statement that unfortunately cannot be executed.
              The administration data for the access to an internal table can no
              longer be interpreted.
         What can you do?
              Note down which actions and inputs caused the error.
              To process the problem further, contact you SAP system
              administrator.
              Using Transaction ST22 for ABAP Dump Analysis, you can look
              at and manage termination messages, and you can also
              keep them for a long time.
         Error analysis
              This is probably an erro in program "SAPLBUPA_SELECT". The administration data
               for
              accessing an internal table was probably destroyed by a memory
              overwriter. Such a memory overwriter is usually caused by one of the
              following programming errors:
              1) A dynamic ASSIGN with too great an offset and/or length specification
                 was positioned beyond the end of the source field used in the ASSIGN.
                 In the next write access to the corresponding field symbol, the
                 system wrote past the limitis of the source field.
              2) A DO ... VARYING loop with an incorrect increment or too large a
                 number of passes can also be positioned beyond the limits of the
                 structure and be overwritten.
              3) In using the statement ASSIGN ... CASTING a memory area was
                 interpreted with a different type and consequently overwritten.
         How to correct the error
              Probably the only way to eliminate the error is to correct the program.
              If the error occures in a non-modified SAP program, you may be able to
              find an interim solution in an SAP Note.
              If you have access to SAP Notes, carry out a search with the following
              keywords:
              "TSV_ILLEGAL_REFERENCE" " "
              "SAPLBUPA_SELECT" or "LBUPA_SELECTU03"
              "BUP_BUT000_SELECT_WITH_GUID"
    How to resolve this issue, can u pls help me.
    Thanks & Regards,
    Rajasekhar Reddy P

    Hi Edmond,
    it's not the ume, it's the com.sap.portal.usermanagement.admin package.
    In order to redeploy it, go to following directory:
    <drive>\usr\sap\<SAPSID>\JC<instance number>\j2ee\cluster\server0 \apps\sap.com\irj\servlet_jsp\irj\root\WEB-INF\deployment\pcd
    look for the com.sap.portal.usermanagement.admin.par.bak, remove the suffix .bak and restart your engine.
    Don't know of this helps, but maybe it's worth a try.
    Regards, Karsten

Maybe you are looking for