Timeout

Understanding the timeout.

On the server, in addition to your site, there are other sites. Server resources must be fairly distributed among all sites, so the time of continuous PHP operation program is limited.

Usually, it is 30 - 60 seconds. This means that after 60 seconds the plugin work will be forcibly terminated, and you will receive a message on the browser screen: "maximum execution time of 30 seconds exceeded" or "Internal Server Error 500", or just a "white screen".

How does it work in reality?

However, in practice, the plugin works for 3-5 minutes. This is because it is actively reading and writing data to the database, and interruptions are disabled when writing to the database.

You often have already received a timeout message, but the plugin is still running. In such cases, if you press the F5 key, a parallel process can start - two plugins will work simultaneously, i.e. items can be added twice. There will be duplicates.

Recommendation.

Do not rush to press F5 or refresh the browser page, which is the same thing. First, make sure that the admin/uploads/errors and admin/uploads/report report files do not grow in size, and that the price list line number recorded in the sos file does not change over time.

This is evidence that the plugin actually timed out.


Form Actions

With a supplier form you can perform different actions:

  • Add new products
  • Update products
  • Add new and update products
  • Create categories based on the price list product categories
  • Tools

Each mode can be selected from the "Action" menu:

supplier form actions

Actions with green letters work only with product update mode.

Add only

With this action, the plugin does not update site products even if they are in both the price list and store. Only new products are added.

Requirements:

  • Price list (with as much as possible product information)
  • Set the form according to the price list columns (you can use the product parsing parameters as well)
  • Click the "Start" button or set a cron job

Update only

With this action, we usually update the product prices and quantities.

Requirements:

  • Price list (the minimum required columns are: SKU, price, and quantity)
  • Set the form
  • Click the "Start" button or set a cron job

If you want to update other product parts, for example, images, description, attributes, manufacturer, you have to specify this using various interface buttons, for example:

opencart product update from a price list

Add and update

With this action, the plugin adds new products from the price list and updates the already existing in the store products.

Create categories

Creating the category structure has nothing to do with adding or updating products. This is a separate process, as a result of which categories are created in the store along with their SEO, image, and hierarchy.

  • Price list - Required columns are: category name and parent category (can be more than one). Optional: link to the category image
  • Price list settings with categories columns ordered from child to parent.
  • Click the "Start" button

Tools

The plugin offers more than 270 tools for mass update of products, options, attributes, manufacturers, and categories. You don't need a price list, it works directly with the site database, for example:

opencart mass product update

For all categories selected in the filter:

- From the products in the category, the best quality image is selected and placed as a category image.


Algorithm

The plugin works on the server, not on your computer. What does that mean?:

  • You can't stop it by pressing a button on your keyboard.
  • You can't open/refresh your site with the same browser until it works.

How the price list is processed?

The plugin reads every line from the price list and processes it:

  • If the line does not contain a product SKU or price, the line is skipped.
  • Checks (by SKU) whether there is such a product in the store. If not, it can add a product, if there is, it will update the product, in accordance with the selected action and your settings.
  • Writes to the report files the result of line processing (errors and report files are in the admin/uploads folder on your server). Processing errors are written to the errors.tmp file and successes are written to the report.tmp file.
  • Writes the line number and product SKU to the admin/uploads/sos file in case of a timeout, in order to be able to continue processing the price list from the next line, and not from the beginning.

Notes

The plugin does not require a lot of server RAM, since only one line of the price list (one product) is processed at a time.

The timeout will not stop the processing of the price list, but will only interrupt it until you refresh the browser page (F5). Refreshing the browser page will "push" the plugin to work further.

A product added to the store using a plugin is no different from a manually created product.

When updating a product, the plugin does not delete the product in order to record it again, but only edits its individual parts.


Usergio Copyright © 2022