Salut @oryxr,
Les principaux avantages d’une app sont :
- Utiliser git pour le contrĂ´le de version
- Mettre en place des tests
- Pousser plus loin le custom (par ex - accès à toutes les functions python de Frappe, hooks de documents plus avancés, pouvoir écraser des classes ou méthodes etc.)
- Transporter facilement les personnalisations
Au-dela d’une poignée de scripts et champs custom ça me semble une bonne idée oui.
L’inconvénient principal que je vois est que si tu bascules sur le cloud frappe tu ne peux pas installer d’app customs sur les plans les moins cher. J’imagine que c’est similaire sur le cloud dokos mais je laisse la team dokos confirmer/infirmer
Je te mets quelques infos sur comment procéder ci-dessous.
Champs et propriétés personnalisés
Quand ton bench est en mode develop
, Il y a une fonction « Exporter les personnalisations » dans le menu Personnaliser
des doctype
qui te permet de récupérer tes personnalisations pour celui-ci.
Scripts serveur
Il faut créer un ou plusieurs fichier python avec tes scripts puis référencer la function dans le fichier hook.py
de l’app (cf doc frappe).
Par exemple
doc_events = {
"Event": {
"before_save": [
"monapp.controllers.event.update_publication",
"monapp.controllers.event.email_technical_team"
],
"after_save": "monapp.controllers.event.sync_item_booking",
},
"Quotations": {
"before_validate": "monapp.controllers.quotation.update_project_event"
},
}
Scripts clients
Tu peux les référencer dans le fichier hook.py
Ă©galement.
Exemple
doctype_js = {"Sales Order": "public/js/group_order.js"}
Voila dans les grandes lignes !
A plus,
Antoine.