From cbe23741ebe62ca978c516f70e1257587b921a44 Mon Sep 17 00:00:00 2001 From: Alexandre SPANGARO Date: Thu, 2 May 2019 14:06:55 +0200 Subject: [PATCH] FIX Massive debug in lettering function --- .../thirdparty_lettering_customer.php | 155 +++++++++++------- .../thirdparty_lettering_supplier.php | 151 ++++++++++------- htdocs/accountancy/class/lettering.class.php | 20 +-- htdocs/langs/en_US/accountancy.lang | 1 + 4 files changed, 195 insertions(+), 132 deletions(-) diff --git a/htdocs/accountancy/bookkeeping/thirdparty_lettering_customer.php b/htdocs/accountancy/bookkeeping/thirdparty_lettering_customer.php index 1d370176613..fed41d70b53 100644 --- a/htdocs/accountancy/bookkeeping/thirdparty_lettering_customer.php +++ b/htdocs/accountancy/bookkeeping/thirdparty_lettering_customer.php @@ -3,8 +3,8 @@ * Copyright (C) 2005 Laurent Destailleur * Copyright (C) 2013 Olivier Geffroy * Copyright (C) 2013 Florian Henry - * Copyright (C) 2013-2018 Alexandre Spangaro - * Copyright (C) 2018 Frédéric France + * Copyright (C) 2013-2019 Alexandre Spangaro + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -30,6 +30,7 @@ require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT . '/core/class/html.formaccounting.class.php'; require_once DOL_DOCUMENT_ROOT . '/accountancy/class/bookkeeping.class.php'; require_once DOL_DOCUMENT_ROOT . '/accountancy/class/lettering.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingjournal.class.php'; require_once DOL_DOCUMENT_ROOT . '/societe/class/societe.class.php'; require_once DOL_DOCUMENT_ROOT . '/core/lib/company.lib.php'; @@ -53,26 +54,31 @@ $offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if ($sortorder == "") - $sortorder = "DESC"; + $sortorder = "ASC"; if ($sortfield == "") $sortfield = "bk.doc_date"; -$search_year = GETPOST("search_year", 'int'); -$search_doc_type = GETPOST("search_doc_type", 'alpha'); +/* +$search_date_start = dol_mktime(0, 0, 0, GETPOST('date_startmonth', 'int'), GETPOST('date_startday', 'int'), GETPOST('date_startyear', 'int')); +$search_date_end = dol_mktime(0, 0, 0, GETPOST('date_endmonth', 'int'), GETPOST('date_endday', 'int'), GETPOST('date_endyear', 'int')); +//$search_doc_type = GETPOST("search_doc_type", 'alpha'); $search_doc_ref = GETPOST("search_doc_ref", 'alpha'); +*/ $lettering = GETPOST('lettering', 'alpha'); if (! empty($lettering)) { $action = $lettering; } -// Did we click on purge search criteria ? -// All tests are required to be compatible with all browsers -if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')) { - $search_year = ''; - $search_doc_type = ''; +/* +if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') || GETPOST('button_removefilter','alpha')) // All tests are required to be compatible with all browsers +{ + $search_date_start = ''; + $search_date_end = ''; + //$search_doc_type = ''; $search_doc_ref = ''; } +*/ // Security check $socid = GETPOST("socid", 'int'); @@ -102,6 +108,7 @@ if ($action == 'lettering') { } } +/* if ($action == 'autolettrage') { $result = $lettering->letteringThirdparty($socid); @@ -111,9 +118,9 @@ if ($action == 'autolettrage') { $error++; } } +*/ - - /* +/* * View */ @@ -136,19 +143,17 @@ dol_banner_tab($object, 'socid', $linkback, ($user->societe_id?0:1), 'rowid', 'n dol_fiche_end(); -print '
'; - $sql = "SELECT bk.rowid, bk.doc_date, bk.doc_type, bk.doc_ref, "; $sql .= " bk.subledger_account, bk.numero_compte , bk.label_compte, bk.debit, "; $sql .= " bk.credit, bk.montant , bk.sens , bk.code_journal , bk.piece_num, bk.lettering_code "; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping as bk"; $sql .= " WHERE (bk.subledger_account = '" . $object->code_compta . "' AND bk.numero_compte = '" . $conf->global->ACCOUNTING_ACCOUNT_CUSTOMER . "' )"; -if (dol_strlen($search_year)) { - $date_start = dol_mktime(0, 0, 0, 1, 1, $search_year); - $date_end = dol_mktime(23, 59, 59, 12, 31, $search_year); - $sql .= " AND ( bk.doc_date BETWEEN '" . $db->idate($date_start) . "' AND '" . $db->idate($date_end) . "' )"; +/* +if (dol_strlen($search_date_start) || dol_strlen($search_date_end)) { + $sql .= " AND ( bk.doc_date BETWEEN '" . $db->idate($search_date_start) . "' AND '" . $db->idate($search_date_end) . "' )"; } +*/ $sql.= ' AND bk.entity IN ('.getEntity('accountingbookkeeping').')'; $sql .= $db->order($sortfield, $sortorder); @@ -190,34 +195,57 @@ if ($resql) { print '
'; print ''; - print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'title_companies', 0, '', '', $limit); + $letteringbutton = ''; + //$letteringbutton = '' . $langs->trans("Lettering") . ''; + + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'title_companies', 0, $letteringbutton, '', $limit); print ""; + + /* + print ''; + //print ''; + + // Date + print ''; + + // Piece + print ''; + + print ''; + print ''; + print ''; + */ + print ''; - print_liste_field_titre("Doctype", $_SERVER["PHP_SELF"], "bk.doc_type", "", $param, "", $sortfield, $sortorder); - print_liste_field_titre("Docdate", $_SERVER["PHP_SELF"], "bk.doc_date", "", $param, "", $sortfield, $sortorder); - print_liste_field_titre("Docref", $_SERVER["PHP_SELF"], "bk.doc_ref", "", $param, "", $sortfield, $sortorder); + //print_liste_field_titre("Doctype", $_SERVER["PHP_SELF"], "bk.doc_type", "", $param, "", $sortfield, $sortorder); + print_liste_field_titre("Docdate", $_SERVER["PHP_SELF"], "bk.doc_date", "", $param, "", $sortfield, $sortorder, 'center '); + print_liste_field_titre("Piece", $_SERVER["PHP_SELF"], "bk.doc_ref", "", $param, "", $sortfield, $sortorder); print_liste_field_titre("LabelAccount", $_SERVER["PHP_SELF"], "bk.label_compte", "", $param, "", $sortfield, $sortorder); print_liste_field_titre("Debit", $_SERVER["PHP_SELF"], "bk.debit", "", $param, "", $sortfield, $sortorder); print_liste_field_titre("Credit", $_SERVER["PHP_SELF"], "bk.credit", "", $param, "", $sortfield, $sortorder); print_liste_field_titre("Balancing", $_SERVER["PHP_SELF"], "", "", $param, "", $sortfield, $sortorder); - print_liste_field_titre("Codejournal", $_SERVER["PHP_SELF"], "bk.code_journal", "", $param, "", $sortfield, $sortorder); - print_liste_field_titre("LetteringCode", $_SERVER["PHP_SELF"], "bk.lettering_code", "", $param, "", $sortfield, $sortorder); + print_liste_field_titre("Codejournal", $_SERVER["PHP_SELF"], "bk.code_journal", "", $param, "", $sortfield, $sortorder, 'center '); + print_liste_field_titre("LetteringCode", $_SERVER["PHP_SELF"], "bk.lettering_code", "", $param, "", $sortfield, $sortorder, 'center '); + print_liste_field_titre("", "","",'','',"",$sortfield,$sortorder,'maxwidthsearch center '); print "\n"; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - $solde = 0; $tmp = ''; + + if (empty($obj->lettering_code)) $rowaction++; while ( $obj = $db->fetch_object($resql) ) { if ($tmp != $obj->lettering_code || empty($tmp)) $tmp = $obj->lettering_code; @@ -225,48 +253,53 @@ if ($resql) { print ''; - if (empty($obj->lettering_code)) { - print '' . "\n"; - } else { - print '' . "\n"; - } - - print ''; + //print '' . "\n"; + print ''; print ''; print ''; - print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; - if (empty($obj->lettering_code)) { - print ''; - } else - print ''; + // Journal + $accountingjournal = new AccountingJournal($db); + $result = $accountingjournal->fetch('',$obj->code_journal); + $journaltoshow = (($result > 0)?$accountingjournal->getNomUrl(0,0,0,'',0) : $obj->code_journal); + print ''; + + if (empty($obj->lettering_code)) { + print ''; + print '' . "\n"; + } else { + print ''; + print ''; + } print "\n"; } print ''; - print '' . "\n"; - print ''; - print ''; - print ''; + print '' . "\n"; + print ''; + print ''; + print ''; print "\n"; print ''; - print '' . "\n"; + print '' . "\n"; print ''; - print ''; - print ''; + print ''; + print ''; print "\n"; print "
'; + print '
'; + print $langs->trans('From') . ' '; + print $form->selectDate($search_date_start, 'date_creation_start', 0, 0, 1); + print '
'; + print '
'; + print $langs->trans('to') . ' '; + print $form->selectDate($search_date_end, 'date_creation_end', 0, 0, 1); + print '
'; + print '
 '; + $searchpicto = $form->showFilterButtons(); + print $searchpicto; + print '
 '; - $searchpicto = $form->showFilterButtons(); - print $searchpicto; - print '
