Development changes and improvements

Printing service

The Printing service has been reviewed and cleaned up. All Print functions now call a DoPrinting function that takes as a parameter 3 printing functions; Windows printing, Slip printing and Receipt printing. This means that all receipts can now be printed in all three ways. Previously the majority of the printing functions had all three types of printing but not all of them.

All hardcoded printouts i.e. printouts that do not have a form type and cannot be designed in the receipt designer have been moved to a separate code unit called PrintingService.CodedReceipts.cs

Barcode handling for barcodes that should be printed on the receipt has also been updated. Now a list of barcodes can be send into the printing functions and all of them will be printed. See BarcodePrintInfo business object.

All constants for the Printing service have also been moved to a separate code unit; PrintingService.Constants.cs.

Windows printing

The Virtual printer has been retired and now the only options for printing are Windows printing or OPOS. To test receipts during development, the hardware profile can be set to Windows printer and any image editor that can be used as a printer can be used such as Snagit.

A component called WinPrinter that LS Retail NAV has been using is now used for the Windows printing and to create the attachments for emailing the receipts. PrintingService.CreateWinPrintReceipt.cs code unit takes care of creating that receipt.

Item hierarchy changes

All references to upper hierarchy has now been removed from the item table . Now the RetailItem table only has a reference to the Retail group. The previous way the item hierarchy was saved to the item table in it's entirety made maintenance of the hierarchy very difficult and also make importing item and hierarchy information from a 3rd party system more difficult.

Please note that as these fields were only added in the last release, these fields have now been removed from the RetailItem table to minimize the confusion for ERP integrations.

Translations

The .bsl files have been updated and all namespaces should not be correct if a partner decides to do their own translations and/or build language dll's.

All translations that LS Retail maintains for LS One POS have been updated. Any texts that were added after those translations were updated will in some cases be in English but those texts will be translated in the next release.

Other improvements

In very limited scenarios the replication actions were being created using the "readable ID" instead of the actual primary key ID within the table. This issue has now been fixed. This issue only affected tables that have both a MasterID (a guid) and a readable ID (nvarchar(20))

NA is no longer the default item type when an item is created and now it is not possible to create items of that type.

Fields in table RboTransactionEFTInfo adjusted to conform with other transaction table. F.ex. terminal ID and store ID fields allowed less number of characters than the other transaction tables

Operations Customer transactions, Customer transactions report and Customer balance report has been set as non-user operations and cannot be selected on a button. These operations will be updated to use the Site Service to retrieve the information in a future release.

Field POSMENULINE.PARAMETER has been changed to be nvarchar(500) from being nvarchar(50)

A differential report from the last development pack will be available under Documents in the LS One POS 2017 development pack. A differential report between versions 2016 and 2016.1 development packs was added to the 2016.1 development pack after its release.

If the POS detects that an unconcluded transaction was in the POS when it was last stopped, and an error comes up when trying to recreate the transaction the transaction is not recreated and no errors are displayed.