public Object getProcessInstanceVariable(String name) { if (_processInstanceVariables == null) { //通过数据库查询进行初始化 IPersistenceService persistenceService = this.RuntimeContext.PersistenceService; List <ProcessInstanceVar> allVars = persistenceService.FindProcessInstanceVariable(this.Id); _processInstanceVariables = new Dictionary <String, Object>(); if (allVars != null && allVars.Count != 0) { foreach (ProcessInstanceVar theVar in allVars) { _processInstanceVariables.Add(theVar.VarPrimaryKey.Name, theVar.Value); } } } if (_processInstanceVariables.ContainsKey(name)) { return(_processInstanceVariables[name]); } else { return(null); } }
public void Store2_Refresh(object sender, StoreRefreshDataEventArgs e) { IPersistenceService ips = RuntimeContextExamples.GetRuntimeContext().PersistenceService; Store2.DataSource = ips.FindProcessInstanceVariable(HId.Value.ToString()); Store2.DataBind(); }
public void setProcessInstanceVariable(String name, Object value) { IPersistenceService persistenceService = this.RuntimeContext.PersistenceService; if (_processInstanceVariables == null) { //通过数据库查询进行初始化 List <ProcessInstanceVar> allVars = persistenceService.FindProcessInstanceVariable(this.Id); _processInstanceVariables = new Dictionary <String, Object>(); if (allVars != null && allVars.Count != 0) { foreach (ProcessInstanceVar theVar in allVars) { _processInstanceVariables.Add(theVar.VarPrimaryKey.Name, theVar.Value); } } } ProcessInstanceVar procInstVar = new ProcessInstanceVar(); ProcessInstanceVarPk pk = new ProcessInstanceVarPk(); pk.ProcessInstanceId = this.Id; pk.Name = name; procInstVar.VarPrimaryKey = pk; procInstVar.Value = value.ToString(); procInstVar.ValueType = value.GetType().Name; if (_processInstanceVariables.ContainsKey(name)) { persistenceService.UpdateProcessInstanceVariable(procInstVar); _processInstanceVariables[name] = value; } else { persistenceService.SaveProcessInstanceVariable(procInstVar); _processInstanceVariables.Add(name, value); } }