Créer, planifier et exécuter des tâches et des flux de travail récurrents avec le déclencheur Récurrence dans Azure Logic AppsCreate, schedule, and run recurring tasks and workflows with the Recurrence trigger in Azure Logic Apps

Pour exécuter régulièrement des tâches, des processus ou des travaux en fonction d’une planification spécifique, vous pouvez démarrer le flux de travail de votre application logique avec le déclencheur Récurrence - Planification intégré.To regularly run tasks, processes, or jobs on specific schedule, you can start your logic app workflow with the built-in Recurrence - Schedule trigger. Vous pouvez définir une date et une heure, ainsi qu’un fuseau horaire, pour démarrer le flux de travail, et une récurrence pour la répétition de ce flux de travail.You can set a date and time as well as a time zone for starting the workflow and a recurrence for repeating that workflow. Si des récurrences sont omises pour une raison quelconque, ce déclencheur poursuit la récurrence lors du prochain intervalle planifié.If recurrences are missed for any reason, this trigger continues recurring at the next scheduled interval. Pour plus d’informations sur les déclencheurs et actions de Planification intégrés, voir Planifier et exécuter des tâches et des workflows automatisés et récurrents avec Azure Logic Apps.For more information about the built-in Schedule triggers and actions, see Schedule and run recurring automated, tasks, and workflows with Azure Logic Apps.

Voici quelques modèles pris en charge par ce déclencheur, ainsi que des récurrences plus avancées et des planifications complexes :Here are some patterns that this trigger supports along with more advanced recurrences and complex schedules:

  • Exécuter immédiatement et répéter tou(te)s les n secondes, minutes, heures, jours, semaines ou mois.Run immediately and repeat every n number of seconds, minutes, hours, days, weeks, or months.

  • Démarrer à une date et une heure spécifiques, exécuter immédiatement et répéter tou(te)s les n secondes, minutes, heures, jours, semaines ou mois.Start at a specific date and time, then run and repeat every n number of seconds, minutes, hours, days, weeks, or months.

  • Exécuter et répéter une ou plusieurs fois par jour, par exemple à 8h00 et 17h00.Run and repeat at one or more times each day, for example, at 8:00 AM and 5:00 PM.

  • Exécuter et répéter chaque semaine, mais uniquement certains jours, par exemple le samedi et le dimanche.Run and repeat each week, but only for specific days, such as Saturday and Sunday.

  • Exécuter et répéter chaque semaine, mais uniquement certains jours et à des heures précises, par exemple du lundi au vendredi à 8h00 et 17h00.Run and repeat each week, but only for specific days and times, such as Monday through Friday at 8:00 AM and 5:00 PM.

Pour connaître les différences entre ce déclencheur et le déclencheur Fenêtre glissante, ou pour plus d’informations sur la planification des flux de travail récurrents, consultez Schedule and run recurring automated tasks, processes, and workflows with Azure Logic Apps (Planifier et exécuter des tâches, des processus et des flux de travail automatisés et récurrents avec Azure Logic Apps).For differences between this trigger and the Sliding Window trigger or for more information about scheduling recurring workflows, see Schedule and run recurring automated tasks, processes, and workflows with Azure Logic Apps.

Conseil

Pour déclencher votre application logique et l’exécuter une seule fois, voir Exécuter des travaux une seule fois.If you want to trigger your logic app and run only one time in the future, see Run jobs one time only.

Conditions préalables requisesPrerequisites

