public class ClassStructure extends Mbo implements ClassStructureRemote, HierarchicalMboRemote
See Assetcatalog Package description.
This is a system level object.
There are two sets of key attributes. The keys for the primary unique identifier are: ClassStructureId.
The attributes in this object are as follows:
| Attribute Name | Description |
|---|---|
| ClassStructureId | Identifier for this object's class structure. One of two keys for this object's primary unique identifier. |
| Description | Description of this class structure. Long description enabled. |
ClassificationID
| Level one asset classification identifier.
|
| GenAssetDesc | Y/N attribute indicating whether to generate the asset description when this class structure is applied to an item, asset or location. If Y, the classifications, values and measure units of this structure and its specification will be used to automatically generate the description for the item, asset or location. If N, the asset description is not automatically generated. The default is Y. |
| LDKey | Long description key. This is a link to text stored in the LongDescription table. |
| Type | Defines the type of the node. Common uses would be Solution Content, Asset Classification, FAQ, ect. |
| UseClassInDesc | Y/N attribute indicating whether to include the information specified in classification in the automatically generated asset descriptions. The default is Y. The GenAssetDesc attribute controls whether a description is generated at all when applying a class structure. If this value and GenAssetDesc are both Y, the description will include classification. |
psdi.app.assetcatalog.AssetClass,
ClassSpecMULTILANGCOPY, phantomList, phantomQueueALLROWS, CHANGEDBY_USER, COUNT_ADDITIONS, COUNT_AFTERSAVE, COUNT_DATABASE, COUNT_DELETED, COUNT_EXISTING, DBCONFIG, DELAYVALIDATION, DELAYVALIDATIONONLY, DISCARDABLE, GOTCOMPLETEWHERE, HIDDEN, NO_RELATEDMBOS_OF_OWNERSCHILDREN_FETCH, NOACCESSCHECK, NOACTION, NOADD, NOCOMMIT, NODELETE, NONE, NOOVERWRITE, NOSAVE, NOSETVALUE, NOUPDATE, NOVALIDATION, NOVALIDATION_AND_NOACTION, NOVALIDATION_AND_NOACTION_ALLOWCROSSOVER, READONLY, REBUILD, REQUIRED, SAMEVALUEVALIDATION, SETBYPARENT, USER| Constructor and Description |
|---|
ClassStructure(MboSet ms) |
| Modifier and Type | Method and Description |
|---|---|
void |
add()
Creates a ClassStructure object.
|
void |
applyDownHierarchy(MboRemote classSpec)
06-19174: when the applyDownHier flag is checked for the passed classSpec record
it also copies to the child
|
void |
applyUpHierarchy(MboRemote parent)
06-19174: when a parent is selected for this classstructure, it copies the parent's applydown attributes
|
void |
appValidate()
checks if we should add classificationid to Classification table.
|
void |
canChangeOrgSite(MboValue orgSiteMbv)
08-25617: returns true if the orgid or siteid can be changed
|
void |
canChangeOrgSite(java.lang.String relationship,
MboValue orgSiteMbv)
08-25617: returns true if the orgid or siteid can be changed
|
void |
canDelete()
06-20672: redid the canDelete method, get the tables from the domain CLASSUSEWITH
to check all the tables that contain classstructureid.
|
protected void |
clearInvalidValue(MboValue mbv)
User says he wants this object to automatically create assetattrid or measureunitid
|
void |
clearParentClassification()
clear the parent field so the node becomes top-level.
|
void |
delete(long access)
Deletes the related objects when the ClassStructure object is deleted or
classstructureid is cleared
06-20672: clear the classstructureid to the tables stored in the domain objects CLASSUSEWITH
|
MboSetRemote |
deleteUseWith(MboRemote parent)
06-20672: delete the classusewith records that no longer apply when this classstructure
record is selecting a parent.
|
MboRemote |
duplicate()
Duplicate a new item with DocLinks and Item Specifications.
|
java.lang.String |
genClassstructureDesc()
Returns a String which contains concatinateded descriptions based upon the flags
set up for this ClassStructure.
|
java.util.Vector |
getChildClassStructures()
gets the child classstructures in the vector childClassStructuresVector.
|
MboSetRemote |
getChildren()
Returns the children set for the classification hierachy.
|
MboRemote |
getClassificationMbo()
The sql in maxrelationship CLASSIFICATION works only for oracle not sqlserver.
|
java.lang.String[] |
getHierarchies()
returns null.
|
java.lang.String |
getHierarchyPath()
returns a string that contains all ancestors for this current node
|
MboSetRemote |
getMboSet(java.lang.String name)
06-15448: override getMboSet if the relationship name is CLASSSPEC
and the classstructure is in Classification Search
|
MboValueData |
getMboValueData(java.lang.String attribute)
06-19702: if the owning object(such as sr/incident etc is readonly),
then the non-persistent description_class and hierarchypath should be
readonly.
|
MboSetRemote |
getObjectsNotInUseWithDomain(java.lang.String objectName,
boolean persistentObjectsOnly)
07-29326: objects that can be classified may not be in the classusewith
domain, for example RELATIONRULES.SORUCECLASS and TARGETCLASS.
|
java.util.Vector |
getParentClassStructures()
gets the parent classstructures in the vector parentClassStructuresVector.
|
MboSetRemote |
getParents()
Returns the parents of this current classification in a hierarchy.
|
MboSetRemote |
getRealChildrenForUseWith(java.lang.String objectForUseWith,
java.lang.String objectOrgId,
java.lang.String orjectSiteId)
08-11691: return the real children set for this classstructure object including the use with logic.
|
MboSetRemote |
getTop()
Returns the top level parent of the classification in a hierachy.
|
MboRemote |
getUseWith(java.lang.String objectName)
06-20672: get Usewith information from CLASSUSEWITH
|
MboRemote |
getUseWithInClassificationApp(java.lang.String objectName)
08-12066: Find the classusewith object for the objectName passed in the
Classusewith table window in Classification app
return null if cannot find the matching.
|
boolean |
hasChildren()
Determines if this level has children by looking at the children column.
|
boolean |
hasParents()
Determines if this is top level classification.
|
boolean |
hasSiteOrgSecurity() |
boolean |
inClassificationApp()
07-27114:returns true if the ClassStructureSet is in Classification app else
returns false;
|
void |
init()
Initialization routine.
|
void |
initFieldFlagsOnMbo(java.lang.String attrName)
08-15493: make readonly of org and site when
1.
|
boolean |
isGenAssetDesc()
Indicates if an item/asset/locaions is to generate it's description based upon
this ClassStructure.
|
boolean |
isTop()
Determines if this is a top level.
|
boolean |
isTopLevel(java.lang.String objectName)
This method checks the CLASSUSEWITH relationship to this classstructure for
the give object name to see if has been mark as top level for the object name.
|
void |
populateUseWith(MboRemote parent)
When a child classification is being entered, also copy the parent's classusewith
settings.
|
void |
populateUseWith(MboRemote parent,
MboSetRemote thisUseWithSet)
When select parent classification is performed, need to
copy parent's usewith to the classstructure's usewith.
|
protected void |
save()
Saves the ClassStructure object.
|
void |
setApplicationRequired(java.lang.String attribute,
boolean required)
This method will set the application required boolen flag on the MboValue associated
this the passed in attribute.
|
void |
setByPassSortOrderValidation(java.lang.Boolean byPassSortOrderValidation) |
protected void |
setInvalidValue(MboValue mbv)
User says not to add measureunit or assetattird
|
protected boolean |
skipCopyField(MboValueInfo mvi)
Overrides the skipCopyField() in the Mbo.
|
MboSetRemote |
smartFindByObjectName(java.lang.String sourceObj,
java.lang.String targetAttrName,
java.lang.String value,
boolean exact)
94937:override smartFindByObjectName for the move to hierarchy to work
|
void |
storeChildClassStructures()
stores the child classstructures in the vector childClassStructuresVector.
|
void |
storeParentClassStructures()
stores the parent classstructures in the vector parentClassStructuresVector.
|
void |
uncheckUseWith(java.lang.String attributename)
Uncheck a useWith Column.
|
void |
undelete()
Unmark the Mbo for deletion.
|
boolean |
userSaidToCheckOrgSite()
08-15493: this method is only called by AssetCatAppSaveBean(which extends AssetCatAppBean and overrides SAVE() when users want to have a Yes/No message upon
save() time if the ClassStructure record is being added and organization or site is blank.
|
addMboSetForRequiredCheck, addToDeleteForInsertList, andEvaluateConditions, blindCopy, checkFieldAccess, checkMethodAccess, checkMethodAccess, checkQualifiedRestriction, checkRecordLock, checkSiteOrgAccessForSave, clear, clearRelatedSets, clearRelatedSets, commit, copy, copy, copy, copyFake, copyValue, copyValue, createComm, delete, deleteDoclinks, determineRequiredFieldsFromERM, enableMethod, evaluateCondition, evaluateCondition, evaluateCtrlConditions, evaluateCtrlConditions, evaluateRestriction, excludeObjectForPropagate, findAllNullRequiredFields, fireEvent, generateAutoKey, generateContentUID, getAlwaysFlags, getAttrRestrictionFlag, getAttrRestrictions, getBoolean, getByte, getBytes, getCheckpoint, getClientLocale, getClientTimeZone, getCommLogOwnerNameAndUniqueId, getCondition, getDatabaseValue, getDate, getDeleteForInsertList, getDocLinksCount, getDomainFilterWhere, getDomainIDs, getDouble, getESId, getExistingMboSet, getFetchIndex, getFieldExceptions, getFlags, getFloat, getIgnoreLockCheck, getInitialValue, getInsertCompanySetId, getInsertItemSetId, getInsertOrganization, getInsertOrgForSite, getInsertSite, getInstanciatedMboSet, getInstanciatedMboValue, getInt, getIntegrationService, getKeyValue, getLanguageRecordRowStamp, getLinesRelationship, getList, getLockedByDisplayName, getLockedByUserID, getLong, getMatchingAttr, getMatchingAttr, getMatchingAttrs, getMaxMessage, getMboCtx, getMboData, getMboDataSet, getMboForAttribute, getMboForAttributeStatic, getMboInitialValue, getMboList, getMboLogger, getMboRecordData, getMboServer, getMboSet, getMboSet, getMboSetInfo, getMboSetInfo, getMboValue, getMboValueData, getMboValueData, getMboValueDataForDownload, getMboValueInfoStatic, getMboValueInfoStatic, getMessage, getMessage, getMessage, getMessage, getMXTransaction, getName, getOrgForGL, getOrgSiteForMaxvar, getOwner, getProfile, getPropagateKeyFlag, getProxy, getRecordIdentifer, getRecordMboName, getRecordType, getRelatedSets, getRelatedWhere, getRelatedWhere, getRelationshipNameToLangTable, getResourceName, getRowRestrictionFlag, getRowStamp, getRowStampObject, getSecurityLogger, getSiteOrg, getSqlLogger, getString, getString, getStringInBaseLanguage, getStringInSpecificLocale, getStringTransparent, getSynonymValueWhere, getTenantId, getTenantIdForNoMboRecordData, getThisMboSet, getTranslator, getUniqueIdentifer, getUniqueIDName, getUniqueIDValue, getUniqueLanguageIDRecord, getUserInfo, getUserName, getValidateOrder, hasFieldAccess, hasHierarchyLink, hasLockSaveRights, hasRelatedQbe, hasUniqueID, initRelationship, isApiBatchError, isAppLockEnabled, isAutoKeyed, isBasedOn, isChangeByUserWhenSetFromLookup, isDuringInit, isEAuditFieldModified, isESigFieldModified, isFlagSet, isForDM, isLocked, isLocked, isLockedByMe, isMasterTenant, isMboLockedByMe, isModified, isModified, isNew, isNoSql, isNull, isOptionGranted, isSelected, isSkipCopyField, isValid, isZombie, lock, modify, moveFieldFlagsToMboValue, needCallInitFieldFlag, orEvaluateConditions, propagateKeyValue, removeCtx, removeRelatedSet, resolveNoSqlWhere, rollbackToCheckpoint, select, setAppDefaultValue, setApplicationError, setAutokeyFields, setCopyDefaults, setDatabaseDefaultValues, setDatabaseDefaultValues, setDefaultValue, setDefaultValues, setDeleted, setDuringInit, setEAuditFieldModified, setESId, setESigFieldModified, setFetchIndex, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlags, setFlag, setFlag, setFlags, setForDM, setHierarchyLink, setIgnoreRecordLockCheck, setLangCodeDefault, setMboCtx, setMLValue, setModified, setModifiedForIntegrationOnly, setNewMbo, setNoSql, setPropagateKeyFlag, setPropagateKeyFlag, setProxy, setReadonlyWhenParentIsReadonly, setRecordType, setReferencedMbo, setReferencedMbo, setResolveNoSqlWhere, setResourceName, setTenantIdForNoMboRecordData, setUniqueIDValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValueFromSequence, setValueNull, setValueNull, sigopGranted, sigopGranted, sigopGranted, sigopGranted, sigOptionAccessAuthorized, smartFill, smartFind, smartFind, smartFind, smartFindByObjectName, smartFindByObjectNameDirect, startCheckpoint, thisToBeUpdated, throwRequiredException, toBeAdded, toBeDeleted, toBeSaved, toBeUpdated, toBeValidated, undeleteDoclinks, unlock, unselect, useDataSecurity, validate, validateAttributes, validateKeyUniqueness, valueChangedpublic ClassStructure(MboSet ms) throws MXException, java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic void add()
throws MXException,
java.rmi.RemoteException
add in interface MboRemoteadd in class MboMXExceptionjava.rmi.RemoteExceptionpublic void init()
throws MXException
init in class MboMXExceptionpublic void canDelete()
throws MXException,
java.rmi.RemoteException
canDelete in class MboMXExceptionjava.rmi.RemoteExceptionpublic void delete(long access)
throws MXException,
java.rmi.RemoteException
delete in interface MboRemotedelete in class Mboaccess - the accessMXExceptionjava.rmi.RemoteExceptionMbo.delete(long)public void undelete()
throws MXException,
java.rmi.RemoteException
Mboundelete in interface MboRemoteundelete in class MboMXExceptionjava.rmi.RemoteExceptionpublic MboRemote duplicate() throws MXException, java.rmi.RemoteException
duplicate in interface MboRemoteduplicate in class MboMXExceptionjava.rmi.RemoteExceptionprotected boolean skipCopyField(MboValueInfo mvi) throws java.rmi.RemoteException, MXException
skipCopyField in class MboThe - MboValueInfo object of the MboValue that needs to be copied.java.rmi.RemoteExceptionMXExceptionMbo.skipCopyField(psdi.mbo.MboValueInfo),
ClassStructure.skipCopyField(psdi.mbo.MboValueInfo),
psdi.app.assetcatalog.ClassStructur#duplicate,
Item.loadSkipFieldCopyHashSet()protected void save()
throws MXException,
java.rmi.RemoteException
save in class MboMXExceptionjava.rmi.RemoteExceptionpublic MboRemote getClassificationMbo() throws MXException, java.rmi.RemoteException
getClassificationMbo in interface ClassStructureRemoteMXExceptionjava.rmi.RemoteExceptionpublic boolean isGenAssetDesc()
throws MXException,
java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic java.lang.String genClassstructureDesc()
throws MXException,
java.rmi.RemoteException
genClassstructureDesc in interface ClassStructureRemoteMXExceptionjava.rmi.RemoteExceptionpublic boolean isTop()
throws MXException,
java.rmi.RemoteException
isTop in interface HierarchicalMboRemoteMXExceptionjava.rmi.RemoteExceptionpublic boolean hasChildren()
throws MXException,
java.rmi.RemoteException
hasChildren in interface HierarchicalMboRemoteMXExceptionjava.rmi.RemoteExceptionpublic boolean hasParents()
throws MXException,
java.rmi.RemoteException
hasParents in interface HierarchicalMboRemoteMXExceptionjava.rmi.RemoteExceptionpublic MboSetRemote getChildren() throws MXException, java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic MboSetRemote getParents() throws MXException, java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic MboSetRemote getTop() throws MXException, java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic void storeParentClassStructures()
throws MXException,
java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic java.util.Vector getParentClassStructures()
throws MXException,
java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic void storeChildClassStructures()
throws MXException,
java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic java.util.Vector getChildClassStructures()
throws MXException,
java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic java.lang.String getHierarchyPath()
throws MXException,
java.rmi.RemoteException
getHierarchyPath in interface ClassStructureRemoteMXExceptionjava.rmi.RemoteExceptionpublic java.lang.String[] getHierarchies()
throws MXException,
java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic void uncheckUseWith(java.lang.String attributename)
throws MXException,
java.rmi.RemoteException
attributename - attribute name of one usewith columns(ex. usewithitems,usewithassets...)MXExceptionjava.rmi.RemoteExceptionpublic void clearParentClassification()
throws MXException,
java.rmi.RemoteException
clearParentClassification in interface ClassStructureRemoteMXExceptionjava.rmi.RemoteExceptionpublic void appValidate()
throws MXException,
java.rmi.RemoteException
appValidate in class MboMXExceptionjava.rmi.RemoteExceptionprotected void setInvalidValue(MboValue mbv) throws MXException, java.rmi.RemoteException
mbv - MXExceptionjava.rmi.RemoteExceptionprotected void clearInvalidValue(MboValue mbv) throws MXException, java.rmi.RemoteException
mbv - MXExceptionjava.rmi.RemoteExceptionpublic MboSetRemote smartFindByObjectName(java.lang.String sourceObj, java.lang.String targetAttrName, java.lang.String value, boolean exact) throws MXException, java.rmi.RemoteException
smartFindByObjectName in interface MboRemotesmartFindByObjectName in class MboMXExceptionjava.rmi.RemoteExceptionpublic boolean hasSiteOrgSecurity()
throws MXException,
java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic void populateUseWith(MboRemote parent) throws MXException, java.rmi.RemoteException
parent - MXExceptionjava.rmi.RemoteExceptionpublic void populateUseWith(MboRemote parent, MboSetRemote thisUseWithSet) throws MXException, java.rmi.RemoteException
parent - thisUseWithSet - the UseWithSet for this classstructureMXExceptionjava.rmi.RemoteExceptionpublic MboRemote getUseWith(java.lang.String objectName) throws MXException, java.rmi.RemoteException
getUseWith in interface ClassStructureRemoteobjectName - MXExceptionjava.rmi.RemoteExceptionpublic MboSetRemote deleteUseWith(MboRemote parent) throws MXException, java.rmi.RemoteException
parent - - the parent classstructure being selectedMXExceptionjava.rmi.RemoteExceptionpublic void applyUpHierarchy(MboRemote parent) throws MXException, java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic void applyDownHierarchy(MboRemote classSpec) throws MXException, java.rmi.RemoteException
classSpec - MXExceptionjava.rmi.RemoteExceptionpublic boolean isTopLevel(java.lang.String objectName)
throws MXException,
java.rmi.RemoteException
isTopLevel in interface ClassStructureRemoteobjectName - MXExceptionjava.rmi.RemoteExceptionpublic boolean inClassificationApp()
throws MXException,
java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic MboSetRemote getMboSet(java.lang.String name) throws MXException, java.rmi.RemoteException
getMboSet in interface MboRemotegetMboSet in class Mboname - The relationship provided to retrieve a
related mboSet, usually using foreign keys.
For example,
"psdi.app.workorder.WOSetRemote.ASSET" is
a relationship for the work order object to
access the asset Set where
"workorder.assetnum=asset.assetnum". The relationship can
also be chained. Such as ASSET.ASSETSTATUS.MXException - "A relationship called {0} does not exist
for the {1} business object" exception
will be thrown if the relationship was not
found.
"Unknown Object" exception will be thrown
if the database object can not be
found through the relationship.java.rmi.RemoteExceptionMbo.getMboSet(String)public MboRemote getUseWithInClassificationApp(java.lang.String objectName) throws MXException, java.rmi.RemoteException
MXExceptionjava.rmi.RemoteExceptionpublic MboValueData getMboValueData(java.lang.String attribute) throws MXException, java.rmi.RemoteException
getMboValueData in interface MboRemotegetMboValueData in class MboMXException - "Attribute {0} does not exist" exception will
be thrown if the attribute does not exist
in the object.java.rmi.RemoteExceptionMbo.getMboValueData(String)public MboSetRemote getRealChildrenForUseWith(java.lang.String objectForUseWith, java.lang.String objectOrgId, java.lang.String orjectSiteId) throws MXException, java.rmi.RemoteException
objectForUseWith - objectOrgId - orjectSiteId - MXExceptionjava.rmi.RemoteExceptionpublic MboSetRemote getObjectsNotInUseWithDomain(java.lang.String objectName, boolean persistentObjectsOnly) throws MXException, java.rmi.RemoteException
objectName - persistentObjectsOnly - MXExceptionjava.rmi.RemoteExceptionpublic boolean userSaidToCheckOrgSite()
throws MXException,
java.rmi.RemoteException
userSaidToCheckOrgSite in interface ClassStructureRemoteMXExceptionjava.rmi.RemoteExceptionpublic void initFieldFlagsOnMbo(java.lang.String attrName)
throws MXException
initFieldFlagsOnMbo in class MboMXExceptionpublic void canChangeOrgSite(java.lang.String relationship,
MboValue orgSiteMbv)
throws MXException,
java.rmi.RemoteException
relationship: - can be "CLASSSPEC" or "CHILDREN"orgOrSiteAttr - orgOrSiteValue - MXExceptionjava.rmi.RemoteExceptionpublic void canChangeOrgSite(MboValue orgSiteMbv) throws MXException, java.rmi.RemoteException
relationship: - can be "CLASSSPEC" or "CHILDREN"orgOrSiteAttr - orgOrSiteValue - MXExceptionjava.rmi.RemoteExceptionpublic void setApplicationRequired(java.lang.String attribute,
boolean required)
throws MXException,
java.rmi.RemoteException
setApplicationRequired in interface MboRemotesetApplicationRequired in class Mboattribute - The attribute whos MboValue will receive the ApplicationErrorrequired - whether the field is required or notjava.rmi.RemoteExceptionMXExceptionpublic void setByPassSortOrderValidation(java.lang.Boolean byPassSortOrderValidation)