AGR Logo
6.2-r0 master 2020-10-30T12:20:04Z 6.2.0 6.2.0 6.2.0 23 / 150 6.2-r0.zip6.2-r0.zip

6.2-r0

What's new?

New Staging Framework

  • Staging 2.0 officially released and used in all new implementations going forward. The new staging framework standardizes data mapping, has a defined architecture for customizations and will be maintained and updated in future releases/patches like the prod database. The new framework is a step forward towards greater modularisation of the system.

Task Scheduler

New Task Scheduler to schedule forecasts and data transfer​

  • The Scheduler introduces new ways to manage and interact with tasks, whether it is to schedule them, restart, cancel them, disable them, take a look at their history, or just see the progress for that particular run. There is also the option to run a task partially.
  • The new Calendar is interactive and flexes a new interface to schedule tasks and countings as well as serving as an overview of upcoming dates. The new and improved scheduling interface is far more flexible than before, including options to add a specific period, the exact time, and intervals. Furthermore, if a schedule is still not perfect, dates may easily be added or removed by simply toggling them in the calendar - without having to alter the schedule itself.
  • Encapsulates scheduled orders, scheduled counting, and schedules.

System Logging

  • Logging in the system standardized and refactored. This new event logging replaces the old logging with a more unified concept with greater flexibility.

Consultant Features

Features that have until now been maintained by consultants are standardized and included in the release.

  • Connected items ​
  • Bridge Stockout ​
  • Promo Smoothing ​
  • Order Analysis Workspace ​
  • Archiving of Old Orders​
  • Standard Reports - A portfolio of reports that enable effective exception management for analyzing the supply chain.

Workspace Features

Consultant Tools

Performance helping tools for consultants

  • New zys schema – Toolbox to help consultants analyze performance and database statistics.​
  • Ex Views – Views to flatten out tables so you don't have to join multiple tables to get information.

Cloud Translations

  • Translations now managed globally in the cloud (AGR Pool) and a translation_override table added to each setup for private (customer only) translations.
    Translations are retrieved in a background task that is initiated when the client application is loaded.
    Translations are only retrieved if the feature is turned on and there exists any new translations.

Migrations

  • Migrations i.e the support and conversion of old data structures (JSON objects) in the database moved away from the client project and into an external script that runs along with the installer/update scripts.

What does the database scripts change/update?

  • Check the reports (Update this on release)

Known Issues/Bugs

Critical issues and bugs that are persistent in this release Outstanding Issues

Issues

Issues that were addressed and fixed in this release

AGR Service & Scheduler

New Task Scheduler to schedule daily tasks, data transfers, forecasts and more.
The scheduler runs as a service worker (AGR Service) on the same server as the API and takes care of queueing and executing tasks.
The following Pull Requests / Issues were all part of developing the feature.

  • AGR Service DEV-1069
  • Scheduler DEV-1076
  • Api/agr app server check status. - Initial creation of App Service project. PR-226
  • App srv merge - PR-678, DEV-1431, DEV-1434, DEV-1555, DEV-1320, DEV-1578
  • Create scheduler page. PR-186, DEV-1076
  • Create Scheduled Tasks page. PR-389, DEV-1071
  • Delete scheduled tasks. PR-262, DEV-1081
  • Add New Calendar sidebar to the tasks page. PR-313, PR-321, DEV-1077
  • Add timeline to the calendar sidebar to view run times of schedule within a day. PR-334, DEV-1078
  • Create/Edit scheduled tasks. PR-398, DEV-1072
  • Changes in ScheduleMdl, parameter schedules. - PR-349
  • Add multiline edit of scheduled tasks. PR-443, DEV-1082, DEV-1352, DEV-1353
  • Refactor Schedule JSON Object. PR-451, DEV-1363
  • Enable selection/deselection of specific dates for tasks in the calendar. PR-467
  • Update/Rewrite Scheduled Counting to use new type of schedules. PR-573, DEV-1085
  • Move schedules to settings dropdown, remove scheduler from inventory navigation and change tab in scheduler from orders to Scheduled Orders. PR-686, DEV-1596, DEV-1594, DEV-1597
  • Make last day of month a selectable option in the new Schedules component. PR-703, DEV-1320
  • Add task complete parameter and add API route to get single scheduled task. PR-732, PR-737
  • Display in client the status of tasks using web-sockets (SignalR) to notify the client of the state of all running tasks. The client shows a loading indicator and state. PR-685, DEV-1233
  • When tasks are enabled they will run according to schedule. If not enabled they can be run manually. Read-only access implemented for the start/resume/cancellation of tasks. PR-770, DEV-1451, DEV-1639, DEV-1641
  • Fix server error when api/schedules/get_usage is called. PR-790, DEV-1602
  • Fix missing base-dates for intervals in calendar. PR-838
  • Fix issue where the calendar "looks drunk" when toggling dates because of inconsistent date list in weekly. Correct how ApplyToggleDates is called with period. PR-827, DEV-1680
  • Fix issue where interval couldn't be changed/edited for daily task. Initial load tasks updated. PR-845, DEV-1716
  • Let user navigate without warning when the calendar is not showing. PR-845, DEV-1694
  • Fix input fields not filled correctly after saving schedule. PR-845, DEV-1696
  • Fix next run time in calendar not updating when task is disabled. PR-861, DEV-1724
  • Fix null value error in the delete route after creating a Counting without a schedule. PR-858, DEV-1712
  • Avoid calculations of dates (result of schedule setup) before baseDate for all intervals. Calendar having trouble when interval was >1 PR-885, DEV-1679
  • Fix the calendar timeline, times not showing up. Refactor, move logic from child to parent components. PR-871, DEV-1719
  • Change format of time interval to use minutes instead of time (e.g HH:mm). PR-892, DEV-1718
  • Fix error when saving monthly tasks. PR-899, DEV-1767
  • Make the scheduler read only so anyone can see the scheduled dates while schedules.mod feature privileges are required to modify schedule. PR-877, DEV-1704
  • Correction on setting in app service, setting.group_id missing. - PR-754
  • Rewrite Scheduled Counting to use new type of schedules. Model updated in client, api and database. PR-573, DEV-1085
  • Changes for process bar and history status so that the task progress shows when you load the page. PR-769, DEV-1637, DEV-1638
  • Fix percentage calculation (task progress) when executing tasks with partial option. PR-884 DEV-1736
  • Fix an exception in app-service when creating manual orders. Exception was caused by null value passed to @task_name parameter in stg.event_task_start procedure.PR-759

