FactoryPMI New Version Announcements

Hello everyone,

As a convenience, we’ll post to this thread when a new version FactoryPMI is released.

Click on “Watch this topic for replies” at the bottom of this page to be notified by e-mail when a new version is available.

NOTE - you’ll need to look at the last post in this thread for the latest release

Dec 12, 2007 - FactoryPMI 3.1.1 released.

See full changelog here: inductiveautomation.com/supp … FactoryPMI

Release Notes

Java 6 + SSL
The main features of this release are SSL support and Java 6 support. Ironically, Java 6 (as of “Update 3”) has a bug in its support for SSL. You can prevent Java 6 from being used for Clients and Designers by setting the Gateway System Settings property Allowed JREs to “1.5+”. Sun tells us that this will be fixed in Java 6 update 4, to be released later in December.

ActiveX Plugin
This release also makes available a new free plugin, the ActiveX Plugin. This plugin adds new components to embed common Windows controls into FactoryPMI windows, such as Adobe Acrobat Reader, Internet Explorer, etc. You can find this plugin here: inductiveautomation.com/products/plugins/

Note that Java and ActiveX act a little strange together. All ActiveX components draw “on top of” all normal Java components. This means dropdown menus, designer drag handles, everything. This is a little weird, especially in the Designer. This is a limitation of the underlying technology, and as such, this plugin is provided free and “as is”.

Dec 19, 2007 - FactoryPMI 3.1.2 released.

Release Notes

New Active Directory/Internal Hybrid Authentication Profile Type
Check out the new authentication profile type - it lets you use active directory for user authentication, but you can manager the roles
internally within the FactoryPMI Gateway’s Configuration pages. Very convenient, and IT will appreciate not having to add all of the very domain-specific security roles used by your FactoryPMI project.

Changelog Entry

Version 3.1.2 build 1594 (Release Date 12/18/2007)[ul][li] New: Active Directory/Internal Hybrid authentication source allows active directory user management,
but internally managed roles.[/li]
[li] New: Buttons now have a “Focusable” property, which affects if the button can recieve input focus[/li]
[li] Improved: Gateway log files no longer get filled up with “Faulted” messages if there is a faulted datasource[/li]
[li] Tweak: A tag’s custom permissions table is visible even if its Access Rights aren’t set to “Custom”[/li]
[li] Tweak: Subtle change to tag editing to avoid excessive focus bounce.[/li]
[li] Fixed: A problem that caused tags to be deleted on import in certain circumstances.[/li]
[li] Fixed: fpmi.security.logout() can now be safely called from the Startup Script[/li]
[li] Fixed: Expression-based Client Tags didn’t evaluate correctly in the Designer in some circumstances[/li]
[li] Fixed: fpmi.nav.swapTo() acted strangely if you tried to open a window that you didn’t have access to.[/li]
[li] Fixed: The installer wasn’t adding the start menu under All Users, rather it was using the current user[/li][/ul]
See full changelog here: inductiveautomation.com/supp … FactoryPMI

Jan 3, 2008 - FactoryPMI 3.1.3 released.

Changelog Entry

Version 3.1.3 build 1621 (Release Date 12/28/2007)[ul][li] New: Button and Field border types have been added.[/li]
[li] New: The Rectangle component now has a Rounding Radius property.[/li]
[li] New: Level indicator component now has an Orientation property, allowing it to “grow” in all four directions[/li]
[li] Improved: Made some UTH changes to the layout serialization mechanism for improved serialization performance.[/li]
[li] Improved: Drastically improved painting performance for the Pipe, Pipe Joint, and gradient Rectangle components.[/li]
[li] Improved: The property binding UI now carries selections for properties and tags between the various binding types
for a more streamlined workflow.[/li]
[li] Fixed: Z-order was not always respected when animated components overlapped.[/li]
[li] Fixed: A Circle component’s property name change had introduced a backwards incompatability if that property was bound.[/li]
[li] Fixed: Meter and Thermometer components wouldn’t allow lower bounds greater than 100[/li]
[li] Fixed: The List component’s foreground, background, and font colors didn’t work correctly.[/li]
[li] Fixed: Minor bug in SQLTags tag editing UI involving the “On Any Change” checkbox for analog alarm states[/li][/ul]
See full changelog here: inductiveautomation.com/supp … FactoryPMI

