- Kategorien:
Systemfunktionen (Systemsteuerung)
SYSTEM$CREATE_BILLING_EVENT¶
Erstellt ein abrechenbares Ereignis, das die Nutzung einer installierten, monetarisierten Anwendung durch den Verbraucher verfolgt. Wenn Sie die Häufigkeitsbeschränkung dieser Systemfunktion von einem Ereignis pro Minute überschreiten müssen, verwenden Sie SYSTEM$CREATE_BILLING_EVENTS. Diese Systemfunktion kann nur von einer Anwendung aus aufgerufen werden, die in einem Verbraucherkonto installiert ist.
Syntax¶
SYSTEM$CREATE_BILLING_EVENT(
'<class>',
'<subclass>',
<start_timestamp>,
<timestamp>,
<base_charge>,
'<objects>',
'<additional_info>'
)
Argumente¶
Erforderlich:
'class'
Bezeichner für die kundenspezifische Ereignisklasse.
Typ: STRING
Für den Bezeichner gelten folgende Anforderungen:
Muss mit einem Buchstaben (A-Z, a-z) oder einem Unterstrich („_“) beginnen.
Darf nur Buchstaben, Unterstriche, Dezimalziffern (0-9) und Dollarzeichen („$“) enthalten.
Darf nicht länger als 64 Zeichen sein.
Darf nicht mit
SNOWFLAKE_
beginnen.SNOWFLAKE_
ist für interne Bezeichner reserviert.
Der Klassenname wird in Großbuchstaben gespeichert und aufgelöst. Beim Vergleich von Klassennamen wird die Groß-/Kleinschreibung nicht berücksichtigt.
timestamp
Gibt den Zeitstempel (UTC), wann das Ereignis erstellt wurde, als Unix-Zeitstempel in Millisekunden an.
Typ: Ganzzahl (Integer)
base_charge
Gibt den Betrag in US Dollar an, der für das abrechenbare Ereignis berechnet werden soll. Der Wert muss größer als Null und kleiner als 99.999,99 sein und darf eine Genauigkeit von zwei Dezimalstellen nicht überschreiten. Beispiel:
1.00
oder0.07
Typ: DOUBLE
Optional:
'subclass'
Bezeichner für die kundenspezifische Ereignis-Unterklasse. Dieses Feld wird nur vom Anbieter verwendet.
Typ: STRING
Für den Bezeichner gelten die gleichen Anforderungen an die Namensgebung wie beim
class
-Argument.start_timestamp
Gibt die Startzeit (UTC) des Ereignisses als Unix-Zeitstempel in Millisekunden an.
Typ: INTEGER
Verwenden Sie dieses Argument, um die Startzeit festzulegen, wenn Anbieter ein Ereignis auf Basis eines Zeitbereichs ausgegeben möchten. Andernfalls setzen Sie das Argument auf denselben Wert, der für das
TIMESTAMP
-Argument verwendet wird.'objects'
Ein JSON-Zeichenfolgen-Array mit vollqualifizierten Objektnamen, die bei diesem Ereignis gelten.
Typ: STRING
Die maximale Größe beträgt 4 KB.
'additional_info'
Eine JSON-Zeichenfolge mit Schlüssel-Wert-Paaren, die der Anbieter verwenden kann, um zusätzliche Informationen zu senden.
Typ: STRING
Die maximale Größe beträgt 4 KB.
Rückgabewerte¶
Diese Funktion gibt die folgenden Statusmeldungen zurück:
Statusmeldung
Beschreibung
Success
Zeigt an, dass das abrechenbare Ereignis erfolgreich erstellt wurde.
Invalid parameter:
<PARAM_NAME>
.Zeigt an, dass ein nicht unterstützter Parameter an die Funktion übergeben wurde.
Nur aus einer Anwendung heraus aufrufbar.
Zeigt an, dass die Funktion von außerhalb einer Anwendung aufgerufen wurde.
Die Länge der Nutzdaten (Payload) überschreitet die Grenze von 9000 Zeichen.
Zeigt an, dass der Aufruf der Funktion die Zeichenbeschränkung überschreitet.
Zu viele Aufrufe. Pro 10-Millisekunden-Fenster ist maximal 1 Aufruf erlaubt.
Zeigt an, dass eine Anwendung innerhalb eines bestimmten Zeitraums zu viele Aufrufe an diese Systemfunktion gesendet hat.
Nutzungshinweise¶
Diese Systemfunktion kann nur aus einer gespeicherten Prozedur im Setup-Skript einer Anwendung aufgerufen werden, die mit dem Snowflake Native App Framework erstellt wurde.