Exécuter un script avec une autre requête
Pour exécuter un script FileMaker dans le cadre d'une autre requête, insérez les paramètres script.prerequest
, script.presort
et script
dans le corps de la requête.
Paramètre |
Valeur |
|
Nom du script à exécuter après l'action indiquée par l'appel d'API (obtenir, créer, modifier, dupliquer, supprimer, rechercher) et après le tri suivant. |
|
Chaîne de texte à utiliser comme paramètre pour le script nommé d'après |
script.prerequest
|
Nom du script à exécuter avant l'action indiquée par l'appel d'API et le tri suivant. |
script.prerequest.param
|
Chaîne de texte à utiliser comme paramètre pour le script nommé d'après script.prerequest . |
script.presort
|
Nom du script à exécuter après l'action indiquée par l'appel d'API mais avant le tri suivant. |
script.presort.param
|
Chaîne de texte à utiliser comme paramètre pour le script nommé d'après script.presort . |
Ordre d'exécution du script
Vous pouvez préciser les paramètres script.prerequest
, script.presort
et script
dans un seul et même appel d'API. Définissez les mots-clés une fois seulement. L'hôte traite ces paramètres dans le cadre de l'appel d'API, dans cet ordre :
-
Accédez au modèle indiqué dans l'URL.
-
Si nécessaire, exécutez le script nommé d'après
script.prerequest
. -
Exécutez l'action spécifiée par l'appel d'API (obtenir, créer, modifier, dupliquer, supprimer, rechercher).
-
Si nécessaire, exécutez le script nommé d'après
script.presort
. -
Exécutez le tri indiqué par l'appel d'API :
-
Pour Obtenir une plage d'enregistrements, exécutez le tri spécifié par le paramètre
_sort
. -
Pour Effectuer une requête de recherche, procédez au tri spécifié par le paramètre
sort
.
-
-
Si nécessaire, exécutez le script nommé d'après
script
. -
Renvoyez le jeu de résultats pour cet appel d'API en appliquant si nécessaire les paramètres de décalage et de limite.
Remarques
-
Pour les appels utilisant des méthodes HTTP GET et HTTP DELETE, les paramètres de script sont intégrés en tant que paramètres URL. Consultez les sections Obtenir un seul enregistrement, Obtenir une plage d'enregistrements et Supprimer un enregistrement.
Par exemple :
https://<hôte>/fmi/data/v1/databases/clients/layouts/saisie/records/14?script=MàJTraitement&script.param=14
-
Pour les appels utilisant les méthodes HTTP POST et HTTP PATCH, les paramètres de script sont intégrés dans le corps de la requête. Consultez les sections Créer un enregistrement, Modifier un enregistrement et Effectuer une requête de recherche.
Par exemple, dans une requête de recherche :
Copier{
"query": [
{
"Titre": "Responsable bureau"
}
],
"script.prerequest": "Supprimer les doublons",
"script.prerequest.param": "100"
} -
Pour les appels qui utilisent une méthode HTTP Get, l'ensemble d'enregistrements trouvés renvoyé reflète à la fois le résultat de l'appel API et les effets de tout script exécuté dans le cadre de la même requête.
-
Vous pouvez indiquer une seule chaîne de texte pour les paramètres de script
script.param
,script.prerequest.param
etscript.presort.param
. Pour transmettre plusieurs paramètres, vous pouvez créer une chaîne délimitant les paramètres et faire en sorte que votre script analyse chacun des paramètres. Par exemple, transmettez param1|param2|param3 en tant que liste, en utilisant le caractère | de codage URL de la façon suivante :param1%7Cparam2%7Cparam3
-
Les résultats de script sont renvoyés à l'aide des paramètres
scriptResult
,scriptResult.prerequest
etscriptResult.presort
dans les données JSON. Un résultat de script correspond à la valeur renvoyée dans l'option Résultat de texte de l'action de script Fin de script qui met fin au script. Les erreurs de script sont renvoyées à l'aide des paramètresscriptError
,scriptError.prerequest
etscriptError.presort
dans les données JSON. (Les erreurs de script ne sont pas renvoyées à l'aide d'un code d'état HTTP.)