trigger_facture
đź”§ mergeCooperativeLines
=== GESTION DU CHANGEMENT DE CLIENT === Traitement automatique lors du changement du client associé à la facture
function mergeCooperativeLines($facture){
// Création d'un gestionnaire de lignes pour la facture coopérative
$ligManager = new \NOOA_WIREFRAME\Lig\LigManager($facture->get_id_type(), $facture->getAttributeidobje(), 173);
// Récupération des lignes existantes
$ligs = $ligManager->getLigs();
// On ignore les lignes de sections pour ne par avoir de ligne vide
foreach ($ligs as $key => $item) {
if ($item['ligne_section'] == "1") {
unset($ligs[$key]);
}
}
// === FUSION DES LIGNES AVEC ACCUMULATION DES VALEURS NUMÉRIQUES ===
$numericFields = [
'prod_tottva',
// ... (truncated)
đź”§ mergeCooperativeLines
=== FONCTION D'INITIALISATION DES FACTURES COOPÉRATIVES === Cette fonction initialise une facture liée à une coopérative en créant les lignes de produits spécifiques nécessaires
function mergeCooperativeLines($facture){
// Création d'un gestionnaire de lignes pour la facture coopérative
$ligManager = new \NOOA_WIREFRAME\Lig\LigManager($facture->get_id_type(), $facture->getAttributeidobje(), 173);
// Récupération des lignes existantes
$ligs = $ligManager->getLigs();
// On ignore les lignes de sections pour ne par avoir de ligne vide
foreach ($ligs as $key => $item) {
if ($item['ligne_section'] == "1") {
unset($ligs[$key]);
}
}
// === FUSION DES LIGNES AVEC ACCUMULATION DES VALEURS NUMÉRIQUES ===
$numericFields = [
'prod_tottva',
// ... (truncated)