Ajouter le déclencheur RécurrenceAdd Recurrence trigger

  1. Connectez-vous au portail Azure.Sign in to the Azure portal. Créez une application logique vide.Create a blank logic app.

  2. Une fois que le concepteur Logic Apps s’affiche, entrez recurrence comme filtre dans la zone de recherche.After Logic App Designer appears, in the search box, enter recurrence as your filter. Dans la liste des déclencheurs, sélectionnez ce déclencheur pour la première étape dans votre workflow d’application logique : PériodicitéFrom the triggers list, select this trigger as the first step in your logic app workflow: Recurrence

    Sélectionner le déclencheur « Récurrence »

  3. Définissez l’intervalle et la fréquence de la périodicité.Set the interval and frequency for the recurrence. Dans cet exemple, définissez ces propriétés de sorte que votre flux de travail soit exécuté chaque semaine.In this example, set these properties to run your workflow every week.

    Définir l’intervalle et la fréquence

    PropriétéProperty Nom JSONJSON name ObligatoireRequired TypeType DescriptionDescription
    IntervalleInterval interval OuiYes IntegerInteger Nombre entier positif qui décrit la fréquence à laquelle le flux de travail s’exécute en fonction de la fréquence.A positive integer that describes how often the workflow runs based on the frequency. Les intervalles minimaux et maximaux sont les suivants :Here are the minimum and maximum intervals:

    - Mois : 1-16 mois- Month: 1-16 months
    Jour : 1-500 jours- Day: 1-500 days
    - Heure : 1-12 000 heures- Hour: 1-12,000 hours
    - Minute : 1-72 000 minutes- Minute: 1-72,000 minutes
    - Seconde : 1-9 999 999 secondes- Second: 1-9,999,999 seconds

    Par exemple, si l’intervalle est de 6 et que la fréquence soit définie sur « Mois », la périodicité est alors tous les 6 mois.For example, if the interval is 6, and the frequency is "Month", then the recurrence is every 6 months.

    FréquenceFrequency frequency OuiYes StringString Unité de temps à utiliser pour la récurrence : Seconde, Minute, Heure, Jour, Semaine ou MoisThe unit of time for the recurrence: Second, Minute, Hour, Day, Week, or Month

    Important

    Quand les récurrences ne spécifient pas d’options de planification avancées, les récurrences ultérieures sont basées sur l’heure de la dernière exécution.When recurrences don't specify advanced scheduling options, future recurrences are based on the last run time. Les heures de début de ces récurrences peuvent dériver en raison de facteurs tels que la latence lors des appels de stockage.The start times for these recurrences might drift due to factors such as latency during storage calls. Pour vous assurer que votre application logique ne manque pas de récurrence, en particulier quand la fréquence est en jours ou plus, utilisez l’une des options suivantes :To make sure that your logic app doesn't miss a recurrence, especially when the frequency is in days or longer, use one of these options:

    • Indiquez une heure de début pour la récurrence.Provide a start time for the recurrence.

    • Spécifiez les heures et les minutes d’exécution de la récurrence à l’aide des propriétés À ces heures et À ces minutes.Specify the hours and minutes for when to run the recurrence by using the At these hours and At these minutes properties.

    • Utilisez le déclencheur de fenêtre glissante plutôt que le déclencheur de récurrence.Use the Sliding Window trigger, rather than the Recurrence trigger.

  4. Pour définir des options de planification avancées, ouvrez la liste Ajouter un nouveau paramètre.To set advanced scheduling options, open the Add new parameter list. Toutes les options que vous sélectionnez s’affichent sur le déclencheur.Any options that you select appear on the trigger after selection.

    Options avancées de planification

    PropriétéProperty Nom JSONJSON name ObligatoireRequired TypeType DescriptionDescription
    Fuseau horaireTime zone timeZone NonNo StringString S’applique uniquement quand vous spécifiez une heure de début, car ce déclencheur n’accepte pas le décalage UTC.Applies only when you specify a start time because this trigger doesn't accept UTC offset. Sélectionnez le fuseau horaire à appliquer.Select the time zone that you want to apply.
    Heure de débutStart time startTime NonNo StringString Indiquez une date et une heure de début au format suivant :Provide a start date and time in this format:

    AAAA-MM-JJThh:mm:ss si vous sélectionnez un fuseau horaireYYYY-MM-DDThh:mm:ss if you select a time zone

    -ou--or-

    AAAA-MM-JJThh:mm:ssZ si vous ne sélectionnez pas de fuseau horaireYYYY-MM-DDThh:mm:ssZ if you don't select a time zone

    Par exemple, si vous choisissez le 18 septembre 2017 à 14h00, alors spécifiez « 2017-09-18T14:00:00 » et sélectionnez un fuseau horaire tel que « Pacific Standard Time » (Heure standard du Pacifique).So for example, if you want September 18, 2017 at 2:00 PM, then specify "2017-09-18T14:00:00" and select a time zone such as Pacific Standard Time. Vous pouvez également spécifier « 2017-09-18T14:00:00Z » sans fuseau horaire.Or, specify "2017-09-18T14:00:00Z" without a time zone.

    Remarque : Cette heure de début ne peut pas dépasser 49 ans dans le futur, et doit être conforme à la spécification de date/heure ISO 8601 au format de date/heure UTC, mais sans décalage UTC.Note: This start time has a maximum of 49 years in the future and must follow the ISO 8601 date time specification in UTC date time format, but without a UTC offset. Si vous ne sélectionnez pas de fuseau horaire, vous devez ajouter la lettre « Z » à la fin sans espace.If you don't select a time zone, you must add the letter "Z" at the end without any spaces. Ce « Z » fait référence au temps nautique équivalent.This "Z" refers to the equivalent nautical time.

    Pour les planifications simples, l’heure de début est la première occurrence, tandis que pour les planifications complexes, le déclencheur ne s’active pas avant l’heure de début.For simple schedules, the start time is the first occurrence, while for complex schedules, the trigger doesn't fire any sooner than the start time. Comment puis-je utiliser la date et l’heure de début ? What are the ways that I can use the start date and time?

    Aux jours indiquésOn these days weekDays NonNo Chaîne ou tableau de chaînesString or string array Si vous sélectionnez « Semaine », vous pouvez sélectionner un ou plusieurs jours où vous voulez exécuter le workflow : Lundi, Mardi, Mercredi, Jeudi, Vendredi, Samedi et DimancheIf you select "Week", you can select one or more days when you want to run the workflow: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday
    Aux heures indiquéesAt these hours hours NonNo Entier ou tableau d’entiersInteger or integer array Si vous sélectionnez « Jour » ou « Semaine », vous pouvez sélectionner un ou plusieurs entiers compris entre 0 et 23 pour les heures de la journée durant lesquelles exécuter le flux de travail.If you select "Day" or "Week", you can select one or more integers from 0 to 23 as the hours of the day for when you want to run the workflow.

    Par exemple, si vous spécifiez « 10 », « 12 » et « 14 », vous obtenez 10h00, 12h00 et 14h00 pour les heures de la journée, mais les minutes de la journée sont calculées en fonction de démarrage de la récurrence.For example, if you specify "10", "12" and "14", you get 10 AM, 12 PM, and 2 PM for the hours of the day, but the minutes of the day are calculated based on when the recurrence starts. Pour définir les minutes de la journée, spécifiez la valeur de la propriété Aux minutes indiquées.To set the minutes of the day, specify the value for the At these minutes property.

    Aux minutes indiquéesAt these minutes minutes NonNo Entier ou tableau d’entiersInteger or integer array Si vous sélectionnez « Jour » ou « Semaine », vous pouvez sélectionner un ou plusieurs entiers compris entre 0 et 59 pour les minutes de l’heure durant lesquelles exécuter le flux de travail.If you select "Day" or "Week", you can select one or more integers from 0 to 59 as the minutes of the hour when you want to run the workflow.

    Par exemple, vous pouvez spécifier « 30 » pour les minutes et à l’aide de l’exemple précédent des heures de la journée, vous obtenez 10h30, 12h30 et 14h30.For example, you can specify "30" as the minute mark and using the previous example for hours of the day, you get 10:30 AM, 12:30 PM, and 2:30 PM.

    Par exemple, supposons que nous sommes le lundi 4 septembre 2017 aujourd’hui.For example, suppose that today is Monday, September 4, 2017. Le déclencheur Récurrence suivant ne s’active pas avant la date et l’heure de début définies, à savoir le lundi 18 septembre 2017 à 8h00 (PST).The following Recurrence trigger doesn't fire any sooner than the start date and time, which is Monday, September 18, 2017 at 8:00 AM PST. Notez toutefois que la périodicité planifiée est définie sur 10h30, 12h30 et 14h30 uniquement le lundi.However, the recurrence schedule is set for 10:30 AM, 12:30 PM, and 2:30 PM on Mondays only. Par conséquent, le déclencheur s’activera et créera une instance de flux de travail d’application logique pour la première fois à 10h30.So the first time that the trigger fires and creates a logic app workflow instance is at 10:30 AM. Pour plus d’informations sur le fonctionnement des heures de début, consultez ces exemples d’heure de début.To learn more about how start times work, see these start time examples.

    Les exécutions suivantes auront lieu le même jour à 12h30 et 14h30.Future runs happen at 12:30 PM and 2:30 PM on the same day. Chaque périodicité crée sa propre instance de flux de travail.Each recurrence creates their own workflow instance. L’ensemble de la planification se répète ensuite régulièrement chaque lundi.After that, the entire schedule repeats all over again next Monday. Existe-t-il d’autres exemples de périodicité ? What are some other example occurrences?

    Exemple de planification avancée

    Notes

    Le déclencheur affiche un aperçu de la périodicité que vous avez spécifiée uniquement quand vous sélectionnez « Jour » ou « Semaine » comme fréquence.The trigger shows a preview for your specified recurrence only when you select "Day" or "Week" as the frequency.

  5. Créez maintenant votre flux de travail restant avec d’autres actions.Now build your remaining workflow with other actions. Pour connaître les autres actions que vous pouvez ajouter, voir Connecteurs pour Azure Logic Apps.For more actions that you can add, see Connectors for Azure Logic Apps.

