Product Sales Report Pro for WooCommerce Changelog

Note: In addition to the changes listed here, there may be other minor fixes and improvements that are not noted. For more information about this product, visit the Product Sales Report Pro for WooCommerce product page.

Version 2.2.50 August 10, 2024

  • Add additional caching for line item field names to speed up loading of the report settings page
  • Move the Refresh Fields feature to the Advanced tab

Version 2.2.49 August 10, 2024

  • Change when the field cache update event is scheduled
  • Fix: The Current Stock Quantity field may make the report crash in some cases

Version 2.2.48 August 1, 2024

  • Add caching for order item field names to speed up loading of the report settings page

Version 2.2.47 May 6, 2024

  • Add warning messages in report settings if report start or end time seems to be invalid
  • Fix: Fatal error if getting product taxonomy terms fails during report generation
  • Fix PHP 8 deprecation notice

Version 2.2.46 March 22, 2024

  • Adjusted documentation comments for a hook within the plugin

Version 2.2.45, March 4, 2024

  • Fix: Current Stock Quantity field may cause a PHP error in PHP 8+
  • Fix: Current Stock Quantity field may not be accurate

Version 2.2.44, January 12, 2024

  • Add product fields to the Group By dropdowns in the Grouping & Sorting tab
  • Fix: When not grouping by products, the Taxes field was incorrectly showing 0 for shipping items
  • Fix: Potential PHP warning when not grouping by products, reporting on shipping, and including line item refunds

Version 2.2.43, January 3, 2024

  • Add "Group by products or variations (based on SKU)" grouping mode in the Grouping & Sorting tab, Product Grouping setting
  • Change: If a report column with totals enabled contains a non-numeric value, the total will automatically be disabled for that column
  • Fix: If product filtering matches more than 10,000 products and product grouping is disabled, the product filtering may not work correctly
  • Fix: If a grouping field is selected that is no longer available, the selected field may not display correctly in the group by dropdown
  • Add "Round" checkboxes to the fields list in the Report Fields tab to allow for control over which fields have rounding applied when the "Display amounts with two decimal places" option is enabled in the Display & Format tab
  • Fix: Customer role filtering wasn't working properly with HPOS enabled

Version 2.2.42, November 23, 2023

  • Fix: Group By 2 through Group By 5 settings are missing the Order Line Item heading in the dropdown

Version 2.2.41, November 16, 2023

  • Fix: Custom date ranges result in an empty report in HPOS mode

Version 2.2.40, July 22, 2023

  • Fix: Product category filtering checkboxes may not save in a preset when it is first created

Version 2.2.39, July 7, 2023

  • Remove instruction about date formatting since it is no longer applicable

Version 2.2.38, June 14, 2023

  • Fix: Refund fields are incorrect when grouping by product category (may affect disabled grouping as well)
  • Fix: PHP notice

Version 2.2.37, June 13, 2023

  • Fix: Missing escaping
  • Improve the in-UI note on the "Exclude free products" field

Version 2.2.36, May 19, 2023

  • Fix: Sorting may be incorrect when sorting by certain fields with decimal values
  • Fix: Sort by dropdown was not updated when removing a Group By field

Version 2.2.35, May 1, 2023

  • Fix: Using the "Taxes - <tax name>" breakout fields may cause a PHP error and/or incorrect field values, depending on database configuration and the number of order items represented by each row

Version 2.2.34, April 26, 2023

  • Add High Performance Order Tables support (beta)

Version 2.2.33, April 24, 2023

  • Added text to clarify which fields are affected by the Line Item Refunds setting: "Only the following built-in fields are adjusted for line item refunds (when this setting is enabled): "Quantity Sold", "Gross Sales", "Gross Sales (After Discounts)", "Taxes""

Version 2.2.32, April 21, 2023

  • Fix PHP notice(s) in some cases when refunds are included in the report
  • Add information regarding the Quantity Refunded, Gross Amount Refunded, and Tax Refunded fields: "They require the Quantity Sold, Gross Sales, and Taxes fields to also be included in the report, respectively."
  • Fix: Reporting hook doesn't work if no preset or last used settings have been saved
  • Add the ability to override the Order Period setting in the reporting hook
  • Fix: The "does not exist" operator in the Order Filtering > Only Orders from Customers With Field setting was not working correctly

