Class Reference
IRIS for UNIX 2019.1
InterSystems: The power behind what matters   
Documentation  Search
  [ENSLIB] >  [Ens] >  [BusinessProcessBPL]
Private  Storage   

persistent class Ens.BusinessProcessBPL extends Ens.BusinessProcess


Parameters Properties Methods Queries Indices ForeignKeys Triggers
1 5 15 1


This is a Business Process class.

%Library.Persistent %Library.Persistent

%ConfigName %ConfigQueueName %Context %Counter
%CurrentResponseHeader %IsCompleted %IsTerminated %IsTimerInterrupted
%LastActionTime %LastHandledTime %LastReportedError %MasterPendingResponses
%MasterPendingResponsesOld %MessagesReceived %MessagesReceivedOld %MessagesSent
%MessagesSentOld %PrimaryRequestHeader %PrimaryResponseHeader %QuitTask
%RepliedStatus %SessionId %StatusCode %SuperSession
%SynchronizedResponses %Thread %TimeCompleted %TimeCreated
%WarnedLatest %isShadow %request %response
%responseClassName %responseId Adapter AlertGroups
AlertOnError AlertRetryGracePeriod BusinessPartner FailureTimeout
InactivityTimeout QueueCountAlert QueueWaitAlert ReplyCodeActions
Retry RetryInterval RuleLogging SuspendMessage

%AddToSaveSet %AddToSyncSet %BMEBuilt %CheckConstraints
%CheckConstraintsForExtent %ClassIsLatestVersion %ClassName %ComposeOid
%ConstructClone %Delete %DeleteExtent %DeleteId
%DispatchClassMethod %DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty %Exists
%ExistsId %Extends %GUID %GUIDSet
%GetLock %GetParameter %GetSwizzleObject %Id
%InsertBatch %IsA %IsModified %IsNull
%KillExtent %KillExtentData %LoadFromMemory %LockExtent
%LockId %New %NormalizeObject %ObjectIsNull
%ObjectModified %Oid %OnBeforeAddToSync %OnClose
%OnDelete %OnDetermineClass %OnNew %Open
%OpenId %OriginalNamespace %PackageName %PhysicalAddress
%PurgeIndices %Reload %RemoveFromSaveSet %ResolveConcurrencyConflict
%RollBack %Save %SaveDirect %SaveIndices
%SerializeObject %SetModified %SortBegin %SortEnd
%SuperSessionSet %SyncObjectIn %SyncTransport %UnlockExtent
%UnlockId %ValidateIndices %ValidateObject AdapterName
AssignOneSetting ClearAllPendingResponses DeferResponse EnumerateSettingsClose
EnumerateSettingsExecute EnumerateSettingsFetch GenerateSuperSession GetDeferredResponseToken
GetMessageList GetProductionSettingValue GetProductionSettings GetPropertyConnections
GetRequestClassList GetResponseClassList GetSettings GetShadowInstance
IsComponent IsResponsePending MakeAlarmCall MakeTimerCall
OnCompile OnComplete OnError OnErroredResponse
OnFailureTimeout OnGenerateSuperSession OnGetConnections OnGetReplyAction
OnInit OnKeepalive OnMonitor OnProductionStart
OnProductionStop OnRequest OnResponse OnTearDown
OnTimeout Purge QueueName RemovePendingResponse
Reply ReplyError RuleLoggingSet SendAlert
SendDeferredResponse SendRequestAsync SendRequestSync SetTimer

EnsLib.Background.Process.ExportMessageSearch EnsLib.Printing.Dispatcher EnsLib.PushNotifications.IdentityManager.Process
EnsLib.ebXML.Process.MessageReceiver EnsLib.ebXML.Process.MessageSender


• parameter SETTINGS = "RuleLogging:Dev";
List of properties can be set as settings in the configuration file format is a comma separated list of property names


• property %Context as Ens.BP.Context;
This property holds the context object
• property %Counter as %Integer;
This property holds the counter for delays and timeouts
• property %SynchronizedResponses as array of %String [ SqlFieldName = _SynchronizedResponses ];
This property holds the collection of synchronised responses
• property %Thread as Ens.BP.Thread;
This property holds the instance of the initial thread of this process
• property RuleLogging as %String [ InitialExpression = $$$eRuleLogTypeReturn ];
This set of flags controls the logging performed by the rule engine whenever a Rule activity is executed. The following flags are available:
  • 'e' - log errors only. All errors will be logged irrespective of other flags, so setting the value to 'e' or leaving the value empty will only log errors.
  • 'r' - log return values. This is the default value for the setting, and is also automatic whenever the 'd' or 'c' flags are specified.
  • 'd' - log user-defined debug actions in the rule. This will also include 'r'.
  • 'c' - log details of the conditions that are evaluated in the rule. This will also include 'r'.
  • 'a' - log all available information. This is equivalent to 'rcd'.


• classmethod %OnDelete(oid As %ObjectIdentity) as %Status
This callback method is invoked by the %Delete method to provide notification that the object specified by oid is being deleted.

If this method returns an error then the object will not be deleted.

• classmethod GetMessageList() as %String
• classmethod GetRequestClassList() as %String
• classmethod GetResponseClassList(pRequest As %String = "") as %String
• classmethod IsComponent() as %Boolean
• method MakeAlarmCall(pThread As Ens.BP.Thread, pPrefix As %String, Output pName As %String, pDuration As %String, pUntil As %String = "", pIsTimer As %Boolean = 0, pDescription As %String = "") as %Status
• method MakeTimerCall(pPrefix As %String, Output pName As %String, pTimeout As %String, pCompletionKeyList As %String, Output pAlarmHandle As %String, pDescription As %String = "", pIsTimer As %Boolean = 1) as %Status
• classmethod OnCompile()
• method OnErroredResponse(pErroredResponseStatus As %Status, request As %Library.Persistent, ByRef response As %Library.Persistent, pCompletionKey As %String) as %Status
We override this method to determine if there is an active error handler and if so to dispatch to it
• method OnRequest(request As %Library.Persistent, Output response As %Library.Persistent) as %Status
Handle a 'Request'
• method OnResponse(request As %Library.Persistent, ByRef response As %Library.Persistent, callrequest As %Library.Persistent, callresponse As %Library.Persistent, pCompletionKey As %String) as %Status
Handle a 'Response'
• classmethod Purge(Output pDeletedCount As %Integer, pDaysToKeep As %Integer, pKeepIntegrity As %Boolean) as %Status
Deprecated - use Ens.BusinessProcess.Purge()
• method RuleLoggingSet(pRuleLogging As %String = $$$eRuleLogTypeReturn) as %Status
Ensure that the value of RuleLogging is normalized at the time that it is set.
• method UpdateSynchronizedResponses() as %Status
Update the synchronized responses


•trigger OnDelete (BEFORE event DELETE)

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