SC Navigator 24.4.1

SC Navigator 24.4.1Date March 19, 2024 New Features The System Configuration app has a new page "Case Management". This allows you to move Results Datasets (that are not shared) from one user to another. This is needed, when one user leaves their role and another user is taking over this role and needs access to the saved results. Improvements Data validation is added for the Whiteboard feature. Now, before the template is downloaded, the application will automatically validate the data and if any issues are found, it will show these in dialog. Another new data validation was added to the model. It will now give an error when there is a location without any supplier, warehouse, production, or customer on it, but there is a lane defined for it. The tooltip of the "Help" button in the bottom right corner (on the status bar) now indicates that it guides you to both the documentation and the release notes. On the Save Results Data dialog for saving Trade-Off Analysis Results, the "Results visible to everyone" switch is added, such that you can now also share Trade-Off Analysis results with other users. We improved the Trade-off Analysis code from a technical point of view, such that we can modify it more easily in the future. The performance of models with a high number of locations has been improved. Bug Fixes In rare instances, after running an optimization, it is possible to receive the warning message "A problem occurred during the optimization (...)". This message occurs when the app concludes that for that specific situation, it used too strict constraints during the optimization. We have adapted the model such that the constraints are no longer too strict in this case. The "Production Routing" Minimum and Maximum Capacity were incorrectly scaled when loaded from a dataset created in version 24.2.1 up to 24.3.3. Those datasets will continue to have this problem, however after this fix newly created datasets will not have this problem. When you use "Production Routing" Minimum and/or Maximum Capacities, we advise you to reload your data from your Excel template and save it as a new dataset with this new version of SC Navigator. After the recent update of the map colors, some custom node and arc color settings were prompting a warning message stating that a color "is not an element of the checked set Map_ColorPalette". Custom map color settings will no longer cause this warning. After a dataset or results dataset was deleted, the name was not removed from all lists, so it could still be visible. On page Center of Gravity, in rare cases, the algorithm behind the Solve Max Drive Time button could result in an Error: "The model was not solved, most likely due to an infeasibility". This could happen when some locations were distant from real cities, such that the algorithm was not able to generate a viable CoG location within the specified Maximum Drive Time. These distant location are now considered themselves as possible CoG locations, such that the model that is part of the algorithm, is no longer infeasible. On page Center of Gravity - CoG Settings, in widget General Settings, the transportation speed is now used correctly when calculating the drive times in Center of Gravity. On page Center of Gravity, in the Demand/Supply Distribution map, the Center of Gravity locations were not visible when loading a CoG results dataset, although the location latitude and longitude data were visible on the CoG Run Details page. When downloading the model output, the 'Force Close' attribute would not be exported to the Supplier sheet. Transport lanes were not appearing on the reference map when comparing results datasets that contained different products. Opening and Closing Costs were not applied in single-period models. This behavior has been adjusted such that these costs will always be applied when Initial Status Closed is set to 1. It was possible that Whiteboard Results would disappear from the list where they can be loaded, this version fixes that problem for the future. However, this does not fix Whiteboard Results that have already disappeared. If that happened to you, please contact us so we can fix this manually for you.

Related products:SC Navigator

Product Update - Expected WebUI features in AIMMS 24.3

Dear Community,We are excited to share the upcoming enhancements to the AIMMS WebUI, aimed at enriching its features and capabilities.Introducing the New Diagram Widget TypeOur newest addition, the Diagram widget type, offers a dynamic and versatile solution for visualizing project diagrams. Whether it's network flows, pipelines, or layouts, this widget provides enhanced features and flexibility comparable to the Network Object widget in the AIMMS WinUI. With an interactive canvas supporting the addition of nodes and arcs, and the ability to be driven by model data, the possibilities are endless.Similar to the Map widget, the Diagram widget allows configuration with multiple Node sets, each representing a collection of nodes plotted on the canvas. Additionally, the Arc Set enables the representation of arcs between nodes on the canvas.Currently, the Diagram widget supports five node templates for the representation of nodes.Please note that this widget is currently being released as an experimental feature. We are keen on gathering feedback and have plans for further expansion and enhancement in the futureStay tuned for the documentation of this widget type for more details!Check out an example of the Diagram widget type used to build the WhiteBoard feature in the AIMMS SC-Navigator application. Introducing Two New WebUI Library Functions webui::RequestFileUpload and webui::RequestFileDownloadIn response to feedback received on the Upload and Download widgets, we have enhanced the upload process to be a one-click action and expanded the capabilities to enable uploads and downloads to be triggered from various components such as buttons, item- actions, page- actions, etc.These new functions allow you to initiate file upload and download directly from AIMMS procedures, enabling integration with buttons or other actions.Stay tuned for the documentation of this feature for more details!We understand your excitement about these features. We will keep you all informed as the AIMMS 24.3 release is made. We hope these features enhance your applications and contribute to an even better user experience. Your feedback and suggestions are highly valued, so please share them in the comments. Thanks,Team WebUI.

Related products:WebUI

SC Navigator 24.3.1

