Class Reference
IRIS for UNIX 2024.1.2
InterSystems: The power behind what matters   
Documentation  Search
  [USER] >  [EnsLib] >  [EDI] >  [X12] >  [Operation] >  [SOAPOperation]
Private  Storage   

class EnsLib.EDI.X12.Operation.SOAPOperation extends EnsLib.EDI.X12.Operation.ReplyStandard

Accepts X12 Messages and forwards them to a remote IP address, reading a response X12 Message object returned from the remote IP address if the GetReply setting is enabled.

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
2 5 2


Summary

This is a Business Operation class.

The associated Adapter class is EnsLib.SOAP.OutboundAdapter.

RequestResponse
EnsLib.EDI.X12.Document EnsLib.EDI.X12.Document

Properties
%AlertStartTime %ConfigName %ConfigQueueName %LastActionTime
%LastHandledTime %LastReportedError %Parser %QuitTask
%RequestHeader %SessionId %SuperSession %WarnedLatest
%isShadow %outFraming %replyActionMap Adapter
AlertGroups AlertOnError AlertRetryGracePeriod ArchiveIO
BusinessPartner DefCharEncoding DeferResponse FailureTimeout
Framing IOLogEntry InactivityTimeout NoFailWhileDisconnected
QueueCountAlert QueueWaitAlert ReplyCodeActions Retry
RetryCount RetryInterval SearchTableClass SendSuperSession
Separators SuspendMessage ThrottleDelay Validation

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 DeferResponse EnumerateSettingsClose
EnumerateSettingsExecute EnumerateSettingsFetch GenerateSuperSession GetDeferredResponseToken
GetMessageList GetMsgHdrRequestKey GetProductionSettingValue GetProductionSettings
GetPropertyConnections GetSegmentTerminator GetSettings GetShadowInstance
IOLogDiscard IncludeSuperSession NewIOLogEntry OnDocumentEnd
OnDocumentStart OnError OnFailureTimeout OnGenerateSuperSession
OnGetConnections OnGetReplyAction OnInit OnKeepalive
OnMessage OnMonitor OnParsingError OnPostDocument
OnPreDocument OnProductionStart OnProductionStop OnReplyDocument
OnTearDown OnValidate OutputFramedToDevice OutputFramedToIOStream
QueueName SaveIOLogEntry SendAlert SendDeferredResponse
SendMessage SendRequestAsync SendRequestSync SetOutFraming
buildReplyActionMap resolveDocType validateAndIndex


Parameters

• parameter ADAPTER = "EnsLib.SOAP.OutboundAdapter";
The type of adapter used to communicate with external systems
• parameter SETTINGS = "-Framing";
List of properties can be set as settings in the configuration file format is a comma separated list of property names

Properties

• property Framing as %String [ InitialExpression = "AsciiLF" ];
X12 Document outbound framing protocol; options:
- 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.

• property Separators as %String(MAXLEN=10) [ InitialExpression = $$$X12DefElementSeparator_$$$X12DefComponentSeparator_"^"_$$$X12DefSegTerminator_"\r\n" ];
Since SOAP requires valid XML characters the default repetition separator is put at ^ rather than Ascii 30
If this property is the empty string then the Separators for the message will be used.

Methods

• method OnInit() as %Status
This user callback method is called via initConfig() from %OnNew() or in the case of SOAP Services from OnPreSOAP()
• method SendMessage(pMsgOut As EnsLib.EDI.X12.Document, Output pMsgIn As EnsLib.EDI.X12.Document, pExpectedSequenceNumber As %String) as %Status


Copyright (c) 2025 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.