RO CSVI

Troubleshooting import errors

| RO CSVI

Often when we import files we run into errors that the file is not being read correctly. Where to start looking for the cause of the issue and how to solve this?

Checkpoints

Follow these checkpoints to make sure that you have the basics right.

  1. Up-to-date Available Fields
    The list of available fields should be up-to-date before importing starts. If the field list is not up-to-date the import may fail due to missing fields. To update the list of available fields go to Maintenance -> Available Fields -> Click Update or follow Missing fields in RO CSVI document.
  2. A clean CSV file
    A CSV file should not have any extra characters in any place. A good CSV file may look like this:
    "product_sku","product_name"
    A bad CSV file may look like this:
    "product_sku,product_name"
      Here the " at the beginning and end of the line are wrong
    product_sku,product_name,
    Here the trailing comma is wrong
  3. Delimiters
    The template must use the same delimiters as your file has. The type of delimiters does not matter. To know what delimiters your file uses look at your file with Notepad for example.
    Some examples of delimiters are:
    Sample Field delimiter Text enclosure
    "product_sku","product_name" , "
    ~product_sku~^~product_name~ ^ ~
    product_sku|product_name |  

    Check that you have the delimiters filled in your template settings. RO CSVI needs this to know how to read the CSV file. Alternatively you can use the Automatic delimiter detection.
  4. Encoding
    The file must always be encoded in UTF-8 format. No other encoding is supported. See this Save file as UTF-8 on how to save your file as UTF-8 using Notepad2 or using LibreOffice/OpenOffice. This is important because files imported not in UTF-8 encoding will not import correctly with special characters like ë and sentences will be cut off.
  5. Field names
    Use only fieldnames that are available for the type of import you are doing. To see which fieldnames are available go to RO CSVI ---> Available Fields and filter on the type of import you want to do. It is not possible to use any other name. This means that if your CSV file contains the names sku, price, name that these cannot be used, you have to translate them to RO CSVI fieldnames. Your column names will change like this:
    • sku --> product_sku
    • price --> product_price
    • name --> product_name
    This needs to be done for all the fields in your file.
  6. Field data
    Make sure the data is properly formatted according to the specifications. Information on the fields can be found in respective tutorials.
  7. Line endings
    It is best to use Unix or Windows line endings. Mac line endings can give issues, by default they are not supported by PHP. If you have Mac line endings, you can select the option I'm Mac in your template, this will tell RO CSVI to try to read Mac line endings.
  8. Use the RO CSVI Analyzer to check your file for any issues. The CSVI Analyzer is included in RO CSVI and can be found by going to Components -> RO CSVI  -> Maintenance -> Analyzer.
  9. Check the debug information
    The debug report shows every step RO CSVI takes when importing the file. See the How to collect debug information on how to get your debug report. Check the debug information for anything that might be going wrong or post it in the forum.

After having checked these checkpoints your import should be running smoothly. Check out also this Does my CSV file look correct tutorial on checking your CSV file.

Read more ...

Removing HTML tags on export

| RO CSVI

The removal of HTML tags on export is a question that is quite simple to do with CSVI using the Replacement feature.

Requirements:

  • CSVI 7 or higher

Steps to remove HTML tags:

  1. Go to Components -> CSVI
  2. Click on Rules in the left menu
  3. Click on New
  4. Fill in a name for the replacement rule
  5. Select the Action
  6. Select the plugin CSVI Multireplace
  7. Click on Save to store the settings and load the rule
  8. Now select the Operation Find and replace
  9. Fill in Find with /<[\/\!]*?[^<>]*?>/i
  10. Leave Replace empty
  11. Set Multiple values to No
  12. Set Method to Regular expression
  13. Optionally set an order
  14. Click on Save & Close
  15. Go to Template fields
  16. Select the template where you want to apply the replacement rule to
  17. Click on the fieldname where the rule needs to be applied to
  18. Now under Rules select the rule you created
  19. Click on Save & Close to save the changes
  20. You will see a wand behind the fieldname indicating that a rule has been applied
  21. Run the export on your export template and you will see that the exported file will have no HTML in the chosen field

Read more ...

Getting started with RO CSVI

| RO CSVI

Before you start with RO CSVI it is good to know which goal you are trying to achieve. RO CSVI is a tool that has a multitude of possibilities but the basics are to import or export data.

