Back to OIM Explorer

QER.Customizer/QER.Customizer/PWODecisionSubMethod.cs

Decompiler Source FileQER.Customizer.PWODecisionSubMethodDecompiled Source

3 extracted method/event/call references in PWODecisionSubMethod.

Source: F:\Claude\.tmp\oim-decompiled-full\0991_One_Identity_Manager_QER.Customizer.dll\QER.Customizer\PWODecisionSubMethod.cs

Source size: 67.299 characters

Interpretation

  • Decompiled source file. Use method/event registrations and call-site extraction to connect back to DialogMethod, QBMEvent, and API layers.

Relations

  • Function registration: GetValidityMessages at line 830
  • Method registration: ValidityCheck at line 831
  • CallMethodAsync: ValidityCheck at line 712

Typed Edges

  • No typed edges extracted for this source.

References

  • No direct source references extracted.

Referenced By

  • No direct source references extracted.

C# source-derived context

Generated by pattern extraction from the decompiled C# source and decompile index. This is factual source evidence, not inferred behavior.

reads entity values saves entities references DB/Dialog objects

Summary: classes PWODecisionSubMethod, SelectableEntity, _003C_003Ec__DisplayClass3_0, _003C_003Ec__DisplayClass7_0; methods GetTablename, _003CGetValidityMessages_003Eb__0, _003CValidityCheck_003Eb__0, MoveNext, SetStateMachine, OnSavingAsync; references Delegation, PWODecisionMethod, PWODecisionRule, PWODecisionStep, PWODecisionSubMethod; markers reads entity values, saves entities, references DB/Dialog objects

Classes

PWODecisionSubMethod SelectableEntity _003C_003Ec__DisplayClass3_0 _003C_003Ec__DisplayClass7_0

OIM key/entity markers

UID_PWODecisionSubMethod UID_PwODecisionSubMethod UID_SubMethodOrderProduct UID_SubMethodOrderProlongate UID_SubMethodOrderUnsubscribe UID_PWODecisionRule UID_Task UID_PwODecisionRule

API/entity calls

GetValue TryResult SaveAsync From Source GetObjectKey IsDeleted PutValueAsync SqlFormatter GetValue MultiLanguage

Registrations / handlers

None extracted.

Complete Source

