HS.Message.PatientSearchResponse
persistent class HS.Message.PatientSearchResponse extends HS.Util.EnsResponse, HS.Types.RequestInfo, HS.Util.CopyFrom
SQL Table Name: HS_Message.PatientSearchResponse
Response to a PatientSearchRequest. The Results property contains zero or more matching PatientSearchMatch entries.Property Inventory
- ClinicianId
- ConsentApplied
- ErrStatus
- InfoTypesFiltered
- MPIIDList
- ProgramConsent
- RequestingFacility
- Results
- ResultsCount
Method Inventory
Parameters
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.
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.
Properties
property ClinicianId as %String;
For clinician mode searches - consent will include those with relationships
Property methods: ClinicianIdDisplayToLogical(), ClinicianIdGet(), ClinicianIdGetStored(), ClinicianIdIsValid(), ClinicianIdLogicalToDisplay(), ClinicianIdLogicalToOdbc(), ClinicianIdNormalize(), ClinicianIdSet()
property ConsentApplied as %Boolean [ InitialExpression = 0 ];
True if consent was applied to these search results (i.e. if results were filtered due to consent)
Property methods: ConsentAppliedDisplayToLogical(), ConsentAppliedGet(), ConsentAppliedGetStored(), ConsentAppliedIsValid(), ConsentAppliedLogicalToDisplay(), ConsentAppliedLogicalToXSD(), ConsentAppliedNormalize(), ConsentAppliedSet(), ConsentAppliedXSDToLogical()
property ErrStatus as %Status;
Property methods: ErrStatusGet(), ErrStatusGetStored(), ErrStatusIsValid(), ErrStatusLogicalToOdbc(), ErrStatusLogicalToXSD(), ErrStatusSet(), ErrStatusXSDToLogical()
property InfoTypesFiltered as %Integer;
If results have been removed due to an infotype filter, this will be the number of results removed
Property methods: InfoTypesFilteredDisplayToLogical(), InfoTypesFilteredGet(), InfoTypesFilteredGetStored(), InfoTypesFilteredIsValid(), InfoTypesFilteredLogicalToDisplay(), InfoTypesFilteredNormalize(), InfoTypesFilteredSet(), InfoTypesFilteredXSDToLogical()
property MPIIDList as list of HS.Message.PatientMPIMatch;
This organizes the results by MPIID
Property methods: MPIIDListBuildValueArray(), MPIIDListCollectionToDisplay(), MPIIDListCollectionToOdbc(), MPIIDListDisplayToCollection(), MPIIDListGet(), MPIIDListGetObject(), MPIIDListGetObjectId(), MPIIDListGetStored(), MPIIDListGetSwizzled(), MPIIDListIsValid(), MPIIDListOdbcToCollection(), MPIIDListSet(), MPIIDListSetObject(), MPIIDListSetObjectId()
property ProgramConsent as %Boolean [ InitialExpression = 0 ];
Passed into the consent engine - true if it should apply progam consent to override unconsented demographics
Property methods: ProgramConsentDisplayToLogical(), ProgramConsentGet(), ProgramConsentGetStored(), ProgramConsentIsValid(), ProgramConsentLogicalToDisplay(), ProgramConsentLogicalToXSD(), ProgramConsentNormalize(), ProgramConsentSet(), ProgramConsentXSDToLogical()
property RequestingFacility as HS.Types.Facility;
The requesting facility
Property methods: RequestingFacilityDisplayToLogical(), RequestingFacilityGet(), RequestingFacilityGetStored(), RequestingFacilityIsValid(), RequestingFacilityLogicalToDisplay(), RequestingFacilityLogicalToOdbc(), RequestingFacilityNormalize(), RequestingFacilitySet()
property Results as list of PatientSearchMatch (STORAGEDEFAULT = "array");
Zero or more matches from the search
Property methods: ResultsBuildValueArray(), ResultsCollectionToDisplay(), ResultsCollectionToOdbc(), ResultsCountDisplayToLogical(), ResultsCountGet(), ResultsCountGetStored(), ResultsCountIsValid(), ResultsCountLogicalToDisplay(), ResultsCountNormalize(), ResultsCountSet(), ResultsCountXSDToLogical(), ResultsDisplayToCollection(), ResultsGet(), ResultsGetObject(), ResultsGetObjectId(), ResultsGetStored(), ResultsGetSwizzled(), ResultsIsValid(), ResultsOdbcToCollection(), ResultsSet(), ResultsSetObject(), ResultsSetObjectId()
property ResultsCount as %Integer [ InitialExpression = 0 ];
Number of results
Property methods: ResultsCountDisplayToLogical(), ResultsCountGet(), ResultsCountGetStored(), ResultsCountIsValid(), ResultsCountLogicalToDisplay(), ResultsCountNormalize(), ResultsCountSet(), ResultsCountXSDToLogical()
Methods
classmethod OnDeleteHandler(id) as %Status [ Language = objectscript ]
Queries
query SearchResults(id As %String = "")
SQL Query:
SELECT m.%ID,m.MPIID,m.LastName,m.MiddleName,m.FirstName,m.Sex,m.DoB,m.Facility,m.MRN,m.SSN,m.Street,m.City,m.State,m.Zip,m.RankOrScore As Rank, Max(m.RankOrScore %FOREACH(m.MPIID)) as MaxRank, m.InfoTypes, m.LookupError, Count(DISTINCT m.MPIID) As NumMPI FROM PatientSearchMatch m, PatientSearchResponse_Results r WHERE r.PatientSearchResponse = :id AND r.Results = m.%ID ORDER BY MaxRank DESC, m.MPIID, Rank DESC
SELECT m.%ID,m.MPIID,m.LastName,m.MiddleName,m.FirstName,m.Sex,m.DoB,m.Facility,m.MRN,m.SSN,m.Street,m.City,m.State,m.Zip,m.RankOrScore As Rank, Max(m.RankOrScore %FOREACH(m.MPIID)) as MaxRank, m.InfoTypes, m.LookupError, Count(DISTINCT m.MPIID) As NumMPI FROM PatientSearchMatch m, PatientSearchResponse_Results r WHERE r.PatientSearchResponse = :id AND r.Results = m.%ID ORDER BY MaxRank DESC, m.MPIID, Rank DESC
The Results property is mapped as a child table and this query will return the search results in
resultset form for the specified search response [message id], which is more convenient than an list of objects
Triggers
trigger OnDeleteSQL (BEFORE event DELETE);
Inherited Members
Inherited Properties
- %id
- %seriesCount
- %seriesNames
- %source
- AdditionalInfo
- AuthBy
- AuthType
- BTGReason
- BreakTheGlass
- ClinicalTypes
- Consent
- CustomAuditInfo
- HSCoreVersion
- HSMinVersionError
- RequestId
- RequestingForProxyID
- RequestingForProxyUserID
- RequestingGateway
- RequestingUser
- RequestingUserRoles
- SAMLData
- Signature
- Type
Inherited Methods
- %AddToSaveSet()
- %AddToSyncSet()
- %BMEBuilt()
- %BuildIndicesAsync()
- %BuildIndicesAsyncResponse()
- %CheckConstraints()
- %CheckConstraintsForExtent()
- %ClassIsLatestVersion()
- %ClassName()
- %CompareContents()
- %ComposeOid()
- %ConstructClone()
- %CreateModelInstance()
- %Delete()
- %DeleteExtent()
- %DeleteId()
- %DeleteModel()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DrawHTMLForm()
- %DrawHTMLTable()
- %Exists()
- %ExistsId()
- %Extends()
- %GUID()
- %GUIDSet()
- %GetContentType()
- %GetJSValidationCode()
- %GetLock()
- %GetParameter()
- %GetPropertyInfo()
- %GetSwizzleObject()
- %Id()
- %InsertBatch()
- %InvokeAction()
- %IsA()
- %IsModified()
- %IsNull()
- %IsReadOnly()
- %KillExtent()
- %KillExtentData()
- %LoadFromMemory()
- %LockExtent()
- %LockId()
- %New()
- %NormalizeObject()
- %ObjectIsNull()
- %ObjectModified()
- %Oid()
- %OnBeforeAddToSync()
- %OnCopyDataFromModel()
- %OnCopyDataToModel()
- %OnDeleteModel()
- %OnDeleteSource()
- %OnDetermineClass()
- %OnGetPropertyInfo()
- %OnInvokeAction()
- %OnLoadModel()
- %OnNewSource()
- %OnOpenSource()
- %OnSaveSource()
- %OnStoreModel()
- %OnSubmit()
- %OnTimeout()
- %Open()
- %OpenId()
- %OpenModel()
- %OriginalNamespace()
- %PackageName()
- %PhysicalAddress()
- %ProcessSubmit()
- %PurgeIndices()
- %Reload()
- %RemoveFromSaveSet()
- %ResolveConcurrencyConflict()
- %RollBack()
- %Save()
- %SaveDirect()
- %SaveIndices()
- %SaveModel()
- %SerializeObject()
- %SetModified()
- %ShowContents()
- %ShowContentsHead()
- %SortBegin()
- %SortEnd()
- %SubmitHandler()
- %SyncObjectIn()
- %SyncTransport()
- %UnlockExtent()
- %UnlockId()
- %ValidateIndices()
- %ValidateObject()
- CopyFrom()
- GetStatsDimension()
- GetUserInfo()
- RequestInfoToXMLMessage()
- XMLDTD()
- XMLExport()
- XMLExportToStream()
- XMLExportToString()
- XMLMessageToRequestInfo()
- XMLNew()
- XMLSchema()
- XMLSchemaNamespace()
- XMLSchemaType()
Storage
Gray indicates storage defined by superclasses.
Storage Model: Storage (Ens.MessageBody)
^Ens.MessageBodyD(ID) |
= | %%CLASSNAME
|
Storage Model: Storage (HS.Util.EnsResponse)
^Ens.MessageBodyD(ID,"EnsResponse") |
= | HSCoreVersion
HSMinVersionError
|
Storage Model: Storage (HS.Message.PatientSearchResponse)
^Ens.MessageBodyD(ID,"HS.Message.PatientSearchResponse.AdditionalInfo",n) |
= | AdditionalInfo(n) |
Storage Model: Storage (HS.Message.PatientSearchResponse)
^Ens.MessageBodyD(ID,"HS.Message.PatientSearchResponse.CustomAuditInfo",n) |
= | CustomAuditInfo(n) |
Storage Model: Storage (HS.Message.PatientSearchResponse)
^Ens.MessageBodyD(ID,"PatientSearchResponse") |
= | ResultsCount
RequestingFacility
BreakTheGlass
Consent
ClinicalTypes
RequestingUser
RequestingUserRoles
Signature
RequestId
Type
ConsentApplied
RequestingGateway
AuthBy
AuthType
BTGReason
ClinicianId
MPIIDList
InfoTypesFiltered
RequestingForProxyUserID
RequestingForProxyID
ProgramConsent
ErrStatus
SAMLData
|
Storage Model: Storage (HS.Message.PatientSearchResponse)
^Ens.MessageBodyD(ID,"Results",n) |
= | Results(n) |