Exemple #1
0
		public void UpdateCompanyUsers (int CompanyGroupID, int[] InstIDS)
		{
			ArrayList userList = new ArrayList(InstIDS);

			ArrayList currentUserList;

			BPCompanyGroups bp = new BPCompanyGroups();
			BECompanyGroups DSCompanyGroups = new BECompanyGroups();
		
			DSCompanyGroups = bp.SelectCompanyUsersByCompanyGroupID(CompanyGroupID);

			_CurrentCompanyUserCompanyGroupIDS = new int[DSCompanyGroups.Tables["tbl_CompanyUserGroups"].Rows.Count];			
			for (int i=0; i < DSCompanyGroups.Tables["tbl_CompanyUserGroups"].Rows.Count; i++)
			{
				_CurrentCompanyUserCompanyGroupIDS[i] = Convert.ToInt32(DSCompanyGroups.Tables["tbl_CompanyUserGroups"].Rows[i]["CompanyUserID"]);
			}
			currentUserList = new ArrayList(_CurrentCompanyUserCompanyGroupIDS);

			//DACompanyGroups da = new DACompanyGroups();
			DACompanyUserGroups daUserGroups = new DACompanyUserGroups();

			userList.Sort();
			currentUserList.Sort();

			//Insert the records that are new
			foreach (int userID in userList)
			{
				if (currentUserList.BinarySearch(userID) < 0)
				{
					//not found in the current users, add it.
					daUserGroups.InsertByID(userID, CompanyGroupID);
				}
			}

			//delete the old records
			foreach (int userID in currentUserList)
			{
				if (userList.BinarySearch(userID) < 0)
				{
					//not found in the current groups, add it.
					daUserGroups.DeleteByID(userID, CompanyGroupID);
				}
			}
		}