FlexSim 2017 Update 1 is available.
If you have bug reports or other feedback on the software, please email [email protected] or create a new idea in the Development space.
Release Notes
- Changed FlexSim to store strings using UTF-8 encoding.
- Added support for Oculus Touch controllers.
- Implemented OpenVR for HTC Vive compatibility.
- Improved the shadow frustum calculation in VR so that shadows look better.
- Added a global preference for changing the resolution of the shadow map.
- Added support for nested queries in SQL.
- Added ROW_NUMBER as a SQL keyword.
- Implemented F2 and Esc functionality in tables.
- Updated the table view and labels tab to be more robust with different datatypes.
- Added Table(name) method for referencing Global Tables.
- Added more FlexScript classes, including List, AGV, Conveyor, and TrackedVariable.
- Added more properties and methods to existing FlexScript classes, including Object stats and additional string methods.
- Improved scientific notation for literals in FlexScript.
- Added a start value to tracked variables.
- All tracked variables in the model now reset on model reset.
- Changed itemtype references to referencing an item's type label instead.
- Improved the Person flowitem's 3D shape.
- Added repeating events to time tables.
- Added a short description field to user commands.
- Made the gantt charts and time charts scroll with a fixed time window.
- Removed the global table Clear on Reset checkbox and replaced it with a reset trigger.
- Added new visualization options for the Rack.
- Added duplicate buttons to the Excel Interface window.
- Added a duplicate option to the Toolbox's context menu.
- Taskbar now shows experimenter/optimizer status and runtime based upon stop time.
- Disabled deleting objects while the model is running.
- Fixed an issue with the undo history when pasting over nodes with pointer data.
- Fixed issues with using the ternary operator after properties.
- Fixed an issue with writing to Access databases with read-only fields.
- Included fixes listed in 17.0.4.
Backwards Compatibility Note: the following changes may slightly change the way updated models behave.
- Removed the FlexSim WebServer application from the default installation and developed a new WebServer application using Node.js that streams the 3D view much faster. The new WebServer can be downloaded through FlexSim's Online Content.
- Existing models will continue to work with itemtype, but new models should be built using a type label instead of the itemtype attribute and commands.
Process Flow
- Added an Assign Released Resource(s) To field on the Release Resource activity.
- Added functionality to allow you to Ctrl+Drag activities in an activity block.
- Added a right-click menu option and Alt+Click to open the Token View.
- Added a sampler to the assign labels Label Name field so you can sample other activities or tokens to get label names.
- Added a right-click menu option to open multiple views of a Process Flow.
- Added an Assign To property to the Create Tokens activity.
- Added a Make Array label aggregation type to the Batch.
- Added Center in View buttons for fields with pointer data.
- Added a name property to the Token FlexScript class.
- Fixed a bug with duplicating Process Flows using the Toolbox.
Backwards Compatibility Note: the following changes may slightly change the way updated models behave.
- Updated the Pull From List activity so it does not assign a null label when nothing was pulled or the token was released early (manually). Previously, if you used a Max Wait Timer or Max Idle Timer (or some other mechanism) to release a token from a Pull from List prematurely, the label specified in the Assign To field would be created with a value of NULL. Now, the label will not be created. This may break other models that are checking to see if the label value exists. For example, saying objectexists(token.pulled) will throw an exception if the pulled label is never created. This can be easily remedied by changing the code to objectexists(token.pulled?). The ? will cause the value returned to be nullvar when the pulled label does not exist.
- Universal Edit fields are now more strict when accessing labels on a token. Previously, typing token.labelThatDoesNotExist would happily return NULL and move on. Now the Universal Edit will throw an exception if the label doesn't exist. This does not include Universal Edit fields that assert labels, for example the Assign To fields.