LS Central 21.3 Release Notes

About This Release

Released - February 16, 2023

This version is built on Microsoft Dynamics 365 Business Central 2022, release wave 2, cumulative update 4, 21.4.52563.52785.

New or Enhanced Features

Fixed Issues

Since version 18.0, LS Central is delivered in two apps, LS Central System app and LS Central app. The LS Central app has dependency on the LS Central System app. The code in the LS Central System app will not be public and the LS Central System App will only be published as runtime package. The LS Central System App will, in the future, hold code related to licensing to enable LS Retail to license LS Central components in the cloud.

LS Central AL code

The source code for the LS Central app is delivered in AL files that can be modified by partners. It is, however, highly recommended to make all modifications in extensions, and if you need to alter the LS Central or Business Central behavior then do that by subscribing to events.

It is LS Retail's priority to make it easy for the partners to extend LS Central. Therefore, a special section in our Support Portal (login required) is provided for partners to submit requests for new events. These requests are given priority.

LS Central extension

The release package includes LS Central and LS Central System App as runtime apps that can be installed as extensions. To install the extensions, you first need to publish them, see Publishing and Installing an Extension v2.0. Once the LS Central and LS Central System App extensions have been published, the LS Central and LS Central System App extensions can be installed using the Extension Management page in Business Central.

Important Notices! 

Breaking changes in release 21.0

Obsolete code marked with tag 19.0 and below removed

Our solution gets bigger with every release, but we intend to clean up by removing obsolete code in major releases as soon as the code has been marked obsolete for at least a year.

In release 21.0 we removed constructs like procedures and events, but there are no breaking schema changes yet, like Tables and Table fields.

Recommended action: Check if you are using a feature that has been marked obsolete for more than a year. The warning should state the reason and the alternative that is intended to be used.

OnPrem-only procedures are now obsolete

All procedures and objects that are marked #if _IS_SAAS_, previously marked [Scope('OnPrem')], will become internal.

From 21.0 these procedures and objects will be marked Obsolete for OnPrem extensions, until they will finally become internal in 22.0.

If your extension is using any of these, they will now get a warning.

Recommended action: If you have an OnPrem extension, check if there are any warnings. Usually, there are alternative procedures available, but partners can also request that a list of these is made public through the same flow as event requests.

Autotest object names now have an LSC prefix

In version 17.4 we added an LSC prefix to LS Central, but this was not done for our Autotests extension, which we include in our releases.

From version 21.0, autotests will have a prefix as well.

Recommended action: If you are using or extending the LS Central Autotests extension, be aware of this change.

Integration event triggers are now internal/local

In rare cases, it has been technically possible to trigger some of our events from an extension.

These cases are usually an oversight, since the internal/local keyword was missing for the IntegrationEvents so they became public, by default.

This has prevented us from adding new arguments to existing events, and therefore unnecessarily forcing new versions for events where a breaking change would not have been needed.

Recommended action: This should not require any work. There is a chance that somewhere an upgrade might fail, if it is calling an event function, for example in POS Transaction Event, which usually has no effect. Instead, the events are intended to be subscribed to, with an EventSubscriber.

Click here for a printable version of this notification.

 

OAuth web service authentication

As documented by Microsoft, OAuth2 is the authentication option for Business Central SaaS and Basic authentication has been deprecated, see here:

LS Central version 27.0 supports the use of Service2Service OAuth2 authentication when using LS Central as a web service client, for example when POS (web service client) is calling web services on Head Office (web service server).

New or Enhanced Features

LS Central

New Data Type, DataTransfer, in Upgrade Codeunit

Code has been updated to use the new data type DataTransfer.

Web Service to Return Member Contact Information

A new web request, GetMemberContactInfo, has been created to search and collect member contact information. This web request is based on the OData 4 module. Request and response parameters are in json format. The web request can be published and subscribed as other web request, the only difference is that the subscription process will not create SOAP related data, but only refer to the fact that it is an OData 4 request (see request name space) and the Definition URL is converted to its OData 4 format.

