Salut,

Le 02/05/2015 18:03, Hélène PETIT a écrit :
> Après avoir migré par escalier depuis une version 6 jusqu'à la version
> 0.810, tout à l'air de fonctionner parfaitement.
> Mais .... :
> ....quand je regarde le contenu de la table galette_dynamic_fields :
> il y a des enregistrements dont le champ 'item_id' ne correspond à rien
> ; j'avais imaginé que ce champ 'item_id' était un pointeur sur le champs
> 'id_adh' de galette_adherents (vu qu'il n'y a pas de jointure entre ces
> deux tables) ; et effectivement, il y a dans galette_dynamic_fields les
> enregistrements qui correspondent bien aux champs dynamiques des
> adhérents ; ma question c'est pour tous ces enregistrements en plus qui
> ne correspondent à aucun adhérent ?

Les champs dynamiques sont relativement complexes (encore plus s'il
s'agit de champs de type liste déroulante - mais là n'est pas le propos).

Dans la table galette_dynamic_fields, on trouve les champs suivants :
- item_id : identifiant de l'enregistrement lié (adhérent ou
contribution - en fonction de la valeur de field_form -  d'où l'absence
de liaison sur ce champ),
- field_id : le type de champ (clé externe vers la table
galette_field_types)
- field_form : le type lié (adh ou contrib)
- val_index : index pour les champs multi valués,
- field_val : la valeur du champ elle-même.

Donc, pour que tu puisse arriver à tes fins, il faut tout d'abord créer
le champ dynamique souhaité, et récupérer son identifiant dans la table
galette_field_types (disons qu'il est de type booléen, et que son id est
'4' pour l'exemple).
Si l'identifiant de l'adhérent est le 1526, et que l'on souhaite que
notre booléen soit true ; on doit donc avoir dans galette_dynamic_fields :
- item_id : 1526
- field_id : 4
- field_form : adh
- val_index : 1
- field_val : 1

> C'est peut-être un effet de bord d'un script de migration, c'est pour ça
> que je demande ici ce que vous en pensez .......

Pour les entrées de la table qui te sont inconnues, elles doivent
certainement pointer sur des contributions ; ou bien il y a
effectivement un os.

Ce n'est jamais vraiment à exclure, surtout sur une migration aussi
importante ; mais dans l'absolu, les histoires de champs dynamiques
n'ont pas beaucoup changé à travers le temps. Il se peut aussi que tu
sois tombée sur un bug ; la plupart du temps, ces données sont générées
par Galette directement, il est possible que tu sois tombée sur un cas
de figure qui n'est pas censé arriver.

En espérant que ça puisse t'aider... Bon courage :)

++
-- 
Johan

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Galette-discussion mailing list
Galette-discussion@gna.org
https://mail.gna.org/listinfo/galette-discussion

Répondre à