Bonjour,
Jâai un phĂ©nomĂšne bizarre sur une appli personnalisĂ©e.
Jâai un doctype avec une table enfant qui fait rĂ©fĂ©rence Ă un autre doctype.
Hors les index sur la table changent Ă©trangement.
La ligne 2 est placée plus bas et son index a changé.
Dâautant plus que le doctype est soumis, il nâest pas censĂ© se modifier.
Avez-vous dĂ©jĂ vu ce phĂ©nomĂšne que je nâarrive pas Ă expliquer ?
Bonne journée,
Ludovic
Le champ dâindex idx
est présent dans tous les documents, table enfant ou non. Dans un document normal, idx
est utilisé pour stocker le nombre de références à ce document.
Autrement dit, dÚs que le document est sélectionné dans un champ de Lien, la valeur de idx
est incrĂ©mentĂ©e, sauf pour les tables enfants. Il faut que je vĂ©rifie quâil nây a pas de bug dans la logique de mise Ă jour, et que ça ne sâapplique pas aux lignes table enfant.
Jâimagine que toutes tes lignes (sauf la premiĂšre) sont rĂ©fĂ©rencĂ©es par dâautres documents ? Est-ce que le champ de lien qui fait rĂ©fĂ©rence Ă tes lignes est de type Lien ou alors de type Lien Dynamique ?
Bonjour Corentin,
Oui, effectivement, les lignes reprĂ©sentent les « questions » dâun questionnaire.
Lorsque la personne répond au questionnaire, on crée un autre document de type « soumission » qui contient aussi un tableau « réponses » dont les lignes font référence à chaque question. Le champ de référence est de type Lien.
Je viens de comprendre ton message @Corentin, je pensais que idx
Ă©tait utilisĂ© pour lâordre dans la liste.
Ă te lire, ce champ est utilisĂ© pour compter le nombre de fois que le document apparaĂźt en rĂ©fĂ©rence ? Ce qui change un peu la donne dans lâapplication car il faut que je trouve un moyen dâordonner ces lignes dans le questionnaire.
La solution : utiliser le type de champ Données au lieu de Lien.
Sauf pour les tables enfants, oĂč idx
est effectivement utilisĂ© pour afficher le numĂ©ro et pour ordonner les lignes, et donc ne devrait pas ĂȘtre modifiĂ©. Techniquement, ça ne devrait pas ĂȘtre possible de choisir une table enfant comme type de document pour un lien, pour Ă©viter ce problĂšme.
Dâailleurs il est impossible de changer la valeur dâun Lien vers une table enfant depuis lâinterface utilisateur :
Le problĂšme ne se produit pas lorsquâon crĂ©e une commande Ă partir dâun devis, oĂč chaque ligne du devis est rĂ©fĂ©rencĂ©e dans une ligne de commande : en effet, le type Lien nâest pas utilisĂ©, justement pour Ă©viter ce problĂšme.
Merci @corentin
Jâai modifiĂ© la dĂ©finition de mes champs pour correspondre Ă cette particularitĂ©.
1 « J'aime »