Return to Navigation

Entity Application Class Reference

This section discusses the delivered application classes and interfaces that you can use for creating or modifying entities.

Implementing Classes: SCC_COMMON:ENTITY:FileAttachment, SCC_COMMON:ENTITY:AbstractEntity

See Also: BasicEntity, StagedEntity, StagedHREntity

Summary

Property Summary:

   

public Array of string

baseProps: A list of properties that are controlled on the base entities, so the property name cannot be changed.

public Array of ChildEntity

ChildEntityArray: An array of all the ChildEntities of the current entity.

public Record

data: This entities a backing record.

public boolean

entityDelete: Marks this entity for deletion, and prevents save.

public string

entityID: ID of the entity from the registry.

public string

entityName: The name of the entity as defined in the registry.

public Array of DataKey

keyCollection: A collection of key values to be used when population of this entity occurs.

public IEntity

parent: parent Entity, null if it is at the top level of tree.

public ChildEntity

parentCE: The child entity that encompasses all the entities of a particular type under the parent.

public string

SCC_ENTITY_INST_ID: Entity Instance Id.

public boolean

selfServiceMode: Self Service mode flag.

public boolean

STAGE_MODE: Specifies if this entity is currently in Stage Mode (True) and working with the stage record, or in Production Mode (False) and working with the production record.

public string

UPDATE_RULE: Specifies the update rule to use for the purposes of Data Update Rule.

public string

USER_CONTEXT: The user that this is being run on behalf of, since adds and updates may be done from administrative mode on behalf of a given user.

public Array of string

XSDFieldList: A string list of all the fields for the current entity for the XSD. This is used in conjunction with buildXSD to determine if key fields are required, based on if their parent has the same key.

Method Summary:

   

public void

buildXSD(XmlNode xmlnode): Builds the xml schema section pertaining to this entity.

public void

clearDataPreImage(): Clears the DataPreImage for this entity and all its children.

public void

delete(boolean p_entityDelete): Sets entityDelete property for this entity and all its children.

public void

demote(number p_tempID): Moves data from production records to staging record.

public void

destroy(): Perform cleanup activity on this entity.

public void

fill(Record p_inRec out, boolean p_clearState): Fill (Populate) this entity using the given record, and populates all children based on the key structure.

public void

fillFromKeys(boolean p_clearState): Performs a select by key based on the fields on the underlying record. This should be run on the top level entity to start a fill.

public void

fromXmlNode(XmlNode parentNode): Converts data from XML to the entity model.

public Rowset

generateRowset(): This method generates a rowset of data for the underlying record of this entity based on the keys of the parent. It is used as part of the fill process for building out the entity tree. The method is called as if it were a static method, so it is not associated with any particular entity data. The base implementation dynamically matches keys from the parent to the child and builds the query for the rowset based on that.

public string

generateXSD(): Begins generation of an xml schema, based on the registry using this entity as the root.

public ChildEntity

getChildEntity(string p_entityID): Retrieves the ChildEntity Object based on the entity ID.

public string

getLOVDescr(string propname): Returns the LOV Description based on the associated property name when parsed from XML.

public number

getMaxSeqNbrSQL(): Retrieves the maximum sequence number from the database based on the key structure of the current entity.

public any

getProperty(string propname)

public void

hardDelete(MessageLogBase p_messageLog out): Performs the actual delete of all objects marked with the entityDelete flag.

public boolean

hasEffdt(): Checks if this entity has an effective date.

public boolean

hasEffseq(): Checks if this entity has an effective sequence.

public boolean

hasKey(string p_keyname): Checks if the current entity has a particular field as a key.

public boolean

isEqualKeys(IEntity p_entity): Determine Entity Key Equality.

public boolean

isEqualKeysRecord(Record p_rec): Allows the given record to be compared with this entity for equality. Compares for equality based on the underlying entity record content. RECOMMENDATION: Override this method if you need to do custom equality checking.

public void

prePublish(Rowset p_changesRS out): Uses the workflowPreimage and post images of the entity to build a PSCAMA Rowset in preparation for publish. The parameter Rowset may be Null. Data should be appended to this rowset if it is NON-Null.

public void

preSave(): Perform pre-Save activities on this entity.

public void

preSaveChildren()

public void

PreSaveFirst(): Pre-Save code that only runs on the first entity of a child array.

public void

promote(string emplID, MessageLogBase p_log out): Moves Data from Staging to Production Records (does not validate or save).

public void

publish(Rowset p_changesRS, boolean p_onlineMode): Takes a PSCAMA based rowset of information to be published during workflow Uses that information to construct a Message and according to the onlineMode publishes the Message data in realtime or to the batch delay table.

public void

save(MessageLogBase p_messageLog out): Save this entity and all its children.

public void

setChildren(): Builds out the structure of the ChildEntityArray object based on the registry.

public void

setDefault(): Sets default values for record fields.

public void

setProperty(string propname, any value)

public void

setStageMode(boolean p_stageInd): Changes the Stage_Mode property, as well as any related records. This should not be used once data has been set, to convert data use promote or demote.

public void

setUserContext(string p_userContext): Sets the value of the UserContext property.

public void

toXmlNode(XmlNode parentNode): Converts the data from the entity structure to XML.

public void

updateFromRecord(Record rec): Updates by matching fields in the record to fields in the underlying record on the entity. Values are only set if the value has changed. Values are set using properties, so any additional get-set logic is handled.

public void

updateKeyFields(): Updates the keyfields of all children based on the current entity. This allows key changes to roll down properly.

public void

validate(MessageLogBase p_messageLog out): Validate this entities' contents (and all its children).

public void

validateFirst(MessageLogBase p_messageLog out): Validation code that only runs on the first entity of a child array.

public void

workflow(boolean p_onlineMode): Orchestrates the prepublish and publish methods for this entity and all children.

Details

Property Details:

   

baseProps

public Array of string

ChildEntityArray

public Array of ChildEntity

data

public Record

entityDelete

public boolean

entityID

public string

entityName

public string

keyCollection

public Array of DataKey

parent

public IEntity

parentCE

public ChildEntity

SCC_ENTITY_INST_ID

public string

selfServiceMode

public boolean

STAGE_MODE

public boolean

UPDATE_RULE

public string

USER_CONTEXT

public string

XSDFieldList

public Array of string

Method Details:

   

buildXSD

Parameters:

XmlNode xmlnode: The Tools XmlNode object of the parent that should be continued by this entity.

clearDataPreImage

N/A

delete

Parameters:

boolean p_entityDelete: The value to be set for the entityDelete property.

demote

Parameters:

number p_tempID: The tempid to replace the emplid with.

destroy

N/A

fill

Parameters:

Record p_inRec(out): This record populates the record underlying this entity.

boolean p_clearState: If the clearstate is true the datapreimage will be populated as well.

fillFromKeys

Parameters:

boolean p_clearState: Whether or not to RESET this entities pre-image.

fromXmlNode

Parameters:

XmlNode parentNode: The XML node to pull from.

generateRowset

Return:

Rowset - a rowset populated based on the parent keys, or null if no rows are found.

generateXSD

Return:

string - the XSD as a string.

getChildEntity

Parameters:

string p_entityID: The entity ID, based on the registry, of the ChildEntity object to retrieve.

Return:

ChildEntity

getLOVDescr

Parameters:

string propname: The property name to get a LOV Description based on.

Return:

string

getMaxSeqNbrSQL

Return:

number - the maximum sequence number found.

getProperty

Parameters:

string propname

Return:

any

hardDelete

Parameters:

MessageLogBase p_messageLog(out): The MessageLog object to log all errors/warnings to.

hasEffdt

Return:

boolean - true if it has an effective date false otherwise.

hasEffseq

Return:

boolean - true if it has an effective sequence false otherwise.

hasKey

Parameters:

string p_keyname: The name of the field to check.

Return:

boolean - true if the field is a key, false if the field is not a key or the entity does not include it.

isEqualKeys

Parameters:

IEntity p_entity: The entity to compare the current entity to.

Return:

boolean - true if the entity keys are equal false otherwise.

isEqualKeysRecord

Parameters:

Record p_rec

Return:

boolean

prePublish

Parameters:

Rowset p_changesRS(out)

preSave

N/A

preSaveChildren

N/A

PreSaveFirst

N/A

promote

Parameters:

string emplID: The emplid for production to replace the tempid from staging.

MessageLogBase p_log(out): The MessageLog object to log all errors/warnings to.

publish

Parameters:

Rowset p_changesRS

boolean p_onlineMode

save

Parameters:

MessageLogBase p_messageLog(out): The messagelog object to log errors and warnings to.

setChildren

N/A

setDefault

N/A

setProperty

Parameters:

string propname

any value

setStageMode

Parameters:

boolean p_stageInd: The value to set the stage mode to, if the value passed matches the current stage mode no changes are made.

setUserContext

Parameters:

string p_userContext: The value set for the property UserContext.

toXmlNode

Parameters:

XmlNode parentNode: The XML parent node to push the xml to.

updateFromRecord

Parameters:

Record rec: The record object to copy data from.

updateKeyFields

N/A

validate

Parameters:

MessageLogBase p_messageLog(out): The messagelog object to log errors and warnings to.

validateFirst

Parameters:

MessageLogBase p_messageLog(out): The MessageLog object to log all errors/warnings to.

workflow

Parameters:

boolean p_onlineMode

Implemented Interfaces: SCC_COMMON:ENTITY:IEntity

Direct Known Subclasses: SCC_COMMON:ENTITY:StagedEntity, SCC_COMMON:ENTITY:StagedHREntity, SCC_COMMON:ENTITY:BasicEntity, SCC_COMMON:ENTITY:WorkEntity

See Also: BasicEntity, StagedEntity, StagedHREntity

Summary

Property Summary

   

public Array of string

baseProps: A list of properties that are controlled on the base entities, so the property name cannot be changed.

public Array of ChildEntity

ChildEntityArray: An array of all the ChildEntities of the current entity. The childEntities are determined by the entity registry, and populated when the entity is instansiated.

public Record

data: The backing record for this entity.

public Record

dataPreimage: The preimage of the backing record for this entity. The entity is compare against the preimage prior to save.

public boolean

DO_SAVE: Specifies if the entity is allowed to save.

protected AnyHashMap

dynamicProperties

public boolean

entityDelete: Marks this entity for deletion, and prevents save.

public string

entityID: ID of the entity from the registry.

protected Record

EntityMetaData

public string

entityName: The name of the entity as defined in the registry.

protected boolean

hasAuditRowAddDttm

protected boolean

hasAuditRowAddOprid: A value, set by testForAudit, that speficies if this entity has audit fields. It is used during save time to determine if the audit fields need to be updated.

protected boolean

hasAuditRowUpdDttm

protected boolean

hasAuditRowUpdOprid

protected Array of string

ignoreFields: DEPRECATED. ignoreFields is no longer used, if it is found it will be used by EntityPropBuilder during the upgrade to the new property system. The array of names of fields to ignore for the purposes of moving data to/from xml, pushing a new field onto this array will add it to the list.

public Array of DataKey

keyCollection

public IEntity

parent: Parent Entity, null if it is at the top level of tree.

public ChildEntity

parentCE: The child entity that encompasses all the entities of a particular type under the parent.

public string

prodRecordName: The name of the production record is populated here based on the registry.

protected Rowset

PropertyMetaData

protected string

RECORD_NAME: The name of the current record underlying this entity.

public string

SCC_ENTITY_INST_ID: A unique identifier for the specific row of data.

public datetime

SCC_ROW_ADD_DTTM: The Datetime the row of data was added, this is part of the who columns. This property corresponds to this field, if it exists on the record, if not it does nothing.

RECOMMENDATION: Do not override get & set.

public string

SCC_ROW_ADD_OPRID: The Person who added the row of data, this is part of the who columns. This property corresponds to this field, if it exists on the record, if not it does nothing.

RECOMMENDATION: Do not override get & set.

public datetime

SCC_ROW_UPD_DTTM: The Datetime the row of data was update, this is part of the who columns. This property corresponds to this field, if it exists on the record, if not it does nothing.

RECOMMENDATION: Do not override get & set.

public string

SCC_ROW_UPD_OPRID The Person who updated the row of data, this is part of the who columns. This property corresponds to this field, if it exists on the record, if not it does nothing.

RECOMMENDATION: Do not override get & set.

public boolean

selfServiceMode: If the entity is in selfServiceMode.

public boolean

STAGE_MODE: Specifies if this entity is currently in Stage Mode (True) and working with the stage record, or in Production Mode (False) and working with the production record.

public string

UPDATE_RULE: Specifies the update rule to use for the purposes of Data Update Rule.

public string

USER_CONTEXT: The user that this is being run on behalf of, since adds and updates may be done from administrative mode on behalf of a given user, or %UserId.

public Record

workflowPreimage: The pre-image object to use for workflow.

protected string

XSDCustomNS: The namespace to use for custom attributes in the schema, found and set during generateXSD.

public Array of string

XSDFieldList: A string list of all the fields for the current entity for the XSD. This is used in conjunction with buildXSD to determine if key fields are required, based on if their parent has the same key.

protected string

XSDNS: The namespace to use for the schema, found and set during generateXSD.

Constructor Summary:

   

public void

AbstractEntity(IEntity p_parent): The Constructor.

Method Summary:

   

protected string

applyDataKey(string p_queryString)

protected string

buildCSVString(array of any p_arrValues, string p_metaTag)

protected void

buildPropertyMetaDataCache()

public void

buildXSD(XmlNode xmlnode): Builds the xml schema section pertaining to this entity. The implementation builds and populates the schema based on the underlying record, ignoring any fields in the ignore array. Keys that roll down from the parent will not be marked required on the child.

RECOMMENDATION: Only override if the entity requires a custom schema.

protected void

buildXSDChildren(XmlNode xmlnode): Iterates through the ChildEntityArray and issues a buildXSD against each ChildEntity, which in turn creates a temporary entity and calls buildXSD. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

protected void

changeRecord(string p_recname): Changes the record to the record name specified.

RECOMMENDATION: Do not override.

public void

clearDataPreImage(): Clears the Data preimage and workflow preImage.

RECOMMENDATION: Do not override.

protected void

clearDataPreImageChildren(): Iterates through the ChildEntityArray and issues a clearDataPreImage against each ChildEntity, which in turn calls clearDataPreImage on all of the entities it contains.

RECOMMENDATION: Do not override.

protected void

commonValidate(MessageLogBase p_messageLog out, number p_validateArgs):

Runs the record based validations and outputs results to the log. Also invokes validateChildren. validateChildren is called before record based validations. Validation Arguments<table> <tr><td>%Edit_DateRange</td><td>Reasonable Date Range (Is the date contained within the specified reasonable date range?)</td></tr> <tr><td>%Edit_OneZero</td><td>1/0 (Do all 1/0 fields contain only a 1 or 0?)</td></tr> <tr><td>%Edit_PromptTable</td><td>Prompt Table (Is field data contained in the specified prompt table?)</td></tr> <tr><td>%Edit_Required</td><td>Required Field (Do all required fields contain data? For numeric or signed fields, it checks that they do not contain NULL or 0 values.)</td></tr> <tr><td>%Edit_TranslateTable</td><td>Translate Table (Is field data contained in the specified translate table?)</td></tr> <tr><td>%Edit_YesNo</td><td>Yes/No (Do all yes/no fields only contain only yes or no data?)</td></tr> </table>

protected void

defaultChildren(): Iterates through the ChildEntityArray and issues a setDefault against each ChildEntity, which in turn calls setDefault on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

public void

delete(boolean p_entityDelete): Marks this entity and all its children for deletion at save time - soft delete.

RECOMMENDATION: Do not override this method.

protected void

deleteChildren(boolean p_entityDelete): Iterates through the ChildEntityArray and issues a delete against each ChildEntity, which in turn calls delete on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

public void

demote(number p_tempID): Moves data from production records to staging record.

RECOMMENDATION: This must be implemented, but is only used if the entity is staged. In the implementation make sure to call demoteChildren to cause demote to work with the registry.

protected void

demoteChildren(number p_tempID): Iterates through the ChildEntityArray and issues a demote against each ChildEntity, which in turn calls demote on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

public void

destroy(): Perform cleanup activity on this entity.

public boolean

entityFieldUpdateNeeded(Rowset p_DataUpdateRule, string p_fieldName, any oldValue)

RECOMMENDATION: Do not override

public boolean

entityTypeUpdateNeeded(Rowset p_DataUpdateRule, any p_entityType, boolean p_newFlag)

RECOMMENDATION: Do not override.

public boolean

entityTypeUpdateRequested(Rowset p_DataUpdateRule, any p_entityType)

RECOMMENDATION: Do not override

public boolean

entityUpdateRequested(Rowset p_DataUpdateRule)

RECOMMENDATION: Do not override.

public void

fill(Record p_inRec out, boolean p_clearState): Populates (fills) this entity from the given record.

RECOMMENDATION: Do not override.

protected void

fillChildren(boolean p_clearState): Iterates through the ChildEntityArray and issues a fill against each ChildEntity, which in turn calls fill on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION : Do not override.

public void