Version 2.2.31, January 12, 2023

  • Display reporting presets list in alphabetical order

Version 2.2.30, December 19, 2022

  • Added the option to Group by product category to the Product Grouping setting in the Grouping & Sorting tab
  • Added "Taxes - [tax name]" field(s) where applicable to the Report Fields tab, to allow reporting on taxes broken down by tax name
  • Improvement(s) related to the experimental Product Grouping feature in the Grouping & Sorting tab

Version 2.2.29, December 13, 2022

  • Fix: The option to only show a limited number of rows may not work correctly in some cases
  • Clarify HTML Tags setting in admin UI text
  • Add clarification that the totals row will have the total for all rows even if some rows are hidden by the option to only show a limited number of products/rows
  • Rename "Products number" setting to "Row count"

Version 2.2.28, November 2, 2022

  • Fix: Grouping field not added to report fields when selection is made in Group By dropdown
  • Replace some instances of htmlspecialchars with esc_html (fix potential PHP deprecation notice)
  • Add HTML Tags setting in Advanced tab

Version 2.2.27, October 22, 2022

  • Group by fields containing spaces or dashes in the field name are now supported
  • Order item fields containing spaces or dashes in the field name are now supported in the Report Fields tab
  • Fix: Group By 4 and Group By 5 fields may not be recognized as grouping fields in the admin UI
  • Fix: After removing a Group By field, it may not be possible to add a new field

Version 2.2.26, October 4, 2022

  • Change link in the updater code to https://wpzone.co

Version 2.2.25, September 30, 2022

  • Add two additional Group By fields in the Grouping & Sorting tab
  • Fix: When more than one Group By setting is used in the Grouping & Sorting tab, and shipping is included in the report, a database query error may result when running the report, and/or the grouping may not be properly applied to the shipping items in the report
  • Fix: When including line item refunds in the report, refund quantities and amounts may be reported and/or deducted incorrectly when the Group By 2 or Group By 3 setting is used
  • Fix: When products with no sales are included in the report and the Group By 2 and/or Group By 3 setting is used, the report may incorrectly attempt to retrieve the Group By 2 and/or Group By 3 field value from product meta for products with no sales (unlikely to have any negative effect)
  • Fix: The Group By 2 and Group By 3 field values were reported as empty for shipping items in the report

Version 2.2.24, September 1, 2022

  • Add support for filtering orders by customer's WooCommerce Memberships membership plan
  • Fix: For shipping items, customer role filtering was being applied twice in the report query

Version 2.2.23, July 22, 2022

  • Translate dates in the report title and filename, where needed

Version 2.2.22, July 13, 2022

  • Fix: The Current Stock Quantity field shows zero instead of blank for products without managed stock
  • Fix: The product menu order field is not correct for variations with no sales
  • Improvement: The Current Stock Quantity field now reports the total stock of all variations for variable products with variation-level stock management, when variations are reported grouped together

Version 2.2.21, July 6, 2022

  • Fix: Only Products With Field value is cleared when report settings are loaded

Version 2.2.20, June 19, 2022

  • Fix: Current Stock Quantity field may have unwanted zeroes after the decimal point

Version 2.2.19, June 9, 2022

  • Fix: Other line items may have incorrectly been identified as shipping items in rare cases
  • Fix: Shipping method quantities may have been incorrect when the option to include line-item refunds was enabled and the Line Item Count field was included in the report
  • Change customer role filtering to support sites with many customers in the selected role

Version 2.2.18, February 1, 2022

  • Fix: Totaling fields with non-numeric values may cause a fatal error with some versions of PHP

Version 2.2.17, November 3, 2021:

  • Fix: The Display & Format > Products number setting may not work correctly, and may result in inaccurate output
  • Fix: When enabling the Don't group by products/variations setting, a non-existent item may be selected in the Report Fields > Add Field dropdown (additional fix)
  • Fix: The Product Filtering > Product Variations > Report on each variation separately option may cause the reporting query to fail on some database platforms

Version 2.2.16, October 28, 2021:

  • Fix: The Product Filtering > Product Variations > Report on each variation separately option may cause the reporting query to fail on some database platforms

