Skip to main content


class EnsPortal.Dialog.TestTransform extends EnsPortal.Dialog.standardDialog

Property Inventory

Method Inventory


parameter APPLYBUTTON = 0;
If true, then this dialog displays an Apply button.
parameter CANCELBUTTON = 0;
Inherited description: If true, then this dialog displays a Cancel button.
parameter OKBUTTON = 0;
parameter PAGENAME = Test Transform;
Displayed name of this page.
parameter RESOURCE = %Ens_DTLTest:USE;
User needs USE permissions on the %Ens_DTLTest resource to view this page.


property extraDataSerialized as %String);
JSON serialization of aux, process and context extra data. Example of dynamic object created from serialization is extraDataSerialized.aux.RuleUserData="test"
Property methods: extraDataSerializedDisplayToLogical(), extraDataSerializedGet(), extraDataSerializedIsValid(), extraDataSerializedLogicalToDisplay(), extraDataSerializedLogicalToOdbc(), extraDataSerializedNormalize(), extraDataSerializedSet()
property firstLoad as %ZEN.Datatype.boolean [ InitialExpression = 1 ];
Property methods: firstLoadDisplayToLogical(), firstLoadGet(), firstLoadIsValid(), firstLoadLogicalToDisplay(), firstLoadLogicalToOdbc(), firstLoadLogicalToXSD(), firstLoadNormalize(), firstLoadSet(), firstLoadXSDToLogical()
property lastSavedExtraSerialized as %String);
Record last extraDataSerialized persisted on server for user and dtl to prevent unnecessary saves
Property methods: lastSavedExtraSerializedDisplayToLogical(), lastSavedExtraSerializedGet(), lastSavedExtraSerializedIsValid(), lastSavedExtraSerializedLogicalToDisplay(), lastSavedExtraSerializedLogicalToOdbc(), lastSavedExtraSerializedNormalize(), lastSavedExtraSerializedSet()
property sourceClass as %ZEN.Datatype.className;
Property methods: sourceClassDisplayToLogical(), sourceClassGet(), sourceClassIsValid(), sourceClassLogicalToDisplay(), sourceClassLogicalToOdbc(), sourceClassNormalize(), sourceClassSet()
property sourceData as %ZEN.Datatype.string (ZENCLIENTONLY = 1);
Property methods: sourceDataDisplayToLogical(), sourceDataGet(), sourceDataIsValid(), sourceDataLogicalToDisplay(), sourceDataLogicalToOdbc(), sourceDataNormalize(), sourceDataSet()
property sourceDocType as %ZEN.Datatype.string;
Property methods: sourceDocTypeDisplayToLogical(), sourceDocTypeGet(), sourceDocTypeIsValid(), sourceDocTypeLogicalToDisplay(), sourceDocTypeLogicalToOdbc(), sourceDocTypeNormalize(), sourceDocTypeSet()
property sourceLabel as %ZEN.Datatype.string [ InitialExpression = $$$TextHTML("Input Message") ];
Property methods: sourceLabelDisplayToLogical(), sourceLabelGet(), sourceLabelIsValid(), sourceLabelLogicalToDisplay(), sourceLabelLogicalToOdbc(), sourceLabelNormalize(), sourceLabelSet()
property targetClass as %ZEN.Datatype.className;
Property methods: targetClassDisplayToLogical(), targetClassGet(), targetClassIsValid(), targetClassLogicalToDisplay(), targetClassLogicalToOdbc(), targetClassNormalize(), targetClassSet()
property targetDocType as %ZEN.Datatype.string;
Property methods: targetDocTypeDisplayToLogical(), targetDocTypeGet(), targetDocTypeIsValid(), targetDocTypeLogicalToDisplay(), targetDocTypeLogicalToOdbc(), targetDocTypeNormalize(), targetDocTypeSet()
property targetLabel as %ZEN.Datatype.string [ InitialExpression = $$$TextHTML("Output Message") ];
Property methods: targetLabelDisplayToLogical(), targetLabelGet(), targetLabelIsValid(), targetLabelLogicalToDisplay(), targetLabelLogicalToOdbc(), targetLabelNormalize(), targetLabelSet()
property transform as %ZEN.Datatype.className (ZENURL = "TRANSFORM");
Property methods: transformDisplayToLogical(), transformGet(), transformIsValid(), transformLogicalToDisplay(), transformLogicalToOdbc(), transformNormalize(), transformSet()


