2.0.0 • Published 1 month ago

@vertigis/workflow-activities-maximo v2.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 month ago

CI/CD npm

This project contains activities for interacting with the Maximo REST API in a VertiGIS Studio Workflow.

Requirements

VertiGIS Studio Workflow Versions

The Maximo activities are designed to work with VertiGIS Studio Workflow versions 5.37 and above.

Maximo Versions

The Maximo activities are designed to work with Maximo versions 7.6.0.2 and above.

Cross-Origin Resource Sharing (CORS)

Typically the web application running your workflow will be on a different domain than the Maximo REST API. In order for the Maximo activities to be able to communicate with the Maximo REST API your Maximo deployment must support Cross-Origin Resource Sharing (CORS). There are multiple ways to enable this:

  • Option 1: Enable CORS on the Maximo web server.
    1. Log in to Maximo as an administrator
    2. Open the System Properties via the System Configuration > Platform Configuration > System Properties menu
    3. Optionally filter the properties to show only those starting with mxe.oslc.aclallow
    4. Set the mxe.oslc.aclalloworigin property to match the base URL of the web application that will use the Maximo activities. For example, one of:
      • https://apps.vertigisstudio.com
      • https://acme.apps.vertigisstudio.com
      • https://www.my-server.com
    5. Set the mxe.oslc.aclallowheaders property to accept,content-type,maxauth,patchtype,properties,x-method-override,x-public-uri
    6. Set the mxe.oslc.aclallowmethods property to GET,POST,PUT,DELETE,OPTIONS
  • Option 2: Use a proxy that enables CORS by adding the necessary CORS headers.
    • The following web.config provides an example of how to create such a proxy in IIS using Application Request Routing and URL Rewrite.
      • Note: this sample is intentionally very permissive so that it will work for most deployments. You should follow CORS best practices and restrict the allowed origins and headers to only those required for your deployment.
<?xml version="1.0"?>
<configuration>
    <system.webServer>
        <httpProtocol>
            <customHeaders>
                <add name="Access-Control-Allow-Origin" value="*" />
                <add name="Access-Control-Allow-Headers" value="*" />
                <add name="Access-Control-Allow-Methods" value="GET, HEAD, OPTIONS, POST, DELETE" />
            </customHeaders>
        </httpProtocol>
        <rewrite>
            <rules>
                <remove name="Proxy" />
                <rule name="Proxy" patternSyntax="Wildcard" stopProcessing="true">
                    <match url="*" ignoreCase="false" />
                    <action type="Rewrite" url="https://acme.emaximo.com/maximo/{R:0}" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

Usage

To use the Maximo activities in VertiGIS Studio Workflow Designer you need to register an activity pack and then add the activities to a workflow.

Register the Maximo activity pack

  1. Sign in to ArcGIS Online or Portal for ArcGIS
  2. Go to My Content
  3. Select Add Item > An application
  4. Reload VertiGIS Studio Workflow Designer
  5. The Maximo activities will now appear in the activity toolbox in a Maximo category

Use the Maximo activities in a workflow

  1. Establish a connection to the Maximo service
    1. To connect to the Maximo service as a user:
      1. Add the Create Maximo Service activity to a workflow
      2. Set the URL input to the root URL of your Maximo server. For example, https://acme.emaximo.com/maximo.
      3. Set the Username and Password inputs or the API Key input
    • IMPORTANT: secrets and passwords are credentials that should not be hard coded into workflows. These values should be acquired by the workflow at runtime from the end user or from another secure system.
  2. Use the Maximo service
    1. Add one of the other Maximo activities to the workflow. For example, Get Maximo Assets.
    2. Set the Service input of the activity to be the output of the Create Maximo Service activity
      • Typically this would use an expression like =$mxService1.service
    3. Supply any additional inputs to the activity
    4. Supply the result output of the activity to the inputs of other activities in the workflow
  3. Run the workflow

Development

This project was bootstrapped with the VertiGIS Studio Workflow SDK. Before you can use your activity pack in the VertiGIS Studio Workflow Designer, you will need to register the activity pack.

Available Scripts

Inside the newly created project, you can run some built-in commands:

npm run generate

Interactively generate a new activity or form element.

npm start

Runs the project in development mode. Your activity pack will be available at http://localhost:5000/main.js. The HTTPS certificate of the development server is a self-signed certificate that web browsers will warn about. To work around this open https://localhost:5000/main.js in a web browser and allow the invalid certificate as an exception. For creating a locally-trusted HTTPS certificate see the Configuring a HTTPS Certificate section on the VertiGIS Studio Developer Center.

npm run lint

Runs linter to perform static analysis.

npm run build

Builds the activity pack for production to the build folder. It optimizes the build for the best performance.

Your custom activity pack is now ready to be deployed!

See the section about deployment in the VertiGIS Studio Developer Center for more information.

Documentation

Find further documentation on the SDK on the VertiGIS Studio Developer Center

2.0.0

1 month ago

1.0.2

10 months ago

1.0.3

8 months ago

1.0.1

1 year ago

1.0.0

1 year ago