Est-ce que les attributs de type Document sont pris en compte dans les attributs d’action ?
Je souhaite faire un ajout en masse de document suite à une sélection en liste.
Simplicité version 4.0
patch level P25
Built on2021-08-31 22:38
Est-ce que les attributs de type Document sont pris en compte dans les attributs d’action ?
Je souhaite faire un ajout en masse de document suite à une sélection en liste.
Simplicité version 4.0
patch level P25
Built on2021-08-31 22:38
Bonjour,
Non implémenté en V4 qui ne supporte que des paramètres clé/valeur via une Map<String,String>
passée en paramètre de la méthode de l’action.
En V5, par contre la méthode peut également prendre en paramètre l’action qui possède des accesseurs aux attributs action.getConfirmField
Voir la documentation des actions :
https://docs.simplicite.io/documentation/01-core/custom-actions-examples.md
public String myAction(Action action) {
String lang = getGrant().getLang();
// String field (text, date...)
String param = action.getConfirmField(lang, "myStringField").getValue();
// Document field
ObjectField myDocField = action.getConfirmField(lang, "myDocField");
DocumentDB doc = myDocField!=null ? myDocField.getDocument() : null;
AppLog.info(getClass(), "myAction", "DOCUMENT " + doc, getGrant());
if (doc!=null) {
// Uploaded tmp file from UI
java.io.File file = doc.getUploadFile();
AppLog.info(getClass(), "myAction", "DOCUMENT FILE " + file, getGrant());
// do something with the document...
// You must remove the file from /tmp directory when used
file.delete();
}
// ...
}
Attention, le document en paramètre n’est pas en mémoire, c’est un fichier temporaire sur le serveur, donc à détruire quand l’action l’a consommé et via InputStream pour éviter de le charger en mémoire.
Merci Francois pour ce retour, je ne peux donc pas le faire en 4.0
Autre question :
Est il possible de filtrer l’input d’un processus métier sur une sélection en liste ? : Idée : mettre en oeuvre un processus métier pour permettre l’ajout en masse du document.
Mais bon c’est aller à contre courant, autant utiliser cette charge de travail pour passer en V5.
Merci pour ces retours.
Les migrations en V5 sont prévues en T4 2021 et puis en 2022.
Sujet clos.
This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.