Client 6.2.0

  • App Bootstrap / Login - Add alert message and console error when app initialization fails in the process of retrieving settings or translations. PR-859 DEV-1731
  • Chore - Update dependencies and client framework to Angular version 9/10 DEV-867, PR-198, PR-251, PR-374, PR-739, DEV-1630
  • Cypress E2E - Lay the groundwork for future e2e testing with the cypress framework. PR-619, DEV-1529
  • Datepicker - Fix how first day of week is retrieved for Datepicker in app. Remove outdated config. PR-894, DEV-1760
  • Dashboard - Fix layout in dashboard settings modal. DEV-1101
  • Dashboard - Fix console error in dashboard and update what is displayed when there’s no dashboard elements in chart. PR-244
  • Dashboard - Fix colors in Dashboard KPI's; show colors depending on target / lower level ranging goal. PR-904, DEV-1621
  • Demo Mode - Add demo mode feature, enabling setups to be locked at a certain date. PR-615, DEV-1089
  • Grid - Update grid colors. Row hover color removed, row focus color added, highlighted cells background color is grey instead of blue. Odd row background colors in data grids removed (items, report details and orders). PR-704, DEV-1568
  • Locale - Save locale users settings in the database (used to be in browser local storage). DEV-1165
    • Fix issue where site was not refreshed after language change. PR-730, DEV-1626
  • Locale - Add ~60 new locales to the system. This way we are less likely to have to update the client when adding new language support (translations + locale file) to the system. Locale files are imported on demand in the client (dynamic imports) so unused locales don't have to be retrieved on app bootstrap/download. PR-890, DEV-1748
  • Migrations - Remove client-side migration for workspace views and order grid views. DEV-926
  • Navigation - Add filter in main dropdown navigation to filter/search for menu items. PR-689, DEV-1470
  • Orders - Fix order logic methodology setting. 3 possible settings; standard, minmax and ifmax. PR-531, DEV-1231
  • Reports - Fix bugs in create report modal. Select visibility wasn’t working, labels weren’t resetting. PR-682, PR-845 DEV-1570
  • Roles - Fix new roles not saving features immediately. It is now possible to start editing roles immediately after creation. PR-880, DEV-1749
  • Translations - Refactor Translations Service so it can be used in model classes directly as a static function. DEV-1014
  • Translations - New dynamic placeholder variable for translation strings. PR-607, PR-681, DEV-1509, DEV-1593
  • Workspaces - Refactoring of the serie checkboxes functionality. PR-220
  • Workspaces - Save column sort in local storage (user state) in workspace columns. DEV-1060
  • Workspaces - Fix saving/loading of workspace grid state. PR-285
  • Workspaces - Update links between workspaces so they can set drilldown values in targe view from source view. PR-286
  • Workspaces - Add edit.readOnlyIfNull to serie config that make cells only readable if they have null values. DEV-569
  • Workspaces - Make the Item Card available in workspace views by setting the workspace view config itemCard.idColumn. DEV-1242
  • Workspaces - Add tags/labels to dataseries to hide/show groups of series. PR-355, DEV-1173
  • Workspaces - New Date Filter​ to filter date data in grids based on column value constraints. PR-377, DEV-892
  • Workspaces - Make lookup filter always available for columns, so that some workspace columns have 2 filters (e.g. Date and Lookup). DEV-1366, PR-445
  • Workspaces - Format date values in drilldown and lookup filters. DEV-1367, PR-445
  • Workspaces - New Number Filter to filter numerical data in grids based on column value constraints. DEV-891, PR-454
  • Workspaces - Make JSON an editable cell type in workspaces. A JSON editor is opened in the client when JSON values are edited. PR-494, DEV-1400.
    • Fix issue where JSON type cells were not saved to the database when editing. PR-842, DEV-1707
  • Workspaces - Add Advanced Filter​ to workspaces views using a subset of the TSQL syntax. This enables complex queries being added to workspace views which are validated on both the client and api to protect from executing insecure queries. PR-457, DEV-562
    • Make info tooltip position dynamic for Advanced Filter. PR-851, DEV-1706
    • Enable locking for advanced filter. PR-852, DEV-1711
    • Use column captions when constructing a filter in the Advanced Filter user interface. PR-864, DEV-1623
  • Workspaces - Fix missing first character when starting to edit an editable cell with lookup selection (dropdown). PR-848, DEV-1730
  • Workspaces - Remove/Disable grid column filters for data-serie columns. PR-853, DEV-1703
  • Workspaces - Fix formatting of false values being displayed as empty string e.g '' instead of 'false' in grid columns. PR-857, DEV-1713