'; - print img_edit(); - print ' ' . $obj->doc_type . '' . $obj->doc_type . '' . dol_print_date($db->jdate($obj->doc_date), 'day') . '' . $obj->doc_type . '' . dol_print_date($db->jdate($obj->doc_date), 'day') . '' . $obj->doc_ref . '' . $obj->label_compte . '' . price($obj->debit) . '' . price($obj->credit) . '' . price(round($solde, 2)) . '' . $obj->code_journal . '' . price($obj->debit) . '' . price($obj->credit) . '' . price(round($solde, 2)) . '' . $obj->lettering_code . '' . $journaltoshow . ''; + print img_edit(); + print '' . $obj->lettering_code . '
'.$langs->trans("Total").':' . price($debit) . '' . price($credit) . ''.$langs->trans("Total").':' . price($debit) . '' . price($credit) . '
'.$langs->trans("Balancing").':'.$langs->trans("Balancing").': ' . price($credit - $debit) . '' . price($credit - $debit) . '
"; - print ''; - //print '' . $langs->trans('AccountancyAutoLettering') . ''; + print '
'."\n"; + print $letteringbutton; + print '
'; + print "
"; $db->free($resql); } else { diff --git a/htdocs/accountancy/bookkeeping/thirdparty_lettering_supplier.php b/htdocs/accountancy/bookkeeping/thirdparty_lettering_supplier.php index 1d80bda7710..3795099c78d 100644 --- a/htdocs/accountancy/bookkeeping/thirdparty_lettering_supplier.php +++ b/htdocs/accountancy/bookkeeping/thirdparty_lettering_supplier.php @@ -3,8 +3,8 @@ * Copyright (C) 2005 Laurent Destailleur * Copyright (C) 2013 Olivier Geffroy * Copyright (C) 2013 Florian Henry - * Copyright (C) 2013-2018 Alexandre Spangaro - * Copyright (C) 2018 Frédéric France + * Copyright (C) 2013-2019 Alexandre Spangaro + * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -30,6 +30,7 @@ require '../../main.inc.php'; require_once DOL_DOCUMENT_ROOT . '/core/class/html.formaccounting.class.php'; require_once DOL_DOCUMENT_ROOT . '/accountancy/class/bookkeeping.class.php'; require_once DOL_DOCUMENT_ROOT . '/accountancy/class/lettering.class.php'; +require_once DOL_DOCUMENT_ROOT . '/accountancy/class/accountingjournal.class.php'; require_once DOL_DOCUMENT_ROOT . '/societe/class/societe.class.php'; require_once DOL_DOCUMENT_ROOT . '/core/lib/company.lib.php'; @@ -53,27 +54,31 @@ $offset = $limit * $page; $pageprev = $page - 1; $pagenext = $page + 1; if ($sortorder == "") - $sortorder = "DESC"; + $sortorder = "ASC"; if ($sortfield == "") $sortfield = "bk.doc_date"; -$search_year = GETPOST("search_year",'int'); -$search_doc_type = GETPOST("search_doc_type",'alpha'); +/* +$search_date_start = dol_mktime(0, 0, 0, GETPOST('date_startmonth', 'int'), GETPOST('date_startday', 'int'), GETPOST('date_startyear', 'int')); +$search_date_end = dol_mktime(0, 0, 0, GETPOST('date_endmonth', 'int'), GETPOST('date_endday', 'int'), GETPOST('date_endyear', 'int')); +//$search_doc_type = GETPOST("search_doc_type",'alpha'); $search_doc_ref = GETPOST("search_doc_ref",'alpha'); +*/ $lettering = GETPOST('lettering', 'alpha'); if (!empty($lettering)) { $action=$lettering; } -// Did we click on purge search criteria ? -// All tests are required to be compatible with all browsers -if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') || GETPOST('button_removefilter','alpha')) +/* +if (GETPOST('button_removefilter_x','alpha') || GETPOST('button_removefilter.x','alpha') || GETPOST('button_removefilter','alpha')) // All tests are required to be compatible with all browsers { - $search_year=''; - $search_doc_type=''; + $search_date_start = ''; + $search_date_end = ''; + //$search_doc_type=''; $search_doc_ref=''; } +*/ // Security check @@ -103,6 +108,7 @@ if ($action == 'lettering') { } } +/* if ($action == 'autolettrage') { $result = $lettering->letteringThirdparty($socid); @@ -112,7 +118,7 @@ if ($action == 'autolettrage') { $error++; } } - +*/ /* * View @@ -143,10 +149,8 @@ $sql .= " bk.credit, bk.montant , bk.sens , bk.code_journal , bk.piece_num, bk.l $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping as bk"; $sql .= " WHERE (bk.subledger_account = '" . $object->code_compta_fournisseur . "' AND bk.numero_compte = '" . $conf->global->ACCOUNTING_ACCOUNT_SUPPLIER . "' )"; -if (dol_strlen($search_year)) { - $date_start = dol_mktime(0, 0, 0, 1, 1, $search_year); - $date_end = dol_mktime(23, 59, 59, 12, 31, $search_year); - $sql .= " AND ( bk.doc_date BETWEEN '".$db->idate($date_start)."' AND '".$db->idate($date_end)."' )"; +if (dol_strlen($search_date_start) || dol_strlen($search_date_end)) { + $sql .= " AND (bk.doc_date BETWEEN '".$db->idate($search_date_start)."' AND '".$db->idate($search_date_end)."' )"; } $sql.= ' AND bk.entity IN ('.getEntity('accountingbookkeeping').')'; @@ -193,31 +197,51 @@ if ($resql) { print '
'; print ''; - print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'title_companies', 0, '', '', $limit); + $letteringbutton = '\'; + + print_barre_liste($title, $page, $_SERVER["PHP_SELF"], $param, $sortfield, $sortorder, '', $num, $nbtotalofrecords, 'title_companies', 0, $letteringbutton, '', $limit); print ""; - print ''; - print_liste_field_titre("Doctype", $_SERVER["PHP_SELF"], "bk.doc_type","",$param,"",$sortfield,$sortorder); - print_liste_field_titre("Docdate", $_SERVER["PHP_SELF"], "bk.doc_date","",$param,"",$sortfield,$sortorder); - print_liste_field_titre("Docref", $_SERVER["PHP_SELF"], "bk.doc_ref","",$param,"",$sortfield,$sortorder); - print_liste_field_titre("LabelAccount", $_SERVER["PHP_SELF"], "bk.label_compte","",$param,"",$sortfield,$sortorder); - print_liste_field_titre("Debit", $_SERVER["PHP_SELF"], "bk.debit","",$param,"",$sortfield,$sortorder); - print_liste_field_titre("Credit", $_SERVER["PHP_SELF"], "bk.credit","",$param,"",$sortfield,$sortorder); - print_liste_field_titre("Balancing", $_SERVER["PHP_SELF"], "","",$param,"",$sortfield,$sortorder); - print_liste_field_titre("Codejournal", $_SERVER["PHP_SELF"], "bk.code_journal","",$param,"",$sortfield,$sortorder); - print_liste_field_titre("LetteringCode", $_SERVER["PHP_SELF"], "bk.lettering_code", "", $param, "", $sortfield, $sortorder); - print "\n"; + + /* + print ''; + //print ''; + + // Date + print ''; + + // Piece + print ''; + + print ''; + print ''; + print ''; + */ print ''; - print ''; - print ''; - print ''; - print ''; - print ''; - print ''; + //print_liste_field_titre("Doctype", $_SERVER["PHP_SELF"], "bk.doc_type", "", $param, "", $sortfield, $sortorder); + print_liste_field_titre("Docdate", $_SERVER["PHP_SELF"], "bk.doc_date", "", $param, "", $sortfield, $sortorder, 'center '); + print_liste_field_titre("Piece", $_SERVER["PHP_SELF"], "bk.doc_ref", "", $param, "", $sortfield, $sortorder); + print_liste_field_titre("LabelAccount", $_SERVER["PHP_SELF"], "bk.label_compte", "", $param, "", $sortfield, $sortorder); + print_liste_field_titre("Debit", $_SERVER["PHP_SELF"], "bk.debit", "", $param, "", $sortfield, $sortorder); + print_liste_field_titre("Credit", $_SERVER["PHP_SELF"], "bk.credit", "", $param, "", $sortfield, $sortorder); + print_liste_field_titre("Balancing", $_SERVER["PHP_SELF"], "", "", $param, "", $sortfield, $sortorder); + print_liste_field_titre("Codejournal", $_SERVER["PHP_SELF"], "bk.code_journal", "", $param, "", $sortfield, $sortorder, 'center '); + print_liste_field_titre("LetteringCode", $_SERVER["PHP_SELF"], "bk.lettering_code", "", $param, "", $sortfield, $sortorder, 'center '); + print_liste_field_titre("", "","",'','',"",$sortfield,$sortorder,'maxwidthsearch center '); + print "\n"; $solde = 0; $tmp = ''; @@ -228,48 +252,53 @@ if ($resql) { print ''; - if (empty($obj->lettering_code)) { - print '' . "\n"; - } else { - print '' . "\n"; - } - - print ''; + //print '' . "\n"; + print ''; print ''; print ''; - print ''; - print ''; - print ''; - print ''; + print ''; + print ''; + print ''; + + // Journal + $accountingjournal = new AccountingJournal($db); + $result = $accountingjournal->fetch('',$obj->code_journal); + $journaltoshow = (($result > 0)?$accountingjournal->getNomUrl(0,0,0,'',0) : $obj->code_journal); + print ''; if (empty($obj->lettering_code)) { - print ''; - } else - print ''; + print ''; + print '' . "\n"; + } else { + print ''; + print ''; + } print "\n"; } print ''; - print '' . "\n"; - print ''; - print ''; - print ''; + print '' . "\n"; + print ''; + print ''; + print ''; print "\n"; print ''; - print '' . "\n"; + print '' . "\n"; print ''; - print ''; - print ''; + print ''; + print ''; print "\n"; print "
'; + print '
'; + print $langs->trans('From') . ' '; + print $form->selectDate($search_date_start, 'date_creation_start', 0, 0, 1); + print '
'; + print '
'; + print $langs->trans('to') . ' '; + print $form->selectDate($search_date_end, 'date_creation_end', 0, 0, 1); + print '
'; + print '
 '; + $searchpicto = $form->showFilterButtons(); + print $searchpicto; + print '
 '; - $searchpicto=$form->showFilterButtons(); - print $searchpicto; - print '
