Merge branch '9.0' of git@github.com:Dolibarr/dolibarr.git into develop
Conflicts: htdocs/accountancy/class/accountancyexport.class.php
This commit is contained in:
commit
39e6e71b0d
BIN
dev/resources/iso-normes/Accountancy-format_Ebp_txt.pdf
Normal file
BIN
dev/resources/iso-normes/Accountancy-format_Ebp_txt.pdf
Normal file
Binary file not shown.
@ -42,7 +42,7 @@ require_once DOL_DOCUMENT_ROOT . '/core/lib/functions.lib.php';
|
|||||||
class AccountancyExport
|
class AccountancyExport
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
* @var Type of export. Defined by $conf->global->ACCOUNTING_EXPORT_MODELCSV
|
* Type of export. Defined by $conf->global->ACCOUNTING_EXPORT_MODELCSV
|
||||||
*/
|
*/
|
||||||
public static $EXPORT_TYPE_NORMAL = 1; // CSV
|
public static $EXPORT_TYPE_NORMAL = 1; // CSV
|
||||||
public static $EXPORT_TYPE_CONFIGURABLE = 10; // CSV
|
public static $EXPORT_TYPE_CONFIGURABLE = 10; // CSV
|
||||||
@ -535,14 +535,18 @@ class AccountancyExport
|
|||||||
print $line->id . $separator;
|
print $line->id . $separator;
|
||||||
print $date . $separator;
|
print $date . $separator;
|
||||||
print $line->code_journal . $separator;
|
print $line->code_journal . $separator;
|
||||||
print length_accountg($line->numero_compte) . $separator;
|
if (empty($line->subledger_account)) {
|
||||||
print substr(length_accountg($line->numero_compte), 0, 2) . $separator;
|
print $line->numero_compte . $separator;
|
||||||
|
} else {
|
||||||
|
print $line->subledger_account . $separator;
|
||||||
|
}
|
||||||
|
//print substr(length_accountg($line->numero_compte), 0, 2) . $separator;
|
||||||
print '"'.dol_trunc($line->label_operation, 40, 'right', 'UTF-8', 1).'"' . $separator;
|
print '"'.dol_trunc($line->label_operation, 40, 'right', 'UTF-8', 1).'"' . $separator;
|
||||||
print '"'.dol_trunc($line->piece_num, 15, 'right', 'UTF-8', 1).'"'.$separator;
|
print '"'.dol_trunc($line->piece_num, 15, 'right', 'UTF-8', 1).'"'.$separator;
|
||||||
print price2num($line->montant).$separator;
|
print price2num($line->montant).$separator;
|
||||||
print $line->sens.$separator;
|
print $line->sens.$separator;
|
||||||
print $date . $separator;
|
print $date . $separator;
|
||||||
print 'EUR';
|
//print 'EUR';
|
||||||
print $end_line;
|
print $end_line;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -78,7 +78,7 @@ if ($action == 'updateMask')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'specimen')
|
else if ($action == 'specimen')
|
||||||
{
|
{
|
||||||
$modele=GETPOST('module', 'alpha');
|
$modele=GETPOST('module', 'alpha');
|
||||||
|
|
||||||
@ -164,7 +164,7 @@ elseif ($action == 'setmod')
|
|||||||
dolibarr_set_const($db, "FACTURE_ADDON", $value, 'chaine', 0, '', $conf->entity);
|
dolibarr_set_const($db, "FACTURE_ADDON", $value, 'chaine', 0, '', $conf->entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'setribchq')
|
else if ($action == 'setribchq')
|
||||||
{
|
{
|
||||||
$rib = GETPOST('rib', 'alpha');
|
$rib = GETPOST('rib', 'alpha');
|
||||||
$chq = GETPOST('chq', 'alpha');
|
$chq = GETPOST('chq', 'alpha');
|
||||||
@ -184,7 +184,7 @@ if ($action == 'setribchq')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'set_FACTURE_DRAFT_WATERMARK')
|
else if ($action == 'set_FACTURE_DRAFT_WATERMARK')
|
||||||
{
|
{
|
||||||
$draft = GETPOST('FACTURE_DRAFT_WATERMARK', 'alpha');
|
$draft = GETPOST('FACTURE_DRAFT_WATERMARK', 'alpha');
|
||||||
|
|
||||||
@ -202,7 +202,7 @@ if ($action == 'set_FACTURE_DRAFT_WATERMARK')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'set_INVOICE_FREE_TEXT')
|
else if ($action == 'set_INVOICE_FREE_TEXT')
|
||||||
{
|
{
|
||||||
$freetext = GETPOST('INVOICE_FREE_TEXT', 'none'); // No alpha here, we want exact string
|
$freetext = GETPOST('INVOICE_FREE_TEXT', 'none'); // No alpha here, we want exact string
|
||||||
|
|
||||||
@ -220,7 +220,7 @@ if ($action == 'set_INVOICE_FREE_TEXT')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'setforcedate')
|
else if ($action == 'setforcedate')
|
||||||
{
|
{
|
||||||
$forcedate = GETPOST('forcedate', 'alpha');
|
$forcedate = GETPOST('forcedate', 'alpha');
|
||||||
|
|
||||||
@ -238,7 +238,7 @@ if ($action == 'setforcedate')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'setDefaultPDFModulesByType')
|
else if ($action == 'setDefaultPDFModulesByType')
|
||||||
{
|
{
|
||||||
$invoicetypemodels = GETPOST('invoicetypemodels');
|
$invoicetypemodels = GETPOST('invoicetypemodels');
|
||||||
|
|
||||||
|
|||||||
@ -70,7 +70,7 @@ if ($action == 'updateMask')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'specimen')
|
else if ($action == 'specimen')
|
||||||
{
|
{
|
||||||
$modele=GETPOST('module', 'alpha');
|
$modele=GETPOST('module', 'alpha');
|
||||||
|
|
||||||
@ -115,7 +115,27 @@ if ($action == 'specimen')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'set_PROPALE_DRAFT_WATERMARK')
|
else if ($action == 'setribchq')
|
||||||
|
{
|
||||||
|
$rib = GETPOST('rib','alpha');
|
||||||
|
$chq = GETPOST('chq','alpha');
|
||||||
|
|
||||||
|
$res = dolibarr_set_const($db, "FACTURE_RIB_NUMBER",$rib,'chaine',0,'',$conf->entity);
|
||||||
|
$res = dolibarr_set_const($db, "FACTURE_CHQ_NUMBER",$chq,'chaine',0,'',$conf->entity);
|
||||||
|
|
||||||
|
if (! $res > 0) $error++;
|
||||||
|
|
||||||
|
if (! $error)
|
||||||
|
{
|
||||||
|
setEventMessages($langs->trans("SetupSaved"), null, 'mesgs');
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
setEventMessages($langs->trans("Error"), null, 'errors');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
else if ($action == 'set_PROPALE_DRAFT_WATERMARK')
|
||||||
{
|
{
|
||||||
$draft = GETPOST('PROPALE_DRAFT_WATERMARK', 'alpha');
|
$draft = GETPOST('PROPALE_DRAFT_WATERMARK', 'alpha');
|
||||||
|
|
||||||
@ -132,7 +152,7 @@ if ($action == 'set_PROPALE_DRAFT_WATERMARK')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'set_PROPOSAL_FREE_TEXT')
|
else if ($action == 'set_PROPOSAL_FREE_TEXT')
|
||||||
{
|
{
|
||||||
$freetext = GETPOST('PROPOSAL_FREE_TEXT', 'none'); // No alpha here, we want exact string
|
$freetext = GETPOST('PROPOSAL_FREE_TEXT', 'none'); // No alpha here, we want exact string
|
||||||
|
|
||||||
@ -150,7 +170,7 @@ if ($action == 'set_PROPOSAL_FREE_TEXT')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'setdefaultduration')
|
else if ($action == 'setdefaultduration')
|
||||||
{
|
{
|
||||||
$res = dolibarr_set_const($db, "PROPALE_VALIDITY_DURATION", $value, 'chaine', 0, '', $conf->entity);
|
$res = dolibarr_set_const($db, "PROPALE_VALIDITY_DURATION", $value, 'chaine', 0, '', $conf->entity);
|
||||||
|
|
||||||
@ -166,7 +186,7 @@ if ($action == 'setdefaultduration')
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($action == 'set_BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL')
|
else if ($action == 'set_BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL')
|
||||||
{
|
{
|
||||||
$res = dolibarr_set_const($db, "BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL", $value, 'chaine', 0, '', $conf->entity);
|
$res = dolibarr_set_const($db, "BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL", $value, 'chaine', 0, '', $conf->entity);
|
||||||
|
|
||||||
@ -183,7 +203,7 @@ if ($action == 'set_BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL')
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Activate a model
|
// Activate a model
|
||||||
if ($action == 'set')
|
else if ($action == 'set')
|
||||||
{
|
{
|
||||||
$ret = addDocumentModel($value, $type, $label, $scandir);
|
$ret = addDocumentModel($value, $type, $label, $scandir);
|
||||||
}
|
}
|
||||||
@ -499,6 +519,106 @@ foreach ($dirmodels as $reldir)
|
|||||||
}
|
}
|
||||||
|
|
||||||
print '</table>';
|
print '</table>';
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Payment mode
|
||||||
|
*/
|
||||||
|
if (empty($conf->facture->enabled))
|
||||||
|
{
|
||||||
|
print '<br>';
|
||||||
|
print load_fiche_titre($langs->trans("SuggestedPaymentModesIfNotDefinedInProposal"),'','');
|
||||||
|
|
||||||
|
print '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">';
|
||||||
|
print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'" />';
|
||||||
|
|
||||||
|
print '<table class="noborder" width="100%">';
|
||||||
|
|
||||||
|
print '<tr class="liste_titre">';
|
||||||
|
print '<td>';
|
||||||
|
print '<input type="hidden" name="action" value="setribchq">';
|
||||||
|
print $langs->trans("PaymentMode").'</td>';
|
||||||
|
print '<td align="right"><input type="submit" class="button" value="'.$langs->trans("Modify").'"></td>';
|
||||||
|
print "</tr>\n";
|
||||||
|
|
||||||
|
print '<tr class="oddeven">';
|
||||||
|
print "<td>".$langs->trans("SuggestPaymentByRIBOnAccount")."</td>";
|
||||||
|
print "<td>";
|
||||||
|
if (! empty($conf->banque->enabled))
|
||||||
|
{
|
||||||
|
$sql = "SELECT rowid, label";
|
||||||
|
$sql.= " FROM ".MAIN_DB_PREFIX."bank_account";
|
||||||
|
$sql.= " WHERE clos = 0";
|
||||||
|
$sql.= " AND courant = 1";
|
||||||
|
$sql.= " AND entity IN (".getEntity('bank_account').")";
|
||||||
|
$resql=$db->query($sql);
|
||||||
|
if ($resql)
|
||||||
|
{
|
||||||
|
$num = $db->num_rows($resql);
|
||||||
|
$i = 0;
|
||||||
|
if ($num > 0)
|
||||||
|
{
|
||||||
|
print '<select name="rib" class="flat" id="rib">';
|
||||||
|
print '<option value="0">'.$langs->trans("DoNotSuggestPaymentMode").'</option>';
|
||||||
|
while ($i < $num)
|
||||||
|
{
|
||||||
|
$row = $db->fetch_row($resql);
|
||||||
|
|
||||||
|
print '<option value="'.$row[0].'"';
|
||||||
|
print $conf->global->FACTURE_RIB_NUMBER == $row[0] ? ' selected':'';
|
||||||
|
print '>'.$row[1].'</option>';
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
print "</select>";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
print "<i>".$langs->trans("NoActiveBankAccountDefined")."</i>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
print $langs->trans("BankModuleNotActive");
|
||||||
|
}
|
||||||
|
print "</td></tr>";
|
||||||
|
|
||||||
|
print '<tr class="oddeven">';
|
||||||
|
print "<td>".$langs->trans("SuggestPaymentByChequeToAddress")."</td>";
|
||||||
|
print "<td>";
|
||||||
|
print '<select class="flat" name="chq" id="chq">';
|
||||||
|
print '<option value="0">'.$langs->trans("DoNotSuggestPaymentMode").'</option>';
|
||||||
|
print '<option value="-1"'.($conf->global->FACTURE_CHQ_NUMBER?' selected':'').'>'.$langs->trans("MenuCompanySetup").' ('.($mysoc->name?$mysoc->name:$langs->trans("NotDefined")).')</option>';
|
||||||
|
|
||||||
|
$sql = "SELECT rowid, label";
|
||||||
|
$sql.= " FROM ".MAIN_DB_PREFIX."bank_account";
|
||||||
|
$sql.= " WHERE clos = 0";
|
||||||
|
$sql.= " AND courant = 1";
|
||||||
|
$sql.= " AND entity IN (".getEntity('bank_account').")";
|
||||||
|
|
||||||
|
$resql=$db->query($sql);
|
||||||
|
if ($resql)
|
||||||
|
{
|
||||||
|
$num = $db->num_rows($resql);
|
||||||
|
$i = 0;
|
||||||
|
while ($i < $num)
|
||||||
|
{
|
||||||
|
|
||||||
|
$row = $db->fetch_row($resql);
|
||||||
|
|
||||||
|
print '<option value="'.$row[0].'"';
|
||||||
|
print $conf->global->FACTURE_CHQ_NUMBER == $row[0] ? ' selected':'';
|
||||||
|
print '>'.$langs->trans("OwnerOfBankAccount",$row[1]).'</option>';
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
print "</select>";
|
||||||
|
print "</td></tr>";
|
||||||
|
print "</table>";
|
||||||
|
print "</form>";
|
||||||
|
}
|
||||||
|
|
||||||
print '<br>';
|
print '<br>';
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -2118,7 +2118,7 @@ elseif ($id || $ref)
|
|||||||
if ($obj)
|
if ($obj)
|
||||||
{
|
{
|
||||||
// $obj->rowid is rowid in $origin."det" table
|
// $obj->rowid is rowid in $origin."det" table
|
||||||
$alreadysent[$obj->rowid][$obj->shipmentline_id]=array('shipment_ref'=>$obj->shipment_ref, 'shipment_id'=>$obj->shipment_id, 'warehouse'=>$obj->fk_entrepot, 'qty_shipped'=>$obj->qty_shipped, 'date_valid'=>$obj->date_valid, 'date_delivery'=>$obj->date_delivery);
|
$alreadysent[$obj->rowid][$obj->shipmentline_id]=array('shipment_ref'=>$obj->shipment_ref, 'shipment_id'=>$obj->shipment_id, 'warehouse'=>$obj->fk_entrepot, 'qty_shipped'=>$obj->qty_shipped, 'date_valid'=>$db->jdate($obj->date_valid), 'date_delivery'=>$db->jdate($obj->date_delivery));
|
||||||
}
|
}
|
||||||
$i++;
|
$i++;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1249,6 +1249,7 @@ SupplierPaymentSetup=Vendor payments setup
|
|||||||
PropalSetup=Commercial proposals module setup
|
PropalSetup=Commercial proposals module setup
|
||||||
ProposalsNumberingModules=Commercial proposal numbering models
|
ProposalsNumberingModules=Commercial proposal numbering models
|
||||||
ProposalsPDFModules=Commercial proposal documents models
|
ProposalsPDFModules=Commercial proposal documents models
|
||||||
|
SuggestedPaymentModesIfNotDefinedInProposal=Suggested payments mode on proposal by default if not defined for proposal
|
||||||
FreeLegalTextOnProposal=Free text on commercial proposals
|
FreeLegalTextOnProposal=Free text on commercial proposals
|
||||||
WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty)
|
WatermarkOnDraftProposal=Watermark on draft commercial proposals (none if empty)
|
||||||
BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal
|
BANK_ASK_PAYMENT_BANK_DURING_PROPOSAL=Ask for bank account destination of proposal
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user