Skip to main content

HS.IHE.XCPD.InitiatingGateway.Process

persistent class HS.IHE.XCPD.InitiatingGateway.Process extends Ens.BusinessProcess, HS.HC.Util.Trace.Helper

SQL Table Name: HS_IHE_XCPD_InitiatingGateway.Process

Property Inventory

Method Inventory

Parameters

parameter DOMAIN = HS;
Domain used for localization.
parameter HSDEPLOY = 1;
parameter SETTINGS = PDQv3Consumer,XCPDQueryServiceNames,XCPDInitiatingGatewayOperations,HomeCommunity,SenderDevice,QueryInitiator,ApplyConsent,TransformPDQToPatientSearch, TransformPatientSearchToXCPD,NationalPatientIdentifier:Basic;
Inherited description: List of properties can be set as settings in the configuration file format is a comma separated list of property names

Properties

property ApplyConsent as %Boolean [ InitialExpression = 0 ];
If true, the PDQ lookup requests used by this process to get patient demographic information will be processed by consent.
Property methods: ApplyConsentDisplayToLogical(), ApplyConsentGet(), ApplyConsentGetStored(), ApplyConsentIsValid(), ApplyConsentLogicalToDisplay(), ApplyConsentNormalize(), ApplyConsentSet()
property Errors as HS.Types.IHE.Errors;
Property methods: ErrorsGet(), ErrorsGetObject(), ErrorsGetObjectId(), ErrorsGetStored(), ErrorsGetSwizzled(), ErrorsIsEmpty(), ErrorsIsValid(), ErrorsNewObject(), ErrorsSet(), ErrorsSetObject(), ErrorsSetObjectId(), ErrorsUnSwizzle()
property HomeCommunity as %String;
Code for HomeCommunity OID from HS.Data.OIDMap where type=HomeCommunity
Property methods: HomeCommunityDisplayToLogical(), HomeCommunityGet(), HomeCommunityGetStored(), HomeCommunityIsValid(), HomeCommunityLogicalToDisplay(), HomeCommunityLogicalToOdbc(), HomeCommunityNormalize(), HomeCommunitySet()
property HomeCommunityOID as %String (MAXLEN = 64);
property to hold translated HomeCommunity
Property methods: HomeCommunityOIDDisplayToLogical(), HomeCommunityOIDGet(), HomeCommunityOIDGetStored(), HomeCommunityOIDIsValid(), HomeCommunityOIDLogicalToDisplay(), HomeCommunityOIDLogicalToOdbc(), HomeCommunityOIDNormalize(), HomeCommunityOIDSet()
property IHEVersion as %Integer [ InitialExpression = 1 ];
Property methods: IHEVersionDisplayToLogical(), IHEVersionGet(), IHEVersionGetStored(), IHEVersionIsValid(), IHEVersionLogicalToDisplay(), IHEVersionNormalize(), IHEVersionSet()
property NationalPatientIdentifier as %Boolean [ InitialExpression = 0 ];
In a National Identifier situation, the National Identifier is sent to the responding gateway instead of demographics. Locate
the MPIID and return it (no demographics)
Property methods: NationalPatientIdentifierDisplayToLogical(), NationalPatientIdentifierGet(), NationalPatientIdentifierGetStored(), NationalPatientIdentifierIsValid(), NationalPatientIdentifierLogicalToDisplay(), NationalPatientIdentifierNormalize(), NationalPatientIdentifierSet()
property NationalPatientIdentifierAA as %String [ InitialExpression = ##class(HS.Registry.Config).GetKeyValue("\IHE\NationalPatientIdentifierAA") ];
Config registry value for \IHE\NationalPatientIdentifierAA
Property methods: NationalPatientIdentifierAADisplayToLogical(), NationalPatientIdentifierAAGet(), NationalPatientIdentifierAAGetStored(), NationalPatientIdentifierAAIsValid(), NationalPatientIdentifierAALogicalToDisplay(), NationalPatientIdentifierAALogicalToOdbc(), NationalPatientIdentifierAANormalize(), NationalPatientIdentifierAASet()
property PDQv3Consumer as Ens.DataType.ConfigName [ InitialExpression = "HS.IHE.PDQv3.Consumer.Operations" ];
To locate the patient demographics given the MPIID
Property methods: PDQv3ConsumerDisplayToLogical(), PDQv3ConsumerGet(), PDQv3ConsumerGetStored(), PDQv3ConsumerIsValid(), PDQv3ConsumerLogicalToDisplay(), PDQv3ConsumerLogicalToOdbc(), PDQv3ConsumerNormalize(), PDQv3ConsumerParseConfigNameSpec(), PDQv3ConsumerSet()
property QueryInitiator as %Boolean [ InitialExpression = 1 ];
Query back to the initiator if true will cause a query back to the initiator, then looking for documents from the initiator. Another option is if the AssigningAuthority is not set on the XCPD service registry entry for the initiator then it will not be excluded.
Property methods: QueryInitiatorDisplayToLogical(), QueryInitiatorGet(), QueryInitiatorGetStored(), QueryInitiatorIsValid(), QueryInitiatorLogicalToDisplay(), QueryInitiatorNormalize(), QueryInitiatorSet()
property SenderDevice as %String (MAXLEN = 100);
Code for SenderDevice OID from HS.Data.OIDMap where type=Device
Property methods: SenderDeviceDisplayToLogical(), SenderDeviceGet(), SenderDeviceGetStored(), SenderDeviceIsValid(), SenderDeviceLogicalToDisplay(), SenderDeviceLogicalToOdbc(), SenderDeviceNormalize(), SenderDeviceSet()
property SenderDeviceOID as %String (MAXLEN = 100);
Property methods: SenderDeviceOIDDisplayToLogical(), SenderDeviceOIDGet(), SenderDeviceOIDGetStored(), SenderDeviceOIDIsValid(), SenderDeviceOIDLogicalToDisplay(), SenderDeviceOIDLogicalToOdbc(), SenderDeviceOIDNormalize(), SenderDeviceOIDSet()
property TransformPDQToPatientSearch as %String (MAXLEN = 250) [ InitialExpression = "IHE/XCPD/Version1/PRPAIN201306UVToPatientSearchResponse.xsl" ];
Property methods: TransformPDQToPatientSearchDisplayToLogical(), TransformPDQToPatientSearchGet(), TransformPDQToPatientSearchGetStored(), TransformPDQToPatientSearchIsValid(), TransformPDQToPatientSearchLogicalToDisplay(), TransformPDQToPatientSearchLogicalToOdbc(), TransformPDQToPatientSearchNormalize(), TransformPDQToPatientSearchSet()
property TransformPatientSearchToXCPD as %String (MAXLEN = 250) [ InitialExpression = "/IHE/XCPD/Version1/PatientSearchToPRPAIN201305UV.xsl" ];
Property methods: TransformPatientSearchToXCPDDisplayToLogical(), TransformPatientSearchToXCPDGet(), TransformPatientSearchToXCPDGetStored(), TransformPatientSearchToXCPDIsValid(), TransformPatientSearchToXCPDLogicalToDisplay(), TransformPatientSearchToXCPDLogicalToOdbc(), TransformPatientSearchToXCPDNormalize(), TransformPatientSearchToXCPDSet()
property Transformer as HS.Util.XSLTTransformer;
Property methods: TransformerGet(), TransformerGetStored(), TransformerGetSwizzled(), TransformerIsValid(), TransformerNewObject(), TransformerSet()
property XCPDInitiatingGatewayOperations as Ens.DataType.ConfigName [ InitialExpression = "HS.IHE.XCPD.InitiatingGateway.Operations" ];
Property methods: XCPDInitiatingGatewayOperationsDisplayToLogical(), XCPDInitiatingGatewayOperationsGet(), XCPDInitiatingGatewayOperationsGetStored(), XCPDInitiatingGatewayOperationsIsValid(), XCPDInitiatingGatewayOperationsLogicalToDisplay(), XCPDInitiatingGatewayOperationsLogicalToOdbc(), XCPDInitiatingGatewayOperationsNormalize(), XCPDInitiatingGatewayOperationsParseConfigNameSpec(), XCPDInitiatingGatewayOperationsSet()
property XCPDQueryServiceNames as %String);
A comma separated list of XCPD Repositories (Registry Service Names)
Property methods: XCPDQueryServiceNamesDisplayToLogical(), XCPDQueryServiceNamesGet(), XCPDQueryServiceNamesGetStored(), XCPDQueryServiceNamesIsValid(), XCPDQueryServiceNamesLogicalToDisplay(), XCPDQueryServiceNamesLogicalToOdbc(), XCPDQueryServiceNamesNormalize(), XCPDQueryServiceNamesSet()

