示例#1
0
        public static void DeleteActualFinances(int ActualId)
        {
            int AccountId;
            int ObjectTypeId, ObjectId;

            using (IDataReader reader = DBFinance.GetActualFinances(ActualId))
            {
                reader.Read();
                AccountId    = (int)reader["AccountId"];
                ObjectTypeId = (int)reader["ObjectTypeId"];
                ObjectId     = (int)reader["ObjectId"];
            }

            if (!CanWork(ObjectTypeId, ObjectId))
            {
                throw new AccessDeniedException();
            }

            using (DbTransaction tran = DbTransaction.Begin())
            {
                DBFinance.DeleteActualFinances(ActualId);
                RecalculateActualAccounts(AccountId);

                tran.Commit();
            }
        }
示例#2
0
        public static void UpdateActualFinancesValueAndDescription(int ActualId,
                                                                   decimal Value, string Description)
        {
            int AccountId;
            int ObjectTypeId, ObjectId;

            using (IDataReader reader = DBFinance.GetActualFinances(ActualId))
            {
                reader.Read();
                AccountId    = (int)reader["AccountId"];
                ObjectTypeId = (int)reader["ObjectTypeId"];
                ObjectId     = (int)reader["ObjectId"];
            }

            if (!CanWork(ObjectTypeId, ObjectId))
            {
                throw new AccessDeniedException();
            }

            using (DbTransaction tran = DbTransaction.Begin())
            {
                DBFinance.UpdateActualFinancesValueAndDescription(ActualId, Value, Description, Security.CurrentUser.UserID);

                RecalculateActualAccounts(AccountId);

                tran.Commit();
            }
        }