Jan 18, 2008 - FactoryPMI 3.1.4 released.

Release Notes

Mandatory upgrade for all SQLTags users
This release contains a crucial bug fix that affects all users of SQLTags. Please upgrade to FactoryPMI 3.1.4 if you’re using SQLTags.

Changelog Entry

Version 3.1.4 build 1661 (Release Date 1/18/2008)[ul][li] New: New axis configuration properties for the Bar Chart[/li]
[li] New: /setup/Logs will now show today’s FactoryPMI Gateway log[/li]
[li] New: New clustering diagnostic programs included[/li]
[li] New: New optional method to fpmi.net.openURL() uses existing applet browser window if running in applet mode[/li]
[li] Changed: FactoryPMI now comes bundled with JRE 6.0_u4[/li]
[li] Improved: Upgraded internal clustering library[/li]
[li] Improved: You can now make meta/value edits to SQLTags in Gateway Off/RO modes in the Designer[/li]
[li] Improved: Multi-tag editing for tag alarm states now automatically detects if you have made any state changes.[/li]
[li] Improved: Errors encountered during SQLTag CSV import now report line numbers[/li]
[li] Improved: Changed the SQLTag dirty tag cleanup duty cycle to improved performance[/li]
[li] Fixed: Major bug that could cause SQLTags to fail to load some tags from the database[/li]
[li] Fixed: Implemented workaround for Java 6 bug that caused modal print dialog to show behind the application
when running in full screen mode.[/li]
[li] Fixed: Bug caused my MS Sql Server JDBC drivers that caused DateTime-valued SQLTags to fail[/li]
[li] Fixed: Bug that could cause retargeting to different projects on the same server to fail[/li]
[li] Fixed: Bug that caused retargetting credentials to be lost after a call to switchUser[/li]
[li] Fixed: A bug that caused an uncaught exception when looking at a DB Browse binding pointed toward a currently
faulted datasource.[/li]
[li] Fixed: New uncaught exception handler catches all uncaught exceptions, the old one only caught the first exception.[/li][/ul]
See full changelog here: inductiveautomation.com/supp … FactoryPMI

Feb 14, 2008 - FactoryPMI 3.1.5 released.

Release Notes

Mandatory upgrade for all SQLTags users
This release contains a crucial bug fix that affects all users of SQLTags.
Please upgrade to FactoryPMI 3.1.5 if you’re using SQLTags.

Linux Version Now Available
As of FactoryPMI 3.1.5, there is now a linux build available. You’ll find the tarball on the downloads page. The README file inside the download has the necessary instructions for installation.

Chart upgrades
The classic chart and the pie chart have been upgraded. The classic chart now supports Category charts, which means that true Pareto charts are now possible. Both the classic chart and the pie charts now support Selectability, meaning the user can select a datapoint / bar / pie wedge. This is useful for creating drill-down charts.

Changelog Entry

Version 3.1.5 build 1726 (Release Date 2/13/2008)[ul][li] New: Linux support. Download Linux tarball from inductiveautomation.com/downloads[/li]
[li] New: Python’s ftplib library is now available from the scripting environment[/li]
[li] New: Classic Chart now has “Category” mode in addition to “XY” mode, enabling Pareto charts.[/li]
[li] New: Classic Chart and Pie Chart components now have “Selectable” property, which enables datapoint/bar/wedge
selection, enabling drill-down charts.[/li]
[li] New: Ring mode on the Pie Chart component.[/li]
[li] New: Added new Compass component.[/li]
[li] Change: “Standalone Mode” (introduced in 3.1.0) is now “Cluster Enabled” setting, accessable from the
cluster settings page. If clustering is disabled (the default), and bind-address auto-detection is on (also
the default) the Gateway will bind to 127.0.0.1. This helps with installations on laptops with strange
wireless cards.[/li]
[li] Change: SQLTags now scans the database for duplicate tags on startup and removes them.[/li]
[li] Improved: Dates can now be directly compared with <, >, <=, and >= operators in the expression language[/li]
[li] Improved: Compile errors are now shown and can be checked in global module editor.[/li]
[li] Tweaked: Tag meta properties (not value) can be written to from the Designer for read-only tags.[/li]
[li] Fixed: Major bug in SQLTags that caused a deadlock when deleting certain tags from the designer.[/li]
[li] Fixed: Major bug in SQLTags that caused inability to read/write to tags from scripts if those tags
were not subscribed.[/li]
[li] Fixed: Duplicate name problem when cutting and pasting multiple tags.[/li]
[li] Fixed: Bug that prevented printing from the designer[/li]
[li] Fixed: Bug that caused an uncaught exception if you removed the “Data” dataset from the classic chart[/li]
[li] Fixed: Bug that caused pie charts to skip the first datapoint when the extract order was set to “By Row”[/li]
[li] Fixed: Bug that caused the Table to not serialize an empty border correctly.[/li]
[li] Fixed: Bug that caused an exception on the Easy Chart when two subplots shared the same Y axis.[/li][/ul]
See full changelog here: inductiveautomation.com/supp … FactoryPMI

