1. piekielko
  2. RO CSVI
  3. Wednesday, 10 June 2026
  4.  Subscribe via email
Hello Roland,
I found a serious issue after updating to RO CSVI 9.9.0.
My custom export files were stored in:
/components/com_csvi/src/File/Export/Xml

After updating the component, these files were removed. Unfortunately, I lost my custom export work and now I need to restore the Joomla site from a backup to recover them.
I tested this on another website as well and the result is the same, so it does not look like an isolated case or a coincidence. It seems the component installer replaces or cleans this folder during the update.

I think a safer place for this type of custom file would be outside the component installation directory, for example in a dedicated custom folder, similar to how Joomla template overrides are stored. Files placed inside the component’s own installation path are too easy to lose during an update.

Regards,
Chris
Accepted Answer Pending Moderation
Hi Chris,

Attached is a patch file that adds support for adding your own export routines. The overrides must be located in the folder administrator/templates/TEMPLATE/html/com_csvi/src/File/Export/TYPE. Replace TEMPLATE with the backend template you use. By default this is atum. Replace TYPE with the export type you want to run, e.g. Xml. The folder names are case-sensitive.

To create your overrides you can do the following:

  1. Go to the folder components/com_csvi/src/File/Export
  2. Determine which type of export you want e.g. Xml and go into that folder
  3. Copy an existing export routine from this folder to the override folder
  4. Rename the copied override routine to your own name, for example Override.php The name must start with an uppercase letter.
  5. Edit the file and change the classname to match the filename. This is also case-sensitive.
  6. Edit an export template and set the type to the chosen type, e.g. Xml
  7. The list of websites should now show the override. The override name is not translated but you can add a language override to get a pretty name
Let me know how it goes.
Attachments (1)
Kind regards,

RolandD

=========================
If you use our extensions, please post a rating and a review at the Joomla! Extension Directory
  1. 1 day ago
  2. RO CSVI
  3. # 1
Accepted Answer Pending Moderation
Hi Chris,

After updating the component, these files were removed.
Joomla removes and adds the component folders during installation.

I think a safer place for this type of custom file would be outside the component installation directory, for example in a dedicated custom folder, similar to how Joomla template overrides are stored.
Correct, if I am not mistaken that is something I suggested in another post you made. Here is my answer in which I also stated you risk losing them having them in the core folders of RO CSVI:
https://rolandd.com/support/ro-csvi/ro-csvi-9-6-0-custom-xml-exporters-not-loading-after-update-small-patch#reply-85922

I will go ahead an implement that for the next release.
Kind regards,

RolandD

=========================
If you use our extensions, please post a rating and a review at the Joomla! Extension Directory
  1. 1 day ago
  2. RO CSVI
  3. # 2
Accepted Answer Pending Moderation
Hi Roland,

Yes, I understand. This situation confused me because in previous versions I did not have this problem. I may also have missed the warning in the earlier discussion, as I do not always read every forum post in detail.

That said, it is still a bit unexpected to suggest a folder for custom files where those files can later be lost during a normal Joomla extension update, especially if automatic updates are enabled. From a user’s perspective, this is not very intuitive.

Of course, I understand that cleaning the component folder during an update can make sense. In many cases, this is actually better than only overwriting files, because old unused files from previous versions can otherwise remain on the server without anyone noticing.

So yes, I agree that moving custom import/export files outside the component installation path is the right solution.

Thank you for implementing this in the next release. :)

Regards,
Chris
  1. 1 day ago
  2. RO CSVI
  3. # 3
Accepted Answer Pending Moderation
Hi Roland,

I tested the patch and I have to admit: I don’t think this could have been done much better. It works very well. :)
I removed my custom file from the main component folder and the export now runs directly from the backend template override:
administrator/templates/atum/html/com_csvi/src/File/Export/Xml/Merchant.php

So my own plugin/autoloader is no longer needed. This is a much cleaner solution.

screen.png
One small thought: is there really any need to translate custom export routine names? For custom files, it might be enough to display the clean filename without the COM_CSVI_ prefix. For example, Merchant.php could simply be shown as Merchant. Of course, this is only cosmetic and probably not a real problem for anyone. I just don’t think users usually need language strings for their own export files when the filename already gives the intended name.

Thanks again — this is a very good solution!

Kind regards,
Chris
Attachments (1)
  1. 1 day ago
  2. RO CSVI
  3. # 4
  • Page :
  • 1


There are no replies made for this post yet.
Be one of the first to reply to this post!