-
Notifications
You must be signed in to change notification settings - Fork 125
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
White screen when duplicate a form #1779
Comments
Hi, |
Hi It seems that you have a target ticket with a group assigned as an actor (requester, observer or assigned). This group was probably deleted later. Could you edit the target ticket and check if you see a group labelled "N/A" in the actors ? |
Hi, |
Hi Please try this fix and feedback. |
Bonjour,
Avec le patch :
A noter la 1ère ligne d'erreur ligne qui est présente sans le patch (ça n'est pas un oubli de copier/coller) |
Apparemment le patch fait son office; mais l'exception devrait être interceptée pour éviter une page blanche. En tout cas, c'est clair, le groupe n'est pas rtrouvé dans la BDD, ou alors il y a un souci de conversion UUID / ID ou NOM / ID à résoudre. Il faudrait lire le fichier JSON pour trouver le groupe, puis vérifier en BDD si il existe bel et bien. Si il n'existe pas, l'import devrait échouer, mais l'exception doit être interceptée pour éviter une page blanche. |
Ce formulaire provient d'un autre environnement (dev), et les groupes de même nom ne sont pas forcément numérotés (id) de façon identique dans la cible, effectivement. |
Bonjour, Je vois qu'en effet la gestion d'exceptions n'est pas faite dans le cas d'une duplication de formulaire. Voilà un patch qui devrait rendre l'echec plus "user friendly" Pouvez-vous l'essayer et me faire un retour ? Notez que le duplicata du formulaire ne devrait plus persister comme c'était le cas avant. |
Ajoutez le 2e commit du fix précédent, et ajoutez également celui-ci: 2df515b Les groupes manquants devraient arfficher leur ID, et le formulaire dupliqué persistera en BDD, mais renommé de manière explicite. |
Celui-ci ? aaaf7a7 |
Non, celui-ci : 4a1ccc1 |
Je vais laisser le message d'erreur, ca attierra bien sur le fait que le formulaire ne fonctinnera pas comme voulu. J'espère avoir la possibilité de créer des uuid dans le coeur de GLPI 9.6 pour résoudre cela au mieux. |
Ah mais je vois que je n'ai pas appliqué 2df515b |
En effet. J'attends votre retour avant de merger ce commit |
Comment il y a pu avoir un ID 0 dans ce formulaire ?? |
Pour trouver pourquoi il y a un ID 0, i lfaut vérifier si on a bien un nombre stocké dans le JSON, et éventuellement analyser le formulaire d'origine, et vérifier le code d'export (dans un autre ticket si on ne veut pas se perdre) |
Par comparaison des deux version, j'ai un bloc complet de question qui disparaît pour la version dupliquée. Avec un UUID, je ne sais pas retrouver dans la bdd... Ce n'est pas trop grave, je vais continuer à chercher ce qui n'allait pas sur ce formulaire précis (j'en avais d'autre) la fonction d'export perdure, ça c'est super. Pour moi, les 3 correctifs : |
les UUID figurant dans le .json d'export sont ceux dans la BDD d'où est tiré l'export. Seuls les objets du plugin sont concernés par ces UUID. Ils servent d'identifiant alternatifs pour ne pas s'appuyer sur des ID ai moment de l'import (ceux-ci pourraient être éjà utilisés). Il y a à mon avis d'autres soucis dans l'import, il ya encore des PR en attente afin de corriger cela. Je ferme ce ticket, puisque résolu. Merci pour les retours, ils sont appréciables pour améliorer cette partie du plugin. |
Describe the bug
When I want to duplicate a form, I have a blanck screen. If I go back, the form is created, I don't know if good creation. For example, it's not marked "copy".
Debug mode display an error:
To Reproduce
I am not sure, but, I think the problem occurs when a form with a group is affected to tech and the form is exported to another system who don't have this group.
It's remain that the group is not shown, so it's not visible and can't be deleted. The form is broken.
Expected behavior
Could delete a bad group (marked in the form but doesn't exists in base.
Version :
GLPI 9.4.5+Form 2.9.1
The text was updated successfully, but these errors were encountered: