public WorklistItems GetWorklistItemsByProcInstId(int procInstId) { WorklistCriteriaFilter criteria = new WorklistCriteriaFilter(); RegularFilter rfPID = new RegularFilter(); RegularFilter rfActID = new RegularFilter(); rfPID.ColumnName = "PI.ID"; rfPID.ParameterValue = procInstId; rfPID.DbType = DbType.Int32; rfPID.Comparison = Comparison.Equals; rfPID.ParameterName = "@ICE_ProcInstID"; criteria.FilterCollection.Add(rfPID); return(_server.GetWorklistItems(criteria)); }
private WorklistItems GetWorklistItems(string serialNo) { WorklistCriteriaFilter criteria = new WorklistCriteriaFilter(); RegularFilter rfPID = new RegularFilter(); RegularFilter rfActID = new RegularFilter(); rfPID.ColumnName = "PI.ID"; rfPID.ParameterValue = serialNo.Substring(0, serialNo.IndexOf('_')); rfPID.DbType = DbType.Int32; rfPID.Comparison = Comparison.Equals; rfPID.ParameterName = "@ICE_ProcInstID"; criteria.FilterCollection.Add(rfPID); rfActID.Condition = RegularFilter.FilterCondition.AND; rfActID.ColumnName = "WLH.ActInstDestID"; rfActID.ParameterValue = serialNo.Substring(serialNo.IndexOf('_') + 1); rfActID.Comparison = Comparison.Equals; rfActID.ParameterName = "@ICE_ActInstID"; rfActID.DbType = DbType.Int32; criteria.FilterCollection.Add(rfActID); return(_server.GetWorklistItems(criteria)); }
public WorklistItem GetWorklistItem(int procInstId, string destUser) { WorklistCriteriaFilter criteria = new WorklistCriteriaFilter(); RegularFilter rfPID = new RegularFilter(); RegularFilter rfDestUser = new RegularFilter(); rfPID.ColumnName = "PI.ID"; rfPID.ParameterValue = procInstId; rfPID.DbType = DbType.Int32; rfPID.Comparison = Comparison.Equals; rfPID.ParameterName = "@ICE_ProcInstID"; criteria.FilterCollection.Add(rfPID); rfDestUser.ColumnName = "PI.Destination"; rfDestUser.ParameterValue = destUser; rfDestUser.DbType = DbType.String; rfDestUser.Comparison = Comparison.Equals; rfDestUser.ParameterName = "@ICE_Destination"; criteria.FilterCollection.Add(rfDestUser); var items = _server.GetWorklistItems(criteria); if (items.Count > 0) { for (int i = 0; i < items.Count; i++) { if ((items[i].Status == WorklistItem.WorklistStatus.Allocated || items[i].Status == WorklistItem.WorklistStatus.Open) && items[i].ProcessInstanceStatus == ProcessInstanceStatus.Active) { return(items[i]); } } } return(null); }