Skip to main content


persistent class HS.IHE.ATNA.Repository.Aggregation extends %Library.Persistent, HS.Types.AuditAggregateInfo, %XML.Adaptor

SQL Table Name: HS_IHE_ATNA_Repository.Aggregation

Internal coding of ATNA/Auditing implementation

Property Inventory

Method Inventory


parameter DSINTERVAL = 1;
Inherited description: DSINTERVAL is the number of seconds between one DSTIME value and the next. The DSTIME value for DSINTERVAL > 0 is computed from $ZTIMESTAMP and is the number of seconds from day 0, time 0 to the nearest interval, rounded down. Using an interval has the effect of grouping all DSTIME entries for the class in some number of seconds.
parameter DSTIME = AUTO;
Track updates for DeepSee
Inherited description: The XMLIGNOREINVALIDTAG parameter allows the programmer to control handling of unexpected elements in the XML input. The XMLIGNOREINVALIDTAG parameter will only take affect if XMLSEQUENCE = 0 (the default). By default (XMLIGNOREINVALIDTAG = 0), will treat an unexpected element as an error. If XMLIGNOREINVALIDTAG is set = 1 and XMLSEQUENCE = 0, then unexpected elements will be ignored.
parameter XMLIGNORENULL = inputonly;
Inherited description: XMLIGNORENULL allows the programmer to override the default XML handling of empty strings for properties of type %String. By default (XMLIGNORENULL = 0), empty strings in the XML input are stored as $c(0) and $c(0) is written to XML as an empty tag. A missing tag in the XML input is always stored as "" and "" is always output to XML as no tag.

If XMLIGNORENULL is set = 1, then both missing tags in the XML and empty strings are input as "", and both "" and $c(0) are output as empty tags (i.e. <tag></tag>).

If XMLIGNORENULL is set = "inputonly", then both missing tags in the XML and empty strings are input as "". Output of "" and $c(0) are for XMLIGNORENULL = 0: $c(0) is output as an empty tag (i.e. <tag></tag>) and "" is output as no tag.

If XMLIGNORENULL = "runtime" (runtime is not case sensitive), then the behavior of XMLIGNORENULL is determined by the format parameter of XMLExport, XMLImport and %XML.Reader.OpenFile. The default behavior for XMLIGNORENULL="runtime is the same as XMLIGNORENULL=0. Adding "ignorenull" to the format argument changes the behavior to that of XMLIGNORENULL=1. "ignorenull" shoud be separated by a comma from literal/encoded part of the format. Example values for format are "", ",ignorenull", "literal,ignorenull" and "encoded,ignorenull". Note that "inputonly" is equivalent to using ,ignorenull for XMLExport and not for %XML.Reader.