SC Navigator 24.3.1Date February 26, 2024 New Features The Whiteboard feature has been added: a powerful tool designed to streamline supply chain modeling. This innovative feature allows you to create a diagram of your supply chain network and translate it into an Excel template. The Whiteboard enhances the speed and accuracy of supply chain modeling, while also serving as an introduction to the SC Navigator approach of capturing the behavior and configuration of real-world supply chains in a spreadsheet. More information can be found in the Whiteboard documentation. Improvements The Inventory Cover functionality has been improved by introducing "Maximum Inventory Cover". The attribute "Inventory Cover" has been renamed to "Minimum Inventory Cover". With these attributes you can set the minimum / maximum number of next periods' outflow covered in inventory. On page Results - Transportation, the Transport Results table is added, showing all transport lanes including their capacities. The node colors on the main map have been updated to improve visibility and to better distinguish between different nodes and resource groups. The old colors are still available via the widget action Customize Nodes on the main map. Bug Fixes The Enforce Base Case Constraints option was not handled correctly when applying this via the scenario functionality. As a side effect, checking or unchecking that option will be faster. The Trade-Off Analysis did not work correctly. The model would sometimes report the solution incorrectly as infeasible. The changes made in version 24.2.1 with respect to group count constraints could result in very slow performance in instances with a high number of suppliers, productions and/or warehouses. This new version resolves those slowdowns. The "Risk" attribute for custom objectives was not populated correctly when generating templates. Values were written to the column of attribute "Refundable with Limit". SC Navigator would report models with inventory and {warehouse group} capacity constraint incorrectly as infeasible. This was due to a constraint being enforced for group values, but for one variable (outflow) the flow was calculated but for the other variable (inventory) it was not. The template was not generated correctly when custom objectives had a "-" in their name. When a custom objective was renamed, its previous name was still taken into account. When capacities were only defined at the product level, the tooltips of the charts on the result pages did not show them. On page Trade-Off Analysis, the Run button could be pressed multiple times, triggering more runs than needed. On page Center of Gravity, if the option Move to Closest City was selected, the tooltip and the result tables used different names for locations. When there was a Trade-Off Analysis run in progress and a new Trade-Off Analysis run started with a newly loaded dataset, the previously started runs and the new runs were conflicted. The Data Validation was numerically more strict than the network constraints. On the Circular Flow page and the Load Optimization Results dialog, some internal names were visible. These are now properly translated to understandable names. Forced Flow data validation with active inventory was not working correctly with groups.

Related products:SC Navigator

SC Navigator 24.2.1

If you are subscribed to the Product Updates on this community, you might have received an email notification on February 2nd in which the link to the product update did not work. With today's release, the links should work properly again.  SC Navigator 24.2.1Date February 15, 2024 New Features The name of the uploaded Excel file will now be stored together with the dataset. It is shown in dataset overviews. This allows you to see what the source of the data is. The model has been extended with two attributes "Minimum Capacity" and "Maximum Capacity" on the "Production Routing" sheet. That allows you to specify the capacity for a Bill of Material. (This value is in the same capacity unit as the data on sheet "Production".) A new sheet has been added: Bill of Material Groups. This allows you to create groups of Bill of Materials, in the same way that you create Product and Supplier groups. You can use {BOM} groups for the above-mentioned Minimum Capacity and Maximum Capacity. These capacities are also shown in the Results - Production page, as well as in the Excel and Database/Parquet results. The Minimum and Maximum # of Open Suppliers/Productions/Warehouses attributes have been added to the Supplier, Production, and Warehouse sheets in the template. These allow count constraints to be added for curly bracket location, supplier, production and warehouse groups. More information on count constraints can be found in the documentation: Count and Ratio Constraints. Improvements On page Results - Warehouse, when comparing scenarios, the "Throughput, Inventory" chart groups results by dataset. After feedback from various users, we have adjusted the behavior of the model when using a Bill of Material that is specified over multiple production facilities in the "Production Routing" sheet. In previous versions, such a bill of material was required to use all facilities. The current model can pick one or more, depending on how much production capacity is needed. If desired, the old behavior can be achieved, by creating multiple Bill of Materials together with intermediate products. On page Results - KPI Overview, and on the KPI Summary page, costs for Suppliers/Productions/Warehouses have been split into three buckets - Fixed Cost, Variable Cost, and Open/Close Cost. On the KPI Summary page, the Service Widget now also contains the Cost Per UOM and the (number of) Open Suppliers/Productions/Warehouses. The capacity on the server that is used to do all the optimization requests is shared by all users that use the same cloud. Previously, all optimization requests from all users were handled with the same priority. This means that a normal optimization request that was started by one user, had the same priority as Trade-Off Analysis or Risk Analysis requests that were started by another user. So, if you started a normal request after someone else started an Analysis request, it could take a long time before your request would be processed. Now, normal optimization runs have priority over runs from Trade-Off Analysis or Risk Analysis. On page Center of Gravity, the transportation speed can be changed now. The default value is the average speed of all transportation types in the dataset. In the dialog Add CoGs to the set of Warehouses, the values for Warehouse Group for CoGs and Location Group for CoGs are now initialized with the CoG Location Group/CoG Warehouse Group value provided in the template. We have removed the "Solution found" dialog message at the end of a Solve Max Drive Time run, to prevent an unnecessary click. By default, Suppliers are no longer included in the CoG calculations as many users ran into the warning Warning infinite capacity treated as zero. If you want to include suppliers, please select them again on page CoG Settings. You can now edit the Center of Gravity Wiggle Factor parameter. The initial value is set to the average of the Transportation Wiggle factor in input data. The tooltip for the CoG Weight Factor now includes a brief explanation of what this parameter controls. When exporting CoG locations, the CoG Primary/Secondary Transport Cost values will be used to populate the 'Cost Per Distance' for primary or secondary lanes connecting the exported CoG locations. This ensures consistency between the parameters used in the Center of Gravity analysis and the exported data to be used in subsequent network optimization workflows. SC Navigator could report models with inventory and {warehouse group} capacity constraints incorrectly as infeasible. Bug Fixes In some cases, saving the results datasets could be much slower in SC Navigator version 24.1.1, compared to the previous version. The Weighted Average Lead Time on the KPI Summary dialog was using the Maximum lead time, instead of the actual lead time. On page Results, the coloring in the Reference Result map was not correct. It used the same coloring as the Active Result map, while it should color based on the data of the Reference Result dataset. The calculation of Rate Card cost was not correct when lanes were defined with curly brackets. In that case, some costs were duplicated. The data validation executed after Add CoGs to the set of Warehouses could give incorrect data validation errors and warnings. The Trade-Off Analysis did not work correctly when having more than 10 runs and some of the runs would be marked as infeasible incorrectly. The model could incorrectly generate this warning when loading a dataset: There exists a warehouse that has 'Inventory Cover', but no 'Available (Inventory)' for next period.

