Tabellen-API – ServiceNow Fluent
Die Tabellen-API enthält Objekte zum Definieren von Tabellen [sys_db_object] in einer bereichsbezogenen Anwendung.
Erstellen Sie eine Tabelle mit dem Tabellenobjekt. Fügen Sie aus der Schemaeigenschaft Spaltenobjekte wie StringColumn oder IntegerColumnhinzu, um die Spalten zu definieren.
Allgemeine Informationen zur Tabellenverwaltung finden Sie unter Table administration.
Tabellenobjekt
Erstellen Sie eine Tabelle [sys_db_object] in einer bereichsbezogenen Anwendung.
| Name | Typ | Beschreibung |
|---|---|---|
| Name | Zeichenfolge | Erforderlich. Ein Name für die Tabelle, beginnend mit dem Anwendungsbereich und vollständig in Kleinbuchstaben im folgenden Format:<scope> _<name> . Der Name muss mit dem Variablenbezeichner des Tabellenobjekts übereinstimmen. Hinweis: Um einer vorhandenen Tabelle in einem anderen Anwendungsbereich Spalten hinzuzufügen, können Sie den Namen der Tabelle ohne den Anwendungsbereich gefolgt von als beliebigerangeben. Die Spaltennamen müssen stattdessen mit dem Anwendungsbereich beginnen.Maximale Länge: 80 |
| Schema | Array | Erforderlich. Eine Liste von Spaltenobjekten. Weitere Informationen finden Sie unter Spaltenobjekt. |
| erweitert | Zeichenfolge | Der Name einer beliebigen anderen Tabelle, auf der die Tabelle basiert. Beim Erweitern einer Basistabelle werden alle Felder der ursprünglichen Tabelle berücksichtigt und Systemfelder für die neue Tabelle erstellt. Wenn sie sich im selben Bereich befinden oder von anderen Bereichen aus konfiguriert werden können, können Sie Tabellen erweitern, die als erweiterbar markiert sind. |
| label | Zeichenfolge oder Array | Eine eindeutige Bezeichnung für die Tabelle in Listen- und Formularansichten. Feldbezeichnungen können als Zeichenfolge oder als Array von Bezeichnungsobjekten angegeben werden. Weitere Informationen finden Sie unter Bezeichnungsobjekt. Maximale Länge: 80 Standard: der Wert der Namenseigenschaft |
| Anzeigen | Zeichenfolge | Die Standardanzeigespalte. Verwenden Sie einen Spaltennamen aus der Schemaeigenschaft. |
| erweiterbar | Boolean | Kennzeichnung, die angibt, ob andere Tabellen die Tabelle erweitern können. Gültige Werte:
Durch Ändern dieser Eigenschaft von „wahr“ in „falsch“ wird die Erstellung zusätzlicher untergeordneter Tabellen verhindert, vorhandene untergeordnete Tabellen bleiben jedoch unverändert. Standardwert: false |
| live_feed | Boolean | Kennzeichnung, die angibt, ob Live-Feeds für Datensätze in der Tabelle verfügbar sind. Gültige Werte:
Standardwert: false |
| auto_number | Objekt | Die Konfiguration der automatischen Nummerierung [sys_number] für eine Tabelle. Weitere Informationen finden Sie unter auto_number-Objekt. |
| zugänglich_von | Zeichenfolge | Die Anwendungsbereiche, die auf die Tabelle zugreifen können. Gültige Werte:
Standard: öffentlich |
| caller_access | Zeichenfolge | Die Zugriffsebene für bereichsübergreifende Anforderungen. Gültige Werte:
Weitere Informationen finden Sie unter Einstellungen für eingeschränkte Anruferzugriffsberechtigungen. Standard: keiner |
| actions | Array | Eine Liste der Zugriffsoptionen. Gültige Werte:
Standard: lesen |
| allow_web_service_access | Boolean | Kennzeichnung, die angibt, ob Webservices Aufrufe für die Tabelle vornehmen können. Gültige Werte:
Standardwert: false |
| allow_new_fields | Boolean | Kennzeichnung, die angibt, ob die Konfiguration neuer Felder in der Tabelle zur Entwurfszeit aus anderen Anwendungsbereichen zulässig sein soll. Gültige Werte:
Standardwert: false |
| allow_ui_actions | Boolean | Kennzeichnung, die angibt, ob die Konfiguration von UI-Aktionen in der Tabelle zur Entwurfszeit aus anderen Anwendungsbereichen zulässig sein soll. Gültige Werte:
Standardwert: false |
| allow_client_scripts | Boolean | Kennzeichnung, die angibt, ob die Konfiguration von Client-Skripts in der Tabelle zur Entwurfszeit aus anderen Anwendungsbereichen zulässig sein soll. Gültige Werte:
Standardwert: false |
| Audit | Boolean | Kennzeichnung, die angibt, ob die Erstellung, Aktualisierung und Löschung aller Datensätze in der Tabelle nachverfolgt werden soll. Gültige Werte:
Standardwert: false |
| schreibgeschützt | Boolean | Kennzeichnung, die angibt, ob Anwender Felder in der Tabelle bearbeiten können. Gültige Werte:
Standardwert: false |
| text_index | Boolean | Kennzeichnung, die angibt, ob Suchmaschinen den Text in einer Tabelle indizieren. Gültige Werte:
Standardwert: false |
| attributes | Objekt | Schlüssel-Wert-Paare eines unterstützten Wörterbuchattributs [sys_schema_attribute]. Zum Beispiel:Weitere Informationen finden Sie unter Wörterbuchattribute. |
| index | Array | Eine Liste von Spaltenreferenzen zum Generieren von Indizes in der Metadaten-XML der Tabelle. Der Wert der Elementeigenschaft muss mit dem Objektschlüssel übereinstimmen, der mit dem Spaltenobjekt verwendet wird. Ein Datenbankindex erhöht die Geschwindigkeit des Zugriffs auf Daten aus der Tabelle auf Kosten von zusätzlichem Speicher. |
Zur Typeahead-Unterstützung für Spalten weisen Sie das Tabellenobjekt einer exportierten Variablen mit demselben Namen wie die Eigenschaft Name zu.
import { Table, StringColumn } from "@servicenow/sdk/core";
import { myFunction } from "../server/myFunction.js"
export const x_snc_example_to_do = Table({
name: 'x_snc_example_to_do',
label: 'My To Do Table',
extends: 'task',
schema: {
status: StringColumn({ label: 'Status' }),
deadline: StringColumn({
label: 'Deadline',
active: true,
mandatory: false,
read_only: false,
maxLength: 40,
dropdown: 'none',
attributes: {
update_sync: false,
},
default: 'today',
dynamic_value_definitions: {
type: 'calculated_value',
calculated_value: '',
},
choices: {
choice1: {
label: 'Choice1 Label',
sequence: 0,
inactive_on_update: false,
dependent_value: '5',
hint: 'hint',
inactive: false,
language: 'en',
},
choice2: { label: 'Choice2 Label', sequence: 1 },
},
}),
dynamic1: StringColumn({
dynamic_value_definitions: {
type: 'calculated_value',
calculated_value: myFunction,
},
}),
dynamic2: StringColumn({
dynamic_value_definitions: {
type: 'dynamic_default',
dynamic_default: `gs.info()`,
},
}),
dynamic3: StringColumn({
dynamic_value_definitions: {
type: 'dependent_field',
column_name: 'status',
},
}),
dynamic4: StringColumn({
dynamic_value_definitions: {
type: 'choices_from_other_table',
table: 'sc_cat_item',
field: 'display',
},
}),
},
actions: ['create', 'read'],
display: 'deadline',
accessible_from: 'package_private',
allow_client_scripts: true,
allow_new_fields: true,
allow_ui_actions: true,
allow_web_service_access: true,
extensible: true,
live_feed: true,
caller_access: 'none',
auto_number: {
number: 10,
number_of_digits: 2,
prefix: 'abc',
},
audit: true,
read_only: true,
text_index: true,
attributes: {
update_sync: true,
},
index: [
{
name: 'idx',
element: 'status',
unique: true,
},
],
})
Spaltenobjekt
Fügen Sie einer Tabelle die Spalte [sys_dictionary] hinzu.
Fügen Sie in der Schemaeigenschaft des TabellenobjektsSpaltenobjekte hinzu.
Je nach Feldtyp gibt es viele Arten von Spalten. Spaltenobjekte verwenden das Format<Type> Spalte wobei ist der Feldtyp. Informationen zu Feldtypen finden Sie unter Field types reference.
The following types of columns are supported: ListColumn, RadioColumn, StringColumn, ChoiceColumn, ScriptColumn, BooleanColumn, ConditionsColumn, DecimalColumn, IntegerColumn, VersionColumn, DomainIdColumn, FieldNameColumn, ReferenceColumn, TableNameColumn, UserRolesColumn, BasicImageColumn, DocumentIdColumn, DomainPathColumn, TranslatedTextColumn, SystemClassNameColumn, TranslatedFieldColumn, GenericColumn, DateColumn, DateTimeColumn, CalendarDateTime, BasicDateTimeColumn, DueDateColumn, CalendarDateTime, IntegerDateColumn, ScheduleDateTimeColumnund OtherDateColumn.
| Name | Typ | Beschreibung |
|---|---|---|
| label | Zeichenfolge oder Array | Eine eindeutige Bezeichnung für die Spalte, die in Listenüberschriften und Formularfeldern angezeigt wird. Feldbezeichnungen können als Zeichenfolge oder als Array von Bezeichnungsobjekten angegeben werden. Weitere Informationen finden Sie unter Bezeichnungsobjekt. Standard: Der für das Spaltenobjekt verwendete Schlüssel |
| maxLength | Nummer | Die maximale Länge der Werte in der Spalte. Bei einer Länge von unter 254 wird als einzeiliges Textfeld angezeigt. Alles, was 255 Zeichen oder mehr umfasst, wird als mehrzeiliges Textfeld angezeigt. Hinweis: Um Datenverlust zu vermeiden, verringern Sie die Länge eines Zeichenfolgenfelds nur, wenn Sie eine neue Anwendung entwickeln, und nicht, wenn ein Feld Daten enthält. Standard: 40 |
| aktiv | Boolean | Kennzeichnung, die angibt, ob das Feld in Listen und Formularen angezeigt werden soll. Gültige Werte:
Standardwert: wahr |
| Obligatorisch | Boolean | Kennzeichnung, die angibt, ob das Feld einen Wert enthalten muss, um einen Datensatz zu speichern. Gültige Werte:
Standardwert: false |
| schreibgeschützt | Boolean | Kennzeichnung, die angibt, ob Sie den Feldwert bearbeiten können. Gültige Werte:
Standardwert: false |
| Standard | Beliebig | Der Standardwert des Felds beim Erstellen eines Datensatzes. Der Wert muss den richtigen Typ basierend auf dem Spaltentyp verwenden. |
| Auswahlmöglichkeiten | Objekt | Eine Auswahlliste [sys_choice] für eine Spalte. Weitere Informationen finden Sie unter Auswahlobjekt. Diese Eigenschaft gilt nur für SelectColumn -Objekte und -Spaltentypen, die Auswahlspalten erweitern. Es kann entweder ein Array von primitiven Werten oder eine Reihe von Auswahlobjekten enthalten. |
| attributes | Objekt | Schlüssel-Wert-Paare eines unterstützten Wörterbuchattributs [sys_schema_attribute]. Zum Beispiel:Weitere Informationen finden Sie unter Wörterbuchattribute. |
| Funktionsdefinition | Zeichenfolge | Die Definition einer Funktion, die das Feld ausführt, z. B. eine mathematische Operation, Berechnung der Feldlänge oder Berechnung des Wochentags. Jede Definition beginnt mit Mit der folgenden Funktionsdefinition wird beispielsweise ein Feld erstellt, in dem die Kurzbeschreibung gefolgt von einem Leerzeichen und dem Namen des Anrufers angezeigt wird: Weitere Informationen zu Funktionsdefinitionen finden Sie unter Function field. |
| dynamic_value_definitions | Objekt | Standardwerte, die dynamisch basierend auf dynamischen Filtern generiert werden. Geben Sie eine Kombination aus einem Typ und einem zugehörigen Verhaltensschlüssel an, um dynamische Standardwerte anzugeben. Die folgenden Typen werden unterstützt:
|
| Dropdownliste | Zeichenfolge | Eine Option für die Anzeige einer Liste von Auswahlmöglichkeiten für Listen- und Formularansichten der Tabelle. Diese Eigenschaft gilt nur für SelectColumn -Objekte und -Spaltentypen, die Auswahlspalten erweitern. Gültige Werte:
Standard: keiner |
schema: {
deadline: DateColumn({ label: 'Deadline' }),
state: StringColumn({
label: 'State',
choices: {
ready: { label: 'Ready' },
completed: { label: 'Completed' },
in_progress: { label: 'In Progress' },
}
}),
task: StringColumn({ label: 'Task', maxLength: 120 }),
}schema: {
x_scope_myColumn: StringColumn({...})
}Auswahlobjekt
Konfigurieren Sie Auswahlmöglichkeiten [sys_choice] für eine Spalte in einer Tabelle.
Das Auswahlobjekt ist eine Eigenschaft innerhalb des Spaltenobjekts. Verwenden Sie das Auswahlobjekt mit unterstützten Spaltentypen in der Schemaeigenschaft eines Tabellenobjekts. Nur bestimmte Spaltentypen erweitern den Auswahlspaltentyp (Auswahlspalte) und können Auswahlmöglichkeiten enthalten.
| Name | Typ | Beschreibung |
|---|---|---|
| label | Zeichenfolge | Erforderlich. Der Text, der für die Auswahl in der Liste angezeigt werden soll. |
| Abhängiger_Wert | Zeichenfolge | Ein Wert, den Sie dem abhängigen Feld in der Eigenschaft „dynamic_value_definitions“ des Spaltenobjekts zuordnen. |
| Tipp | Zeichenfolge | Eine kurze Beschreibung der Auswahl, die als Tooltip angezeigt wird, wenn Sie den Mauszeiger darüber bewegen. |
| language | Zeichenfolge | Der BCP 47- Code der Sprache für die übersetzte Auswahl. Standard: en |
| Sequenz | Ganzzahl | Die Reihenfolge in der Liste der Auswahlmöglichkeiten, in der eine Auswahl erfolgt. |
| Inaktiv | Boolean | Kennzeichnung, die angibt, ob die Auswahl in der Liste angezeigt werden soll. Gültige Werte:
Standardwert: false |
Das Auswahlobjekt enthält eine Reihe von Auswahlobjekten, bei denen die Namen der Auswahlmöglichkeiten als Objektschlüssel gepaart mit den Auswahldefinitionen bereitgestellt werden.
choices: {
choice1: {
label: 'Choice1 Label',
sequence: 0,
inactive_on_update: false,
dependent_value: '5',
hint: 'hint',
inactive: false,
language: 'en',
},
choice2: { label: 'Choice2 Label', sequence: 1 },
}
Bezeichnungsobjekt
Konfigurieren Sie eine Feldbezeichnung [sys_documentation] für eine Tabelle oder Spalte.
Das Bezeichnungsobjekt ist eine Eigenschaft innerhalb der Objekte „Tabelle“ und „Spalte“.
| Name | Typ | Beschreibung |
|---|---|---|
| language | Zeichenfolge | Der BCP 47- Code der Sprache für die Feldbezeichnung. Eine Sprache kann nur eine Bezeichnung haben, daher muss jede Sprache innerhalb eines Arrays von Bezeichnungsobjekten eindeutig sein. |
| label | Zeichenfolge | Der Text der Feldbezeichnung in der angegebenen Sprache. |
| Tipp | Zeichenfolge | Eine Kurzbeschreibung, die als Tooltip angezeigt wird, wenn Sie den Mauszeiger über eine Feldbezeichnung bewegen. |
| Hilfe | Zeichenfolge | Zusätzliche Informationen zum Feld. Hilfetext wird nicht in Formular- oder Listenansichten der Tabelle angezeigt. |
| Plural | Zeichenfolge | Die Pluralform der Feldbezeichnung. |
| URL | Zeichenfolge | Eine URL für eine Webseite, die Informationen zu dem Feld bereitstellt. Wenn eine URL angegeben wird, wird die Bezeichnung als Hyperlink angezeigt. |
| url_target | Zeichenfolge | Nicht verwendet (veraltet). |
label: [
{
label: 'English description',
language: 'en',
hint: 'Provide a short description'
},
{
label: 'Description de español',
language: 'es'
},
]
auto_number-Objekt
Konfigurieren Sie die automatische Nummerierung [sys_number] für eine Tabelle.
Das Objekt auto_number ist eine Eigenschaft innerhalb des Tabellenobjekts.
| Name | Typ | Beschreibung |
|---|---|---|
| Präfix | Zeichenfolge | Ein Präfix für jede Datensatznummer in der Tabelle. Beispiel: INC für Incident. Standard: pre |
| Nummer | Ganzzahl | Die Nummer des Basisdatensatzes für diese Tabelle. Die Datensatznummern werden automatisch erhöht, und die nächste Nummer wird in der Tabelle „Zähler“ [sys_number_counter] verwaltet. Wenn Sie die Basisnummer auf einen höheren Wert als den aktuellen Zähler setzen, verwendet die nächste Datensatznummer die neue Basisnummer. Andernfalls verwendet die nächste Datensatznummer den aktuellen Zähler. Der Zähler wird nicht auf eine niedrigere Basiszahl als sich selbst zurückgesetzt. Standardwert: 1000 |
| number_of_digits | Ganzzahl | Die Mindestanzahl von Stellen, die nach dem Präfix verwendet werden sollen. Automatischen Nummern werden bei Bedarf führende Nullen hinzugefügt. Beispiel: INC0001001 enthält drei führende Nullen. Die Anzahl der Stellen kann die Mindestlänge überschreiten. Beispiel: Wenn „number_of_digits“ 2 ist und mehr als 99 Datensätze in der Tabelle erstellt werden, werden die Zahlen bis über 100 fortgesetzt (z. B. INC101). Warnung: Durch das Ändern dieses Felds können alle Zahlenwerte für vorhandene Datensätze in einer Tabelle aktualisiert werden. Seien Sie vorsichtig, wenn Sie dieses Feld in einer Produktionsinstanz ändern. Standard: 7 |
auto_number: {
prefix: 'TODO',
number: 2000,
digits: 9,
}