Version 2.2.15, October 15, 2021:

  • Fix: Unnecessary error when temporary file creating fails in default PHP temporary directory

Version 2.2.14, October 13, 2021:

  • Add product taxonomies to the Only Products With Field setting in the Product Filtering tab

Version 2.2.13, October 9, 2021:

  • Security fix: If temporary directory creation fails, the plugin may have reverted to an insecure temporary directory location

Version 2.2.12, September 14, 2021:

  • Change site URL in updater for Divi Space product version

Version 2.2.11 August 9, 2021

  • Fix: When a product with no sales is included in the report, there may be a PHP notice and warning if the Current Product Price field is used, and the field does not work
  • Performance improvement: don't autoload reporting settings option

Version 2.2.10 July 21, 2021

  • Fix: Refund-related fields are incorrectly set to zero if the option to include line-item refunds is not enabled
  • Fix: When refunds are included in the report, the report may contain an empty line

Version 2.2.9 July 16th, 2021

  • Fix: Incorrect information in help text below the Include line-item refunds setting; see text for corrected info
  • Add explanation of the refund-related fields to the Report Fields tab
  • Fix: When creating a new preset, some settings (e.g. CSV formatting settings) may have unwanted backslashes

Version 2.2.8 July 4th, 2021

  • Fix PHP notice when used with Frontend Reports

Version 2.2.7 May 13th, 2021

  • automatically create line-item refunds when the status of an order is set to Refunded, so this setting and other line-item refund related functionality should reflect both line-item refunds entered manually and generated automatically on order status change (if order filtering conditions are met).

Version 2.2.6 May 4th, 2021

  • Added clarification about WooCommerce behavior regarding line item refunds and Refunded order status: WooCommerce 2.4+ should automatically create line-item refunds when the status of an order is set to Refunded, so this setting and other line-item refund related functionality should reflect both line-item refunds entered manually and generated automatically on order status change (if order filtering conditions are met).

Version 2.2.5, April 30th, 2021

  • Feature: Add a second order field filtering setting
  • Feature (experimental): Add option to disable grouping by product

Version 2.2.4, April 15th, 2021

  • Add option: Advanced > Use WordPress date formatting functionality for dynamic date values (may be helpful if you are filtering date values that are in the same language as your WordPress installation, rather than in English)

Version 2.2.3, April 9th, 2021

  • Fix: Time values displayed in the title and filename merge fields may be incorrect if the order period is not a custom date range
  • Time values displayed in the title and filename merge fields are now both inclusive regardless of the Order Period setting

Version 2.2.2, March 31, 2021

  • Security fix: Report files may be stored in the system's temporary directory when the built-in email functionality is used to send a report; use a directory within the WordPress installation instead for security reasons in shared environments
  • Security fix: Report files may be stored in the system's temporary directory when XLSX formats are generated; use a directory within the WordPress installation instead for security reasons in shared environments (note: this may also have affected the XLS format generation in older versions)
  • Fix: XLSX format generation may result in an empty file in some hosting environments

Version 2.2.1, March 22, 2021

  • Fix: potential PHP error when an XLSX export is triggered

Version 2.2.0, March 22, 2021

  • Replaced PHPExcel with PHP_XLSXWriter to address PHP 8 compatibility issue
  • Removed support for generating XLS format files (existing presets should be automatically updated to use XLSX)
  • Fix: PHP 8 deprecation notice

Version 2.1.34, March 15, 2021

  • Add two additional Group By field options in the Grouping & Sorting tab, allowing a up to three Group By fields to be selected
  • Add order item field filtering options in the Order Filtering tab, allowing up to two order item meta filtering conditions to be specified

Version 2.1.33, February 17, 2021

  • Fix: The totals row values for "Order Item" fields may be incorrectly doubled

Version 2.1.32, February 15, 2021

  • Security fix: Improve browser caching disabling headers

Version 2.1.31 - February 11, 2021

  • Security fix: Send headers to disable browser caching during report viewing/downloading
  • Added addons tab

Version 2.1.30 - February 2, 2021

  • Add hm_psr_row_value filter to allow for additional processing of the values in report rows
  • Security improvements