Related products:SC Navigator

SC Navigator 24.1.1

SC Navigator 24.1.1Date January 11, 2024 New Features Risk Analysis simulates closing each location, one at a time, and assesses the corresponding impact. This will help you in finding the vulnerabilities of your supply chain. More information about the Risk Analysis can be found in the documentation: Risk Analysis. With Trade-Off Analysis you can do multiple solves, each with a different setup, and find the best trade-off between your KPIs. More information about the Trade-Off Analysis can be found in the documentation: Trade-Off Analysis. Improvements Previously, some pages displayed raw coding names instead of proper text. These have now been replaced with appropriate texts across all pages. The pages "Geocodes" and "Distance" are now also available when the data is loaded from a dataset. In that case, the data on these pages is read-only. The icons for the primary page actions on page "Geocodes" and "Distance", have been replaced by icons that match the action, instead of the generic AIMMS logo. Links to the latest e-learning material have been added to the template. Solving time for datasets with Single Sourcing data is decreased in case of both active and relaxed optimization options. The SC Navigator version numbering has changed. From now on, the first number will refer to the year in which the version was released. The second number still increases with every feature release. The third number increases for bug fix releases. Bug Fixes The data validation warning that appeared when a minimum number of Suppliers/Productions/Warehouses/Locations was provided without a maximum, is removed. When a results scenario was saved right after a Full Solution Export, the scenario did not appear in the list of results scenarios.

Related products:SC Navigator

SC Navigator 4.05.01

SC Navigator 4.05.01Date November 30, 2023 New Features From this version on, data can be stored in Parquet files in Azure Data Lake Storage. Using Parquet files allows for easier integration with other systems in your organization. Furthermore, reading and writing datasets can be faster, especially for larger datasets. We will contact you to plan when we will setup Data Lake Storage and convert your existing database to Parquet files. Improvements Data validation has been added for the case when the Maximum # of Source Locations data for customers is provided on the Product Location sheet. Please make sure to provide the Maximum # of Source Locations data for customers on the Customer Product Data sheet instead. The generated summary for scenarios has been improved to provide a clearer representation of the contents within each scenario. On page Results - Transport, the Rate Card Band results are now visible. On page Results - End To End, filters now operate independently from the filters on other pages, providing increased flexibility to alter the view. Additionally, a filtered icon indicator has been added for enhanced visibility. Bug Fixes In the Batch Run functionality, an error could occur when the solution was being saved to the database and the auto-generated scenario name was excessively long. As a result, the batch run process came to a halt because the long name could not be stored in the database. Now the app is able to automatically truncate the name into a shorter text, and include the original name as description. When comparing Results datasets, the KPI Summary dialog now shows the Results datasets in the columns instead of the rows in a table. On page Control Panel, the Model Control table now displays the section separation lines well when comparing multiple (newly saved) Results datasets. On page Data - Transport, in the Transportation Data table the Force Open and Force Close columns are now always visible. On page Results - Customer, the unserved demand is excluded from the lead time violation and the drive time distribution. In this case the drive time is not shown (zero). On page Results - Customer, if the demand is transported to a customer with zero distance, the drive time was incorrectly -inf. Now in this case the drive time is not shown (meaning: it is zero). When using side panel filters, the count of the Select/Deselect buttons were inaccurate and the clicking on the Deselect button would give an error message. On page Results, the tooltip for nodes on the map now shows the location description if the Use Description Location attribute is set. On page Data - Manage Data, when deleting one or more items, the text in the confirmation dialog is more accurate. On page Results - Production, clicking on a production in the bottom left chart, did not update the other charts based on this selection.

Related products:SC Navigator

SC Navigator 4.04.01

