Definieren Sie Anwendungsmetadaten im Code mit ServiceNow Fluent und ServiceNow
Definieren Sie mit im Code Anwendungsmetadaten ServiceNow Fluent und ServiceNow.
Vorbereitungen
- Installieren Sie den ServiceNow Fluent -Sprachserver, um die Sprachverarbeitung und -validierung für ServiceNow Fluent in Visual Studio Codeabzurufen . Weitere Informationen finden Sie unter Installieren Sie den ServiceNow Fluent -Sprachserver in Visual Studio Code..
- Erstellen oder konvertieren Sie eine bereichsbezogene Anwendung mit ServiceNow. Der Parameter „
--projectType“ muss beim Erstellen oder Konvertieren der Anwendung auf „fließend“ festgelegt werden. Weitere Informationen finden Sie unter Erstellen oder konvertieren Sie eine Anwendung mit ServiceNow.
Erforderliche Rolle: admin
Warum und wann dieser Vorgang ausgeführt wird
ServiceNow Fluent ist eine auf TypeScript basierende domänenspezifische Sprache ( Domain Specific Language, Domänenspezifische Sprache) zum Definieren der Metadatendateien [sys_metadata], aus denen Anwendungen bestehen. Sie enthält APIs für die verschiedenen Arten von Metadaten, z. B. Tabellen, Rollen, ACLs, Business-Regeln und Automated Test Framework -Tests. Weitere Informationen und Beispiele zu ServiceNow Fluent -APIs finden Sie unter ServiceNow Fluent API-Referenz.
Prozedur
Definieren von Anwendungsmetadaten im Quellcode mit ServiceNow Fluent
Verwenden Sie in Dateien mit der Erweiterung „.now.ts “ Objekte in den ServiceNow Fluent APIs, um Metadaten in der Anwendung zu definieren. Sie müssen auch die erforderlichen Importe für die APIs von @servicenow/sdk/core einschließen.
import '@servicenow/sdk/global'
import { BusinessRule } from '@servicenow/sdk/core'
import { ClientScript } from '@servicenow/sdk/core'
import { Table, DateColumn, StringColumn } from '@servicenow/sdk/core'
import { showStateUpdate } from '../server/script.js'
//creates todo table, with three columns (deadline, status and task)
export const x_snc_example_to_do = Table({
name: 'x_snc_example_to_do',
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 }),
},
})
//creates a client script that pops up 'Table loaded successfully!!' message everytime todo record is loaded
ClientScript({
$id: Now.ID['cs0'],
name: 'my_client_script',
table: 'x_snc_example_to_do',
active: true,
applies_extended: false,
global: true,
ui_type: 'all',
description: 'Custom client script generated by Now SDK',
messages: '',
isolate_script: false,
type: 'onLoad',
script: script`function onLoad() {
g_form.addInfoMessage("Table loaded successfully!!")
}`,
})
//creates a business rule that pops up state change message whenever a todo record is updated
BusinessRule({
$id: Now.ID['br0'],
action: ['update'],
table: 'x_snc_example_to_do',
script: showStateUpdate,
name: 'LogStateChange',
order: 100,
when: 'after',
active: true,
})Nach dem Erstellen und Bereitstellen der Anwendung generiert dieser Quellcode die folgenden Anwendungsmetadatendateien in der -Instanz.
Nächste Maßnahme
Erstellen Sie Ihre Anwendung, und stellen Sie sie bereit, um Quellcode in Anwendungsmetadaten zu kompilieren und Ihre Änderungen in der -Instanz verfügbar zu machen. Weitere Informationen finden Sie unter Erstellen und stellen Sie eine Anwendung mit bereit ServiceNow.