//public abstract IEnumerable<NAS.DAL.Accounting.Journal.Transaction> GetTransactions(Session session); //public abstract NAS.DAL.CMS.ObjectDocument.ObjectTypeEnum GetObjectTypeEnum(); public virtual GeneralJournal CreateGeneralJournal( Session session, Guid transactionId, Guid accountId, Side side, double amount, string description, JounalTypeFlag journalType) { GeneralJournal ret = null; ObjectBO objectBO = new ObjectBO(); GeneralJournalBO generalJournalBO = new GeneralJournalBO(); ret = generalJournalBO.CreateGeneralJournal( session, transactionId, accountId, side, amount, description, journalType); //Create CMS object... Guid objectTypeId = ret.TransactionId.TransactionObjects.First().ObjectId.ObjectTypeId.ObjectTypeId; NAS.DAL.CMS.ObjectDocument.Object CMSObject = objectBO.CreateCMSObject(session, objectTypeId); GeneralJournalObject generalJournalObject = new GeneralJournalObject(session) { GeneralJournalId = ret, ObjectId = CMSObject }; generalJournalObject.Save(); if (session is UnitOfWork) { session.FlushChanges(); } //Copy readonly data from transaction to journal //Get transaction object NAS.DAL.CMS.ObjectDocument.Object transactionCMSObject = session.GetObjectByKey <NAS.DAL.Accounting.Journal.Transaction>(transactionId) .TransactionObjects.First().ObjectId; //Get general journal object NAS.DAL.CMS.ObjectDocument.Object generalJournalCMSObject = ret.GeneralJournalObjects.First().ObjectId; objectBO.CopyReadOnlyCustomFieldData( transactionCMSObject.ObjectId, generalJournalCMSObject.ObjectId); return(ret); }
public virtual GeneralJournal CreateGeneralJournal( Session session, Guid transactionId, Guid accountId, Side side, double amount, string description, JounalTypeFlag journalType) { GeneralJournalBO generalJournalBO = new GeneralJournalBO(); return(generalJournalBO.CreateGeneralJournal( session, transactionId, accountId, side, amount, description, journalType)); }