private final I_C_TaxDeclarationLine createTaxDeclarationLine( final I_GL_JournalLine glJournalLine) { final String summary = journalLineBL.getDocumentNo(glJournalLine); final I_C_TaxDeclarationLine taxDeclarationLine = newTaxDeclarationLine(); taxDeclarationLine.setAD_Org_ID(glJournalLine.getAD_Org_ID()); taxDeclarationLine.setIsManual(false); // taxDeclarationLine.setGL_JournalLine(glJournalLine); taxDeclarationLine.setC_Currency_ID(glJournalLine.getC_Currency_ID()); taxDeclarationLine.setDateAcct(glJournalLine.getDateAcct()); taxDeclarationLine.setC_DocType_ID(glJournalLine.getGL_Journal().getC_DocType_ID()); taxDeclarationLine.setDocumentNo(summary); // final ITaxAccountable taxAccountable = journalLineBL.asTaxAccountable(glJournalLine); // NOTE: Tax on sales transactions is booked on CR, tax on purchase transactions is booked on DR final boolean isSOTrx = taxAccountable.isAccountSignCR(); taxDeclarationLine.setIsSOTrx(isSOTrx); taxDeclarationLine.setC_Tax_ID(taxAccountable.getC_Tax_ID()); taxDeclarationLine.setTaxBaseAmt(taxAccountable.getTaxBaseAmt()); taxDeclarationLine.setTaxAmt(taxAccountable.getTaxAmt()); save(taxDeclarationLine); return taxDeclarationLine; }
private boolean addGLJournalLine0(final I_GL_JournalLine glJournalLine) { final List<I_Fact_Acct> factAcctRecords = factAcctDAO.retrieveForDocumentLine( I_GL_Journal.Table_Name, glJournalLine.getGL_Journal_ID(), glJournalLine); // // Skip not posted GL Journal Lines, but warn the user if (factAcctRecords.isEmpty()) { final String summary = journalLineBL.getDocumentNo(glJournalLine); loggable.addLog("@Error@: @I_GL_JournalLine_ID@ @Posted@=@N@: " + summary); return false; } final I_C_TaxDeclarationLine taxDeclarationLine = createTaxDeclarationLine(glJournalLine); createTaxDeclarationAccts(taxDeclarationLine, factAcctRecords.iterator()); return true; }