'; - print img_edit(); - print ' ' . $obj->doc_type . '' . $obj->doc_type . '' . dol_print_date($db->jdate($obj->doc_date), 'day') . '' . $obj->doc_type . '' . dol_print_date($db->jdate($obj->doc_date), 'day') . '' . $obj->doc_ref . '' . $obj->label_compte . '' . price($obj->debit) . '' . price($obj->credit) . '' . price(round($solde, 2)) . '' . $obj->code_journal . '' . price($obj->debit) . '' . price($obj->credit) . '' . price(round($solde, 2)) . '' . $journaltoshow . '' . $obj->lettering_code . ''; + print img_edit(); + print '' . $obj->lettering_code . '
'.$langs->trans("Total").':' . price($debit) . '' . price($credit) . ''.$langs->trans("Total").':' . price($debit) . '' . price($credit) . '
'.$langs->trans("Balancing").':'.$langs->trans("Balancing").': ' . price($credit - $debit) . '' . price($credit - $debit) . '
"; - print ''; - //print ''.$langs->trans('AccountancyAutoLettering').''; + print '
'."\n"; + print $letteringbutton; + print '
'; + print "
"; $db->free($resql); } else { diff --git a/htdocs/accountancy/class/lettering.class.php b/htdocs/accountancy/class/lettering.class.php index b0ad8150ad4..174f5fa42f5 100644 --- a/htdocs/accountancy/class/lettering.class.php +++ b/htdocs/accountancy/class/lettering.class.php @@ -1,7 +1,7 @@ * Copyright (C) 2013 Olivier Geffroy - * Copyright (C) 2013-2018 Alexandre Spangaro + * Copyright (C) 2013-2019 Alexandre Spangaro * Copyright (C) 2018 Frédéric France * * This program is free software; you can redistribute it and/or modify @@ -66,13 +66,13 @@ class Lettering extends BookKeeping $sql .= " , bk.sens , bk.code_journal , bk.piece_num, bk.date_lettering, bu.url_id , bu.type "; $sql .= " FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping as bk"; $sql .= " LEFT JOIN " . MAIN_DB_PREFIX . "bank_url as bu ON(bk.fk_doc = bu.fk_bank AND bu.type IN ('payment', 'payment_supplier') ) "; - $sql .= " WHERE ( "; + $sql .= " WHERE ( "; if (! empty($object->code_compta)) - $sql .= " bk.subledger_account = '" . $object->code_compta . "' "; + $sql .= " bk.subledger_account = '" . $object->code_compta . "' "; if (! empty($object->code_compta) && ! empty($object->code_compta_fournisseur)) - $sql .= " OR "; + $sql .= " OR "; if (! empty($object->code_compta_fournisseur)) - $sql .= " bk.subledger_account = '" . $object->code_compta_fournisseur . "' "; + $sql .= " bk.subledger_account = '" . $object->code_compta_fournisseur . "' "; $sql .= " ) AND (bk.date_lettering ='' OR bk.date_lettering IS NULL) "; $sql .= " AND (bk.lettering_code != '' OR bk.lettering_code IS NULL) "; @@ -128,15 +128,15 @@ class Lettering extends BookKeeping $sql .= " AND facf.entity = ".$conf->entity; $sql .= " AND ( "; if (! empty($object->code_compta)) { - $sql .= " bk.subledger_account = '" . $object->code_compta . "' "; + $sql .= " bk.subledger_account = '" . $object->code_compta . "' "; } if (! empty($object->code_compta) && ! empty($object->code_compta_fournisseur)) { - $sql .= " OR "; + $sql .= " OR "; } if (! empty($object->code_compta_fournisseur)) { - $sql .= " bk.subledger_account = '" . $object->code_compta_fournisseur . "' "; + $sql .= " bk.subledger_account = '" . $object->code_compta_fournisseur . "' "; } - $sql .= " ) "; + $sql .= ") "; $resql2 = $this->db->query($sql); if ($resql2) { @@ -253,7 +253,7 @@ class Lettering extends BookKeeping $error++; } - $sql = "SELECT SUM(ABS(debit)) as deb, SUM(ABS(credit)) as cred FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping WHERE "; + $sql = "SELECT SUM(ABS(debit)) as deb, SUM(ABS(credit)) as cred FROM " . MAIN_DB_PREFIX . "accounting_bookkeeping WHERE "; $sql .= " rowid IN (" . implode(',', $ids) . ") "; $result = $this->db->query($sql); if ($result) { diff --git a/htdocs/langs/en_US/accountancy.lang b/htdocs/langs/en_US/accountancy.lang index 31f3d5e264a..c7e9baa04ac 100644 --- a/htdocs/langs/en_US/accountancy.lang +++ b/htdocs/langs/en_US/accountancy.lang @@ -161,6 +161,7 @@ LabelAccount=Label account LabelOperation=Label operation Sens=Sens LetteringCode=Lettering code +Lettering=Lettering Codejournal=Journal NumPiece=Piece number TransactionNumShort=Num. transaction