fillFromKeys(boolean p_clearState): Performs a select by key based on the fields on the underlying record. This should be run on the top level entity to start a fill.

protected void

fillLOVDescrs(): Re-initializes and Populates the LOV Description Hash Map shmLOVDescr based on the current property values.

public void

fromXmlNode(XmlNode parentNode): Retrieves data to properties based on the fields in the record. Fields marked ignore are not Processed. Entity Element Names, wrapping of the ChildEntities or embedding is based on the entity registry.

RECOMMENDATION: Only override if the xml for this entity has to be custom.

protected void

fromXmlNodeChildren(XmlNode parentNode): Iterates through the ChildEntityArray and issues a fromXMLNode against each ChildEntity, which in turn calls fromXMLNode on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

public Rowset

generateRowset(): This method generates a rowset of data for the underlying record of this entity based on the keys of the parent. It is used as part of the fill process for building out the entity tree. The method is called as if it were a static method, so it is not associated with any particular entity data. The base implementation dynamically matches keys from the parent to the child and builds the query for the rowset based on that.

RECOMMENDATION: If the key structure between the parent and child does not match up, or the rowset needs to be built using another method (i.e. a service) override this method.

public string

generateXSD(): Generates the xml schema with this node as the root.

RECOMMENDATION: Do not override.

public ChildEntity

getChildEntity(string p_entityID): Retrives the ChildEntity Object based on the entity ID.

RECOMMENDATION: Do not override.

protected CSUserDefaults

getCSUserDefaults(): Retrieves the CSUserDefaults.

RECOMMENDATION: Do not override.

public DataKey

getDataKey(): Retrieves the dataKey for this entity.

RECOMMENDATION: Do not override.

public Record

getEntPropsByPropertyName(string propname): Returns the EntityProperty Record (SCC_ENT_PROPS) based on the property name.

protected string

getFullEntityPathName()

public array of string

getIgnoreFields(): A method to get the current ignorefields, used for upgrade.

protected InstallationHCM

getInstallationHCM(): Retrieves the HCM Installation Defaults.

RECOMMENDATION: Do not override.

public string

getLOVDescr(string propname): Returns the LOV Description based on the associated property name when parsed from XML.

protected string

getLOVValue(Record p_recProp, string p_code)

public number

getMaxSeqNbrSQL(): Retrieves the maximum sequence number from the database based on the keystructure of the current entity. This method is irrelevant if there are no sequence numbers for the entity.

RECOMMENDATION: Override if there is a sequence number and it is not related to all the keys.

protected IEntity

getParent(): Retrieves the parent Entity.

RECOMMENDATION: Do not override.

public any

getProperty(string propname)

protected any

getPropertyByMetaRec(Record propMetaRec)

protected string

getRecordName(): Retrieves the name of the current record on this entity.

RECOMMENDATION: Do not override.

public string

getTagByFieldName(string fieldname): Returns the xml tag based on the field name. If metadata exists that is used, otherwise it returns the field name. This method should no longer be overriden! The xml tag is now based on the property meta data.

public void

hardDelete(MessageLogBase p_messageLog out): Deletes the entity object and all its child entities from the database, based on the entityDelete flag.

RECOMMENDATION: Do not override this method.

protected void

hardDeleteChildren(MessageLogBase p_messageLog out): Iterates through the ChildEntityArray and issues a hardDelete against each ChildEntity, which in turn calls hardDelete on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

public boolean

hasEffdt()

public boolean

hasEffseq()

public boolean

hasKey(string p_keyname): Check if the entity has a particular field as a key.

RECOMMENDATION: Do not override.

public boolean

isEqualKeys(IEntity p_entity): Allows the given entity to be compared with this entity for equality. The Base implementation compares for equality based on the underlying entity record contents.

RECOMMENDATION: Override this method if you need to do custom equality checking.

public boolean

isEqualKeysRecord(Record p_rec): Allows the given record to be compared with this entity for equality. Compares for equality based on the underlying entity record content.

RECOMMENDATION: Override this method if you need to do custom equality checking.

public void

populateAudit(): Populates the who column data, this method is invoked prior to save. This allows handling of the who columns to be more or less dynamic. If there are no who columns this method does nothing .

RECOMMENDATION: Do not override.

public void

prePublish(Rowset p_changesRS out): Uses the workflowPreimage and post images of the entity to build a PSCAMA Rowset in preparation for publish. The parameter Rowset may be Null. Data should be appended to this rowset if it is NON-Null.

RECOMMENDATION: Override if pre-publish logic is required.

public void

preSave(): Allows the opportunity for an entity to perform any pre Save activities. The Base implementation does nothing. Presave is automatically called from save, from the top level entity, and runs the presave logic before invoking preSave children.

RECOMMENDATION: Override this method if the entity needs to do last minute preSave processing.

public void

preSaveChildren(): Iterates through the ChildEntityArray and issues a preSave against each ChildEntity, which in turn calls preSave on all of the entities it contains. Base implementation uses the entity registry. Presave is automatically called from save, from the top level entity, and runs the presave logic before invoking preSave children.

RECOMMENDATION: Do not override.

public void

preSaveFirst(): Similar to presave, however, this method is called once per childEntity, prior to any other presave activity to allow for presave activity that may act across all entities in the childEntity. The Base implementation does nothing.

RECOMMENDATION: Override this method if the entity needs to do last minute preSave processing crossing entity boundaries.

public void

promote(string p_emplID, MessageLogBase p_log out): Moves Data from Staging to Production Records (does not validate or save).

RECOMMENDATION: This must be implemented, but is only used if the entity is staged. In the implementation make sure to call promoteChildren to cause promote to work with the registry.

protected void

promoteChildren(string p_emplID, MessageLogBase p_log out): Iterates through the ChildEntityArray and issues a promote against each ChildEntity, which in turn calls promote on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

public void

publish(Rowset p_changesRS, boolean p_onlineMode): Takes a PSCAMA based rowset of information to be published during workflow Uses that information to construct a Message and according to the onlineMode publishes the Message data in realtime or to the batch delay table.

RECOMMENDATION: Override if publish logic is required.

public Rowset

retrieveDataRule(): Uses the entityID and Update Rule Name to read Data Update Rule information.

RECOMMENDATION: Do not override.

public void

save(MessageLogBase p_messageLog out): Base implementation, calls presave and issues save for all children then a save for this entity.

RECOMMENDATION: Do not override.

protected void

saveChildren(MessageLogBase p_messageLog out): Iterates through the ChildEntityArray and issues a Save against each ChildEntity, which in turn calls Save on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

public void

setChildren(): Builds out the ChildEntityArray based on the entity registry.

RECOMMENDATION: Do not override.

protected void

setData(Record p_dataRec): Sets the Data record.

RECOMMENDATION: Do not override.

protected void

setDataPreImage(Record p_dataPreImageRec): Sets the Data preimage.

RECOMMENDATION: Do not override.

public void

setDefault(): Base implementation sets the default value for each field using the Field setDefault method if the field has not already been marked changed.

RECOMMENDATION: Override if required

protected void

setEntityID(string p_entityID): Sets the entity ID, and retrieves the related information from the registry.

RECOMMENDATION: Do not override.

protected void

setKeyList(): Sets the list of key fields to private instance variable keyList.

RECOMMENDATION: Do not override.

public void

setProperty(string propname, any value)

protected void

setPropertyByMetaRec(Record propMetaRec, any value)

public void

setStageMode(boolean p_stageInd): Sets the stage mode and changes the underlying record to stage/production for this entity and all children. This implementation does nothing since stage mode is not required.

RECOMMENDATION: Override if the entity is Staged.

public void

setUpdateRule(string p_UpdateRule): Sets a specific update rule.

RECOMMENDATION: Do not override.

public void

setUpdateRuleByTransName(string p_transName): Sets the update rule based on the transaction name in the setup table.

RECOMMENDATION: Do not override.

public void

setUserContext(string p_userContext): Sets the user context for this entity.

RECOMMENDATION: Do not override.

protected void

testForAudit(): Checks if the underlying record has the audit fields and sets the property hasAudit.

RECOMMENDATION: Do not override.

public void

toXmlNode(XmlNode parentNode): Pushes data to the XML structure from the entity. Fields marked ignore are not Processed. Entity Element Names, wrapping of the ChildEntities or embedding is based on the entity registry. The value of properties corresponding to the fields are pushed.

RECOMMENDATION: Only override if the xml for this entity has to be custom.

protected void

toXmlNodeChildren(XmlNode parentNode): Iterates through the ChildEntityArray and issues a toXMLNode against each ChildEntity, which in turn calls toXMLNode on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

public void

updateChildFields(string propname, array of ChildEntity cea): Sets the value of a specific property on all ChildEntites to match the current entity.

