Vitalware 4.0

Release Date: 20 July 2018


User Interface Update

The Vitalware User Interface has been updated while retaining and, in some cases, expanding existing functionality. Changes include:

  • Updating the style and colour of controls.

    All user interface elements have been updated with a modern, flat design. This includes the removal of “3D” elements such as drop-shadows and bevels.

  • Adding a configurable Favourites section to the Command Centre.

  • Increasing the base module window size to make better use of larger/higher resolution monitors.

  • Replacing the main menu and toolbars with a Windows ribbon interface.

  • Moving the tabs list from a horizontal list at the bottom of the module window to a vertical list on the left of the module window.

  • Replacing icons.

  • Increasing the white space between controls.

  • Changing the default font to Tahoma.

Some notable changes are described in more detail below:

The Command Centre

The styling of the Command Centre has been updated and a Favourites section has been added. Users can add, remove and reorder modules within the Favourites section. All available modules are always displayed in the Modules section and both sections are collapsible. For example:


All customisations are saved and restored again on login.

Note: The Command Centre can now only be displayed in a vertical orientation with images and text displayed.

The Ribbon

A Windows Ribbon control has replaced the menus and toolbars previously in use in Vitalware. A Ribbon provides a user experience that is similar to a combined menu and toolbar. Commands are organised into a series of tabs at the top of the window similar to a menu interface. Each tab contains multiple commands grouped by functionality and with an associated image similar to a toolbar. For example:


The Vitalware Home and contextual Multimedia ribbon tabs.

A Ribbon has a number of advantages over a menu/toolbar combination, including:

  • Better command discovery. Using a ribbon makes commands easier to find and understand by having self-explanatory labels, grouping of related commands with a common label and, particularly, tooltip help for each command.

  • The Quick Access Toolbar (QAT) provides a simple user-configurable toolbar. Any function or group of functions can be added to the QAT.

  • Contextual tabs provide access to functionality that can only be used in specific circumstances thereby reducing unnecessary visual clutter.

The Ribbon interface  allows for basic customisation. Users can:

  • Customise the QAT position: locate it above or below the ribbon.
  • Customise the commands or groups of commands available in the QAT.
  • Set the ribbon state: expanded or minimised.

For example:

ribbon qat

The QAT above the ribbon, the QAT below the ribbon and a minimised ribbon.

All customisations are saved when the user closes the module and restored when the module is reopened. For more details see the Ribbon Vitalware Help page.


Module tabs now appear as a vertical list on the left of the module window instead of a horizontal bar running across the bottom of the module window. Functionality has been added to allow users to reorder tabs within the list  (by dragging and dropping a tab name to a new position) and the Shortcuts View facility is now available at all times in the same pane as the tabs list.

This has a number of advantages:

  • It is easier to navigate between tabs as most tab labels can be seen without scrolling.
  • The tabs list is visible in all screen modes.
  • The length of the tab label text is not restricted.
  • It provides more vertical space for the tab window.

For example:

tabs on left

Field Level Help

The module window Field Level Help has changed position so that it is now the last element within a tab instead of appearing beneath the module window. For example:


For more details see the Show a field’s description in a module window Vitalware Help page.

New Features

Tab Reordering

It is possible to rearrange the list of tabs by dragging and dropping a tab name to a new position in the list.

EXIF Orientation tag support

The EXIF Orientation metadata tag is now respected when displaying images.

When generating resolutions, Vitalware automatically orients them correctly and updates the EXIF Orientation tag for the resolution to reflect the change in orientation.

New EXIF tags supported

Support has been added for the EXIF BodySerialNumber, CameraOwnerName, DateTime, InteroperabilityVersion, LensMake, LensModel, LensSerialNumber, LensSpecification, PrintImageMatching, RecommendedExposureIndex and SensitivityType image metadata tags.

Online Help

A new online help site replaces the Microsoft Compiled HTML Help (CHM) facility. The content has been updated for Vitalware 3.0. The online help retains important features of the CHM help such as contextual integration with the Vitalware client, a general search facility and support for multiple languages. New features and benefits include:

  • New and updated content can be made available to all users immediately.
  • Versioned content means that when you access contextual help from the Vitalware client, you are directed to the help relevant to your particular version of Vitalware.
  • Filtered search allows, for example, only searching for Registry entry topics.
  • Accessibility compliance.
  • Updated styling.

