Normalement ce n’est pas compatible avec Dolibarr v3.0.0, mais si ça marche…
Soit votre champ nommé ‹ ftc ›.
Basiquement, en PDF vous l’appelez en faisant $object->customfields->cf_ftc (mais avant il faut remplir $object avec customfields_fill_object($object) ).
Pour l’ajout du champ, si c’est en PDF, faites:
Dans un template pdf (eg: /htdocs/core/modules/facture/doc/pdf_crabe.modules.php), modifiez la fonction _tableau_tot() :
// Total HT
$pdf->SetFillColor(255,255,255);
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, price($sign * ($object->total_ht + $object->remise)), 0, 'R', 1);
en:
// Init and main vars
include_once(DOL_DOCUMENT_ROOT.'/customfields/lib/customfields_aux.lib.php');
// Filling the $object with customfields (you can then access customfields by doing $object->customfields->cf_yourfield)
$customfields = customfields_fill_object($object, null, $outputlangs, null, true);
// FTC HT
$pdf->SetFillColor(255,255,255);
$pdf->SetXY($col1x, $tab2_top + 0);
$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("FTCHT"), 0, 'L', 1);
$pdf->SetXY($col2x, $tab2_top + 0);
$pdf->MultiCell($largcol2, $tab2_hl, $object->customfields->cf_ftc, 0, 'R', 1);
// Total HT
$index++;
$pdf->SetFillColor(255,255,255);
$pdf->SetXY($col1x, $tab2_top + $tab2_hl * $index);
$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
$pdf->SetXY($col2x, $tab2_top + $tab2_hl * $index);
$pdf->MultiCell($largcol2, $tab2_hl, price($sign * ($object->total_ht + $object->remise)), 0, 'R', 1);
Si c’est en ODT, tout simplement faites un {cf_ftc}, ce sera automatiquement remplacé par la valeur.
Dans les deux cas, si vous voulez que votre champ FTC soit ajouté dans le TTC, il faut également modifier la variable:
$object->total_ttc
en:
$object->total_ttc + $object->customfields->cf_ftc
Pour l’ODT, si vous voulez modifier le total, vous pouvez essayer d’utiliser une formule de calcul automatique qui sera évaluée au moment de générer le document (mais pas sûr que cela marche).