Methods

method GetPatientDemographics(pRequest As HS.Message.PatientSearchRequest, Output pSearchMatch As HS.Message.PatientSearchRequest = "", Output pIdentifiers) as %Status
Given an AdhocQueryRequest return the PatientSearchResponse (from a PDQ lookup)
method OnRequest(pRequest As HS.Message.XMLMessage, Output pResponse As HS.Message.XMLMessage) as %Status
Inherited description: Handle a 'Request'
method OnResponse(pRequest As Ens.Request, ByRef pResponse As Ens.Response, pCallrequest As Ens.Request, pCallresponse As Ens.Response, pCompletionKey As %String) as %Status
OnResponse must be overridden here to avoid error upon response from async request.
method PatientDiscovery(pRequest As HS.Message.PatientSearchRequest, Output pResponse As HS.Message.IHE.XCPDPatients) as %Status
pRequest is an internal PatientSearchRequest message with the MPIID of the patient we are looking for
method XCAPatientDiscovery(pRequest As HS.Message.XMLMessage, Output pResponse As HS.Message.XMLMessage) as %Status
pRequest contains the XCA_QueryRequest which contains the Patient ID - Query the Systems listed in XCPDQueryServiceNames and build a list of PatientID's This method is deprecated, in favor of accepting the HS.Message.PatientSearchRequest with the MPIID defined
method getQueryMessage(pPatientMatch, Output pOutput, pSysEndPoint) as %Status
Using the patient match and the end point device create the XCPD request for a target system and return in pOutput