The online help is available at It is currently being updated for Vitalware 4.0.

Copy List Items

Functionality has been added to support the copying of items in list dialogue boxes. This includes:

  • Insert and Query Defaults
  • List Columns
  • Record Templates
  • Reports
  • Shortcuts
  • Sorts

The copied item is named automatically and ownership of the copied item changes to the current user. For Report list items the report file is also copied and automatically assigned a new name. See the Vitalware Help for more details.


  • Support has been added to allow dragging multiple multimedia files to any (non-Multimedia) module Multimedia tab. A new Multimedia record is automatically created and attached for each dropped file.

  • A new Thumbnail|Quality Registry entry specifies the compression quality of thumbnails generated when adding images to the Multimedia module. See the Vitalware Help for more details.

Unicode file names

Support has been added so that any Unicode character (excluding Windows reserved characters) can be used in the file names of:

  • Multimedia
  • Report files
  • Import files

Import Tool

New functionality has been added to the Import Tool:

  • A new Import Restrictions page has been added to the Custom import sequence, providing options to prevent inserts or updates to existing records when importing:
    import restrictions

  • Registry entries have been added to control the default settings for the Custom import sequence Attachments page options Only search records imported in this batch and Exclude empty fields from attachment search:

    import attachments

    See the Vitalware Help for more details.

Lookup Lists

The functionality of the Lookup Exact Registry entry has changed so that when Lookup Exact is set to true, values that differ only by accent (e.g. Zoe vs. Zoë) or by case (e.g. zoe vs. Zoe) are now considered as different for the purpose of testing whether the value should be added to a Lookup List. Values that differ only by punctuation (e.g. Zoe vs. Zoe?) are now considered as different, irrespective of the setting of the Lookup Exact Registry entry. See the Vitalware Help for more details.



Administration Statistics

Administration monitoring statistics were adding a significant number of unnecessary entries into the audit table. The monitoring statistics are no longer audited.

Additionally, the generation of administration statistics was adding a significant load to the lutsserver. A filter has been added for these statistics which reduces the load.

Database Cross Matching

Running the database cross matching process over a date range could be quite slow. Changes have been made to improve the range querying which speeds up this process.

