GlideDynamicAttributeStore : Global
Die GlideDynamicAttributeStore -API bietet Zugriff auf einen neuen integrierten Datentyp für den dynamischen Attributspeicher, der anderen Datentypen wie Zeichenfolge, Datum oder Datum/Uhrzeit ähnelt.
Diese API stellt Methoden bereit, mit denen Sie dynamische Schemaattribute in einem GlideDynamicAttribute-Objekt abrufen und festlegen können. Mit diesen dynamischen Attributen kann jede Zeile in einer Tabelle andere Felder enthalten. Die Felder, auf die dieser Datentyp angewendet wird, werden in der Spalte „Datentypbeschreibung“ der Tabelle als „dynamic_attribute_store“ angezeigt. Weitere Informationen zu dynamischen Attributen finden Sie unter Dynamisches Schema.
Um diese API zum Erstellen dynamischer Attribute zu verwenden, benötigen Sie die Rolle „dynamic_schema_writer“. Um dynamische Daten mit dieser API zu lesen, benötigen Sie die Rolle „dynamic_schema_reader“.
Diese API enthält Methoden mit derselben Funktionalität wie dynamische Schemamethoden in der GlideRecord- API. Verwenden Sie diese API, wenn Sie dieselbe Gruppe dynamischer Attribute für mehrere Datensätze festlegen möchten. Mit dieser API können Sie ein GlideDynamicAttributeStore-Objekt mit den gewünschten Attributen bereitstellen und dieses Objekt dann mit den verschiedenen setDynamicAttributeValues()- Methoden in mehrere GlideRecords kopieren. Bei Verwendung ähnlicher dynamischer Schemamethoden in der GlideRecord- API werden die Aktionen für einen angegebenen GlideRecord ausgeführt.
GlideDynamicAttributeStore – löschen ()
Löscht alle Attribute und ihre Werte aus dem GlideDynamicAttributeStore-Objekt.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue("cars->color","blue");
das.setDynamicAttributeValue("cars->make","Toyota");
das.setDynamicAttributeValue("cars->model","CRV");
das.setDynamicAttributeValue("cars->luxury",true);
das.setDynamicAttributeValue("cars->cost",12000.5);
das.setDynamicAttributeValue("cars->avg_mpg",24.5234);
das.setDynamicAttributeValue("cars->total_miles",5324);
das.setDynamicAttributeValue("cars->date_purchased",new GlideDateTime());
gs.info('das: ' + das.getDisplayValue());
das.clear();
gs.info('das: ' + das.getDisplayValue());
Ausgabe:
*** Script: das: {
"cars" : {
"avg_mpg" : "24.5234",
"color" : "blue",
"cost" : "12000.5",
"date_purchased" : "2024-04-19 08:29:52",
"luxury" : "true",
"make" : "Toyota",
"model" : "CRV",
"total_miles" : "5324"
}
}
*** Script: das: null
GlideDynamicAttributeStore – getDisplayValue()
Gibt die JSON-Kartendarstellung der im aktuellen GlideDynamicAttributeStore-Objekt gespeicherten Werte zurück.
- Boolesche Werte als „wahr“ und „falsch“ anstelle von 1 und 0.
- Datums-/Uhrzeitwerte im Gebietsschema des Anwenders anstelle von UTC.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Visuell lesbare JSON-Zuordnung der im GlideDynamicAttributeStore-Objekt gespeicherten Werte Der Inhalt dieser Zeichenfolge hängt von Ihrer dynamischen Schemadefinition ab. |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue("cars->color","blue");
das.setDynamicAttributeValue("cars->make","Toyota");
das.setDynamicAttributeValue("cars->model","CRV");
das.setDynamicAttributeValue("cars->luxury",true);
das.setDynamicAttributeValue("cars->cost",12000.5);
das.setDynamicAttributeValue("cars->avg_mpg", 24.5234);
das.setDynamicAttributeValue("cars->total_miles", 5324);
das.setDynamicAttributeValue("cars->date_purchased",new GlideDateTime());
gs.info('Value returned by getValue(): ' + das.getValue());
gs.info('Value returned by getDisplayValue(): ' + das.getDisplayValue());
Ausgabe:
*** Script: Value returned by getValue(): {"cars":{"total_miles":5324,"color":"blue","model":"CRV","cost":12000.5,"luxury":1,"avg_mpg":24.5234,"make":"Toyota","date_purchased":"2024-04-19 15:33:23"}}
*** Script: Value returned by getDisplayValue(): {
"cars" : {
"avg_mpg" : "24.5234",
"color" : "blue",
"cost" : "12000.5",
"date_purchased" : "2024-04-19 08:33:23",
"luxury" : "true",
"make" : "Toyota",
"model" : "CRV",
"total_miles" : "5324"
}
}
GlideDynamicAttributeStore - getDynamicAttributeValue(String groupAttrPath)
Gibt den Wert des angegebenen Attributs innerhalb des dynamischen Attributspeicherelements zurück.
| Name | Typ | Beschreibung |
|---|---|---|
| groupAttrPath | Zeichenfolge | Attributpfad zum Suchen des zugeordneten dynamischen Schemaattributs. Format: "group_name->attr_name"
Beispiel: |
| Typ | Beschreibung |
|---|---|
| Objekt | Wert des dynamischen Schemaattributs, auf das vom übergebenen Gruppen-/Attributpfad verwiesen wird. Wenn der Parameter attributePath ungültige Informationen enthält, gibt eine NULL zurück. |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue("cars->color","blue");
das.setDynamicAttributeValue("cars->make","Toyota");
das.setDynamicAttributeValue("cars->model","CRV");
das.setDynamicAttributeValue("cars->luxury",true);
das.setDynamicAttributeValue("cars->cost",12000.5);
das.setDynamicAttributeValue("cars->avg_mpg", 24.5234);
das.setDynamicAttributeValue("cars->total_miles", 5324);
das.setDynamicAttributeValue("cars->date_purchased",new GlideDateTime());
gs.info('Value returned by getDynamicAttributeValue(): ' + das.getDynamicAttributeValue("cars->color"));
gs.info('Value returned by getDynamicAttributeValue(): ' + das.getDynamicAttributeValue("cars->luxury"));
Ausgabe:
*** Script: Value returned by getDynamicAttributeValue(): blue
*** Script: Value returned by getDynamicAttributeValue(): 1
GlideDynamicAttributeStore – getValue()
Gibt die kompakte Zeichenfolgendarstellung des Inhalts des aktuellen GlideDynamicAttributeStore-Objekts zurück.
- Boolesche Werte als 1 und 0 anstelle von „wahr“ und „falsch“.
- Datums-/Uhrzeitwerte in UTC anstelle des Gebietsschemas des Anwenders.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | Kompakte Zeichenfolgendarstellung der im GlideDynamicAttributeStore-Objekt gespeicherten Werte. Der Inhalt dieser Zeichenfolge hängt von Ihrer dynamischen Schemadefinition ab. |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue("cars->color","blue");
das.setDynamicAttributeValue("cars->make","Toyota");
das.setDynamicAttributeValue("cars->model","CRV");
das.setDynamicAttributeValue("cars->luxury",true);
das.setDynamicAttributeValue("cars->cost",12000.5);
das.setDynamicAttributeValue("cars->avg_mpg", 24.5234);
das.setDynamicAttributeValue("cars->total_miles", 5324);
das.setDynamicAttributeValue("cars->date_purchased",new GlideDateTime());
gs.info('Value returned by getValue(): ' + das.getValue());
gs.info('Value returned by getDisplayValue(): ' + das.getDisplayValue());
Ausgabe:
*** Script: Value returned by getValue(): {"cars":{"total_miles":5324,"color":"blue","model":"CRV","cost":12000.5,"luxury":1,"avg_mpg":24.5234,"make":"Toyota","date_purchased":"2024-04-19 15:33:23"}}
*** Script: Value returned by getDisplayValue(): {
"cars" : {
"avg_mpg" : "24.5234",
"color" : "blue",
"cost" : "12000.5",
"date_purchased" : "2024-04-19 08:33:23",
"luxury" : "true",
"make" : "Toyota",
"model" : "CRV",
"total_miles" : "5324"
}
}
GlideDynamicAttributeStore – setDisplayValue(Object value)
Löscht das aktuelle GlideDynamicAttributeStore-Objekt und speichert dann die übergebene JSON-Zuordnung im GlideDynamicAttributeStore-Objekt.
Diese Methode entspricht funktional GlideDynamicAttributeStore – setValue(Object value), außer dass alle Datumswerte im Gebietsschema des Anwenders angegeben werden.
| Name | Typ | Beschreibung |
|---|---|---|
| Wert | Objekt | Wert, der im aktuellen dynamischen Attributspeicher-Objekt festgelegt werden soll. Der übergebene Wert muss einen der folgenden Datentypen aufweisen:
|
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Beispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue("cars->color","blue");
das.setDynamicAttributeValue("cars->make","Toyota");
das.setDynamicAttributeValue("cars->model","CRV");
das.setDynamicAttributeValue("cars->luxury",true);
das.setDynamicAttributeValue("cars->cost",12000.5);
das.setDynamicAttributeValue("cars->avg_mpg", 24.5234);
das.setDynamicAttributeValue("cars->total_miles", 5324);
das.setDynamicAttributeValue("cars->date_purchased",new GlideDateTime());
gs.info('das: ' + das.getDisplayValue());
das.setDisplayValue('{"cars":{"luxury":false}}');
gs.info('das: ' + das.getDisplayValue());
Ausgabe:
*** Script: das: {
"cars" : {
"avg_mpg" : "24.5",
"color" : "blue",
"cost" : "12000.0",
"date_purchased" : "2024-04-19 14:16:49",
"luxury" : "true",
"make" : "Toyota",
"model" : "CRV",
"total_miles" : "5324.0"
}
}
*** Script: das: {
"cars" : {
"luxury" : "false"
}
}
GlideDynamicAttributeStore - setDynamicAttributeDisplayValue(Zeichenfolge groupAttrPath, Objektwert)
Legt den Wert des dynamischen Attributs fest, das sich an einem angegebenen Pfad innerhalb eines dynamischen Attributspeicherelements befindet.
Diese Methode funktioniert genauso wie die Methode GlideDynamicAttributeStore - setDynamicAttributeValue(Zeichenfolge groupAttrPath, Objektwert), außer dass boolesche Werte und Datums-/Uhrzeitwerte verarbeitet werden. Bei dieser Methode wird davon ausgegangen, dass alle Datums-/Uhrzeitwerte im Gebietsschema des Anwenders angegeben werden.
| Name | Typ | Beschreibung |
|---|---|---|
| groupAttrPath | Zeichenfolge | Attributpfad zum Suchen des zugeordneten dynamischen Schemaattributs. Format: "group_name->attr_name"
Beispiel: |
| Wert | Objekt | Wert, der im angegebenen Attribut festgelegt werden soll. Hinweis: Für dynamische Attribute werden nur die folgenden Datentypen unterstützt:
|
| Typ | Beschreibung |
|---|---|
| Objekt | GlideDynamicAttributeStore-Objekt aktualisiert. Wenn der Parameter groupAttrPath ungültig ist, löst die Methode eine IllegalArgumentException aus. |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeDisplayValue("cars->color","blue");
das.setDynamicAttributeDisplayValue("cars->make","Toyota");
das.setDynamicAttributeDisplayValue("cars->model","CRV");
das.setDynamicAttributeDisplayValue("cars->luxury","true");
das.setDynamicAttributeDisplayValue("cars->cost",12000.5);
das.setDynamicAttributeDisplayValue("cars->avg_mpg", 24.5234);
das.setDynamicAttributeDisplayValue("cars->total_miles", 5324);
das.setDynamicAttributeDisplayValue("cars->date_purchased",new GlideDateTime());
gs.info('das: ' + das.getDisplayValue());
das.setDisplayValue('{"cars":{"luxury":"false"}}');
gs.info('das: ' + das.getDisplayValue());
Ausgabe:
*** Script: das: {
"cars" : {
"avg_mpg" : "24.5234",
"color" : "blue",
"cost" : "12000.5",
"date_purchased" : "2024-04-19 10:40:45",
"luxury" : "true",
"make" : "Toyota",
"model" : "CRV",
"total_miles" : "5324"
}
}
*** Script: das: {
"cars" : {
"luxury" : "false"
}
}
GlideDynamicAttributeStore - setDynamicAttributeValue(Zeichenfolge groupAttrPath, Objektwert)
Legt das dynamische Attribut, auf das von einem angegebenen Gruppen-/Attributpfad verwiesen wird, auf einen angegebenen Wert fest.
| Name | Typ | Beschreibung |
|---|---|---|
| groupAttrPath | Zeichenfolge | Attributpfad zum Suchen des zugeordneten dynamischen Schemaattributs. Format: "group_name->attr_name"
Beispiel: |
| Wert | Objekt | Wert, der im angegebenen Attribut festgelegt werden soll. Hinweis: Für dynamische Attribute werden nur die folgenden Datentypen unterstützt:
|
| Typ | Beschreibung |
|---|---|
| Objekt | GlideDynamicAttributeStore-Objekt aktualisiert. Wenn der Parameter groupAttrPath ungültig ist, löst die Methode eine IllegalArgumentException aus. |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue("cars->color","blue");
das.setDynamicAttributeValue("cars->make","Toyota");
das.setDynamicAttributeValue("cars->model","CRV");
das.setDynamicAttributeValue("cars->luxury",true);
das.setDynamicAttributeValue("cars->cost",12000.5);
das.setDynamicAttributeValue("cars->avg_mpg", 24.5234);
das.setDynamicAttributeValue("cars->total_miles", 5324);
das.setDynamicAttributeValue("cars->date_purchased",new GlideDateTime());
gs.info('Value returned by getValue(): ' + das.getValue());
gs.info('Value returned by getDisplayValue(): ' + das.getDisplayValue());
Ausgabe:
*** Script: Value returned by getValue(): {"cars":{"total_miles":5324,"color":"blue","model":"CRV","cost":12000.5,"luxury":1,"avg_mpg":24.5234,"make":"Toyota","date_purchased":"2024-04-19 15:33:23"}}
*** Script: Value returned by getDisplayValue(): {
"cars" : {
"avg_mpg" : "24.5234",
"color" : "blue",
"cost" : "12000.5",
"date_purchased" : "2024-04-19 08:33:23",
"luxury" : "true",
"make" : "Toyota",
"model" : "CRV",
"total_miles" : "5324"
}
}
GlideDynamicAttributeStore - setDynamicAttributeValues(Object value)
Legt den internen JSON-Speicher für das Feld auf die Zeichenfolgendarstellung des übergebenen Werts fest. Wenn der übergebene Wert eine andere Instanz eines GlideDynamicAttributeStore-Objekts ist, werden die Werte von diesem Objekt in das aktuelle Objekt kopiert.
| Name | Typ | Beschreibung |
|---|---|---|
| Wert | Objekt | JSON-Objekt, das als Wert im zugeordneten GlideRecord gespeichert werden soll. Die Methode ignoriert alle ungültigen JSON-Werte. |
| Typ | Beschreibung |
|---|---|
| Objekt | GlideDynamicAttributeStore-Objekt aktualisiert. |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
var otherValues = new GlideDynamicAttributeStore();
das.setDynamicAttributeValues(otherValues);
GlideDynamicAttributeStore – setValue(Object value)
Löscht das aktuelle GlideDynamicAttributeStore-Objekt und speichert dann die übergebene JSON-Zuordnung in diesem GlideDynamicAttributeStore-Objekt.
Diese Methode besitzt die gleiche Funktion wie GlideDynamicAttributeStore – setDisplayValue(Object value), außer dass alle Datumswerte in UTC angegeben sind.
| Name | Typ | Beschreibung |
|---|---|---|
| Wert | Objekt | JSON-Zuordnungsobjekt, das im GlideDynamicAttributeStore-Objekt gespeichert werden soll. Beispiel: |
| Typ | Beschreibung |
|---|---|
| void |
Das folgende Beispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue("cars->color","blue");
das.setDynamicAttributeValue("cars->make","Toyota");
das.setDynamicAttributeValue("cars->model","CRV");
das.setDynamicAttributeValue("cars->luxury",true);
das.setDynamicAttributeValue("cars->cost",12000.5);
das.setDynamicAttributeValue("cars->avg_mpg", 24.5234);
das.setDynamicAttributeValue("cars->total_miles", 5324);
das.setDynamicAttributeValue("cars->date_purchased", new GlideDateTime());
gs.info('das: ' + das.getValue());
das.setValue('{"cars":{"luxury":false}}');
gs.info('das: ' + das.getValue());
Ausgabe:
*** Script: das: {"cars":{"total_miles":5324,"color":"blue","model":"CRV","cost":12000.5,"luxury":true,"avg_mpg":24.5234,"make":"Toyota","date_purchased":"2024-04-19 17:28:47"}}
*** Script: das: {"cars":{"luxury":false}}
GlideDynamicAttributeStore - toString()
Gibt den Inhalt des GlideDynamicAttributeStore-Objekts als Zeichenfolge zurück.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Zeichenfolge | GlideDynamicAttribute-Objekt als Zeichenfolge. Beispiel: '{"group":{"attr2":"wahr","attr1":"42.0"}}' |
Das folgende Codebeispiel zeigt, wie diese Methode aufgerufen wird.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue("cars->color","blue");
das.setDynamicAttributeValue("cars->make","Toyota");
das.setDynamicAttributeValue("cars->model","CRV");
das.setDynamicAttributeValue("cars->luxury",true);
das.setDynamicAttributeValue("cars->cost",12000);
das.setDynamicAttributeValue("cars->avg_mpg",24.5);
das.setDynamicAttributeValue("cars->total_miles",5324);
das.setDynamicAttributeValue("cars->date_purchased",new GlideDateTime());
gs.info('das: ' + das.toString());
Ausgabe:
*** Script: das: {"cars":{"cost":"12000.0","color":"blue","avg_mpg":"24.5","date_purchased":"2024-04-19 14:05:00","luxury":"true","model":"CRV","make":"Toyota","total_miles":"5324.123"}}