X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=includes%2Fui%2Fui_view.inc;h=86062acba8b083cd9d476692443bc57a6fe38620;hb=658ddd40c660545f115a9265311e5903e1faf1e0;hp=e978b36d9b9564a931ad25a1cb14989915d00977;hpb=b7abcfdf70f6e1d61e977ac555603c591cf0006f;p=fa-stable.git diff --git a/includes/ui/ui_view.inc b/includes/ui/ui_view.inc index e978b36d..86062acb 100644 --- a/includes/ui/ui_view.inc +++ b/includes/ui/ui_view.inc @@ -598,16 +598,24 @@ function display_quick_entries(&$cart, $id, $base, $type, $descr='') case "t-": // ditto & reduce base amount $taxes = get_taxes_for_item_tax($qe_line['dest_id']); $tax_total = 0; + $totrate = 0; + // find total tax + if (substr($qe_line['action'],0,1) != 'T') { + foreach ($taxes as $index => $item_tax) { + $totrate += $item_tax['rate']; + } + } + $taxbase = $base/($totrate+100); foreach ($taxes as $index => $item_tax) { - if(substr($qe_line['action'],0,1) != 'T') - $tax = round2($base * $item_tax['rate'] - / ($item_tax['rate'] + 100), user_price_dec()); - else - $tax = round2($base * $item_tax['rate'] / 100, user_price_dec()); - + $tax = round2($taxbase * $item_tax['rate'], user_price_dec()); $gl_code = ($type == QE_DEPOSIT || ($type == QE_JOURNAL && $base < 0)) ? $item_tax['sales_gl_code'] : $item_tax['purchasing_gl_code']; $tax_total += $tax; + if ($tax==0) continue; + if (!is_tax_gl_unique($gl_code)) { + display_error(_("Cannot post to GL account used by more than one tax type.")); + break 3; + } if ($type != QE_SUPPINV) $cart->add_gl_item($gl_code, $qe_line['dimension_id'], $qe_line['dimension2_id'],