Whether you are doing an import or an export the first step is to create a template. A template can be created in 2 different ways:

  1. Via Templates -> Templates
  2. Via Templates -> Field Mapper

Add-ons

RO CSVI can be used with a multitude of Joomla! extensions. Support for these extensions is shipped separately and as such need to be installed separately. The different add-ons can be downloaded from the Download page and then choose RO CSVI Extensions. You can download the extension you wish to use RO CSVI for from here and install it as a regular Joomla! extension.

Updating available fields

After RO CSVI and the necessary addons are installed it is a good idea to update the list of available fields. These fields are needed for making the import and export run, otherwise it might happen you end up with missing fields. Follow the steps in the Missing fields in CSVI document to make sure everything is up-to-date.

Steps to run an import or export

  1. Create a template
  2. Edit the options in the template
  3. Add the fields you wish to use to the template
  4. Run your import or export

Templates

How to create a template is explained in the Create a template tutorial.

Template fields

After a template is created fields will need to be added to the template so CSVI knows which fields to use for import/export. How to add template fields is explained in the Adding template fields tutorial.

Field Mapper

The field mapper is a tool to help you setup the basic template and the fields belonging to the template. The fieldmapper is explained in the CSVI Field Mapper tutorial.

Troubleshooting

If you have problems importing your file, have a look at the Troubleshooting import errors document.

If you have problems exporting your file, have a look at the Troubleshooting export errors document.

Read more ...

500 Internal Server Error

| RO CSVI

The Internal Server Error is probably the worst error you can get. The error means that the server is telling you something went wrong but not what has gone wrong. It is now up to you to find out what has gone wrong.

Kown causes

There are a number of known causes and easy fixes:

  • Folder and or files do not have the correct privileges
    • Solution: Set the correct privileges for the folders and files
      Folders should have permission 755
      Files should have permission 644
  • Missing folders and or files
    • Solution: Re-install necessary packages and/or patches
  • Trying to resize images that are too large
    • Solution:
      • Make sure your large images are not too large
      • Create your own thumbnails
      • Set the maximum size of the large image RO CSVI should create a thumbnail for
  • Old PHP version
    • Solution: Check that the PHP version used is at least 7.4 but recommended is PHP 8.0 or higher
  • BOM in your file
    • Solution: Set the Auto-detect delimiters to No in your template and specify them manually in the template.
  • Export of SEF URLs
    • Solution: When exporting SEF URLs it can be a huge strain on the server. Instead of generating SEF URLs during export you can pre-fetch the SEF URLs by going to Maintenance -> Select your extension -> Refresh SEF URLs. This will populate the database with the generated SEF URLs and the export will read them from the database instead of requesting them from the server. Make sure you have set the Domain name in the RO CSVI Settings.
  • Incompatible addon versions
    • Solution: Check that RO CSVI and the addons are all the same version. Enable the option Check addon version in the RO CSVI Settings

Error reporting

In some cases the 500 Internal Server Error can be changed to a visible error by setting the Error Reporting to Development as explained in the steps below.

  1. Go to System -> Global Configuration
  2. Click on the Server tab
  3. Set Error Reporting to Development
    Error Reporting
  4. Click on Save & Close

Once the Error Reporting is set to Development, run the import again and see if you get the real error. If not, you will have to check the Server error log section.

Server error log

The real error is in the server error log. This may not be a log you have access to, so contacting the hosting provider is advised in that case. Explain to them the situation and that you would like to know which error has been generated by the server. With the real error in hand it should be easy to fix the issue. If you need help, post the real error in the forum and we will gladly assist you.

Read more ...

Error building Admin Menus

| RO CSVI

This is an issue caused by Joomla and the only way to fix this is to manually clean up your system. To clean up your system take the following steps:

  1. Delete all references in the jos_extensions table where element is com_csvi. Replace jos with your own prefix. Find them with this command:
    SELECT * FROM `jos_extensions` WHERE element="com_csvi"
  2. Delete all references in the jos_assets table where name is com_csvi. Replace jos with your own prefix. Find them with this command:
    SELECT * FROM `jos_assets` WHERE name="com_csvi"
  3. Delete all references in the jos_menu table where title is like com_csvi. Replace jos with your own prefix. Find them with this command:
    SELECT * FROM `jos_menu` WHERE title LIKE "COM_CSVI%"
  4. Now install CSVI again as outlined in the Install CSVI in 5 steps tutorial.

Read more ...