Jan 28, 2008 - FactoryPMI 3.1.6 released.

Changelog Entry

Version 3.1.6 build 1767 (Release Date 2/28/2008)[ul][li] New: “Autoadjust Dates for Timezone” feature ensures consistent datetime query results
even when querying across timezones.[/li]
[li] New: The List component now has selected foreground/background/border properties.[/li]
[li] New: fpmi.system.getSystemFlags() function and corresponding System tag to inspect various
flags about the running system.[/li]
[li] New: More functions to inspect/control screen locking in fpmi.security.[/li]
[li] New: dateDiff() expression function for getting the difference in any unit between 2 dates.[/li]
[li] New: Ability to alter the connect timeout via scripting.[/li]
[li] Improved: Window context menu now operates on multiple window selection.[/li]
[li] Tweaked: Save & Exit skips the re-opening of windows step.[/li]
[li] Fixed: Bug that caused fpmi.nav.swapTo to not pass parameters when swapping to the current window[/li]
[li] Fixed: Bug that caused the inactivitySeconds call to be artificially high on first login.[/li]
[li] Fixed: Bug that caused browsing tables in the Designer to fail if table names contained an ampersand.[/li]
[li] Fixed: Minor bug deserializing a Compass component.[/li]
[li] Fixed: Misinformation in description wording for the “Max Idle Connections” parameter for Datasources.[/li][/ul]
See full changelog here: inductiveautomation.com/supp … FactoryPMI

May 21, 2008 - FactoryPMI 3.2.0 released.

Release Notes

New Window Serialization Format - [color=red]Please Read[/color]
FactoryPMI 3.2 uses a new format for serializing the windows inside a project. This new format makes opening and saving windows on average 2.5x faster. Users who upgrade from a previous version to 3.2 will at first notice a slowdown opening their windows. This is because existing windows must be re-serialized in the FactoryPMI Designer before they can benefit from the new format. To quickly re-serialize all of your windows, open your project in the Designer and navigate to Tools > Advanced > Reserialize Windows, and then save your project.

TCP-based clustering
Due to the lack of consistent support for multicast UDP traffic on industrial networks, FactoryPMI’s clustering feature now uses TCP traffic by default. The result is more reliable clustering on many networks.

New Components
Two new components, the Paintable Canvas and Sound Player make their debut is FactoryPMI 3.2. These components can be found under the “Misc” tab on the component palette. The Paintable Canvas is an advanced component that can be programatically drawn using scripting, inspired by this post. The sound player component enables simple audio notification without any scripting, and in a cross-platform manner. Looping and triggering modes make it a snap to configure.

Changelog Entry

