Beispiel #1
0
 /// <summary>
 /// 设置流程运行时
 /// </summary>
 /// <param name="runtime">流程运行时</param>
 public void SetFLRuntime(FLRuntime runtime)
 {
     _flRuntime = runtime;
 }
Beispiel #2
0
        // XmlReader flDefinitionReader, XmlReader flRulesReader)
        // 第一次会向Db中写Definition。
        /// <summary>
        /// 初始化流程
        /// </summary>
        /// <param name="instanceId">流程Id</param>
        /// <param name="runtime">流程运行时</param>
        /// <param name="flDefinitionFile">流程XOML文件</param>
        /// <param name="flRulesFile">流程规则文件</param>
        /// <param name="clientInfo">ClientInfo</param>
        /// <param name="hostDataSet">宿主表</param>
        /// <param name="orgKind">角色的OrgKind</param>
        public FLInstance(Guid instanceId, FLRuntime runtime, string flDefinitionFile, string flRulesFile, object[] clientInfo, DataSet hostDataSet, string orgKind)
        {
            _createdTime = DateTime.Now;

            _clientInfo = clientInfo;
            _hostDataSet = hostDataSet;
            _flflag = ' ';
            _creator = string.Empty;
            _flDefinitionId = Guid.NewGuid();
            _flRuntime = runtime;
            _flInstanceId = instanceId;
            //_flDefinitionReader = flDefinitionReader;
            //_flRulesReader = flRulesReader;

            _flDefinitionFile = flDefinitionFile;
            _flRulesFile = flRulesFile;
            _orgKind = orgKind;

            InitFLDefinition();
            InitFLDefinitionId();
            InitFLDefinitionXmlString();

            _currentFLActivity = null;
            _previousFLActivity = null;
            _nextFLActivities = new List<FLActivity>();
            _setUpperParallels = new List<string>();
            _setLocations = new List<string>();
            _executedActivities = new Hashtable();

            solution = ((object[])clientInfo[0])[6] == null ? string.Empty : ((object[])clientInfo[0])[6].ToString();

            _flDirection = FLDirection.Waiting;
            _p = new List<object>();
            _rl = new List<string>();

            _records = new Hashtable();
            _nameRecords = new List<string>();
            _isFirstInParallel = false;
            _cacheFLInstanceParms = new List<string>();

            _version = "2.0";
        }