method %OnAfterCreatePage() as %Status
Ensure that a transform has been supplied.
method %OnGetSubtitle() as %String
Get the (localized) subtitle string for the dialog. This should be implemented in a subclass.
method %OnGetTitle() as %String
Get the (localized) title string for the dialog. This should be implemented in a subclass.
classmethod CreateInputObject(pInputClass As %String = "", pData As %String = "", Output pStatus As %Status, ByRef pDocProperties) as %RegisteredObject
Create an input message for testing. Note that pData may be a stream object if the source data is sufficiently large.
method CreateOutput(pSeed) as %Status
Callback method to create the necessary objects and capture the transformed output. We make context and process public for possible use is in Transform method
method GetExtraData() as %String [ ZenMethod ]
method GetSourceData() as %RawString
Get the current source data for this user. If the data is small enough to fit into a string, then a string is returned. The exception is if the source class is an EnsLib.HL7.Message in which case a stream will be returned even if short enough for a string. If multiple nodes in the global are needed, then a stream is returned. This method is not accessible from the client as it can return a stream.
method OnChangeTransform(pNewTransform As %String) as %Integer [ ZenMethod ]
Method to (re)initialise the page for a transform
method SaveExtraSerialized() as %String [ ZenMethod ]
classmethod SetSourceData(pTransform As %Dictionary.Classname, pData As %String) as %String [ ZenMethod ]
Save the source data for the current transform to the server. Note that pData will be automatically converted to a stream object if it exceeds the maximum string length.
method UpdateSourceData() as %String [ ZenMethod ]
Method to ensure that the current source data is present on the client. The data is written directly to the JS variable zenPage.sourceData on the client because the content may exceed 32k for sample documents, and we want to avoid the overhead of serialising the value along with the page itself.
clientmethod applyDetails() [ Language = javascript ]
clientmethod changeSourceData() [ Language = javascript ]
Event handler to send updates to the source data back to the server.
clientmethod clipboardDocument() [ Language = javascript ]
clientmethod drawExtraDataTables() [ Language = javascript ]
Populate tables based on stored data & properties identifed in dtl
clientmethod findOneReservedAndRecord(value, reserved) [ Language = javascript ]
clientmethod getDialogValue() [ Language = javascript ]
Inherited description: Get the value that will be applied when the user presses the OK button. This is implemented by subclasses.
clientmethod getSerializedExtraData(tableID) [ Language = javascript ]
Read a table of property/value pairs and convert to JSON object
clientmethod hideAuxPropertyColumn() [ Language = javascript ]
Hide property column if detected only aux used without reference to property
clientmethod isDisabledAction(action) [ Language = javascript ]
Walks up action tree to see if action disabled
clientmethod ondialogStart() [ Language = javascript ]
Find use of reserved variables in dtl and generate any input tables
clientmethod onloadHandler() [ Language = javascript ]
Ensure that the source data on the client is synchronised with the server.
clientmethod prepareExtraTestDataEntry() [ Language = javascript ]
Look for use of reserved variables in DTL: aux, process and context store in this._reserved[aux] and process and context arrays.
clientmethod recordProperties(value, reserved) [ Language = javascript ]
clientmethod recordPropsOfReserved(value) [ Language = javascript ]
clientmethod runTest() [ Language = javascript ]
Use the callback on the "targetData" component to trigger the transform and output of the result. read the tables and populate extraDataSerialized.
clientmethod serializeExtraDataFromTables() [ Language = javascript ]
Read the extra data tables and serialize so can be passed to the test call.
clientmethod showOtherFormat() [ Language = javascript ]

Inherited Members

Inherited Properties

Inherited Methods

FeedbackOpens in a new tab