Bonjour,

Je ne comprends pas pkoi il enregistre en double ?

Ce que je fais

Voici mon array()

array(
    (int) 0 => array(
        'PrimesDetails' => array(
            (int) 0 => array(
                'name' => 'Indemnité de transport',
                'montant' => (float) 39
            ),
            (int) 1 => array(
                'name' => 'Prime de présence',
                'montant' => (float) 6.08
            ),
            (int) 2 => array(
                'name' => 'Prime de panier',
                'montant' => (float) 7.8
            ),
            (int) 3 => array(
                'name' => 'indemnité de salissure',
                'montant' => (float) 2
            ),
            (int) 4 => array(
                'name' => 'indemnité de panier ou la nourriture',
                'montant' => (float) 2
            )
        ),
        'Paie' => array(
            'id' => '',
            'personnel_id' => '10',
            'jour-absence' => '',
            'jour-ferie' => '',
            'avance' => '',
            'pret' => '',
            'heure-supp' => '',
            'date' => '2016-04-01'
        ),
        'Bulletin' => array(
            'date' => '2016-04-01',
            'base' => '3000.000',
            'brut' => (float) 3056.88,
            'cnss' => (float) 280.621584,
            'imposable' => (float) 2472.3825744,
            'irpp' => (float) 577.11666666667,
            'avance' => (float) 0,
            'pret' => (float) 0,
            'salaire-net-mensuel' => (float) 1895.2659077333
        )
    ),
    (int) 1 => array(
        'PrimesDetails' => array(),
        'Paie' => array(
            'id' => '',
            'personnel_id' => '12',
            'jour-absence' => '',
            'jour-ferie' => '',
            'avance' => '',
            'pret' => '',
            'heure-supp' => '',
            'date' => '2016-04-01'
        ),
        'Bulletin' => array(
            'date' => '2016-04-01',
            'base' => '1500.000',
            'brut' => (float) 1500,
            'cnss' => (float) 137.7,
            'imposable' => (float) 1199.82,
            'irpp' => (float) 218.6875,
            'avance' => (float) 0,
            'pret' => (float) 0,
            'salaire-net-mensuel' => (float) 981.1325
        )
    )
)

et je lance une sauvegarde avec saveAll(), mais il enregistre dans la table Paie 4 fois, c'est quoi mon erreur ?

Merci

1 réponse


agencep
Auteur
Réponse acceptée

Bonjour,

J'ai trouver une solution et j'espère que c'est la meilleure solution en utilisant

$this->saveAssociated($data,array('deep' => true));