protected DataRow[] GetAvailableProcesses() { if(m_GroupRow == null) return new MultiXTpmDB.ProcessClassRow[0]; MultiXTpmDB.GroupProcessClassesRow[] GPCRows = m_GroupRow.GetGroupProcessClassesRows(); MultiXTpmDB.ProcessClassRow[] ProcessesRows = new MultiXTpmDB.ProcessClassRow[m_DS.ProcessClass.Rows.Count - GPCRows.Length]; int I = 0; foreach(MultiXTpmDB.ProcessClassRow ProcessClassRow in m_DS.ProcessClass) { bool bAvailable = true; foreach(MultiXTpmDB.GroupProcessClassesRow GPCRow in GPCRows) { if(GPCRow.ProcessClassID == ProcessClassRow.ID && GPCRow.GroupID == m_GroupID) { bAvailable = false; break; } } if(bAvailable) { ProcessesRows[I++] = ProcessClassRow; } } return ProcessesRows; }
protected DataRow[] GetProcessesDataSource() { if(m_GroupRow == null) return new MultiXTpmDB.GroupRow[0]; MultiXTpmDB.GroupProcessClassesRow[] GPCRows = m_GroupRow.GetGroupProcessClassesRows(); MultiXTpmDB.ProcessClassRow[] ProcessesRows = new MultiXTpmDB.ProcessClassRow[GPCRows.Length]; for(int I=0;I<GPCRows.Length;I++) { ProcessesRows[I] = GPCRows[I].ProcessClassRow; } return ProcessesRows; }