Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Coming next release

Country

ModuleDescription

Pricer

Add 'Discount' as a value to presentation (RTC-

...

Profiles and teams have a country value. Existing store groups have no country. This value is required for new profiles, and optional for teams. Teams marked as price zones have same country as assigned profile. Country can be selected when creating profile or team, and edited using modal in three dots menu on store group details page.

When editing store, only store groups from correct country can be selected.

If there is difference in country in existing stores and store groups, there is a warning at the top of store group details page. It is also displayed after country of store group is changed (stores remain in country of company).

Country column is added to profiles, teams grids and list of stores in store group details.

...

42203)

When item has active promotion price, presentation property in Pricer has value 'DISCOUNT'. In other situations - no promotion price, planned promotion or stopped promotion presentation value is 'NORMAL'.

Store Service API

GET request for stores (RTC-42827)

Get request in Store Service is supported: api/gateway/Stores. Contract is based on the contract for store export except the following things:

  • 'id' field is added in API contract,
  • 'localStoreNo' is nested in 'identifier',
  • 'localStoreNo' is added in 'relatedStores',
  • 'storeHours' are grouped differently.

Endpoint is limited to return max 100 stores. Authorization token is required.

Image Added


...

Release 17.07.2024

ModuleDescription

System

Fix bug: Translations (RTC-39728)
Translations are correct after removing local storage.

Import from Chain Web

New company for store (RTC-39641)
New company is properly created when store is imported with organization number and country that does not match any already existing company in Store Service.


...

Release 21.03.2024

ModuleDescription
Country

Turkey (RTC-38817)

Turkey can be selected as a country of company, store, profile, team or postal code. Country can be set through import and is exported with code TR.

Store service

Fix: Description of fields marked as optional (RTC-37753)

In store import contract schema, description of field marked as optional is displayed (currently it is only replenishmentEnabled, other fields are only nullable).

System

Fix: Exception handling (RTC-28779)

If there is an error related to the database, the error is written in the error text field in FlatBatchJson table, 10 times retry and then FlatBatch and FlatBatchJson have a status of 4.

New framework for user interface (RTC-37797)

Store management is upgraded to framework versions Angular 16 and Kendo 12.


...

Release 18.01.2024 

ModuleDescription
Store

Inventory related translations (RTC-35163)

'Inventory' and 'Inventory management in use' Swedish translations are changed.

Replenishment flag (RTC-36275)

'Replenishment' flag is set to 'True' by default. It is displayed in 'Inventory' section of store details page, when creating new or editing existing store. Value is exported to Excel file and blob storage. Value can be set through import of Excel file and import from 3rd party (it is optional in both, set to True if not specified).

Create price suggestions flag (RTC-34337)

'Create price suggestions' flag is set to 'False' by default. It is displayed and can be set/edited only on Profiles. Value is exported to blob/file.

Excel import

Fix: External store number validation (RTC-34864)

It's possible to update the store with (not empty) external store number using Excel import.

System

Fix: Exception handling (RTC-35478)

Apart from the exception in the database and log in the Integration Platform, the execution of job is 'Completed with warnings'.


...

Release 03.11.2023

ModuleDescription
Country

United Kingdom and Iceland (RTC-34482)

United Kingdom and Iceland can be selected as a country of company, store, profile, team or postal code. Countries can be set through import and are exported with codes GB and IS.


...

Release 06.10.2023

ModuleDescription
Import

ExternalStoreNo and storeNo in 3rd party import (RTC-32637)

If at least one of the 'storeNo' and 'externalStoreNo' is correctly specified when importing the store and the other is null, the null value is ignored.


Import file with thousands of rows (RTC-34237)

StagingImport job does not fail when one imported file contains over 4000 of JSON rows.


External store number (RTC-31286)

There is a validation while importing Excel file with stores: External store number must be unique within a company. If there are two or more shops with the same company and the same external store number in the file then only the first record from the file will be added.

Store

Global location number is unique (RTC-33526)

