- Catégories :
Fonctions système (Contrôle du système)
SYSTEM$CREATE_BILLING_EVENT¶
Crée un événement facturable qui suit l’utilisation par le consommateur d’une application installée et monétisée. Cette fonction système ne peut être appelée qu’à partir d’une application installée sur un compte consommateur.
Syntaxe¶
SYSTEM$CREATE_BILLING_EVENT(
<class>,
<subclass>,
<start_timestamp>,
<timestamp>,
<base_charge>,
<objects>,
<additional_info>)
Arguments¶
Obligatoire :
class
Identificateur de la classe d’événement personnalisée.
Type : chaîne
L’identificateur doit répondre aux exigences suivantes :
Doit commencer par une lettre (A-Z) ou par un trait de soulignement (« _ »).
Obligation de contenir uniquement des lettres, des traits de soulignement, des chiffres décimaux (0-9) et des signes dollar (« $ »).
La longueur ne peut excéder 64 caractères.
Ne doit pas commencer par
SNOWFLAKE_
.SNOWFLAKE_
est réservé aux identificateurs internes.
Le nom de la classe est stocké et résolu en caractères majuscules. Les comparaisons de noms de classe sont insensibles à la casse.
timestamp
Spécifie l’horodatage (UTC) de la création de l’événement sous forme d’horodatage Unix en millisecondes.
Type : entier
base_charge
Spécifie le montant en US dollars à facturer pour l’événement facturable. La valeur doit être supérieure à 0, inférieure à 999,99 et ne doit pas dépasser deux décimales de précision. Par exemple,
1.00
ou0.07
Type : double
Facultatif :
subclass
Identificateur de la sous-classe d’événement personnalisé. Ce champ n’est utilisé que par le fournisseur.
Type : chaîne
L’identificateur a les mêmes exigences de dénomination que l’argument
class
.start_timestamp
Spécifie l’heure de début de l’événement sous la forme d’un horodatage Unix en millisecondes.
Type : entier
Permet de définir l’heure de début dans les cas où les fournisseurs souhaitent émettre un événement sur la base d’une plage de temps ; sinon, cette valeur est la même que celle utilisée pour l’argument
TIMESTAMP
.objects
Un tableau de chaînes JSON contenant des noms d’objets complets qui s’appliquent à cet événement.
Type : chaîne
La taille maximale est de 4 KB.
additional_info
Une chaîne JSON de paires clé-valeur que le fournisseur peut utiliser pour envoyer des informations supplémentaires.
Type : chaîne
La taille maximale est de 4 KB.
Renvoie¶
Cette fonction renvoie les messages de statut suivants :
Message de statut
Description
Type de valeur renvoyée
Succès
Indique que l’événement facturable a été créé avec succès.
Paramètre non valide :
<PARAM_NAME>
.Indique qu’un paramètre non pris en charge a été transmis à la fonction.
Ne peut être appelé qu’à partir d’une application.
Indique que la fonction a été appelée depuis l’extérieur d’une application.
La longueur de la charge utile dépasse la limite de 9 000 caractères.
Indique que l’appel à la fonction dépasse la limite de caractères.
Le nombre d’événements dépasse la limite de 100.
Indique que le nombre maximum d’événements facturables a été atteint pour l’application.
Trop d’appels. Un appel au maximum est autorisé par fenêtre d’une seconde.
Indique qu’une application a effectué un trop grand nombre d’appels à cette fonction du système dans un laps de temps donné.
Notes sur l’utilisation¶
Cette fonction système ne peut être appelée qu’à partir d’une procédure stockée dans le script d’installation d’une application créée à l’aide de Snowflake Native App Framework.