The Emydex Product Development and Customer Delivery teams have been busy over the past months, delivering a major upgrade of the underlying Emydex platform and Modules, the first in three years (release Version 4.0), as well as designing and building many new customer-driven features and functionality.
Main Upgrade Changes:
As part of the version 4 upgrade Emydex have moved from .Net 3.5 to .Net 4.0. We choose to target .Net 4.0 rather than .Net 4.5, as the latter version will not run Windows XP nor any previous operating systems. Customers running Windows 7 or later will automatically have .Net 4.0 installed but for any terminals running any Operating system earlier than Windows 7 they will need to install .Net 4.0 separately in order to run Version 4 of Emydex. A full list of .Net 4 changes can be found here.
Emydex Version 4 uses DevExpress V13.2 (latest at the time development started) which gives the UI a much more modern look and feel, along with a host of other features and benefits.
- WinForms Spreadsheet Control
- WinForms PDF Viewer Control
- New WinForms Map Control
- New Touch-Optimized Controls
- Flyout Panel
- WinForms Chart Control with Data Aggregation & Sparkline
- WinForms Document Manager
- New Live Tile Manager Component
- New WinForms Editors
- New Control Designer UI
What’s New in DevExpress 13.2 are here
Version 4 has the ability to have more than one DMS Server processing data on the same production system.
Benefits – data processor load balancing, allowing prioritisation of which messages get processed first and the speed they get processed in. This is potentially of huge benefit to larger Production sites with high throughput of DMS server transactions
Emydex now utilises smart retry/back-off logic to mitigate the effect of transient failures in both our on-Premise and cloud-based Emydex systems. This is applicable for time-outs, heavy loads, temporary loss of connectivity or times of heavy performance demands. Instead of throwing an exception and displaying a not available or error page to our customers, Emydex will assume the error is transient, and automatically retry the operation that resulted in the error. In the vast majority of cases the operation will succeed on the second try, and the system will recover from the error without the customers ever having been aware that there was a problem in the first place.
2.5 Cloud Hosting & Cloud Deliverable
- Delivery of Emydex installs and upgrades via the cloud
- No need for a file server or plugins folder share anymore
- No dependency on IIS for SDA application anymore
- No dependency on link server anymore
- New licencing model with automatic activation
- App connection setup is greatly simplified – no need to know server name, database, login username & password etc.. These are all configured centrally.
- Addition of new Quick set-up i.e., ‘copy workstation’ functionality, meaning new terminal installs are quicker and simplified
- DMS Clients are more ‘network aware’, meaning if the connectivity to backend server is lost, Version 4.0 prevents data from being lost e.g., in the middle of editing a product file. The client will enter standby-mode until connectivity is restored
- Enables easy App updates as they are more controlled and could be done on a regular bases.
- Also supports full cloud-hosted databases on a pay-as-you-use basis, removing the need for the procurement, installation and maintenance of local file servers, local server licences as well as database licences, lowering total cost of ownership
- Cloud-based development and testing environments are standard for new Emydex installations, facilitating customer input and feedback much earlier in product development lifecycle. Test environments are commissioned upfront on day 1. This means that a customer doesn’t need to source and commission these environments which can be very costly and take time.
2.6 Standardisation & Best Practice
Emydex have put a lot of “good practice” into place by applying coding standards and using sets of tools to aid and enforce these best practice coding standards.
- Migration of coding from VB.Net to C# – in line with industry best practice. C# for example forces better coding practices ensuring more optimally performing code
- The adaptation of new coding patterns such as Dependency Injection and event aggregator allow us build solutions more efficient and easier to extend.
- We implemented a dictionary of terms ensuring that all developers are using the same definitions for the industrial terms used.
- Standard PLU File layout – this is mainly for new customers as existing customers have their own PLU systems and file structures bedded in. That said though, existing customers will also benefit from further development in this area.
- Standard systems such as the new ‘Food System’, contains a full suite of “Door to door” functionality, allowing user to run full process out-of-the-box
- Database – reviewed and cleaned, corrected and standardised naming conventions, removing unused objects, optimized indexes
- Database – made compatible with Microsoft Azure SQL – meaning easy and quicker migration from one platform to the other e.g., from Test Lab to Live
- In version 4.0 Emydex have defined how a standard security configuration should work on a SQL database in order to support our application, this allows customers have control over who has what type of access (view, edit) to which data sets? (Removed the “sa” logins)
- Standardisation of Application Role Type e.g., MDA admin security rights, DMS Client supervisor security rights etc
Emydex system now supports Intelligent data grid refresh only when data changes – minimising data load and bandwidth (previously refreshed continuously, regardless of activity)
- Web services APIs (RESTful) are now available within the Emydex Apps for operational tasks and integration to 3rd party systems (import/export)
- These are extendable to meet customer requirements
- Meaning any 3rd party can integrate with the various Emydex Applications e.g., stop and start DMS server from an iPhone (different platform)
- Labels design layouts are now stored in the database rather than on the server, meaning labels are faster to load, easier to manage and sync across systems.
- No dependency on file shares and supports master version control e.g., central (master) to local site to factory floor terminal
- Standardisation of label design in order to enhance print speed and performance
- Allows multi-lingual data on labels
- Label Printing Service to control printing is performed on a background thread
- Using Nice Labels within the application:
- Uses logging to analyse why things are not functioning as they should be, if there is an issue
- Changed the Nice Label Printing Engine to check length of ‘passed in’ variable against the length set in the label design, clip & warn if too big
- This is mainly for text fields e.g., if the systems passes a bigger size text than is set on the label, Nice Labels will just ignore it and print the previous set value – which leads to wrong data being printed on the label. This change will truncate (n-2) and add “..” to the end of text if too big.
- Added base Data processing classes to handle “Label Reprinted” & “Label Cancelled” messages. Logs to DMS Transaction for auditing purposes
- Added Label Preview and Data Processing to record any printing of this label preview.
- Note: A variable has been added to the label to mark it as QC preview and if printed – i.e. should only be used for QC, not put on cases etc.
Emydex now supports both Nice Labels 6.0 whilst also remaining backwards compatible with Nice Labels 5.0. The main features & benefits of Nice Labels version 6.0 over previous versions are detailed here
2.12 SDA (Scanning Terminal Application)
- The SDA Application has been updated to use a modern UI
- All SDA forms rewritten in C# and standardised
- Breaking of dependency on IIS, meaning much quicker and easier installations of SDA and no need for a customer to have a server running IIS, saving cost.
- SDA is now database independent – can use SQL CE or SQLite. SQLite being the preferred choice as it has more features such as views, stored procedures, functions and is also consistent with SQLite database utilised on MDA
- Cloud connector (cloud DB support) – allows connectivity to any database via a web service
- Emydex On-Demand support for SDA to deliver App updates and add-ons via the cloud
- Simplified Stock Reconciliation allowing start and complete Stock Rec and Stock Counts for reporting solely from an SDA scanner
- SDA independent of Scanner screen resolution, screens will automatically resize to fit any Windows CE devices. Previously screen size was fixed to the PDA standard screen size
- Ability to print labels from SDA via Web Service rather than using direct approach, meaning:
- (1) no need for Nice Labels licences on scanner
- (2) full and extensive use of all functions within Nice labels
- (3) removal of all dependencies e.g., connecting scanners to printers
2.13 MDA (PC Terminal Application)
The Emydex PCA application (Emydex’s Factory Floor PC terminal found in Version 3.3.5 and earlier) will continue to be supported by Emydex, but the newer (leaner) MDA Application for Factory floor PC terminals and tough-books has been enhanced and extended in Version 4. Compared against the PCA application, the MDA application is more lightweight, leaner, has a better UI design as well as enhanced performance.
- There is a sharper UI and design for touch and operation on tablet devices.
- It takes advantage of new technology and developments, i.e. APIs and full cloud support.
- Simplified the switching of users on the MDA (factory floor) using PIN numbers rather than passwords and allows for quicker switching and locking – for jumping between various role types quickly e.g., from operator to supervisor and back again (to change dates)
- Support basic speech commands
- From the MDA you can add removed & reordered forms
- Can easily download forms & data from the DMS and rebuild its database
- Added Label Review, Reprint & Cancel to Transaction history
2.14 Other new Version 4 features in brief:
- Data Aggregation – surfacing of real-time IT Performance data, Daily Production data or QC data at periodic intervals, per site, across group sites via web-based reporting
- Stock Maps – highlighting via warehouse maps, which product stocks are stored in which warehouse locations. Stock map search filters can also be used to highlight the whereabouts of products containing one or many specified Allergens
- Packaging & Back flushing
- Inventory Re-order advisory reporting
- Quality Forms – giving Emydex customers the ability to build and run their own QC survey forms for running on fixed or mobile (MDA) devices such as tough books or windows tablets