} // reverseAccrualIt /// <summary> /// Reverse Accrual. Flip Dr/Cr - Use Today's date /// </summary> /// <param name="GL_JournalBatch_ID">reversal batch</param> /// <returns> journal or null </returns> public MJournal ReverseAccrualIt(int GL_JournalBatch_ID) { log.Info(ToString()); // Journal MJournal reverse = new MJournal(this); reverse.SetGL_JournalBatch_ID(GL_JournalBatch_ID); reverse.SetDateDoc(DateTime.Now); reverse.Set_ValueNoCheck("C_Period_ID", null); // reset reverse.SetDateAcct(reverse.GetDateDoc()); // Reverse indicator String description = reverse.GetDescription(); if (description == null) { description = "** " + GetDocumentNo() + " **"; } else { description += " ** " + GetDocumentNo() + " **"; } reverse.SetDescription(description); if (!reverse.Save()) { return(null); } // Lines reverse.CopyLinesFrom(this, reverse.GetDateAcct(), 'R'); // SetProcessed(true); SetDocAction(DOCACTION_None); return(reverse); } // reverseAccrualIt
} // reverseCorrectIt /// <summary> /// Reverse Correction.As if nothing happened - same date /// </summary> /// <param name="GL_JournalBatch_ID">batch</param> /// <returns>reversed journal or null</returns> public MJournal ReverseCorrectIt(int GL_JournalBatch_ID) { log.Info(ToString()); // Journal MJournal reverse = new MJournal(this); reverse.SetGL_JournalBatch_ID(GL_JournalBatch_ID); reverse.SetDateDoc(GetDateDoc()); reverse.SetC_Period_ID(GetC_Period_ID()); reverse.SetDateAcct(GetDateAcct()); // Reverse indicator String description = reverse.GetDescription(); if (description == null) { description = "** " + GetDocumentNo() + " **"; } else { description += " ** " + GetDocumentNo() + " **"; } reverse.SetDescription(description); if (reverse.Get_ColumnIndex("ReversalDoc_ID") > 0 && reverse.Get_ColumnIndex("IsReversal") > 0) { // set Reversal property for identifying, record is reversal or not during saving or for other actions reverse.SetIsReversal(true); // Set Orignal Document Reference reverse.SetReversalDoc_ID(GetGL_Journal_ID()); } // for reversal document set Temp Document No to empty if (reverse.Get_ColumnIndex("TempDocumentNo") > 0) { reverse.SetTempDocumentNo(""); } if (!reverse.Save()) { return(null); } // Lines reverse.CopyLinesFrom(this, null, 'C'); // SetProcessed(true); SetDocAction(DOCACTION_None); return(reverse); } // reverseCorrectionIt
} // MJournal /// <summary> /// Copy Constructor.Dos not copy: Dates/Period /// </summary> /// <param name="original">original</param> public MJournal(MJournal original) : this(original.GetCtx(), 0, original.Get_TrxName()) { //this (original.GetCtx(), 0, original.get_TrxName()) SetClientOrg(original); SetGL_JournalBatch_ID(original.GetGL_JournalBatch_ID()); // SetC_AcctSchema_ID(original.GetC_AcctSchema_ID()); SetGL_Budget_ID(original.GetGL_Budget_ID()); SetGL_Category_ID(original.GetGL_Category_ID()); SetPostingType(original.GetPostingType()); SetDescription(original.GetDescription()); SetC_DocType_ID(original.GetC_DocType_ID()); SetControlAmt(original.GetControlAmt()); // SetC_Currency_ID(original.GetC_Currency_ID()); SetC_ConversionType_ID(original.GetC_ConversionType_ID()); SetCurrencyRate(original.GetCurrencyRate()); // setDateDoc(original.getDateDoc()); // setDateAcct(original.getDateAcct()); // setC_Period_ID(original.getC_Period_ID()); } // MJournal