This new type of web requests will be shown and handled by the same pages and actions as version 2. It could be argued that the new types are in fact version 3, but they will remain in the list with web service 2 for the time being.

Food & Beverages

Confirm Finalizing Orders

When finalizing an order on the takeout host (FAB Order), a confirmation message pops up asking if the user wants to finalize the order. This is to ensure that users can cancel, if they pressed the Finalize button by mistake.

Webhooks for Kitchen Status

Webhooks have been added for kitchen status changes. Every time the kitchen status changes, a message is sent to the Commerce Service. The Order KOT statuses can be mapped to a user defined status that is to be displayed on the eCommerce site.

KDS

Fields Added to Be Displayed on the Chit on the Kitchen Display

The following fields have been added to the fields that can be displayed on the chit in the Kitchen:

  • PhoneNo
  • OrderId
  • TableNo
  • CustomerName

KDS OAUTH - Create a Request for the Web Service

The Kitchen Service can now use OAuth authentication to connect to the Business Central SaaS. KDS now uses REST to connect to the Hardware Station, and KDS now uses the REST Client to access the OData web service protocols. Backwards compatibility with older SOAP services is available down to v.17.0.

LS Activity

Client Name Displayed on Activity Lines in Activity Host

Client name is now shown on activity lines (on the web templates), in the Activity Host. Client name is now shown instead of ‘human resource’, for reservations that have a reservation type set up to have multiple clients.

Deposit Made from the Back Office in Activity

Previously, it was only possible to make a deposit (prepayment) at the POS in the Activity solution. Now it is possible to make a deposit (prepayment) from a reservation in the Back Office via the Deposit Schedule page. A Deposit button was added to the existing Deposit Schedule page.

Empty Matrix Day View

When the activity user has no default matrix view, a new error message for matrix view is displayed: Default matrix view setup is missing.

Itinerary Page

Itinerary page has been added, an overview of all guest activities assigned to a reservation. The Itinerary page is accessible from Activity Reservation and Reservation Group.

Reservation Header Improvements

The functionality where the user changes the reservation dates in the reservation header has been enhanced. Now there is better validation of the date change, and the users are also asked if they want to update the activity line dates accordingly. Note that on course and class products the activity dates will not be changed. Activity times will not be modified.

LS Hardware Station

More Resilient Handling of Config Files

The handling of config files that store the settings of devices in the Hardware Station has been refactored to minimize the read and write of the config files. This minimizes the likelihood of the config files getting corrupt.
The handling of corrupt config files has been changed, so that if the Hardware Station reads a corrupt file, it will regenerate a new one with default settings instead of reporting an error.

LS Hotels

Changes in Split Bill Update Invoice Management

The balance of a reservation can be routed to different invoices in Back Office before check-out. If the routing is changed on the POS (Finalize InvoicesSplit Bill), from what it was in Back Office, the changes are now reflected in the Invoice Management in the Back Office.

Field Added to Room Type Blocking

A new field, Enabled, has been added to the Room Type Block table. If set to true, the field will take availability from the Hotel Availability table, and if set to false, it will not have any affect on hotel availability.

All blockings coming from web services have this field automatically set to true. Hotel Availability is now accessible through action navigation for quicker access to the affected table.

Filters Aligned in Reservation Page in Back Office and in Front Desk Role Centers

Reservation Cues have been copied from the Back Office Role Center to the Front Desk Role Center to display the same Views filters in the Reservation List page (Attention, Draft, Arrivals, and so on).

Host Now Assigned to Staff from the Staff List

The Host attribute has been moved from Hotel User to Staff. A new Host field has been added on the Staff List and Staff Card. A Host is now assigned to staff from the Staff List. Front Desk Cue Number of Reservations has been changed to show the number of reservations with Hosts.

The Host field has been marked as obsolete, and two fields, Host ID and Host Name have been created in the Reservation table.

Hotel Actions Added to Activity Pages

A new action, Hotel Reservation, has been added to the Activity Card and the Activity Reservation Card, to open related hotel reservations. Additionally, an action, Hotel Group Reservation, has been added to the Activity Group Reservation Card, to open related hotel group reservations.

LS Recommend