Version 3.2.0 build 1911 (Release Date 5/16/2008)[ul]
[li] New: Better serialization / deserialization makes window saving/loading 2.5x faster.[/li]
[li] New: TCP based clustering now available[/li]
[li] New: Paintable Canvas component enables custom vector-drawn components[/li]
[li] New: Sound Player component makes integrating audio alerts into FactoryPMI windows easy.[/li]
[li] New: Better window management including thumbnail previews on mouseover in Designer.[/li]
[li] New: EditCount system tag lets applications monitor their modification count for better version auditing.[/li]
[li] New: Disable Overlay feature in Designer.[/li]
[li] New: Added fillShape, shapeOffset properties to the standard XY renderer on the classic chart.[/li]
[li] New: Gateway console shows recent log entries, controls log levels, and shows threading information[/li]
[li] Improved: Clustering stack re-tooled to not touch underlying network resources when clustering
is off, improving experience especially on laptops.[/li]
[li] Improved: added keyboard shortcuts for customizers[/li]
[li] Improved: EasyChart foreground now affects the X-axis[/li]
[li] Improved: Added value/tick number formatting to the meter component.[/li]
[li] Improved: Added clearSelection() function to the classic chart.[/li]
[li] Improved: Loosened the character restrictions for internal and AD hybrid authentication profiles
to be more compatible with active directory usernames.[/li]
[li] Fixed: Authentication roles with ampersands in them are now allowed.[/li]
[li] Fixed: Potential NPE in error reporting GUI[/li]
[li] Fixed: Potential NPE setting a button’s background color to “null”[/li]
[li] Fixed: event.source.parent.components returned objects that were unable to automatically
reference dynamic properties[/li]
[li] Fixed: Tag editor window couldn’t apply changes after the apply of a name change.[/li][/ul]
See full changelog here: inductiveautomation.com/supp … FactoryPMI

May 27, 2008 - FactoryPMI 3.2.1 released.

Changelog Entry

Version 3.2.1 build 1924 (Release Date 5/27/2008)[ul]
[li] Fixed: Security flaw in Active Directory/Internal Hybrid authentication profile type. Mandatory upgrade for any users of this authentication profile type.[/li]
[li] Fixed: Custom palette items were broken in 3.2.0.[/li][/ul]

See full changelog here: inductiveautomation.com/supp … FactoryPMI

June 24, 2008 - FactoryPMI 3.2.2 released.

Changelog Entry

Version 3.2.2 build 1960 (Release Date 6/24/2008)[ul]
[li] New: Added hyperlink scripting event to the document viewer.[/li]
[li] Improved: Added SQLTags Re-Read window as a parameter for datasources to help compatability with PostgreSQL.[/li]
[li] Fixed: Major bug that caused continous NPE in the Designer when editing expressions using the tag(string) function.[/li]
[li] Fixed: Problem with hardware activation keys caused when two or more pieces of software tried to use the key at the same time.[/li]
[li] Fixed: Serialization problem caused when Meter components had their overall lower bound set to 100.0[/li]
[li] Fixed: bug that caused backups from FactoryPMI 1.5.5 not restore out of the box [/li]
[li] Fixed: Sound component now ignores error caused when there is no sound card installed[/li]
[li] Fixed: Python’s ftplib now works out of the box[/li]
[li] Fixed: Setting the date popup selector’s date to null is now acceptable[/li]
[li] Fixed: Bug that caused Timer component to not run after being copied while inside a container until the window was re-opened.[/li][/ul]

See full changelog here: inductiveautomation.com/supp … FactoryPMI

July 23, 2008 - FactoryPMI 3.2.3 released.

Changelog Entry

Version 3.2.3 build 2002 (Release Date 7/23/2008)[ul]
[li] New: Logarithmic axes available for both Easy Chart and the classic Chart.[/li]
[li] Improved: Charts use a new optimization algorithm that is safer for data with extreme outliers.[/li]
[li] Improved: X-Trace on charts now uses locale-appropriate date formatting, and works with all renderers.[/li]
[li] Improved: Data quality can now be bound to a number to provide the quality code.[/li]
[li] Improved: System tables are now filtered from SQL Server database browsing[/li]
[li] Improved: Added groundwork for new internal logging system in the Client/Designer[/li]
[li] Improved: Table component uses more predictable date handling for the translation map feature[/li]
[li] Improved: Allowed dashes in internal authentication profile usernames.[/li]
[li] Improved: Files created by fpmi.file.createTempFile() now get delete automatically on exit.[/li]
[li] UTH: Upgraded clustering library JGroups to 2.6.3[/li]
[li] Fixed: Upgraded DBCP to version 1.2.2 to fix unable to reconnect problem in database connection pooling caused by loss of connection with certain drivers, such as jTDS[/li]
[li] Fixed: TCP peer string parsing and cluster name independence.[/li]
[li] Fixed: Clustering uses streaming state transfer to support very large states.[/li]
[li] Fixed: Potential deadlock in Gateway backup restore.[/li]
[li] Fixed: Large delay in project startup caused by 3.2.2’s change to the HASP driver logic.[/li]
[li] Fixed: Easy chart pens are now resolved using index, not name, in case the database doesn’t return the column name that the pen specified.[/li]
[li] Fixed: String property editor now abbeviates long strings, making the user to use the popup editor.[/li]
[li] Fixed: Sound Player component now stops automatically if it is looping when the window it’s on closes.[/li]
[li] Fixed: Problem with fpmi.net.sendEmail() that caused it not to recognize MIME type of attachments with uppercase filename extensions.[/li][/ul]

