Development #39997
rajouter l'action de workflow d'ajout d'une fiche
0%
Fichiers
Demandes liées
Révisions associées
Historique
Mis à jour par Frédéric Péters il y a environ 4 ans
- Sujet changé de rajouter des actions d'ajout, édition et suppression d'une fiche à rajouter des actions de workflow d'ajout, édition et suppression d'une fiche
(je pense qu'une action par ticket permettrait d'avancer de manière plus sûre)
Mis à jour par Serghei Mihai il y a environ 4 ans
- Sujet changé de rajouter des actions de workflow d'ajout, édition et suppression d'une fiche à rajouter des actions de workflow d'ajout d'une fiche
Tu as raison.
Mis à jour par Serghei Mihai il y a environ 4 ans
- Sujet changé de rajouter des actions de workflow d'ajout d'une fiche à rajouter l'action de workflow d'ajout d'une fiche
Mis à jour par Serghei Mihai il y a environ 4 ans
- Lié à Development #37528: Développer des actions de workflow pour la gestion des fiches (ajouter / modifier / supprimer) ajouté
Mis à jour par Mikaël Ates (de retour le 29 avril) il y a environ 4 ans
Sûrement cela est-il couvert mais il faut que l'action de création de la fiche puisse prendre en paramètre un uuid d'utilisateur pour l'associer à la fiche (form_user), comme on le fait en créant une fiche en backoffice avec :
{{ eservices_url }}backoffice/data/{{fiche_slug}}/add/?NameID={{uuid}}
Mis à jour par Frédéric Péters il y a environ 4 ans
L'action ici sera exactement l'action de création d'une nouvelle demande, avec case à cocher "reprendre l'usager", des évolutions seront possibles, après.
Mis à jour par Serghei Mihai il y a environ 4 ans
Tout à fait.
Je mets à jour la branche sous peu.
Mis à jour par Frédéric Péters il y a environ 4 ans
+ ok_in_global_action = False
Pourquoi pas ok ?
+ category = 'formdata-action'
+ endpoint = False
+ waitpoint = False
...
+ keep_user = True
Plutôt ne pas redéfinir, à l'identique, ce qui est dans la classe parente, avoir uniquement les différences.
+ form_property_name = 'cards'
...
+ form_property_name = 'links'
Pourquoi les faire apparaitre sous un autre nom, ça reste pour moi des données liées.
+ formdef_label = _('Form')
Et partout ailleurs où _() est utilisé : dans w.c.s. le _ n'est pas lazy, ne peut donc pas être employé là.
Mis à jour par Serghei Mihai il y a environ 4 ans
- Fichier 0001-wf-add-action-to-add-card-39997.patch 0001-wf-add-action-to-add-card-39997.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Remarques prises en compte.
Concerant le nom, je trouve plus clair de différencier les formulaires liés et les fiches.
Mis à jour par Frédéric Péters il y a environ 4 ans
+ Mapping(field_id='2', expression='=form_var_list_raw'),
+ Mapping(field_id='3', expression='=form_var_date'),
Dans les tests (comme ailleurs) j'aimerais éviter le recours aux expressions Python; il y a moyen de changer ça en gabarits ? (oui j'ai laissé passer ça dans #33186, pas une raison).
Mis à jour par Serghei Mihai il y a environ 4 ans
- Fichier 0001-wf-add-action-to-add-card-39997.patch 0001-wf-add-action-to-add-card-39997.patch ajouté
Oui, je garde quand même une expression en python pour quand même vérifier le log correspondant.
De plus je modifie la représentation de l'objet lié en fonction du nom de la classe.
Et je vais passer par links
pour les 2 types d'objets liés.
Mis à jour par Frédéric Péters il y a environ 4 ans
- title=_('Form'),
+ title=self.formdef_label,
Sans appel à gettext ça ne sera pas traduit.
Mis à jour par Serghei Mihai il y a environ 4 ans
Mis à jour par Frédéric Péters il y a environ 4 ans
Sans appel à gettext ça ne sera pas traduit.
C'est toujours le cas. Et pour éviter de passer à côté, c'est pareil pour mappings_label et varname_hint.
Aussi, côté libellés,
"Mappings to card fields" vs "Mappings to new form fields" et "Used to get linked card in expressions." This is used to get linked forms in expressions."
Pas de raison pour moi d'avoir ces différences.
Mis à jour par Serghei Mihai il y a environ 4 ans
- Fichier 0001-wf-add-action-to-create-card-data-39997.patch 0001-wf-add-action-to-create-card-data-39997.patch ajouté
Ok, réglé ça et au passage renommé l'action en quelque chose de plus comprehensible.
Mis à jour par Frédéric Péters il y a environ 4 ans
(pour le rebase c'est juste par rapport à un test, ça va se faire sans problème)
Aussi, je pense que l'intention au départ était de mettre toutes les actions sur les fiches dans ce wcs/wf/cards.py mais j'ai l'impression qu'on ne va pas aller vers ça, je serais du coup pour renommer le fichier.
LazyFormDataLinks est importé et pas utilisé.
Mis à jour par Serghei Mihai il y a environ 4 ans
Frédéric Péters a écrit :
Aussi, je pense que l'intention au départ était de mettre toutes les actions sur les fiches dans ce wcs/wf/cards.py mais j'ai l'impression qu'on ne va pas aller vers ça, je serais du coup pour renommer le fichier.
Ou rajouter le code dans create_formdata.py
vu que c'est presque la même action?
Mis à jour par Frédéric Péters il y a environ 4 ans
Sauf que ça ne correspond pas à "formdata" et comme l'action définit des classes qui se trouvent désormais dans des pickles, référençant le nom du module, celui-ci est désormais figé.
Mis à jour par Serghei Mihai il y a environ 4 ans
- Statut changé de Solution proposée à En cours
Ok, je renomme en create_carddata.py
Mis à jour par Serghei Mihai il y a environ 4 ans
- Fichier 0001-wf-add-action-to-create-card-data-39997.patch 0001-wf-add-action-to-create-card-data-39997.patch ajouté
- Statut changé de En cours à Solution proposée
Mis à jour par Frédéric Péters il y a environ 4 ans
for part in self._formdata.iter_evolution_parts(): - if not isinstance(part, LinkedFormdataEvolutionPart): - continue if part.varname == varname and part.formdata:
Plutôt comparer avec cls que risquer de partir sur un élément d'évolution qui n'aurait aucun rapport.
Mis à jour par Serghei Mihai il y a environ 4 ans
- Statut changé de Solution proposée à En cours
Je pense plutôt vérifier la présence de l'attribut formdef
pour vérifier si l'évolution est bien de type LinkedFormdataEvolutionPart
:
def __getattr__(self, varname): for part in self._formdata.iter_evolution_parts(): if not hasattr(part, 'formdef'): continue if part.varname == varname and part.formdata: return part.formdata.get_substitution_variables() raise AttributeError(varname)
et ainsi pouvoir couvrir les cas ou la demande a créé une autre demande mais aussi une fiche.
Mis à jour par Frédéric Péters il y a environ 4 ans
Je pense plutôt vérifier la présence de l'attribut formdef pour vérifier si l'évolution est bien de type LinkedFormdataEvolutionPart:
Non, vérifier la classe, pas partir sur l'idée qu'un autre objet ne pourra jamais avoir d'attribut formdef.
Mis à jour par Frédéric Péters il y a environ 4 ans
Aussi, depuis #40359, il faudrait importer N_.
Mis à jour par Serghei Mihai il y a environ 4 ans
- Fichier 0001-wf-add-action-to-create-card-data-39997.patch 0001-wf-add-action-to-create-card-data-39997.patch ajouté
- Statut changé de En cours à Solution proposée
En fait, pas besoin de retirer la condition car LinkedCardDataEvolutionPart
hérite de LinkedFormdataEvolutionPart
.
Mis à jour par Frédéric Péters il y a environ 4 ans
- Statut changé de Solution proposée à Solution validée
Mis à jour par Serghei Mihai il y a environ 4 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 84081f50da468f258d39f146c7153bb1493d1655 (origin/master, origin/HEAD) Author: Serghei Mihai <smihai@entrouvert.com> Date: Tue Nov 26 11:23:50 2019 +0100 wf: add action to create card data (#39997)
Mis à jour par Frédéric Péters il y a environ 4 ans
- Statut changé de Résolu (à déployer) à Solution déployée
wf: add action to create card data (#39997)