Initializing help system before first use

Connecting to Xpress Insight

Before you can begin to add custom views to your Mosel model, some small but mandatory changes need to be made to the model code. These changes ensure that your model can be recognized by Xpress Insight itself, and that it can continue to be run independently via the Mosel command line.
  • The mminsight package must be loaded—it includes the mminsight.dso Mosel module and implements the necessary interactions between Xpress Insight and the model.
  • To work with Xpress Insight, your model must implement the two required modes of execution:LOAD and RUN:
    • The model must implement the LOAD mode by providing a procedure which will be invoked when the scenario is executed in LOAD mode. The procedure should be registered as the handler for the LOAD mode using the appropriate annotation. The code is expected to initialize the input entities of the scenario data model with default data. Any calls to finalize must be included in the loading code.
    • The model must implement the RUN mode by providing a procedure which will be invoked when the scenario is executed in RUN mode. The procedure should be registered as the handler for the RUN mode using the appropriate annotation. The code must call insightpopulate to initialize the scenario input entities to the scenario data current values, and is then expected to calculate the results data and populate the results data entities.
    • Call insightdispatch from the global scope of the model to invoke the registered procedure for the current execution mode (or manually invoke the required code conditional on the value of insightgetmode.)
    For more on execution modes, see the later section Custom Execution Modes.
  • Calls to maximize and minimize should be replaced with calls to insightmaximize and insightminimize for LP and MIP problems.
  • Input or results data entities that you wish exposed to Xpress Insight should be declared with the public qualifier.
    • Entities declared locally within procedures or functions are not visible to Xpress Insight, they need to be declared globally to be visible.
    • Private entities would be visible in versions of Xpress Insight earlier than 4.50 if the model was compiled without the -s option to strip private symbols. Neither FICO® Xpress Workbench or (legacy) IVE editors apply the -s option by default.
    Note Developers migrating an older app to Xpress Insight 4.50 should mark all entities as public to avoid the upgrade being rejected. If some entities being marked as public are not strictly required then they can be excluded with the manage=ignore annotation or by removing the public keyword in a future upgrade.
For more, see the later section on Xpress Insight Model Requirements.

© 2001-2020 Fair Isaac Corporation. All rights reserved. This documentation is the property of Fair Isaac Corporation (“FICO”). Receipt or possession of this documentation does not convey rights to disclose, reproduce, make derivative works, use, or allow others to use it except solely for internal evaluation purposes to determine whether to purchase a license to the software described in this documentation, or as otherwise set forth in a written software license agreement between you and FICO (or a FICO affiliate). Use of this documentation and the software described in it must conform strictly to the foregoing permitted uses, and no other use is permitted.