Définir les métadonnées d’application dans le code avec ServiceNow Fluent dans le ServiceNow IDE
Définir les métadonnées d’application dans le code avec ServiceNow Fluent dans le ServiceNow IDEfichier .
Avant de commencer
Créez ou clonez une application incluse dans le périmètre avec l’extension ServiceNow IDE. Pour plus d’informations, reportez-vous à la section Créer une application avec le ServiceNow IDE ou Cloner un dépôt Git avec l’attribut ServiceNow IDE.
Rôle requis : administrateur
Pourquoi et quand exécuter cette tâche
ServiceNow Fluent est un langage DSL (Domain-Specific Language) basé sur TypeScript pour définir les fichiers de métadonnées [sys_metadata] qui composent les applications et inclut des API pour les différents types de métadonnées, tels que les tables, les rôles, les ACL, les règles métier et Framework de tests automatisés les tests. Pour en savoir plus sur les API et des exemples, reportez-vous ServiceNow Fluent à la section ServiceNow Fluent Référence d’API.
Le dispose par défaut d’un ServiceNow IDE traitement et d’une validation de la langue pour ServiceNow Fluent les API, y compris la vérification des propriétés et des importations requises dans les fichiers .now.ts .
Procédure
Définition des métadonnées d’application dans le code source avec ServiceNow Fluent
Dans les fichiers avec l’extension .now.ts , utilisez des objets dans les ServiceNow Fluent API pour définir les métadonnées dans l’application. Vous devez également inclure les importations requises pour les API à partir de @servicenow/sdk/core.
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,
})Une fois l’application générée, ce code source génère les fichiers de métadonnées d’application suivants sur l’instance.
Que faire ensuite
Créez votre application pour compiler le code source dans les métadonnées de l’application et rendre vos modifications disponibles dans l’instance. Pour en savoir plus, consultez Créer une application dans ServiceNow IDE.