See full changelog here: inductiveautomation.com/supp … FactoryPMI

September 19, 2008 - FactoryPMI 3.2.4 released.

Changelog Entry

Version 3.2.4 build 2127 (Release Date 9/19/2008)[ul]
[li] New: Project publishing options (Notify vs. Push) allow more control over how updates are delivered to the clients, allowing ‘hands-off’ clients.[/li]
[li] New: Datasource failover mode (Standard vs. Sticky) provides more options for failover and replication between datasources.[/li]
[li] New: Authentication failover mode (Hard vs. Soft) allows for chaining of multiple authentication profiles to allow more flexible authentication schemes.[/li]
[li] New: Table component cell foreground/background color mapping.[/li]
[li] New: Table component has properties to affect the grid lines and their color.[/li]
[li] New: Dropdown component now has tabular dropdown view.[/li]
[li] New: Improved look for the GUI element that notifies users that a new project version is available.[/li]
[li] New: Spinner component now has number format and date format options.[/li]
[li] New: Bar Chart component now has barLabelFont, barLabelColor, barLabelOffset, and titleFont properties.[/li]
[li] New: Easy Chart and Classic Chart now have a “Selected X Value” property that exposes the selected X value for Mark and X-Trace modes.[/li]
[li] New: Easy Chart component’s “X Axis Autorange” property allows the X-Axis to follow exactly the chosen date range, not just the range for which there is valid data.[/li]
[li] Improved: Allowed scripting access to table column sort order fields.[/li]
[li] Improved: Specified port (8811) in cluster.xml for streaming state transfer for improved clustering firewall compatability.[/li]
[li] Fixed: Bug in chart optimization that could cause charts to skip the display of their last datapoint.[/li]
[li] Fixed: Bug involving serialization of component borders that had to do with focus coming out of preview mode.[/li]
[li] Fixed: Bug that could cause errors to block proper loading of the Designer if a SQLTags provider was faulted on project open if there were client tags that dependent on it.[/li]
[li] Fixed: fpmi.system.invokeAsynchronous() wasn’t asynchronous enough - it blocked on other calls to the delayed version of fpmi.system.invokeLater().[/li][/ul]

See full changelog here: inductiveautomation.com/supp … FactoryPMI

October 2, 2008 - FactoryPMI 3.2.5 released.

Changelog Entry

Version 3.2.5 build 2184 (Release Date 10/02/2008)[ul]
[li] New: escapeSQL() and escapeXML() expression functions.[/li]
[li] Improved: Activation is now checked asynchronously to avoid delays due to missing HASP dongle driver.[/li]
[li] Improved: Relaxed deserialization a bit so that non-critical errors can’t prevent a window from opening when those errors occurr during deserialization.[/li]
[li] Improved: Allowed “at sign” and backslash characters on the client login screen for improved Active Directory compatibility.[/li]
[li] Improved: Domain marker for X-Trace mode is no longer obscured when a subplot exists.[/li]
[li] Improved: Added bulk tab indent and dedent (shift-tab) to the Python/SQL/Expression code editors.[/li]
[li] Improved: Added bulk comment via CTRL-Slash(/) for Python and Expression code editors.[/li]
[li] Fixed: Bug introduced in 3.2.4 that caused clients to be unable to reconnect automatically if they were disconnected from their Gateway.[/li]
[li] Fixed: Certain types were not serializing correctly, problem manifested itself in serialization of the column selector component of the Reporting Plugin.[/li][/ul]

See full changelog here: inductiveautomation.com/supp … FactoryPMI

November 16, 2008 - FactoryPMI 3.3.0 released.

See the full release announcement here: inductiveautomation.com/news/?id=62&type=2

Changelog Entry

