Kategorien:

Systemfunktionen (Systemsteuerung)

SYSTEM$CREATE_BILLING_EVENT

Erstellt ein abrechenbares Ereignis, das die Nutzung einer installierten, monetarisierten Anwendung durch den Verbraucher verfolgt. 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>)
Copy

Argumente

Erforderlich:

class

Bezeichner für die kundenspezifische Ereignisklasse.

Typ: Zeichenfolge

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 0 und kleiner als 999,99 sein und darf eine Genauigkeit von 2 Dezimalstellen nicht überschreiten. Beispiel: 1.00 oder 0.07

Typ: Double

Optional:

subclass

Bezeichner für die kundenspezifische Ereignis-Unterklasse. Dieses Feld wird nur vom Anbieter verwendet.

Typ: Zeichenfolge

Für den Bezeichner gelten die gleichen Anforderungen an die Namensgebung wie beim class-Argument.

start_timestamp

Gibt die Startzeit des Ereignisses als Unix-Zeitstempel in Millisekunden an.

Typ: Ganzzahl (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: Zeichenfolge

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: Zeichenfolge

Die maximale Größe beträgt 4 KB.

Rückgabewerte

Diese Funktion gibt die folgenden Statusmeldungen zurück:

Statusmeldung

Beschreibung

Typ des zurückgegebenen Werts

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.

Die Anzahl der Ereignisse überschreitet die Beschränkung von 100.

Zeigt an, dass die maximale Anzahl von abrechenbaren Ereignissen für die Anwendung erreicht wurde.

Zu viele Aufrufe. Pro 1-Sekunden-Fenster ist maximal 1 Aufruf erlaubt.

Zeigt an, dass eine Anwendung innerhalb eines bestimmten Zeitrahmens zu viele Aufrufe dieser Systemfunktion ausgeführt 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.

Beispiele

Siehe Beispiele für abrechenbare Ereignisse.