RECOMMENDATION: Do not override.

public void

updateFromRecord(Record rec): Updates by matching fields in the record to fields in the underlying record on the entity. Values are only set if the value has changed. Values are set using properties, so any additional get-set logic is handled.

protected void

updateKeyFields(): Updates all the key fields of the child entities that match the key fields on this entity.

RECOMMENDATION: Do not override.

public void

validate(MessageLogBase p_messageLog out): Validates the entity object if entity is not marked for deletion. NOTE: commonValidate invokes validateChildren. validateChildren is called before record based validations.

RECOMMENDATION: Override this method if the entity requires custom validation. Use commonValidate to call the system edits for control over exactly which edits run, or %Super. Validate if you want them all.-- This method does the following standard system edits:- Required fields are present- Validates all 1/0 fields contain only a 1 or a 0- Validates all translate fields have a valid value- Validates all YesNo fields contain a Y or an N- Validates all prompt edit fields have a valid value.

protected void

validateChildren(MessageLogBase p_messageLog out): Iterates through the ChildEntityArray and issues a validate against each ChildEntity, which in turn calls validate on all of the entities it contains. Base implementation uses the entity registry.

RECOMMENDATION: Do not override.

public void

validateFirst(MessageLogBase p_messageLog out): Allows validations to be performed on all entities under a childEntity; this is valuable in doing validation against other entities under the same childEntity.

RECOMMENDATION: Override this method if the entity requires custom validation crossing entity boundaries.

public void

workflow(boolean p_onlineMode): Orchestrates the prepublish and publish methods for this entity and all children.

RECOMMENDATION: Do not override.

Details

Property Details:

   

baseProps

public Array of string

ChildEntityArray

public Array of ChildEntity

data

public Record

dataPreimage

public Record

DO_SAVE

public boolean

dynamicProperties

protected AnyHashMap

entityDelete

public boolean

entityID

public string

EntityMetaData

protected Record

entityName

public string

hasAuditRowAddDttm

protected boolean

hasAuditRowAddOprid

protected boolean

hasAuditRowUpdDttm

protected boolean

hasAuditRowUpdOprid

protected boolean

ignoreFields

protected Array of string

keyCollection

public Array of DataKey

parent

public IEntity

parentCE

public ChildEntity

prodRecordName

public string

PropertyMetaData

protected Rowset

RECORD_NAME

protected string

SCC_ENTITY_INST_ID

public string

SCC_ROW_ADD_DTTM

public datetime

SCC_ROW_ADD_OPRID

public string

SCC_ROW_UPD_DTTM

public datetime

SCC_ROW_UPD_OPRID

public string

selfServiceMode

public boolean

STAGE_MODE

public boolean

UPDATE_RULE

public string

USER_CONTEXT

public string

workflowPreimage

public Record

XSDCustomNS

protected string

XSDFieldList

public Array of string

XSDNS

protected string

Constructor Details:

   

AbstractEntity

Parameters:

IEntity p_parent: The parent of this entity, or null if this is the top of the entity tree.

Method Details:

   

applyDataKey

Parameters:

string p_queryString

Return:

string

buildCSVString

Parameters:

array of any p_arrValues

string p_metaTag

Return:

string

buildPropertyMetaDataCache

N/A

buildXSD

Parameters:

XmlNode xmlnode: The Tools XmlNode object of the parent that should be continued by this entity.

buildXSDChildren

Parameters:

XmlNode xmlnode: The node of the current entity that all children will see as the parent.

changeRecord

Parameters:

string p_recname: The name of the record to have this entity use.

clearDataPreImage

N/A

clearDataPreImageChildren

N/A

commonValidate

Parameters:

MessageLogBase p_messageLog(out): The message log to log any errors to.

number p_validateArgs: Specify the validations to be run in a format like (%Edit_DateRange + %Edit_OneZero +Edit_Required).

defaultChildren

N/A

delete

Parameters:

boolean p_entityDelete: True to delete this entity and False to "undelete".

deleteChildren

Parameters:

boolean p_entityDelete: True to delete this entity and False to "undelete".

demote

Parameters:

number p_tempID: The tempid to replace the emplid with.

demoteChildren

Parameters:

number p_tempID: The Tempid to associated with all demoted data.

destroy

N/A

entityFieldUpdateNeeded

Parameters:

Rowset p_DataUpdateRule

string p_fieldName

any oldValue

Return:

boolean

entityTypeUpdateNeeded

Parameters:

Rowset p_DataUpdateRule

any p_entityType

boolean p_newFlag

Return:

boolean – True if the Data Update Rule specifies the entity type should be updated.

entityTypeUpdateRequested

Parameters:

Rowset p_DataUpdateRule: The data update rule.

any p_entityType: The entity type value (for example, For the Address entity, type values include: DORM, HOME, MAIL, and so on.)

Return:

boolean - True if any row of the Data Update Rule Detail (for this entity AND type) has an action not equal to "Do Not Update" (N).

entityUpdateRequested

Parameters:

Rowset p_DataUpdateRule: The data update rule.

Return:

boolean - True if any row of the Data Update Rule Detail (for this entity) has an action not equal to "Do Not Update" (N).

fill

Parameters:

Record p_inRec(out): The record structure that will be used to populate this entity.

boolean p_clearState: Whether or not to RESET this entities pre-image.

fillChildren

Parameters:

boolean p_clearState

fillFromKeys

Parameters:

boolean p_clearState: Whether or not to RESET this entities pre-image.

fillLOVDescrs

N/A

fromXmlNode

Parameters:

XmlNode parentNode: The parent node to add this node to.

fromXmlNodeChildren

Parameters:

XmlNode parentNode: The node of the current entity that all children will see as the parent.

generateRowset

Return:

Rowset - a rowset populated based on the parent keys, or null if no rows are found.

generateXSD

Return:

string - the XML Schema as a string.

getChildEntity

Parameters:

string p_entityID: The entity ID, based on the registry, of the ChildEntity object to retrieve.

Return:

ChildEntity

getCSUserDefaults

Return:

CSUserDefaults

getDataKey

Return:

DataKey

getEntPropsByPropertyName

Parameters:

string propname: The property name.

Return:

Record

getFullEntityPathName

Return:

string

getIgnoreFields

Return:

array of string

getInstallationHCM

Return:

InstallationHCM

getLOVDescr

Parameters:

string propname: The property name to get a LOV Description based on.

Return:

string

getLOVValue

Parameters:

Record p_recProp

string p_code

Return:

string

getMaxSeqNbrSQL

Return:

number - the maximum sequence number found.

getParent

Return:

IEntity

getProperty

Parameters:

string propname

Return:

any

getPropertyByMetaRec

Parameters:

Record propMetaRec

Return:

any

getRecordName

Return:

string - The record name

getTagByFieldName

Parameters:

string fieldname: The fieldname to search on.

Return:

string

hardDelete

Parameters:

MessageLogBase p_messageLog(out): the message log

hardDeleteChildren

Parameters:

MessageLogBase p_messageLog(out): the message log

hasEffdt

Return:

boolean

hasEffseq

Return:

boolean

hasKey

Parameters:

string p_keyname: The name of the field to check.

Return:

boolean - true, the field exists and is a key, false, the field is not a key, or does not exist.

isEqualKeys

Parameters:

IEntity p_entity

Return:

boolean

isEqualKeysRecord

Parameters:

Record p_rec

Return:

boolean

populateAudit

 

prePublish

Parameters:

Rowset p_changesRS(out)

preSave

N/A

preSaveChildren

N/A

preSaveFirst

N/A

promote

Parameters:

string p_emplID

MessageLogBase p_log(out): The MessageLog object to log all errors/warnings to.

promoteChildren

Parameters:

string p_emplID: The EMPLID key to associate with the promoted data.

MessageLogBase p_log(out)

publish

Parameters:

Rowset p_changesRS

boolean p_onlineMode

retrieveDataRule

Return:

Rowset - the Data Update Rule information for the current entity in a rowset (Level 0 - SCC_DUR_HDR, Level 1 - SCC_DUR_DTL).

save

Parameters:

MessageLogBase p_messageLog(out): the message log

saveChildren

MessageLogBase p_messageLog(out): the message log

setChildren

N/A

setData

Parameters:

Record p_dataRec: The record to set data to.

setDataPreImage

Parameters:

Record p_dataPreImageRec: The preimage record to set.

setDefault

N/A

setEntityID

Parameters:

string p_entityID: The ID of the Entity.

setKeyList

N/A

setProperty

Parameters:

string propname

any value

setPropertyByMetaRec

Parameters:

Record propMetaRec

any value

setStageMode

Parameters:

boolean p_stageInd: Set to stage (true) or production (false).

