- 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. Si vous devez dépasser la limite de fréquence d’un événement par minute de cette fonction du système, utilisez SYSTEM$CREATE_BILLING_EVENTS. 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 : STRING
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 dollars US à facturer pour l’événement facturable. La valeur doit être supérieure à zéro, inférieure à 99999,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 : STRING
L’identificateur a les mêmes exigences de dénomination que l’argument
class
.start_timestamp
Spécifie l’heure de début (UTC) de l’événement sous la forme d’un horodatage Unix en millisecondes.
Type : INTEGER
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 : STRING
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 : STRING
La taille maximale est de 4 KB.
Renvoie¶
Cette fonction renvoie les messages de statut suivants :
Message de statut
Description
Succès
Indique que l’événement facturable a bien été créé.
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.
Trop d’appels. Au plus 1 appel est autorisé par fenêtre de 10 millisecondes.
Indique qu’une application a effectué un trop grand nombre d’appels à cette fonction du système dans une période donnée.
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.