psdi.app.bim.product

Class BIMProductBaseSpec

  • All Implemented Interfaces:
    java.rmi.Remote, SpecificationMboRemote, BIMProductBaseSpecRemote, MboConstants, MboRemote, MaxRemoteProxy


    public class BIMProductBaseSpec
    extends SpecificationMbo
    implements BIMProductBaseSpecRemote
    MBO to represent an attribute and value of a specification for an operating location. See the Location package description for details.

    This is a site level object.

    The key attributes for this object are ItemSetId, ProductId, and AssetAttrId.

    The attributes in this object are as follows:

    Attribute Name Description
    AlnValue Alphanumeric(text) value in entered units for the attribute specified. Editable only when the attribute is of ALN type.
    AssetAttrId Asset attribute identifier.
    ChangeBy, ChangeDate Name of the user who last updated this object and date of last change.
    ClassStructureId Identifier of the class structure associated with this location Specification.
    DisplaySequence A number to indicate this object's display sequence in the operating location's specification.
    InheritedFromItem Indicates whether or not this specification has inherited from item specification. If this operating location has rotating asset identified by an item number and the item is classified by a specification, then the specification from Item will be copied to the location's specification. In this case, the flag will be Y. The flag is by default N for operating locations without rotating asset.
    ItemSpecValChanged Indicates whether or not the corresponding Item Specification value has changed after being inherited. N indicates if AlnValue or NumValue has not been changed; Y indicates the value has been changed since its inheritance from the Item Specification.
    Location Location identifier.
    MeasureUnitId Unit of Measure for the AlnValue or NumValue entered. Value is initially copied from ClassSpec but can be edited after the copy.
    NumValue Numeric value in entered units for the attribute specified. Editable only when the attribute is of NUMERIC type.
    OrgId Identifier of the organization for this specification.
    SiteId Identifier of the site for this specification.
    LS01 thru LS05 Cross-over fields from ClassSpec.CS01 thru ClassSpec.CS05
    • Constructor Detail

      • BIMProductBaseSpec

        public BIMProductBaseSpec(MboSet ms)
                           throws MXException,
                                  java.rmi.RemoteException
        Construct the BIMProductSpec object
        Throws:
        MXException
        java.rmi.RemoteException
    • Method Detail

      • setCopyValueChanged

        public void setCopyValueChanged(boolean changed)
                                 throws MXException,
                                        java.rmi.RemoteException
        This implements the abstract method defined in psdi.app.assetcatalog.SpecificationMbo; set the copyValueChanged = passed boolean for rotating loctionspec. Ininially when values are copied from itemspec, this should be set to false. Any subsequent changes to alnvalue or numvalue should result in setting this boolean to true.
        Overrides:
        setCopyValueChanged in class SpecificationMbo
        Parameters:
        changed - boolean value to set this instance variable to true or false.
        Throws:
        MXException
        java.rmi.RemoteException
      • canGenerateDesc

        public MboRemote canGenerateDesc()
                                  throws MXException,
                                         java.rmi.RemoteException
        Returns true if the assetattrid, alnvalue/numvalue, and or measureunitid can be included in the description generation process for the bimtypes;false otherwise.
        Overrides:
        canGenerateDesc in class SpecificationMbo
        Returns:
        A classspec mbo if it allows using this bimtypespec to generate description; null if it does not allow.
        Throws:
        MXException
        java.rmi.RemoteException
      • canDelete

        public void canDelete()
                       throws MXException,
                              java.rmi.RemoteException
        Checks to see if this object can be deleted,only classspec or productidlocation can delete this bimtypespec object. throws MXException if it cannot be deleted
        Overrides:
        canDelete in class Mbo
        Throws:
        MXApplicationException - ("bimtypes", "noDeleteLocSpec") is thrown when owner is null or not a location and classspec
        MXException
        java.rmi.RemoteException
      • save

        public void save()
                  throws MXException,
                         java.rmi.RemoteException
        Save the bimtypespec object; if the item for the productid is rotating and either alnvalue or numvalue has been changed, should mark ITEMSPECVALCHANGED to true. This means this bimtypeSpec.alnvalue or numvalue will not be changed when there is a value change in the corresponding itemspec subsequently.
        Overrides:
        save in class SpecificationMbo
        Throws:
        MXException
        java.rmi.RemoteException
      • skipCopyField

        protected boolean skipCopyField(MboValueInfo mvi)
                                 throws java.rmi.RemoteException,
                                        MXException
        Overrides the skipCopyField() in the Mbo. Since this method takes the MboValueInfo as its parameter just check to see if this field needs to be copied or skipped by using the data from the static HashSet. If this field does not need to be copied return true. Only itemnum,changedate,and changeby will be will be skipped in copying this itemspec.
        1. PRODUCTID
        2. REFOBJECTID CHANGEBY CHANGEDATE
        Overrides:
        skipCopyField in class Mbo
        Parameters:
        The - MboValueInfo object of the MboValue that needs to be copied.
        Returns:
        True,if the field does not need to be copied.In all other cases return false.
        Throws:
        java.rmi.RemoteException
        MXException
        See Also:
        psdi.app.bim.bimtypes#loadSkipFieldCopyHashSet