Properties
property CommonSearchTableEntry as %Persistent ;
Current instance of the common Resource search table class to populate
Property methods: CommonSearchTableEntryGet(), CommonSearchTableEntryGetObject(), CommonSearchTableEntryGetObjectId(), CommonSearchTableEntryGetSwizzled(), CommonSearchTableEntryIsValid(), CommonSearchTableEntryNewObject(), CommonSearchTableEntrySet(), CommonSearchTableEntrySetObject(), CommonSearchTableEntrySetObjectId(), CommonSearchTableEntryUnSwizzle()
property Context [ MultiDimensional ];
When a search column can have more than more value for a given resource, we store the collection of values in a sub-table
This MVArray allows holding the set of values so they can be added to the correct sub-tables
Property methods: ContextDisplayToLogical(), ContextGet(), ContextIsValid(), ContextLogicalToDisplay(), ContextLogicalToOdbc(), ContextNormalize(), ContextSet()
property IsBaseResourceProperty as %Boolean ;
flag to know when a particular search column is a base Resource param or for a specific resource-type
Property methods: IsBaseResourcePropertyDisplayToLogical(), IsBaseResourcePropertyGet(), IsBaseResourcePropertyIsValid(), IsBaseResourcePropertyLogicalToDisplay(), IsBaseResourcePropertyNormalize(), IsBaseResourcePropertySet()
When we do an update we need to also update values in related tables without doing a delete/recreate.
Track the objects for related tables for each search param.
Property methods: RelatedObjectsToUpdateGet(), RelatedObjectsToUpdateGetObject(), RelatedObjectsToUpdateGetObjectId(), RelatedObjectsToUpdateGetSwizzled(), RelatedObjectsToUpdateIsEmpty(), RelatedObjectsToUpdateIsValid(), RelatedObjectsToUpdateNewObject(), RelatedObjectsToUpdateSet(), RelatedObjectsToUpdateSetObject(), RelatedObjectsToUpdateSetObjectId(), RelatedObjectsToUpdateUnSwizzle()
Pointer for RelatedObjectsToUpdate so we can track our position in the array while updating rows.
Property methods: RelatedPointerDisplayToLogical(), RelatedPointerGet(), RelatedPointerIsValid(), RelatedPointerLogicalToDisplay(), RelatedPointerLogicalToOdbc(), RelatedPointerNormalize(), RelatedPointerSet()
property SearchTableEntry as %Persistent ;
Current instance of the search table class to populate
Property methods: SearchTableEntryGet(), SearchTableEntryGetObject(), SearchTableEntryGetObjectId(), SearchTableEntryGetSwizzled(), SearchTableEntryIsValid(), SearchTableEntryNewObject(), SearchTableEntrySet(), SearchTableEntrySetObject(), SearchTableEntrySetObjectId(), SearchTableEntryUnSwizzle()
property Update as %Boolean [ InitialExpression = 0 ];
Flag to know if this is a new row or an update to an existing search table row.
Property methods: UpdateDisplayToLogical(), UpdateGet(), UpdateIsValid(), UpdateLogicalToDisplay(), UpdateNormalize(), UpdateSet()
Interactions instance to use
Property methods: interactionsGet(), interactionsGetSwizzled(), interactionsIsValid(), interactionsNewObject(), interactionsSet()
Json for the resource to index
Property methods: jsonGet(), jsonGetObject(), jsonGetObjectId(), jsonGetSwizzled(), jsonIsValid(), jsonNewObject(), jsonSet(), jsonSetObject(), jsonSetObjectId(), jsonUnSwizzle()
property keyBeingIndexed as %String [ Transient ];
Key of the resource being indexed by this indexer
Property methods: keyBeingIndexedDisplayToLogical(), keyBeingIndexedGet(), keyBeingIndexedIsValid(), keyBeingIndexedLogicalToDisplay(), keyBeingIndexedLogicalToOdbc(), keyBeingIndexedNormalize(), keyBeingIndexedSet()
Metadata API to evaluate FHIR Path expressions. Taken from provided interactions instance
Property methods: mdAPIGet(), mdAPIGetSwizzled(), mdAPIIsValid(), mdAPINewObject(), mdAPISet()
property paramBeingIndexed as %String [ Transient ];
Search column param name, used for error messages primarily
Property methods: paramBeingIndexedDisplayToLogical(), paramBeingIndexedGet(), paramBeingIndexedIsValid(), paramBeingIndexedLogicalToDisplay(), paramBeingIndexedLogicalToOdbc(), paramBeingIndexedNormalize(), paramBeingIndexedSet()
property silenceIndexErrors as %Boolean [ InitialExpression = 0 ];
opt in setting, configured from the strategy config settings. Recommended to keep this off unless temporarily needed while an issue is resolved.
Property methods: silenceIndexErrorsDisplayToLogical(), silenceIndexErrorsGet(), silenceIndexErrorsIsValid(), silenceIndexErrorsLogicalToDisplay(), silenceIndexErrorsNormalize(), silenceIndexErrorsSet()
Methods
Inherited description: This callback method is invoked by the
%New() method to
provide notification that a new instance of an object is being created.
If this method returns an error then the object will not be created.
It is passed the arguments provided in the %New call.
When customizing this method, override the arguments with whatever variables and types you expect to receive from %New().
For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:
Method %OnNew(dob as %Date = "", name as %Name = "") as %Status
If instead of returning a %Status code this returns an oref and this oref is a subclass of the current
class then this oref will be the one returned to the caller of %New method.
method AddToSearchTableEntry(searchColumn As HS.FHIRServer.Storage.Json.SearchColumn , pValue As %String )
Basic Parameter Types: date, number, quantity, reference, string, token, uri
Handle each possible date data type: "date", "dateTime", "instant", "Period", "Timing"
Handle each possible number data type: "decimal", "integer", "positiveInt", "unsignedInt"
Handle each possible quantity data type: "Age", "Duration", "Money", "Quantity", "Range"
Handle each possible reference data type: "canonical", "uri", "Reference"
Handle each possible string data type: "markdown", "string", "Address", "HumanName"
Handle each possible token data type: "boolean", "canonical", "code", "id", "string", "CodeableConcept", "Coding", "ContactPoint", "Identifier"
Handle each possible uri data type: "canonical", "uri"
method IndexValues()