diff --git a/htdocs/compta/sociales/list.php b/htdocs/compta/sociales/list.php
index 48c6936a225..b83df0b90b6 100644
--- a/htdocs/compta/sociales/list.php
+++ b/htdocs/compta/sociales/list.php
@@ -37,6 +37,7 @@ if ($user->socid) {
$result = restrictedArea($user, 'tax', '', '', 'charges');
require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php';
+require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formsocialcontrib.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/class/html.formother.class.php';
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
@@ -63,6 +64,8 @@ $search_year_lim = GETPOST('search_year_lim', 'int');
$search_project_ref = GETPOST('search_project_ref', 'alpha');
$search_project = GETPOST('search_project', 'alpha');
$search_users = GETPOST('search_users');
+$search_type = GETPOST('search_type', 'int');
+$search_account = GETPOST('search_account', 'int');
$limit = GETPOST('limit', 'int') ? GETPOST('limit', 'int') : $conf->liste_limit;
$sortfield = GETPOST("sortfield", 'alpha');
@@ -103,12 +106,14 @@ $arrayfields = array(
'cs.rowid' =>array('label'=>"Ref", 'checked'=>1, 'position'=>10),
'cs.libelle' =>array('label'=>"Label", 'checked'=>1, 'position'=>20),
'cs.fk_type' =>array('label'=>"Type", 'checked'=>1, 'position'=>30),
- 'cs.fk_user' =>array('label'=>"Employee", 'checked'=>1, 'position'=>30),
- 'p.ref' =>array('label'=>"ProjectRef", 'checked'=>1, 'position'=>40, 'enable'=>(!empty($conf->projet->enabled))),
- 'cs.date_ech' =>array('label'=>"Date", 'checked'=>1, 'position'=>50),
- 'cs.periode' =>array('label'=>"PeriodEndDate", 'checked'=>1, 'position'=>60),
- 'cs.amount' =>array('label'=>"Amount", 'checked'=>1, 'position'=>70),
- 'cs.paye' =>array('label'=>"Status", 'checked'=>1, 'position'=>80),
+ 'cs.date_ech' =>array('label'=>"Date", 'checked'=>1, 'position'=>40),
+ 'cs.periode' =>array('label'=>"PeriodEndDate", 'checked'=>1, 'position'=>50),
+ 'p.ref' =>array('label'=>"ProjectRef", 'checked'=>1, 'position'=>60, 'enable'=>(!empty($conf->projet->enabled))),
+ 'cs.fk_user' =>array('label'=>"Employee", 'checked'=>1, 'position'=>70),
+ 'cs.fk_mode_reglement' =>array('checked'=>1, 'position'=>80, 'label'=>"DefaultPaymentMode"),
+ 'cs.fk_account' =>array('checked'=>1, 'position'=>90, 'label'=>"DefaultBankAccount"),
+ 'cs.amount' =>array('label'=>"Amount", 'checked'=>1, 'position'=>100),
+ 'cs.paye' =>array('label'=>"Status", 'checked'=>1, 'position'=>110),
);
$arrayfields = dol_sort_array($arrayfields, 'position');
@@ -144,6 +149,8 @@ if (empty($reshook)) {
$search_project_ref = '';
$search_project = '';
$search_users = '';
+ $search_type = '';
+ $search_account = '';
$search_array_options = array();
}
}
@@ -154,6 +161,7 @@ if (empty($reshook)) {
$form = new Form($db);
$formother = new FormOther($db);
+$bankstatic = new Account($db);
$formsocialcontrib = new FormSocialContrib($db);
$chargesociale_static = new ChargeSociales($db);
if (!empty($conf->projet->enabled)) {
@@ -167,10 +175,13 @@ $sql .= " cs.amount, cs.date_ech, cs.libelle as label, cs.paye, cs.periode,";
if (!empty($conf->projet->enabled)) {
$sql .= " p.rowid as project_id, p.ref as project_ref, p.title as project_label,";
}
-$sql .= " c.libelle as type_label,";
-$sql .= " SUM(pc.amount) as alreadypayed";
+$sql .= " c.libelle as type_label, cs.fk_account,";
+$sql .= " ba.label as blabel, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.iban_prefix as iban, ba.bic, ba.currency_code, ba.clos,";
+$sql .= " SUM(pc.amount) as alreadypayed, pay.code as payment_code";
$sql .= " FROM ".MAIN_DB_PREFIX."c_chargesociales as c,";
$sql .= " ".MAIN_DB_PREFIX."chargesociales as cs";
+$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."bank_account as ba ON (cs.fk_account = ba.rowid)";
+$sql .= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as pay ON (cs.fk_mode_reglement = pay.id)';
if (!empty($conf->projet->enabled)) {
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."projet as p ON p.rowid = cs.fk_projet";
}
@@ -193,6 +204,12 @@ if (!empty($conf->projet->enabled)) {
if (!empty($search_users)) {
$sql .= ' AND cs.fk_user IN('.implode(', ', $search_users).')';
}
+if (!empty($search_type) && $search_type > 0) {
+ $sql .= ' AND cs.fk_mode_reglement='.$search_type;
+}
+if (!empty($search_account) && $search_account > 0) {
+ $sql .= ' AND cs.fk_account='.$search_account;
+}
if ($search_amount) {
$sql .= natural_search("cs.amount", $search_amount, 1);
}
@@ -212,7 +229,7 @@ if ($year > 0) {
if ($search_typeid) {
$sql .= " AND cs.fk_type=".$db->escape($search_typeid);
}
-$sql .= " GROUP BY cs.rowid, cs.fk_type, cs.fk_user, cs.amount, cs.date_ech, cs.libelle, cs.paye, cs.periode, c.libelle";
+$sql .= " GROUP BY cs.rowid, cs.fk_type, cs.fk_user, cs.amount, cs.date_ech, cs.libelle, cs.paye, cs.periode, c.libelle, cs.fk_account, ba.label, ba.ref, ba.number, ba.account_number, ba.iban_prefix, ba.bic, ba.currency_code, ba.clos";
if (!empty($conf->projet->enabled)) {
$sql .= ", p.rowid, p.ref, p.title";
}
@@ -263,6 +280,12 @@ if ($search_users) {
$param .= '&search_users[]='.urlencode($id_user);
}
}
+if ($search_type) {
+ $param .= '&search_type='.urlencode($search_type);
+}
+if ($search_account) {
+ $param .= '&search_account='.$search_account;
+}
if ($search_status != '' && $search_status != '-1') {
$param .= '&search_status='.urlencode($search_status);
}
@@ -346,19 +369,6 @@ if (!empty($arrayfields['cs.fk_type']['checked'])) {
print '';
}
-if (!empty($arrayfields['cs.fk_user']['checked'])) {
- // Employee
- print '
';
- print $form->select_dolusers($search_users, 'search_users', 1, null, 0, '', '', '0', '0', 0, '', 0, '', '', 0, 0, true);
-}
-
-// Filter: Project ref
-if (!empty($arrayfields['p.ref']['checked'])) {
- print ' | ';
- print '';
- print ' | ';
-}
-
// Filter: Date (placeholder)
if (!empty($arrayfields['cs.date_ech']['checked'])) {
print '';
@@ -376,6 +386,33 @@ if (!empty($arrayfields['cs.periode']['checked'])) {
print ' | ';
}
+// Filter: Project ref
+if (!empty($arrayfields['p.ref']['checked'])) {
+ print '';
+ print '';
+ print ' | ';
+}
+
+if (!empty($arrayfields['cs.fk_user']['checked'])) {
+ // Employee
+ print '';
+ print $form->select_dolusers($search_users, 'search_users', 1, null, 0, '', '', '0', '0', 0, '', 0, '', '', 0, 0, true);
+}
+
+// Filter: Type
+if (!empty($arrayfields['cs.fk_mode_reglement']['checked'])) {
+ print ' | ';
+ $form->select_types_paiements($search_type, 'search_type', '', 0, 1, 1, 16);
+ print ' | ';
+}
+
+// Filter: Bank Account
+if (!empty($arrayfields['cs.fk_account']['checked'])) {
+ print '';
+ $form->select_comptes($search_account, 'search_account', 0, '', 1);
+ print ' | ';
+}
+
// Filter: Amount
if (!empty($arrayfields['cs.amount']['checked'])) {
print '';
@@ -416,18 +453,24 @@ if (!empty($arrayfields['cs.libelle']['checked'])) {
if (!empty($arrayfields['cs.fk_type']['checked'])) {
print_liste_field_titre($arrayfields['cs.fk_type']['label'], $_SERVER["PHP_SELF"], "cs.fk_type", '', $param, 'class="left"', $sortfield, $sortorder);
}
-if (!empty($arrayfields['cs.fk_user']['checked'])) {
- print_liste_field_titre("Employee", $_SERVER["PHP_SELF"], "u.lastname", "", $param, 'class="left"', $sortfield, $sortorder);
-}
-if (!empty($arrayfields['p.ref']['checked'])) {
- print_liste_field_titre($arrayfields['p.ref']['label'], $_SERVER["PHP_SELF"], "p.ref", '', $param, '', $sortfield, $sortorder);
-}
if (!empty($arrayfields['cs.date_ech']['checked'])) {
print_liste_field_titre($arrayfields['cs.date_ech']['label'], $_SERVER["PHP_SELF"], "cs.date_ech", '', $param, 'align="center"', $sortfield, $sortorder);
}
if (!empty($arrayfields['cs.periode']['checked'])) {
print_liste_field_titre($arrayfields['cs.periode']['label'], $_SERVER["PHP_SELF"], "cs.periode", '', $param, 'align="center"', $sortfield, $sortorder);
}
+if (!empty($arrayfields['p.ref']['checked'])) {
+ print_liste_field_titre($arrayfields['p.ref']['label'], $_SERVER["PHP_SELF"], "p.ref", '', $param, '', $sortfield, $sortorder);
+}
+if (!empty($arrayfields['cs.fk_user']['checked'])) {
+ print_liste_field_titre("Employee", $_SERVER["PHP_SELF"], "u.lastname", "", $param, 'class="left"', $sortfield, $sortorder);
+}
+if (!empty($arrayfields['cs.fk_mode_reglement']['checked'])) {
+ print_liste_field_titre($arrayfields['cs.fk_mode_reglement']['label'], $_SERVER["PHP_SELF"], "cs.fk_mode_reglement", '', $param, 'class="right"', $sortfield, $sortorder);
+}
+if (!empty($arrayfields['cs.fk_account']['checked'])) {
+ print_liste_field_titre($arrayfields['cs.fk_account']['label'], $_SERVER["PHP_SELF"], "cs.fk_account", '', $param, 'class="right"', $sortfield, $sortorder);
+}
if (!empty($arrayfields['cs.amount']['checked'])) {
print_liste_field_titre($arrayfields['cs.amount']['label'], $_SERVER["PHP_SELF"], "cs.amount", '', $param, 'class="right"', $sortfield, $sortorder);
}
@@ -492,37 +535,6 @@ while ($i < min($num, $limit)) {
}
}
- if (!empty($arrayfields['cs.fk_user']['checked'])) {
- // Employee
- print " | ";
- if (!empty($obj->fk_user)) {
- if (!empty($TLoadedUsers[$obj->fk_user])) {
- $ustatic = $TLoadedUsers[$obj->fk_user];
- } else {
- $ustatic = new User($db);
- $ustatic->fetch($obj->fk_user);
- $TLoadedUsers[$obj->fk_user] = $ustatic;
- }
- print $ustatic->getNomUrl(-1);
- }
- print " | \n";
- if (!$i) {
- $totalarray['nbfield']++;
- }
- }
-
- // Project ref
- if (!empty($arrayfields['p.ref']['checked'])) {
- print '';
- if ($obj->project_id > 0) {
- print $projectstatic->getNomUrl(1);
- }
- print ' | ';
- if (!$i) {
- $totalarray['nbfield']++;
- }
- }
-
// Date
if (!empty($arrayfields['cs.date_ech']['checked'])) {
print ''.dol_print_date($db->jdate($obj->date_ech), 'day').' | ';
@@ -545,6 +557,70 @@ while ($i < min($num, $limit)) {
}
}
+ // Project ref
+ if (!empty($arrayfields['p.ref']['checked'])) {
+ print '';
+ if ($obj->project_id > 0) {
+ print $projectstatic->getNomUrl(1);
+ }
+ print ' | ';
+ if (!$i) {
+ $totalarray['nbfield']++;
+ }
+ }
+
+ if (!empty($arrayfields['cs.fk_user']['checked'])) {
+ // Employee
+ print "";
+ if (!empty($obj->fk_user)) {
+ if (!empty($TLoadedUsers[$obj->fk_user])) {
+ $ustatic = $TLoadedUsers[$obj->fk_user];
+ } else {
+ $ustatic = new User($db);
+ $ustatic->fetch($obj->fk_user);
+ $TLoadedUsers[$obj->fk_user] = $ustatic;
+ }
+ print $ustatic->getNomUrl(-1);
+ }
+ print " | \n";
+ if (!$i) {
+ $totalarray['nbfield']++;
+ }
+ }
+
+ // Type
+ if (!empty($arrayfields['cs.fk_mode_reglement']['checked'])) {
+ print '';
+ if (!empty($obj->payment_code)) print $langs->trans("PaymentTypeShort".$obj->payment_code);
+ print ' | ';
+ if (!$i) {
+ $totalarray['nbfield']++;
+ }
+ }
+
+ // Account
+ if (!empty($arrayfields['cs.fk_account']['checked'])) {
+ print '';
+ if ($obj->fk_account > 0) {
+ $bankstatic->id = $obj->fk_account;
+ $bankstatic->ref = $obj->bref;
+ $bankstatic->number = $obj->bnumber;
+ $bankstatic->iban = $obj->iban;
+ $bankstatic->bic = $obj->bic;
+ $bankstatic->currency_code = $langs->trans("Currency".$obj->currency_code);
+ $bankstatic->account_number = $obj->account_number;
+ $bankstatic->clos = $obj->clos;
+
+ //$accountingjournal->fetch($obj->fk_accountancy_journal);
+ //$bankstatic->accountancy_journal = $accountingjournal->getNomUrl(0, 1, 1, '', 1);
+
+ $bankstatic->label = $obj->blabel;
+ print $bankstatic->getNomUrl(1);
+ }
+ print ' | ';
+ if (!$i) $totalarray['nbfield']++;
+ }
+
// Amount
if (!empty($arrayfields['cs.amount']['checked'])) {
print ''.price($obj->amount).' | ';
diff --git a/htdocs/compta/sociales/payments.php b/htdocs/compta/sociales/payments.php
index 99d8efd3665..d5079ed3c06 100644
--- a/htdocs/compta/sociales/payments.php
+++ b/htdocs/compta/sociales/payments.php
@@ -30,6 +30,7 @@
require '../../main.inc.php';
require_once DOL_DOCUMENT_ROOT.'/compta/tva/class/tva.class.php';
+require_once DOL_DOCUMENT_ROOT.'/user/class/user.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/chargesociales.class.php';
require_once DOL_DOCUMENT_ROOT.'/compta/sociales/class/paymentsocialcontribution.class.php';
require_once DOL_DOCUMENT_ROOT.'/salaries/class/salary.class.php';
@@ -44,7 +45,7 @@ $hookmanager = new HookManager($db);
$hookmanager->initHooks(array('specialexpensesindex'));
// Load translation files required by the page
-$langs->loadLangs(array('compta', 'bills'));
+$langs->loadLangs(array('compta', 'bills', 'hrm'));
// Security check
if ($user->socid) {
@@ -96,8 +97,10 @@ if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x'
$tva_static = new Tva($db);
$socialcontrib = new ChargeSociales($db);
$payment_sc_static = new PaymentSocialContribution($db);
+$userstatic = new User($db);
$sal_static = new Salary($db);
$accountstatic = new Account($db);
+$accountlinestatic = new AccountLine($db);
$formsocialcontrib = new FormSocialContrib($db);
$title = $langs->trans("SocialContributionsPayments");
@@ -140,13 +143,15 @@ $sql = "SELECT c.id, c.libelle as label,";
$sql .= " cs.rowid, cs.libelle, cs.fk_type as type, cs.periode, cs.date_ech, cs.amount as total,";
$sql .= " pc.rowid as pid, pc.datep, pc.amount as totalpaye, pc.num_paiement as num_payment, pc.fk_bank,";
$sql .= " pct.code as payment_code,";
-$sql .= " ba.rowid as bid, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.fk_accountancy_journal, ba.label as blabel";
+$sql .= " u.rowid uid, u.lastname, u.firstname, u.email, u.login, u.admin,";
+$sql .= " ba.rowid as bid, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.fk_accountancy_journal, ba.label as blabel, ba.iban_prefix as iban, ba.bic, ba.currency_code, ba.clos";
$sql .= " FROM ".MAIN_DB_PREFIX."c_chargesociales as c,";
$sql .= " ".MAIN_DB_PREFIX."chargesociales as cs";
-$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."paiementcharge as pc ON pc.fk_charge = cs.rowid";
+$sql .= " INNER JOIN ".MAIN_DB_PREFIX."paiementcharge as pc ON pc.fk_charge = cs.rowid";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_paiement as pct ON pc.fk_typepaiement = pct.id";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."bank as b ON pc.fk_bank = b.rowid";
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."bank_account as ba ON b.fk_account = ba.rowid";
+$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."user as u ON u.rowid = cs.fk_user";
$sql .= " WHERE cs.fk_type = c.id";
$sql .= " AND cs.entity IN (".getEntity("tax").")";
if ($search_sc_type > 0) {
@@ -160,7 +165,11 @@ if ($year > 0) {
$sql .= " OR (cs.periode IS NULL AND cs.date_ech between '".$db->idate(dol_get_first_day($year))."' AND '".$db->idate(dol_get_last_day($year))."')";
$sql .= ")";
}
-if (preg_match('/^cs\./', $sortfield) || preg_match('/^c\./', $sortfield) || preg_match('/^pc\./', $sortfield) || preg_match('/^pct\./', $sortfield)) {
+if (preg_match('/^cs\./', $sortfield)
+ || preg_match('/^c\./', $sortfield)
+ || preg_match('/^pc\./', $sortfield)
+ || preg_match('/^pct\./', $sortfield)
+ || preg_match('/^u\./', $sortfield)) {
$sql .= $db->order($sortfield, $sortorder);
}
@@ -208,8 +217,11 @@ print ' | ';
print ' | ';
print ' | ';
print ' | ';
+print ' | ';
+print ' | ';
if (!empty($conf->banque->enabled)) {
print ' | ';
+ print ' | ';
}
print ' | ';
print '';
@@ -219,16 +231,19 @@ print ' | ';
print "\n";
print '';
-print_liste_field_titre("PeriodEndDate", $_SERVER["PHP_SELF"], "cs.date_ech", "", $param, 'width="140px"', $sortfield, $sortorder);
-print_liste_field_titre("Label", $_SERVER["PHP_SELF"], "c.libelle", "", $param, '', $sortfield, $sortorder);
-print_liste_field_titre("Type", $_SERVER["PHP_SELF"], "cs.fk_type", "", $param, '', $sortfield, $sortorder);
-print_liste_field_titre("ExpectedToPay", $_SERVER["PHP_SELF"], "cs.amount", "", $param, 'class="right"', $sortfield, $sortorder);
print_liste_field_titre("RefPayment", $_SERVER["PHP_SELF"], "pc.rowid", "", $param, '', $sortfield, $sortorder);
+print_liste_field_titre("SocialContribution", $_SERVER["PHP_SELF"], "c.libelle", "", $param, '', $sortfield, $sortorder);
+print_liste_field_titre("Type", $_SERVER["PHP_SELF"], "cs.fk_type", "", $param, '', $sortfield, $sortorder);
+print_liste_field_titre("PeriodEndDate", $_SERVER["PHP_SELF"], "cs.date_ech", "", $param, 'width="140px"', $sortfield, $sortorder);
print_liste_field_titre("DatePayment", $_SERVER["PHP_SELF"], "pc.datep", "", $param, 'align="center"', $sortfield, $sortorder);
-print_liste_field_titre("Type", $_SERVER["PHP_SELF"], "pct.code", "", $param, '', $sortfield, $sortorder);
+print_liste_field_titre("Employee", $_SERVER["PHP_SELF"], "u.rowid", "", $param, "", $sortfield, $sortorder);
+print_liste_field_titre("PaymentMode", $_SERVER["PHP_SELF"], "pct.code", "", $param, '', $sortfield, $sortorder);
+print_liste_field_titre("Numero", $_SERVER["PHP_SELF"], "pc.num_paiement", "", $param, '', $sortfield, $sortorder, '', 'ChequeOrTransferNumber');
+print_liste_field_titre("BankTransactionLine", $_SERVER["PHP_SELF"], "pc.fk_bank", "", $param, '', $sortfield, $sortorder);
if (!empty($conf->banque->enabled)) {
print_liste_field_titre("Account", $_SERVER["PHP_SELF"], "ba.label", "", $param, "", $sortfield, $sortorder);
}
+print_liste_field_titre("ExpectedToPay", $_SERVER["PHP_SELF"], "cs.amount", "", $param, 'class="right"', $sortfield, $sortorder);
print_liste_field_titre("PayedByThisPayment", $_SERVER["PHP_SELF"], "pc.amount", "", $param, 'class="right"', $sortfield, $sortorder);
print_liste_field_titre('');
print "
\n";
@@ -246,52 +261,80 @@ $totalpaye = 0;
while ($i < min($num, $limit)) {
$obj = $db->fetch_object($resql);
print '';
+ // Ref payment
+ $payment_sc_static->id = $obj->pid;
+ $payment_sc_static->ref = $obj->pid;
+ print '| '.$payment_sc_static->getNomUrl(1)." | \n";
+ // Label
+ print '';
+ $socialcontrib->id = $obj->rowid;
+ $socialcontrib->ref = empty($obj->libelle) ? $obj->label : $obj->libelle;
+ $socialcontrib->label = empty($obj->libelle) ? $obj->label : $obj->libelle;
+ print $socialcontrib->getNomUrl(1, '20');
+ print ' | ';
+ // Type
+ print ''.$obj->label.' | ';
// Date
$date = $obj->periode;
if (empty($date)) {
$date = $obj->date_ech;
}
print ''.dol_print_date($date, 'day').' | ';
- // Label
- print '';
- $socialcontrib->id = $obj->rowid;
- $socialcontrib->ref = $obj->label;
- $socialcontrib->label = $obj->label;
- print $socialcontrib->getNomUrl(1, '20');
- print ' | ';
- // Type
- print ''.$obj->label.' | ';
- // Expected to pay
- print ''.price($obj->total).' | ';
- // Ref payment
- $payment_sc_static->id = $obj->pid;
- $payment_sc_static->ref = $obj->pid;
- print ''.$payment_sc_static->getNomUrl(1)." | \n";
// Date payment
print ''.dol_print_date($db->jdate($obj->datep), 'day').' | ';
+
+ // Employee
+ print "";
+ if (!empty($obj->uid)) {
+ $userstatic->id = $obj->uid;
+ $userstatic->lastname = $obj->lastname;
+ $userstatic->firstname = $obj->firstname;
+ $userstatic->admin = $obj->admin;
+ $userstatic->login = $obj->login;
+ $userstatic->email = $obj->email;
+ $userstatic->socid = $obj->fk_soc;
+ $userstatic->statut = $obj->status;
+ print $userstatic->getNomUrl(1);
+ print " | \n";
+ }
+
// Type payment
print '';
if ($obj->payment_code) {
print $langs->trans("PaymentTypeShort".$obj->payment_code).' ';
}
- print $obj->num_payment.' | ';
+ print '';
+
+ print ''.$obj->num_payment.' | ';
+
// Account
if (!empty($conf->banque->enabled)) {
+ // Bank transaction
+ print '';
+ $accountlinestatic->id = $obj->fk_bank;
+ print $accountlinestatic->getNomUrl(1);
+ print ' | ';
+
print '';
if ($obj->fk_bank > 0) {
- //$accountstatic->fetch($obj->fk_bank);
$accountstatic->id = $obj->bid;
$accountstatic->ref = $obj->bref;
$accountstatic->number = $obj->bnumber;
$accountstatic->accountancy_number = $obj->account_number;
$accountstatic->accountancy_journal = $obj->accountancy_journal;
$accountstatic->label = $obj->blabel;
+ $accountstatic->iban = $obj->iban;
+ $accountstatic->bic = $obj->bic;
+ $accountstatic->currency_code = $langs->trans("Currency".$obj->currency_code);
+ $accountstatic->clos = $obj->clos;
print $accountstatic->getNomUrl(1);
} else {
print ' ';
}
print ' | ';
}
+ // Expected to pay
+ print ''.price($obj->total).' | ';
// Paid
print '';
if ($obj->totalpaye) {
@@ -315,8 +358,11 @@ print ' | | '; // A total here has no sense
print ' | ';
print ' | ';
print ' | ';
+print ' | ';
+print ' | ';
if (!empty($conf->banque->enabled)) {
print ' | ';
+ print ' | ';
}
print ''.price($totalpaye)." | ";
print ' | ';
diff --git a/htdocs/compta/tva/list.php b/htdocs/compta/tva/list.php
index c7146023aab..b509570fa41 100644
--- a/htdocs/compta/tva/list.php
+++ b/htdocs/compta/tva/list.php
@@ -85,7 +85,8 @@ $arrayfields = array(
't.rowid' =>array('checked'=>1, 'position'=>10, 'label'=>"Ref",),
't.label' =>array('checked'=>1, 'position'=>20, 'label'=>"Label"),
't.datev' =>array('checked'=>1, 'position'=>30, 'label'=>"PeriodEndDate"),
- 't.fk_typepayment' =>array('checked'=>1, 'position'=>50, 'label'=>"Type"),
+ 't.fk_typepayment' =>array('checked'=>1, 'position'=>50, 'label'=>"DefaultPaymentMode"),
+ 't.fk_account' =>array('checked'=>1, 'position'=>60, 'label'=>"DefaultBankAccount"),
't.amount' =>array('checked'=>1, 'position'=>90, 'label'=>"Amount"),
't.status' =>array('checked'=>1, 'position'=>90, 'label'=>"Status"),
);
@@ -139,11 +140,14 @@ $bankline = new AccountLine($db);
llxHeader('', $langs->trans("VATDeclarations"));
-$sql = 'SELECT t.rowid, t.amount, t.label, t.datev, t.datep, t.paye, t.fk_typepayment as type, t.num_payment, pst.code as payment_code,';
+$sql = 'SELECT t.rowid, t.amount, t.label, t.datev, t.datep, t.paye, t.fk_typepayment as type, t.fk_account,';
+$sql.= ' ba.label as blabel, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.iban_prefix as iban, ba.bic, ba.currency_code, ba.clos,';
+$sql.= ' t.num_payment, pst.code as payment_code,';
$sql .= ' SUM(ptva.amount) as alreadypayed';
$sql .= ' FROM '.MAIN_DB_PREFIX.'tva as t';
-$sql .= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as pst ON t.fk_typepayment = pst.id';
-$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."payment_vat as ptva ON ptva.fk_tva = t.rowid";
+$sql .= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_paiement as pst ON (t.fk_typepayment = pst.id)';
+$sql .= ' LEFT JOIN '.MAIN_DB_PREFIX.'bank_account as ba ON (t.fk_account = ba.rowid)';
+$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."payment_vat as ptva ON (ptva.fk_tva = t.rowid)";
$sql .= ' WHERE t.entity IN ('.getEntity($object->element).')';
if (!empty($search_ref)) {
@@ -168,7 +172,7 @@ if (!empty($search_type) && $search_type > 0) {
$sql .= ' AND t.fk_typepayment='.$search_type;
}
if (!empty($search_account) && $search_account > 0) {
- $sql .= ' AND b.fk_account='.$search_account;
+ $sql .= ' AND t.fk_account='.$search_account;
}
if (!empty($search_amount)) {
$sql .= natural_search('t.amount', price2num(trim($search_amount)), 1);
@@ -177,7 +181,7 @@ if ($search_status != '' && $search_status >= 0) {
$sql .= " AND t.paye = ".$db->escape($search_status);
}
-$sql .= " GROUP BY t.rowid, t.amount, t.label, t.datev, t.datep, t.paye, t.fk_typepayment, t.num_payment, pst.code";
+$sql .= " GROUP BY t.rowid, t.amount, t.label, t.datev, t.datep, t.paye, t.fk_typepayment, t.fk_account, ba.label, ba.ref, ba.number, ba.account_number, ba.iban_prefix, ba.bic, ba.currency_code, ba.clos, t.num_payment, pst.code";
$sql .= $db->order($sortfield, $sortorder);
$nbtotalofrecords = '';
@@ -353,6 +357,13 @@ if (!empty($arrayfields['t.fk_typepayment']['checked'])) {
print '';
}
+// Filter: Bank Account
+if (!empty($arrayfields['t.fk_account']['checked'])) {
+ print '';
+ $form->select_comptes($search_account, 'search_account', 0, '', 1);
+ print ' | ';
+}
+
// Filter: Amount
if (!empty($arrayfields['t.amount']['checked'])) {
print '';
@@ -396,6 +407,9 @@ if (!empty($arrayfields['t.datev']['checked'])) {
if (!empty($arrayfields['t.fk_typepayment']['checked'])) {
print_liste_field_titre($arrayfields['t.fk_typepayment']['label'], $_SERVER['PHP_SELF'], 't.fk_typepayment', '', $param, '', $sortfield, $sortorder, 'left ');
}
+if (!empty($arrayfields['t.fk_account']['checked'])) {
+ print_liste_field_titre($arrayfields['t.fk_account']['label'], $_SERVER['PHP_SELF'], 't.fk_account', '', $param, '', $sortfield, $sortorder, 'left ');
+}
if (!empty($arrayfields['t.amount']['checked'])) {
print_liste_field_titre($arrayfields['t.amount']['label'], $_SERVER['PHP_SELF'], 't.amount', '', $param, '', $sortfield, $sortorder, 'right ');
}
@@ -462,30 +476,36 @@ while ($i < min($num, $limit)) {
// Type
if (!empty($arrayfields['t.fk_typepayment']['checked'])) {
- print ' | '.$langs->trans("PaymentTypeShort".$obj->payment_code).' | ';
+ print '';
+ if (!empty($obj->payment_code)) print $langs->trans("PaymentTypeShort".$obj->payment_code);
+ print ' | ';
if (!$i) {
$totalarray['nbfield']++;
}
}
// Account
- /*if (!empty($arrayfields['ba.label']['checked'])) {
+ if (!empty($arrayfields['t.fk_account']['checked'])) {
print '';
- if ($obj->fk_bank > 0) {
- $bankstatic->id = $obj->bid;
+ if ($obj->fk_account > 0) {
+ $bankstatic->id = $obj->fk_account;
$bankstatic->ref = $obj->bref;
$bankstatic->number = $obj->bnumber;
+ $bankstatic->iban = $obj->iban;
+ $bankstatic->bic = $obj->bic;
+ $bankstatic->currency_code = $langs->trans("Currency".$obj->currency_code);
$bankstatic->account_number = $obj->account_number;
+ $bankstatic->clos = $obj->clos;
- $accountingjournal->fetch($obj->fk_accountancy_journal);
- $bankstatic->accountancy_journal = $accountingjournal->getNomUrl(0, 1, 1, '', 1);
+ //$accountingjournal->fetch($obj->fk_accountancy_journal);
+ //$bankstatic->accountancy_journal = $accountingjournal->getNomUrl(0, 1, 1, '', 1);
$bankstatic->label = $obj->blabel;
print $bankstatic->getNomUrl(1);
}
print ' | ';
if (!$i) $totalarray['nbfield']++;
- }*/
+ }
// Amount
if (!empty($arrayfields['t.amount']['checked'])) {
diff --git a/htdocs/compta/tva/payments.php b/htdocs/compta/tva/payments.php
index 2ec4ef5bbd5..73f34a476e6 100644
--- a/htdocs/compta/tva/payments.php
+++ b/htdocs/compta/tva/payments.php
@@ -75,6 +75,7 @@ if (!$sortorder) {
$tva_static = new Tva($db);
$tva = new Tva($db);
+$accountlinestatic = new AccountLine($db);
$payment_vat_static = new PaymentVAT($db);
$sal_static = new PaymentSalary($db);
@@ -119,17 +120,19 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
print '';
print '';
print_liste_field_titre("RefPayment", $_SERVER["PHP_SELF"], "ptva.rowid", "", $param, '', $sortfield, $sortorder);
- print_liste_field_titre("DatePayment", $_SERVER["PHP_SELF"], "ptva.datep", "", $param, 'align="center"', $sortfield, $sortorder);
- print_liste_field_titre("Type", $_SERVER["PHP_SELF"], "pct.code", "", $param, '', $sortfield, $sortorder);
- print_liste_field_titre("BankAccount", $_SERVER["PHP_SELF"], "bank.ref", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("VATDeclaration", $_SERVER["PHP_SELF"], "tva.label", "", $param, '', $sortfield, $sortorder);
- //print_liste_field_titre("TypeContrib", $_SERVER["PHP_SELF"], "tva.fk_type", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("PeriodEndDate", $_SERVER["PHP_SELF"], "tva.datev", "", $param, 'width="140px"', $sortfield, $sortorder);
+ print_liste_field_titre("DatePayment", $_SERVER["PHP_SELF"], "ptva.datep", "", $param, 'align="center"', $sortfield, $sortorder);
+ print_liste_field_titre("PaymentMode", $_SERVER["PHP_SELF"], "pct.code", "", $param, '', $sortfield, $sortorder);
+ print_liste_field_titre("Numero", $_SERVER["PHP_SELF"], "pc.num_paiement", "", $param, '', $sortfield, $sortorder, '', 'ChequeOrTransferNumber');
+ print_liste_field_titre("BankTransactionLine", $_SERVER["PHP_SELF"], "ptva.fk_bank", "", $param, '', $sortfield, $sortorder);
+ print_liste_field_titre("BankAccount", $_SERVER["PHP_SELF"], "bank.ref", "", $param, '', $sortfield, $sortorder);
+ //print_liste_field_titre("TypeContrib", $_SERVER["PHP_SELF"], "tva.fk_type", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("ExpectedToPay", $_SERVER["PHP_SELF"], "tva.amount", "", $param, 'class="right"', $sortfield, $sortorder);
print_liste_field_titre("PayedByThisPayment", $_SERVER["PHP_SELF"], "ptva.amount", "", $param, 'class="right"', $sortfield, $sortorder);
print "
\n";
- $sql = "SELECT tva.rowid, tva.label as label, b.fk_account";
+ $sql = "SELECT tva.rowid, tva.label as label, b.fk_account, ptva.fk_bank";
$sql .= ", tva.datev";
$sql .= ", tva.amount as total,";
$sql .= " ptva.rowid as pid, ptva.datep, ptva.amount as totalpaye, ptva.num_paiement as num_payment,";
@@ -175,22 +178,10 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
$payment_vat_static->ref = $obj->pid;
print '';
+
// Ref payment
print '| '.$payment_vat_static->getNomUrl(1)." | \n";
- // Date payment
- print ''.dol_print_date($db->jdate($obj->datep), 'day').' | ';
- // Type payment
- print '';
- if ($obj->payment_code) {
- print $langs->trans("PaymentTypeShort".$obj->payment_code).' ';
- }
- print $obj->num_payment.' | ';
- // Account
- print '';
- $account = new Account($db);
- $account->fetch($obj->fk_account);
- print $account->getNomUrl(1);
- print ' | ';
+
// Label
print '';
$tva->id = $obj->rowid;
@@ -198,11 +189,38 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
$tva->label = $obj->label;
print $tva->getNomUrl(1, '20');
print ' | ';
- // Type
- //print ''.$obj->type_label.' | ';
+
// Date
$date = $obj->datev;
print ''.dol_print_date($date, 'day').' | ';
+
+ // Date payment
+ print ''.dol_print_date($db->jdate($obj->datep), 'day').' | ';
+
+ // Type payment
+ print '';
+ if ($obj->payment_code) {
+ print $langs->trans("PaymentTypeShort".$obj->payment_code).' ';
+ }
+ print ' | ';
+
+ // Chq number
+ print ''.$obj->num_payment.' | ';
+
+ // Bank transaction
+ print '';
+ $accountlinestatic->id = $obj->fk_bank;
+ print $accountlinestatic->getNomUrl(1);
+ print ' | ';
+
+ // Account
+ print '';
+ $account = new Account($db);
+ $account->fetch($obj->fk_account);
+ print $account->getNomUrl(1);
+ print ' | ';
+ // Type
+ //print ''.$obj->type_label.' | ';
// Expected to pay
print ''.price($obj->total).' | ';
// Paid
@@ -224,6 +242,8 @@ if (!empty($conf->tax->enabled) && $user->rights->tax->charges->lire) {
print ' | ';
print ' | ';
print ' | ';
+ print ' | ';
+ print ' | ';
print ''.price($totalpaye)." | ";
print "
";
} else {
diff --git a/htdocs/salaries/list.php b/htdocs/salaries/list.php
index e6c1ef9b97c..d60a583c3f8 100644
--- a/htdocs/salaries/list.php
+++ b/htdocs/salaries/list.php
@@ -235,7 +235,7 @@ $title = $langs->trans('Salaries');
$sql = "SELECT u.rowid as uid, u.lastname, u.firstname, u.login, u.email, u.admin, u.salary as current_salary, u.fk_soc as fk_soc, u.statut as status,";
$sql .= " s.rowid, s.fk_account, s.paye, s.fk_user, s.amount, s.salary, s.label, s.datesp, s.dateep, s.fk_typepayment as paymenttype, ";
-$sql .= " ba.rowid as bid, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.fk_accountancy_journal, ba.label as blabel,";
+$sql .= " ba.rowid as bid, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.fk_accountancy_journal, ba.label as blabel, ba.iban_prefix as iban, ba.bic, ba.currency_code, ba.clos,";
$sql .= " pst.code as payment_code,";
$sql .= " SUM(ps.amount) as alreadypayed";
$sql .= " FROM ".MAIN_DB_PREFIX."salary as s";
@@ -270,7 +270,7 @@ if ($search_amount) {
$sql .= natural_search("s.amount", $search_amount, 1);
}
if ($search_account > 0) {
- $sql .= " AND b.fk_account=".((int) $search_account);
+ $sql .= " AND s.fk_account=".((int) $search_account);
}
if ($search_status != '' && $search_status >= 0) {
$sql .= " AND s.paye = ".$db->escape($search_status);
@@ -280,7 +280,7 @@ if ($search_type_id) {
}
$sql .= " GROUP BY u.rowid, u.lastname, u.firstname, u.login, u.email, u.admin, u.salary, u.fk_soc, u.statut,";
$sql .= " s.rowid, s.fk_account, s.paye, s.fk_user, s.amount, s.salary, s.label, s.datesp, s.dateep, s.fk_typepayment, s.fk_bank,";
-$sql .= " ba.rowid, ba.ref, ba.number, ba.account_number, ba.fk_accountancy_journal, ba.label,";
+$sql .= " ba.rowid, ba.ref, ba.number, ba.account_number, ba.fk_accountancy_journal, ba.label, ba.iban_prefix, ba.bic, ba.currency_code, ba.clos,";
$sql .= " pst.code";
$sql .= $db->order($sortfield, $sortorder);
@@ -409,10 +409,6 @@ print '';
print '| ';
print '';
print ' | ';
-// Employee
-print '';
-print '';
-print ' | ';
// Label
print ' | ';
@@ -436,6 +432,11 @@ print $form->selectDate($search_date_end_to ? $search_date_end_to : -1, 'search_
print '';
print '';
+// Employee
+print '';
+print '';
+print ' | ';
+
// Type
print '';
$form->select_types_paiements($search_type_id, 'search_type_id', '', 0, 1, 1, 16);
@@ -475,10 +476,10 @@ print ' |
'."\n";
// --------------------------------------------------------------------
print '';
print_liste_field_titre("Ref", $_SERVER["PHP_SELF"], "s.rowid", "", $param, "", $sortfield, $sortorder);
-print_liste_field_titre("Employee", $_SERVER["PHP_SELF"], "u.lastname", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Label", $_SERVER["PHP_SELF"], "s.label", "", $param, 'class="left"', $sortfield, $sortorder);
print_liste_field_titre("DateStart", $_SERVER["PHP_SELF"], "s.datesp,s.rowid", "", $param, 'align="center"', $sortfield, $sortorder);
print_liste_field_titre("DateEnd", $_SERVER["PHP_SELF"], "s.dateep,s.rowid", "", $param, 'align="center"', $sortfield, $sortorder);
+print_liste_field_titre("Employee", $_SERVER["PHP_SELF"], "u.lastname", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("DefaultPaymentMode", $_SERVER["PHP_SELF"], "type", "", $param, 'class="left"', $sortfield, $sortorder);
if (!empty($conf->banque->enabled)) {
print_liste_field_titre("DefaultBankAccount", $_SERVER["PHP_SELF"], "ba.label", "", $param, "", $sortfield, $sortorder);
@@ -541,12 +542,6 @@ while ($i < ($limit ? min($num, $limit) : $num)) {
$totalarray['nbfield']++;
}
- // Employee
- print "| ".$userstatic->getNomUrl(1)." | \n";
- if (!$i) {
- $totalarray['nbfield']++;
- }
-
// Label payment
print "".dol_trunc($obj->label, 40)." | \n";
if (!$i) {
@@ -565,8 +560,16 @@ while ($i < ($limit ? min($num, $limit) : $num)) {
$totalarray['nbfield']++;
}
+ // Employee
+ print "".$userstatic->getNomUrl(1)." | \n";
+ if (!$i) {
+ $totalarray['nbfield']++;
+ }
+
// Type
- print ''.$langs->trans("PaymentTypeShort".$obj->payment_code).' | ';
+ print '';
+ if (!empty($obj->payment_code)) print $langs->trans("PaymentTypeShort".$obj->payment_code);
+ print ' | ';
if (!$i) {
$totalarray['nbfield']++;
}
@@ -578,7 +581,13 @@ while ($i < ($limit ? min($num, $limit) : $num)) {
//$accountstatic->fetch($obj->fk_bank);
$accountstatic->id = $obj->bid;
$accountstatic->ref = $obj->bref;
+ $accountstatic->label = $obj->blabel;
$accountstatic->number = $obj->bnumber;
+ $accountstatic->iban = $obj->iban;
+ $accountstatic->bic = $obj->bic;
+ $accountstatic->currency_code = $langs->trans("Currency".$obj->currency_code);
+ $accountstatic->account_number = $obj->account_number;
+ $accountstatic->clos = $obj->clos;
if (!empty($conf->accounting->enabled)) {
$accountstatic->account_number = $obj->account_number;
diff --git a/htdocs/salaries/payments.php b/htdocs/salaries/payments.php
index 3e6630dbaf1..7819cdad0e8 100644
--- a/htdocs/salaries/payments.php
+++ b/htdocs/salaries/payments.php
@@ -77,6 +77,8 @@ $search_date_start = dol_mktime(0, 0, 0, GETPOST('search_date_startmonth', 'int'
$search_date_end = dol_mktime(23, 59, 59, GETPOST('search_date_endmonth', 'int'), GETPOST('search_date_endday', 'int'), GETPOST('search_date_endyear', 'int'));
$search_amount = GETPOST('search_amount', 'alpha');
$search_account = GETPOST('search_account', 'int');
+$search_fk_bank = GETPOST('search_fk_bank', 'int');
+$search_chq_number = GETPOST('search_chq_number', 'int');
$filtre = GETPOST("filtre", 'restricthtml');
@@ -141,6 +143,8 @@ if (empty($reshook)) {
$search_date_end = '';
$search_amount = "";
$search_account = '';
+ $search_fk_bank = '';
+ $search_chq_number = '';
$search_type_id = "";
}
if (GETPOST('button_removefilter_x', 'alpha') || GETPOST('button_removefilter.x', 'alpha') || GETPOST('button_removefilter', 'alpha')
@@ -171,6 +175,7 @@ $salstatic = new Salary($db);
$paymentsalstatic = new PaymentSalary($db);
$userstatic = new User($db);
$accountstatic = new Account($db);
+$accountlinestatic = new AccountLine($db);
$now = dol_now();
@@ -180,7 +185,7 @@ $title = $langs->trans('SalariesPayments');
$sql = "SELECT u.rowid as uid, u.lastname, u.firstname, u.login, u.email, u.admin, u.salary as current_salary, u.fk_soc as fk_soc, u.statut as status,";
$sql .= " s.rowid, s.fk_user, s.amount, s.salary, sal.rowid as id_salary, sal.label, s.datep as datep, b.datev as datev, s.fk_typepayment as type, s.num_payment, s.fk_bank,";
-$sql .= " ba.rowid as bid, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.fk_accountancy_journal, ba.label as blabel,";
+$sql .= " ba.rowid as bid, ba.ref as bref, ba.number as bnumber, ba.account_number, ba.fk_accountancy_journal, ba.label as blabel, ba.iban_prefix as iban, ba.bic, ba.currency_code, ba.clos,";
$sql .= " pst.code as payment_code";
$sql .= " FROM ".MAIN_DB_PREFIX."payment_salary as s";
$sql .= " INNER JOIN ".MAIN_DB_PREFIX."salary as sal ON (sal.rowid = s.fk_salary)";
@@ -201,6 +206,9 @@ if ($search_date_start) $sql .= " AND s.datep >= '".$db->idate($search_date_
if ($search_date_end) $sql .= " AND s.datep <= '".$db->idate($search_date_end)."'";
if ($search_amount) $sql .= natural_search("s.amount", $search_amount, 1);
if ($search_account > 0) $sql .= " AND b.fk_account=".((int) $search_account);
+if ($search_fk_bank) $sql .= " AND s.fk_bank=".((int) $search_fk_bank);
+if ($search_chq_number) $sql .= natural_search(array('s.num_payment'), $search_chq_number);
+
if ($search_type_id > 0) {
$sql .= " AND s.fk_typepayment=".$search_type_id;
}
@@ -245,8 +253,10 @@ if ($search_type_id) $param .= '&search_type_id='.urlencode($search_type_id);
if ($optioncss != '') $param .= '&optioncss='.urlencode($optioncss);
if ($search_ref) $param .= '&search_ref='.urlencode($search_ref);
if ($search_ref_salary) $param .= '&search_ref_salary='.urlencode($search_ref_salary);
-if ($search_user > 0) $param .= '&search_user='.urlencode($search_user);
+if ($search_user) $param .= '&search_user='.urlencode($search_user);
if ($search_label) $param .= '&search_label='.urlencode($search_label);
+if ($search_fk_bank) $param .= '&search_fk_bank='.urlencode($search_fk_bank);
+if ($search_chq_number) $param .= '&search_chq_number='.urlencode($search_chq_number);
if ($search_account) $param .= '&search_account='.urlencode($search_account);
if ($search_date_start) $param .= '&search_date_startday='.urlencode(GETPOST('search_date_startday', 'int')).'&search_date_startmonth='.urlencode(GETPOST('search_date_startmonth', 'int')).'&search_date_startyear='.urlencode(GETPOST('search_date_startyear', 'int'));
if ($search_date_end) $param .= '&search_date_endday='.urlencode(GETPOST('search_date_endday', 'int')).'&search_date_endmonth='.urlencode(GETPOST('search_date_endmonth', 'int')).'&search_date_endyear='.urlencode(GETPOST('search_date_endyear', 'int'));
@@ -292,10 +302,6 @@ print '
';
print '| ';
print '';
print ' | ';
-// Employee
-print '';
-print '';
-print ' | ';
// Salary
print '';
print '';
@@ -314,10 +320,20 @@ print ' | ';
// Date value
print '';
print ' | ';
+// Employee
+print '';
+print '';
+print ' | ';
// Type
print '';
$form->select_types_paiements($search_type_id, 'search_type_id', '', 0, 1, 1, 16);
print ' | ';
+// Chq number
+print ' | ';
+// Bank transaction
+print '';
+print '';
+print ' | ';
// Account
if (!empty($conf->banque->enabled)) {
print '';
@@ -345,13 +361,15 @@ print ' |
'."\n";
// Fields title label
// --------------------------------------------------------------------
print '';
-print_liste_field_titre("Ref", $_SERVER["PHP_SELF"], "s.rowid", "", $param, "", $sortfield, $sortorder);
-print_liste_field_titre("Employee", $_SERVER["PHP_SELF"], "u.rowid", "", $param, "", $sortfield, $sortorder);
+print_liste_field_titre("RefPayment", $_SERVER["PHP_SELF"], "s.rowid", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("Salary", $_SERVER["PHP_SELF"], "sal.rowid", "", $param, '', $sortfield, $sortorder);
print_liste_field_titre("Label", $_SERVER["PHP_SELF"], "s.label", "", $param, 'class="left"', $sortfield, $sortorder);
print_liste_field_titre("DatePayment", $_SERVER["PHP_SELF"], "s.datep,s.rowid", "", $param, '', $sortfield, $sortorder, 'center ');
print_liste_field_titre("DateValue", $_SERVER["PHP_SELF"], "b.datev,s.rowid", "", $param, '', $sortfield, $sortorder, 'center ');
+print_liste_field_titre("Employee", $_SERVER["PHP_SELF"], "u.rowid", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("PaymentMode", $_SERVER["PHP_SELF"], "pst.code", "", $param, 'class="left"', $sortfield, $sortorder);
+print_liste_field_titre("Numero", $_SERVER["PHP_SELF"], "s.num_payment", "", $param, '', $sortfield, $sortorder, '', 'ChequeOrTransferNumber');
+print_liste_field_titre("BankTransactionLine", $_SERVER["PHP_SELF"], "s.fk_bank", "", $param, '', $sortfield, $sortorder);
if (!empty($conf->banque->enabled)) print_liste_field_titre("BankAccount", $_SERVER["PHP_SELF"], "ba.label", "", $param, "", $sortfield, $sortorder);
print_liste_field_titre("PayedByThisPayment", $_SERVER["PHP_SELF"], "s.amount", "", $param, 'class="right"', $sortfield, $sortorder);
// Extra fields
@@ -407,10 +425,6 @@ while ($i < ($limit ? min($num, $limit) : $num)) {
print "| ".$paymentsalstatic->getNomUrl(1)." | \n";
if (!$i) $totalarray['nbfield']++;
- // Employee
- print "".$userstatic->getNomUrl(1)." | \n";
- if (!$i) $totalarray['nbfield']++;
-
print "".$salstatic->getNomUrl(1)." | \n";
if (!$i) $totalarray['nbfield']++;
@@ -426,18 +440,36 @@ while ($i < ($limit ? min($num, $limit) : $num)) {
print ''.dol_print_date($db->jdate($obj->datev), 'day')." | \n";
if (!$i) $totalarray['nbfield']++;
+ // Employee
+ print "".$userstatic->getNomUrl(1)." | \n";
+ if (!$i) $totalarray['nbfield']++;
+
// Type
- print ''.$langs->trans("PaymentTypeShort".$obj->payment_code).' '.$obj->num_payment.' | ';
+ print ''.$langs->trans("PaymentTypeShort".$obj->payment_code).' | ';
+ if (!$i) $totalarray['nbfield']++;
+
+ // Chq number
+ print ''.$obj->num_payment.' | ';
if (!$i) $totalarray['nbfield']++;
// Account
if (!empty($conf->banque->enabled)) {
+ // Bank transaction
+ print '';
+ $accountlinestatic->id = $obj->fk_bank;
+ print $accountlinestatic->getNomUrl(1);
+ print ' | ';
+
print '';
if ($obj->fk_bank > 0) {
//$accountstatic->fetch($obj->fk_bank);
$accountstatic->id = $obj->bid;
$accountstatic->ref = $obj->bref;
$accountstatic->number = $obj->bnumber;
+ $accountstatic->iban = $obj->iban;
+ $accountstatic->bic = $obj->bic;
+ $accountstatic->currency_code = $langs->trans("Currency".$obj->currency_code);
+ $accountstatic->clos = $obj->clos;
if (!empty($conf->accounting->enabled)) {
$accountstatic->account_number = $obj->account_number;
|