C#1.425 lines
1using System;2using System.Collections;3using System.Collections.Generic;4using System.Collections.Specialized;5using System.Diagnostics;6using System.Linq;7using System.Runtime.CompilerServices;8using System.Runtime.InteropServices;9using System.Text;10using System.Threading;11using System.Threading.Tasks;12using VI.Base;13using VI.DB;14using VI.DB.Entities;1516namespace QER.Customizer;1718public class PWODecisionSubMethod : StateBasedEntityLogic19{20	protected class SelectableEntity : ITypedEntityWrapper21	{22		private IEntity? _entity;2324		public IEntity Entity25		{26			get27			{28				//IL_000f: Unknown result type (might be due to invalid IL or missing references)29				return _entity ?? throw new InvalidOperationException("Entity not initialized.");30			}31			set32			{33				//IL_0008: Unknown result type (might be due to invalid IL or missing references)34				if (value == null)35				{36					throw new ArgumentNullException("value");37				}38				_entity = value;39			}40		}4142		[field: CompilerGenerated]43		public bool IsSelected44		{45			[CompilerGenerated]46			get;47			[CompilerGenerated]48			set;49		}5051		public string GetTablename()52		{53			return "PWODecisionStep";54		}55	}5657	protected enum FollowerType58	{59		PositiveSteps,60		NegativeSteps,61		EscalationSteps,62		DirectSteps63	}6465	[CompilerGenerated]66	private sealed class _003C_003Ec__DisplayClass3_067	{68		public IEntity entity;6970		internal ExpressionClause _003CGetValidityMessages_003Eb__0(IExpressionContext c)71		{72			return c.Column("UID_PWODecisionSubMethod") == entity.GetValue<string>("UID_PWODecisionSubMethod");73		}74	}7576	[CompilerGenerated]77	private sealed class _003C_003Ec__DisplayClass7_078	{79		public System.Collections.Generic.IReadOnlyList<string> uidMethods;8081		internal ExpressionClause _003CValidityCheck_003Eb__0(IExpressionContext c)82		{83			return c.Column("UID_PWODecisionSubMethod").In((System.Collections.Generic.IEnumerable<string>)uidMethods);84		}85	}8687	[StructLayout((LayoutKind)3)]88	[CompilerGenerated]89	private struct _003CGetValidityMessages_003Ed__3 : IAsyncStateMachine90	{91		public int _003C_003E1__state;9293		public AsyncTaskMethodBuilder<MessageEventArgs[]> _003C_003Et__builder;9495		public IEntity entity;9697		public ISession session;9899		public CancellationToken ct;100101		public PWODecisionSubMethod _003C_003E4__this;102103		private _003C_003Ec__DisplayClass3_0 _003C_003E8__1;104105		private List<MessageEventArgs> _003CalMessages_003E5__2;106107		private ConfiguredTaskAwaiter<TypedEntityCollection<SelectableEntity>> _003C_003Eu__1;108109		private void MoveNext()110		{111			//IL_00b7: Unknown result type (might be due to invalid IL or missing references)112			//IL_00bc: Unknown result type (might be due to invalid IL or missing references)113			//IL_00c4: Unknown result type (might be due to invalid IL or missing references)114			//IL_006e: Unknown result type (might be due to invalid IL or missing references)115			//IL_0079: Unknown result type (might be due to invalid IL or missing references)116			//IL_007e: Unknown result type (might be due to invalid IL or missing references)117			//IL_0082: Unknown result type (might be due to invalid IL or missing references)118			//IL_0087: Unknown result type (might be due to invalid IL or missing references)119			//IL_009c: Unknown result type (might be due to invalid IL or missing references)120			//IL_009e: Unknown result type (might be due to invalid IL or missing references)121			int num = _003C_003E1__state;122			PWODecisionSubMethod pWODecisionSubMethod = _003C_003E4__this;123			MessageEventArgs[] result2;124			try125			{126				ConfiguredTaskAwaiter<TypedEntityCollection<SelectableEntity>> val;127				if (num != 0)128				{129					_003C_003E8__1 = new _003C_003Ec__DisplayClass3_0();130					_003C_003E8__1.entity = entity;131					_003CalMessages_003E5__2 = new List<MessageEventArgs>();132					Query query = (from c in Query.From("PWODecisionStep")133						where c.Column("UID_PWODecisionSubMethod") == _003C_003E8__1.entity.GetValue<string>("UID_PWODecisionSubMethod")134						select c).SelectAll();135					val = session.Source().GetCollectionAsync<SelectableEntity>(query, ct).ConfigureAwait(false)136						.GetAwaiter();137					if (!val.IsCompleted)138					{139						num = (_003C_003E1__state = 0);140						_003C_003Eu__1 = val;141						_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<TypedEntityCollection<SelectableEntity>>, _003CGetValidityMessages_003Ed__3>(ref val, ref this);142						return;143					}144				}145				else146				{147					val = _003C_003Eu__1;148					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<TypedEntityCollection<SelectableEntity>>);149					num = (_003C_003E1__state = -1);150				}151				TypedEntityCollection<SelectableEntity> result = val.GetResult();152				pWODecisionSubMethod.CheckLevelOrder(result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);153				pWODecisionSubMethod.ChecktTailingSteps(result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);154				pWODecisionSubMethod.ChecktDecisionSteps(session, result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);155				pWODecisionSubMethod.Check_UniqueInMethod(session, result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);156				Check_UniqueOnLevel(session, result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);157				pWODecisionSubMethod.Check_ComplianceExceptions(session, result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);158				pWODecisionSubMethod.Check_SB(session, result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);159				Check_Escalation(result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);160				Check_DelegationFlags(result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);161				Check_UsageArea(session, _003C_003E8__1.entity, result, (System.Collections.Generic.IList<MessageEventArgs>)_003CalMessages_003E5__2);162				result2 = ((_003CalMessages_003E5__2.Count <= 0) ? null : _003CalMessages_003E5__2.ToArray());163			}164			catch (System.Exception exception)165			{166				_003C_003E1__state = -2;167				_003C_003E8__1 = null;168				_003CalMessages_003E5__2 = null;169				_003C_003Et__builder.SetException(exception);170				return;171			}172			_003C_003E1__state = -2;173			_003C_003E8__1 = null;174			_003CalMessages_003E5__2 = null;175			_003C_003Et__builder.SetResult(result2);176		}177178		[DebuggerHidden]179		private void SetStateMachine(IAsyncStateMachine stateMachine)180		{181			_003C_003Et__builder.SetStateMachine(stateMachine);182		}183	}184185	[StructLayout((LayoutKind)3)]186	[CompilerGenerated]187	private struct _003CIncrementRevisionNumber_003Ed__35 : IAsyncStateMachine188	{189		public int _003C_003E1__state;190191		public AsyncTaskMethodBuilder _003C_003Et__builder;192193		public string uidPwoSubMethod;194195		public ISession session;196197		public CancellationToken ct;198199		private string _003CstrKey_003E5__2;200201		private IEntity _003CdbMethod_003E5__3;202203		private ConfiguredTaskAwaiter<TryResult<IEntity>> _003C_003Eu__1;204205		private ConfiguredValueTaskAwaiter<ApplyResult> _003C_003Eu__2;206207		private ConfiguredTaskAwaiter _003C_003Eu__3;208209		private void MoveNext()210		{211			//IL_00b6: Unknown result type (might be due to invalid IL or missing references)212			//IL_00bb: Unknown result type (might be due to invalid IL or missing references)213			//IL_00c2: Unknown result type (might be due to invalid IL or missing references)214			//IL_0162: Unknown result type (might be due to invalid IL or missing references)215			//IL_0167: Unknown result type (might be due to invalid IL or missing references)216			//IL_016f: Unknown result type (might be due to invalid IL or missing references)217			//IL_01dc: Unknown result type (might be due to invalid IL or missing references)218			//IL_01e1: Unknown result type (might be due to invalid IL or missing references)219			//IL_01e9: Unknown result type (might be due to invalid IL or missing references)220			//IL_0193: Unknown result type (might be due to invalid IL or missing references)221			//IL_019e: Unknown result type (might be due to invalid IL or missing references)222			//IL_01a3: Unknown result type (might be due to invalid IL or missing references)223			//IL_01a7: Unknown result type (might be due to invalid IL or missing references)224			//IL_01ac: Unknown result type (might be due to invalid IL or missing references)225			//IL_006f: Unknown result type (might be due to invalid IL or missing references)226			//IL_007a: Unknown result type (might be due to invalid IL or missing references)227			//IL_007f: Unknown result type (might be due to invalid IL or missing references)228			//IL_0083: Unknown result type (might be due to invalid IL or missing references)229			//IL_0088: Unknown result type (might be due to invalid IL or missing references)230			//IL_0115: Unknown result type (might be due to invalid IL or missing references)231			//IL_0124: Unknown result type (might be due to invalid IL or missing references)232			//IL_0129: Unknown result type (might be due to invalid IL or missing references)233			//IL_012d: Unknown result type (might be due to invalid IL or missing references)234			//IL_0132: Unknown result type (might be due to invalid IL or missing references)235			//IL_01c1: Unknown result type (might be due to invalid IL or missing references)236			//IL_01c3: Unknown result type (might be due to invalid IL or missing references)237			//IL_009c: Unknown result type (might be due to invalid IL or missing references)238			//IL_009d: Unknown result type (might be due to invalid IL or missing references)239			//IL_0147: Unknown result type (might be due to invalid IL or missing references)240			//IL_0149: Unknown result type (might be due to invalid IL or missing references)241			int num = _003C_003E1__state;242			try243			{244				ConfiguredTaskAwaiter<TryResult<IEntity>> val3;245				ConfiguredValueTaskAwaiter<ApplyResult> val2;246				ConfiguredTaskAwaiter val;247				TryResult<IEntity> result;248				ConfiguredTaskAwaitable val4;249				switch (num)250				{251				default:252					_003CstrKey_003E5__2 = "PWODecisionSubMethod.IncrementRevisionNumber." + uidPwoSubMethod;253					if (DbVal.ConvertTo<bool>(session.Variables.Get(_003CstrKey_003E5__2)))254					{255						DbObjectKey objectKey = DbObjectKey.GetObjectKey("PWODecisionSubMethod", uidPwoSubMethod);256						val3 = session.Source().TryGetAsync(objectKey, ct).ConfigureAwait(false)257							.GetAwaiter();258						if (!val3.IsCompleted)259						{260							num = (_003C_003E1__state = 0);261							_003C_003Eu__1 = val3;262							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<TryResult<IEntity>>, _003CIncrementRevisionNumber_003Ed__35>(ref val3, ref this);263							return;264						}265						goto IL_00d1;266					}267					goto end_IL_0007;268				case 0:269					val3 = _003C_003Eu__1;270					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<TryResult<IEntity>>);271					num = (_003C_003E1__state = -1);272					goto IL_00d1;273				case 1:274					val2 = _003C_003Eu__2;275					_003C_003Eu__2 = default(ConfiguredValueTaskAwaiter<ApplyResult>);276					num = (_003C_003E1__state = -1);277					goto IL_017e;278				case 2:279					{280						val = _003C_003Eu__3;281						_003C_003Eu__3 = default(ConfiguredTaskAwaiter);282						num = (_003C_003E1__state = -1);283						break;284					}285					IL_00d1:286					result = val3.GetResult();287					if (result.Success)288					{289						_003CdbMethod_003E5__3 = result.Result;290						val2 = _003CdbMethod_003E5__3.PutValueAsync("RevisionNumber", _003CdbMethod_003E5__3.GetValue<int>("RevisionNumber") + 1, ct).ConfigureAwait(false).GetAwaiter();291						if (!val2.IsCompleted)292						{293							num = (_003C_003E1__state = 1);294							_003C_003Eu__2 = val2;295							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003CIncrementRevisionNumber_003Ed__35>(ref val2, ref this);296							return;297						}298						goto IL_017e;299					}300					goto end_IL_0007;301					IL_017e:302					val2.GetResult();303					val4 = _003CdbMethod_003E5__3.SaveAsync(session, ct).ConfigureAwait(false);304					val = ((ConfiguredTaskAwaitable)(ref val4)).GetAwaiter();305					if (!((ConfiguredTaskAwaiter)(ref val)).IsCompleted)306					{307						num = (_003C_003E1__state = 2);308						_003C_003Eu__3 = val;309						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003CIncrementRevisionNumber_003Ed__35>(ref val, ref this);310						return;311					}312					break;313				}314				((ConfiguredTaskAwaiter)(ref val)).GetResult();315				session.Variables.Remove(_003CstrKey_003E5__2);316				end_IL_0007:;317			}318			catch (System.Exception exception)319			{320				_003C_003E1__state = -2;321				_003CstrKey_003E5__2 = null;322				_003CdbMethod_003E5__3 = null;323				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);324				return;325			}326			_003C_003E1__state = -2;327			_003CstrKey_003E5__2 = null;328			_003CdbMethod_003E5__3 = null;329			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();330		}331332		[DebuggerHidden]333		private void SetStateMachine(IAsyncStateMachine stateMachine)334		{335			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);336		}337	}338339	[StructLayout((LayoutKind)3)]340	[CompilerGenerated]341	private struct _003COnSavingAsync_003Ed__2 : IAsyncStateMachine342	{343		public int _003C_003E1__state;344345		public AsyncTaskMethodBuilder<Diff> _003C_003Et__builder;346347		public IEntity entity;348349		public LogicReadWriteParameters parameters;350351		public CancellationToken ct;352353		public PWODecisionSubMethod _003C_003E4__this;354355		private ConfiguredTaskAwaiter _003C_003Eu__1;356357		private ConfiguredValueTaskAwaiter<ApplyResult> _003C_003Eu__2;358359		private ConfiguredTaskAwaiter<Diff> _003C_003Eu__3;360361		private void MoveNext()362		{363			//IL_0086: Unknown result type (might be due to invalid IL or missing references)364			//IL_008b: Unknown result type (might be due to invalid IL or missing references)365			//IL_0092: Unknown result type (might be due to invalid IL or missing references)366			//IL_0147: Unknown result type (might be due to invalid IL or missing references)367			//IL_014c: Unknown result type (might be due to invalid IL or missing references)368			//IL_0154: Unknown result type (might be due to invalid IL or missing references)369			//IL_01bf: Unknown result type (might be due to invalid IL or missing references)370			//IL_01c4: Unknown result type (might be due to invalid IL or missing references)371			//IL_01cc: Unknown result type (might be due to invalid IL or missing references)372			//IL_003f: Unknown result type (might be due to invalid IL or missing references)373			//IL_004a: Unknown result type (might be due to invalid IL or missing references)374			//IL_004f: Unknown result type (might be due to invalid IL or missing references)375			//IL_0053: Unknown result type (might be due to invalid IL or missing references)376			//IL_0058: Unknown result type (might be due to invalid IL or missing references)377			//IL_0179: Unknown result type (might be due to invalid IL or missing references)378			//IL_0184: Unknown result type (might be due to invalid IL or missing references)379			//IL_0189: Unknown result type (might be due to invalid IL or missing references)380			//IL_018d: Unknown result type (might be due to invalid IL or missing references)381			//IL_0192: Unknown result type (might be due to invalid IL or missing references)382			//IL_006c: Unknown result type (might be due to invalid IL or missing references)383			//IL_006d: Unknown result type (might be due to invalid IL or missing references)384			//IL_01a7: Unknown result type (might be due to invalid IL or missing references)385			//IL_01a9: Unknown result type (might be due to invalid IL or missing references)386			//IL_00fa: Unknown result type (might be due to invalid IL or missing references)387			//IL_0109: Unknown result type (might be due to invalid IL or missing references)388			//IL_010e: Unknown result type (might be due to invalid IL or missing references)389			//IL_0112: Unknown result type (might be due to invalid IL or missing references)390			//IL_0117: Unknown result type (might be due to invalid IL or missing references)391			//IL_012c: Unknown result type (might be due to invalid IL or missing references)392			//IL_012e: Unknown result type (might be due to invalid IL or missing references)393			int num = _003C_003E1__state;394			PWODecisionSubMethod pWODecisionSubMethod = _003C_003E4__this;395			Diff result;396			try397			{398				ConfiguredTaskAwaiter val3;399				ConfiguredValueTaskAwaiter<ApplyResult> val2;400				ConfiguredTaskAwaiter<Diff> val;401				switch (num)402				{403				default:404					if (entity.IsDeleted())405					{406						ConfiguredTaskAwaitable val4 = _CheckMethodUsage(parameters.Session, entity, ct).ConfigureAwait(false);407						val3 = ((ConfiguredTaskAwaitable)(ref val4)).GetAwaiter();408						if (!((ConfiguredTaskAwaiter)(ref val3)).IsCompleted)409						{410							num = (_003C_003E1__state = 0);411							_003C_003Eu__1 = val3;412							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter, _003COnSavingAsync_003Ed__2>(ref val3, ref this);413							return;414						}415						goto IL_00a1;416					}417					goto IL_00a8;418				case 0:419					val3 = _003C_003Eu__1;420					_003C_003Eu__1 = default(ConfiguredTaskAwaiter);421					num = (_003C_003E1__state = -1);422					goto IL_00a1;423				case 1:424					val2 = _003C_003Eu__2;425					_003C_003Eu__2 = default(ConfiguredValueTaskAwaiter<ApplyResult>);426					num = (_003C_003E1__state = -1);427					goto IL_0163;428				case 2:429					{430						val = _003C_003Eu__3;431						_003C_003Eu__3 = default(ConfiguredTaskAwaiter<Diff>);432						num = (_003C_003E1__state = -1);433						break;434					}435					IL_016b:436					val = ((StateBasedEntityLogic)pWODecisionSubMethod).OnSavingAsync(entity, parameters, ct).ConfigureAwait(false).GetAwaiter();437					if (!val.IsCompleted)438					{439						num = (_003C_003E1__state = 2);440						_003C_003Eu__3 = val;441						_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<Diff>, _003COnSavingAsync_003Ed__2>(ref val, ref this);442						return;443					}444					break;445					IL_0163:446					val2.GetResult();447					goto IL_016b;448					IL_00a1:449					((ConfiguredTaskAwaiter)(ref val3)).GetResult();450					goto IL_00a8;451					IL_00a8:452					if (entity.IsChanged && !entity.Columns["RevisionNumber"].IsDifferent)453					{454						val2 = entity.PutValueAsync("RevisionNumber", entity.GetValue<int>("RevisionNumber") + 1, ct).ConfigureAwait(false).GetAwaiter();455						if (!val2.IsCompleted)456						{457							num = (_003C_003E1__state = 1);458							_003C_003Eu__2 = val2;459							_003C_003Et__builder.AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter<ApplyResult>, _003COnSavingAsync_003Ed__2>(ref val2, ref this);460							return;461						}462						goto IL_0163;463					}464					goto IL_016b;465				}466				result = val.GetResult();467			}468			catch (System.Exception exception)469			{470				_003C_003E1__state = -2;471				_003C_003Et__builder.SetException(exception);472				return;473			}474			_003C_003E1__state = -2;475			_003C_003Et__builder.SetResult(result);476		}477478		[DebuggerHidden]479		private void SetStateMachine(IAsyncStateMachine stateMachine)480		{481			_003C_003Et__builder.SetStateMachine(stateMachine);482		}483	}484485	[StructLayout((LayoutKind)3)]486	[CompilerGenerated]487	private struct _003CValidityCheck_003Ed__4 : IAsyncStateMachine488	{489		public int _003C_003E1__state;490491		public AsyncTaskMethodBuilder _003C_003Et__builder;492493		public PWODecisionSubMethod _003C_003E4__this;494495		public ISession session;496497		public IEntity entity;498499		public CancellationToken ct;500501		private ConfiguredTaskAwaiter<MessageEventArgs[]?> _003C_003Eu__1;502503		private void MoveNext()504		{505			//IL_0068: Unknown result type (might be due to invalid IL or missing references)506			//IL_006d: Unknown result type (might be due to invalid IL or missing references)507			//IL_0075: Unknown result type (might be due to invalid IL or missing references)508			//IL_001f: Unknown result type (might be due to invalid IL or missing references)509			//IL_002a: Unknown result type (might be due to invalid IL or missing references)510			//IL_002f: Unknown result type (might be due to invalid IL or missing references)511			//IL_0033: Unknown result type (might be due to invalid IL or missing references)512			//IL_0038: Unknown result type (might be due to invalid IL or missing references)513			//IL_008c: Unknown result type (might be due to invalid IL or missing references)514			//IL_0092: Expected O, but got Unknown515			//IL_004d: Unknown result type (might be due to invalid IL or missing references)516			//IL_004f: Unknown result type (might be due to invalid IL or missing references)517			int num = _003C_003E1__state;518			PWODecisionSubMethod pWODecisionSubMethod = _003C_003E4__this;519			try520			{521				ConfiguredTaskAwaiter<MessageEventArgs[]> val;522				if (num != 0)523				{524					val = pWODecisionSubMethod.GetValidityMessages(session, entity, ct).ConfigureAwait(false).GetAwaiter();525					if (!val.IsCompleted)526					{527						num = (_003C_003E1__state = 0);528						_003C_003Eu__1 = val;529						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<MessageEventArgs[]>, _003CValidityCheck_003Ed__4>(ref val, ref this);530						return;531					}532				}533				else534				{535					val = _003C_003Eu__1;536					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<MessageEventArgs[]>);537					num = (_003C_003E1__state = -1);538				}539				MessageEventArgs[] result = val.GetResult();540				StringBuilder val2 = new StringBuilder();541				if (result != null)542				{543					MessageEventArgs[] array = result;544					foreach (MessageEventArgs e in array)545					{546						switch (e.Severity)547						{548						case MsgSeverity.Info:549							val2.Append("Info - ").Append(e.Text);550							break;551						case MsgSeverity.Warning:552							val2.Append("Warning - ").Append(e.Text);553							break;554						case MsgSeverity.Serious:555							val2.Append("Error - ").Append(e.Text);556							break;557						}558						val2.AppendLine();559					}560					throw new ViException(2133229, ExceptionRelevance.EndUser, ((object)val2).ToString());561				}562			}563			catch (System.Exception exception)564			{565				_003C_003E1__state = -2;566				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);567				return;568			}569			_003C_003E1__state = -2;570			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();571		}572573		[DebuggerHidden]574		private void SetStateMachine(IAsyncStateMachine stateMachine)575		{576			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);577		}578	}579580	[StructLayout((LayoutKind)3)]581	[CompilerGenerated]582	private struct _003CValidityCheck_003Ed__7 : IAsyncStateMachine583	{584		public int _003C_003E1__state;585586		public AsyncTaskMethodBuilder _003C_003Et__builder;587588		public System.Collections.Generic.IReadOnlyList<string> uidMethods;589590		public ISession session;591592		public CancellationToken ct;593594		private ConfiguredTaskAwaiter<IEntityCollection> _003C_003Eu__1;595596		private System.Collections.Generic.IEnumerator<IEntity> _003C_003E7__wrap1;597598		private ConfiguredTaskAwaiter<IEntity> _003C_003Eu__2;599600		private ConfiguredValueTaskAwaiter _003C_003Eu__3;601602		private void MoveNext()603		{604			//IL_00b3: Unknown result type (might be due to invalid IL or missing references)605			//IL_00b8: Unknown result type (might be due to invalid IL or missing references)606			//IL_00c0: Unknown result type (might be due to invalid IL or missing references)607			//IL_006a: Unknown result type (might be due to invalid IL or missing references)608			//IL_0075: Unknown result type (might be due to invalid IL or missing references)609			//IL_007a: Unknown result type (might be due to invalid IL or missing references)610			//IL_007e: Unknown result type (might be due to invalid IL or missing references)611			//IL_0083: Unknown result type (might be due to invalid IL or missing references)612			//IL_0035: Unknown result type (might be due to invalid IL or missing references)613			//IL_014f: Unknown result type (might be due to invalid IL or missing references)614			//IL_0154: Unknown result type (might be due to invalid IL or missing references)615			//IL_015c: Unknown result type (might be due to invalid IL or missing references)616			//IL_0098: Unknown result type (might be due to invalid IL or missing references)617			//IL_009a: Unknown result type (might be due to invalid IL or missing references)618			//IL_0178: Unknown result type (might be due to invalid IL or missing references)619			//IL_0187: Unknown result type (might be due to invalid IL or missing references)620			//IL_018c: Unknown result type (might be due to invalid IL or missing references)621			//IL_0190: Unknown result type (might be due to invalid IL or missing references)622			//IL_0195: Unknown result type (might be due to invalid IL or missing references)623			//IL_01c5: Unknown result type (might be due to invalid IL or missing references)624			//IL_01ca: Unknown result type (might be due to invalid IL or missing references)625			//IL_01d2: Unknown result type (might be due to invalid IL or missing references)626			//IL_01aa: Unknown result type (might be due to invalid IL or missing references)627			//IL_01ac: Unknown result type (might be due to invalid IL or missing references)628			//IL_0106: Unknown result type (might be due to invalid IL or missing references)629			//IL_0111: Unknown result type (might be due to invalid IL or missing references)630			//IL_0116: Unknown result type (might be due to invalid IL or missing references)631			//IL_011a: Unknown result type (might be due to invalid IL or missing references)632			//IL_011f: Unknown result type (might be due to invalid IL or missing references)633			//IL_0134: Unknown result type (might be due to invalid IL or missing references)634			//IL_0136: Unknown result type (might be due to invalid IL or missing references)635			int num = _003C_003E1__state;636			try637			{638				ConfiguredTaskAwaiter<IEntityCollection> val;639				if (num != 0)640				{641					if ((uint)(num - 1) <= 1u)642					{643						goto IL_00e4;644					}645					_003C_003Ec__DisplayClass7_0 CS_0024_003C_003E8__locals1 = new _003C_003Ec__DisplayClass7_0646					{647						uidMethods = uidMethods648					};649					if (session == null)650					{651						throw new ArgumentNullException("session");652					}653					Query query = (from c in Query.From("PWODecisionSubMethod")654						where c.Column("UID_PWODecisionSubMethod").In((System.Collections.Generic.IEnumerable<string>)CS_0024_003C_003E8__locals1.uidMethods)655						select c).SelectAll();656					val = session.Source().GetCollectionAsync(query, EntityCollectionLoadType.BulkReadOnly, ct).ConfigureAwait(false)657						.GetAwaiter();658					if (!val.IsCompleted)659					{660						num = (_003C_003E1__state = 0);661						_003C_003Eu__1 = val;662						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntityCollection>, _003CValidityCheck_003Ed__7>(ref val, ref this);663						return;664					}665				}666				else667				{668					val = _003C_003Eu__1;669					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<IEntityCollection>);670					num = (_003C_003E1__state = -1);671				}672				IEntityCollection result = val.GetResult();673				_003C_003E7__wrap1 = ((System.Collections.Generic.IEnumerable<IEntity>)result).GetEnumerator();674				goto IL_00e4;675				IL_00e4:676				try677				{678					ConfiguredValueTaskAwaiter val2;679					if (num != 1)680					{681						if (num != 2)682						{683							goto IL_01e8;684						}685						val2 = _003C_003Eu__3;686						_003C_003Eu__3 = default(ConfiguredValueTaskAwaiter);687						num = (_003C_003E1__state = -1);688						goto IL_01e1;689					}690					ConfiguredTaskAwaiter<IEntity> val3 = _003C_003Eu__2;691					_003C_003Eu__2 = default(ConfiguredTaskAwaiter<IEntity>);692					num = (_003C_003E1__state = -1);693					goto IL_016b;694					IL_01e1:695					((ConfiguredValueTaskAwaiter)(ref val2)).GetResult();696					goto IL_01e8;697					IL_01e8:698					if (((System.Collections.IEnumerator)_003C_003E7__wrap1).MoveNext())699					{700						val3 = _003C_003E7__wrap1.Current.CreateInteractiveAsync(session, ct).ConfigureAwait(false).GetAwaiter();701						if (!val3.IsCompleted)702						{703							num = (_003C_003E1__state = 1);704							_003C_003Eu__2 = val3;705							((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntity>, _003CValidityCheck_003Ed__7>(ref val3, ref this);706							return;707						}708						goto IL_016b;709					}710					goto end_IL_00e4;711					IL_016b:712					ConfiguredValueTaskAwaitable val4 = val3.GetResult().CallMethodAsync("ValidityCheck", ct).ConfigureAwait(false);713					val2 = ((ConfiguredValueTaskAwaitable)(ref val4)).GetAwaiter();714					if (!((ConfiguredValueTaskAwaiter)(ref val2)).IsCompleted)715					{716						num = (_003C_003E1__state = 2);717						_003C_003Eu__3 = val2;718						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredValueTaskAwaiter, _003CValidityCheck_003Ed__7>(ref val2, ref this);719						return;720					}721					goto IL_01e1;722					end_IL_00e4:;723				}724				finally725				{726					if (num < 0 && _003C_003E7__wrap1 != null)727					{728						((System.IDisposable)_003C_003E7__wrap1).Dispose();729					}730				}731				_003C_003E7__wrap1 = null;732			}733			catch (System.Exception exception)734			{735				_003C_003E1__state = -2;736				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);737				return;738			}739			_003C_003E1__state = -2;740			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();741		}742743		[DebuggerHidden]744		private void SetStateMachine(IAsyncStateMachine stateMachine)745		{746			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);747		}748	}749750	[StructLayout((LayoutKind)3)]751	[CompilerGenerated]752	private struct _003C_CheckMethodUsage_003Ed__5 : IAsyncStateMachine753	{754		public int _003C_003E1__state;755756		public AsyncTaskMethodBuilder _003C_003Et__builder;757758		public ISession session;759760		public IEntity entity;761762		public CancellationToken ct;763764		private ConfiguredTaskAwaiter<IEntityCollection> _003C_003Eu__1;765766		private void MoveNext()767		{768			//IL_00d1: Unknown result type (might be due to invalid IL or missing references)769			//IL_00d6: Unknown result type (might be due to invalid IL or missing references)770			//IL_00de: Unknown result type (might be due to invalid IL or missing references)771			//IL_0088: Unknown result type (might be due to invalid IL or missing references)772			//IL_0093: Unknown result type (might be due to invalid IL or missing references)773			//IL_0098: Unknown result type (might be due to invalid IL or missing references)774			//IL_009c: Unknown result type (might be due to invalid IL or missing references)775			//IL_00a1: Unknown result type (might be due to invalid IL or missing references)776			//IL_00b6: Unknown result type (might be due to invalid IL or missing references)777			//IL_00b8: Unknown result type (might be due to invalid IL or missing references)778			int num = _003C_003E1__state;779			try780			{781				ConfiguredTaskAwaiter<IEntityCollection> val;782				if (num != 0)783				{784					ISqlFormatter sqlFormatter = session.SqlFormatter();785					string value = entity.GetValue<string>("UID_PwODecisionSubMethod");786					Query query = Query.From("PwODecisionMethod").Where(sqlFormatter.OrRelation(sqlFormatter.UidComparison("UID_SubMethodOrderProduct", value), sqlFormatter.UidComparison("UID_SubMethodOrderProlongate", value), sqlFormatter.UidComparison("UID_SubMethodOrderUnsubscribe", value))).SelectDisplays();787					val = session.Source().GetCollectionAsync(query, ct).ConfigureAwait(false)788						.GetAwaiter();789					if (!val.IsCompleted)790					{791						num = (_003C_003E1__state = 0);792						_003C_003Eu__1 = val;793						((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).AwaitUnsafeOnCompleted<ConfiguredTaskAwaiter<IEntityCollection>, _003C_CheckMethodUsage_003Ed__5>(ref val, ref this);794						return;795					}796				}797				else798				{799					val = _003C_003Eu__1;800					_003C_003Eu__1 = default(ConfiguredTaskAwaiter<IEntityCollection>);801					num = (_003C_003E1__state = -1);802				}803				IEntityCollection result = val.GetResult();804				if (((System.Collections.Generic.IReadOnlyCollection<IEntity>)result).Count > 0)805				{806					throw new ViException(2133328, ExceptionRelevance.EndUser, ((System.Collections.Generic.IReadOnlyList<IEntity>)result)[0].Display);807				}808			}809			catch (System.Exception exception)810			{811				_003C_003E1__state = -2;812				((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetException(exception);813				return;814			}815			_003C_003E1__state = -2;816			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetResult();817		}818819		[DebuggerHidden]820		private void SetStateMachine(IAsyncStateMachine stateMachine)821		{822			((AsyncTaskMethodBuilder)(ref _003C_003Et__builder)).SetStateMachine(stateMachine);823		}824	}825826	public const string SessionParameter = "PWODecisionSubMethod.IncrementRevisionNumber";827828	public PWODecisionSubMethod()829	{830		RegisterFunction("GetValidityMessages").As<MessageEventArgs[]>(GetValidityMessages).Description("Method_PWODecisionSubMethod_GetValidityMessages").Behavior(MethodBehavior.ValidForReadOnlyUser);831		RegisterMethod("ValidityCheck").As(ValidityCheck).Description("Method_PWODecisionSubMethod_ValidityCheck").Behavior(MethodBehavior.ValidForReadOnlyUser);832	}833834	[AsyncStateMachine(typeof(_003COnSavingAsync_003Ed__2))]835	public override async System.Threading.Tasks.Task<Diff> OnSavingAsync(IEntity entity, LogicReadWriteParameters parameters, CancellationToken ct)836	{837		//IL_0002: Unknown result type (might be due to invalid IL or missing references)838		//IL_0007: Unknown result type (might be due to invalid IL or missing references)839		//IL_0026: Unknown result type (might be due to invalid IL or missing references)840		//IL_0027: Unknown result type (might be due to invalid IL or missing references)841		if (entity.IsDeleted())842		{843			await _CheckMethodUsage(parameters.Session, entity, ct).ConfigureAwait(false);844		}845		if (entity.IsChanged && !entity.Columns["RevisionNumber"].IsDifferent)846		{847			await entity.PutValueAsync("RevisionNumber", entity.GetValue<int>("RevisionNumber") + 1, ct).ConfigureAwait(false);848		}849		return await base.OnSavingAsync(entity, parameters, ct).ConfigureAwait(false);850	}851852	[AsyncStateMachine(typeof(_003CGetValidityMessages_003Ed__3))]853	private async System.Threading.Tasks.Task<MessageEventArgs[]?> GetValidityMessages(ISession session, IEntity entity, CancellationToken ct)854	{855		//IL_0002: Unknown result type (might be due to invalid IL or missing references)856		//IL_0007: Unknown result type (might be due to invalid IL or missing references)857		//IL_0026: Unknown result type (might be due to invalid IL or missing references)858		//IL_0027: Unknown result type (might be due to invalid IL or missing references)859		List<MessageEventArgs> alMessages = new List<MessageEventArgs>();860		Query query = (from c in Query.From("PWODecisionStep")861			where c.Column("UID_PWODecisionSubMethod") == entity.GetValue<string>("UID_PWODecisionSubMethod")862			select c).SelectAll();863		TypedEntityCollection<SelectableEntity> colSteps = await session.Source().GetCollectionAsync<SelectableEntity>(query, ct).ConfigureAwait(false);864		CheckLevelOrder(colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);865		ChecktTailingSteps(colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);866		ChecktDecisionSteps(session, colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);867		Check_UniqueInMethod(session, colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);868		Check_UniqueOnLevel(session, colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);869		Check_ComplianceExceptions(session, colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);870		Check_SB(session, colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);871		Check_Escalation(colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);872		Check_DelegationFlags(colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);873		Check_UsageArea(session, entity, colSteps, (System.Collections.Generic.IList<MessageEventArgs>)alMessages);874		if (alMessages.Count > 0)875		{876			return alMessages.ToArray();877		}878		return null;879	}880881	[AsyncStateMachine(typeof(_003CValidityCheck_003Ed__4))]882	private System.Threading.Tasks.Task ValidityCheck(ISession session, IEntity entity, CancellationToken ct)883	{884		//IL_0002: Unknown result type (might be due to invalid IL or missing references)885		//IL_0007: Unknown result type (might be due to invalid IL or missing references)886		//IL_0026: Unknown result type (might be due to invalid IL or missing references)887		//IL_0027: Unknown result type (might be due to invalid IL or missing references)888		_003CValidityCheck_003Ed__4 _003CValidityCheck_003Ed__ = default(_003CValidityCheck_003Ed__4);889		_003CValidityCheck_003Ed__._003C_003Et__builder = AsyncTaskMethodBuilder.Create();890		_003CValidityCheck_003Ed__._003C_003E4__this = this;891		_003CValidityCheck_003Ed__.session = session;892		_003CValidityCheck_003Ed__.entity = entity;893		_003CValidityCheck_003Ed__.ct = ct;894		_003CValidityCheck_003Ed__._003C_003E1__state = -1;895		((AsyncTaskMethodBuilder)(ref _003CValidityCheck_003Ed__._003C_003Et__builder)).Start<_003CValidityCheck_003Ed__4>(ref _003CValidityCheck_003Ed__);896		return ((AsyncTaskMethodBuilder)(ref _003CValidityCheck_003Ed__._003C_003Et__builder)).Task;897	}898899	[AsyncStateMachine(typeof(_003C_CheckMethodUsage_003Ed__5))]900	private static System.Threading.Tasks.Task _CheckMethodUsage(ISession session, IEntity entity, CancellationToken ct)901	{902		//IL_0002: Unknown result type (might be due to invalid IL or missing references)903		//IL_0007: Unknown result type (might be due to invalid IL or missing references)904		//IL_001e: Unknown result type (might be due to invalid IL or missing references)905		//IL_001f: Unknown result type (might be due to invalid IL or missing references)906		_003C_CheckMethodUsage_003Ed__5 _003C_CheckMethodUsage_003Ed__ = default(_003C_CheckMethodUsage_003Ed__5);907		_003C_CheckMethodUsage_003Ed__._003C_003Et__builder = AsyncTaskMethodBuilder.Create();908		_003C_CheckMethodUsage_003Ed__.session = session;909		_003C_CheckMethodUsage_003Ed__.entity = entity;910		_003C_CheckMethodUsage_003Ed__.ct = ct;911		_003C_CheckMethodUsage_003Ed__._003C_003E1__state = -1;912		((AsyncTaskMethodBuilder)(ref _003C_CheckMethodUsage_003Ed__._003C_003Et__builder)).Start<_003C_CheckMethodUsage_003Ed__5>(ref _003C_CheckMethodUsage_003Ed__);913		return ((AsyncTaskMethodBuilder)(ref _003C_CheckMethodUsage_003Ed__._003C_003Et__builder)).Task;914	}915916	[AsyncStateMachine(typeof(_003CValidityCheck_003Ed__7))]917	internal static System.Threading.Tasks.Task ValidityCheck(ISession session, System.Collections.Generic.IReadOnlyList<string> uidMethods, CancellationToken ct)918	{919		//IL_0002: Unknown result type (might be due to invalid IL or missing references)920		//IL_0007: Unknown result type (might be due to invalid IL or missing references)921		//IL_001e: Unknown result type (might be due to invalid IL or missing references)922		//IL_001f: Unknown result type (might be due to invalid IL or missing references)923		_003CValidityCheck_003Ed__7 _003CValidityCheck_003Ed__ = default(_003CValidityCheck_003Ed__7);924		_003CValidityCheck_003Ed__._003C_003Et__builder = AsyncTaskMethodBuilder.Create();925		_003CValidityCheck_003Ed__.session = session;926		_003CValidityCheck_003Ed__.uidMethods = uidMethods;927		_003CValidityCheck_003Ed__.ct = ct;928		_003CValidityCheck_003Ed__._003C_003E1__state = -1;929		((AsyncTaskMethodBuilder)(ref _003CValidityCheck_003Ed__._003C_003Et__builder)).Start<_003CValidityCheck_003Ed__7>(ref _003CValidityCheck_003Ed__);930		return ((AsyncTaskMethodBuilder)(ref _003CValidityCheck_003Ed__._003C_003Et__builder)).Task;931	}932933	protected virtual void CheckLevelOrder(TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)934	{935		int num = 0;936		for (SelectableEntity step = GetStep(colSteps, num, 0); step != null; step = GetStep(colSteps, num, 0))937		{938			step.IsSelected = true;939			CheckSubLevelOrder(step, colSteps, alMessages);940			CheckSubLevelNoDirect(step, colSteps, alMessages);941			CheckSubLevelSteps(step, colSteps, alMessages);942			num++;943		}944	}945946	protected virtual void CheckSubLevelOrder(SelectableEntity eStep, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)947	{948		int iLevel = eStep.Entity.GetValue("LevelNumber").Int;949		int num = 1;950		for (SelectableEntity step = GetStep(colSteps, iLevel, num); step != null; step = GetStep(colSteps, iLevel, num))951		{952			step.IsSelected = true;953			num++;954		}955	}956957	protected virtual void CheckSubLevelRules(SelectableEntity eStep, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)958	{959		List<string> val = new List<string>();960		int num = eStep.Entity.GetValue("LevelNumber").Int;961		int num2 = 1;962		val.Add(eStep.Entity.GetValue("UID_PWODecisionRule").String);963		for (SelectableEntity step = GetStep(colSteps, num, num2); step != null; step = GetStep(colSteps, num, num2))964		{965			step.IsSelected = true;966			num2++;967			string text = step.Entity.GetValue("UID_PWODecisionRule").String;968			if (val.Contains(text))969			{970				LanguageManager instance = LanguageManager.Instance;971				global::_003C_003Ey__InlineArray3<object> buffer = default(global::_003C_003Ey__InlineArray3<object>);972				global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray3<object>, object>(ref buffer, 0) = eStep.Entity.Display;973				global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray3<object>, object>(ref buffer, 1) = num;974				global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray3<object>, object>(ref buffer, 2) = text;975				((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Warning, instance.FormatString("DecisionStepValidity_MultibleRules", global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan<global::_003C_003Ey__InlineArray3<object>, object>(in buffer, 3))));976			}977			else978			{979				val.Add(text);980			}981		}982	}983984	protected virtual void CheckSubLevelSteps(SelectableEntity eStep, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)985	{986		int iLevel = eStep.Entity.GetValue("LevelNumber").Int;987		int num = 1;988		for (SelectableEntity step = GetStep(colSteps, iLevel, num); step != null; step = GetStep(colSteps, iLevel, num))989		{990			if (step.Entity.GetValue("PositiveSteps").Int != eStep.Entity.GetValue("PositiveSteps").Int)991			{992				LanguageManager instance = LanguageManager.Instance;993				global::_003C_003Ey__InlineArray2<object> buffer = default(global::_003C_003Ey__InlineArray2<object>);994				global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer, 0) = "PositiveSteps";995				global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer, 1) = step.Entity.Display;996				((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance.FormatString("DecisionStepValidity_InvalidSubStep", global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan<global::_003C_003Ey__InlineArray2<object>, object>(in buffer, 2))));997			}998			if (step.Entity.GetValue("NegativeSteps").Int != eStep.Entity.GetValue("NegativeSteps").Int)999			{1000				LanguageManager instance2 = LanguageManager.Instance;1001				global::_003C_003Ey__InlineArray2<object> buffer2 = default(global::_003C_003Ey__InlineArray2<object>);1002				global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer2, 0) = "NegativeSteps";1003				global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer2, 1) = step.Entity.Display;1004				((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance2.FormatString("DecisionStepValidity_InvalidSubStep", global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan<global::_003C_003Ey__InlineArray2<object>, object>(in buffer2, 2))));1005			}1006			num++;1007		}1008	}10091010	protected virtual void CheckSubLevelNoDirect(SelectableEntity eStep, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1011	{1012		if (CountSteps(colSteps, eStep.Entity.GetValue("LevelNumber").Int) > 1 && !string.IsNullOrEmpty(eStep.Entity.GetValue("DirectSteps").String))1013		{1014			LanguageManager instance = LanguageManager.Instance;1015			object display = eStep.Entity.Display;1016			((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance.FormatString("DecisionStepValidity_DirectStepsWithSubLevel", new System.ReadOnlySpan<object>(ref display))));1017		}1018	}10191020	protected virtual void ChecktTailingSteps(TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1021	{1022		System.Collections.Generic.IEnumerator<SelectableEntity> enumerator = colSteps.GetEnumerator();1023		try1024		{1025			while (((System.Collections.IEnumerator)enumerator).MoveNext())1026			{1027				SelectableEntity current = enumerator.Current;1028				if (!current.IsSelected)1029				{1030					LanguageManager instance = LanguageManager.Instance;1031					object display = current.Entity.Display;1032					((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Warning, instance.FormatString("DecisionStepValidity_TrailingStep", new System.ReadOnlySpan<object>(ref display))));1033				}1034			}1035		}1036		finally1037		{1038			((System.IDisposable)enumerator)?.Dispose();1039		}1040		enumerator = colSteps.GetEnumerator();1041		try1042		{1043			while (((System.Collections.IEnumerator)enumerator).MoveNext())1044			{1045				enumerator.Current.IsSelected = false;1046			}1047		}1048		finally1049		{1050			((System.IDisposable)enumerator)?.Dispose();1051		}1052	}10531054	protected virtual void ChecktDecisionSteps(ISession session, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1055	{1056		System.Collections.Generic.IEnumerator<SelectableEntity> enumerator = colSteps.GetEnumerator();1057		try1058		{1059			while (((System.Collections.IEnumerator)enumerator).MoveNext())1060			{1061				SelectableEntity current = enumerator.Current;1062				ChecktDecisionSteps_Sub(colSteps, current, "PositiveSteps", alMessages);1063				ChecktDecisionSteps_Sub(colSteps, current, "NegativeSteps", alMessages);1064				ChecktDecisionSteps_SubMVP(session, colSteps, current, "DirectSteps", alMessages);1065				ChecktDecisionSteps_Sub(colSteps, current, "EscalationSteps", alMessages);1066			}1067		}1068		finally1069		{1070			((System.IDisposable)enumerator)?.Dispose();1071		}1072	}10731074	protected virtual void ChecktDecisionSteps_Sub(TypedEntityCollection<SelectableEntity> colSteps, SelectableEntity eStep, string strColumn, System.Collections.Generic.IList<MessageEventArgs> alMessages)1075	{1076		int num = eStep.Entity.GetValue("LevelNumber").Int;1077		int num2 = eStep.Entity.GetValue(strColumn).Int;1078		if (num2 != 0 && GetStep(colSteps, num + num2, 0) == null)1079		{1080			LanguageManager instance = LanguageManager.Instance;1081			global::_003C_003Ey__InlineArray2<object> buffer = default(global::_003C_003Ey__InlineArray2<object>);1082			global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer, 0) = eStep.Entity.Display;1083			global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer, 1) = strColumn;1084			((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Warning, instance.FormatString("DecisionStepValidity_InvalidSteps", global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan<global::_003C_003Ey__InlineArray2<object>, object>(in buffer, 2))));1085		}1086	}10871088	protected virtual void ChecktDecisionSteps_SubMVP(ISession session, TypedEntityCollection<SelectableEntity> colSteps, SelectableEntity eStep, string strColumn, System.Collections.Generic.IList<MessageEventArgs> alMessages)1089	{1090		int num = eStep.Entity.GetValue("LevelNumber").Int;1091		System.Collections.Generic.IEnumerator<string> enumerator = ((System.Collections.Generic.IEnumerable<string>)new MultiValueProperty(eStep.Entity.GetValue(strColumn).String)).GetEnumerator();1092		try1093		{1094			int num2 = default(int);1095			while (((System.Collections.IEnumerator)enumerator).MoveNext())1096			{1097				string current = enumerator.Current;1098				if (int.TryParse(current, ref num2))1099				{1100					if (num2 != 0)1101					{1102						SelectableEntity step = GetStep(colSteps, num + num2, 0);1103						if (step == null)1104						{1105							LanguageManager instance = LanguageManager.Instance;1106							global::_003C_003Ey__InlineArray2<object> buffer = default(global::_003C_003Ey__InlineArray2<object>);1107							global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer, 0) = eStep.Entity.Display;1108							global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer, 1) = strColumn;1109							((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Warning, instance.FormatString("DecisionStepValidity_InvalidSteps", global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan<global::_003C_003Ey__InlineArray2<object>, object>(in buffer, 2))));1110						}1111						else if (!string.IsNullOrEmpty(GetDecisionRule(session, step).GetValue("UID_Task").String))1112						{1113							LanguageManager instance2 = LanguageManager.Instance;1114							global::_003C_003Ey__InlineArray2<object> buffer2 = default(global::_003C_003Ey__InlineArray2<object>);1115							global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer2, 0) = eStep.Entity.Display;1116							global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer2, 1) = strColumn;1117							((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance2.FormatString("DecisionStepValidity_IsSystemDecision", global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan<global::_003C_003Ey__InlineArray2<object>, object>(in buffer2, 2))));1118						}1119					}1120				}1121				else1122				{1123					LanguageManager instance3 = LanguageManager.Instance;1124					global::_003C_003Ey__InlineArray2<object> buffer3 = default(global::_003C_003Ey__InlineArray2<object>);1125					global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer3, 0) = eStep.Entity.Display;1126					global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer3, 1) = current;1127					((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Warning, instance3.FormatString("DecisionStepValidity_InvalidSteps", global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan<global::_003C_003Ey__InlineArray2<object>, object>(in buffer3, 2))));1128				}1129			}1130		}1131		finally1132		{1133			((System.IDisposable)enumerator)?.Dispose();1134		}1135	}11361137	private void Check_SB(ISession session, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1138	{1139		System.Collections.Generic.IEnumerator<SelectableEntity> enumerator = colSteps.GetEnumerator();1140		try1141		{1142			while (((System.Collections.IEnumerator)enumerator).MoveNext())1143			{1144				SelectableEntity current = enumerator.Current;1145				if (IsRuleType(session, current, "SB") && colSteps.Count > 1)1146				{1147					LanguageManager instance = LanguageManager.Instance;1148					object display = current.Entity.Display;1149					((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance.FormatString("DecisionStepValidity_SelfService", new System.ReadOnlySpan<object>(ref display))));1150				}1151			}1152		}1153		finally1154		{1155			((System.IDisposable)enumerator)?.Dispose();1156		}1157	}11581159	private void Check_ComplianceExceptions(ISession session, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1160	{1161		System.Collections.Generic.IEnumerator<SelectableEntity> enumerator = colSteps.GetEnumerator();1162		try1163		{1164			while (((System.Collections.IEnumerator)enumerator).MoveNext())1165			{1166				SelectableEntity current = enumerator.Current;1167				if (!IsRuleType(session, current, "OC") && !IsRuleType(session, current, "OH"))1168				{1169					continue;1170				}1171				SelectableEntity prevStep = GetPrevStep(colSteps, current, bPositiv: false, bNegativ: true);1172				if (prevStep != null)1173				{1174					string text = GetRule(session, prevStep).ToUpperInvariant();1175					if (!(text == "CN") && !(text == "CC") && !(text == "CR"))1176					{1177						LanguageManager instance = LanguageManager.Instance;1178						object display = current.Entity.Display;1179						((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance.FormatString("DecisionStepValidity_CCNegativStep", new System.ReadOnlySpan<object>(ref display))));1180					}1181				}1182				else1183				{1184					LanguageManager instance2 = LanguageManager.Instance;1185					object display2 = current.Entity.Display;1186					((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance2.FormatString("DecisionStepValidity_CCNegativStep", new System.ReadOnlySpan<object>(ref display2))));1187				}1188			}1189		}1190		finally1191		{1192			((System.IDisposable)enumerator)?.Dispose();1193		}1194	}11951196	private void Check_UniqueInMethod(ISession session, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1197	{1198		string[] array = new string[4] { "CC", "CN", "CA", "CR" };1199		foreach (string strDecisionRule in array)1200		{1201			if (CountSteps(session, colSteps, strDecisionRule) > 1)1202			{1203				LanguageManager instance = LanguageManager.Instance;1204				object obj = DecisionRule(session, strDecisionRule);1205				((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance.FormatString("DecisionStepValidity_MultipleSteps", new System.ReadOnlySpan<object>(ref obj))));1206			}1207		}1208	}12091210	private static void Check_UniqueOnLevel(ISession session, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1211	{1212		//IL_0000: Unknown result type (might be due to invalid IL or missing references)1213		//IL_0006: Expected O, but got Unknown1214		StringCollection val = new StringCollection();1215		val.AddRange(new string[8] { "CC", "CD", "CN", "CA", "WC", "OC", "OH", "CR" });1216		System.Collections.Generic.IEnumerator<SelectableEntity> enumerator = colSteps.GetEnumerator();1217		try1218		{1219			while (((System.Collections.IEnumerator)enumerator).MoveNext())1220			{1221				SelectableEntity current = enumerator.Current;1222				string text = GetRule(session, current).ToUpperInvariant();1223				if (val.Contains(text) && CountSteps(colSteps, current.Entity.GetValue("LevelNumber").Int) > 1)1224				{1225					LanguageManager instance = LanguageManager.Instance;1226					object obj = text;1227					((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance.FormatString("DecisionStepValidity_SingleLevel", new System.ReadOnlySpan<object>(ref obj))));1228				}1229			}1230		}1231		finally1232		{1233			((System.IDisposable)enumerator)?.Dispose();1234		}1235	}12361237	private static void Check_Escalation(System.Collections.Generic.IEnumerable<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1238	{1239		System.Collections.Generic.IEnumerator<SelectableEntity> enumerator = colSteps.GetEnumerator();1240		try1241		{1242			while (((System.Collections.IEnumerator)enumerator).MoveNext())1243			{1244				SelectableEntity current = enumerator.Current;1245				if (string.Equals(current.Entity.GetValue("AutomaticDecision").String, "Escalate", (StringComparison)5) && current.Entity.GetValue("EscalationSteps").Int == 0)1246				{1247					LanguageManager instance = LanguageManager.Instance;1248					object display = current.Entity.Display;1249					((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance.FormatString("DecisionStepValidity_Escalation", new System.ReadOnlySpan<object>(ref display))));1250				}1251			}1252		}1253		finally1254		{1255			((System.IDisposable)enumerator)?.Dispose();1256		}1257	}12581259	private static void Check_DelegationFlags(TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1260	{1261		System.Collections.Generic.IEnumerator<SelectableEntity> enumerator = colSteps.GetEnumerator();1262		try1263		{1264			while (((System.Collections.IEnumerator)enumerator).MoveNext())1265			{1266				SelectableEntity current = enumerator.Current;1267				if ((current.Entity.GetValue("IsAdditionalAllowed").Bool || current.Entity.GetValue("IsInsteadOfAllowed").Bool) && CountSteps(colSteps, current.Entity.GetValue("LevelNumber").Int) > 1)1268				{1269					LanguageManager instance = LanguageManager.Instance;1270					object display = current.Entity.Display;1271					((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance.FormatString("DecisionStepValidity_DelegationFlags", new System.ReadOnlySpan<object>(ref display))));1272				}1273			}1274		}1275		finally1276		{1277			((System.IDisposable)enumerator)?.Dispose();1278		}1279	}12801281	private static void Check_UsageArea(ISession session, IEntity entity, TypedEntityCollection<SelectableEntity> colSteps, System.Collections.Generic.IList<MessageEventArgs> alMessages)1282	{1283		string value = entity.GetValue<string>("UsageArea");1284		System.Collections.Generic.IEnumerator<SelectableEntity> enumerator = colSteps.GetEnumerator();1285		try1286		{1287			while (((System.Collections.IEnumerator)enumerator).MoveNext())1288			{1289				SelectableEntity current = enumerator.Current;1290				string value2 = current.Entity.GetValue<string>("UsageArea");1291				if (!string.Equals(value, value2, (StringComparison)5))1292				{1293					LanguageManager instance = LanguageManager.Instance;1294					global::_003C_003Ey__InlineArray2<object> buffer = default(global::_003C_003Ey__InlineArray2<object>);1295					global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer, 0) = entity.Display;1296					global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer, 1) = current.Entity.Display;1297					((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance.FormatString("DecisionStepValidity_UsageArea", global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan<global::_003C_003Ey__InlineArray2<object>, object>(in buffer, 2))));1298				}1299				IEntity decisionRule = GetDecisionRule(session, current);1300				string value3 = decisionRule.GetValue<string>("UsageArea");1301				if (!string.Equals(value, value3, (StringComparison)5))1302				{1303					LanguageManager instance2 = LanguageManager.Instance;1304					global::_003C_003Ey__InlineArray2<object> buffer2 = default(global::_003C_003Ey__InlineArray2<object>);1305					global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer2, 0) = entity.Display;1306					global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef<global::_003C_003Ey__InlineArray2<object>, object>(ref buffer2, 1) = decisionRule.Display;1307					((System.Collections.Generic.ICollection<MessageEventArgs>)alMessages).Add(new MessageEventArgs(MsgSeverity.Serious, instance2.FormatString("DecisionRuleValidity_UsageArea", global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan<global::_003C_003Ey__InlineArray2<object>, object>(in buffer2, 2))));1308				}1309			}1310		}1311		finally1312		{1313			((System.IDisposable)enumerator)?.Dispose();1314		}1315	}13161317	protected virtual SelectableEntity? GetStep(TypedEntityCollection<SelectableEntity> colSteps, int iLevel, int iSubLevel)1318	{1319		return Enumerable.FirstOrDefault<SelectableEntity>((System.Collections.Generic.IEnumerable<SelectableEntity>)colSteps, (Func<SelectableEntity, bool>)((SelectableEntity colElem) => colElem.Entity.GetValue("LevelNumber").Int == iLevel && colElem.Entity.GetValue("SubLevelNumber").Int == iSubLevel));1320	}13211322	protected virtual SelectableEntity? GetStep(ISession session, TypedEntityCollection<SelectableEntity> colSteps, string strDecisionRule)1323	{1324		return Enumerable.FirstOrDefault<SelectableEntity>((System.Collections.Generic.IEnumerable<SelectableEntity>)colSteps, (Func<SelectableEntity, bool>)((SelectableEntity eStep) => IsRuleType(session, eStep, strDecisionRule)));1325	}13261327	protected virtual SelectableEntity? GetPrevStep(TypedEntityCollection<SelectableEntity> colSteps, SelectableEntity eStep, bool bPositiv, bool bNegativ)1328	{1329		int num = eStep.Entity.GetValue("LevelNumber").Int;1330		System.Collections.Generic.IEnumerator<SelectableEntity> enumerator = colSteps.GetEnumerator();1331		try1332		{1333			while (((System.Collections.IEnumerator)enumerator).MoveNext())1334			{1335				SelectableEntity current = enumerator.Current;1336				int num2 = current.Entity.GetValue("PositiveSteps").Int;1337				if (bPositiv && num2 != 0 && current.Entity.GetValue("LevelNumber").Int + num2 == num)1338				{1339					return current;1340				}1341				num2 = current.Entity.GetValue("NegativeSteps").Int;1342				if (bNegativ && num2 != 0 && current.Entity.GetValue("LevelNumber").Int + num2 == num)1343				{1344					return current;1345				}1346			}1347		}1348		finally1349		{1350			((System.IDisposable)enumerator)?.Dispose();1351		}1352		return null;1353	}13541355	protected virtual SelectableEntity? GetNextStep(TypedEntityCollection<SelectableEntity> colSteps, SelectableEntity eStep, FollowerType tFollower)1356	{1357		int num = eStep.Entity.GetValue("LevelNumber").Int;1358		int num2 = eStep.Entity.GetValue(System.Enum.GetName(typeof(FollowerType), (object)tFollower)).Int;1359		if (num2 != 0)1360		{1361			return GetStep(colSteps, num + num2, 0);1362		}1363		return null;1364	}13651366	protected int CountSteps(ISession session, TypedEntityCollection<SelectableEntity> colSteps, string strDecisionRule)1367	{1368		return Enumerable.Count<SelectableEntity>((System.Collections.Generic.IEnumerable<SelectableEntity>)colSteps, (Func<SelectableEntity, bool>)((SelectableEntity eStep) => IsRuleType(session, eStep, strDecisionRule)));1369	}13701371	protected static int CountSteps(TypedEntityCollection<SelectableEntity> colSteps, int iLevel)1372	{1373		return Enumerable.Count<SelectableEntity>((System.Collections.Generic.IEnumerable<SelectableEntity>)colSteps, (Func<SelectableEntity, bool>)((SelectableEntity eStep) => eStep.Entity.GetValue<int>("LevelNumber") == iLevel));1374	}13751376	private static bool IsRuleType(ISession session, SelectableEntity vpStep, string strRule)1377	{1378		if (vpStep == null)1379		{1380			return false;1381		}1382		return string.Equals(GetRule(session, vpStep), strRule, (StringComparison)5);1383	}13841385	private static string DecisionRule(ISession session, string strDecisionRule)1386	{1387		//IL_0013: Unknown result type (might be due to invalid IL or missing references)1388		//IL_0019: Unknown result type (might be due to invalid IL or missing references)1389		return session.MultiLanguage().GetAsync("PWODecisionStep", "UID_PWODecisionRule", strDecisionRule).Result;1390	}13911392	private static IEntity GetDecisionRule(ISession session, SelectableEntity vpStep)1393	{1394		//IL_0029: Unknown result type (might be due to invalid IL or missing references)1395		//IL_002f: Unknown result type (might be due to invalid IL or missing references)1396		DbObjectKey key = new DbObjectKey("PWODecisionRule", vpStep.Entity.GetValue("UID_PwODecisionRule").String);1397		return session.Source().GetAsync(key).Result;1398	}13991400	private static string GetRule(ISession session, SelectableEntity vpStep)1401	{1402		//IL_0035: Unknown result type (might be due to invalid IL or missing references)1403		//IL_003b: Unknown result type (might be due to invalid IL or missing references)1404		ISqlFormatter formatter = session.SqlFormatter();1405		return session.Source().GetSingleValueAsync<string>("PWODecisionRule", "DecisionRule", formatter.UidComparison("UID_PwODecisionRule", vpStep.Entity.GetValue<string>("UID_PwODecisionRule"))).Result;1406	}14071408	[AsyncStateMachine(typeof(_003CIncrementRevisionNumber_003Ed__35))]1409	public static System.Threading.Tasks.Task IncrementRevisionNumber(ISession session, string uidPwoSubMethod, CancellationToken ct)1410	{1411		//IL_0002: Unknown result type (might be due to invalid IL or missing references)1412		//IL_0007: Unknown result type (might be due to invalid IL or missing references)1413		//IL_001e: Unknown result type (might be due to invalid IL or missing references)1414		//IL_001f: Unknown result type (might be due to invalid IL or missing references)1415		_003CIncrementRevisionNumber_003Ed__35 _003CIncrementRevisionNumber_003Ed__ = default(_003CIncrementRevisionNumber_003Ed__35);1416		_003CIncrementRevisionNumber_003Ed__._003C_003Et__builder = AsyncTaskMethodBuilder.Create();1417		_003CIncrementRevisionNumber_003Ed__.session = session;1418		_003CIncrementRevisionNumber_003Ed__.uidPwoSubMethod = uidPwoSubMethod;1419		_003CIncrementRevisionNumber_003Ed__.ct = ct;1420		_003CIncrementRevisionNumber_003Ed__._003C_003E1__state = -1;1421		((AsyncTaskMethodBuilder)(ref _003CIncrementRevisionNumber_003Ed__._003C_003Et__builder)).Start<_003CIncrementRevisionNumber_003Ed__35>(ref _003CIncrementRevisionNumber_003Ed__);1422		return ((AsyncTaskMethodBuilder)(ref _003CIncrementRevisionNumber_003Ed__._003C_003Et__builder)).Task;1423	}1424}1425