LS Central 20.3 Release Notes
About This Release
Released - August 18, 2022
This version is built on Microsoft Dynamics 365 Business Central 2022, release wave 1, cumulative update 3, build 20.3.42673.43026.
LS Central 20.3
LS Central is now delivered as two apps. Some code has been moved from the LS Central app to a new app named LS Central System App. The LS Central app has a dependency on the LS Central System App. The code that was moved to the LS Central System App is a code that was originally in the Toolbox .dll and is related to the POS UI. The code in the Toolbox .dll was not public, and partners could not modify the code. 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 Notice!
OAuth web service authentication
As documented by Microsoft, OAuth2 will be the authentication option for Business Central SaaS and Basic authentication will be deprecated, see here:
The Basic authentication feature is turned off in version 20 for new environments in SaaS. Upgraded environments can still use Basic auth in version 20, but the feature will be turned off in version 21.
LS Central version 20.3 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
BackOffice
Access to Codeunit "LSC POS Ctrl Interface NODLL"
The function SetClientType on Epos Control Interface was changed to Allow DualDisplay to allow access to codeunit LSC POS Ctrl Interface NODLL.
eCommerce Selection Field Added to Item Unit of Measure
A new option field, Ecom Selection, has been added to the Item Unit of Measure and Retail Product Group setup. Available options are: Allowed, Not Allowed and Only if Specific UOM Price.
Extend System Logic to Print Item Number / Size on Sales Receipt
To allow extensibility, Item No. on Receipt in the POS Terminal table has been changed from option to enum.
Image Link Updated When Importing Items With PowerShell
A new function has been added to import using PowerShell (ImportRetailImageFromZIPFromStream).
More Retention Policy Options in LS Central
Web service logs, Web request restore data, and Adj. Item Ledgers for RBO tables have been added to the retention policies.
New Tab in Hourly Store Sales Page
A new tab, Total in Store Hourly Distribution, has been added to the Hourly Store Sales page.
Quantity Rounding in Calculate Basket Web Service
The Calculate Basket web service has been stopped from rounding quantity based on General Ledger Setup.
Remove/Replace LoadXMLDocumentFromFile
The function LoadXMLDocumentFromFile has bee removed.
Shelf Label Request - Store Inventory Journal
The option to order Shelf Labels with different UOM has been added to the Store Inventory Journal.
Solutions to Prevent Locking and Deadlocks on Transaction Tables
Solutions have been added to prevent deadlocks and to achieve less locking and improved performance while simultaneously posting transactions on multiple POS terminals.
Turning Off Transaction Printing for Void Transactions
A new field, Void Slip, has been added to the POS Terminal Card, the Printing FastTab. This new field has two options, Print and None.
.NET Variables Removed
The usage of the Convert and Securestring .NET variables has been removed from the Transaction Signature codeunit.
LS Activity
Email Template for Group Confirm in Demo Data
In the email and label script template setups, the user can now select Group Reservation as basis for the preview, which was missing before. New parameters have been added, 105/106, which demonstrate new possibility in the email templates to support multi-line parameter results.
The 105 parameter displays all activity group lines related to the selected group.
Parameter 106 displays all activities related to the selected reservation.
Codeunit 10015806 LSC ACT Label Print is a framework codeunit providing these 2 parameters (and others). Partners can copy the codeunit to use as basis to create new parameters for their customers using App extension, providing them with new custom features in email and label templates, if needed.
The multi-line support is needed when the template scripts need to return multiple entries back to the email or label being displayed or printed, which was not supported before.
Improved Matrix Speed
Matrix speed has been improved when a template has many blank or "free" cells. If the Matrix Template has the Page Refresh Interval (min) setting assigned, the view is now buffered per day, template, or user, so within the same refresh interval the date is not re-calculated. This can dramatically improve speed when users switch frequently between dates.
Example: If the Page Refresh Interval (Min) is set to five minutes, then each time a matrix is drawn for a specific date, it will not be re-processed for the next five minutes, unless the current user adds or changes an appointment. This might be a good option for speed improvements in locations where you do not have bookings being entered constantly on multiple user clients, since switching between dates that have already been viewed recently will be very fast.
Note that even if the matrix is not refreshed and shows availability where none is, the user will not be able to book the time, since availability check is always based on the latest information.
Note that these refresh changes only apply to a matrix run as a page, but not if it is viewed within the POS as a POS menu.
If an appointment is opened from the matrix and not changed, the matrix is not re-drawn.
Note: If the number of appointments has changed when a date is revisited, the system will force the redrawing of the matrix page. This is because, for example, if new activities have been entered by other users or web API since the date was last viewed, and thus, a re-draw is needed.
New Actions: Confirm and Draft
Group Reservation Lines have been added to the action banner as an individual action (Confirm), and Draft is a new action on the Group Reservation Card.
New BEO Report Field
A new field, BEO Report, has been added to the Activity Reservation Type Card, on the Banquet Events FastTab. This allows the user to assign a custom-made report to be used to print the BEO report for the related reservation type.
The option has also been added to the Report action banner on the Reservation Card to print out the BEO report according to the latest BEO version. This print function uses the custom-defined report if it has been assigned, but otherwise it uses the default BEO report.
This feature set is added to make it simpler for partners to custom-build the BEO report according to clients' requirements and add it to the system with minimum effort, as well as to have different types of BEO reports based on the reservation types.
LS eCommerce
LS eCommerce - Shopify
LS Central 20.3 now supports the integration of Shopify with LS Central. See a demo link here.
The first release now includes all the common features which are available in both Shopify and Shopify Plus. Future releases, however, will focus on more advanced features which are only available in Shopify Plus.
The following is a list of features provided by LS eCommerce – Shopify as part of the integration between LS Central and Shopify:
- Multiple Stores - Multiple stores are supported where you can connect LS Central to multiple Shopify web stores. Configurations are now available to choose the tender type mapping between Shopify and LS Central, shipping agents, and Click and Collect store configurations.
- Products - LS Central uses the Item Store Distribution mechanism to update products in Shopify. Product description, item HTML, variants, attributes, vendor information, prices, and images are included as part of replication. It is only possible to send items as products to Shopify, not get products back from Shopify and create items in LS Central. Scheduler is used to keep products in sync and preactions are used for delta modification.
- Member Management - LS Central can pull customers from Shopify and create member contacts, or have them created on the fly at the time of order creation, if the member contact does not already exist. Member contacts are synced based on email address.
- Order Management - LS Central pulls orders from Shopify and creates Customer Orders. Both shipping and Click and Collect orders are supported. Shipping orders will become sales orders as well. Currently, only full payment at the time of order is supported and is pulled at the time of order creation. Order cancellation and fulfillment (shipping) is synced both ways.
For more information see LS Central - Shopify in the LS Central Help.
LS Hotels
Enhancements in Hotel Invoice Management Page and POS Web Templates
Activity lines with internal status set to Draft are now shown in red color on the Invoice Management page and the Detailed Revenue Entry List page (Related -> View Charges). The same logic has also been added to POS Web Templates, lines with Revenue Type Activity Product and internal status set to Draft are shown in red color.
New Web Templates Configuration Package.
Extra Bed or Crib Automatically Added
The system now automatically adds an extra bed or a crib when a child is added to a reservation. If the child is an infant a crib is added, otherwise an extra bed. The Room Type setup determines the number of automatically added extra beds or cribs. If the number exceeds the setup value , a warning is displayed.
Rate on Paymaster
Group Rates have been added to the Hotel Group Reservation FactBox showing the price for room only (Rate lines that are routed to Paymaster).
Replenishment
Multi-Company Replenishment to Support Multiple Databases
In Multi-Company Replenishment, it is now possible for the central supply chain company to copy the pre-calculated Replenishment Item Quantity (RIQ) data from a sales company that resides in a different database. To do this, you just need to perform the following steps:
- Set up the sales company's location with the new Data Source option of Other Database in the central supply chain company.
- Publish the web service responsible for copying the RIQ data (ReplenWebServices) in the sales company.
- Set up the web service connection from the central supply chain company to the sales company, via the Distribution Location.
In the event of web service connection failure during the copying of the RIQ data, you can review the data that have failed to be retrieved using the Replen. Item Quantity WS Failure Logs page in the central supply chain company, where you have the option to retrieve the RIQ data, if needed.
For more information see Multi-Company Replenishment in the LS Central Help.
Fixed Issues
BackOffice
All Inventory Cost Posting Fails With ExeID Buffer Index Out of Range
Following an upgrade from version 16.x to 19.5 all Inventory Cost posting fails with ExeID Buffer Index Out of Range. The fix is to subscribe to a different event when updating unit cost.
ASN Changed to Advanced Shipping Notice
Tables and pages with ASN have been renamed Advanced Shipping Notice.
Authentication of Several V2 Web Services
An issue with authentication of several V2 Web Services has been fixed.
Authentication of Web Services "GetActionsFromRmtDBV2"
Missing code was added to handle global changes previously done to support S2S authentication.
Commit When Posting ASN
The SuppressCommit function was used to fix the issue.
Default Location on Documents
Users can now change the location code on Purchase and Sales Orders. The store number will be updated accordingly.
Email Receipts
The error message Email Print Status Line is Missing has been fixed.
Error Message When Trying to Post Statements
A fix has been created to adjust to Dimension changes from Microsoft. Dimension handling in Statement Posting for both G/L and Inventory.
Franchise: New Fields Added
Two new fields have been added to the Franchise Partner Setup, Auto Ship Return Order and Auto Invoice Return Order. This enables automatic processing of Purchase Return Orders.
New and Updated Actions and Fields on Document and Journal Pages
- The Document and Journal pages have been updated with a new action, Cancel Batch Posting, that allows the user to remove the document or journal from the Batch Posting Queue if entries have the status Waiting or Error.
- Batch Posting Pages (Waiting and Error) have been updated with a new action, Delete, which allows the user to remove an entry from the queue if the entry has status Waiting or Error.
- Several actions and fields on documents and journals have been updated. Instead of showing an error, the system will ask the user if he wants to remove the entry from the Batch Posting Queue if an entry has status Waiting or Error.
POS Card Entries Registered from SPG Customer Orders
Card type breakdown is now available for statements for ScanPayGo orders.
Rounding Issue When Scanning Member Cards
Scanning illegal member card barcodes through virtual scanner has been fixed.
Separate UOM lines in TO
Lines with the same item but different units of measure are not compressed.
Where-used Issue on the Store Card
"Where-used" is now shown for a store's Plu Menu Profile in searches in the POS Menu Profile.
LS Activity
ActivityDateHandlingWhenStatusUpdate
When a reservation is confirmed, and the related reservation type does not have the default Date Restriction set, the reservation header dates are updated by the activity dates. If Date Restriction is on, the header dates are not updated and need to be updated manually by the user.
Note that if the reservation Date From is blank, the header dates are always updated, regardless of the Date Restriction setting.
All Fields Are not Refreshed When a Product on an Activity Line Is Changed
In previous versions the user was allowed to renumber the product selected in the group line, even after the activities had been created. This would cause integrity issues.
Now, when trying to change a product in the group line and activities are already created, the user gets the a message There are existing activities on the previous product - Do you want to delete those activities and continue?
If the user decides to continue, all related activities with the old product are deleted and the user must re-confirm the new changed product and re-create the activities.
Payment Statuses Not in Sync Between Hotel and Activity
The cues in the Reservation card have been changed. The caption for Total Activities has been changed to Total Charges and now it also includes any unpaid additional POS charges.
A bug in payment status handling in Activity Reservation has been fixed. The bug could cause issues when trying to pay POS charges that had been added to a reservation after it had been fully paid.
Voiding a Transaction Causes All Activites to Be Removed
When a user booked an activity on the POS using the BOOKPRODLIST or BOOKPRODUCT operations, immediately pulled the activity into the POS journal using the payment POS commands, and then voided the sale, the booked or confirmed activity was deleted. Now the POS checks if the activity still has POS status DRAFT prior to deleting the activity during the voiding process.
Note that the POS's Draft and Confirmed statuses must always be different settings in order for this to work correctly,
Fashion
Variants Creation Issue in Item Import Journal
When creating items with variants using the Item Import Journal, an issue where the journal could occasionally run into error when the Variant Framework Code assigned to the item had one or more Variant Dimensions with Included in Variant No. enabled, has now been fixed.
Food & Beverages
Codeunit Causes Error on Missing License
The internal codeunit 10000743 (obsoleted) has been moved to codeunit 10015850 LSC Act. Tbl. Mgt Sync Subscr within the Activity Object number series.
LS KDS
KDS Service Runs with Display Station not Found Error
Service flow updates. Fixed an error happening when KDS service runs the update function for KOTs with deals.
Replenishment
Store No. Filter in Retail Sales Budget
An issue where the Store No. filter was missing for Retail Sales Budgets with Budget per Store enabled has now been fixed.