Version 2.1.29 - January 26, 2021

  • Fix: The Product Menu Order field is not populated for zero-sales products
  • Update the "Current Product Price" field to use the WooCommerce method for retrieving price instead of retrieving from post meta for zero-sales products (this change was already previously made for non-zero-sales products)

Version 2.1.28 - January 25, 2021

  • Show disabled product variations with no sales in the report when "Include products with no sales...", "Include unpublished products", and "Report on each variation separately" are enabled (Note: The "Include unpublished products" setting should have no effect on including/excluding disabled variations from the report if they have sales and the product is published)

Version 2.1.27 - January 22, 2021

  • Add "Product Menu Order" built-in field
  • Fix: "Total" checkboxes in the field list were not automatically appearing when the totals row was enabled
  • Add message about field re-ordering to the Report Fields tab

Version 2.1.26 - November 27, 2020

  • Fix: Prevent problems when loading PHPExcel if PHPExcel is already loaded (for example, when used with Scheduled Email Reports or Frontend Reports with another reporting plugin in the same email or page, in certain cases)
  • Avoid outputting errors during XLS/XLSX format generation to avoid file corruption

Version 2.1.25 - November 20, 2020

  • Add Product Description and Product Description Excerpt fields

Version 2.1.24 - September 30, 2020

  • Security fix: Temporary report files may have been generated in the publicly-accessible wp-content directory (or another directory specified by WP_TEMP_DIR) and/or temporary directories that could be accessible by other web server users. The location would have been determined by the get_temp_dir() function in WordPress. In most cases these temporary files would have been deleted quickly but in some cases, such as when using the Scheduled Email Reports addon plugin or when automatic deletion failed, these temporary files may not have been deleted automatically by the plugins in question. This update changes the plugin's temporary directory to a fixed location below wp-content and uses randomized subdirectories to help prevent unauthorized access on a properly configured web server (an update to Scheduled Email Reports also addresses the deletion issue). Existing temporary report files may remain present on the server after update.

Version 2.1.23 - July 29, 2020

  • Fix: The dynamic date option for custom date ranges in the Order Period setting (Order Filtering tab) was incorrectly overriding the time field (this issue was visible in the report settings)
  • Fix: The dynamic date field in the Only Orders With Field setting (Order Filtering tab) was visible even when the dynamic date feature was not in use

Version 2.1.21 - July 13, 2020

  • Updated Plugin Author
  • UI improvements: new admin area
  • Added license key protection
  • For custom fields added via the hm_psr_addon_fields hook, the field callback now has an additional argument that provides the variation ID for product variations with zero sales (i.e. where $type is 'nil'). See line 636 of hm-product-sales-report-pro.php (comment above the getAddonFields() function).
  • Fix PHP notices on the admin page
  • Fix form fields width on small screens

Version 2.1.20 - July 3, 2020

  • Add option to filter reported products by a product field that matches the current user ID (or meets another comparison such as does not match, etc.)

Version 2.1.19 - June 26, 2020

  • Fix: Grouping & Sorting > Sort By option is not respected in the HTML (enhanced) output format

Version 2.1.18 - June 20, 2020

  • Fix: Certain character(s) may not display correctly in the Variation Attributes field

Version 2.1.17 - June 5, 2020

  • Fix: Line item refunds may be inaccurately deducted when the "Include line-item refunds" setting is enabled and the Group By setting is used
  • Add "Line Item Count" field to report the number of line items reflected by each report row
  • Add additional information/warnings regarding the Group By setting to the admin UI
  • Changed the join type for various joins in the report query to LEFT JOIN

Version 2.1.16 - March 26, 2020

  • Feature: The Only Orders With Field setting now supports automatically updated (dynamic) date and/or time values for filtering
  • Fix: Inconsistency in the reporting query for shipping data (order field filtering); may affect shipping-related information in reports if the "Only Orders With Field" setting is enabled and a numeric value is used for the filtering condition (first value if using BETWEEN) in that setting
  • Only treat customer and order field filtering values in a BETWEEN condition as numeric if both values are numeric

Version 2.1.15 - March 11, 2020

  • Fix CSRF security vulnerability

Version 2.1.14 - February 13, 2020

  • Fix: SQL injection vulnerability in a certain report setting, could be taken advantage of by users with permission to edit report settings
  • Allow the use of fields with names containing spaces and/or dashes in the Group By setting (Grouping & Sorting tab)