SC Navigator 4.04.01Date October 23, 2023 New Features The Center of Gravity App has been integrated into the SC Navigator App. This brings a streamlined process enabling analyzing Centers of Gravity within the same dataset and application. When there is a circular flow in the solution, a new page "Circular Flows" will show up. This page will help you finding the cause of the circular flow, such that it can be fixed in the input data. Improvements On page Scenario - Control Panel, more attributes can be handled. On page Results, colors of the node types have been changed to colors used in Network Design, and their icons also have changed for easier identification. On page Results, the View options side panel now shows the colored icons in the Filter By Node Type widget. This allows you to quickly identify the node type of nodes on the Results map. On page Data - Manage Data, the Scenarios table now includes an auto-generated scenario summary. This summary provides quick insights into each scenario without additional loading actions. The Save Scenario Dialog and the Load Scenario Dialog show this summary as well. Please note that the summary is only available for new scenarios. Data validation has been added in case the Average Load Size data is missing for a row with Cost Per Distance / Cost Per Trip / Minimum Cost Per Trip. Bug Fixes The list of Result Datasets that are generated during a batch solve, was not displayed correctly. The changes made in version 4.03.04 with respect to the E2E volumes could result in very slow performance in some instances. This new version will be faster than before, although it will be slower than before 4.03.04. The following data validation messages will no longer occur when the Available data is missing for a row with a curly bracket group in it: "WARNING: There are one or more attributes defined for (<combination including a curly bracket group>). However, this <warehouse/supplier> is not available for this product. You can make it available by specifying the 'Available' attribute on sheet '<Warehouse/Supplier (Product)>'." The data validation for Base Case Volumes now shows an error when Base Case Volumes on a last mile lane are different from the sum of demands at the customer location where the lane goes to. On page Results - Transport, the charts incorrectly displayed a duplicate transportation volume due to the inclusion of both product groups and individual products in the calculation of transportation data. On page Data - Transport, the Custom Objective input data for transport step was not visible when the data was not (yet) saved to the database. On page Scenario - Transport, the Relative Change value was not being applied properly. On page Scenario - Production, the adjustment data related to the Bill of Resource data was not being saved correctly. On page Data - Warehouse, in the Inventory (Product) Data tables the Force Open and Force Close columns are now always visible. On dialog page Custom Objective settings, the 'Include in model objective' variable can now only have binary values.

Related products:SC Navigator

Upcoming end ofsupport for AIMMS PRO installations on Windows Server 2012 and older versions - Q&A

This Q&A is dedicated for customers running AIMMS applications on AIMMS PRO installed on a Windows Server 2012. It is adjuscent to an e-mail we have sent inviting you to plan and perform your Windows upgrade.Please read it carefully and do not hesitate to contact us on support@aimms.com if you have any questions. Q&A 1. What is involved in a Windows server migration from 2012 to Windows Server 2019/2022?A: A Windows server migration involves moving data, applications, and settings from the old server to the new server. This can include transferring files, databases, and user accounts, as well as configuring the new server to match the settings of the old server. 2. Why should I consider migrating from Windows Server 2012 to Windows Server 2019/2022?A: Windows Server 2019/2022 includes several new features and improvements, such as improved security, better performance, enhanced virtualization, and improved management. Additionally, Windows Server 2012 is approaching the end of its support lifecycle, which means that clients will no longer receive security updates or technical support from Microsoft and AIMMS. 3. How long does a Windows server migration typically take?A: The time it takes to complete a Windows server migration can vary depending on the size and complexity of your environment. With simple setups and good preparation of the local IT expert it can take 2 hours per set up migration.In situations with lost domain knowledge and higher level of set up complexity the migration can take days.Yet, please know that we are here to support you and will make sure to help you minimize any downtime/lack of access to your resources.   4. What are some common challenges that can arise during a Windows server migration?A: Common challenges during a Windows server migration can include issues like:Database connection issues or connection to external data resources; Access of users to the new URLs; Single sign on (passwordless) log on issues; Not knowing about other undocumented or specific local custom set up.These issues are usually minimized by AIMMS due to our pre-migration questionnaire/preparation which helps us to better understand the customer’s set up. 5. How can I ensure a successful Windows server migration?A: To ensure a successful Windows server migration, it is important to plan and prepare thoroughly, test the migration process in a non-production environment, respond to AIMMS Pre-migration questionnaire so that we can have a better understanding of your set up and create a backup and recovery plan in place in case of any issues. 6. Who needs to be involved in the process from your side?It is strongly recommended to involve the following experts in the process:a qualified IT professional who knows (or can reverse engineer/troubleshoot) the existing PRO set up ;An app developer who knows the applications and can make minor changes and re-upload the apps if necessary; An end user who can test that the set up functions as expected after the migration process is completed;The lack of any of the above parties may extend the migration process. 7. What will happen if I do not migrate my servers now?AIMMS PRO will continue to work as is, but AIMMS will not support the platform. This means that we will not be able to assist you in case of issues, will not be able to assist you when you do upgrade, etc. 8. What is your responsibility as an AIMMS Client? Provide AIMMS with detailed information about your set up by responding to a questionnaire prepared by AIMMS. The question will enable us to better understand your current environment. Prepare your servers for migration by backing up the requiring data, having up to date SSL certificate, taking Screenshots of your environment and more as specified on the migration documentation which will be shared. Migrating your windows servers to the newer versions.9. What is AIMMS responsibility?Provide the client with AIMMS PRO Migration questionnaire. Provide the client with AMMS PRO Migration plan/instructions. Provide technical assistance to the client when issues arise because of migration. 10. What is the cutoff date for the migration.We are hoping to see all our clients migrate by November 15, 2023. We however advise that you start the migration process early. 

Related products:AIMMS PRO and Cloud Platform

