OrderLink Plugins

OrderLink supports three main data flows: creating jobs from orders, syncing workorders, and backing out jobs. By default, OrderLink provides order import from CSV and a variety of built-in allocation algorithms. One or more of these data flows can be customized via a plugin. As part of our services at SeedTactics, we can develop a plugin for you based on your specific needs and manufacturing process; contact us for more information.

Using a SeedTactic Plugin

If we at SeedTactics develop a plugin for you, it is provided as a ZIP file download. The plugin should be extracted into a folder accessible to all the computers which may run OrderLink (could be a network share somewhere). The ZIP contains a README file with more information. The ZIP will also contain a file default-config.ini and the default-config.ini must be renamed to just config.ini.

The flexibility plan stores the name of the plugin inside the .flexplan file, but each computer has a separate setting for the full filepath to the plugin. If the plugin has not yet been used on this computer, OrderLink will prompt you for the path to the plugin. The path can also be edited by clicking on the pencil icon next to the path in the initial connection screen. From within OrderLink, you can only change the path to the plugin; the plugin name is edited in SeedTactic: Planning. OrderLink will also display a warning if the version of the plugin is older than the most recent plugin used to download a job.

Command Line Usage

Each plugin is actually a command-line executable that reads and writes JSON data on standard input and output and can be used independently of the OrderLink GUI. This is useful for automatic scheduling or integrating scheduling into your own data-flow.

To get started, open a shell and run the executable with the --help option. This will show the list of sub-commands, and to learn more about each sub-command run the executable with both the sub-command and --help as arguments. For example, myplugin.exe create-jobs --help will display all the parameters for the create jobs data-flow. Each plugin will have customized parameters and sub-commands, see the README or contact us for more details.

Plugin API

To be used with the OrderLink GUI, a plugin must support the following command line arguments and read and write JSON on standard input/output.

The JSON format is described by JSON Schema:

The required command line arguments are:

  • plugin-info: prints PluginInfo JSON structure on standard output, containing the plugin name, version, and capabilities of the plugin.

  • create-jobs --dry-run --flex-plan <flex-file> <insight-uri>: this command should perform the full create-jobs data-flow and print a JSON JobsToMake object on standard output. The jobs should not be sent to FMS Insight; the OrderLink GUI will send the jobs once the user clicks the button.

  • sync-workorders --dry-run <insight-uri> (only if plugin-info returns SyncWorkordersToInsight = true): calculate the workorder difference between the ERP and FMS Insight, but don't actually perform the sync. Instead, print a WorkordersToSync JSON object on standard output. The OrderLink GUI will perform the sync once the user clicks the button.

  • backout <insight-uri> (only if plugin-info returns BackoutJobs = true): perform the full backout procedure and return an array of JobDecrementQuantity describing the actual quantities removed from FMS Insight.

Have more questions?

Contact Us