dthonon / Client_API_VN

Export from VisioNature (Biolovision) web site to local postgresql database
GNU General Public License v3.0
3 stars 1 forks source link

Formulaires non supprimés #181

Open dthonon opened 2 years ago

dthonon commented 2 years ago

In GitLab by @mgageo on Dec 11, 2021, 08:53

Je viens de mettre en place une nouvelle instance du client. Après synchronisation, j'ai des différences par rapport à une instance en mise à jour.

Sur l'instance en mise à jour des formulaires n'ont pas été supprimés : id id_form_universal.x date_start.x id_form_universal.y date_start.y
40480 43_581687 2020-03-25 NA NA
42181 43_599298 2020-04-01 NA NA
74483 65_1412342 2021-04-11 NA NA
86495 43_912200 2021-11-12 NA NA
dthonon commented 2 years ago

Il n'existe pas d'API pour gérer les formulaires, qui sont en réalité téléchargés avec les observations. Quand je reçois une observation faisant partie d'un formulaire, je crée le formulaire (forms) dans la base. Tout va bien tant qu'il s'agit d'ajouter des observations à ce formulaire, ce qui est le fonctionnement standard de l'API.

Ce qui pose problème, c'est que la suppression d'une observation ne supprime pas le formulaire, vu que d'autres observations peuvent en dépendent. Et comme le lien est fait entre observations et forms, via id_forms_universal, je ne peux pas savoir directement si un formulaire n'a plus d'observations associées.

Pour corriger ce problème, il faudrait que je gère un compteur de références dans forms, pour suivre les créations et suppressions d'observations. Ce n'est pas trivial, et je ne promets pas de la faire rapidement...