API 6.2.0

  • Clear Cache - Add clear cache endpoint in API (Reset IIS) and call it whenever the indexedDB is cleared from the client. PR-712, DEV-1080
  • DB new logging - PR-458
    • Fix event logging in app-service, should log to prod and not stg database for orders and forecasts. PR-832, DEV-1690
  • Dynamic Forecasts - Forecast cleanup, refactor dynamic_forecast_merge_data. Remove forecast_runs. PR-721, PR-740, DEV-1432
  • Error messages - Error message improvements, order constraints. PR-706, DEV-1398
  • ERP Connector - ErpCommon, ErpConnector, Ax, Jira, Nav and Sap projects added to AgrAppService. PR-264, PR-469
  • Forecast - Add confidence_factor for logging in the forecast table. Can be used to find forecasts that need to be re-created. PR-711, DEV-1619
  • Forecast - Add forecast batching mechanism to enable scheduling store and warehouse batches separately. Location batch table used for parallel forecast enabled for normal forecasts as well. PR-708, DEV-1555
  • Forecast - Cleanup duplication. Remove step which deletes forecast data per location. PR-726, PR-728 DEV-1538
  • Forecasts - Move the date of Skip Forecast to Date to the first day of the month/week in forecast calculations if the date is recorded in the middle of the period (month or week). PR-765, DEV-1627
  • Forecast - Fix Skip Forecast to Date not working when there is only one salepoint. PR-900, DEV-1734
  • Holidays - Fix every year calendar events not working properly in Holidays.cs. PR-582, DEV-1487
  • Item Card - Make sure the image_id property from item_details is returned at the api/items/{id} route so the image id column can be used to construct the url/address to item images in the item card. PR-755, PR-797 DEV-1448
  • Item Card - Make the recalculate button/function in the item card trigger creation of new forecast for the item. PR-751, DEV-1088
  • Notifications - Refactor notifications to be set in queue rather than posting directly to api, this fixes an issue where App-Service notifications were blocking network calls. PR-874, DEV-1677
  • Reports - Delete private reports that belong to a user when the user is deleted and assign his public reports to the system user. DEV-730
  • Reports/Items - Improve upon issue where errors were occurring when editing views in reports/items. Fix concurrency error in delete mbe-filters. PR-889, DEV-1533
  • Translations - Retrieve translations from the AGR Pool, cloud server. New translations are only retrieved if there exist any changes. PR-714, DEV-1264
    • Make cloud translations a togglable feature core.settings. PR-835
    • Have the translations be retrieved in a background task which is initiated when any user loads the client application. PR-863, DEV-1726
    • Fix duplicate key error when using SQL Truncate statement instead of Entity Framework properly. PR-876, DEV-1264

