ServiceNow SDK
Verwenden Sie das Software Development Kit (SDK) ServiceNow®, um JavaScript-Module und Bibliotheken von Drittanbietern lokal zu Anwendungen hinzuzufügen und Änderungen in eine Instanz von Now Platformhochzuladen.
ServiceNow SDK-Übersicht
Mit dem SDK ServiceNow können Entwickler bereichsbezogene Anwendungen mit benutzerdefinierten Modulen und Bibliotheken von Drittanbietern in Visual Studio Code erstellen und ändern und diese Anwendungen im Release Washington DC in einer Nicht-Produktionsinstanz bereitstellen. Wenn Sie ServiceNow -Anwendungen außerhalb einer ServiceNow -Instanz schreiben, können Sie branchenübliche Entwicklungspraktiken und vertraute Tools verwenden und Fehler zur Build-Zeit und nicht nur zur Laufzeit erfassen.
Anwendungen, die mit dem SDK erstellt oder konvertiert wurden, enthalten Quellcodedateien und die Metadaten-XML-Dateien, die aus den Datenbankdatensätzen der Anwendung generiert werden. Eine Package.json -Datei definiert die Anwendungsstruktur, die der von Node.js-Anwendungen oder npm-Paketen (Node Package Manager) ähnelt.
Das SDK enthält eine Befehlszeilenschnittstelle (CLI) zum Verwalten von Änderungen zwischen einer Instanz und einer lokalen Anwendung. Mit einfachen CLI-Befehlen können Sie Anwendungen erstellen, konvertieren, erstellen, bereitstellen und abrufen.
ServiceNow SDK-Workflow
Die folgende Infografik zeigt den Workflow für Entwickler, um mit der Entwicklung von Anwendungen zu beginnen, die JavaScript-Module und Bibliotheken von Drittanbietern mit dem ServiceNow SDK verwenden.
- Ein Entwickler mit der Administratorrolle installiert das SDK.
- Mit der CLI authentifiziert sich der Entwickler bei einer Nicht-Produktionsinstanz, um mit dem Befehl
now-sdk autheine Schnittstelle zwischen seiner lokalen Umgebung und der Instanz zu erstellen. - Der Entwickler erstellt eine bereichsbezogene Anwendung (
now-sdk create) oder konvertiert eine vorhandene bereichsbezogene Anwendung aus der Instanz (now-sdk convert) zur Verwendung mit dem SDK. - In Visual Studio Codeschreibt der Entwickler benutzerdefinierte JavaScript-Module und fügt Bibliotheken von Drittanbietern hinzu.
- Der Entwickler erstellt die Anwendung, die den Quellcode kompiliert und in Datenbank-Metadaten für die Instanz umwandelt und ein bereitstellbares Paket (
now-sdk build) generiert. - Der Entwickler stellt die Anwendung in der Instanz bereit (
now-sdk deployment). - Andere Benutzer können die Anwendungsmetadaten in der Instanz weiterhin ändern, und Entwickler können den Code aus Modulen in anderen Modulen oder Skripts mit dem SDK wiederverwenden.
- Der Entwickler ruft die Anwendung in der Instanz ab, um die neuesten Aktualisierungen der Anwendungsmetadaten lokal abzurufen (
now-sdk fetch).
ServiceNow SDK-Vorteile
| Vorteil | Funktion | Benutzer |
|---|---|---|
| Schreiben Sie benutzerdefinierte JavaScript-Module, um Code in bereichsbezogenen Anwendungen zu organisieren und wiederzuverwenden. | Entwickler | |
| Nutzen Sie vorhandene JavaScript-Dienstprogramme von Drittparteien, um ein erneutes Schreiben vorhandener Open Source-Funktionalität zu vermeiden | ||
| Reduzieren Sie die Amortisierungszeit für Anwendungen durch höhere Produktivität, Effizienz und Optimierung. | ||
| Verwenden Sie vertraute Entwicklungstools mit branchenüblichen JavaScript-Fähigkeiten, einschließlich TypeScript, Typsicherheit, Intellisense und Dependency Enforcement. | Verwenden von TypeScript mit dem ServiceNow SDK |
Anwendungsstruktur
Zu den mit dem SDK erstellten Anwendungen gehören die folgenden Verzeichnisse und Dateien:
- .Metadaten
Verzeichnis mit den Metadaten-XML-Dateien der Anwendung, z. B. Tabellenschemata und Business Rules, die in derselben Verzeichnisstruktur wie vorhandene ServiceNow -Anwendungen organisiert sind.
Dieses Verzeichnis enthält eine Beispiel-Business Rule (sys_script_).<sysID> .xml ) und, falls angegeben, eine Beispieltabelle (<scope>_to_do.xml).
Hinweis:Anwendungsmetadaten sollten in der Instanz und nicht lokal bearbeitet werden.- .now
- Verzeichnis mit Caching- und Metrikinformationen für die Build- und Bereitstellungsprozesse
- Dist
- Verzeichnis mit den Build-Artefakten für das Packen.
- node_modules
- Verzeichnis mit den Node.js-Modulen der Drittpartei, von denen Ihre Anwendung abhängig ist. Dieses Verzeichnis wird hinzugefügt, wenn Pakete mit npm installiert werden.
- Quelle
- Verzeichnis mit dem Modulcode (JavaScript- oder TypeScript-Dateien), einschließlich eines Beispielmoduls mit dem Namen myfunction.js.
- Ziel
- Verzeichnis, das ein bereitstellbares Paket enthält, das in eine Instanz hochgeladen werden soll.
- .eslintrc.json
- Datei, die die ESLint-Konfiguration enthält. ESLint hilft beim Erkennen und Beheben von Problemen im Anwendungscode.
- Paket.json
Datei, die Informationen zu Ihrer Anwendung, der Konfiguration ServiceNow und benutzerdefinierten Modulen oder Modulabhängigkeiten von Drittanbietern enthält. Die Datei „ package.json “ muss sich im Basisverzeichnis einer Anwendung befinden.
In der Datei „ package.json “ wird die Anwendungskonfiguration ServiceNow im Objekt
nowdefiniert."now": { "scope": "x_snc_example_app", "scopeId": "2f8400eb07426110f736e28f69d3017a", "moduleDir": "src" }Sie können die Verzeichnisstruktur für eine Anwendung in der Datei „package.json “ mit den folgenden Parametern konfigurieren:- Modulverzeichnis
- Verzeichnis mit dem Modulcode (JavaScript- oder TypeScript-Dateien). Der Standardwert ist src.
- metadataDir
- Verzeichnis, das die Metadaten der Anwendung als XML-Dateien enthält. Der Standardwert ist .metadata.
- kompilierenAusgabeDir
- Verzeichnis zur Ausgabe der Build-Artefakte für das Packen beim Erstellen der Anwendung. Der Standardwert ist dist/app.
- cpackOutputDir
- Verzeichnis zur Ausgabe der ZIP-Datei, die beim Erstellen der Anwendung in eine Instanz hochgeladen werden soll. Der Standardwert ist Ziel.