public class ClassSpec extends Mbo implements ClassSpecRemote
See Assetcatalog Package description.
This is a system level object.
The key attributes for this object are: ClassStructureId,section and AssetAttrId
The attributes in this object are as follows:
Attribute Name | Description |
---|---|
AssetAttrId | Asset attribute
identifier. A class specification temolate is made up of one or more asset
attributes as identified by AssetAttrId. Subsequently, a class
specification can have one or more of these ClassSpec
objects. A set of ClassSpec objects (and AssetAttrId attributes)
belonging to the same class specification template will have the same
ClassStructureId. AssetAttrId is one of three
key attributes for this object.
|
AttrDescPrefix | Default prefix for the attribute portion of generated asset descriptions. This value is initially copied from the asset attribute. It can also be added or modified on this object. |
ClassStructureId |
Class structure identifier.
One or more of these ClassSpec objects with the same ClassStructureId comprise a
class specification template. One of three key attributes for this object.
|
DataType |
Non-persistent column to hold the data type for the value of
this ClassSpec's asset attribute.
This attribute is not used in releases up to and including Release 5.1.
This value comes from the asset attribute
and cannot be modified on this object.
|
DefaultALNValue | Default alphanumeric value. This value can be added
or modified on this object before it is saved. This value is copied to the AlnValue
of ItemSpec , AssetSpec
or LocationSpec where it can then be modified prior
to saving it. DefaultALNValue is read-only and null if DataType is NUMERIC.
|
DefaultNUMValue | Default numeric value. This value can be added
or modified on this object before it is saved. This value is copied to the NumValue
attribute of ItemSpec , AssetSpec
or LocationSpec where it can then be modified prior
to saving it. DefaultNUMValue is read-only and null if DataType is ALN.
|
DomainId | Domain identifier.
The default is initially copied from the Domain ID in asset attribute. It can also be added or modified on
this object before it is saved. If the datatype of this
attribute is ALN the domain has to be of type ALN. If the datatype
is NUMERIC the domain has to be of type NUMERIC.
|
MeasureUnitId | Measure unit identifier.
The default is initially copied from the
Meauure unit in asset
attribute. It can also be added or modified on
this object before it is saved.
|
OrgId | Identifier of the organization
for this ClassSpec. One of three key attributes for this object.
|
SpecValue | Non-persistent column to hold the user-entered value when searching for a class structure identifier and the set of items, asset and locations that have specifications based on the class structure identifier. |
psdi.app.assetcatalog.AssetClass
,
ClassStructure
,
MeasureUnit
MULTILANGCOPY, phantomList, phantomQueue
ALLROWS, 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
Modifier and Type | Method and Description |
---|---|
void |
add()
Creates a ClassSpec object for a ClassStructure object.
|
void |
addOtherSpecs(MboSetRemote mboSet)
Adds records to ITEMSPEC,LOCATIONSPEC, or ASSETSPEC based on the mboSet
passed.
|
void |
addOtherSpecsLargeForSqlServer(java.lang.String tableName,
java.lang.String where,
int counter)
IV43913/94410: for large number of records - over 3000 - SQLServer - potentially run into arithmitic overflow problems.
|
void |
applyDownHierarchy()
06-19174: apply Down Hierarchy if applydownhier is true then call
ClassStructure.applyDownHierarchy method which will insert this attribute
into the classspec set of all the children down the hierarchy
|
void |
appValidate()
checks if we should add asset attribute id or measureunit
if user has said not to add them on the fly, throw exception
|
void |
canChangeOrgSite(MboValue orgSiteMbv)
08-25617: returns true if the orgid or siteid can be changed
|
void |
checkRequiredFields()
08-14402: if this classspec is being added and user
clicks the UseWith Object Detail Button, check requiredness
|
MboRemote |
copy(MboSetRemote newClassSpecSet,
long mboAddFlags)
08-19273: override copy()
|
void |
copyValuesToChildClassSpec(MboRemote childClassSpec)
IV63669: copy the current value to child classSpec
|
void |
delete(long access)
Deletes the ClassSpec object.
|
MboRemote |
getAssetAttributeMbo()
The sql in maxrelationship ASSETATTRIBUTE works only for oracle not sqlserver.
|
MboRemote |
getClassSpecForApplyDownHier()
08-18363: returns the instance variable classSpecForApplyDownHier
|
ClassStructure |
getClassStructure()
get the classstructure record for this classspec
|
long |
getMinMaxSeq(java.lang.String select)
IV80493
|
MboRemote |
getTableDomainObject()
06-20672: if the datatype is TABLE, gets the maxtabledomain object
|
java.lang.String[] |
getUserDefinedRequired(java.lang.String specName,
int startingIndex)
IV80493
|
java.lang.String |
getValueToCrossOver(java.lang.String srcAttrCSNN,
java.lang.String tgtSpecObj,
java.lang.String tgtSpecAttr)
Handles the setting of crossover values from CLASSSPEC.CS01 through CS05 to
ASSETSPEC.ES01 through ES05, LOCATIONSPEC.LS01 through LS05 and ITEMSPEC.IS01
through IS05 when propagating a newly added CLASSSPEC attribute to its USEWITH objects
(ASSETSPEC, LOCATIONSPEC, and/or ITEMSPEC) when there are more than 3000 USEWITH objects.
|
boolean |
inClassificationApp()
07-27114: Is this ClassSpec in Classification App? For Performance, some mbosets are only instantiated in Classification app but not the
other app.
|
void |
init()
Called by the framework when the Mbo has been constructed and the
MboValues have been initialized.
|
void |
populateClassSpecUseWith(MboRemote parentClassStructure)
When a child Classspec is being entered, also copy the parent's classusewith
settings.
|
void |
populateClassSpecUseWith(MboSetRemote newClassSpecUseWithSet)
When a child Classspec is being entered, also copy the parent's classusewith
settings.
|
int |
populateSequence(MboRemote newClassSpecUseWith)
returns the next sequence for the new classspecusewith, created when a new
classspec record is created.
|
void |
setClassSpecForApplyDownHier(MboRemote classSpecApplyDownHier)
08-18363: remembers that ClassSpec record that has the ApplyDownHier flag checked.
|
void |
setColumnsReadOnly(boolean setReadOnly)
Sets read only columns.
|
void |
setValue(java.lang.String attributeName,
java.lang.String val,
long accessModifier)
IV69405: when new value is set to the assetattrid field on an existing classspec.
|
java.util.Hashtable |
storeExistingSpec(MboSetRemote existingSpecSet,
java.lang.String attrName,
java.lang.String siteidORitemsetid)
IV43892/94403: converts the initial assetspec, itemspec, or locaionspec to hashtable to allow fast access
in addOtherSpecs - if the attribute being added in classspec was added in itemspec, locationspec, or assetspec, then
do not add.
|
void |
UnApplyDownHierarchy()
06-19174: Unapply Down Hierarchy - when apply Down Hierarchy is unchecked
delete all classspec created because of previous applydown
|
void |
undelete()
93218: now that we are allowing the delete per user interaction, need to handle unDelete
|
boolean |
userSaidToDelete()
93218
Determines if the object be deleted.
|
addMboSetForRequiredCheck, addToDeleteForInsertList, andEvaluateConditions, blindCopy, canDelete, checkFieldAccess, checkMethodAccess, checkMethodAccess, checkQualifiedRestriction, checkSiteOrgAccessForSave, clear, copy, copy, copyFake, copyValue, copyValue, createComm, delete, determineRequiredFieldsFromERM, duplicate, 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, getMboSet, getMboSetInfo, getMboValue, getMboValueData, getMboValueData, getMboValueData, getMboValueDataForDownload, getMboValueInfoStatic, getMboValueInfoStatic, getMessage, getMessage, getMessage, getMessage, getMXTransaction, getName, getOrgForGL, getOrgSiteForMaxvar, getOwner, getProfile, getPropagateKeyFlag, getProxy, getRecordIdentifer, getRecordMboName, getRelatedWhere, getRelatedWhere, getRelationshipNameToLangTable, getResourceName, getRowRestrictionFlag, getRowStamp, getRowStampObject, getSecurityLogger, getSiteOrg, getSqlLogger, getString, getString, getStringInBaseLanguage, getStringInSpecificLocale, getStringTransparent, getSynonymValueWhere, getTenantId, getThisMboSet, getTranslator, getUniqueIdentifer, getUniqueIDName, getUniqueIDValue, getUniqueLanguageIDRecord, getUserInfo, getUserName, getValidateOrder, hasFieldAccess, hasHierarchyLink, hasLockSaveRights, hasRelatedQbe, hasUniqueID, initFieldFlagsOnMbo, initRelationship, isApiBatchError, isAutoKeyed, isBasedOn, isChangeByUserWhenSetFromLookup, 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, setApplicationRequired, setAutokeyFields, setCopyDefaults, setDefaultValue, setDefaultValues, setDeleted, 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, setReferencedMbo, setReferencedMbo, setResolveNoSqlWhere, setResourceName, setUniqueIDValue, 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, sigOptionAccessAuthorized, smartFill, smartFind, smartFind, smartFindByObjectName, smartFindByObjectName, smartFindByObjectNameDirect, startCheckpoint, thisToBeUpdated, toBeAdded, toBeDeleted, toBeSaved, toBeUpdated, toBeValidated, unlock, unselect, useDataSecurity, validate, validateAttributes, validateKeyUniqueness, valueChanged
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addMboSetForRequiredCheck, addToDeleteForInsertList, blindCopy, checkMethodAccess, clear, copy, copy, copyFake, copyValue, copyValue, createComm, delete, duplicate, evaluateCondition, evaluateCtrlConditions, evaluateCtrlConditions, excludeObjectForPropagate, generateAutoKey, getBoolean, getByte, getBytes, getCommLogOwnerNameAndUniqueId, getDatabaseValue, getDate, getDeleteForInsertList, getDocLinksCount, getDomainIDs, getDouble, getExistingMboSet, getFlags, getFloat, getIgnoreLockCheck, getInitialValue, getInsertCompanySetId, getInsertItemSetId, getInsertOrganization, getInsertSite, getInt, getKeyValue, getLinesRelationship, getList, getLockedByDisplayName, getLong, getMatchingAttr, getMatchingAttr, getMatchingAttrs, getMaxMessage, getMboData, getMboDataSet, getMboInitialValue, getMboList, getMboSet, getMboSet, getMboSet, getMboValueData, getMboValueData, getMboValueData, getMboValueDataForDownload, getMboValueInfoStatic, getMboValueInfoStatic, getMessage, getMessage, getMessage, getMessage, getMXTransaction, getName, getOrgForGL, getOrgSiteForMaxvar, getOwner, getPropagateKeyFlag, getRecordIdentifer, getSiteOrg, getString, getString, getStringInBaseLanguage, getStringInSpecificLocale, getStringTransparent, getThisMboSet, getUniqueIDName, getUniqueIDValue, getUserInfo, getUserName, hasHierarchyLink, hasLockSaveRights, isAutoKeyed, isBasedOn, isFlagSet, isForDM, isLocked, isLocked, isMasterTenant, isMboLockedByMe, isModified, isModified, isNew, isNull, isOptionGranted, isSelected, isZombie, lock, propagateKeyValue, rollbackToCheckpoint, select, setApplicationError, setApplicationRequired, setAutokeyFields, setCopyDefaults, setDeleted, setESigFieldModified, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlags, setFlag, setFlag, setFlags, setForDM, setIgnoreRecordLockCheck, setMLValue, setModified, setNewMbo, setPropagateKeyFlag, setPropagateKeyFlag, setReferencedMbo, setReferencedMbo, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValueNull, setValueNull, sigopGranted, sigopGranted, sigopGranted, sigOptionAccessAuthorized, smartFill, smartFind, smartFind, smartFindByObjectName, smartFindByObjectName, smartFindByObjectNameDirect, startCheckpoint, thisToBeUpdated, toBeAdded, toBeDeleted, toBeSaved, toBeUpdated, toBeValidated, unlock, unselect, validate, validateAttributes
public ClassSpec(MboSet ms) throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public void add() throws MXException, java.rmi.RemoteException
Attribute Name | Attribute Value |
---|---|
classStructureId | classStructureId of the owning object |
add
in interface MboRemote
add
in class Mbo
MXException
java.rmi.RemoteException
public void init() throws MXException
Mbo
init
in class Mbo
MXException
public boolean userSaidToDelete() throws MXException, java.rmi.RemoteException
MXApplicationException
- assetattributenodelete
GROUP | KEY | REASON | |
---|---|---|---|
assetcatalog | assetattributenodelete | temporary exception |
MXException
java.rmi.RemoteException
public void delete(long access) throws MXException, java.rmi.RemoteException
delete
in interface MboRemote
delete
in class Mbo
access
- the accessMXException
java.rmi.RemoteException
Mbo.delete(long)
public void undelete() throws MXException, java.rmi.RemoteException
undelete
in interface MboRemote
undelete
in class Mbo
access
- MXException
java.rmi.RemoteException
public MboRemote getAssetAttributeMbo() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public void addOtherSpecs(MboSetRemote mboSet) throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public void setColumnsReadOnly(boolean setReadOnly) throws MXException, java.rmi.RemoteException
setReadOnly
- all fields are set to readonly when trueMXException
java.rmi.RemoteException
public void appValidate() throws MXException, java.rmi.RemoteException
appValidate
in class Mbo
MXException
java.rmi.RemoteException
public void populateClassSpecUseWith(MboRemote parentClassStructure) throws MXException, java.rmi.RemoteException
parent
- MXException
java.rmi.RemoteException
public void populateClassSpecUseWith(MboSetRemote newClassSpecUseWithSet) throws MXException, java.rmi.RemoteException
parent
- MXException
java.rmi.RemoteException
public int populateSequence(MboRemote newClassSpecUseWith) throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public MboRemote getTableDomainObject() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public ClassStructure getClassStructure() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public void applyDownHierarchy() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public void UnApplyDownHierarchy() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public boolean inClassificationApp() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public void checkRequiredFields() throws MXException, java.rmi.RemoteException
checkRequiredFields
in interface ClassSpecRemote
MXException
java.rmi.RemoteException
public void setClassSpecForApplyDownHier(MboRemote classSpecApplyDownHier) throws MXException, java.rmi.RemoteException
classSpecApplyDownHier
- MXException
java.rmi.RemoteException
public MboRemote getClassSpecForApplyDownHier() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public MboRemote copy(MboSetRemote newClassSpecSet, long mboAddFlags) throws MXException, java.rmi.RemoteException
copy
in interface MboRemote
copy
in class Mbo
newClassSpecSet
- The set into which the new mbo will be added.mboAddFlags
- Flags to use when adding the new Mbo.
Values on the attribute are always set with NOACCESSCHECK|NOVALIDATION_AND_NOACTION.MXException
java.rmi.RemoteException
public java.lang.String getValueToCrossOver(java.lang.String srcAttrCSNN, java.lang.String tgtSpecObj, java.lang.String tgtSpecAttr) throws MXException, java.rmi.RemoteException
getValueToCrossOver
in interface ClassSpecRemote
srcAttrCSNN
- source crossover value. Can be CLASSSPEC.CS01 through CLASSSPEC.CS05tgtSpecObj
- ASSETSPEC, LOCATIONSPEC or ITEMSPEC.tgtSpecAttr
- target to receive the crossover value. Can be ASSETSPEC.ES01 through
ASSETSPEC.ES05, LOCATIONSPEC.LS01 through LOCATIONSPEC.LS05 or ITEMSPEC.IS01 through ITEMSPEC.IS05.MXException
java.rmi.RemoteException
getValueToCrossOver(String, String, String)
public void canChangeOrgSite(MboValue orgSiteMbv) throws MXException, java.rmi.RemoteException
relationship:
- can be "CLASSSPEC" or "CHILDREN"orgOrSiteAttr
- orgOrSiteValue
- MXException
java.rmi.RemoteException
public java.util.Hashtable storeExistingSpec(MboSetRemote existingSpecSet, java.lang.String attrName, java.lang.String siteidORitemsetid) throws MXException, java.rmi.RemoteException
existingSpecSet
- attrName
- - could be itemnum, assetnum, or locationsiteid
- - could be null(Itemspec), or siteid(locationspec and assetspec)MXException
java.rmi.RemoteException
public void addOtherSpecsLargeForSqlServer(java.lang.String tableName, java.lang.String where, int counter) throws MXException, java.rmi.RemoteException
tableName
- - ASSET, ITEM, or LOCATIONSwhere
- - whereclause to get the asset/item/locations that have the current classsstructureid but no assetattridcounter
- MXException
java.rmi.RemoteException
public void copyValuesToChildClassSpec(MboRemote childClassSpec) throws MXException, java.rmi.RemoteException
childClassSpec
- MXException
java.rmi.RemoteException
public void setValue(java.lang.String attributeName, java.lang.String val, long accessModifier) throws MXException, java.rmi.RemoteException
setValue
in interface MboRemote
setValue
in class Mbo
attributeName
- The attribute name within the current object.val
- The string value to set to the attribute.accessModifier
- The bitwise flags such as NOACCESSCHECK,
NOVALIDATION_AND_NOACTION, and DELAYVALIDATION.MXException
- "Attribute {0} does not exist" exception will
be thrown if the attribute does not exist
in the object.
"Field is read only" exception will be thrown
if the attribute is READONLY and the
accessModifier does not specify NOACCESSCHECK.
"Invalid Data Type" exception will be thrown
for datatype mismatch. For example,
setting a string value of characters to an
attribute which has datatype of YORN.java.rmi.RemoteException
Mbo.setValue(String,String,long)
public long getMinMaxSeq(java.lang.String select) throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public java.lang.String[] getUserDefinedRequired(java.lang.String specName, int startingIndex) throws MXException, java.rmi.RemoteException
specName
- startingIndex
- - the last harded is 14 so the passed is 16MXException
java.rmi.RemoteException