Databases 6.2.0

  • Roles - Update initial load of user roles, add roles for modules. DEV-1107
  • BM - Remove old BM from repository PR-392
  • Staging 2.0
    • Product Assortment - PR-446
    • Product Groups - Add vendor missing and no group rows. Product group and primary vendor set to -1 by default. DEV-1369, PR-447
    • Product Structure - Add new product structure tables in the inventory module. PR-499, DEV-1252
    • Item Order Routes - Create standard mapping for item order routes. Default setting so that all stores order from all warehouses and all warehouses from primary vendors. PR-501, DEV-1253
    • NVARCHAR - Changes VARCHAR to NVARCHAR on staging 2.0. PR-642, DEV-1560
    • ctr.execute_stg_run - Add group_run_list as parameter in ctr.execute_stg_run. Allows a consultant to run a list of staging elements. PR-695, DEV-1349
    • Raw Clarifications - Remove description from raw.stock_level, fix min/max columns missing in raw.product_assortment. PR-690, PR-744, DEV-1601
    • BOM - Add BOM to raw and prep. PR-713, PR-743, DEV-1605
    • Placeholder Views - Proved placeholder views when stg2 is installed and not connection to NAV. PR-733, PR-735, DEV-1611
    • Settings - Add naming convention for settings in stg2. Module names added and grouping. PR-741, DEV-1575
  • Data Elements - New JSON Config for data element series. Use native JSON parsing in MSSQL. DEV-1174, PR-448
  • Views - Add ex view for multiple tables, making it easier to work with them in SQL Studio. PR-375, PR-452, DEV-1301
  • DeQuery - Add operators for relative days, weeks, months and years to work with the new Date Filter in workspaces. DEV-1323
  • Refresh Date - Update get_target_table_refresh_date.sql. PR-474
  • New Logging - Design of new logging strategy. DEV-1026, PR-484, PR-487
  • Workspaces - Fix lookup filter for bit values, true/false (0, 1). DEV-1325, PR-489
  • Forecasts - Dynamic forecasts, daily distributed forecasts. dynamic_forecast_merge_data.sql grouping values by period grouping of output series. PR-491, DEV-1303
  • Orders - Remove order_line_status table. PR-523, DEV-1411
  • zys - Add various admin helper functions/procedures to the zys schema. PR-581, PR-612, PR-644, PR-687 DEV-1226, DEV-1567, DEV-1301
    • Helper Procedures - Add helper procedure to create new ERP tables. Add mbe_add_column procedure, improve mbe_report_add procedure etc. PR-752, PR-760, DEV-1549
  • Inventory - Fix stock out/promo smoothing. Input values fetched from [core].[setting].
  • Migration - Add migration events to initial_load. PR-592, DEV-1382
  • Order Analysis - Create new order analysis workspace. PR-495, PR-606, PR-645, PR-693, PR-698, DEV-1347
  • Demand Processing - Add capability to create single order for all items for MBE statistics. PR-589, DEV-1274
  • DB Cleanup - Many many things. PR-577, DEV-1446, DEV-1437, DEV-1401, DEV-1409, DEV-1118, DEV-1460, DEV-1489
  • Staging - Revert lead time function. Wasn’t returning correct values. PR-610, DEV-1485
  • Promo - Add invalidation to forecasts for changed items. PR-636, DEV-1376
  • System health - Add translations for forecasts in system health. PR-611, DEV-1292
  • Translations - Add translation_override table to store overrides of global/base translations. PR-605, DEV-1263
  • MBE - Changing Datetime to Date columns in mbe_item_statistics.sql. PR-637, DEV-1502
  • Connected Items - Invalidate forecasts when new connected items arrive. PR-631, DEV-1375
    • Connected Items - Fix issue where changing one date changes dates for all items. PR-844, DEV-1708
  • Inventory - Fix missing primary vendor id in inv.product_item causing the data transfer to fail. PR-641, DEV-1498
  • Staging - Add default item_map settings. PR-654,
  • Cleanup - Fix data type discrepancy, change datetime to date etc. PR-668, DEV-1561
  • Estimated Stock - Fix stock series not taking into account reserved quantity. PR-664, DEV-1569
  • Cleanup - Datatype overhaul, review and migrate VARCHAR to NVARCHAR. PR-674, DEV-1566
  • Bridge Stockout - Rewrite inv.histories_bridge_stockouts with new logic and add days_back_to_search_for_sale parameter back to logic. Settings moved from prod to stg. PR-700, DEV-1586
  • Workspaces - Clean up view JSON, empty objects and arrays saved to the view JSON in the database. Remove deprecated properties in initial load. PR-697, PR-707, DEV-1607
  • Order logic - Order logic fortification. Make the input to demand_processing_calc_run stricter to prevent errors in the output. PR-702, DEV-1615
  • System health - Refactor system health to accommodate custom checks and better messages in the system health dashboard widget. PR-722, DEV-1579
  • Item Card - Always show stock history in chart even though there are no sales in the history for the period. PR-727, DEV-1585
  • Lost Sale - Split lost sale into 2 settings. lost_sale_warehouse and lost_sale_stores. PR-717, DEV-1507
  • Orders - Fix issue with user access and inactive items. If item no is changed to inactive before order is confirmed (e.g. order sitting in AGR system for 3 days) the user access select removes the whole order from the user that is restricted to location. PR-716, DEV-1455
  • core.stg_group_element - Add active column to core.stg_group_element so element can be disabled to disable element inv_run_demand. PR-746, DEV-1556
  • Settings - Change group_id column to group_key in the settings table. Change setting_group_name to group_name and event_origin to origin_name. PR-742, DEV-1620
  • Item Card/Chart Data - Remove invalid column name origin which was causing the API to throw a 500 server error when calling procedure update_chart_data. PR-757, DEV-1643
  • Update/Migration - Data element series SQL migration. Mapping and data changes that have to be taken bare of for a successful update to 6.2. PR-756, PR-891, DEV-1148
  • Tasks - Add a Staging run for monthly or weekly forecasts and add a task for it (Scheduler). Daily and forecast tasks. PR-749, DEV-1634
  • Reports - Add new standard reports to the Inventory setup. Based on scripts from Thorunn, Elva and Palmi. New standard reports, new standard report views, new standard report columns, procedures and more. PR-723, PR-768, PR-778, PR-836, PR-850, PR-866, DEV-1537
    • Reports/Orders - Modify standard reports initial load and order analysis initial load so the procedures can be run later by consultants and are run with the upgrade procedure. PR-810 DEV-1670, DEV-1671
  • Staging, Custom Objects - Make sure the core stg engine replaces tables, views, procedures etc. with elements from the cus schema. Example: if a customized raw_stg.product_info view is created it should be used automatically instead of raw.product_info. PR-767, DEV-1648
  • Initial Load - Remove/fix deprecated properties in initial load. PR-697, DEV-1607
  • Staging 1 - Various fixes for Staging 1 to make sure it works after updating to version 6.2 PR-775, DEV-1665
  • Staging - Return element captions column from the stg_run_get_element_list for translations. Added stg element name to list. PR-779, DEV-1658
    • Staging - Fix app-service server side elements logging. Element names instead id's, logging in staging and prod. PR-834, DEV-1658
  • Settings - Rename demand days settings for consistency in the app. Fix discrepancy in Constants.cs vs setting.name in the database. PR-811, DEV-1486
  • Logging & Migration - Attempt to upgrade procedures that are supposed to be customized and see if we can replace the part in the procedures that handles logging to utilize the new logging mechanism. The procedures are; post_order_run, scheduled_order_post, scheduled_orders_post_order_run_custom, mbe_item_custom_populate. PR-816, PR-818, DEV-1669
  • Staging - Lock schemas on Staging that don't start (aren't prefixed) with erp or end with cus. Added tr_ddl_core_schema_locking trigger which notifies if you are not allowed to change objects. e.g "Check the core.schema_locking table for setup of schema locking and consult the customization section in the technical manual for further instructions." PR-802, DEV-1652
  • Update Script - Make sure old error_log and action_execution tables are backed up. PR-826, DEV-1676
  • Staging - Update initial_load_stg_core.sql so that names of both @agr_prod_db and @agr_stg_db are retrieved from ctr.data_transfer_settings. PR-828
  • Planned Orders - Fix error where planned orders weren't being created. PR-837, DEV-1651
  • Orders - Fix reserved missing from unitqtycalc and unitqtyresult in [dbo].[orderprocessinginitialize]. Reserved was only affecting stockagg and not unitqty calculations. PR-837, DEV-1685
  • Item Card - Fix missing order quantity column series in item card graph. PR-843, DEV-1728
  • Staging - Add group relation element core_product_group_relation_stg_to_prod to core.stg_element. Missing when executing core.stg_run_tree. PR-868, DEV-1739
  • Staging - Add a flag in stg_elements that enables the engine to add columns in the target merge table if it is missing. PR-875, DEV-1654
  • Staging - Allow null values in nav.items on staging. Fix stg element framework handling of numeric vs decimal data types properly. PR-875, DEV-1747
  • System Health - Fix error where the system health says everything is fine while the Scheduler reports an error. PR-882, DEV-1752
  • Dashboard - Fix null value where clause in fn_mbe_where_clause_flat for deleted = 1 columns. Fix core.schema_locking data in initial_load procedures. Delete core.stg_run_tree. PR-887, DEV-1705
  • Staging - Fix issue where staging framework is trying to execute server side elements. When running runs or single elements manually it will attempt to run server side elements. PR-895, DEV-1761
  • Staging - Standard flow through staging for item_extra_info and more misc fixes. PR-906, DEV-1653, DEV-1761, DEV-1775, DEV-1783
  • Staging - Fix bridge stockout missing from daily run. PR-907, DEV-1758