Discontinuation of LS Recommend in LS Central

LS Recommend and its functionalities have been obsoleted. It is no longer possible to get item recommendations at POS terminals.

Staff Management

Staff Management Messages and Comments

The Staff Management module now uses the Retail Message functionality to send messages to a group of employees or individuals. When the employee clocks in, the system checks for messages to that individual, both direct or to the store or terminal. The employee can accept to read the message, and thus the message will be marked as read. The message can also be read by the standard Retail Message functionality in the POS.

Also, the Employee Portal now shows the related messages and the employee can mark the message as processed. The Staff Manager role center now has an action to create new messages and also to see currently active messages from a cue.

Note that previously, a simpler message functionality in the Staff Management module had been obsoleted and removed from the Staff Management Setup, Location, Employee, and Work Location cards.

Staff No. Enabled in Staff Management Employee List

The second set of the Employee List page in the Staff Management has been removed. This page will not show up in the search, and only one list page is now active for the Staff Management employees.

Time registration comes up empty on screen

The Time Registration page has been removed from the search results. If partners upgrade their implementations and the old time registration page is shown, an error message is displayed referring the user to set up the new time registration POS panel instead.

Other

LS Central Demo Data Company

The standard new feature New sales price experience in Business Central has now been enabled for the LS Central Demo Data Company.

This change has some effects on the Retail Item Card and some new functionality in Business Central is now active.

Changes on the Retail Item Card:

  • The Unit Price with VAT field is no longer on the Retail Item Card, you find this now in action Prices & Discounts / Sales Prices for the retail item.
  • FastTab Pricing is not there anymore, it has been replaced with action Prices & Discount / Sales Prices.
  • A new part has been added on the FactBox panel, Item Price Overview.

Fixed Issues

LS Central

Handling of Shortage When Using Transfer Orders

Handling of Shortage when using Customer Order - Transfer Orders has been fixed.

Issues With Customer Order Transactions With Non-Inventory Items

  • Processing of Non-Inventory items in Customer Order changes has been fixed. Transaction was created with Gross Amount excluding the Non-Inventory item.
  • The system has been changed to prevent users from creating a Customer Order that has only items of type Service or Non-Inventory.
  • Processing of Transfer Orders and Customer Orders was tuned.

Issue in LS eCommerce Shopify in LS Central: Members Code Field Length

Processing length for data has been fixed.

Item Templates Do not Update New Items

When entering Item Category Code or Retail Product Group, the template defined for each field is automatically applied to the Retail Item.

If Item Category Code and Retail Product Group have different Item templates defined, the one defined in the Retail Product Group is applied.

Post Retail Picking Error

If Default Qty. to Receive is Blank in the Purchases & Payables Setup, the Return Qty. to Ship in the Purchase Return Order (create) will be the same as the Quantity.

Food and Beverages

Dining Table Locked

The following has been done to make it easier to investigate and fix process problems with dining tables:
If a dining table has an active order that is supposed to be unposted according to the Hosp. Order Trans. Status but is posted, it shows the - with error - status in the POS. When you press it, the pop-up menu includes the Reset function that you select to fix the error. The Dining Tables page, under the Dining Area page, shows dining tables in red that have some kind of mismatching status.
You can also Reset a dining table in this page, and view the Dining Table Status Log that stores information on what was done during the Reset function. The new Dining Tables FactBox shows various information links to help with your problem solving.

QR Code Update After Landing Page Change

When a QR code for a table in Dining Area is created and an old QR code already exist, the old one is now removed.

Status on POS When KDS Printing Fails

The KDSStatus now displays the correct error message when printing fails. The error message is displayed with a banner with a five-minute timeout instead of a field in the POS footer.

LS Central POS

DateTime Issue When Refreshing POS Browser

If the POS language was changed from the default language (English) and the POS browser was then refreshed, the DateTime was displayed in English. This has been fixed and DateTime is displayed in the selected language.

Replenishment

Date Formula Translation Issue in Retail Budgets

A date formula translation error that occurred in the Retail Sales and Purchase Budget when the system language is not set to English, has now been fixed.