setUpdateRule

Parameters:

string p_UpdateRule: The specific update rule.

setUpdateRuleByTransName

Parameters:

string p_transName: The transaction name.

setUserContext

Parameters:

string p_userContext: The user context to set. An empty string sets the context to %UserId.

testForAudit

N/A

toXmlNode

Parameters:

XmlNode parentNode: The parent node of this node.

toXmlNodeChildren

Parameters:

XmlNode parentNode: The node of the current entity that all children will see as the parent.

updateChildFields

Parameters:

string propname: The name of the property to update.

array of ChildEntity cea: The array of child entities (and their children down the tree) to set the property on.

updateFromRecord

Parameters:

Record rec: The record object to copy data from.

updateKeyFields

N/A

validate

Parameters:

MessageLogBase p_messageLog(out): The container for all the messages that will be generated by this method.

validateChildren

Parameters:

MessageLogBase p_messageLog(out): The message log.

validateFirst

Parameters:

MessageLogBase p_messageLog(out): The container for all the messages that will be generated by this method.

workflow

Parameters:

boolean p_onlineMode

SCC_COMMON:ENTITY:AbstractEntity – – SCC_COMMON:ENTITY:BasicEntity

Direct Known Subclasses: SCC_COMMON:ENTITY:GENERICS:GenericBasicEntity, SCC_COMMON:ENTITY:API:EntityUnitTest, SCC_COMMON:ENTITY:API:EntityRegistry, SCC_COMMON:ENTITY:API:EntityType, SCC_COMMON:ENTITY:API:EntityChild, SCC_COMMON:ENTITY:API:EntityProperty, SCC_COMMON:SHOPCART:ShoppingCartItem, SCC_COMMON:ENTITY:API:EntityTypeChild

Summary

Property Summary:

   

public boolean

STAGE_MODE

Properties Inherited from SCC_COMMON:ENTITY:AbstractEntity

baseProps, ChildEntityArray, data, dataPreimage, DO_SAVE, dynamicProperties, entityDelete, entityID, EntityMetaData, entityName, hasAuditRowAddDttm, hasAuditRowAddOprid, hasAuditRowUpdDttm, hasAuditRowUpdOprid, ignoreFields, keyCollection, parent, parentCE, prodRecordName, PropertyMetaData, RECORD_NAME, SCC_ENTITY_INST_ID, SCC_ROW_ADD_DTTM, SCC_ROW_ADD_OPRID, SCC_ROW_UPD_DTTM, SCC_ROW_UPD_OPRID, selfServiceMode, UPDATE_RULE, USER_CONTEXT, workflowPreimage, XSDCustomNS, XSDFieldList, XSDNS

Constructor Summary:

   

public void

BasicEntity(IEntity p_parent): Base Constructor

Method Summary:

   

public void

demote(number p_tempID): This method does nothing since this entity is not staged, but it has to be implemented.

public void

promote(string p_emplID, MessageLogBase p_log out): This method does nothing since this entity is not staged, but it has to be implemented.

Methods Inherited from SCC_COMMON:ENTITY:AbstractEntity

applyDataKey, buildCSVString, buildPropertyMetaDataCache, buildXSD, buildXSDChildren, changeRecord, clearDataPreImage, clearDataPreImageChildren, commonValidate, defaultChildren, delete, deleteChildren, demoteChildren, destroy, entityFieldUpdateNeeded, entityTypeUpdateNeeded, entityTypeUpdateRequested, entityUpdateRequested, fill, fillChildren, fillFromKeys, fillLOVDescrs, fromXmlNode, fromXmlNodeChildren, generateRowset, generateXSD, getChildEntity, getCSUserDefaults, getDataKey, getEntPropsByPropertyName, getFullEntityPathName, getIgnoreFields, getInstallationHCM, getLOVDescr, getLOVValue, getMaxSeqNbrSQL, getParent, getProperty, getPropertyByMetaRec, getRecordName, getTagByFieldName, hardDelete, hardDeleteChildren, hasEffdt, hasEffseq, hasKey, isEqualKeys, isEqualKeysRecord, populateAudit, prePublish, preSave, preSaveChildren, preSaveFirst, promoteChildren, publish, retrieveDataRule, save, saveChildren, setChildren, setData, setDataPreImage, setDefault, setEntityID, setKeyList, setProperty, setPropertyByMetaRec, setStageMode, setUpdateRule, setUpdateRuleByTransName, setUserContext, testForAudit, toXmlNode, toXmlNodeChildren, updateChildFields, updateFromRecord, updateKeyFields, validate, validateChildren, validateFirst, workflow

Details

Property Details:

   

STAGE_MODE

public boolean

Constructor Details:

   

Basic Entity

Parameters:

IEntity p_parent: the parent of this entity, or null if this is the top of the entity tree.

Method Details:

   

demote

Parameters:

number p_tempID

promote

Parameters:

string p_emplID

MessageLogBase p_log(out)

SCC_COMMON:ENTITY:AbstractEntity – – SCC_COMMON:ENTITY:StagedEntity

Direct Known Subclasses: SCC_COMMON:ENTITY:GENERICS:GenericStagedEntity

Summary

Property Summary:

   

public boolean

DO_SAVE_CHILDREN: Specifies if the children should be saved.

public string

EMPLID: Builds the xml schema section pertaining to this entity. The implementation builds and populates the schema based on the underlying record, ignoring any fields in the ignore array. Keys that roll down from the parent will not be marked required on the child.

RECOMMENDATION: Only override if the entity requires a custom schema. @param xmlnode: The Tools XmlNode object of the parent that should be continued by this entity.

public string

entityID: The entity ID based on the entity registry.

public string

entityName: The entity Name as specified in the registry.

public string

PROD_RECORD_NAME: The Production Record name from the registry.

public number

SCC_TEMP_ID: The property for the tempid field on stage records.

public string

STAGE_RECORD_NAME: The Stage Record name from the registry.

Properties Inherited from SCC_COMMON:ENTITY:AbstractEntity

baseProps, ChildEntityArray, data, dataPreimage, DO_SAVE, dynamicProperties, entityDelete, EntityMetaData, hasAuditRowAddDttm, hasAuditRowAddOprid, hasAuditRowUpdDttm, hasAuditRowUpdOprid, ignoreFields, keyCollection, parent, parentCE, prodRecordName, PropertyMetaData, RECORD_NAME, SCC_ENTITY_INST_ID, SCC_ROW_ADD_DTTM, SCC_ROW_ADD_OPRID, SCC_ROW_UPD_DTTM, SCC_ROW_UPD_OPRID, selfServiceMode, STAGE_MODE, UPDATE_RULE, USER_CONTEXT, workflowPreimage, XSDCustomNS, XSDFieldList, XSDNS

Constructor Summary:

   

public void

StagedEntity(IEntity p_parent): The Constructor

Method Summary:

   

public void

comparePreviousEffdt(): Compares the current record underlying this entity with previous effective dated rows. If no data has changed between this entity and the current effective dated row it prevents a save from occurring. This only matters when we are dealing with effective dated entities.

RECOMMENDATION: Do not override.

public void

demote(number p_tempID): Moves data from production records to staging record.

RECOMMENDATION: Do not override.

public string

getID(): Retrieves the temp ID.

protected string

getProdRecordName(): Retrieves the production record name.

protected string

getStageRecordName(): Retrieves the stage record name.

public void

promote(string p_emplID, MessageLogBase p_log out): Moves Data from Staging to Production Records (does not validate or save).

RECOMMENDATION: Do not override.

public void

save(MessageLogBase p_messageLog out): Calls presave and issues save for all children then a save for this entity.

RECOMMENDATION: Do not override.

protected void

setEntityID(string p_entityID): Sets the entity ID, and retrieves the related information from the registry.

RECOMMENDATION: Do not override.

public void

setID(string p_ID): Sets the temp id for this entity.

RECOMMENDATION: Do not override.

public void

setStageMode(boolean p_stageInd): Sets the stage mode and changes the underlying record to stage/production for this entity and all children.

RECOMMENDATION: Do not override.

Methods Inherited from SCC_COMMON:ENTITY:AbstractEntity