Version 3.3.0 build 2430 (Release Date 12/16/2008)[ul]
[li] New: Table component now supports cell editing.[/li]
[li] New: Status Chart component shows intuitive history of discrete datapoints.[/li]
[li] New: Tab Strip component makes implementing attractive window-navigation a snap.[/li]
[li] New: Dropdown now supports 3 selection modes: Strict, Lenient, and Editable[/li]
[li] New: New scripting library “fpmi.dataset” makes script-based dataset manipulation much easier.[/li]
[li] New: More tabs in the Diagnostics pane to provide better on-the-spot troubleshooting.[/li]
[li] New: Table component now stores column configuration in accessible dataset, making dynamic changes to column configuration much easier.[/li]
[li] New: Console page in the Gateway provide on-line access to the Gateway logs and adjustable loglevels.[/li]
[li] Improved: More intuitive customizer for the Multi-State Button component.[/li]
[li] Improved: Added x-axis margin property to the Easy Chart component.[/li]
[li] Improved: Bar chart has gradient highlight and drop shadow options for extra eye-candy.[/li]
[li] Improved: Component’s names are now bindable properties[/li]
[li] Improved: minor Scan class editor GUI improvements[/li]
[li] Improved: Indicator icon added to the navigation tree to show which components use the Styles property[/li]
[li] Fixed: Added startup flag to disable Direct3D rendering pipeline to resolve Java 6u10 performance issues.[/li]
[li] Fixed: SQLTags startup much faster for large tag counts.[/li]
[li] Fixed: Dataset aggregate expressions failed for datasets with more than ten thousand rows.[/li]
[li] Fixed: Bug that caused data crossover in tag binding number-to-color mappings configuration.[/li]
[li] Fixed: “fpmi.nav.swapTo” logic altered to ensure that target is always opened.[/li]
[li] Fixed: NPE setting date popup selector’s date property to null.[/li]
[li] Fixed: Edit/Duplicate function failed for components with higher-order UTF-8 characters.[/li]
[li] Fixed: Easy Chart poll rate didn’t get set in realtime mode if it was set in historical mode.[/li]
[li] Fixed: Bug in logging system that could cause an ArrayIndexOutOfBoundsException on the console page.[/li]
[li] Fixed: System/Client/System/JavaVersion tag now displays useful information for Java 6.[/li]
[li] UTH: Upgraded internal charting library.[/li][/ul]

See full changelog here: inductiveautomation.com/supp … FactoryPMI

Feb 9, 2009 - FactoryPMI 3.3.1 released.

FactoryPMI 3.3.1 contains mostly bug fixes and minor feature enhancements. The one major change is how timezones are handled. Projects now can set their base timezone to be a specific timezone, the Client host timezone, or the Gateway’s timezone (this is the default). This will make for more correct timezone handling when clients are not in the same timezone as the gateway.

Changelog Entry

Version 3.3.1 build 2549 (Release Date 2/9/2009)
[ul][li] New: Added fpmi.net.getExternalAddress() and fpmi.gui.getWindowNames() functions[/li]
[li] Improved: Major changes to how Time Zones are handled. “Auto-adjust dates for timezone” setting has been removed from the Gateway, and instead each project now has a “Default Timezone” setting, which defaults to “Gateway Timezone”. This allows for a more consistent interpretation of date information.[/li]
[li] Improved: Easy Chart component uses prepared statements for its queries so that they are cross-TimeZone compatible.[/li]
[li] Improved: fpmi.tag.getTagValue() and fpmi.tag.writeToTag() can now read and write any tag property, not just the tag’s value.[/li]
[li] Improved: Table and List component’s “enabled” property now correctly prevents the user from selecting rows.[/li]
[li] Improved: JVM utility logging now bridged to designer/client logging system.[/li]
[li] Improved: Added an optional socket timeout argument to fpmi.net.sendEmail()[/li]
[li] Tweaked: Dropdown component’s type-ahead input delay increased to 2 seconds.[/li]
[li] Fixed: Fixed problems that prevented SQLTags and database browsing to work for Oracle 10g and 11g.[/li]
[li] Fixed: Fixed NoClassDefFoundError when saving a chart as an image.[/li]
[li] Fixed: fpmi.dataset.toDataSet() is now much more tolerant of null values in its column type detection.[/li]
[li] Fixed: Classic Chart component’s y-axis did not correctly calculate an automatic range when the chart was in category mode and the dataset contained null values.[/li]
[li] Fixed: Potential ArrayIndexOutOfBounds exception querying very precise floating point information.[/li]
[li] Fixed: Minor problem importing previously exported windows that caused the windows to not initialize correcly on the first open.[/li]
[li] Fixed: NPE opening the customizer of the tab strip component if the selection was invalid[/li]
[li] Fixed: Mouse events were not properly relayed in the tab strip component.[/li]
[li] Fixed: Retarget feature’s login prompt used an overly restrictive character filter.[/li]
[li] Fixed: Dropdown component failed to properly initialize its mode for very large datasets.[/li]
[li] Fixed: Bug in fpmi.dataset.setValue() that could incorrectly cause bounds-checking errors.[/li]
[li] Fixed: Editable table did not provide the correct type (BigInteger) for numeric editing if all digits were removed before entering a value.[/li]
[li] Fixed: Editable table did not correctly align numeric editors.[/li]
[li] Fixed: Editable table feature failed to work for very large datasets.[/li]
[li] Fixed: Editable table is now safe to use with null values.[/li]
[li] Fixed: DataSets serialized empty string as null which confused the Table’s column configuration after saving a window.[/li][/ul]