Définition du flux de travail - RécurrenceWorkflow definition - Recurrence

Dans la définition de flux de travail sous-jacente de votre application logique, qui utilise JSON, vous pouvez afficher la définition du déclencheur Récurrence avec les options que vous avez choisies.In your logic app's underlying workflow definition, which uses JSON, you can view the Recurrence trigger definition with the options that you chose. Pour afficher cette définition, dans la barre d’outils Concepteur, choisissez Mode Code.To view this definition, on the designer toolbar, choose Code view. Pour revenir au Concepteur, dans la barre d’outils Concepteur, choisissez Concepteur.To return to the designer, choose on the designer toolbar, Designer.

Cet exemple montre à quoi pourrait ressembler un déclencheur Récurrence dans une définition de flux de travail sous-jacente :This example shows how a Recurrence trigger definition might look in an underlying workflow definition:

"triggers": {
   "Recurrence": {
      "type": "Recurrence",
      "recurrence": {
         "frequency": "Week",
         "interval": 1,
         "schedule": {
            "hours": [
               10,
               12,
               14
            ],
            "minutes": [
               30
            ],
            "weekDays": [
               "Monday"
            ]
         },
         "startTime": "2017-09-07T14:00:00Z",
         "timeZone": "Pacific Standard Time"
      }
   }
}

Étapes suivantesNext steps