Issue Management
Issue management is at the core of InterSystems Supply Chain Orchestrator™, and this page provides an overview of the tools provided to help you manage issues.
Identifying and Generating Issues
Supply Chain Orchestrator provides many ways to identify and formally generate issues.
-
Through KPIs. If a KPI is configured to generate issues, an automated system task (SC.Core.Tasks.UpdateKPIssue) evaluates that KPI and generates issues for every record that meets the KPI conditions. For example, a late-delivery KPI for sales orders can generate an issue for every late-delivery order.
-
Through BPL/DTL processes in Supply Chain Orchestrator. Any data integration or business process can be used to generate issues for specific conditions.
-
By a Smart Data Service (SDS). For example, a SDS can be implemented to subscribe to external events, and determine the impacts on current supply chain. Such impacts can be captured in the form of issues and persisted in InterSystems IRIS.
The SDS would use the data API to create issues.
-
Sent in from external systems. Supply chain risks can be determined outside Supply Chain Orchestrator. For example, a manufacturing application may determine a part shortage for certain product at a plant, and the information can be sent to Supply Chain Orchestrator as an issue through API for issue resolution and reporting purpose.
The external system would use the data API to create issues.
-
Your own custom logic, which would scan the relevant tables periodically and then use the data APIOpens in a new tab to create issues.
In each case, Supply Chain Orchestrator generates issues in an internal table, which is then available for automated processing and for your API calls, depending on the use case.
Running Issue Analysis
After an issue has been generated, your code can determine a response. This can happen in several different ways:
-
For an issue generated by a KPI, an automated system task (SC.Core.Tasks.AnalyzeAllNewIssues) starts issue analysis. The analysis is defined in an InterSystems IRIS business process by using a graphical UI that is designed for business logic; the KPI definition specifies the business process to use. The business process can include interoperability workflow elements for human intervention.
-
For other issues:
-
Use the analytics API. With this API, you can start an issue analysis in either of two ways:
-
Providing only the name of the business process to use.
-
Providing the name of a business process, a template, and the contexts object (as used in the scenario analysis module). In this case, the business process cannot contain interoperability workflow elements.
-
-
Use the scenario analysis API and start a scenario analysis run. In this case, your code must call a method to inform the system of the status of the callAction that was eventually selected. The SC.Core.Analytics.SAM.API.ScenarioAnalysisApiImpl class provides the CallActionStatus() method, which takes the following arguments:
ClassMethod CallActionStatus(scenarioAnalysisId,status,message)Where:
-
scenarioAnalysisId is the ID of the scenario analysis.
-
status indicates the status of the call action (use 1 for success and 0 for failure)
-
message is a descriptive message about the result of the call action.
-
-
Issue Analysis Statuses
An issue analysis progresses through at least some of the following states:
- created
-
The analysis record has been created and is now queued for processing.
- in progress
-
Framework processing has started, and the initial validation is in progress.
- running custom bp
-
The system is executing the custom BPL business process.
- awaiting sam run
-
Waiting for scenario analysis to start.
- running sam
-
The scenario analysis module is analyzing scenarios.
- completed
-
Analysis has finished successfully (without workflow).
- workflow
-
A workflow task was created, and the system is waiting for user input.
- terminated
-
The analysis was canceled. This occurred because a user triggered a rerun of the analysis.
- failed
-
The analysis encountered an error. In this case, check statusMessage for details.
If a custom business process runs for more than one hour, the analysis is marked as failed with the message “issue analysis has been marked as failed due to timeout.” This timeout is enforced by the TimeoutOldIssueAnalysisRuns task.
Issue Statuses
An issue progresses through at least some of the following states:
- open
-
The issue has just been created or analysis is complete; no workflow is active.
- workflow
-
A workflow task was created, and the system is waiting for user input.
- workflow action triggered
-
The user has submitted a workflow action, and the action code is executing.
- workflow action success
-
The user has submitted a workflow action, and the action code has completed without errors.
- workflow action error
-
The user has submitted a workflow action, and the action failed. Attention is needed.
- closed
-
The issue is resolved. This is the final state of an issue.