Class Name: HL7DefinitionData (EasyHL7 Vendor Definition)
Scope: Public - Restricted ( License Required )
Factory Creation: Yes - SQLSchemaAPIKey.NewDefinitionData() methods
The EasyHL7 Vendor Definition is an encapsulation of a HL7 2.xx standard in a format which was created by HermeTech International in 2003 and has been in wide use with all of our products since then. It is used by the Schema Engine to design your Schema and its table structures, etc. and is also used to create reports and labels. So while it is not to be confused with your database schema it is loosely coupled and can be useful. The HL7DefinitionData class and the child classes are an object oriented interface into that structure. This class is widely ReadOnly and cannot be used to create or modify a definition. For more information on how to create and modify definitions see the online help for the UltraPort SQL Schema Engine.
|
What is a "No Nulls" Class? It means that we have gone to great lengths so that there no exceptions thrown or null values returned on accessor methods. You really have to try and break it (please don't though).
But how does it work in practice? It means that if you think that there is a HL7 standard segment named "HelloMon" (hint, there is not) and want to retrieve a HL7DataSegmentDef class object we will return a valid object to you if you call GetSegment("HelloMon"). The IsDefined property of that object will be False and it will be empty BUT we won't return Null. If you want to get the description of Field #8000 of the "PID" segment (hint, there is no Field #8000) you can call FieldDescription("PID", 8000) and we will return "Undefined" but we won't throw an exception or return a null String.
|
Boolean IsLoaded. Will be False if no valid EasyHL7 Vendor definition has been loaded. See the LoadVendor() and OpenVendor() methods.
Integer NumberOfDataTypes. The number of HL7 Data Types in the HL7 definition
Integer NumberOfSegments. The number of HL7 Segment Definitions in the HL7 definition (See HL7DataSegmentDef Class)
String VendorName. The name of the EasyHL7 Vendor.
String VendorID. The internal GUID assigned to the HL7 Vendor Definition.
String VendorVersion.The Version property (2.2, 2.3, 2.5.1, etc)
String VendorDisplayName. The Display Name (Includes both VendorName and VendorVersion).
String VendorDescription.The Description entered for the Vendor.
String Notes. Any user notes saved at the vendor level.
DateTime LastModified. Last modified data for the vendor definition.
Enveloping and Encoding Characters
BOM [String] The Beginning of Message character(s) EOM [String] The End of Message character(s) SegmentDelimiter [String] The Segment Delimiter character(s)
FieldDelimiter [String] The Field Delimiter character (1 character only) ComponentDelimiter [String] The Component Delimiter character. RepeatDelimiter [String] The Repeat Delimiter character. EscapeDelimiter [String] The Escape Delimiter character. SubComponentDelimiter [String] The SubComponent Delimiter character. |
HL7MessageEncoder VendorMessageEncoder().
Returns: A HL7MessageEncoder object populated to match the settings in the HL7DefinitionData Object.
NOTE: Using this HL7MessageEncoder object assures that your applications are using the same settings as the UltraPort SQL Schema Engine is when performing operations that involve HL7 messages
Boolean LoadVendor() Returns: Success/Failure. Follows the Common Exceptions Interface. Description: Attempts to retrieve the Vendor definition XML from your schema warehouse table <prefix>_SchemaMaster (VendorDefinition column) and use that value to call OpenVendor().
Boolean OpenVendor(String xmlStringOrFileName) Parameter 1: String - xmlStringOrFileName. Can be either a fully qualified path/filename containing an exported "Stand-Alone" EasyHL7 Vendor Definition or the XML contents of same. Returns: Success/Failure. Follows the Common Exceptions Interface. If False Isloaded will be False. Description: Loads a EasyHL7 Vendor Definition structure into the class. HL7 Segment Methods
HL7DataSegmentDef GetSegment(2 Overloads) Overload 1: Parameter 1: String segmentName. Name of the segment definition to retrieve "MSH", "PID", "ACC", "MSA", etc. Overload 2: Parameter 1: Integer segmentNameIndex. The index of the segment definition to retrieve. Between 0 and NumberOfSegments - 1 NOTE: Overload 2 was not included in the checkpoint release version 1.0.5. It will be in the next version.
Boolean SegmentIsDefined(String segmentName) Parameter 1: String - segmentName. Name of the segment you are querying "MSH", "PID", "ACC", "MSA", etc. Returns: Yes/No. Does the HL7 Segment named segmentName exist in the HL7 definition.
Integer SegmentNameIndex(String segmentName) Parameter 1: String - segmentName. Name of the segment you are querying "MSH", "PID", "ACC", "MSA", etc. Returns: Integer. -1 if segmentName does not exist in your definition OR a value between 0 and NumberOfSegments - 1.
String SegmentDescription(String segmentName) Parameter 1: String - segmentName. Name of the segment you are querying "MSH", "PID", "ACC", "MSA", etc. Returns: String. The description or "Undefined" if segmentName is not present in the vendor definition.
String FieldDescription(String segmentName, Integer fieldNumber) Parameter 1: String - segmentName. Name of the segment you are querying "MSH", "PID", "ACC", "MSA", etc. Parameter 2: Integer - fieldNumber. Which field within the segment you wish to query. Example: Calling FieldDescription("PID", 5) would return "Patient Name" in most vendor definitions. Returns: String. The description or "Undefined" if segmentName is not present in the vendor definition. HL7 Data Type Methods
Integer DataTypeIndex(String dataTypeName) Parameter 1: String - dataTypeName. Name of the HL7 Data type you are querying "XPN", "XAD", "PN", "NM", etc. Returns: Integer. -1 if dataTypeName does not exist in your definition OR a value between 0 and NumberOfDataTypes - 1.
String DataTypeDescription(String dataTypeName) Parameter 1: String - dataTypeName. Name of the HL7 Data type you are querying "XPN", "XAD", "PN", "NM", etc. Returns: String. The description or "Undefined" if dataTypeName is not present in the vendor definition.
HL7DataTypeDef GetDataType(2 Overloads) Overload 1: Parameter 1: String dataTypeName. Name of the HL7 data type definition to retrieve "XPN", "XAD", "PN", "NM", etc. Overload 2: Parameter 1: Integer segmentNameIndex. The index of the HL7 data type definition to retrieve. Between 0 and NumberOfDataTypes - 1 NOTE: Overload 2 was not included in the checkpoint release version 1.0.5. It will be in the next version.
Boolean IsDataType(String dataTypeName) Parameter 1: String - dataTypeName. Name of the HL7 Data type you are querying "XPN", "XAD", "PN", "NM", etc. Returns: Yes/No. Does the data type exist in the HL7 definition.
|
Exception Handling: Follows the Common Exceptions Interface.
