Crisis 1.3.0

Welcome to the Crisis app - created and maintained by Sascha Wildgrube.

The Crisis app helps to organize the response to a crisis.


The Crisis app supports Crisis tasks - which can be any task related to a Crisis response.

Organizations (i.e. companies) can be categorized by an "Organization Type" (e.g. "NGO", "Local Authority", "Logistics Provider").

Organizations (i.e. companies) can be classified by user-defined "Organization Classifications". The organization's classification is displayed when navigating to records related to the organization.

For each organization users can documented who referred the organization - to further support keeping track on the trustworthyness of organizations.

Organizations can be associated to user-defined capabilities - like "Provide medical supplies" or "Care for refugees".


Crisis is NOT an officially supported ServiceNow product.

Crisis does NOT come with any kind of warranty. If you use it, you own it!

System Requirements


  1. Create an account on GitHub - if not done already.
  2. Create a personal access token for your GitHub account.
  3. Add credentials to access GitHub - use "Basic Auth".
  4. Fork the repository
  5. Go to Studio and import the DevTools application from source control.
  6. Perform all installation steps for the DevTools application documented here: 
  7. Fork the repository
  8. Go to Studio and import the Crisis application from source control.
  9. The InstallApp() function must be executed.
    Run the following script as a background script in scope x_snc_crisis:
  10. x_snc_devtools.InstallApp("x_snc_crisis");



  • x_snc_crisis.admin

    A user with admin access to the Crisis app.

  • x_snc_crisis.manager

    A user that can read and write data related to the Crisis app. A crisis manager can also add and edit users - but cannot assign roles or groups.

  • x_snc_crisis.viewer

    A user who can see data related to the Crisis app.

Script Includes

  • AppGetDependencies

    Retrieves information about the app's dependencies to other apps and required versions.

  • AppGetProperty

    Gets a system property of this application.

  • AppInstall

    This script installs Crisis.

  • AppSetDefaults

    Sets all system properties to default values.

  • AppSetProperty

    Sets a system property of this application.

  • Debug

    Produces a log output in the application log using the DevTools Debug function.

  • DevTools

    Implements the extension point for DevTools.

  • DevToolsGetApplicationStatus

    The function DevToolsGetApplicationStatus is called by the DevTools extension point instance class and returns the application status object with additional status information to be displayed on the "DevTools Application Overview" page.

  • DevToolsGetFormatConfig

    The DevToolsGetFormatConfig function is called by the DevTools extension point instance class and returns an object with field formatting information.

  • DevToolsGetInstancePipelineName

    The function DevToolsGetInstancePipelineName is called by the DevTools extension point instance class and returns the pipeline name of an instance based on the given actual name.

  • DevToolsGetLinkDirectory

    The DevToolsGetLinkDirectory function is called by the DevTools extension point instance class and returns an extended (or modified) link directory object that serves as the basis for the DevTools Link page.

  • DevToolsGetParentRecord

    The DevToolsGetParentRecord function is called by the DevTools extension point instance class and returns a parent record for the given record if it can be determined.

  • DevToolsRenderDebugDump

    The function DevToolsRenderDebugDump is called by the DevTools extension point instance class and returns additional debug information provided by the application.

  • DisplayClassificationInfo

    Displays the classification information to the user when loading a form.

  • GetClassificationInfoFromRecord

    Returns an object containing the color id ('red', 'yellow' or 'blue') and an information text for the given record based on its organization classification.
    Currently, only records in core_company are supported.

  • IsActive

    Returns true if the application is active, otherwise false.

  • Log

    Produces a log output in the application log.

  • LogError

    Produces an error log output in the application log.

  • LogWarning

    Produces a warning log output in the application log.


Copyright 2023 by Sascha Wildgrube

Licensed under the Apache License, Version 2.0 (the "License")

You may not use Crisis except in compliance with the License.

You may obtain a copy of the License at:

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Release Notes

1.3.0 - 2023-10-21

  1. Fully tested with Vancouver.
  2. DevTools 1.71.0 is now required.
  3. Added fields "Registration Code" and "VAT Registration Number" to the core_company table and extended form and list views.
  4. An organization's classification is now also displayed on the location form.
  5. Company and Location tables now support the a reference field to the Country table.
  6. The x_snc_crisis.viewer role now allows read access to the core_country table.

1.2.0 - 2023-10-02

  1. Tokyo is no longer actively supported.
  2. Added field "Referred By" and "Referred By User" to the core_company table to document who referred an organization.

1.1.0 - 2023-09-07

  1. Crisis Managers can now edit all relevant user fields.

1.0.0 - 2023-08-19

First baselined version