Merge pull request #14487 from aspangaro/13a4
NEW Add a start date to begin binding in accountancy
This commit is contained in:
commit
24703b8fe7
@ -31,6 +31,7 @@
|
|||||||
require '../../main.inc.php';
|
require '../../main.inc.php';
|
||||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php';
|
||||||
require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/accounting.lib.php';
|
||||||
|
require_once DOL_DOCUMENT_ROOT.'/core/lib/date.lib.php';
|
||||||
|
|
||||||
// Load translation files required by the page
|
// Load translation files required by the page
|
||||||
$langs->loadLangs(array("compta", "bills", "admin", "accountancy"));
|
$langs->loadLangs(array("compta", "bills", "admin", "accountancy"));
|
||||||
@ -51,7 +52,9 @@ $list = array(
|
|||||||
// 'ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT', // adjust size displayed for select account description for dol_trunc
|
// 'ACCOUNTING_LENGTH_DESCRIPTION_ACCOUNT', // adjust size displayed for select account description for dol_trunc
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$list_binding = array(
|
||||||
|
'ACCOUNTING_DATE_START_BINDING',
|
||||||
|
);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Actions
|
* Actions
|
||||||
@ -75,6 +78,22 @@ if ($action == 'update') {
|
|||||||
if ($error) {
|
if ($error) {
|
||||||
setEventMessages($langs->trans("Error"), null, 'errors');
|
setEventMessages($langs->trans("Error"), null, 'errors');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
foreach ($list_binding as $constname)
|
||||||
|
{
|
||||||
|
$constvalue = GETPOST($constname, 'alpha');
|
||||||
|
|
||||||
|
if ($constname == 'ACCOUNTING_DATE_START_BINDING') {
|
||||||
|
$constvalue = dol_mktime(12, 0, 0, GETPOST($constname.'month', 'int'), GETPOST($constname.'day', 'int'), GETPOST($constname.'year', 'int'));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!dolibarr_set_const($db, $constname, $constvalue, 'chaine', 0, '', $conf->entity)) {
|
||||||
|
$error++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ($error) {
|
||||||
|
setEventMessages($langs->trans("Error"), null, 'errors');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$error) {
|
if (!$error) {
|
||||||
@ -158,6 +177,7 @@ if ($action == 'setenablesubsidiarylist') {
|
|||||||
/*
|
/*
|
||||||
* View
|
* View
|
||||||
*/
|
*/
|
||||||
|
$form = new Form($db);
|
||||||
|
|
||||||
$title = $langs->trans('ConfigAccountingExpert');
|
$title = $langs->trans('ConfigAccountingExpert');
|
||||||
llxHeader('', $title);
|
llxHeader('', $title);
|
||||||
@ -200,41 +220,15 @@ print "</table>\n";
|
|||||||
print '<br>';
|
print '<br>';
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Others params
|
// Params
|
||||||
|
|
||||||
print '<table class="noborder centpercent">';
|
print '<table class="noborder centpercent">';
|
||||||
print '<tr class="liste_titre">';
|
print '<tr class="liste_titre">';
|
||||||
print '<td colspan="2">'.$langs->trans('OtherOptions').'</td>';
|
print '<td colspan="2">'.$langs->trans('Options').'</td>';
|
||||||
print "</tr>\n";
|
print "</tr>\n";
|
||||||
|
|
||||||
if (!empty($user->admin))
|
if (!empty($user->admin))
|
||||||
{
|
{
|
||||||
// TO DO Mutualize code for yes/no constants
|
// TO DO Mutualize code for yes/no constants
|
||||||
print '<tr class="oddeven">';
|
|
||||||
print '<td>'.$langs->trans("ACCOUNTING_LIST_SORT_VENTILATION_TODO").'</td>';
|
|
||||||
if (!empty($conf->global->ACCOUNTING_LIST_SORT_VENTILATION_TODO)) {
|
|
||||||
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setlistsorttodo&value=0">';
|
|
||||||
print img_picto($langs->trans("Activated"), 'switch_on');
|
|
||||||
print '</a></td>';
|
|
||||||
} else {
|
|
||||||
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setlistsorttodo&value=1">';
|
|
||||||
print img_picto($langs->trans("Disabled"), 'switch_off');
|
|
||||||
print '</a></td>';
|
|
||||||
}
|
|
||||||
print '</tr>';
|
|
||||||
|
|
||||||
print '<tr>';
|
|
||||||
print '<td>'.$langs->trans("ACCOUNTING_LIST_SORT_VENTILATION_DONE").'</td>';
|
|
||||||
if (!empty($conf->global->ACCOUNTING_LIST_SORT_VENTILATION_DONE)) {
|
|
||||||
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setlistsortdone&value=0">';
|
|
||||||
print img_picto($langs->trans("Activated"), 'switch_on');
|
|
||||||
print '</a></td>';
|
|
||||||
} else {
|
|
||||||
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setlistsortdone&value=1">';
|
|
||||||
print img_picto($langs->trans("Disabled"), 'switch_off');
|
|
||||||
print '</a></td>';
|
|
||||||
}
|
|
||||||
print '</tr>';
|
|
||||||
|
|
||||||
/* Set this option as a hidden option but keep it for some needs.
|
/* Set this option as a hidden option but keep it for some needs.
|
||||||
print '<tr>';
|
print '<tr>';
|
||||||
@ -251,7 +245,7 @@ if (!empty($user->admin))
|
|||||||
print '</tr>';
|
print '</tr>';
|
||||||
*/
|
*/
|
||||||
|
|
||||||
print '<tr>';
|
print '<tr class="oddeven">';
|
||||||
print '<td>'.$langs->trans("BANK_DISABLE_DIRECT_INPUT").'</td>';
|
print '<td>'.$langs->trans("BANK_DISABLE_DIRECT_INPUT").'</td>';
|
||||||
if (!empty($conf->global->BANK_DISABLE_DIRECT_INPUT)) {
|
if (!empty($conf->global->BANK_DISABLE_DIRECT_INPUT)) {
|
||||||
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setdisabledirectinput&value=0">';
|
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setdisabledirectinput&value=0">';
|
||||||
@ -289,22 +283,81 @@ if (!empty($user->admin))
|
|||||||
print '</a></td>';
|
print '</a></td>';
|
||||||
}
|
}
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
|
|
||||||
|
// Param a user $user->rights->accounting->chartofaccount can access
|
||||||
|
foreach ($list as $key)
|
||||||
|
{
|
||||||
|
print '<tr class="oddeven value">';
|
||||||
|
|
||||||
|
if (!empty($conf->global->ACCOUNTING_MANAGE_ZERO) && ($key == 'ACCOUNTING_LENGTH_GACCOUNT' || $key == 'ACCOUNTING_LENGTH_AACCOUNT')) continue;
|
||||||
|
|
||||||
|
// Param
|
||||||
|
$label = $langs->trans($key);
|
||||||
|
print '<td>'.$label.'</td>';
|
||||||
|
// Value
|
||||||
|
print '<td class="right">';
|
||||||
|
print '<input type="text" class="maxwidth100" id="'.$key.'" name="'.$key.'" value="'.$conf->global->$key.'">';
|
||||||
|
|
||||||
|
print '</td>';
|
||||||
|
|
||||||
|
print '</tr>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
print '</table>';
|
||||||
|
print '<br>';
|
||||||
|
|
||||||
|
// Binding params
|
||||||
|
print '<table class="noborder centpercent">';
|
||||||
|
print '<tr class="liste_titre">';
|
||||||
|
print '<td colspan="2">'.$langs->trans('BindingOptions').'</td>';
|
||||||
|
print "</tr>\n";
|
||||||
|
|
||||||
|
if (!empty($user->admin))
|
||||||
|
{
|
||||||
|
// TO DO Mutualize code for yes/no constants
|
||||||
|
print '<tr class="oddeven">';
|
||||||
|
print '<td>'.$langs->trans("ACCOUNTING_LIST_SORT_VENTILATION_TODO").'</td>';
|
||||||
|
if (!empty($conf->global->ACCOUNTING_LIST_SORT_VENTILATION_TODO)) {
|
||||||
|
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setlistsorttodo&value=0">';
|
||||||
|
print img_picto($langs->trans("Activated"), 'switch_on');
|
||||||
|
print '</a></td>';
|
||||||
|
} else {
|
||||||
|
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setlistsorttodo&value=1">';
|
||||||
|
print img_picto($langs->trans("Disabled"), 'switch_off');
|
||||||
|
print '</a></td>';
|
||||||
|
}
|
||||||
|
print '</tr>';
|
||||||
|
|
||||||
|
print '<tr>';
|
||||||
|
print '<td>'.$langs->trans("ACCOUNTING_LIST_SORT_VENTILATION_DONE").'</td>';
|
||||||
|
if (!empty($conf->global->ACCOUNTING_LIST_SORT_VENTILATION_DONE)) {
|
||||||
|
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setlistsortdone&value=0">';
|
||||||
|
print img_picto($langs->trans("Activated"), 'switch_on');
|
||||||
|
print '</a></td>';
|
||||||
|
} else {
|
||||||
|
print '<td class="right"><a class="reposition" href="'.$_SERVER['PHP_SELF'].'?action=setlistsortdone&value=1">';
|
||||||
|
print img_picto($langs->trans("Disabled"), 'switch_off');
|
||||||
|
print '</a></td>';
|
||||||
|
}
|
||||||
|
print '</tr>';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Param a user $user->rights->accounting->chartofaccount can access
|
// Param a user $user->rights->accounting->chartofaccount can access
|
||||||
foreach ($list as $key)
|
foreach ($list_binding as $key)
|
||||||
{
|
{
|
||||||
print '<tr class="oddeven value">';
|
print '<tr class="oddeven value">';
|
||||||
|
|
||||||
if (!empty($conf->global->ACCOUNTING_MANAGE_ZERO) && ($key == 'ACCOUNTING_LENGTH_GACCOUNT' || $key == 'ACCOUNTING_LENGTH_AACCOUNT')) continue;
|
|
||||||
|
|
||||||
// Param
|
// Param
|
||||||
$label = $langs->trans($key);
|
$label = $langs->trans($key);
|
||||||
print '<td>'.$label.'</td>';
|
print '<td>'.$label.'</td>';
|
||||||
// Value
|
// Value
|
||||||
print '<td class="right">';
|
print '<td class="right">';
|
||||||
print '<input type="text" class="maxwidth100" id="'.$key.'" name="'.$key.'" value="'.$conf->global->$key.'">';
|
if ($key == 'ACCOUNTING_DATE_START_BINDING') {
|
||||||
|
print $form->selectDate(($conf->global->$key ? $db->idate($conf->global->$key) : -1), $key, 0, 0, 1);
|
||||||
|
} else {
|
||||||
|
print '<input type="text" class="maxwidth100" id="'.$key.'" name="'.$key.'" value="'.$conf->global->$key.'">';
|
||||||
|
}
|
||||||
|
|
||||||
print '</td>';
|
print '</td>';
|
||||||
|
|
||||||
print '</tr>';
|
print '</tr>';
|
||||||
@ -315,10 +368,6 @@ print '</table>';
|
|||||||
|
|
||||||
print '<div class="center"><input type="submit" class="button" value="'.$langs->trans('Modify').'" name="button"></div>';
|
print '<div class="center"><input type="submit" class="button" value="'.$langs->trans('Modify').'" name="button"></div>';
|
||||||
|
|
||||||
print '<br>';
|
|
||||||
print '<br>';
|
|
||||||
|
|
||||||
print '<br>';
|
|
||||||
print '</form>';
|
print '</form>';
|
||||||
|
|
||||||
// End of page
|
// End of page
|
||||||
|
|||||||
@ -256,6 +256,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture as f ON f.rowid = fd.fk_facture";
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = fd.fk_code_ventilation";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = fd.fk_code_ventilation";
|
||||||
$sql .= " WHERE f.datef >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE f.datef >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND f.datef <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND f.datef <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND f.fk_statut > 0";
|
$sql .= " AND f.fk_statut > 0";
|
||||||
$sql .= " AND fd.product_type <= 2";
|
$sql .= " AND fd.product_type <= 2";
|
||||||
$sql .= " AND f.entity IN (".getEntity('invoice', 0).")"; // We don't share object for accountancy
|
$sql .= " AND f.entity IN (".getEntity('invoice', 0).")"; // We don't share object for accountancy
|
||||||
@ -330,6 +334,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture as f ON f.rowid = fd.fk_facture";
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = fd.fk_code_ventilation";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = fd.fk_code_ventilation";
|
||||||
$sql .= " WHERE f.datef >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE f.datef >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND f.datef <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND f.datef <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND f.entity IN (".getEntity('invoice', 0).")"; // We don't share object for accountancy
|
$sql .= " AND f.entity IN (".getEntity('invoice', 0).")"; // We don't share object for accountancy
|
||||||
$sql .= " AND f.fk_statut > 0";
|
$sql .= " AND f.fk_statut > 0";
|
||||||
$sql .= " AND fd.product_type <= 2";
|
$sql .= " AND fd.product_type <= 2";
|
||||||
@ -405,6 +413,10 @@ if ($conf->global->MAIN_FEATURES_LEVEL > 0) // This part of code looks strange.
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture as f ON f.rowid = fd.fk_facture";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture as f ON f.rowid = fd.fk_facture";
|
||||||
$sql .= " WHERE f.datef >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE f.datef >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND f.datef <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND f.datef <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND f.entity IN (".getEntity('invoice', 0).")"; // We don't share object for accountancy
|
$sql .= " AND f.entity IN (".getEntity('invoice', 0).")"; // We don't share object for accountancy
|
||||||
$sql .= " AND f.fk_statut > 0";
|
$sql .= " AND f.fk_statut > 0";
|
||||||
$sql .= " AND fd.product_type <= 2";
|
$sql .= " AND fd.product_type <= 2";
|
||||||
@ -458,6 +470,10 @@ if ($conf->global->MAIN_FEATURES_LEVEL > 0) // This part of code looks strange.
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture as f ON f.rowid = fd.fk_facture";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture as f ON f.rowid = fd.fk_facture";
|
||||||
$sql .= " WHERE f.datef >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE f.datef >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND f.datef <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND f.datef <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND f.entity IN (".getEntity('invoice', 0).")"; // We don't share object for accountancy
|
$sql .= " AND f.entity IN (".getEntity('invoice', 0).")"; // We don't share object for accountancy
|
||||||
$sql .= " AND f.fk_statut > 0";
|
$sql .= " AND f.fk_statut > 0";
|
||||||
$sql .= " AND fd.product_type <= 2";
|
$sql .= " AND fd.product_type <= 2";
|
||||||
|
|||||||
@ -227,6 +227,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa2 ON p.accountancy
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa3 ON p.accountancy_code_sell_export = aa3.account_number AND aa3.active = 1 AND aa3.fk_pcg_version = '".$chartaccountcode."' AND aa3.entity = ".$conf->entity;
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa3 ON p.accountancy_code_sell_export = aa3.account_number AND aa3.active = 1 AND aa3.fk_pcg_version = '".$chartaccountcode."' AND aa3.entity = ".$conf->entity;
|
||||||
$sql .= " WHERE f.fk_statut > 0 AND l.fk_code_ventilation <= 0";
|
$sql .= " WHERE f.fk_statut > 0 AND l.fk_code_ventilation <= 0";
|
||||||
$sql .= " AND l.product_type <= 2";
|
$sql .= " AND l.product_type <= 2";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
// Add search filter like
|
// Add search filter like
|
||||||
if ($search_societe) {
|
if ($search_societe) {
|
||||||
$sql .= natural_search('s.nom', $search_societe);
|
$sql .= natural_search('s.nom', $search_societe);
|
||||||
|
|||||||
@ -174,6 +174,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."expensereport as er ON er.rowid = erd.fk_e
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = erd.fk_code_ventilation";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = erd.fk_code_ventilation";
|
||||||
$sql .= " WHERE er.date_debut >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE er.date_debut >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND er.date_debut <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND er.date_debut <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND er.date_debut >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND er.fk_statut IN (".ExpenseReport::STATUS_APPROVED.", ".ExpenseReport::STATUS_CLOSED.")";
|
$sql .= " AND er.fk_statut IN (".ExpenseReport::STATUS_APPROVED.", ".ExpenseReport::STATUS_CLOSED.")";
|
||||||
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
|
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
|
||||||
$sql .= " AND aa.account_number IS NULL";
|
$sql .= " AND aa.account_number IS NULL";
|
||||||
@ -243,6 +247,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."expensereport as er ON er.rowid = erd.fk_e
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = erd.fk_code_ventilation";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = erd.fk_code_ventilation";
|
||||||
$sql .= " WHERE er.date_debut >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE er.date_debut >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND er.date_debut <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND er.date_debut <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND er.date_debut >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND er.fk_statut IN (".ExpenseReport::STATUS_APPROVED.", ".ExpenseReport::STATUS_CLOSED.")";
|
$sql .= " AND er.fk_statut IN (".ExpenseReport::STATUS_APPROVED.", ".ExpenseReport::STATUS_CLOSED.")";
|
||||||
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
|
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
|
||||||
$sql .= " AND aa.account_number IS NOT NULL";
|
$sql .= " AND aa.account_number IS NOT NULL";
|
||||||
@ -312,6 +320,10 @@ if ($conf->global->MAIN_FEATURES_LEVEL > 0) // This part of code looks strange.
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."expensereport as er ON er.rowid = erd.fk_expensereport";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."expensereport as er ON er.rowid = erd.fk_expensereport";
|
||||||
$sql .= " WHERE er.date_debut >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE er.date_debut >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND er.date_debut <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND er.date_debut <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND er.date_debut >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND er.fk_statut IN (".ExpenseReport::STATUS_APPROVED.", ".ExpenseReport::STATUS_CLOSED.")";
|
$sql .= " AND er.fk_statut IN (".ExpenseReport::STATUS_APPROVED.", ".ExpenseReport::STATUS_CLOSED.")";
|
||||||
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
|
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
|
||||||
|
|
||||||
|
|||||||
@ -198,6 +198,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."c_type_fees as f ON f.id = erd.fk_c_type_f
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."user as u ON u.rowid = er.fk_user_author";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."user as u ON u.rowid = er.fk_user_author";
|
||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON f.accountancy_code = aa.account_number AND aa.fk_pcg_version = '".$chartaccountcode."' AND aa.entity = ".$conf->entity;
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON f.accountancy_code = aa.account_number AND aa.fk_pcg_version = '".$chartaccountcode."' AND aa.entity = ".$conf->entity;
|
||||||
$sql .= " WHERE er.fk_statut IN (".ExpenseReport::STATUS_APPROVED.", ".ExpenseReport::STATUS_CLOSED.") AND erd.fk_code_ventilation <= 0";
|
$sql .= " WHERE er.fk_statut IN (".ExpenseReport::STATUS_APPROVED.", ".ExpenseReport::STATUS_CLOSED.") AND erd.fk_code_ventilation <= 0";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND er.date_debut >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
// Add search filter like
|
// Add search filter like
|
||||||
if (strlen(trim($search_login))) {
|
if (strlen(trim($search_login))) {
|
||||||
$sql .= natural_search("u.login", $search_login);
|
$sql .= natural_search("u.login", $search_login);
|
||||||
|
|||||||
@ -124,6 +124,10 @@ $sql .= " WHERE ba.fk_accountancy_journal=".$id_journal;
|
|||||||
$sql .= ' AND b.amount != 0 AND ba.entity IN ('.getEntity('bank_account', 0).')'; // We don't share object for accountancy
|
$sql .= ' AND b.amount != 0 AND ba.entity IN ('.getEntity('bank_account', 0).')'; // We don't share object for accountancy
|
||||||
if ($date_start && $date_end)
|
if ($date_start && $date_end)
|
||||||
$sql .= " AND b.dateo >= '".$db->idate($date_start)."' AND b.dateo <= '".$db->idate($date_end)."'";
|
$sql .= " AND b.dateo >= '".$db->idate($date_start)."' AND b.dateo <= '".$db->idate($date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND b.dateo >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
// Already in bookkeeping or not
|
// Already in bookkeeping or not
|
||||||
if ($in_bookkeeping == 'already')
|
if ($in_bookkeeping == 'already')
|
||||||
{
|
{
|
||||||
|
|||||||
@ -101,6 +101,10 @@ $sql .= " AND erd.fk_code_ventilation > 0";
|
|||||||
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
|
$sql .= " AND er.entity IN (".getEntity('expensereport', 0).")"; // We don't share object for accountancy
|
||||||
if ($date_start && $date_end)
|
if ($date_start && $date_end)
|
||||||
$sql .= " AND er.date_debut >= '".$db->idate($date_start)."' AND er.date_debut <= '".$db->idate($date_end)."'";
|
$sql .= " AND er.date_debut >= '".$db->idate($date_start)."' AND er.date_debut <= '".$db->idate($date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND er.date_debut >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
// Already in bookkeeping or not
|
// Already in bookkeeping or not
|
||||||
if ($in_bookkeeping == 'already')
|
if ($in_bookkeeping == 'already')
|
||||||
{
|
{
|
||||||
|
|||||||
@ -111,6 +111,10 @@ if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) {
|
|||||||
}
|
}
|
||||||
if ($date_start && $date_end)
|
if ($date_start && $date_end)
|
||||||
$sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'";
|
$sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
// Already in bookkeeping or not
|
// Already in bookkeeping or not
|
||||||
if ($in_bookkeeping == 'already')
|
if ($in_bookkeeping == 'already')
|
||||||
{
|
{
|
||||||
|
|||||||
@ -115,6 +115,10 @@ if (!empty($conf->global->FACTURE_DEPOSITS_ARE_JUST_PAYMENTS)) { // Non common s
|
|||||||
$sql .= " AND fd.product_type IN (0,1)";
|
$sql .= " AND fd.product_type IN (0,1)";
|
||||||
if ($date_start && $date_end)
|
if ($date_start && $date_end)
|
||||||
$sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'";
|
$sql .= " AND f.datef >= '".$db->idate($date_start)."' AND f.datef <= '".$db->idate($date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
// Already in bookkeeping or not
|
// Already in bookkeeping or not
|
||||||
if ($in_bookkeeping == 'already')
|
if ($in_bookkeeping == 'already')
|
||||||
{
|
{
|
||||||
|
|||||||
@ -245,6 +245,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture_fourn as ff ON ff.rowid = ffd.fk_
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = ffd.fk_code_ventilation";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = ffd.fk_code_ventilation";
|
||||||
$sql .= " WHERE ff.datef >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE ff.datef >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND ff.datef <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND ff.datef <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND ff.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND ff.fk_statut > 0";
|
$sql .= " AND ff.fk_statut > 0";
|
||||||
$sql .= " AND ffd.product_type <= 2";
|
$sql .= " AND ffd.product_type <= 2";
|
||||||
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
|
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
|
||||||
@ -314,6 +318,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture_fourn as ff ON ff.rowid = ffd.fk_
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = ffd.fk_code_ventilation";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa ON aa.rowid = ffd.fk_code_ventilation";
|
||||||
$sql .= " WHERE ff.datef >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE ff.datef >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND ff.datef <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND ff.datef <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND ff.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND ff.fk_statut > 0";
|
$sql .= " AND ff.fk_statut > 0";
|
||||||
$sql .= " AND ffd.product_type <= 2";
|
$sql .= " AND ffd.product_type <= 2";
|
||||||
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
|
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
|
||||||
@ -383,6 +391,10 @@ if ($conf->global->MAIN_FEATURES_LEVEL > 0) // This part of code looks strange.
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture_fourn as ff ON ff.rowid = ffd.fk_facture_fourn";
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."facture_fourn as ff ON ff.rowid = ffd.fk_facture_fourn";
|
||||||
$sql .= " WHERE ff.datef >= '".$db->idate($search_date_start)."'";
|
$sql .= " WHERE ff.datef >= '".$db->idate($search_date_start)."'";
|
||||||
$sql .= " AND ff.datef <= '".$db->idate($search_date_end)."'";
|
$sql .= " AND ff.datef <= '".$db->idate($search_date_end)."'";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND ff.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
$sql .= " AND ff.fk_statut > 0";
|
$sql .= " AND ff.fk_statut > 0";
|
||||||
$sql .= " AND ffd.product_type <= 2";
|
$sql .= " AND ffd.product_type <= 2";
|
||||||
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
|
$sql .= " AND ff.entity IN (".getEntity('facture_fourn', 0).")"; // We don't share object for accountancy
|
||||||
|
|||||||
@ -231,6 +231,10 @@ $sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa2 ON p.accountancy
|
|||||||
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa3 ON p.accountancy_code_buy_export = aa3.account_number AND aa3.active = 1 AND aa3.fk_pcg_version = '".$chartaccountcode."' AND aa3.entity = ".$conf->entity;
|
$sql .= " LEFT JOIN ".MAIN_DB_PREFIX."accounting_account as aa3 ON p.accountancy_code_buy_export = aa3.account_number AND aa3.active = 1 AND aa3.fk_pcg_version = '".$chartaccountcode."' AND aa3.entity = ".$conf->entity;
|
||||||
$sql .= " WHERE f.fk_statut > 0 AND l.fk_code_ventilation <= 0";
|
$sql .= " WHERE f.fk_statut > 0 AND l.fk_code_ventilation <= 0";
|
||||||
$sql .= " AND l.product_type <= 2";
|
$sql .= " AND l.product_type <= 2";
|
||||||
|
// Define begin binding date
|
||||||
|
if (!empty($conf->global->ACCOUNTING_DATE_START_BINDING)) {
|
||||||
|
$sql .= " AND f.datef >= '".$db->idate($conf->global->ACCOUNTING_DATE_START_BINDING)."'";
|
||||||
|
}
|
||||||
// Add search filter like
|
// Add search filter like
|
||||||
if ($search_societe) {
|
if ($search_societe) {
|
||||||
$sql .= natural_search('s.nom', $search_societe);
|
$sql .= natural_search('s.nom', $search_societe);
|
||||||
|
|||||||
@ -5280,7 +5280,7 @@ class Form
|
|||||||
* @param int $d 1=Show days, month, years
|
* @param int $d 1=Show days, month, years
|
||||||
* @param int $addnowlink Add a link "Now", 1 with server time, 2 with local computer time
|
* @param int $addnowlink Add a link "Now", 1 with server time, 2 with local computer time
|
||||||
* @param int $disabled Disable input fields
|
* @param int $disabled Disable input fields
|
||||||
* @param int $fullday When a checkbox with id #fullday is cheked, hours are set with 00:00 (if value if 'fulldaystart') or 23:59 (if value is 'fulldayend')
|
* @param int $fullday When a checkbox with id #fullday is checked, hours are set with 00:00 (if value if 'fulldaystart') or 23:59 (if value is 'fulldayend')
|
||||||
* @param string $addplusone Add a link "+1 hour". Value must be name of another selectDate field.
|
* @param string $addplusone Add a link "+1 hour". Value must be name of another selectDate field.
|
||||||
* @param datetime $adddateof Add a link "Date of ..." using the following date. See also $labeladddateof for the label used.
|
* @param datetime $adddateof Add a link "Date of ..." using the following date. See also $labeladddateof for the label used.
|
||||||
* @param string $openinghours Specify hour start and hour end for the select ex 8,20
|
* @param string $openinghours Specify hour start and hour end for the select ex 8,20
|
||||||
|
|||||||
@ -149,6 +149,7 @@ ACCOUNTING_MANAGE_ZERO=Allow to manage different number of zeros at the end of a
|
|||||||
BANK_DISABLE_DIRECT_INPUT=Disable direct recording of transaction in bank account
|
BANK_DISABLE_DIRECT_INPUT=Disable direct recording of transaction in bank account
|
||||||
ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL=Enable draft export on journal
|
ACCOUNTING_ENABLE_EXPORT_DRAFT_JOURNAL=Enable draft export on journal
|
||||||
ACCOUNTANCY_COMBO_FOR_AUX=Enable combo list for subsidiary account (may be slow if you have a lot of third parties)
|
ACCOUNTANCY_COMBO_FOR_AUX=Enable combo list for subsidiary account (may be slow if you have a lot of third parties)
|
||||||
|
ACCOUNTING_DATE_START_BINDING=Define a date to start binding & transfer in accountancy. Below this date, the transactions will not be transferred to accounting.
|
||||||
|
|
||||||
ACCOUNTING_SELL_JOURNAL=Sell journal
|
ACCOUNTING_SELL_JOURNAL=Sell journal
|
||||||
ACCOUNTING_PURCHASE_JOURNAL=Purchase journal
|
ACCOUNTING_PURCHASE_JOURNAL=Purchase journal
|
||||||
@ -284,6 +285,7 @@ ShowTutorial=Show Tutorial
|
|||||||
NotReconciled=Not reconciled
|
NotReconciled=Not reconciled
|
||||||
|
|
||||||
## Admin
|
## Admin
|
||||||
|
BindingOptions=Binding options
|
||||||
ApplyMassCategories=Apply mass categories
|
ApplyMassCategories=Apply mass categories
|
||||||
AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group
|
AddAccountFromBookKeepingWithNoCategories=Available account not yet in the personalized group
|
||||||
CategoryDeleted=Category for the accounting account has been removed
|
CategoryDeleted=Category for the accounting account has been removed
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user