Global location number of store is globally unique value. Validation occurs when value is already used, when creating or updating store. In case of existing duplicates, global location number is set only for the first store, for the remaining null is assigned. In import from BackOffice, duplicates are saved with null value. In import from 3rd party, row with duplicate is validated and not imported. In import of Excel, validation in user interface happens if duplicate exists in database, and row is ignored if there are duplicates in one file (to be handled with warning notification in future).


GLN translations (RTC-32596)

Global location number (GLN) translation to Norwegian and Swedish is changed.

System

Database compatibility level (RTC-32039)

Compatibility level on databases is set to 150.


...

Release 25.07.2023 

ModuleDescription
System

External store number (RTC-30648)

Empty value is always saved as null in the database for ExternalNumber instead of empty string.

Upgrade to LibBackEnd 5.4.0 (RTC-33212)

LibBackEnd updated in order to support notifications and Azure SignalR.

Migration to .NET 6 (RTC-28896)

Store Service module is migrated to .NET 6.


...

Release 15.06.2023

ModuleDescription
Import

Export/Import External store number (POS system) from Excel (RTC-32531)

'Ext. store number (POS system)' column is added to store export to Excel. Value can be updated through Excel import. Existing values can be cleared by importing "NULL" in cell.


...

Release 21.04.2023

ModuleDescription
Stores

External store number validation and import (RTC-30766)

External store number must be unique across the company (organization number and country). This is validated in user interface and 3rd party import (Excel validation in another story).

When Chain Web on-premise is master of stores:

  • ExternalStoreNumber is imported from Chain Web as ExternalNumber in Store Service instead of ExternalNumberPos.
  • Existing values of ExternalNumberPos in cloud are not removed, but are not imported from Chain Web.
  • In case of duplicates of ExternalStoreNumber in one company, store is imported with Duplicate postfix to make value unique.


...

Release 07.03.2023

ModuleDescription
Export

Opening hours (RTC-29164)

Store opening hours and special dates are exported as described in Swagger documentation.

Store details

Franchise store flag (RTC-12179)

A store can be marked as 'Franchise store' using checkbox in 'Store details' section on new store/edit store details page. Value is exported to blob as 'isFranchise'.

Store Service

Opening hours in Store export contract (RTC-28717)

Opening hours are added to export documentation in Swagger as 'storeHours' field. Export is not yet extended.


...

Release 01.02.2023

ModuleDescription
Import

Import companies from Excel (RTC-26694)