See full changelog here: inductiveautomation.com/supp … FactoryPMI

April 22, 2009 - FactoryPMI 3.3.2 released.

Changelog Entry

Version 3.3.2 build 2754 (Release Date 4/22/2009)
[ul][li] New: fpmi.tag.writeToTagSynchronous() call allows synchronous tag updates.[/li]
[li] Improved: Table.setColumnAttributesDataset now uses automatic type-coersion.[/li]
[li] Improved: Table editing now overwrites/selects all when editing begins.[/li]
[li] Improved: Accessability improved on the dynamic property customizer.[/li]
[li] Improved: Various improvements to the IP Cam Viewer component to support Linksys and Mobotix cameras.[/li]
[li] Improved: Low level comm detail should improve HTTP keep-alive performance.[/li]
[li] Improved: Mouse scroll wheel support added to script editors.[/li]
[li] Improved: Easy chart axes now have a minimum auto-range size of 1.0 to prevent strange tick units on flatline data.[/li]
[li] Fixed: Bug that caused projects to be unable to launch in Applet mode.[/li]
[li] Fixed: Bug that caused an error on classic charts in category mode that had zero rows of data.[/li]
[li] Fixed: Bug that caused tabbing off the last cell of an editable table and then clicking a button caused the cell to not commit the edit.[/li]
[li] Fixed: Bug in table.setValue() that caused it to not coerce from python datatypes well.[/li]
[li] Fixed: Bug that caused the Designer’s custom palettels to not be re-created if they were lost.[/li]
[li] Fixed: Chart now draws selection highlight correctly when the chart has a border.[/li]
[li] Fixed: Easy Chart now correctly fires mouse events.[/li]
[li] Fixed: Bug that caused the module editor’s buffer to get cleared when also running the script playground.[/li]
[li] Fixed: Datasource can now support -1 for the Max Idle pooling parameter.[/li]
[li] Fixed: Minor bug in the HTML formatting of the Table’s exportHTML function.[/li]
[li] Fixed: Possible NPE when deleting a component.[/li]
[li] Fixed: Bug that caused the internal authentication profile to not perform soft failover correctly.[/li][/ul]

See full changelog here: inductiveautomation.com/supp … FactoryPMI

August 12, 2009 - FactoryPMI 3.3.3 released.

This version has a new code-signing certificate. Make sure that when you upgrade, you also upgrade all plugins to avoid a mismatching certificate issue.

Changelog Entry

Version 3.3.3 build 3269 (Release Date 8/12/2009)
[ul][li]Updated: New code-signing certificate on all jars.[/li]
[li]Improved: Classic charts that have numeric x-axes now have correct tooltips.[/li]
[li]Fixed: Javascript JRE detection now works in Internet Explorer 8, Chrome[/li]
[li]Fixed: Character encoding issue when pasting from the Windows clipboard.[/li]
[li]Fixed: Minor markup error in fpmi.dataset.exportHTML[/li][/ul]

See full changelog here: inductiveautomation.com/supp … FactoryPMI