コード例 #1
0
        public void TransferEntry(GeneralLedgerEntry generalLedgerEntry)
        {
            generalLedgerEntry.MustBeInBalance();
            generalLedgerEntry.MustBePosted();

            ProfitAndLoss.Transfer(generalLedgerEntry);
            TrialBalance.Transfer(generalLedgerEntry);
            TrialBalance.MustBeInBalance();
            _generalLedgerEntryIdentifiers.Remove(generalLedgerEntry.Identifier);
        }
コード例 #2
0
        public GeneralLedgerEntry Complete()
        {
            if (_generalLedgerEntryIdentifiers.Count > 0)
            {
                throw new PeriodContainsUntransferredEntriesException(_accountingPeriod,
                                                                      _generalLedgerEntryIdentifiers.ToArray());
            }

            TrialBalance.MustBeInBalance();

            return(ProfitAndLoss.GetClosingEntry(_accountIsDeactivated, _retainedEarningsAccount,
                                                 _closingOn, _closingGeneralLedgerEntryIdentifier));
        }