Companies can be imported from Excel file using 'Import' button in the 'Companies' view. Required columns are "Company code", "Company name", "Country", "Organization no.". Exported file with companies should be used as import file template. Import can be used to create new and update existing companies. Companies are identified by "Country" and "Organization no." pair ("Organization no" unique within "Country". "Company code" and "Ext. company no." must be unique. Companies can be deactivated using file when all stores within company are inactive. "VAT no." column is ignored in Norway and Sweden - value is generated as in user interface. Existing values can be cleared by importing "NULL" in cell. When an import is finished, the user gets a notification.

Import from Chain Web

Remove obsolete validation when importing stores from OnPrem (RTC-25000)

Stores are imported properly when: post code is empty, city is empty, close date is before opening date, local store number is 0, phone is not valid for given country code.
Phone is validated to be a number. Spaces are removed from number to make it valid. Country calling code prefix is added.
Store groups with type 'Common' and 'Default' are skipped instead of failing.


...

Release 05.01.2022

Define opening hours per store

(RTC-26905)

There is a 'Manage opening hours' button in store details page. It is visible regardless of 'Use opening hours schedule' checkbox state.

Image Added

Button opens page with two tabs: 'Opening hours' and 'Special dates' with same design and rules as in register. Values are displayed in store details. 'Opening hours' can be set only when the store does not have 'Opening hours schedule' from register assigned.
When 'Special date' is set both in store and register, value from store is displayed in store details.

Image Added

Image Added

Improvements

ModuleDescription
Export

Export companies to Excel (RTC-27807)
There is a button 'Export to Excel' in the 'Companies' view. It exports companies from register to the Excel file. User can narrow results by applying filters in columns in the grid. Exported fields are:

  • Company code
  • Company name
  • Country
  • Organization no.
  • Ext. company no.
  • VAT no.
  • Is active
  • Company address line
  • Company address line 2
  • Company postal code
  • Company city
  • Invoice address line
  • Invoice address line 2
  • Invoice postal code
  • Invoice city


...

Release 15.12.2022

ModuleDescription
Export

Store groups country (RTC-27849)

Country of store group is exported as CountryCode for each store group assigned to store. Store groups without country are exported with null value. Re-export of stores is triggered when country of assigned store group is edited.


...

Release 22.11.2022

ModuleDescription
Opening hours

Special dates (RTC-25596)

There is a 'Special days' section in the 'Opening hours' page. It shows all days from the current year when store is not open as defined in standard opening hours. After pressing 'edit special days' button, another page is opened, where special days can be set. New special day can be added by a panel at the top of the page and existing special days are visible in the grid below. Future days from the grid can be edited by clicking a pencil button in the row. Then 'edit' modal shows up where changes can be entered. Future days can be also removed by clicking a bin button in the row. Then 'delete' modal shows up where confirmation of deleting is needed. If selected day has breaks, there is a question in the modal whether remove all breaks from this day or only currently selected break. Working special day can contain maximum 4 time breaks and must contain date, open time and close time. If special day is set as not working day, there is no possibility to set time or breaks.

In order to view and edit special dates following common roles are needed:

  • View opening hours and special days: required to view 'Opening hours' page.
  • Edit opening hours and special days: required to create, edit and remove special days. This role cannot be selected without view permission.


Assign store to opening hours register (RTC-25784)

On store details page there is a section for 'Opening hours', which contains 'Use opening hours schedule' checkbox. By default, stores are not using any opening hours register. Once checkbox is checked, dropdown appears, where user can choose one of active opening hours schedules from the register. When a schedule is selected, its data is displayed below dropdown: opening hours for each weekday and special dates in current year (same as in opening hours register details page).
Opening hours and special dates in register and store details are displayed in user region format. Dates from current year are displayed in ascending order.


...

Release 30.09.2022

Store migrations

(RTC-18104)

There is a tab in 'Teams' view named 'Store migration'. It contains grid with store migrations within price zones. The user is able to add store migration for a specific day using the panel on the top. A store can be moved to a new price zone only within store's profile and there is no possibility to add two migrations for the same store in one day. After migration, the row in the grid is set to 'Done' but if the store was already in target price zone, the row in the grid is deleted. Done migrations are hidden by default. The user is able to remove not done migrations. Creating a new store with price zone or editing store's price zone results in new 'Done' rows in the 'Store migration' grid (in both cases - using user interface or by import).

Improvement

ModuleDescription
Import/Export

Rename date fields (RTC-25815)

UTC postfix is added at the end of date fields in contract: 'openDateUTC' and 'closeDateUTC'. 3rd party must use those names in import of stores. Export of store to JSON contains date in UTC both with old and new name of field (fields without postfix are marked in contract as deprecated).


...

Release 22.09.2022

Country

(RTC-22622)

Profiles and teams have a country value. Existing store groups have no country. This value is required for new profiles, and optional for teams. Teams marked as price zones have same country as assigned profile. Country can be selected when creating profile or team, and edited using modal in three dots menu on store group details page.

When editing store, only store groups from correct country can be selected.

If there is difference in country in existing stores and store groups, there is a warning at the top of store group details page. It is also displayed after country of store group is changed (stores remain in country of company).

Country column is added to profiles, teams grids and list of stores in store group details.

When store group is created via import of excel or through API, country of store group is the same as company country. Store groups imported from Chain Web do not have country.

Improvements

ModuleDescription
Postal codes

Store and company details views (RTC-22548)

Postal code dropdown returns postal codes for all countries when country is not selected in the dropdown.

Price zone

Fix select/unselect all buttons (RTC-25277)

When editing stores selection in price zone, 'Select all' and 'Unselect all' buttons affect only stores in grid which are possible to select (does not select stores that are already part of other price zone, and does not unselect inactive stores).

Stores

Use default profile and team (RTC-24774)

Default profile and price zone are auto-selected when creating new store. When there is no default value, no value is selected. Country of store group is not yet supported (validation message appears on save when country don't match).
Region cannot be marked as default (there is no column in grid and no button).
When creating store from company details page, company of store is selected and cannot be changed.

System

Showing date and time in grids (RTC-25450)

Time (in grey font) is visible in every date column in every grid in Store Management. Filtering in these columns is at the date level.

Teams

Link in the "Name" column (RTC-25588)

Team view has link in the "Name" column instead of arrow on the right. "Name" column is not possible to hide from the grid.


...

Release 09.09.2022

Opening hours

...

There is an 'Opening hours' view in side menu which contains grid with hours schedules

Image Added

. New schedule can be created by pressing a button at the bottom of the page. Schedule has code, name and description. Code and name are required, and code must be unique.

Image Added

Existing schedules can be opened by clicking on the link in the 'Name' column.
In the schedule view, there are details of schedule which can be edited using modal window. There is also a 'Standard opening hours' section.

Image Added

'Edit standard opening hours' button opens view, where setting working days, hours and breaks is possible. There can be maximum four breaks per day.

Image Added
There is also a possibility to activate/deactivate existing schedule from 'Opening hours' view. If schedule is inactive it still can be edited but in the details view there is a message that this schedule won't be available in the system.

...

  • Export all stores: required to view 'Export all stores' page.

Improvements

ModuleDescription
Store details

Central Warehouse flag (RTC-25257)

A store can be marked as 'Central warehouse' using checkbox in 'General' section on new store/edit store details page. Value is exported to blob as 'IsCentralWarehouse'.

...

  • View profile groups: required to view profile groups.
  • Edit profile groups: required to create, edit, and assign profiles to profile groups. This role cannot be selected without view permission.

Improvements

ModuleDescription
Import

Import of country (RTC-25042)

Country of company imported in Excel or JSON file is saved properly as country of company, company address, company invoice address and store address.

Postal codes

Import Excel with duplicated rows (RTC-25056)

Postal codes are imported properly from Excel file with duplicated rows.

Profiles

Fix for profiles without profile group (RTC-25538)

When a profile has no profile group, it is always possible to activate it.
In store details page, when a store and assigned profile are inactive, profile and profile group are displayed properly.

Store groups

Set store group as default (RTC-24702)

Profile, region and team can be set as default using button in three dots menu in store group details view. It is not required to have default store group. Only one store group of each type can be set as default. If there already is another default store group, it will be unset if another store group is set. Default store group cannot be deactivated. Inactive store group cannot be set as default. Price zone cannot be set as default team. Status of default store group is visible in grid with store groups.

System

Assign stores without or with unsupported country to Norway (RTC-24380)

When store imported from Chain Web on-premise has no country or country that is not supported in cloud modules, it is assigned to company in Norway with matching organization number (or new company in Norway is created). Existing stores and companies in cloud which had no country are assigned to Norway as well.


Re-export stores after (de)activating store group (RTC-25078)

Stores assigned to store group are re-exported after store group is activated/deactivated.

Team

Store search when filtering by profile (RTC-24808)

When managing stores in team, value entered in store search is still applied to grid after profile filter is changed.

...

Stores can be created and updated by 3rd party using JSON file import via File Service. Required format of data is documented in Swagger. File content is validated before saving it (same rules as in user interface). Stores must have store number or external store number. These two are also used when updating existing store (store number has higher priority than external store number). When store is created with only external number, its number will be set to lowest available number.
When file does not contain profile identifier, store will be assigned to default profile. If such profile does not exist, new one is created and marked as default.
When imported store has identifier of store group that does not exist in Store Service, new store group is created with name in format "<store group type> # <store group number>".
External store number is a unique value. Existing duplicates are updated with "-Duplicate" suffix. Field uniqueness is validated when editing store in user interface and in Excel import.

Improvements

ModuleDescription
API documentation

Store Service API documentation (RTC-24234)

Swagger documentation for import has been added.

Export to Excel

Inactive stores filter in Excel (RTC-24696)

Filter on 'Inactive' column in Stores grid is applied properly to 'Is active' column in exported Excel file.

Stores

Store number validation (RTC-24720)

Store number must be a positive, whole number. Value is validated properly when creating new store through user interface, Excel import and blob import.

System

Fix for filter of column with date (RTC-24356)

When filter is applied on date column, after opening row and coming back to grid (using breadcrumbs or back button), date filter applied to grid is displayed properly.


Re-export of updated stores (RTC-24111)

Re-export of updated stores is triggered in database in the same way as in other modules. When updating store group, correct user name is displayed in store audit columns.

...

Postal codes register can be accessed from menu in "Setup" section. Postal code register contains fields: "Code", "City" and "Country". Postal codes can be added, edited and set as inactive. Pair of "Code" and "City" values must be unique. "Code and "City" are alphanumeric input fields, and "Country" is selected from dropdown.
There are two permissions in User Management: "View postal codes" and "Edit postal codes", placed in Store - Postal codes section. These are required to view and edit postal codes register.

Improvements

ModuleDescription
Company

Manage stores (RTC-20675)

  • Using the 'Edit' button on 'Company details' page, we can manage stores in a company. Page looks same as in other store groups - on left there is a grid with stores, and on right the list of stores assigned to the company. In the grid we see active and inactive stores within the company, and active stores from other companies. Stores within a company are visible, but cannot be unselected in this view. Stores from other companies can be selected - after saving, the store will be moved from the old company to this one.
  • Company can be deactivated only if all stores in it are inactive. It is not be possible to add stores to an inactive company. Inactive store cannot be activated if company is inactive.
Export

Edit company (RTC-21032

After editing a company, stores assigned to it are re-exported with new values of the company. This happens only when edited company detail field is included in store export ("Company code", "Company name", "Country", "Organization number").

Store groups

Active' flag for stores and store groups (RTC-21068)

  • A new store is created as active. When creating or editing a store, only active companies, profiles, teams and regions can be selected. When the store is inactive, it is not possible to change selected store groups - these fields are blocked in the store details view. To activate the store, selected store groups must be active.
  • When a store group is inactive, it is not possible to change stores assigned to it. In order to deactivate the store group, all stores in it must be inactive.
  • In the 'Edit' grid on store group level, we see active and inactive stores assigned to the store group and active stores from other groups. When editing profile or region, selecting store there will result in moving store from another group to this one. In teams, it will result in assigning another team. In profiles, it is not possible to unselect store here, so it won't be left without profile.

...

New company can be created by clicking on 'New company' button in "Companies" view. By clicking on company name in grid, we can open company details. In this view we can edit details of the company. Changes are saved using 'Save' button, or canceled using "Cancel". In the grid at the bottom of this page, we can see a list of stores within the company. Clicking on store name opens store details view. Using "Add new store" we can create a new store with company pre-selected.
In company details, "Organization number" is validated based on selected "Country". This value must be 9 digits long in Norway, 10 digits in Sweden and at least one digit in other countries.

Improvements

ModuleDescription
System

Use of breadcrumbs in user interface (RTC-19764)

In store, team, profile, region and company details view, we show breadcrumbs in "<unique id> - <name>" format. When opening store details from the grid in team, profile, region or company details view, breadcrumbs show the correct store group, from which we navigated to this page.


Change tracking (RTC-19983)

Change tracking is retained for 2 days.

...