Issues Resolved

  • Changed the appearance and sorting of the owner in the Access list on the Security tab of a Properties box.
  • Fixed an issue where it was possible that a sort, list columns etc. shared by another user would display rather than the user's sort, list columns etc. if the same name had been used.
  • Fixed an issue where sorts, list columns etc. with the same name but owned by different users would display all of those different users in the Security Access list.
  • Prevented the removing of the owner of a sort, list columns, report etc. from the Access list on the Security tab of a Properties box.
  • Fixed an issue where the server-side vwlutsrebuild utility would not exit when performing a “quick” rebuild (the -f command line option) and the lookup database was in use.
  • Fixed an issue where fields were not reloaded after selecting the Multimedia>Update Resource>Current Record menu option. This occasionally resulted in extracted metadata values (via the Metadata|Extract Registry entry) not displaying.
  • Fixed an issue where copying attachment field values (e.g. via the Edit>Copy menu option) from a List View resulted in data from a different record being copied to the clipboard when an empty value was encountered.
  • Fixed an issue where the encoding of a file name added to the Multimedia module was not correctly set as UTF-8.
  • Fixed an issue where punctuation was stripped from values selected from the Lookup Selection... dialogue.
  • Fixed an issue where values would not appear in hierarchical Lookup Lists or the erroneous message “An invalid selection has been entered. Please use the Lookup List” would display when selecting a value from a hierarchical Lookup List in Search mode.
  • Fixed an issue where saving search criteria (e.g. via the Tools>Groups>Save Search Criteria... menu option) resulted in an error “Invalid text value. in Column Query ...” and the group was not saved.
  • Fixed an issue where using the !+ operators to search an attachment field for records without attachments returned incorrect records.
  • Fixed Unicode character displays in the Substitution... dialogue fields displayed when adding or editing an entry in the Replace list (the Edit>Replace... menu option).
  • Fixed an issue where Tab Switching did not work correctly using an escape-quoted (i.e. \”term\”) value entered via the Lookup Selection... dialogue.
  • Fixed Unicode character displays in the Admin Tasks selection dialogue and the Admin Task Results form.
  • Fixed an error “TexAPI Error: Syntax error. (Number -292) at offset 33” when searching for a single # (hash) character.
  • Adjusted the output of the List ISO-8859 Admin Task to reflect the change to use the UTF-8 encoding internally in Vitalware.
  • Fixed an issue that occasionally caused the truncation of the Sort Summary Results output and resulted in excessive memory use.
  • Fixed an issue where Multimedia module image resolutions were generated using the same format (e.g. JPEG, TIF, PNG etc.) of the master image rather than the requested format.
  • Fixed Unicode character display in the Revalue, Recondition, Re-identify and Relocate tools and other “list item” forms (e.g. Groups, Reports).
  • Fixed Unicode character display in the Set Default Value... dialogue.
  • Fixed an error “Can’t find Unicode property definition “punct”...” generated by internal server-side utility utfconvert.
  • Fixed an error “TexAPI Error: (Number 0)” when running a report with a path on the server that was over 1024 bytes in length.
  • Fixed Unicode character display in the Value field of the Registry module.
  • Fixed Unicode character display in the Select User/Group... dialogue when adding to the Security list on the Security tab.
  • Fixed Unicode character display on the Tools>Language menu and the Language Setting fields on the Language tab of the Options form.
  • Fixed Unicode character display on the Spell Check... dialogue.
  • Fixed an issue where multimedia did not display in Reports.
  • Fixed Unicode character display on the XMP tab of the Multimedia module.
  • Fixed an error “Class TlistView not found” when the View>Shortcut Settings>Choose Shortcuts menu option was selected from any module.
  • Fixed incorrect output when the Use first image only option was selected on the Multimedia tab of the Report Properties of a Crystal report.
  • Fixed Unicode character display in the Audit module.
  • Fixed an issue where task notifications were generated for already completed tasks.
  • Fixed an error “TexAPI Error: (Number 0)” that sometimes occurred after running a report.
  • Fixed an issue that caused the server-side utilities lutsdump and lutserver to run incorrectly when using Perl version 5.8.
  • Fixed an issue with the Import where searches for existing attachment records would not find an existing record if the column value to search for contained punctuation characters.
  • Fixed an issue where the selection of a value in the Lookup Selection... box would change to a previous value in the list when both values differed only by case.
  • Fixed an issue that caused the server-side utility reloaddata to fail.
  • Fixed an issue where searches using the Statistics module Key columns would run slowly or would not return results at all.
  • Fixed Unicode character output when writing audit archive files, server-side utility lutserver data files and writing to the server-side fifo utility.
  • Fixed an issue that sometimes resulted in incorrect search results when running phrase queries.
  • Fixed an issue where temporary files used by the server-side reportsmedia utility (e.g. reportsmedia23061) would not be removed when the utility finished running.
  • Fixed an issue where the server-side vwnotify utility did not send notifications for scheduled or uncompleted tasks.
  • Fixed an issue where the server-side vwexport utility would output warning messages like “Argument “” isn’t numeric in numeric eq (==)...”
  • Fixed an issue where Vitalware would shut down after selecting the version URL link on the Login dialogue.
  • Fixed obscured Properties button on the Replace list view.
  • Fixed an issue where selecting the Show Column Names or Show Prompts button on the Replace list view would not immediately toggle between the display of Column and Prompt names.
  • Fixed an issue in the Vitalware 3.0 upgrade process where special characters were not automatically escaped in some Security Registry entries.
  • Fixed an issue where newline separated values extracted from multimedia metadata to a tabular column using the Multimedia | Metadata | Extract Registry entry would all be placed into the first row of the column instead of each separated value being placed into a separate row.
  • Fixed an issue in multi-language environments where searching for multiple phrases separated by the language delimiter would generate incorrect results.
  • Added missing Lookup List to the Record Status field on the Statistics module Security tab.
  • Fixed an issue where duplicate entries would display in the Select User/Group... dialogue when adding to the Security list on the Security tab.
  • Fixed an issue where multimedia could still be viewed using the View>Thumbnails menu option even if the user did not have display permission for the Multimedia column.
  • Fixed an issue where the Multimedia media controls (e.g. Play) were not enabled for audio files.
  • Fixed an issue whereby applying a tax rate could on occasions result in a rounding error when generating an order sub-total. The sub-total is now correctly generated.
  • Fixed an issue where a print job would continue even if the definition for the selected printer was not found. The print job now correctly terminates.
  • The Vitalware installation/upgrade script could turn on batch indexing in 24 x 7 web environments causing them to run slower. The install/upgrade scripte has been corrected so that this no longer occurs.
  • An unformatted error message could be displayed when the orders listed on an invoice did not match those on its corresponding POS transactions. The error message is now formatted correctly.
  • Changes made to correct information on party records, e.g. misspelling of business name, were not reflected in registration records. These changes are now reflected.
  • After performing an order reversal and then adding a new payment in the same edit it was possible that a negative balance could result. The balance now calculates correctly to a positive balance.
  • An error could be thrown regarding missing perl image modules when importing multimedia. This error is no longer thrown and the multimedia imports correctly.
  • On occasions a popup message could be recorded as part of a registration's validation errors rather than displayed to the user. This has been corrected so that the user now always gets the popup messages.
  • On occasions the overnight certificate printing could print certificates for orders which had been reversed. Reversed orders are no longer printed.
  • When reloading the master field help file errors relating to non utf8 characters could be shown. The errant characters have been corrected so these errors are no longer show.
  • When generating an invoice with a large number of orders it was possible for the invoice total to be off by 1 cent. The total now calculates to the correct amount.
  • When reversing a large number of products the system would not allow the equivalent cost value of products to be added back in. The equivalent cost value of products can now be added back in.
  • On occasions the last POS transaction on an invoice would not be flagged as fully paid even though the invoice was fully paid. All POS transactions are now marked as fully paid.
  • Under certain circumstances order records may not have been marked as Fee Waived even though the POS transaction was Fee Waived which causes end of day to not balance. All orders are now correctly flagged as Fee Waived.
  • Depending on the values recorded for date of birth and date of death it was possible for ages of less than a year to be calculated incorrectly. These ages now calculate correctly.
  • Fixed an issue when changing Default Values (using the Edit>Default Values>Change menu option) where the error message “Class TListView not found” was displayed.
  • Added support for Unicode characters to the Login Message dialogue box.
  • Fixed an issue where accented characters in the List View header that are pasted to another application are replaced by the Unicode replacement character “�”.
  • Fixed an issue where Unicode characters did not display correctly in the Image Display tooltip.
  • Fixed an issue where more “out of licence” warning emails were being generated than necessary.
  • Fixed an issue where the Scan Image option displayed when right-clicking on a multimedia field was not disabled when TWAIN devices were not found.
  • Corrected support for the EXIF GPSIFD image metadata tag.
  • Corrected the name used for the IPTC tag with id 62 when generating Multimedia image metadata; the name should be DigitalCreationDate not DigitalCreationTime.
  • Fixed an issue where media resolution information (i.e. width x height) did not display in the Launch Media or Save menus options available from the Multimedia menu or when right-clicking on the media.
  • Fixed an issue when running in Search mode where the quotes surrounding the values inserted by the Edit > Insert > Current Date and Edit > Insert > Current Time menu options were not correctly escaped when running against Texpress version 9 or greater.
  • Fixed an issue in List View mode that allowed the user to move past the last row of a matching set when the matching set contained false matches. This resulted in an “End of File” error.
  • Fixed an issue where an “Invalid date format” error occurs when recalling (via the Record Recall facility) a value from a double nested date column.
  • Fixed an issue where the Scheduled Exports “Secure transfer to another host (SFTP)” After Export facility could fail with the message “Connection closed”.
  • Fixed an issue where a duplicate value could be saved to a unique field after initially being rejected.
  • Fixed an issue in Search mode where values in lookup list hierarchies were not being correctly filtered for multi-lingual clients when displaying all languages.

Upgrade Notes

See Upgrade 3.0 to 4.0 for details.