What's New - Margin Master

What's New

Stay up to date with the latest features, improvements, and fixes

What's New in Margin Master

Stay up to date with the latest features, improvements, and fixes.

MarginMaster v2026.413.27192 v2026.413.27192

April 13, 2026 1 change
Bug Fix 1 item
  • MAP and IMAP price levels now preserved in custom groups

    When opening a custom group configured to use Ace MAP Price or Ace IMAP Price, the price level dropdown would incorrectly reset to "Not Set (N/A)" and the pricing rule would be lost. The application now correctly recognizes and restores these two price levels alongside the existing MSU Retail option.

MarginMaster v2026.410.27980 v2026.410.27980

April 10, 2026 13 changes(3 deployments combined)
New Feature 2 items
  • Ace zone display in Store Matchup

    Added a new read-only "Ace Zone" column to the Vendor/POS Store Number Matchup screen that shows the assigned zone from Ace's zone records. This column displays zone 99999 (national pricing) for stores without official zone assignments. The column is visible only for Ace Hardware stores.

  • Zone override capability

    Added a new editable "Zone Override" column that allows users to set a different zone that applies to all 9 Ace departments for a store. This uses the existing GlobalFileConfig ZONE_OVERRIDE mechanism and is particularly useful for assigning zone pricing to defunct stores or stores that lack official Ace zone assignments.

Improvement 1 item
  • Zone override detection logic

    Added properties to detect when a zone number has been manually overridden versus using the Ace-assigned value. The system compares the current zone against the original Ace assignment and automatically removes the override flag if the user enters the original zone number.

Bug Fix 6 items
  • StoreNumber missing from database queries in single-store mode

    Fixed issue where StoreNumber column was excluded from database queries when customers hid it from the grid (common in single-store setups). The column selection logic only included visible grid columns, causing Dapper to map StoreNumber as null even when data existed. Now StoreNumber is always loaded regardless of grid visibility, ensuring SKU detail saves can match records correctly.

  • StoreNumber field now loaded even when hidden from grid

    The StoreNumber column is now always included in database queries, even for single-store customers who hide this column from their pricing grid. Previously, when saving SKU detail changes or exceptions, the system couldn't match records to stores because StoreNumber was null, causing save operations to fail silently.

  • Single-store fallback missing in SKU exceptions dialog

    Added missing single-store fallback logic to SkuLevelExceptionsViewModel's store number loading. The pre-loading cache and database queries only checked SelectionLists table, which doesn't contain StoreNumber entries for single-store customers (selection boxes aren't built for single-value fields). Now falls back to querying mainTable directly when SelectionLists returns empty or only "ALL", matching the behavior added in PR #370.

  • Store selection fallback for SKU exceptions dialog

    Added fallback logic to populate the store selection dropdown in the SKU Exceptions dialog. For single-store customers, the system now queries the mainTable directly when SelectionLists doesn't contain StoreNumber entries (which occurs when only one unique value exists and no selection box was built). This ensures the store dropdown is always populated correctly.

  • Null-safe string comparisons in SKU detail save

    Replaced instance .Equals() calls with static string.Equals() for SKU and StoreNumber property comparisons throughout the SKU detail save path. This prevents null reference exceptions when comparing potentially null values during record matching and filtering operations.

  • Improved string comparison reliability

    Replaced direct string equality checks with string.Equals() throughout SKU detail save operations to prevent potential null reference errors when comparing SKU and StoreNumber values.

User Interface 3 items
  • Visual indicator for overridden zone assignments

    The Zone Number column in the Epicor/MySQL Import Manager now displays overridden values in blue bold text. When hovering over an overridden zone, a tooltip shows the original Ace-assigned zone number. This visual feedback makes it immediately clear which stores are using custom zone assignments versus their official Ace zones.

  • Type-ahead search enabled for configuration dropdowns

    Added incremental search and item highlighting to the Primary Vendor, RSC, and Point of Sale System dropdown menus in the Store Configuration window. Users can now type partial names to quickly jump to matching items rather than manually scrolling through long lists.

  • Enhanced Store Matchup screen for Ace Hardware

    Modified the Store Number Matchup screen to load zone data from AceStoreDepartmentZoneRecords on startup and save zone overrides when the user clicks Save. The new columns appear only for Ace Hardware customers and integrate seamlessly with the existing store matching workflow.

Documentation 1 item
  • Zone override instructions and guidelines

    Added a new "Overriding Zone Assignments" section to the data import documentation explaining when and how to override zone numbers, how to clear overrides, and the requirement to sync or rebuild after making changes. Also clarifies that zone 99999 is the national/default pricing zone used when stores lack specific zone assignments.

Retailersoft, Inc.
Tools for Success
Connect with us

© 2026 Retailersoft, Inc. All rights reserved.

Loading...

Reconnecting to the server...

This usually takes a few seconds.