GtfOrderRunner : Demande GTF

Permet de lancer une demande GTF (d'éxécuter un traitement FME), d'en attendre ou non la fin et récupérer les informations de la demandes.

Astuce

Des transformers personnalisés ont été développés pour récupérer les informations de l'itération et pour ajouter des données à la tâches qui seront disponible pour la suite de l'itération.

Configuration

Paramètres

  • Projet FME (Obligatoire, Expression) : Traitement FME publié dans GTF à lancer.

  • Utilisateur (Obligatoire, Expression) : Utilisateur qui sera considéré comme propriétaire de la demande GTF

  • Attendre la fin (Obligatoire) : Détermine s'il faut attendre la fin de la demande pour poursuivre l'itération

  • Paramètres publiés : Paramètres publiés à passer au traitement FME sous forme d'objet clé/claeur

    • clé : nom du paramètre publié

    • valeur (Expression) : Valeur du paramètre publié

  • Priorité (Expression) : priorité à associer à la demande

  • Envoi de mail (Expression) : détermine s'il faut envoyer un mail à la fin et sous quel condition

  • Copie (Expression) : Addresse mail à mettre en copie du mail de fin de demande GTF

  • Date de planification (Expression) : permet de différer le lancement de la demande

Sortie

Modèle sortant

Le fait d'attendre ou non la fin du traitement changera la données qui sera utilisable dans l'itération.

Si l'actionneur est asynchrone alors la donnée sera trés limité :

{
  "GtfOrderRuner_X" : {
    "order" : {
      "pid" : 1,
      "order_id" : 1
    }
  }
}

Si l'actionneur est en mode synchrone :

{
  "GtfOrderRuner_X" : {
    "order" : {
      "pid": null,
      "attempt": 1,
      "deleted": false,
      "enabled": null,
      "log_url": "2023_04/v441akc3gfmvtula7gbp7lry5ulkrlji1f3o3eb1z/log/mon_traitement.log",
      "user_id": 1,
      "inbox_id": null,
      "order_id": 1,
      "condition": null,
      "period_id": null,
      "survey_id": null,
      "wk_params": "{\"param_1\":1,\"param_2\":\"8247\"}",
      "length_sec": 19,
      "order_date": "2023-04-18T09:10:57.035Z",
      "result_url": "2023_04/v441akc3gfmvtula7gbp7lry5ulkrlji1f3o3eb1z/result.zip",
      "stack_data": null,
      "wf_task_id": 1,
      "minexecdate": null,
      "priority_id": 1,
      "workspace_id": 1,
      "gtf_engine_id": 1,
      "execution_date": "2023-04-18T09:11:02.044Z",
      "email_option_id": 3,
      "order_status_id": 3,
      "execution_counter": 1,
      "execution_end_date": "2023-04-18T09:11:23.230Z",
      "email_notifications": null
    }
  }
}

En utilisant le Transformer personnalisé GTF_TaskDataSetter (ne fonctionnera qu'en mode synchrone) la donnée sera ajoutée dans l'itération dans la clé data :

{
  "GtfOrderRuner_X" : {
    "data" : {
      "ma_data" : "ça vient du traitement FME", 
      "..." : "..."
    },
    "order" : {
      "pid": null,
      "attempt": 1,
      "deleted": false,
      "enabled": null,
      "log_url": "2023_04/v441akc3gfmvtula7gbp7lry5ulkrlji1f3o3eb1z/log/mon_traitement.log",
      "user_id": 1,
      "inbox_id": null,
      "order_id": 1,
      "condition": null,
      "period_id": null,
      "survey_id": null,
      "wk_params": "{\"param_1\":1,\"param_2\":\"8247\"}",
      "length_sec": 19,
      "order_date": "2023-04-18T09:10:57.035Z",
      "result_url": "2023_04/v441akc3gfmvtula7gbp7lry5ulkrlji1f3o3eb1z/result.zip",
      "stack_data": null,
      "wf_task_id": 1,
      "minexecdate": null,
      "priority_id": 1,
      "workspace_id": 1,
      "gtf_engine_id": 1,
      "execution_date": "2023-04-18T09:11:02.044Z",
      "email_option_id": 3,
      "order_status_id": 3,
      "execution_counter": 1,
      "execution_end_date": "2023-04-18T09:11:23.230Z",
      "email_notifications": null
    }
  }
}

Astuce

GTF_TaskDataSetter merge la donnée de la tâche en base, vous pouvez donc définir cette objet en plusieurs fois dans votre traitement il ne sera pas écraser sauf en cas de conflit de clé dans le json.