applyDataKey, buildCSVString, buildPropertyMetaDataCache, buildXSD, buildXSDChildren, changeRecord, clearDataPreImage, clearDataPreImageChildren, commonValidate, defaultChildren, delete, deleteChildren, demoteChildren, destroy, entityFieldUpdateNeeded, entityTypeUpdateNeeded, entityTypeUpdateRequested, entityUpdateRequested, fill, fillChildren, fillFromKeys, fillLOVDescrs, fromXmlNode, fromXmlNodeChildren, generateRowset, generateXSD, getChildEntity, getCSUserDefaults, getDataKey, getEntPropsByPropertyName, getFullEntityPathName, getIgnoreFields, getInstallationHCM, getLOVDescr, getLOVValue, getMaxSeqNbrSQL, getParent, getProperty, getPropertyByMetaRec, getRecordName, getTagByFieldName, hardDelete, hardDeleteChildren, hasEffdt, hasEffseq, hasKey, isEqualKeys, isEqualKeysRecord, populateAudit, prePublish, preSave, preSaveChildren, preSaveFirst, promoteChildren, publish, retrieveDataRule, saveChildren, setChildren, setData, setDataPreImage, setDefault, setKeyList, setProperty, setPropertyByMetaRec, setUpdateRule, setUpdateRuleByTransName, setUserContext, testForAudit, toXmlNode, toXmlNodeChildren, updateChildFields, updateFromRecord, updateKeyFields, validate, validateChildren, validateFirst, workflow

Details

Property Details:

   

DO_SAVE_CHILDREN

public boolean

EMPLID

public string

entityID

public string

entityName

public string

PROD_RECORD_NAME

public string

SCC_TEMP_ID

public number

STAGE_RECORD_NAME

public string

Constructor Details:

   

StagedEntity

Parameters:

IEntity p_parent: the parent of this entity, or null if this is the top of the entity tree.

Method Details:

   

comparePreviousEffdt

 

demote

Parameters:

number p_tempID: The tempid to replace the emplid with.

getID

Return:

string - the tempID

getProdRecordName

Return:

string

getStageRecordName

Return:

string

promote

Parameters:

string p_emplID

MessageLogBase p_log(out): The MessageLog object to log all errors/warnings to.

save

Parameters:

MessageLogBase p_messageLog(out): The message log.

setEntityID

Parameters:

string p_entityID: The ID of the Entity.

setID

Parameters:

string p_ID: The temporary ID value to set.

setStageMode

Parameters:

boolean p_stageInd: Set to stage (true) or production (false).

SCC_COMMON:ENTITY:AbstractEntity – – SCC_COMMON:ENTITY:StagedHREntity

Summary

Property Summary:

   

public string

EMPLID: Builds the xml schema section pertaining to this entity. The implementation builds and populates the schema based on the underlying record, ignoring any fields in the ignore array. Keys that roll down from the parent will not be marked required on the child.

RECOMMENDATION: Only override if the entity requires a custom schema. @param xmlnode: The Tools XmlNode object of the parent that should be continued by this entity.

public string

entityID: The entity ID based on the entity registry.

public string

entityName: The entity Name as specified in the registry.

public string

PROD_RECORD_NAME: The Production Record name from the registry.

public number

SCC_TEMP_ID: The property for the tempid field on stage records.

public string

STAGE_RECORD_NAME: The Stage Record name from the registry.

Properties Inherited from SCC_COMMON:ENTITY:AbstractEntity

baseProps, ChildEntityArray, data, dataPreimage, DO_SAVE, dynamicProperties, entityDelete, EntityMetaData, hasAuditRowAddDttm, hasAuditRowAddOprid, hasAuditRowUpdDttm, hasAuditRowUpdOprid, ignoreFields, keyCollection, parent, parentCE, prodRecordName, PropertyMetaData, RECORD_NAME, SCC_ENTITY_INST_ID, SCC_ROW_ADD_DTTM, SCC_ROW_ADD_OPRID, SCC_ROW_UPD_DTTM, SCC_ROW_UPD_OPRID, selfServiceMode, STAGE_MODE, UPDATE_RULE, USER_CONTEXT, workflowPreimage, XSDCustomNS, XSDFieldList, XSDNS

Constructor Summary:

   

public void

StagedHREntity(IEntity p_parent): The Constructor

Method Summary:

   

public void

demote(number p_tempID): Moves data from production records to staging record.

RECOMMENDATION: Do not override.

public baseType

getHRType(string p_EMPLID): Builds the HCR_PERSON_TYPES object based on the data in the current entity using the emplid provided.

public string

getID(): Retrieves the temp ID.

protected ServiceManager

getServiceManager(): Returns the HCM ServiceManager object.

public void

hardDelete(MessageLogBase p_messageLog out): Deletes the entity object and all its child entities from the database, based on the entityDelete flag.

RECOMMENDATION: Do not override this method

public void

promote(string p_emplID, MessageLogBase p_log out): Moves Data from Staging to Production Records (does not validate or save).

RECOMMENDATION: Do not override.

public void

save(MessageLogBase p_messageLog out): Calls presave and issues save for all children then a save for this entity. On save for production it invokes updateDeleteHcm to call the HCM Web Service.

RECOMMENDATION: Do not override.

protected void

setEntityID(string p_entityID): Sets the entity ID, and retrieves the related information from the registry.

RECOMMENDATION: Do not override.

public void

setID(string p_ID): Sets the temp id for this entity.

RECOMMENDATION: Do not override.

public void

setStageMode(boolean p_stageInd): Sets the stage mode and changes the underlying record to stage/production for this entity and all children.

RECOMMENDATION: Do not override.

protected void

updateDeleteHCM(boolean p_deleteFlag): This method is called from save, it should perform the update for production data by calling the HCM service.

Methods Inherited from SCC_COMMON:ENTITY:AbstractEntity

applyDataKey, buildCSVString, buildPropertyMetaDataCache, buildXSD, buildXSDChildren, changeRecord, clearDataPreImage, clearDataPreImageChildren, commonValidate, defaultChildren, delete, deleteChildren, demoteChildren, destroy, entityFieldUpdateNeeded, entityTypeUpdateNeeded, entityTypeUpdateRequested, entityUpdateRequested, fill, fillChildren, fillFromKeys, fillLOVDescrs, fromXmlNode, fromXmlNodeChildren, generateRowset, generateXSD, getChildEntity, getCSUserDefaults, getDataKey, getEntPropsByPropertyName, getFullEntityPathName, getIgnoreFields, getInstallationHCM, getLOVDescr, getLOVValue, getMaxSeqNbrSQL, getParent, getProperty, getPropertyByMetaRec, getRecordName, getTagByFieldName, hardDeleteChildren, hasEffdt, hasEffseq, hasKey, isEqualKeys, isEqualKeysRecord, populateAudit, prePublish, preSave, preSaveChildren, preSaveFirst, promoteChildren, publish, retrieveDataRule, saveChildren, setChildren, setData, setDataPreImage, setDefault, setKeyList, setProperty, setPropertyByMetaRec, setUpdateRule, setUpdateRuleByTransName, setUserContext, testForAudit, toXmlNode, toXmlNodeChildren, updateChildFields, updateFromRecord, updateKeyFields, validate, validateChildren, validateFirst, workflow

Details

Property Details:

   

EMPLID

public string

entityID

public string

entityName

public string

PROD_RECORD_NAME

public string

SCC_TEMP_ID

public number

STAGE_RECORD_NAME

public string

Constructor Details:

   

StagedHREntity

Parameters:

IEntity p_parent: The parent of this entity, or null if this is the top of the entity tree.

Method Details:

   

demote

Parameters:

number p_tempID: The tempid to replace the emplid with.

getHRType

Parameters:

string p_EMPLID: The emplid to use for the PERSON_TYPE.

Return:

baseType

getID

Return:

string - the tempID

getServiceManager

Return:

ServiceManager

hardDelete

Parameters:

MessageLogBase p_messageLog(out)the message log

promote

Parameters:

string p_emplID

MessageLogBase p_log(out): The MessageLog object to log all errors/warnings to.

save

Parameters:

MessageLogBase p_messageLog(out): The message log.

setEntityID

Parameters:

string p_entityID: The ID of the Entity.

setID

Parameters:

string p_ID: The temporary ID value to set.

setStageMode

Parameters:

boolean p_stageInd: Set to stage (true) or production (false).

updateDeleteHCM

Parameters:

boolean p_deleteFlag: Specifies if the entity should be deleted.

SCC_COMMON:ENTITY:AbstractEntity – – SCC_COMMON:ENTITY:WorkEntity

Direct Known Subclasses: SCC_COMMON:SHOPCART:ShoppingCart, SCC_COMMON:ENTITY:GENERICS:GenericWorkEntity

Summary

Property Summary:

   

public boolean

STAGE_MODE

Properties Inherited from SCC_COMMON:ENTITY:AbstractEntity