Inherited Members

Inherited Properties

Inherited Methods

Storage

Gray indicates storage defined by superclasses.

Storage Model: Storage (Ens.BusinessProcess)

^Ens.BusinessProcessD(ID,"received",n)
=
%MessagesReceived(n)

Storage Model: Storage (Ens.BusinessProcess)

^Ens.BusinessProcessD(ID,"sent",n)
=
%MessagesSent(n)

Storage Model: Storage (Ens.BusinessProcess)

^Ens.BusinessProcessD(ID)
=
%%CLASSNAME
%ConfigQueueName
%IsCompleted
%MasterPendingResponsesOld
%PrimaryRequestHeader
%PrimaryResponseHeader
%RepliedStatus
%responseId
Adapter
%SessionId
%TimeCompleted
%TimeCreated
%ConfigName
%QuitTask
AlertOnError
%responseClassName
%IsTimerInterrupted
%IsTerminated
%StatusCode
%MessagesReceivedOld
%MessagesSentOld
ReplyCodeActions
RetryInterval
AlertRetryGracePeriod
FailureTimeout
Retry
SuspendMessage
QueueCountAlert
QueueWaitAlert
InactivityTimeout
BusinessPartner
AlertGroups
%SuperSession

Storage Model: Storage (HS.IHE.XCPD.InitiatingGateway.Process)

^Ens.BusinessProcessD(ID,"Process")
=
XCAQueryServiceNames
XDSbQueryServiceName
PIXv3Consumer
InitiatingGatewayOperations
HomeCommunityAsAssigningAuthority
TraceOperations
IHEVersion
IHEExtension
Transformer
PDQv3Consumer
XCPDQueryServiceNames
XCPDInitiatingGatewayOperations
HomeCommunityOID
SenderDeviceOID
SenderDevice
HomeCommunity
Errors
PDQLowThreshold
QueryInitiator
TransformPDQToPatientSearch
TransformPatientSearchToXCPD
ApplyConsent
NationalPatientIdentifier
NationalPatientIdentifierAA
FeedbackOpens in a new tab