Skip to main content

HS.InteropTools.HL7.GenerateDTL.Build

class HS.InteropTools.HL7.GenerateDTL.Build extends %Library.RegisteredObject

Property Inventory

Method Inventory

Properties

property DTLName as %String;
Name of the DTL being processed
Property methods: DTLNameDisplayToLogical(), DTLNameGet(), DTLNameIsValid(), DTLNameLogicalToDisplay(), DTLNameLogicalToOdbc(), DTLNameNormalize(), DTLNameSet()
property HelperClass as %Dictionary.Classname;
Default class is HS.InteropTools.HL7.GenerateDTL.BuildHelper
Property methods: HelperClassGet(), HelperClassIsValid(), HelperClassSet()
property LookupTypes as %String;
LookupTypes retrieved from HelperClass
Property methods: LookupTypesDisplayToLogical(), LookupTypesGet(), LookupTypesIsValid(), LookupTypesLogicalToDisplay(), LookupTypesLogicalToOdbc(), LookupTypesNormalize(), LookupTypesSet()
property SourceDocType as %String;
String retrieved from TEMPLATE parameter of DTL
Property methods: SourceDocTypeDisplayToLogical(), SourceDocTypeGet(), SourceDocTypeIsValid(), SourceDocTypeLogicalToDisplay(), SourceDocTypeLogicalToOdbc(), SourceDocTypeNormalize(), SourceDocTypeSet()
property TargetDocType as %String;
String retrieved from TEMPLATE parameter of DTL
Property methods: TargetDocTypeDisplayToLogical(), TargetDocTypeGet(), TargetDocTypeIsValid(), TargetDocTypeLogicalToDisplay(), TargetDocTypeLogicalToOdbc(), TargetDocTypeNormalize(), TargetDocTypeSet()
property Template as %DynamicObject;
Template retrieved from DTL TEMPLATE parameter
Property methods: TemplateGet(), TemplateGetObject(), TemplateGetObjectId(), TemplateGetSwizzled(), TemplateIsValid(), TemplateNewObject(), TemplateSet(), TemplateSetObject(), TemplateSetObjectId(), TemplateUnSwizzle()
property Transform as Ens.DTL.Transform;
transform object retrieved from the XData Stream
Property methods: TransformGet(), TransformGetSwizzled(), TransformIsValid(), TransformNewObject(), TransformSet()

Methods

classmethod ApplyFilter(pDTLName As %String)
@API
Apply the RuleClass to the source messages (Called by UI) and count to ensure source / target counts are equal, and then calls ExecuteDTL(1,pDTLName). Any errors are logged in the GenerateStatus object.
@argument pDTLName - The DTLName in the form Package.Class
classmethod BackgroundExecuteDTL(pReExecute As %Boolean = 1, pDTLName As %String = "")
@API
Re-transform messages based on pReExecute parameters
@argument pReExecute - (1) Reprocess all source items, (0) reprocess source items where the targets don't match
@argument pDTLName - The DTLName in the form Package.Class
method Compare(pSeq As %String, pField As %String, pFieldTotal As %Integer, ByRef pSourceRef As %String, ByRef pTargetRef As %String, ByRef pActions As Ens.DTL.ActionList, Output pAnnotation As %String)
Figure out values of sourceRef and targetRef
Comparing a single field, evaluate different cases TargetNull, Identical, TargetDifferent, SourceNull @argument pSeg - The segment number we are updating 001 - NNN @argument pField - The field we are setting fully padded ie 009.001 @argument pFieldTotal - Number of times this field has been set @argument pSourceRef - The source reference which may be updated, or set to "" @argument pTargetRef - The target reference which may be updated, or set to null @argument pActions - List of DTL actions which may be updated when doing a switch statement (instead of lookups) @Output pAnnotation - a string representing any issue found
classmethod Execute(pDTLName As %String = "", pReload As %Boolean = 1) as %Status
@API Load Source and Target Messages, Filter, Generate the DTL, Transform the Source Messages which will build the {runidentifier}.target.gen message and the Comparison records
@argument pDTLName - The DTLName in the form Package.Class
@argument pReload - when true, the Source and Target messages will be cleared and re-populated from the original directories
classmethod ReprocessItem(pDisplayOrder As %String, pDTLName As %String = "")
@API
Called by UI to reprocess a single item
@argument pDisplayOrder - item to reprocess
@argument pDTLName - The DTLName in the form Package.Class
classmethod Run(pTemplate As %String = "", pForeground As %Boolean = 0) as %Status
@API
Method to build the DTL, Using the pTemplate provided generate and execute a DTL
@argument pTemplate - Can be either a string or a %DynamicObject which will contain the properties defining the DTL Generation template settings include sourceDocType,targetDocType,useControlID,dtlName,sourceDirectory,targetDirectory,ruleClass,helperClass,preTransform,source,target,superClass
@argument pForeground - Default is to run in background, supply 1 to run in foreground
@returns StatusCode

Inherited Members

Inherited Methods

FeedbackOpens in a new tab