About the 3rd 'wave' in AIMMS data management technology

 A collection of new technologies much improves how you can manage, import and export data in, into and from AIMMS. This matters because it:can improve end-user experience reduces the effort to integrate with external data systems allows leverage of emerging corporate data repositories Therefore I invite you to learn about these new technologies and explore their relevance for your job. You can read a bit more in this update.  Without data there is no optimization. Without data AIMMS models cannot do their magic. Without data management tooling AIMMS models will not have data. For 30+ years we have been developing data management features into our products. First we focused on files and file storage, starting with files on your local computer. Later on centrally in PRO Storage, a first step in enabling multi-user data sharing. Next we added support for relational databases to manage data for AIMMS models. Many app developers adopted this method. It enabled powerful querying, improved multi-user experiences and improved data exchange with external platforms. AIMMS data management technology is now entering a 3rd 'wave’ with a return to files, a move to lower-code data exchange features and use of 3rd party Azure technology. In our eyes this 3rd wave is opening an ‘opportunity candy store’ to improve user experience, app developer productivity and data exchange with external systems. Why are we making this move?We noticed customers increasingly consolidating their data in centralized data repositories such as data lakes, often using Parquet files. We saw a growing preference for using REST API services for data exchange.  We realized the majority of AIMMS models work with what-we-call ‘immutable data sets’. A complete set of data values that is loaded/saved as one entity. For that a file is more logical container than a relational database.  Most of our customers are adopting cloud vendors such as Azure and AWS as their primary IT platforms. What is the move?A combination of technologies:Data Exchange Library, a new AIMMS library that offers low-code tools for (a) converting model identifiers into files and vice versa, to (b) generating REST Clients and REST Servers for data import and export. We are adding an Azure Data Lake Storage service to each cloud account. This enables app developers to build powerful data management solutions, for example storing and retrieving AIMMS model data for access by external systems, possibly with the growing collection of off-the-shelf connectors for Azure Data Lake Storage, including PowerBI, Databricks, Snowflake, SQL Server, etc.  A growing collection of ready-to-use connectors between AIMMS models and applications such as Snowflake and PowerBI. Features to deploy Python scripts inside your AIMMS cloud account, running in an exclusive Docker container with a choice of Python images. So why am I telling you this?I am excited to share this '3rd wave’ with you, because of all the opportunities it offers. I believe it will empower you, AIMMS app developer, to achieve more with less effort. I believe it will help you further increase your impact. And ultimately I am confident this will lead to even better decisions, our AIMMS purpose. And how about CDM?We have come to see that CDM, Collaborative Data Management, is a very powerful tool for building AIMMS applications that support concurrent data editing by multiple users. And we also realize it is a complex tool that requires considerable learning. So we recommend only to use it for that 'sweet spot'. FinallyMy intention with this update is to make more AIMMS app developers explore and adopt these important innovations, to trigger also their curiosity. I am not the right person to give you detailed explanations. Our documentation and my colleagues in User Support will take care of that.And I want you to know that these developments are also new for us. We are learning about them everyday, mostly from early adopters among our app developer community. Their feedback and the feedback from our SC Navigator colleagues is flowing back into our development work. AcknowledgementI would like to acknowledge Marcel Roelofs, our CTO, for his compelling and credible vision on this topic. Because this 3rd wave of AIMMS data management is mostly his brain-child, like so many AIMMS innovations.  

Related products:AIMMS LanguageIntegrations and Data ExchangeAIMMS PRO and Cloud Platform

Unified table-based formats in the DataExchange Library

To make life easier for app developers we unified the mapping for reading from and writing to table-based formats like CSV, Excel and Parquet files in DEX 2.1.2.1.Each file type had their own mapping elements like ExcelSheetMapping and CSVColumnMapping etc. Now they all use TableMapping, RowMapping and ColumnMapping. Only the root nodes differ to specify the file type. Why did we do this?To make life easier for app developers.ExcelFor Excel mapping the generic TableMapping can be used instead of ExcelSheetMapping. If an existing mapping with ExcelSheetMapping is read, DEX will interpret this automatically as a TableMapping.CSV and ParquetThe mapping for CSV and Parquet can now map multiple files in a folder using TableMapping. The names of the files follow from the name or name-binds-to attributes, just like sheet names would when using an ExcelSheetMapping. The first argument for a call to WriteToFile or ReadFromFile must be a name of a folder and not a file name.It is still allowed to have a CSV or Parquet mapping without a TableMapping (such that the file name cannot be derived from the attributes). The first argument for a call to WriteToFile or ReadFromFile must be a file name and not a folder. Note that this corresponds to the existing behavior so existing applications do not have to change anything.SQLiteSQLite is the only supported database that is also a file format. If a database mapping is used in combination with WriteToFile or ReadFromFile, DEX will automatically assume that the first argument represents the file name for SQLite.Documentationhttps://documentation.aimms.com/dataexchange/mapping.html

Related products:Integrations and Data Exchange

Azure Data Lake Storage Gen2 will soon be added to each cloud account

We are in the middle of adding the Azure Data Lake Storage Gen2 service to each customer account in the AIMMS Cloud Platform, expecting to roll this out in August 2023. I am giving this heads-up so that you can bear this in mind when working on your projects.Why are we doing this?It supports the move to Parquet files that we see with an increasing number of customers. For many use cases it is superior, including faster, to using a relational database, in particular when you are working with so-called immutable data sets in your AIMMS apps.  It opens a wide range of integration options, including support for REST services.How will this impact you?No need to do anything: your apps and optional MySQL application database will continue to function as they are today.  The MySQL service and the PRO storage will remain available. This is an extra option to manage your data. This will ease the integration with other systems to import and export data to and from your AIMMS environment.Some more details on the 'what’Azure Data Lake Storage easily connects to Databricks, Snowflake, Azure Data Factory, relational databases, PowerBI, etcetera.  Our Data Exchange Library contains a growing number of functions to make it very easy for app developers to connect their model to Azure Data Lake Storage Gen2. Check out the release notes and documentation updates for the latest functions.  We will convert SC Navigator from using the MySQL database to Azure Data Lake Storage Gen2. No need for customers to do anything there.  Contact our User Support team if you are curious about the potential of this new service for your applications.Please share your feedback on this stepWe are taking this step because of what we saw at some of our customers and we are keen to hear what you think. So please let us know.  

