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

persistent class Ens.Rule.SubRule extends %Persistent, %XML.Adaptor

Defines a SubRule of a Business Rule or another SubRule within a Rule Set. SubRules do not share the storage with Rules and there is no parent-child relationship with RuleSet. SubRules are not independently evaluated neither they generate separate code.


Parameters Properties Methods Queries Indices ForeignKeys Triggers
1 6 2 1


Actions Conditions Disabled ReturnValue RuleNo

%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 %OnDelete
%OnDetermineClass %Open %OpenId %OriginalNamespace
%PackageName %PhysicalAddress %PurgeIndices %Reload
%RemoveFromSaveSet %ResolveConcurrencyConflict %RollBack %Save
%SaveDirect %SaveIndices %SerializeObject %SetModified
%SortBegin %SortEnd %SyncObjectIn %SyncTransport
%UnlockExtent %UnlockId %ValidateIndices %ValidateObject
GenerateCode XMLDTD XMLExport XMLExportToStream
XMLExportToString XMLNew XMLSchema XMLSchemaNamespace


• parameter XMLIGNORENULL = 1;
Ensure that we don't get $C(0) for values that are empty strings


• relationship Actions as SubAction(XMLNAME="action",XMLPROJECTION="ELEMENT") [ Inverse = SubRule,Cardinality = children ];
Collection of optional actions associated with this SubRule.
• relationship Conditions as SubCondition(XMLNAME="condition",XMLPROJECTION="ELEMENT") [ Inverse = SubRule,Cardinality = children ];
Collection of conditions that define this SubRule.
• property Disabled as %Boolean(XMLNAME="disabled",XMLPROJECTION="ATTRIBUTE");
If false, then this SubRule is enabled; otherwise this SubRule is not evaluated.
• property ReturnValue as %String(MAXLEN=128,XMLNAME="return",XMLPROJECTION="ATTRIBUTE");
If defined, value returned if this SubRule is true.
• property RuleNo as %Integer(XMLPROJECTION="NONE") [ InitialExpression = $I(^Ens.Rule.RuleC("RuleNo")) ];
• property SubRules as list of SubRule(XMLNAME="rule",XMLPROJECTION="ELEMENT");
Collection of SubRules of this SubRule.


• 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.

• method GenerateCode(pCompiler As Compiler, pRuleNo As %Integer) as %Status
Generate code for this SubRule.
pRuleNo gives the ordinal position of this SubRule within the Rule Set.


•index (ID on RuleNo) [IdKey];
Make sure SubRules are ordered correctly

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