[{"data":1,"prerenderedAt":375},["ShallowReactive",2],{"\u002Fnext\u002Fdodock\u002Fpersonnalisation\u002Fautomatisations\u002Fdeclencheurs":3,"section:\u002Fnext\u002Fdodock\u002Fpersonnalisation\u002Fautomatisations\u002Fdeclencheurs":374},{"id":4,"title":5,"body":6,"description":357,"extension":358,"meta":359,"navigation":360,"path":370,"seo":371,"stem":372,"__hash__":373},"docs\u002F2.next\u002F3.dodock\u002F03.personnalisation\u002F01.automatisations\u002Fdeclencheurs.md","Déclencheurs d'automatisation",{"type":7,"value":8,"toc":341},"minimark",[9,24,29,197,202,227,231,239,243,256,259,273,276,286,290,293,313,316,320,326],[10,11,12,13,18,19,23],"p",{},"Le déclencheur est l'événement qui démarre un ",[14,15,17],"a",{"href":16},"\u002Fnext\u002Fdodock\u002Fpersonnalisation\u002Fautomatisations\u002Fflux-d-automatisation","flux d'automatisation",". Vous le choisissez dans le champ ",[20,21,22],"strong",{},"Type de déclencheur"," du flux.",[25,26,28],"h2",{"id":27},"types-de-déclencheurs","Types de déclencheurs",[30,31,32,48],"table",{},[33,34,35],"thead",{},[36,37,38,42,45],"tr",{},[39,40,41],"th",{},"Trigger Type",[39,43,44],{},"Le flux démarre quand…",[39,46,47],{},"Paramètres",[49,50,51,65,77,99,111,123,135,156,171,185],"tbody",{},[36,52,53,59,62],{},[54,55,56],"td",{},[20,57,58],{},"Document créé",[54,60,61],{},"un document est créé.",[54,63,64],{},"—",[36,66,67,72,75],{},[54,68,69],{},[20,70,71],{},"Document mis à jour",[54,73,74],{},"un document existant est enregistré. La création ne compte pas.",[54,76,64],{},[36,78,79,84,87],{},[54,80,81],{},[20,82,83],{},"Champ modifié",[54,85,86],{},"un champ précis change de valeur à l'enregistrement.",[54,88,89,92,93,92,96],{},[20,90,91],{},"Champ déclencheur",", ",[20,94,95],{},"Valeur de départ",[20,97,98],{},"To Value",[36,100,101,106,109],{},[54,102,103],{},[20,104,105],{},"Document supprimé",[54,107,108],{},"un document est supprimé.",[54,110,64],{},[36,112,113,118,121],{},[54,114,115],{},[20,116,117],{},"Document validé",[54,119,120],{},"un document est validé.",[54,122,64],{},[36,124,125,130,133],{},[54,126,127],{},[20,128,129],{},"Document annulé",[54,131,132],{},"un document est annulé.",[54,134,64],{},[36,136,137,142,145],{},[54,138,139],{},[20,140,141],{},"Basé sur une date",[54,143,144],{},"une date du document est atteinte, avec un décalage.",[54,146,147,92,150,92,153],{},[20,148,149],{},"Champ de date",[20,151,152],{},"Décalage de date (jours)",[20,154,155],{},"Sens de la date",[36,157,158,163,166],{},[54,159,160],{},[20,161,162],{},"Programmé",[54,164,165],{},"l'heure d'une expression cron est atteinte.",[54,167,168],{},[20,169,170],{},"Expression cron",[36,172,173,178,181],{},[54,174,175],{},[20,176,177],{},"Événement personnalisé",[54,179,180],{},"une application émet un événement nommé.",[54,182,183],{},[20,184,177],{},[36,186,187,192,195],{},[54,188,189],{},[20,190,191],{},"Manuel",[54,193,194],{},"un appel explicite lance le flux.",[54,196,64],{},[198,199,201],"h3",{"id":200},"changement-de-valeur","Changement de valeur",[10,203,204,205,207,208,210,211,213,214,92,218,220,221,213,223,226],{},"Laissez ",[20,206,95],{}," ou ",[20,209,98],{}," vides pour accepter n'importe quelle valeur. Exemple : ",[20,212,91],{}," ",[215,216,217],"code",{},"status",[20,219,95],{}," vide, ",[20,222,98],{},[215,224,225],{},"Approved",". Le flux démarre dès que le statut devient « Approved », quel que soit le statut précédent.",[198,228,230],{"id":229},"date","Date",[10,232,233,235,236,238],{},[20,234,149],{}," propose les champs de type date du document, plus « Created On » et « Last Updated On ». ",[20,237,155],{}," vaut « Before » ou « After ». Le moteur vérifie ces flux une fois par heure.",[198,240,242],{"id":241},"planification","Planification",[10,244,245,247,248,251,252,255],{},[20,246,170],{}," utilise le format cron standard à cinq champs. Exemple : ",[215,249,250],{},"0 9 * * 1"," signifie chaque lundi à 9 h 00. Le moteur vérifie les flux planifiés toutes les cinq minutes. Le champ ",[20,253,254],{},"Prochaine exécution"," affiche la prochaine exécution prévue.",[198,257,177],{"id":258},"événement-personnalisé",[10,260,261,262,265,266,268,269,272],{},"Une application appelle ",[215,263,264],{},"frappe.automation_engine.events.emit(\"nom_evenement\", doc=..., payload=...)",". Le flux dont le champ ",[20,267,177],{}," porte ce nom démarre. Par défaut, l'événement doit être déclaré par l'application dans le hook ",[215,270,271],{},"automation_events",".",[198,274,191],{"id":275},"manuel",[10,277,278,279,282,283,23],{},"Le flux démarre seulement par un appel à la méthode ",[215,280,281],{},"frappe.automation_engine.api.run_manually",". Aucun bouton n'est ajouté au document cible. Pour essayer un flux, utilisez plutôt le bouton ",[20,284,285],{},"Exécution de test",[25,287,289],{"id":288},"conditions-de-déclenchement","Conditions de déclenchement",[10,291,292],{},"Les conditions limitent les documents qui démarrent le flux.",[294,295,296,303],"ul",{},[297,298,299,302],"li",{},[20,300,301],{},"Champs correspondants"," : des règles sur les champs du document, construites avec le sélecteur de filtres. Toutes les règles doivent être vraies.",[297,304,305,308,309,312],{},[20,306,307],{},"Expression avancée en Python"," : une expression facultative, avec le document dans ",[215,310,311],{},"doc",". Elle sert aux conditions que les règles ne savent pas exprimer, par exemple un « OU ».",[10,314,315],{},"Les règles et l'expression doivent toutes être vraies.",[198,317,319],{"id":318},"exemple","Exemple",[10,321,322,323,325],{},"Exemple fictif : un flux sur « Client » avec le déclencheur ",[20,324,71],{},". Pour qu'il s'exécute seulement pour les clients d'Europe ou de France :",[294,327,328,333],{},[297,329,330,332],{},[20,331,301],{}," : vide.",[297,334,335,337,338,272],{},[20,336,307],{}," : ",[215,339,340],{},"doc.territory in (\"Europe\", \"France\")",{"title":342,"searchDepth":343,"depth":344,"links":345},"",1,2,[346,354],{"id":27,"depth":344,"text":28,"children":347},[348,350,351,352,353],{"id":200,"depth":349,"text":201},3,{"id":229,"depth":349,"text":230},{"id":241,"depth":349,"text":242},{"id":258,"depth":349,"text":177},{"id":275,"depth":349,"text":191},{"id":288,"depth":344,"text":289,"children":355},[356],{"id":318,"depth":349,"text":319},"Les déclencheurs qui démarrent un flux d'automatisation : événement de document, changement de champ, date, planification, événement personnalisé ou appel manuel.","md",{"reviewed":360,"last_verified":361,"sources":362},true,"2026-11-04",[363,364,365,366,367,368,369],"frappe\u002Fautomation\u002Fdoctype\u002Fautomation_flow\u002Fautomation_flow.json","frappe\u002Fautomation_engine\u002Fdispatch.py","frappe\u002Fautomation_engine\u002Fconditions.py","frappe\u002Fautomation_engine\u002Fscheduler.py","frappe\u002Fautomation_engine\u002Fevents.py","frappe\u002Fautomation_engine\u002Fapi.py","frappe\u002Fhooks.py","\u002Fnext\u002Fdodock\u002Fpersonnalisation\u002Fautomatisations\u002Fdeclencheurs",{"title":5,"description":357},"2.next\u002F3.dodock\u002F03.personnalisation\u002F01.automatisations\u002Fdeclencheurs","IrDxLdlG74aP8v4-CiizMZWXe3Ko-TqUXE6HQYV22jQ",{},1793871795255]