Related products:AIMMS LanguageIntegrations and Data ExchangeAIMMS PRO and Cloud Platform

Product Update - WebUI features in AIMMS 4.96

Dear Community, We want to take a moment to remind you about the latest enhancements introduced in the most recent AIMMS 4.96.1 version, which you may already be familiar with. Here's a quick recap:The AIMMS 4.96.1 version, released in June 2023, included the following features:Current Widget Named View Model ConfigurableWe have extended the functionality of the Widget Named View feature, which was introduced in AIMMS 4.95. Now, you can specify the Current View using an element parameter in the model. This enhancement enables app developers to dynamically adjust the view presented to end users based on their interactions with the app. For more detailed information, please refer to the documentation.Upload/Download via Widget and Item ActionsWhile the existing Upload and Download widgets are incredibly useful, they occupy a certain amount of space on your page. Additionally, there are situations where you might want to integrate upload or download actions more closely with specific widgets in your WebUI App. To address this, we have extended the functionality of Widget Actions and Item Actions features to include the capability to upload or download a file. Further details can be found in the documentation.Procedures With Optional Arguments in WebUIPreviously, it was only possible to call procedures from WebUI buttons that did not have any arguments. This limitation existed because there was no way to specify argument values to pass. However, we have now enabled the calling of procedures with only optional arguments from WebUI buttons as well. When invoked, the default argument values will be utilized. We sincerely hope that these features enhance your applications and contribute to an even better user experience.We encourage you to share your feedback and suggestions in the comments. Thanks.Team WebUI.

Related products:WebUI

Product Update - Expected WebUI features in AIMMS 4.95

Dear Community,We are excited to share about the additional value that we are bringing to AIMMS WebUI by enhancing its features.The AIMMS 4.95.1 version released today includes these features, here is an overview of them: Widget Named Views: We've understood that it is more efficient for app developers to provide end users with a widget and a variety of predefined views for it rather than having many instances of the same widget on a page for different data representations. With this Widget Named Views feature, the app developers can create and offer different views of a widget. The app developer can specify the view that an end user sees on the widget when they first load the page. For example, with this feature you could offer one view of your widget with one particular pivoting and another view of the widget with a different pivoting. The widget could be made available in yet another view as a different widget type. When one or more named views are created for a widget, a new button is made available on the widget’s header section. When you click on it, a list of the various named views made for this widget appears, in the order in which the views were arranged. Users can select any of the views from the list, and the corresponding widget configuration will load.Widget Named ViewsWebUI RefreshAllWidgets: The WebUI library has been extended with two new procedures RefreshAllWidgets and UseTransparentVeil. This webui::RefreshAllWidgets procedure can be called to force all widgets in your WebUI to be updated. Normally, WebUI widgets are updated only after an AIMMS procedure has been fully executed. In case of long(er) running procedures, you may want to provide your user with up-to-date info in any of your widgets before finishing the procedure already. In such cases, a call to webui::RefreshAllWidgets  does exactly that. The veil that is applied to your WebUI page if the AIMMS session is in a "working/busy" state will be transparent if you use the webui::UseTransparentVeil procedure. Workflow improvements: We improved the UI behaviour of the Workflow panel after listening to your feedback. Earlier, while being on a child step (sub step) you could not collapse its parent step. This has been improved in a way that while being on a child step you can fold its parent step. Under such a parent step a blue bar is made visible (see the pictures below). You may see the tooltip for the current step by hovering your cursor over this blue bar. When clicked, the parent step unfolds to reveal the currently selected child step again.Workflow PanelCSS Theming – Incorporated missing CSS configurations: From AIMMS 4.85 version we have been supporting WebUI Theming. The Theming options were not yet considered 'complete' because despite the large number of custom CSS properties available, there were several elements not subject to any theming or only pretty coarse theming was achieved at the best, leaving you with the need to add application specific stylesheets like before. With the help of customer feedback and by going through virtually all components, we have added a whole range of additional CSS properties and ensured that they are applied in all logical locations. Please have a look at our updated documentation page and the most recent base theme file to see how much better Theming should now be able to "reach" every component of a WebUI application.  Supporting custom tooltips for Table Title Headers and Scalar Widgets: Although it is already possible to customise Identifier names displayed on Table, Scalar, and other widgets using webui::IdentifierElementText. On Table and Scalar widgets, webui::IdentifierTooltip  support for custom tooltips on hover of Identifier names was not completely supported. We are now expanding the above mentioned support. We hope that these features add value to your application and improve the user experience even further. Please leave your feedback and suggestions in the comments. Thanks.Team WebUI.

Related products:WebUI

AIMMS Version Administration on Cloud Platform in version 2.48

