Opencart-IMReport (OC 3) - Advanced reporting of sales and orders

Analytics is provided in OpenCart, but it is implemented in such a basic form that it is not enough even for a small store.
However, for many questions, you can find a solution with the help of this IMReport module - Advanced reporting of sales and orders (Report "Hot product", "Customer group", "Orders by region (delivery)", "Manufacturers (volume of products)" and etc).

Benefits
1. Normal sum calculation. In the standard analogue "Report on purchased goods", the amount is calculated incorrectly.
2. Ability to upload data to CSV files.
3. Powerful advanced filters (customers, customer groups, categories, manufacturers, and so on)
4. Each of the reports is tailored to solve the most important tasks, so you do not need to "dig into the configurations and invent something" (and the client report has as many as 3 unique modes). In simple words - a tool for people. Open and use.
5. Filtering and paging are done on the JS client side. Filtered the data once and “twist-twist it as you like” (this approach in practice turns out to be more beneficial than server-side filtering, sorting and paging, since the data is transferred once, and JS performs filtering and paging very quickly; in addition, in the case of the usual server-side approach, filtering and paging blocks the main database tables, which, with large amounts of data, will cause unnecessary slowdown for your online store customers).
6. Ajax data loading - no need to reload the form every time. Everything is done quickly and conveniently.
7. And many other "sweets".

Top Selling Report
As the name suggests. This report allows you to analyze the entire product sold in terms of its popularity. A very convenient report for those who need the strengths and weaknesses of the entire turnover.

Items by Options report
This is an extended version of the Hot Items report, where all purchases of a product are broken down by their configuration in options. In other words, you can find out how many computers were in circulation, computers with added 8GB RAM, computers with a custom case, computers with both memory and a case, and so on.
This report is especially useful for those whose options have a strong impact on product sales. For example, the textile industry (for example, clothing), technology (for example, computers), food (for example, a
pizza shop), and so on.

Stock balance report
This report allows you to find out the stock balance for the specified category, manufacturer, and date filter when the item was added. The peculiarity is that the report shows the balance both for the product itself and for its individual options.
This report is especially useful for those who have an online store connected to a real store. Or the online store is an intermediary between various suppliers and the final buyer.
Keep in mind that the capabilities of the browser are not as great as those of Excel or OpenCal. It is quite difficult for a browser to display thousands of positions. Therefore, if you need to analyze a sufficiently large volume of goods, for example, all products from 20,000 positions (including options), then it is better to use uploading to a CSV file, since Excel and OpenCalc can easily cope with such loads.

Report "Standard control"
This report allows you to quickly find out which goods are not in stock and need to be ordered from suppliers. The report is used in two stages.
First. On the "Standard control (settings)" tab, you must set the minimum balances for products and their options. Please note that if the value is negative, then such a product will be displayed in accordance with the report settings. If a specific value of the minimum required balance is specified for a product or product option, then such product or option will be displayed in accordance with whether there is enough of them in the warehouse or not. If you want to hide a product or option from the report at all, then it is enough to specify the value 0 (there cannot be less than zero residues).
Second. After you have specified the settings, you can use the report. For all products or options that have negative or no balances, the filter value "Minimum Quantity (Default)" is applied. So if you have most of the goods or their options should be presented in the same quantity, then they do not have to be set.
Note. To simplify the process, the initial value of the minimum quantity is specified in the localization file. Parameter "default_min_need_quantity".
Note: It is possible to quickly edit values directly from the report.

Report "Turnover of orders"
This report allows you to get a monthly report for the period on orders. To put it a little simpler, for the selected period, orders with the specified filters are grouped by months, and their number and total amount are calculated.
It is also possible to search only those orders that have products from the specified categories for the specified manufacturers.

Report “Order turnover by days”

This report allows you to get a daily report for the period on orders. To put it a little simpler, for the selected period, orders with the specified filters are grouped by days, and their quantity, delivery, amount of goods (from order_total), total amount and corrector (discounts, etc.; total amount minus the amount of goods and delivery) are calculated.
It is also possible to search only those orders that have products from the specified categories for the specified manufacturers.


Report "Group of customers"

This report allows you to get data on groups of customers for a period, taking into account the specifics of purchased goods and their categories. Please note that in this report the amount of delivery is also included in the amount. If a little easier, then for each group the number of orders and the amount are displayed, taking into account filters.

Report "Orders by regions (delivery)"

This report allows you to find out the volume of orders for each country and region for the period, taking into account the specifics of the purchased goods and their categories. Please note that in this report the amount of delivery is also included in the amount. To put it a little simpler, for each Country / Region pair (part of delivery), the number of orders and the amount are displayed, taking into account filters.

Report "Orders (customers, delivery, payment)"

This report allows you to filter all orders by customers and their used delivery and payment methods with the ability to filter by names and method codes. This report is especially useful in cases where you need to analyze the most preferred payment and delivery methods for certain customers. For example, to provide better conditions for regular customers.

Delivery Report

This report is an extended version of the standard Sales / Delivery report. Allows you to see the popularity of various delivery methods depending on the filters (payments, delivery, customers), as well as the total volume.

Unlike a standard report, grouping is carried out by time, code, method and title of delivery.

Report "Manufacturers (volume of products)"

This report allows you to find out the volume of products sold for each Manufacturer for the period, taking into account the specifics of the purchased goods and their categories. Please note that it is the category products themselves that are summarized in this report. To put it a little simpler, for each Manufacturer, the number of goods and the amount are displayed, taking into account filters.

Options report

This report allows you to find out the popularity of options in your orders for a certain period of time, taking into account the filter by category and manufacturers. In other words, now you can find out the most popular clothing sizes or computer modifications.

