private static void RecalculateParentAccounts(int AccountId, bool IncludeCurrent) { ArrayList parentAccounts = new ArrayList(); if (IncludeCurrent) { parentAccounts.Add(AccountId); } // Найдём всех родителей using (IDataReader reader = DBFinance.GetListParentAccounts(AccountId)) { while (reader.Read()) { parentAccounts.Add(reader["AccountId"]); } } // Пересчитаем родителей foreach (int parentAccountId in parentAccounts) { DBFinance.RecalculateParentAccount(parentAccountId, Security.CurrentUser.UserID); } }