Version 2.1.13 - January 22, 2020

  • Added an option to set the database sort buffer size in the Advanced tab; set to 512K by default

Version 2.1.12 - December 17, 2019

  • Fix: The "Only Orders with Field" setting was not showing the "does not exist" filtering condition as selected in the dropdown when that condition had been selected and saved (in a preset or last used settings)
  • Fix: Disable WooCommerce report data caching which may cause inaccuracies in report output in certain instances

Version 2.1.11 - December 13, 2019

  • Not needed on this site

Version 2.1.10 - December 4 2019

  • Fix: line item refunds are not reported if there are no sales (product line item refunds are not reported if there are no product sales; shipping line item refunds are not reported if there are no shipping sales)

Version 2.1.9

  • After saving an existing preset, it no longer needs to be re-selected or updated in Scheduled Email Reports or Frontend Reports

The names of deleted products are now displayed from order line item data

  • Fixed an issue with deactivated or invalid license keys not deactivating

Version 2.1.8

  • Added option to only include orders placed by customer users matching specified user meta filtering criteria

Version 2.1.7

  • Implemented performance improvement for sites with many orders
  • Added an option to help address a certain type of plugin conflict
  • Fixed a bug related to certain fields associated with refunds (e.g. the "Quantity Refunded" field, etc.)

Version 2.1.6

  • Fixed issue related to the "group by" functionality

Version 2.1.5

  • Fixed reporting on products with no matching sales

Version 2.1.4

  • Fixed issue with additional character(s) being added to certain report settings values on preset save

Version 2.1.3

  • CSV format options now allow for no delimiter, no surrounding character, and/or no escape character

Version 2.1.2

  • Added ability to sort by any field in the report
  • Replaced field checkboxes with remove buttons on the Report Fields tab
  • Added CSV format options (delimiting, surrounding, and escape characters)

Version 2.1.1

  • Fixed potential bug when including line-item refunds in the report

Version 2.1.0

  • Added "dynamic date" feature for the order period dates
  • Added option to add a title at the top of the report
  • Added field to set the report filename
  • Added field to set the CSS for HTML reports (depending on user permissions)
  • Added debug option (displays SQL for primary report queries, etc.)
  • Added field for setting the execution time limit (where supported)
  • Added option to disable WordPress object caching during report body generation
  • Changed license from GPLv2+ to GPLv3+

Version 2.0.11

  • Added order date related group by fields
  • Fixed issue with shipping tax in WC 3.0+
  • Added "does not exist" option for order meta filtering

Version 2.0.10

  • Fixed bug affecting certain integration(s) (e.g. Scheduled Email Reports)

Version 2.0.9

  • Fixed bug with saving product category filtering settings in presets
  • Fixed database query that was generating an error in some instances
  • Allowed for no date range override when generating a report programmatically (e.g. using Scheduled Email Reports)

Version 2.0.8

  • Fixed issue with line-item refunds and order status filtering

Version 2.0.7

  • Fixed order field filtering for field names containing spaces
  • Fixed order field filtering and customer user role filtering for line item refunds
  • Fixed potential security issue
  • Updated the plugin updater

Version 2.0.6

  • Critical bugfix: Fixed incorrect date ranges when using the "Last 7 days", "Last 30 days", "Next 7 days", or "Next 30 days" options
  • Added improved preset management interface
  • Added calendar month based order period options
  • Added option to enable or disable totals for certain fields

Version 2.0.5

  • Fixed "Include unpublished products" setting

Version 2.0.4

  • Fixed bugs related to numeric values in order and product field filtering

Version 2.0.3

  • Fixed potential incompatibility with order status plugin(s)

Version 2.0.2

  • Fixed incompatibility with older PHP versions resulting in a fatal error on activation
  • Minor improvements

Version 2.0.1

  • Fixed error when including zero-sales products

Version 2.0.0

  • Added tabs to admin interface
  • Added grouping
  • Added product tag filtering
  • Miscellaneous bug fixes

Note: In addition to the changes listed here, there may be other minor fixes and improvements that are not noted. For more information about this product, visit the Product Sales Report Pro for WooCommerce product page.