Customer Report

This is a comprehensive report that allows you to keep track of your customers' orders. There are three types of reports in total:

First. Standard. This report displays data on customers and the number of their orders for the specified period. It contains slightly more information than a standard customer report. However, an important feature is the ability to not only view, but also sort, which is quite important when you have more than one client.

Second. Search only registered (no purchases). If you need to track customers who have gone half way, in other words, they have registered, but have not bought anything, then this report will display them. A feature of this mode is that the filter by date is applied to the date of registration.

Third. Search for lost clients. The essence of the report follows from its title. The report displays a list of those customers who have ever made purchases in your store, but did not buy anything during the specified period. Using it, you can, for example, find out which customers did not buy anything for six months (day / month, and so on) or find out which customers did not buy anything in the last six months due to a decrease in demand (for example, in order to understand how dependent the product chain is on certain conditions).

Note: The last order and total fields are informative, so their status filters do not affect the presence of users in the results. So if you need to remove from analytics when searching for lost customers, for example, all returns, and find out only the last completed order and their total number, then you can do it.

Report "Products without demand"

This report allows you to find out which products are not in demand, but only take up or took up space in the warehouse. The report supports a lot of filters, including the ability to filter products that are not in stock at a given time.

Please note that with a large assortment, obtaining data may take time.


Image Display Setting

In some cases, product reports may require a small main image of the product (especially useful for printing). The display is enabled in the "Settings" tab. It is also possible to specify the dimensions of the height and width of the received images.

Please note:

1. The settings are applied to all reports where products are displayed
2. The main display of the product is displayed (regardless of options)
3. Links to images get into the CSV file only if the display is enabled
4. Additional time is required to create the necessary images (maybe be significant for a wide variety of products)

CSV file encoding setting

The encoding setting is located in the "Settings" tab. Important point! By default, the site encoding is UTF-8.

There are three options for output settings:

1. Windows-1251. There is a conversion from UTF-8 to Windows-1251.
2.UTF-8 (BOM). In this case, a special marker is added to the text that the file is encoded in UTF-8.
3. Without coding. This is for those cases when there is either no iconv, or a different encoding is used, which is why it is better to save the data to a file on your computer without any encoding conversion (for example, OpenOffice allows you to choose the encoding with which to open the file, which is very convenient in cases with non-standard encodings).

Configuration file

The special configuration file of the IMReport module is located here: "system/IMReport/IMReportConfig.ini" (don't confuse it with IMReportConfig.php).
This file contains various variables for more flexible configuration of the module.
Current variables:
Block [dev]
; disable report autoload (1 — enabled, 0 — disabled)
disable_autoload = 0
; sql query log (1 — enabled, 0 — disabled) (stored in system/IMReport/Log/)
enable_sql_log = 0
; sql query log - display queries separately (1 — enabled, 0 — disabled)
enable_sql_log_show_query_at_start = 0
Block [user]
; number of displayed users in the filter
limit_cust = 10
; number of displayed user groups in the filter
limit_cust_group = 10
; delay before ajax request in filters
ajax_filter_delay = 500;
; the number of displayed rows in the table by default (if the number does not match the available set, then it is added)
table_default_num_rows_displayed = 10
; number of months in the "Order turnover" report
report_order_sales_months = 12
; number of days in the report "Turnover of orders by days" (+1 current day)
report_order_sales_by_day_num = 30

Optimization tips

For faster reporting, you need to make sure that you have created indexes in the database for the tables order_option (order_product_id) and order_total (order_id, code) .
If you don't know how to do it in the phpMyAdmin hosting panel, then I advise you to use the IMDBOptimizer module (OC 3).

Features and Requirements

1. Filter by multi-select lists. If several elements are selected and one of them is “All elements”, then this item is not accepted and filtering is carried out by the remaining selected elements. If you need to filter on all elements, then either select only this one item, or deselect all elements altogether.
2. By default, it is assumed that the site encoding is UTF-8.
3. It is necessary that the iconv module be connected (usually hostings have it), otherwise the output of the CSV file can only be done without encoding.
4. A semicolon is used as a separator in the CSV file
5. Empty dates cannot be used in the "Order turnover by days" report. If the date is incorrectly set, then the current date of the server is set instead. If the start date of a period is greater than the end date, then the start date is considered the end date.
6. Amounts are calculated in the base unit of the opencart engine. Please note that not currencies, but the engine, since editing currencies (for example, changing the default currency) does not lead to recalculation of orders.


Installation

Unzip the archive and copy the directories "admin" and "system" to the root of the site. Don't worry, no files will be replaced
Open the admin panel and install the module
Update modifiers and tweek cache
Open the module (edit) in the admin panel and use the reporting
License and usage

Made for OpenCart versions 3.0.1.1, 3.0.2.0, 3.0.3.0, 3.0.3.1
The license is valid for one site only. Those. 1 domain + all subdomains = 1 payment.
By purchasing the module, you automatically agree with the text of the license.
The module has the distribution principle "as is".

The license key must be entered within 5 days after the module is installed. The license key consists of two parts. Keys must be entered as they were sent, without extra spaces and symbols.
Unauthorized use, copying, resale, transfer of the module to third parties, as well as other methods of distribution, including for informational purposes, is prohibited.

If you purchased the module before the introduction of licensing, then you need to write to me and indicate the domain name of the site and the test domain, if any (note that the test domain must be a test domain, that is, a subdomain of a site).
If you have a Russian domain, then you must specify the name that is specified in config.php at the root of the site
 

Attachments

  • imreport_v.3.zip
    1.9 MB · Views: 17
Top