Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modification d'une ZH existante pb formulaire 4, 6 et 7 #80

Closed
JulesGrillot opened this issue Aug 22, 2024 · 5 comments
Closed

Modification d'une ZH existante pb formulaire 4, 6 et 7 #80

JulesGrillot opened this issue Aug 22, 2024 · 5 comments

Comments

@JulesGrillot
Copy link

Lors de l'édition d'une fiche déjà réalisée, enregistrer le formulaire 4 et 6 avec une entrée d'eau déjà présente et un statut de protection déjà présent créé une erreur :
image

Dans les logs postgres on peut voir ça

2024-08-22 11:32:28.003 CEST [98404] user@db ERREUR:  la valeur d'une clé dupliquée rompt la contrainte unique « pk_t_inflow »
2024-08-22 11:32:28.003 CEST [98404] user@db DÉTAIL:  La clé « (id_inflow, id_zh)=(1601, 1964) » existe déjà.
2024-08-22 11:32:28.003 CEST [98404] user@db INSTRUCTION :  INSERT INTO pr_zh.t_inflow (id_inflow, id_zh, id_permanance, topo) VALUES (1601, 1964, 1613, NULL)
2024-08-22 11:32:36.545 CEST [98405] user@db ERREUR:  la valeur d'une clé dupliquée rompt la contrainte unique « pk_cor_zh_protection_id_protection_status »
2024-08-22 11:32:36.545 CEST [98405] user@db DÉTAIL:  La clé « (id_protection, id_zh)=(19, 1964) » existe déjà.
2024-08-22 11:32:36.545 CEST [98405] user@db INSTRUCTION :  INSERT INTO pr_zh.cor_zh_protection (id_protection, id_zh) VALUES (19, 1964)

L'erreur proviendrait de ces lignes :

DB.session.execute(select(TInflow).where(TInflow.id_zh == id_zh))

DB.session.execute(select(CorZhProtection).where(CorZhProtection.id_zh == id_zh))

Comme pour les autres formulaires il faudrait réaliser un delete avant le post au lieu d'un select

DB.session.execute(delete(TInflow).where(TInflow.id_zh == id_zh))
DB.session.execute(delete(CorZhProtection).where(CorZhProtection.id_zh == id_zh))

Même problème avec le formulaire 7 et les actions :

DB.session.execute(select(TActions).where(TActions.id_zh == id_zh))

DB.session.execute(delete(TActions).where(TActions.id_zh == id_zh))

@camillemonchicourt
Copy link
Member

Quelles versions de GN et du module ?

@JulesGrillot
Copy link
Author

JulesGrillot commented Aug 22, 2024

Geonature : 2.14.2
ZH : 1.3.1

J'ai créé une pull request :
#81

J'ai recréé une pull request (je ne savais pas qu'en supprimant le fork ça supprimait également la pull request...) :
#83

@edelclaux
Copy link
Contributor

La suppression du fork supprime toute le projet github: le code, les pr, les issues, etc.
Du coup, t'as recréé un fork ?Ou t'as réussit à le dé-supprimer ? Toujours utile comme info :)

@JulesGrillot
Copy link
Author

J'ai pas essayé de le dé-supprimer, je n'ai pas retrouvé le fork une fois celui-ci supprimé.
Je l'ai juste recrée du coup.

Ouais on apprend tous les jours, ça va que c'était pas très compliqué comme modifs...

@edelclaux
Copy link
Contributor

Close by: #83

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants