GlideDynamicAttributeStore – Global
Die GlideDynamicAttributeStore Die API bietet Zugriff auf einen dynamischen Attributspeicher-Datentyp, ähnlich wie andere Datentypen wie Zeichenfolge, Datum oder Datum/Uhrzeit.
Diese API bietet Methoden, mit denen Sie dynamische Schemaattribute in einem GlideDynamicAttribute-Objekt abrufen und festlegen können. Mit diesen dynamischen Attributen kann jede Zeile in einer Tabelle verschiedene Felder enthalten. Die Felder, auf die dieser Datentyp angewendet wird, werden als angezeigt Dynamic_Attribute_Store Innerhalb der Spalte Datentypbeschreibung Der Tabelle. Weitere Informationen zu dynamischen Attributen finden Sie unter Dynamisches Schema .
Um diese API zum Erstellen dynamischer Attribute zu verwenden, müssen Sie über die Rolle Dynamic_Schema_Writer verfügen. Um dynamische Daten mit dieser API zu lesen, müssen Sie über die Rolle Dynamic_Schema_Reader verfügen.
In dieser API gibt es Methoden, die dieselbe Funktionalität wie dynamische Schemamethoden in haben 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 mithilfe der verschiedenen in mehrere GlideRecords kopieren SetDynamicAttributeValues() Methoden. Verwenden Ähnliche dynamische Schemamethoden In GlideRecord Die API führt die Aktionen für einen angegebenen GlideRecord aus.
GlideDynamicAttributeStore – Clear()
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 – getDynamicAttributes()
Gibt den Satz dynamischer Attributdefinitionen zurück, die im Store vorhanden sind.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Array | Array, das alle transienten und nicht transienten dynamischen Attribute enthält, die im Store vorhanden sind.
|
Das folgende Beispiel zeigt, wie transiente und nicht transiente dynamische Attribute abgerufen werden.
var das = new GlideDynamicAttributeStore();
das.setDynamicAttributeValue('a->b', 5); // transient (adding here)
das.setDynamicAttributeValue('a->c', 10); // defined in dynamic_attribute table
var attributes = das.getDynamicAttributes();
gs.info(attributes);
for (var i = 0; i < attributes.length; i++) {
var attr = attributes[i];
gs.info("");
gs.info("[" + i + "].getPath() = " + attr.getPath());
gs.info("[" + i + "].getName() = " + attr.getName());
gs.info("[" + i + "].getSysId() = " + attr.getSysId());
gs.info("[" + i + "].isTransient() = " + attr.isTransient());
gs.info("[" + i + "].getType() = " + attr.getType());
}
Ausgabe:
*** Script: a->c,a->b
*** Script:
*** Script: [0].getPath() = a->c
*** Script: [0].getName() = c
*** Script: [0].getSysId() = 8bc411a94fc01210b8ddc0e552ce0b3c
*** Script: [0].isTransient() = false
*** Script: [0].getType() = integer
*** Script:
*** Script: [1].getPath() = a->b
*** Script: [1].getName() = b
*** Script: [1].getSysId() = undefined
*** Script: [1].isTransient() = true
*** Script: [1].getType() = string
GlideDynamicAttributeStore – getDynamicAttributeValue(String groupAttrPath)
Gibt den Wert des angegebenen Attributs innerhalb des dynamischen Attributspeicherelements zurück.
| Name | Typ | Beschreibung |
|---|---|---|
| GroupAttrPath | Zeichenfolge | Attributpfad, der zum Suchen des zugehörigen dynamischen Schemaattributs verwendet werden soll. Format: „Group_Name->attr_Name“
Beispiel: |
| Typ | Beschreibung |
|---|---|
| Objekt | Wert des dynamischen Schemaattributs, auf das der übergebene Gruppen-/Attributpfad verweist. Wenn attributePathParameter enthält ungültige Informationen, 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(Objektwert)
Löscht das aktuelle GlideDynamicAttributeStore-Objekt und speichert dann die übergebene JSON-Zuordnung im GlideDynamicAttributeStore-Objekt.
Diese Methode ist funktional dieselbe wie GlideDynamicAttributeStore – setValue(Objektwert), Außer dass davon ausgegangen wird, dass alle Datumswerte im Gebietsschema des Anwenders angegeben sind.
| Name | Typ | Beschreibung |
|---|---|---|
| Wert | Objekt | Wert, der im aktuellen dynamischen Attributspeicherobjekt 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(String 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 GlideDynamicAttributeStore – setDynamicAttributeValue(String groupAttrPath, Objektwert) Methode mit Ausnahme der Verarbeitung von booleschen Werten und Datums-/Uhrzeitwerten. Diese Methode setzt voraus, dass alle Datums-/Uhrzeitwerte im Gebietsschema des Anwenders angegeben werden.
| Name | Typ | Beschreibung |
|---|---|---|
| GroupAttrPath | Zeichenfolge | Attributpfad, der zum Suchen des zugehörigen dynamischen Schemaattributs verwendet werden soll. 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 groupAttrPathParameter ist ungültig, die Methode löst einen aus IllegalArgumentException . |
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(String 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, der zum Suchen des zugehörigen dynamischen Schemaattributs verwendet werden soll. 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 groupAttrPathParameter ist ungültig, die Methode löst einen aus IllegalArgumentException . |
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(Objektwert)
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 aus diesem Objekt in das aktuelle Objekt kopiert.
| Name | Typ | Beschreibung |
|---|---|---|
| Wert | Objekt | JSON-Objekt, das als Wert im zugehörigen GlideRecord gespeichert werden soll. Die Methode ignoriert alle ungültigen JSON-Werte. |
| Typ | Beschreibung |
|---|---|
| Objekt | GlideDynamicAttributeStore-Objekt aktualisiert. |
Das folgende Beispiel zeigt, wie Attribut-/Wert-Paare in einem GlideDynamicAttributeStore-Objekt gespeichert und dann dieselben Werte von einem Objekt in ein anderes kopiert werden.
var das = new GlideDynamicAttributeStore();
var otherValues = new GlideDynamicAttributeStore();
otherValues.setDynamicAttributeValue("position->x", 5);
otherValues.setDynamicAttributeValue("position->y", 6);
das.setDynamicAttributeValues(otherValues);
gs.info(das);
Ausgabe:
{"_position":{"x":"5.0","y":"6.0"}}
GlideDynamicAttributeStore – setValue(Objektwert)
Löscht das aktuelle GlideDynamicAttributeStore-Objekt und speichert dann die übergebene JSON-Zuordnung in diesem GlideDynamicAttributeStore-Objekt.
Diese Methode ist funktional dieselbe wie GlideDynamicAttributeStore – setDisplayValue(Objektwert) Außer, dass davon ausgegangen wird, dass sich alle Datumswerte in UTC befinden.
| Name | Typ | Beschreibung |
|---|---|---|
| Wert | Objekt | JSON-Zuordnungsobjekt, das im GlideDynamicAttributeStore-Objekt gespeichert werden soll. Beispiel: |
| 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.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"}}