We have made the change to provide you with every AIMMS major feature release automatically and will also guarantee that you will always work on the most recent hotfix on that version, with all the benefits of bugfixes. This is how it will work:1. You will not need to activate AIMMS versions anymore. When you publish an app, you will see all AIMMS major releases available. Your list of options will decrease significantly since you will not need to check for hotfix versions or check if there is a newer version available. We take care of it!2. Whenever you run an app, it will select the latest hotfix of the selected AIMMS major release. This will guarantee you get bugfixes without re-publishing the apps. For example, when you have published an app with AIMMS 4.88 and then when you run it, it will select the latest hotfix from 4.88, so in this case, it will run on 4.88.6, even if this hotfix was not available during publishing. We will never change the feature release association.3. This change will directly impacts the speed in which our servers can scale up, since it simplifies AIMMS versions that need to be available to start the session. You may see job queues being processed faster from this.4. This does not impact your apps. They will always continue to work with the selected feature release and already benefit from any hotfixes available. You do not need to change anything. If you have any questions please let us know on support@aimms.com

Related products:AIMMS PRO and Cloud Platform

Database support in the DataExchange library

In DEX 2.1.0.1 we included support for reading from and writing to databases, similar to the way the DEX library supports data exchange with CSV, Excel and Parquet files. The library supports the SQLite, MySQL, PostgreSQL and SQLServer databases. Generating application databasesBased on a DEX mapping, the library is capable of generating the database tables described in the mapping on-the-fly.The generated database schema can optionally be extended with tables to hold the elements for all root sets in your data. In that case, the tuples for multi-dimensional data tables refer to these root set tables via foreign keys, for additional data integrity and performance.In addition, every table in the generated database can be extended to hold multiple versions of the data, e.g. to store the input data and results for multiple scenarios.With the existing functionality in DEX to auto-generate mappings for a single table, or entire datasets consisting of multiple tables, solely based on identifier annotations, this offers app developers an easy way to generate a fully functional and well-performing application database structure for any AIMMS app that is capable of storing application data for multiple scenarios. Comparison to existing database support in AIMMSThe existing support for reading from and writing to databases in AIMMS was primarily aimed to allow app developers to work with existing, external, databases, with a database schema outside the control of the app developer. It supports modes to read slices of the data in such tables, or to insert, update or overwrite data in the database tables, often leading to performance issues because of peculiarities in the underlying schema that may influence the SQL statements we generate and/or the complexity of the underlying SQL statements and mechanisms we employ to ensure data integrity.In contrast, the database support in the DEX library is much more opinionated. It takes control to create a database that we consider to be a useful and well-performing application database structure for most AIMMS apps. It closely fits with the way AIMMS organizes its multi-dimensional data, with support for storing multiple versions of that data.The DEX library only supports inserting a new version of the data into a database table. Such a version can act as a snapshot of the application data to exchange with external applications, or can be the result of a specific import of data from an external application.We strongly believe in considering a version of the data stored in the application database to be immutable. This makes computations reproducible, and allows to reliably compare one version of the data to another. As a consequence we offer no functions to update, or extend, an existing version of the data in a table, but rather have you store a new version of the data.Comparison to CDMMany customers  have used CDM as a means to automatically create an application database around an AIMMS app, and found out that importing multiple versions of extensive input data from external sources into a CDM database may eventually lead to performance problems. This is because CDM was never intended as a means of exchanging data with external applications, or even to store very large datasets computed by an AIMMS application. The main design goal of CDM was to add multi-user support to interactive AIMMS apps, allowing multiple users working in separate AIMMS sessions to make simultaneous changes to the shared data in the app, while still allowing them to run scenarios and evaluate their usability before sharing such changes with the other users. As data in a CDM database may change continuously, it is hardly usable to provide a consistent data set for exchange with an external application, as its contents is effectively a moving target.DEX database support is complementary to CDM, explicitly aiming at exchanging snapshots of data either imported from external systems or intended for external applications. Because of the intended immutability of versions of the data in DEX-generated databases, it provides perfect reproducibility.AlternativesWe emphasize that a DEX-generated application database is certainly not the only way to accomplish a storage scheme capable of storing and exchanging multiple versions of the data relevant to an AIMMS app. An equally valid, or in certain scenarios maybe even preferable, approach may be to store a scenario, or an external dataset to import, as a collection of DEX- or externally generated Parquet or CSV files in a single location, e.g. folder on a local or shared disk, an AWS S3 bucket, or a container in Azure Blob storage.The database support in DEX just offers you more options, allowing you to choose the data storage and exchange mechanism of your preference.

Related products:Integrations and Data Exchange

Product Update - Expected WebUI features in AIMMS 4.93