relationship CustomPairs as array of HS.IHE.ATNA.Repository.CustomPair [ InitialExpression = $listbuild("HS.IHE.ATNA.Repository.CustomPair","AggregationID",+$this,"children",1,1) , Transient , Inverse = AggregationID , Cardinality = children ];
Property methods: CustomPairsGet(), CustomPairsGetObject(), CustomPairsGetObjectId(), CustomPairsGetSwizzled(), CustomPairsIsEmpty(), CustomPairsIsValid(), CustomPairsNewObject(), CustomPairsRClose(), CustomPairsRExec(), CustomPairsRFetch(), CustomPairsRelate(), CustomPairsSQLCompute(), CustomPairsSet(), CustomPairsUnRelate()
relationship Documents as array of HS.IHE.ATNA.Repository.Document [ InitialExpression = $listbuild("HS.IHE.ATNA.Repository.Document","AggregationID",+$this,"children",1,1) , Transient , Inverse = AggregationID , Cardinality = children ];
Property methods: DocumentsGet(), DocumentsGetObject(), DocumentsGetObjectId(), DocumentsGetSwizzled(), DocumentsIsEmpty(), DocumentsIsValid(), DocumentsNewObject(), DocumentsRClose(), DocumentsRExec(), DocumentsRFetch(), DocumentsRelate(), DocumentsSQLCompute(), DocumentsSet(), DocumentsUnRelate()
property EventCodes as %String) [ Calculated ];
Property methods: EventCodesCompute(), EventCodesDisplayToLogical(), EventCodesGet(), EventCodesIsValid(), EventCodesLogicalToDisplay(), EventCodesLogicalToOdbc(), EventCodesNormalize(), EventCodesSQLCompute()
property IndexedDate as %TimeStamp [ Calculated ];
The EventDateTime is stored as UTC time. This calculated property converts this to the local date, for reporting convenience Use this for date based queries.
Property methods: IndexedDateCompute(), IndexedDateDisplayToLogical(), IndexedDateGet(), IndexedDateIsValid(), IndexedDateLogicalToDisplay(), IndexedDateLogicalToXSD(), IndexedDateNormalize(), IndexedDateOdbcToLogical(), IndexedDateSQLCompute(), IndexedDateXSDToLogical()
property LocalDateTime as %TimeStamp [ Calculated ];
The EventDateTime is stored as UTC time. This calculated property converts this to the local date-time, for reporting convenience
Property methods: LocalDateTimeCompute(), LocalDateTimeDisplayToLogical(), LocalDateTimeGet(), LocalDateTimeIsValid(), LocalDateTimeLogicalToDisplay(), LocalDateTimeLogicalToXSD(), LocalDateTimeNormalize(), LocalDateTimeOdbcToLogical(), LocalDateTimeSQLCompute(), LocalDateTimeXSDToLogical()
property MPILIST as %String) [ Calculated ];
Property methods: MPILISTCompute(), MPILISTDisplayToLogical(), MPILISTGet(), MPILISTIsValid(), MPILISTLogicalToDisplay(), MPILISTLogicalToOdbc(), MPILISTNormalize(), MPILISTSQLCompute()
property MRNLIST as %String) [ Calculated ];
Property methods: MRNLISTCompute(), MRNLISTDisplayToLogical(), MRNLISTGet(), MRNLISTIsValid(), MRNLISTLogicalToDisplay(), MRNLISTLogicalToOdbc(), MRNLISTNormalize(), MRNLISTSQLCompute()
property PatientFacility as %String [ Calculated ];
Computed property - the patient's facility (for events that record a single MRN)
Property methods: PatientFacilityCompute(), PatientFacilityDisplayToLogical(), PatientFacilityGet(), PatientFacilityIsValid(), PatientFacilityLogicalToDisplay(), PatientFacilityLogicalToOdbc(), PatientFacilityNormalize(), PatientFacilitySQLCompute()
relationship Patients as array of HS.IHE.ATNA.Repository.Patient [ InitialExpression = $listbuild("HS.IHE.ATNA.Repository.Patient","AggregationID",+$this,"children",1,1) , Transient , Inverse = AggregationID , Cardinality = children ];
Property methods: PatientsGet(), PatientsGetObject(), PatientsGetObjectId(), PatientsGetSwizzled(), PatientsIsEmpty(), PatientsIsValid(), PatientsNewObject(), PatientsRClose(), PatientsRExec(), PatientsRFetch(), PatientsRelate(), PatientsSQLCompute(), PatientsSet(), PatientsUnRelate()
property PrimaryFacility as %String [ Calculated ];
Computed property - the clinician's (user's) primary facility If we have stored the FacilityInternal, we'll use that, otherwise compute it when referenced
Property methods: PrimaryFacilityCompute(), PrimaryFacilityDisplayToLogical(), PrimaryFacilityGet(), PrimaryFacilityIsValid(), PrimaryFacilityLogicalToDisplay(), PrimaryFacilityLogicalToOdbc(), PrimaryFacilityNormalize(), PrimaryFacilitySQLCompute()


method AddPatient(pIdentifier As %String, pIdentifierType As %String, pPatientName As %String = "", pRequestId As %String = "")
API Method. Utility Method to add a patient to an event
method AddPatientList(pMPIIDList, pMRNList, pName As %String = "")
API Method. Utility method to add a list of MPIIDs and MRNs (all for the same patient name) to an event
classmethod Create(pEvent As %String, ByRef pInitiatingLogID, pAccessGateway As %String = "", pActionCode As %String = "") as Aggregation
API Method. Utility helper method to create and initialize a new event
method Initialize(pEvent As %String, ByRef pInitiatingLogID, pAccessGateway As %String = "", pActionCode As %String = "E")
API Method. Utility method to insert default values after creating a new one
classmethod IsHSExcludeUser(pAggregation As HS.IHE.ATNA.Repository.Aggregation) as %Boolean
method SetUser(pRequest As HS.Types.RequestInfo)
API Method. Utility Helper method to set user info