baseProps, ChildEntityArray, data, dataPreimage, DO_SAVE, dynamicProperties, entityDelete, entityID, EntityMetaData, entityName, hasAuditRowAddDttm, hasAuditRowAddOprid, hasAuditRowUpdDttm, hasAuditRowUpdOprid, ignoreFields, keyCollection, parent, parentCE, prodRecordName, PropertyMetaData, RECORD_NAME, SCC_ENTITY_INST_ID, SCC_ROW_ADD_DTTM, SCC_ROW_ADD_OPRID, SCC_ROW_UPD_DTTM, SCC_ROW_UPD_OPRID, selfServiceMode, UPDATE_RULE, USER_CONTEXT, workflowPreimage, XSDCustomNS, XSDFieldList, XSDNS

Constructor Summary:

   

public void

WorkEntity(IEntity p_parent): Base Constructor

Method Summary:

   

public void

demote(number p_tempID): This method does nothing since this entity is not staged, but it has to be implemented.

public rowset

generateRowset()

public void

hardDelete(MessageLogBase p_messageLog out)

public void

promote(string p_emplID, MessageLogBase p_log out): This method does nothing since this entity is not staged, but it has to be implemented.

public void

save(MessageLogBase p_messageLog out)

Methods Inherited from SCC_COMMON:ENTITY:AbstractEntity

applyDataKey, buildCSVString, buildPropertyMetaDataCache, buildXSD, buildXSDChildren, changeRecord, clearDataPreImage, clearDataPreImageChildren, commonValidate, defaultChildren, delete, deleteChildren, demoteChildren, destroy, entityFieldUpdateNeeded, entityTypeUpdateNeeded, entityTypeUpdateRequested, entityUpdateRequested, fill, fillChildren, fillFromKeys, fillLOVDescrs, fromXmlNode, fromXmlNodeChildren, generateXSD, getChildEntity, getCSUserDefaults, getDataKey, getEntPropsByPropertyName, getFullEntityPathName, getIgnoreFields, getInstallationHCM, getLOVDescr, getLOVValue, getMaxSeqNbrSQL, getParent, getProperty, getPropertyByMetaRec, getRecordName, getTagByFieldName, hardDeleteChildren, hasEffdt, hasEffseq, hasKey, isEqualKeys, isEqualKeysRecord, populateAudit, prePublish, preSave, preSaveChildren, preSaveFirst, promoteChildren, publish, retrieveDataRule, saveChildren, setChildren, setData, setDataPreImage, setDefault, setEntityID, setKeyList, setProperty, setPropertyByMetaRec, setStageMode, setUpdateRule, setUpdateRuleByTransName, setUserContext, testForAudit, toXmlNode, toXmlNodeChildren, updateChildFields, updateFromRecord, updateKeyFields, validate, validateChildren, validateFirst, workflow

Details

Property Details:

   

STAGE_MODE

public boolean

Constructor Details:

   

WorkEntity

Parameters:

IEntity p_parent: The parent of this entity, or null if this is the top of the entity tree.

Method Details:

   

demote

Parameters:

number p_tempID

generateRowset

Return:

Rowset

hardDelete

Parameters:

MessageLogBase p_messageLog(out)

promote

Parameters:

string p_emplID

MessageLogBase p_log(out)

save

Parameters:

MessageLogBase p_messageLog(out)

Summary and Details:

Summary

Property Summary:

   

public Array of IEntity

childEntities: An array of all child entities of a specific type.

public string

className: The name of the appclass the entities under this childEntity implement.

public string

elementName: The element name to use for each entity.

public boolean

Embed: Specifies if the Entities this child contains have been marked for embedding in the parent entity.

public string

Encapsulate: The name of the tag to use to encapsulate all entities in this childEntity object.

public string

EntityID: The Entity ID for the entities under this childEntity.

public string

EntityName: The Entity Name for the entities under this childEntity.

public string

MaxCount: The maximum number of entities of this type allowed based on the registry.

public number

MaxSeqNbr: The current maximum sequence number, if this entity has a key that is a sequence number.

public string

MinCount: The minimum number of entities of this type allowed based on the registry.

public IEntity

parent: The parent of this ChildEntity.

public string

PROD_RECORD: The name of the production record the entities under this childEntity implement.

public boolean

STAGE_MODE: The current stage state of the entities, true=staged, false=production.

public string

STAGE_RECORD: The name of the stage record the entities under this childEntity implement.

Constructor Summary:

   

public void

ChildEntity()

Method Summary:

   

public void

buildXSD(XmlNode xmlnode): The method to build the schema for this entity, works in conjunction with the method of the same name on the entity.

public void

checkForDupes(MessageLogBase p_messageLog out): Checks for entities with duplicate keys in the childEntities array.

public void

clearDataPreImage(): Invokes clearDataPreImage on all entities in childEntities.

public void

clearEntities(): Resets the childEntities array to empty.

public void

copyFromRowset(Rowset rs): Copies the record data from a rowset into childEntities. If the keys match it will update an existing entity, otherwise it will add an entity. Data will be copied field by field into the equivalent properties, this means any logic in get-set will be executed. In the case of update only fields where values have changed will be updated. Properties will be copied based on matching the underlying field names.

public Rowset

copyToRowset(): Copies all the records in childEntities to a rowset.

public IEntity

createEntity(): Create an instance of the entity based on the className.

public void

default(): Invokes setDefault on all entities in childEntities.

public void

delete(boolean p_entityDelete): Invokes delete on all entities in childEntities.

public void

demote(number p_tempID): Invokes demote on all entities in childEntities.

public void

destroy(): Perform cleanup activity on this entity.

public void

fill(boolean p_clearstate): Invokes fill on all entities in childEntities.

public IEntity

findKeyMatchingEntity(Record rec): Finds the entity with keys that match the given record.

public void

fromXMLNode(XmlNode parentnode): Invokes fromXMLNode on all entities in childEntities.

public array of IEntity

getEntitiesByProperties(array of PStruct pstructs): Returns all entities in the childEntities array where the properties provided match.

public array of IEntity

getEntitiesByProperty(PStruct pstruct): Returns all entities in the childEntities array where the property provided matches.

public IEntity

getEntityByProperties(array of PStruct pstructs): Returns a specific entity in the childEntities array where all properties provided match.

public IEntity

getEntityByPropertiesEffdt(array of PStruct pstructs, date asOfDate): Returns a specific entity in the childEntities array where all properties provided match and the entity is the current entity as of a specific effective date.

public IEntity

getEntityByProperty(PStruct pstruct): Returns a specific entity in the childEntities array where a property matches that requested.

public number

getNextSeqNbr(string fieldname, array of IEntity entities): Provides the next sequence number for a specified fieldname out of a specific array of entities. Setting the array allows the entities to be a subset of childEntities.

public Rowset

getRowset(): Builds an empty rowset of stage or production based on the STAGE_MODE.

public void

hardDelete(MessageLogBase p_messageLog out): Invokes hardDelete on all entities in childEntities.

public void

preSave(): Invokes presaveFirst on the first entity in childEntities and presave on all entities in childEntities.

public void

promote(string p_emplID, MessageLogBase p_messageLog out): Invokes promote on all entities in childEntities.

public void

save(MessageLogBase p_messageLog out): Invokes save on all entities in childEntities.

public void

toXMLNode(XmlNode parentnode): Invokes toXMLNode on all entities in childEntities.

public void

validate(MessageLogBase p_messageLog out): Invokes validate on all entities in childEntities.

public void

workflow(boolean p_onlineMode): Invokes all the workflow methods in childEntities.

Details

Property Details:

   

childEntities

public Array of IEntity

className

public string

elementName

public string

Embed

public boolean

Encapsulate

public string

EntityID

public string

EntityName

public string

MaxCount

public string

MaxSeqNbr

public number

MinCount

public string

parent

public IEntity

PROD_RECORD

public string

STAGE_MODE

public boolean

STAGE_RECORD

public string

Constructor Details:

   

ChildEntity

N/A

Method Details:

   

buildXSD

Parameters:

XmlNode xmlnode: The XmlNode object from the parent to add the schema elements to.

checkForDupes

Parameters:

MessageLogBase p_messageLog(out)

clearDataPreImage

N/A

clearEntities

N/A

copyFromRowset

Parameters:

Rowset rs: The rowset to copy data from.

copyToRowset

Return:

Rowset

createEntity

Return:

IEntity

default

N/A

delete

Parameters:

boolean p_entityDelete: The delete state passed from the parent to the child.

demote

Parameters:

number p_tempID: The tempID to set on the records when the data is demoted.

destroy

N/A

fill

Parameters:

boolean p_clearstate: Specifies if the preImage should be set.

findKeyMatchingEntity

Parameters:

Record rec: The record to use when searching for a match.

Return:

IEntity

fromXMLNode

Parameters:

XmlNode parentnode: The xml node that entities in this childEntity should be parsed from.

getEntitiesByProperties

Parameters:

array of PStruct pstructs

Return:

array of IEntity

getEntitiesByProperty

Parameters:

PStruct pstruct: An object that provides the property name and value to search for.

Return:

array of IEntity

getEntityByProperties

Parameters:

array of PStruct pstructs

Return:

IEntity

getEntityByPropertiesEffdt

Parameters:

array of PStruct pstructs

date asOfDate: The date to check against the effective date.

Return:

IEntity

getEntityByProperty

Parameters:

PStruct pstruct: An object that provides the property name and value to search for.

Return:

IEntity

getNextSeqNbr

Parameters:

string fieldname: The field name of the sequence number.

array of IEntity entities: The array of entities to search through to figure out the max sequence number.

Return:

number - the next available sequence number.

getRowset

Return:

Rowset - the rowset generated.

hardDelete

Parameters:

MessageLogBase p_messageLog(out): The messageLog object passed from the parent to the child to log any errors or warnings.

preSave

N/A

promote

Parameters:

string p_emplID: The employee ID to set on the records when the data is promoted.

MessageLogBase p_messageLog(out): The messageLog object passed from the parent to the child to log any errors or warnings.

save

Parameters:

MessageLogBase p_messageLog(out): The messageLog object passed from the parent to the child to log any errors or warnings.

toXMLNode

Parameters:

XmlNode parentnode: The xml node that entities in this childEntity should be added to.

validate

Parameters:

MessageLogBase p_messageLog(out): The messageLog object passed from the parent to the child to log any errors or warnings.

workflow

Parameters:

boolean p_onlineMode: The online mode.

Summary and Details:

Summary

Method Summary:

   

public IEntity

createEntity(string entityID, IEntity parent)

Details

Method Details:

   

createEntity

Parameters:

string entityID

IEntity parent

Return

IEntity

Implementing Classes: SCC_COMMON:ENTITY:CODEGEN:EntityGeneratorBase

Summary

Property Summary:

   

public string

BaseAppClass: The base appclass, this is populated based on the entity type when the code generate button is pressed.

public string

ClassName: The class name, this will be populated by the entity registry when the code generate button is pressed.

public string

EntityID: The entity id, this will be populated by the entity registry when the code generate button is pressed.

public boolean

hasProduction: Specifies if this entity has a production record.

public boolean

hasStage: Specifies if this entity has a stage record.

public Array of string

ignoreFields: Specifies the names of properties implemented on the parent entities that should not be generate on the current entity.

public Rowset

rsProperties: Passes in the rowset of SCC_ENT_PROPS related to the entity.

Method Summary:

   

public void

BuildUI(Rowset rs): Builds the UI of check boxes in the given rowset, SCC_ER_CGEN_VW, this rowset has 2 fields, SCC_ER_CGEN_ARG, the check box to be populated by the user and SCC_ER_CGEN_LBL the label displayed relative to the check box. Using that this code can generate as many yes/no questions as needed for code generation.

public string

GenerateCode(): The process called to generate the code based on the provided properties and UI input.

public void

ParseUI(Rowset rs): Retrieves the data from the UI built in BuildUI, SCC_ER_CGEN_VW, this rowset has 2 fields, SCC_ER_CGEN_ARG, the check box to be populated by the user and SCC_ER_CGEN_LBL the label displayed relative to the check box. This code should retrieve the arguments.

Details

Property Details:

   

BaseAppClass

public string

ClassName

public string

EntityID

public string

hasProduction

public boolean

hasStage

public boolean

ignoreFields

public Array of string

rsProperties

public Rowset

Method Details:

   

BuildUI

Parameters:

Rowset rs: The rowset for SCC_ER_CGEN_VW to be populated.

GenerateCode

Return:

string - returns the generated code as a string for display.

ParseUI

Parameters:

Rowset rs: The rowset for SCC_ER_CGEN_VW to be parsed.

Implementing Classes: SCC_COMMON:ENTITY:PROPERTY:PropertySyncBase

Summary

Property Summary:

   

public string

appclass: The application class for the specified entity, populated pre-sync.

public string

entityID: The entity ID for the specified entity, populated pre-sync.

public string

EntityType: The entity type ID for the specified entity, populated pre-sync.

public MessageLogBase

Log: All property changes should be written to the log, this will be displayed to the user when the sync is done using All Property Sync.

public string

ProdRecord: The production record as specified on the entity, populated pre-sync.

public rowset

rs: The rowset of current entity properties based on record SCC_ENT_PROPS, populated pre-sync.

public string

StageRecord: The staging record as specified on the entity, populated pre-sync.

Method Summary:

   

public string

LogAsString(): Returns the Log as a string.

public void

save(): The method called to save the updated properties, this is called from the all property sync process, for the entity registry component this is not used.

public void

updateProperties(): The method called to update the properties in the rowset, based on the records.

Details

Property Details:

   

appclass

public string

entityID

public string

EntityType

public string

Log

public MessageLogBase

ProdRecord

public string

rs

public Rowset

StageRecord

public string

Method Details:

   

LogAsString

Return:

string

save

N/A

updateProperties

N/A

Direct Known Subclasses: SCC_COMMON:ENTITY:LOG:TempMessageLog

Summary

Property Summary:

   

public boolean

isError

public boolean

isInformation

public boolean

isReconcileError

public boolean

isWarning

public string

messageContext

protected Array of MessageEntry

MessageEntries

Constructor Summary:

   

public void

MessageLogBase()

Method Summary:

   

public void

append(MessageLogBase p_messageLog)

public void

buildMsgSegment(XmlNode msgsnode)

public void

clear()

public Message

generateFaultMsg(string p_operationName)

public void

generateValidationMsg(XmlNode p_node)

public MessageEntry

getMessageEntry(number p_index): Returns the MessageEntry Object at the given index.

public number

length(): length Current length of the message log.

public string

read(number p_index):

read - Read an entry from the Message Log.

@Return String - The message entry at the given index or blank if index does not exist.

public void

save()

public void

writeEntry(MessageEntry p_entry)

Details

Property Details:

   

isError

public boolean

isInformation

public boolean

isReconcileError

public boolean

isWarning

public boolean

messageContext

public string

MessageEntries

protected Array of MessageEntry

Constructor Details:

   

MessageLogBase

N/A

Method Details:

   

append

Parameters:

MessageLogBase p_messageLog

buildMsgSegment

Parameters:

XmlNode msgsnode

clear

N/A

generateFaultMsg

Parameters:

string p_operationName

Return:

Message

generateValidationMsg

Parameters:

XmlNode p_node

getMessageEntry

Parameters:

number p_index

Return:

MessageEntry

length

Return:

number

read

Parameters:

number p_index

Return:

string - The message entry at the given index or blank if index does not exist.

save

N/A

writeEntry

Parameters:

MessageEntry p_entry

Summary and Details:

Summary

Property Summary:

   

public string

Context

public number

MsgID

public number

MsgSet

public Array of string

ParmArray

public Array of MEProp

Properties

public number

Severity

public number

Severity_Error

public number

Severity_Info

public number

Severity_ReconcileError

public number

Severity_Warning

Constructor Summary:

   

public void

MessageEntry()

Method Summary:

   

public void

AddProperty(string p_UID, string p_Prop)

public void

DataPopulateV1(number p_MsgSet, number p_MsgID, number p_Severity, array of string p_ParmArray, string p_Context, string p_UID, string p_Prop)

Quick population of a messageEntry.

Details

Property Details:

   

Context

public string

MsgID

public number

MsgSet

public number

ParmArray

public Array of string

Properties

public Array of MEProp

Severity

public number

Severity_Error

public number

Severity_Info

public number

Severity_ReconcileError

public number

Severity_Warning

public number

Constructor Details:

   

MessageEntry

N/A

Method Details:

   

AddProperty

Parameters:

string p_UID

string p_Prop

DataPopulateV1

Parameters:

number p_MsgSet: The message set of the error.

number p_MsgID: The Message Id, based on the message set for the error.

number p_Severity: The severity of the error should be set using Severity_ReconcileError, Severity_Error, Severity_Warning, Severity_Info.

array of string p_ParmArray: The array of parameters for the message specified, if no parameters are needed null can be passed.

string p_Context: Specify the context of the MessageEntry, if no context is set the MessageLog will default it on writeEntry.

string p_UID: The EntityInstanceId that this messageEntry should be attached to, if multiple EntityInstances are involved use AddProperty to add the additional properties.

string p_Prop: A specific property (use the xml tag) under an instanceid that the messageEntry is related to, if multiple properties are involved use AddProperty after DataEntry to add additional properties.

Summary and Details:

Summary

Property Summary:

   

public string

EntityInstanceId

public string

Property

Details

Property Details:

   

EntityInstanceId

public string

Property

public string