EnsLib.EDI.X12.Service.Standard
abstract class EnsLib.EDI.X12.Service.Standard extends Ens.BusinessService, EnsLib.EDI.X12.Util.IOFraming, EnsLib.EDI.ServiceInterface
Property Inventory
- AddNackErrText
- BadMessageHandler
- BatchErrorAction
- BatchHandling
- BatchReplyType
- CommitAckType
- DefCharEncoding
- DefCompSep
- DefRepSep
- DefSegTerm
- DocSchemaCategory
- Framing
- IgnoreInboundAck
- LocalApplicationID
- ReplyMode
- SNIPLevel
- SearchTableClass
- TargetConfigNames
- TolerateNewlines
- ValMode
- Validation
Method Inventory
- GetRequestClassList()
- GetResponseClassList()
- GetSegmentTerminator()
- IOLogDiscard()
- OnConstructReply()
- OnDocumentEnd()
- OnDocumentStart()
- OnGetConnections()
- OnInboundAck()
- OnInit()
- OnParsingError()
- OnProcessInput()
- OnResolveDocType()
- OnValidate()
- SendReply()
- constructBatchReply()
- constructReply()
- getReplyChildDocCode()
- getReplyCode()
- reportReply()
- resolveAndIndex()
- resolveDocType()
- standardOnProcessInput()
Parameters
Properties
(Note: If ReplyMode is 'Application' and BatchErrorAction is not 'Individual', then some documents in a batch may be forwarded and then the whole batch rejected after errors are encountered)
- Reject With All Errors : Reject the whole batch if any error is found in any document within it. Enumerate all errors found if BatchReplyType allows for reporting them. This will prevent forwarding any documents in a batch until all have been read and validated.
- Accept With Errors : Accept documents with errors, but do take note of all errors found if BatchReplyType allows for reporting them. This will prevent forwarding any documents in a batch until all have been read and validated.
- Reject On First Error : Reject the whole batch when the first error is found in any document within it. Don't bother checking for more errors or parsing any further contents of the Interchange. This will prevent forwarding any documents in a batch until all have been read and validated.
- Reject Individual Errors : Reject only those documents within the Interchange that have errors. Forward each acceptable child document to the target config item(s) as soon as it has been read and validated.
- Whole Batch : Don't process child documents individually; accumulate and send the whole batch as one composite document
- Single-Session Batch : Forward all documents in the Interchange as part of a single session, including final parent document objects containing batch and group header and trailer segments
- Multi-Session Batch : Forward each document in the Interchange in its own session, followed by final parent document objects containing the batch and group header and trailer segments
- Individual : Forward each child document in the batch in its own session; do not forward parent batch document objects
- None : Do not generate a batch reply - if an error occurs do not construct any immediate notification reply to the sender
- All : Generate a reply Interchange containing a reply notification for every TransactionSet in the Interchange we received
- All+TA1 : Generate a reply Interchange containing a TA1 segment that indicates acceptance or error status for the whole Interchange, and a reply notification for every TransactionSet in the Interchange we received
- All+ISA14TA1 : Generate a reply Interchange containing a TA1 segment only if either a 1 appears in field ISA:14 of the ISA header segment or if there is an error at the Interchange level. If no error at the Interchange level, then send a reply for each Transaction Set we received.
- Errors : Generate a reply Interchange containing reply notifications only for TransactionSets in which errors are detected, or an empty Interchange if no error is found
- OnlyIfErrors : Only if errors are found, generate a reply Interchange containing reply notifications only for TransactionSets in which errors are detected
- Successes : Generate a reply Interchange containing reply notifications only for TransactionSets in which no errors are detected, or an empty Interchange if only errors are found
- TA1 : Generate a reply Interchange containing only a TA1 segment that indicates acceptance or error status for the whole Interchange we received
- OnlyIfErrorTA1 : Only if errors are found, generate a reply Interchange containing only a TA1 segment that indicates error status for the whole Interchange we received
- ISA14-TA1 : Generate a reply Interchange containing only a TA1 segment if a 1 appears in field ISA:14 of the ISA header segment of the incoming Interchange; otherwise return nothing.
- ISA14-OnlyIfErrorTA1 : Only if errors are found and field ISA:14 of the incoming ISA header segment is set to 1, generate a reply Interchange containing only an error TA1 segment; otherwise return nothing.
- Byte : Generate a reply consisting of a single character code : 'A' if the whole Interchange is accepted, 'R' if it is rejected due to one or more errors
- TA1 : Generate a reply Interchange containing only a TA1 segment that indicates acceptance or error status for the whole Interchange we received
- Byte : Generate a reply consisting of a single character code : 'A' if the whole Interchange is accepted, 'R' if it is rejected due to one or more errors
- Native - use the default character encoding of the installed locale of the InterSystems IRIS server
- latin1 - the ISO Latin1 8-bit encoding; this is the default
- ISO-8859-1 - the ISO Latin1 8-bit encoding
- UTF-8 - the Unicode 8-bit encoding
- Unicode - the Unicode 16-bit encoding (Little-Endian)
- UnicodeBig - the Unicode 16-bit encoding (Big-Endian)
- Any other NLS definitions installed on this InterSystems IRIS server
- @<ttable> - <ttable> means a raw InterSystems character translation table name. A prefix of '@' means to use the named table.
A trailing asterisk (*) at the end of a given partial type Name will match any types with that beginning part. An example: DocSchemaCategory='837=837_X096, 850=850_X12-4010, Interchange=HIPAA_5010, Group=HIPAA_4010';
Note that a DocType assignment may be needed for Validation or SearchTableClass indexing.
- Flexible : Determine framing style from the content of received data of each message received
- Flexible! : Determine framing style from the content of received data of the first message and require subsequent messages to have that same framing style
- None : No framing - Each document is output without prefix or suffix characters
- Epic02/03 : same as Ascii02/03 : EPIC sometimes uses this for TCP. Frame documents with an Ascii(02) prefix character before each document and an Ascii(03) suffix character
- Ascii[nn]/[mm] : Frame documents with an Ascii(nn) prefix character before each document and an Ascii(mm) suffix character, but no trailing Ascii(13) as in MLLP
- Ascii[nn] : Frame documents with an Ascii(nn) suffix character separating each document from the subsequent one.
- AsciiLF : Frame documents with Ascii(10) (Linefeed) separating each document from the subsequent one
- AsciiCR : Frame documents with an extra Ascii(13) (Carriage Return) separating each document from the subsequent one
- MLLP : Minimal Lower Level Protocol (HL7 style) - Frame each X12 Document with Ascii(11) prefix and Ascii(28,13) suffix
- MLLP[nn]/[mm] : Minimal Lower Level Protocol - Frame each X12 Document with Ascii(nn) prefix and Ascii(mm),Ascii(13) suffix
- MsgEnvelope : Use the document's Envelope property verbatim if it is present. The string <!--X12DOC--> if present in the Envelope will be replaced with the document content. Otherwise the document will simply follow the 'Envelope' text
- MLLPMsgEnvelope : Same as 'MsgEnvelope', but with MLLP prefix and suffix also around the document inside the 'Envelope' Note: All Ascii values should be given in decimal; Ascii(120) ('x') is not allowed as an Ascii framing character. Also, if an asterisk (*) is appended to the framing specification, Flexible framing will be used in parsing received acknowledgement response messages. Otherwise the response messages will be expected with the same kind of framing as that specified here for outbound messages.
These are used in constructing reply document headers.
The '@' symbol represents using the corresponding field from the incoming message.
If your ID must contain a literal @ symbol, escape it with backslash: '\@'
- Never : Do not send back any reply
- Immediate : Send back reply message generated immediately in this Service
- Application : If the Interchange passes immediate validation, wait for reply or replies from target config item and forward a reply back when it is complete. (If validation fails or some other error occurs, generate an immediate reply anyway, according to the option selected for 'BatchReplyType'
This is only used when ValMode is set to 'SNIP'.
If set to 1, then only integrity testing is performed.
If set to 2, then integrity testing and requirements testing are performed.
These records will be stored in the named SearchTable class, if any.
Also causes tab and space characters to be ignored at the end or beginning of segments (i.e. adjacent to a segment terminator).
If set to 'Flags', the flags specified in the Validation setting will be used.
If set to 'SNIP', SNIP rules will be used in determining whether messages pass validation and in constructing Acknowledgement messages. The SNIPLevel value will determine which SNIP rules are used.
If set to 'None', do not perform validation.
Set to 1 to block documents that don't pass default validation. Default validation requires a DocType and blocks messages with any other error encountered while mapping the document's sequence of segments using the X12 schema structure specified by the document's DocType. This is equivalent to 'dm'.
All flags relating to fields/components apply only if 's'/'c' also specified (eg. if set to 'dmslt' then the length and datatype of fields will be checked, but the length and datatype of components will not be) 'd' - require DocType'm' - don't tolerate BuildMap segment mapping errors
's' - enforce segment structures (number and repetition of fields)
'c' - enforce composite structures (number of components)
'r' - enforce required fields/components being present
'u' - enforce non-use of fields/components marked 'Not Used' - Note this is not available when using a new-style only schema
'l' - enforce field/component length restrictions
't' - enforce correct datatypes used for field/component values
'v' - enforce correct code table values used where specified in the schema - Note this is not available when using a new-style only schema
'x' - enforce relational conditions where specified in the schema - Note this is not available when using a new-style only schema
'n' - perform all validation available to new style schemas. This is equivalent to 'dmscrlt'
'a' - perform all available validation. This is equivalent to 'dmscrultv'
'e' - continue validating after errors are encountered - specify this to scan the entire document and report all errors. Note, however, that if BatchErrorAction is 'Reject With All Errors', the entire document will always be scanned. And if BatchErrorAction is 'Reject on First Error, then validation will always stop after the first error is encountered.
Methods
Inherited Members
Inherited Properties
- %AlertStartTime
- %ConfigName
- %ConfigQueueName
- %LastActionTime
- %LastHandledTime
- %LastReportedError
- %OutsideCreated
- %PreserveSession
- %ProcessInputCalled
- %QuitTask
- %RequestHeader
- %SessionId
- %SuperSession
- %SuperSessionCreatedBeforeSession
- %WaitForNextCallInterval
- %WarnedLatest
- %isShadow
- %outFraming
- Adapter
- AlertGracePeriod
- AlertGroups
- AlertOnError
- ArchiveIO
- BusinessPartner
- GenerateSuperSessionID
- IOLogEntry
- InactivityTimeout
- ThrottleDelay
Inherited Methods
- %AddToSaveSet()
- %ClassIsLatestVersion()
- %ClassName()
- %ConstructClone()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Extends()
- %GetParameter()
- %IsA()
- %IsModified()
- %New()
- %NormalizeObject()
- %ObjectModified()
- %OnClose()
- %OnNew()
- %OriginalNamespace()
- %PackageName()
- %RemoveFromSaveSet()
- %SerializeObject()
- %SetModified()
- %SuperSessionSet()
- %ValidateObject()
- AdapterName()
- AssignOneSetting()
- CloseIOLogEntry()
- EnumerateSettingsClose()
- EnumerateSettingsExecute()
- EnumerateSettingsFetch()
- ForceSessionId()
- GenerateSuperSession()
- GetDeferredResponseToken()
- GetMsgHdrRequestKey()
- GetProductionSettingValue()
- GetProductionSettings()
- GetPropertyConnections()
- GetSettings()
- GetShadowInstance()
- NewIOLogEntry()
- OnError()
- OnGenerateSuperSession()
- OnKeepalive()
- OnMonitor()
- OnPostDocument()
- OnPreDocument()
- OnProductionStart()
- OnProductionStop()
- OnTearDown()
- OutputFramedToDevice()
- OutputFramedToIOStream()
- PopulateSuperSession()
- QueueName()
- SaveIOLogEntry()
- SendAlert()
- SendDeferredResponse()
- SendRequestAsync()
- SendRequestSync()
- SetOutFraming()