index ($Aggregation on ) [Extent, Type = bitmap];
index (ATNAAuditMessageId on ATNAAuditMessageId);
Index methods: ATNAAuditMessageIdDisplayToLogical(), ATNAAuditMessageIdExists(), ATNAAuditMessageIdGet(), ATNAAuditMessageIdGetStored(), ATNAAuditMessageIdIsValid(), ATNAAuditMessageIdLogicalToDisplay(), ATNAAuditMessageIdLogicalToOdbc(), ATNAAuditMessageIdNormalize(), ATNAAuditMessageIdSet()
index (EnsembleSessionId on EnsembleSessionId);
Index methods: EnsembleSessionIdDisplayToLogical(), EnsembleSessionIdExists(), EnsembleSessionIdGet(), EnsembleSessionIdGetStored(), EnsembleSessionIdIsValid(), EnsembleSessionIdLogicalToDisplay(), EnsembleSessionIdLogicalToOdbc(), EnsembleSessionIdNormalize(), EnsembleSessionIdSet()
index (EventDateTime on EventDateTime);
Index methods: EventDateTimeDisplayToLogical(), EventDateTimeExists(), EventDateTimeGet(), EventDateTimeGetStored(), EventDateTimeIsValid(), EventDateTimeLogicalToDisplay(), EventDateTimeLogicalToXSD(), EventDateTimeNormalize(), EventDateTimeOdbcToLogical(), EventDateTimeSet(), EventDateTimeXSDToLogical()
index (EventSubType on EventSubType);
Index methods: EventSubTypeDisplayToLogical(), EventSubTypeExists(), EventSubTypeGet(), EventSubTypeGetStored(), EventSubTypeIsValid(), EventSubTypeLogicalToDisplay(), EventSubTypeLogicalToOdbc(), EventSubTypeNormalize(), EventSubTypeSet()
index (EventType on EventType);
Index methods: EventTypeDisplayToLogical(), EventTypeExists(), EventTypeGet(), EventTypeGetStored(), EventTypeIsValid(), EventTypeLogicalToDisplay(), EventTypeLogicalToOdbc(), EventTypeNormalize(), EventTypeSet()
index (IDKEY on ) [IdKey, Type = key];
Index methods: IDKEYCheck(), IDKEYDelete(), IDKEYExists(), IDKEYOpen(), IDKEYSQLCheckUnique(), IDKEYSQLExists(), IDKEYSQLFindPKeyByConstraint(), IDKEYSQLFindRowIDByConstraint()
index (IndexDate on IndexedDate) [Type = bitmap];
index (IndexDateEvent on IndexedDate,EventType) [Type = bitmap];
index (InitiatingLogId on InitiatingLogId);
Index methods: InitiatingLogIdDisplayToLogical(), InitiatingLogIdExists(), InitiatingLogIdGet(), InitiatingLogIdGetStored(), InitiatingLogIdIsValid(), InitiatingLogIdLogicalToDisplay(), InitiatingLogIdLogicalToOdbc(), InitiatingLogIdNormalize(), InitiatingLogIdSet()
index (LocalDateTime on LocalDateTime,EventType);
Index methods: LocalDateTimeCompute(), LocalDateTimeDisplayToLogical(), LocalDateTimeExists(), LocalDateTimeGet(), LocalDateTimeIsValid(), LocalDateTimeLogicalToDisplay(), LocalDateTimeLogicalToXSD(), LocalDateTimeNormalize(), LocalDateTimeOdbcToLogical(), LocalDateTimeSQLCompute(), LocalDateTimeXSDToLogical()
index (Providers on ProviderId);
Index methods: ProvidersExists()
index (ProxyUserName on ProxyUserName);
Index methods: ProxyUserNameDisplayToLogical(), ProxyUserNameExists(), ProxyUserNameGet(), ProxyUserNameGetStored(), ProxyUserNameIsValid(), ProxyUserNameLogicalToDisplay(), ProxyUserNameLogicalToOdbc(), ProxyUserNameNormalize(), ProxyUserNameSet()
index (RecordedLogId on RecordedLogId);
Index methods: RecordedLogIdDisplayToLogical(), RecordedLogIdExists(), RecordedLogIdGet(), RecordedLogIdGetStored(), RecordedLogIdIsValid(), RecordedLogIdLogicalToDisplay(), RecordedLogIdLogicalToOdbc(), RecordedLogIdNormalize(), RecordedLogIdSet()
index (UserName on UserName);
Index methods: UserNameDisplayToLogical(), UserNameExists(), UserNameGet(), UserNameGetStored(), UserNameIsValid(), UserNameLogicalToDisplay(), UserNameLogicalToOdbc(), UserNameNormalize(), UserNameSet()

Inherited Members

Inherited Properties

Inherited Methods


Storage Model: Storage (HS.IHE.ATNA.Repository.Aggregation)


Storage Model: Storage (HS.IHE.ATNA.Repository.Aggregation)

FeedbackOpens in a new tab