psdi.app.assetcatalog

Class SpecificationMboSet

  • java.lang.Object
    • Field Detail

      • mboSetAttributeSearch

        public MboSetRemote mboSetAttributeSearch
        07-17112
      • dbUpper

        public java.lang.String dbUpper
      • currentClassSpecUseWithMbo

        public MboRemote currentClassSpecUseWithMbo
        PERFORMANCE TESTING: passing the ClassSpecUseWith, instead of re-fetch, used in assetcatalogservice.generatespecset
    • Constructor Detail

      • SpecificationMboSet

        public SpecificationMboSet(MboServerInterface ms)
                            throws java.rmi.RemoteException
        Throws:
        java.rmi.RemoteException
    • Method Detail

      • checkValueExists

        public boolean checkValueExists(java.lang.String attrName,
                                        java.lang.String attrValue)
                                 throws java.rmi.RemoteException,
                                        MXException
        Checks if there are records that meet the attrName, attrValue setQBE() command. If there are, return true; resetQbe to put the set into its original state.

        Specified by:
        checkValueExists in interface SpecificationMboSetRemote
        Parameters:
        attrName - the attribute name
        attrValue - the attribute value
        Returns:
        boolean true if there are records, false if not
        Throws:
        java.rmi.RemoteException
        MXException
        See Also:
        SpecificationMboSet.checkValueExists(String, String)
      • whereClauseOnAttrAndValues

        public java.lang.String whereClauseOnAttrAndValues(java.lang.String[][] attrAndValues,
                                                           java.lang.String classstructureid)
                                                    throws MXException,
                                                           java.rmi.RemoteException
        For Asset Catalog Search - returns a String to the caller. It loops thru the passed two dimensional array and produces a where clause to the caller. The two dimensional array holds the assetAttrIds and their values. It's contents look like the following:
        [0][0] = "assetattrid='SIZE'", [0][1]=" numvalue > 1.5"; IV81743: added section, so example if section is populated [0][4] = "section like '%SEC%'
        Specified by:
        whereClauseOnAttrAndValues in interface SpecificationMboSetRemote
        Parameters:
        attrAndValues - 2 dimentional array of assetAttrIds and their values
        classstructureid - the classstructureid
        Returns:
        String - resulting where clause
        Throws:
        MXException
        java.rmi.RemoteException
        See Also:
        SpecificationMboSet.whereClauseOnAttrAndValues(String[][], String)
      • whereClauseOnAttrAndValues

        public java.lang.String whereClauseOnAttrAndValues(java.lang.String[][] attrAndValues)
                                                    throws MXException,
                                                           java.rmi.RemoteException
        Throws:
        MXException
        java.rmi.RemoteException
      • getGeneratedDesc

        public java.lang.String getGeneratedDesc()
                                          throws MXException,
                                                 java.rmi.RemoteException
        Loops thru the current set and returns a concatinated string based on the corresponding classspec.ATTRDESCPREFIX, alnvalue/numvalue, and measureunit.abbreviation/or measureunitid. This method is needed for the description generation for item, locations, and asset.

        Specified by:
        getGeneratedDesc in interface SpecificationMboSetRemote
        Returns:
        String - A concated string obtained looping thru each indivisual spec.
        Throws:
        MXException
        java.rmi.RemoteException
        See Also:
        SpecificationMboSet.getGeneratedDesc()
      • canAdd

        public void canAdd()
                    throws MXException
        Cannot add a new specifictaion attribute if the owner does not have a classstructureid.
        Overrides:
        canAdd in class MboSet
        Throws:
        MXException
      • setAttributesSearchMboSet

        public void setAttributesSearchMboSet(MboSetRemote mboSet)
                                       throws MXException,
                                              java.rmi.RemoteException
        07-17112: set the mboset from the Classification Attribute Search
        Parameters:
        appMboSet, - the result set or appset from attribute search.
        Throws:
        MXException
        java.rmi.RemoteException
      • getAttributesSearchMboSet

        public MboSetRemote getAttributesSearchMboSet()
                                               throws MXException,
                                                      java.rmi.RemoteException
        07-17112: get the MboSet from which attribute search is launched
        Returns:
        Throws:
        MXException
        java.rmi.RemoteException
      • wasDescGenerated

        public boolean wasDescGenerated()
                                 throws MXException,
                                        java.rmi.RemoteException
        07-16935:description needs to be generated by one specification mbo
        Returns:
        Throws:
        MXException
        java.rmi.RemoteException
      • setDescGenerated

        public void setDescGenerated(java.lang.String desc)
                              throws MXException,
                                     java.rmi.RemoteException
        07-16935:description needs to be generated by one specification mbo
        Throws:
        MXException
        java.rmi.RemoteException
      • toCreateNewSpecRecordsInMainObject

        public boolean toCreateNewSpecRecordsInMainObject()
                                                   throws MXException,
                                                          java.rmi.RemoteException
        DO NOT OVERRIDE this method unless you need to. Currently, only JobTaskSpecSet and PDSpecSet overrides it. In most cases, the new specification recors created via AssetCatalogService.generateSpecSet(MboRemote) method are created in the relationship where the parent is the referenced object which for the most cases is the main object. However, there are cases in JOBTASKSPEC, and PDSEPC where the referenced object and the main objects are different.
        Returns:
        Throws:
        MXException
        java.rmi.RemoteException
      • isLinear

        public boolean isLinear()
                         throws MXException,
                                java.rmi.RemoteException
        08-13571: DO NOT OVERRIDE this unless your SpecificationSet is related to LINEAR functionality. In core MAXIMO, only FEATURESPEC, ASSETSPEC, and ASSETFEATURESPEC are linear. Default is false for other specifications.
        Returns:
        Throws:
        MXException
        java.rmi.RemoteException
      • getGeneratedDescWithQbe

        public java.lang.String getGeneratedDescWithQbe(MboSetRemote dbRelationshipSet)
                                                 throws MXException,
                                                        java.rmi.RemoteException
        08-15740: this SpecSet has qbe. This method gets from the db specification and compare the current specification set that has qbe.
        Parameters:
        dbRelationshipSet - : fetched from db that contains the whole set without qbe sql where
        Returns:
        Throws:
        MXException
        java.rmi.RemoteException
      • setCurrentClassSpecUseWithMbo

        public void setCurrentClassSpecUseWithMbo(MboRemote classSpeUseWith)
                                           throws MXException,
                                                  java.rmi.RemoteException
        PERFORMANCE TESTING: passing the ClassSpecUseWith, instead of re-fetch.
        Parameters:
        classSpeUseWith -
        Throws:
        MXException
        java.rmi.RemoteException
      • getCurrentClassSpecUseWithMbo

        public MboRemote getCurrentClassSpecUseWithMbo()
                                                throws MXException,
                                                       java.rmi.RemoteException
        PERFORMANCE TESTING: passing the ClassSpecUseWith, instead of re-fetch.
        Returns:
        Throws:
        MXException
        java.rmi.RemoteException
      • sortThisSetByDisplaySeq

        public MboRemote[] sortThisSetByDisplaySeq()
                                            throws MXException,
                                                   java.rmi.RemoteException
        09-12625: This spec set may be new mbos, need to sort in mboset
        Returns:
        Throws:
        MXException
        java.rmi.RemoteException
      • toCheckClassSpecUseWith

        public boolean toCheckClassSpecUseWith()
                                        throws MXException,
                                               java.rmi.RemoteException
        12-11553/IV17979:DO NOT OVERRIDE this method unless you need to. Currently, Main change: PDSPEC(purchasing document specifications) is created based on ItemSpec. Under normal cases, ITEMSPEC set is copied to PDSPECSet, regardless of use with POLine,PRLine. This change is to check the ClassspecUseWith records for use-with PRLine,POLine,before copying the attribute and values.
        Returns:
        true if the copying logic is to check classspecuse before copying. false: not to check default is: false - not to check classspecusewith when generating(ex) PDSPEC from ITEMSPEC
        Throws:
        MXException
        java.rmi.RemoteException