Dear Community, I am happy to share the exciting work we have been developing for WebUI. Further Workflow improvements: In the most recent AIMMS 4.92 release, Workflow support for sublevels and enhanced UI designs were added. We improved it further in response to the following two requests: Accessibility to a page set up as an inactive/hidden Workflow step: We acknowledge the input that it can be difficult to land on a page that is set up as a Workflow step with an Inactive/Hidden state because you are constantly redirected elsewhere. Now, when you access such a page using the Application Manager (accessible only to an App developer), you actually land on the intended page without being redirected.Access page set up for multiple Workflows: The Workflow feature was flexible enough to allow for the configuration of a page as a step in multiple Workflows. However, when you had clicked on such a Workflow step, you would have been taken to the first Workflow that had this page configured. Now we addressed this, such that clicking on a Workflow step like this will keep you in the current Workflow that is being displayed. Other WebUI enhancements:  The AIMMS SCNav team made the following two requests, which we incorporated:Support for extra Sidepanel tabs on a page: We increased the number of Sidepanels that may be set up on a page from the earlier maximum of 6 to 10 now. The visual representation of the Sidepanel tabs remains the same on a page with Sidepanels configured up to a count of 6. The Sidepanel Tabs evenly divide the available vertical space on a page with a Sidepanel count of 7 to 10.   ​​​​​​Controlling Data Case Comparison on a Widget: We are aware that when Data Case Comparison is applied on the WebUI, on the widgets that are used to load configurations, datasets, scenarios, etc. it does not make sense to view data for multiple cases. Earlier, App developers had no mechanism to control whether to apply data case comparison to a widget. We have added an option to the Table and every Chart widget, so that the App developer can now have control. The widget still has the Case comparison feature enabled by default. A literal toggle or an AIMMS identifier can be used by an App developer to override and manage it.Case Comparison Option on Table Widget We hope that these features add value to your application and improve the user experience even further. Please leave your feedback and suggestions in the comments. Thanks.Team WebUI.

Related products:WebUI

Product Update - Expected WebUI features in AIMMS 4.92

Dear Community, I'm happy to share the exciting work we've been developing for WebUI. Improved user experience on the Table widget: To complement the recent Advanced Table Editing feature, we now provide: Improved navigation experience: Although arrow keys were already available for navigating to adjacent cells on the Table widget. We now support the following keys to provide a simple and natural Tabular data navigation experience. You can select a cell on the table widget and then apply the following keys.         *   The “Home” key moves the focus to the leftmost cell in the current row.         *   You can get focus to the first cell by pressing "Ctrl” + "Home" keys.         *   You can get focus to the last cell by pressing "Ctrl" + "End" keys.         *   By pressing "Ctrl" + "Left Arrow" keys, you can get focus onto the row’s leftmost cell.          *   By pressing "Ctrl" + "Right Arrow" keys, you can get focus onto the row’s rightmost cell.         *   By pressing "Ctrl" + "Up Arrow" keys, you can get focus onto the column’s topmost cell.          *   By pressing "Ctrl" + "Down Arrow" keys, you can get focus onto the column’s bottommost cell.      Improved block selection experience: To provide a simple and natural block selection experience for tabular data. The following keys are now supported by table widget.         *   Block selection using Shift + Arrow keys combination.         *   Block or scattered cells selection using Shift key + Mouse clicks combination.Workflow enhancements: Considering the AIMMS SCNav team's suggestions and customer feedback regarding the present Workflow (v1) feature. We expanded it to support sublevels and improved the UI designs. The Workflow specification index webui:: indexWorkflowPageSpec is extended with parentPageId property. Now, for any Workflow step, one can specify the PageId of its Parent Step as the parentPageId, which is subsequently displayed as a sub-level on the Workflow panel. We support upto 1 level of sub-levels. The Parent step's unfolding and folding state can also be persisted, making it available again when the WebUI is accessed later. Refer the documentation for more details.Workflow Demo We hope these features bring value to your application and further enhance your user experience. Please leave your feedback and suggestions in the comments. Thanks.Team WebUI.

Related products:WebUI

'Customer-specific Azure tenant', for augmenting your AIMMS apps with all kinds of Azure functions

Seeing the potential of the ever-expanding collection of Azure services for augmenting AIMMS apps, we created a 'low-friction’ way for AIMMS app developers to connect those services to AIMMS apps running on our cloud platform. We call it ‘customer-specific Azure tenant’ (suggestions for a better namen?). What is it?An Azure tenant (jargon for a kind of account or environment inside Azure), created specifically for one customer. In which almost any Azure service can be deployed for that customer. It is securely connected to (only) that customer's AIMMS apps, enabling data exchange data and action triggering between that tenant and the apps.  We deliver this as a managed service, billed separately. This diagram may help, it includes some extra technical details.Who is it for?To use this advanced feature you require knowledge of Azure fundamentals and of the Azure services you intend to explore or use. You will also need to be familiar with our Data Exchange Library (DEX) as you will need to configure that for the data exchange and other REST calls. What can I do with this?There are many ways to use this new feature. Some examples:Data storage, transfer and manipulation services such as Azure Data Share, Azure Data Factory, Azure Synapse, Azure Data Lake Storage, Azure Data Bricks, Azure Stream Analytics, and all kinds of databases AI/ML services such as Azure Machine Learning, Azure AI and Azure Cognitive Services Compute services such as Azure Functions, AKS (Kubernetes) or regular VMs. …Key featuresAlmost any Azure service can be deployed in this tenant.  Provided as managed service: monitoring, maintenance, back-up and restore and help-desk. Intercept Azure specialists can consult on service selection, architecture design, security design, etcetera. Connected with the AIMMS applications securely via the Azure Backbone, using a selection of authorization methods. Azure Key Vault and Service Principal present in the customer-specific Azure tenant, for example for authorization schemes.How is it charged?We are still exploring the charging models for this. We are likely to use custom charging models and pricing, because applications will vary widely. But expect to pay for the managed service and for the Azure consumption. Interested?Because this feature has so many different potential applications, it is probably best to contact us at support@aimms.com for arranging an exploratory chat with our experts on this topic.

Related products:Integrations and Data ExchangeAIMMS PRO and Cloud Platform

Didn't find what you were looking for? Try searching on our documentation pages:

AIMMS Developer & PRO | AIMMS How-To | AIMMS SC Navigator