RO CSVI
Customizing the export filename
| RO CSVI
Requirement: CSVI VirtueMart 2.3.18 or higher
To customize the filename CSVI VirtueMart creates on export you can specify the following tags to have them replaced on export:
| Tag | Meaning | Example |
| [Y] | A full numeric representation of a year, 4 digits | 1999 or 2003 |
| [y] | A two digit representation of a year | 99 or 03 |
| [M] | A short textual representation of a month, three letters | Jan through Dec |
| [m] | Numeric representation of a month, with leading zeros | 01 through 12 |
| [F] | A full textual representation of a month, such as January or March | January through December |
| [n] | Numeric representation of a month, without leading zeros | 1 through 12 |
| [d] | Day of the month, 2 digits with leading zeros | 01 to 31 |
| [D] | A textual representation of a day, three letters | Mon through Sun |
| [j] | Day of the month without leading zeros | 1 to 31 |
| [l] | A full textual representation of the day of the week | Sunday through Saturday |
| [g] | 12-hour format of an hour without leading zeros | 1 through 12 |
| [G] | 24-hour format of an hour without leading zeros | 0 through 23 |
| [h] | 12-hour format of an hour with leading zeros | 01 through 12 |
| [H] | 24-hour format of an hour with leading zeros | 00 through 23 |
| [i] | Minutes with leading zeros | 00 to 59 |
| [s] | Seconds with leading zeros | 00 to 59 |
Source: http://www.php.net/manual/en/function.date.php
Specifying a filename like:
product_export_[Y]_[m]_[d].csv will create a file called product_export_2010_11_06.csv.
CSVI Analyser
| RO CSVI
Are you seeing errors while importing your file and don't know what to do or how to find out whats wrong with the file? There is nothing to worry, CSVI has an amazing inbuilt tool to check the errors in import files and it is the best place to make you get aware of the problems you have with your import file. It works on both CSV and XML files.
Analyser with CSV file
To analyse your csv file, Go to Analyser page from the side menu, select your csv file and set the number of lines to show. By default lines to show is 3, change it if needed. Click on Analyse button on top. CSVI will list out the errors if any in the Errors section else list out the records from import file. If there are no errors shown and your CSV content is displayed perfect in Analyser then your CSV file is a valid one for import.

Analyser with XML file
CSVI Analyser can also be used to check an XML file. To do that, Go to Analyser page from the CSVI side menu, select the XML file in File section and in the Record name set the node name of each item, say for example if its <product> node which has data of each product then set Record name as product. Change Lines to show as needed and click on Analyse button.

If in the analyser shows any non readable characters in your content as shown below then it means that your CSV file is not UTF-8 encoded and you need to convert your file to UTF-8 format. Have a look at the document Save CSV file as UTF-8 encoded to know on how save your import file as a UTF-8 encoded document.

If the CSV file is not formatted properly and has messed up columns, the error shows up in error section

Inconsistent number of nodes in XML
If there are inconsistent number of nodes in XML file from one item to another then the Analyser would show empty columns for the missing nodes. The XML can still be imported just for the second product in this example the child fields are ignored.
More articles on this subject
I want to import Joomla articles
| RO CSVI
This document explains on how to import Joomla articles using RO CSVI.
Import XML with same node names
| RO CSVI
When it comes to XML file we remember nodes and it is possible that these XML files have same node names but with different node values. CSVI can read these XML files and the nodes values to import them in to the database. In this document we are going to explain with an example on how a parent product and child products defined in same node names are imported but with different values.
Consider the following XML example
<?xml version="1.0" encoding="UTF-8"?>
<products>
<product id="1227654" product_sku="sku-23-012860">
<description>
<name><![CDATA[Sample product]]></name>
<long_desc><![CDATA[Sample product description]]></long_desc>
</description>
<price gross="322.22" net="251.97" vat="33.0"/>
<childs>
<child id="3" size_name="S" product_mpn="1227654-1" weight="200">
<stock id="1" quantity="10"/>
</child>
<child id="5" size_name="L" product_sku="sku-17-C4-161" product_mpn="1227654-2" weight="600">
<stock id="1" quantity="10"/>
</child>
<child id="6" size_name="XL" product_sku="sku-17-C1-161" product_mpn="1227654-3" weight="800">
<stock id="1" quantity="15"/></child>
</childs>
</product>
</products>
As per the above XML we have one parent product and two child products. The first <child> node is for parent product details and the next two <child> nodes are for children. We need three different import templates with different template settings to import these products. Frst step is to import the parent product.
Import parent product
1. Create an VirtueMart product import template for parent product. In the template settings, select the Component as VirtueMart, Operation as product and Action as import. Save the template. Also make sure that you set User file for configuration option on File tab to No, this option will use template fields instead of column headers in import file as fields.

2. Set the template fields according to the XML node and as shown below. Since we are going to use the first <child> node for parent we can ignore the rest of the child nodes.

3. Now go to Import page, select the parent product import template and run the import.

Import first child product
1. Create a new import template to import first child product. In the template settings, select the Component as VirtueMart, Operation as product and Action as import. Save the template. Note that the template settings are same as of parent product but the template field settings are going to be different.

2. Create template fields and set the XML nodes. We need to use the second <child> node for the first child product so we are going to set the first <child> to Skip field so CSVI ignores them during import.

3. Go to CSVI import page, select the template created for first child product and run the import.

Import second child product
1. Create VirtueMart product import template for second child product. As we did for parent and first child product in the template settings, select the Component as VirtueMart, Operation as product and Action as import. Save the template. The template field settings are going to be different from parent and first child product.

2. Create template fields so we skip the first two <child> nodes and use the third child note for the product. We are going to use Skip field for ignoring the first two child nodes and tell CSVI to use the third node.

3. Select the second child import template and Run the import from CSVI import page.

More articles on this subject
List of Component and Operations
| RO CSVI
The document lists the component and operation for each RO CSVI addons. These component and operations are needed when you create an import or export template.