How to configure and adapt Aimeos based shops as developer
Forum rules: Always add your Aimeos and PHP version as well as your environment (Linux/Mac/Win)
#1433 by aimeos
18 Dec 2014, 11:02
What are your requirements for importing and exporting products?
Is it only a way to export your products to amazon or ebay or do you need it for data exchange as well?
What format do you prefer?
#1434 by garwat82
18 Dec 2014, 12:32
Hi

For me it would be great to have some kind of XML import/export with all details that belong to a product. If the exported XML can be imported again and resembles the original product data, this would ease migration between shop instances a lot.

I've also thought about this a little bit and I think a job controller would be a good place to implement this.

Regards,

Garret
#1435 by aksenovaa
18 Dec 2014, 12:39
First of all I would like to get a site map - sitemap.xml. This is also a kind of export, or best to put this another thread in the forum?

Second, what has to face me personally, it's a price list for Yandex Market. I think that will be described is true for other types of export price lists.
Requirements for the price list and data format: http://help.yandex.ru/partnermarket/exp ... dation.xml
Description of YML: http://help.yandex.ru/partnermarket/yml/about-yml.xml
XML DTD for the YML: http://partner.market.yandex.ru/pages/help/shops.dtd
Template: http://partner.market.yandex.ru/pages/help/YML.xml

And the third, but perhaps the most important. Exports of goods from a database and import new products. If the store is new, and a lot of goods, the score manually all the proposals is very difficult. To do this, I think, will approach the same format as the export price list - or xml, csv, xls - it's just a matter of reformatting data.
#1436 by garwat82
18 Dec 2014, 13:07
This leads us to three necessary exports:
- full import/export
- "medium" export for amazon, ebay, yandex, etc.
- reduced export for sitemaps

The amount of data is different in each case and they only share the fact that they need the product data (more or less detailed). Most of the exports are XML based but especially for the import this isn't the only format if you only want to push data from your ERP system into the shop. For that case we also have to think about how to update existing data which is most often the hardest part.

I could imagine to provide some base class that makes it easy fetch the required data while derived classes could implement the different formats.

Regards,

Garret
#1437 by aksenovaa
22 Dec 2014, 09:26
garwat82 wrote:for the import this isn't the only format if you only want to push data from your ERP system into the shop. For that case we also have to think about how to update existing data which is most often the hardest part.


Yes, you're right. Here you need to allocate existing data (id -?), Compare them with the newly added for matching decide to change or leave. It is important to distinguish more - what is "new", existing data on the site, or import data from ...
#1439 by garwat82
05 Jan 2015, 21:37
Hi there

In the last weeks I've toyed a lot with product exports in the way we've discussed. At first, I did a very basic implementation for site maps until I found the container/content utility classes in lib/mwlib of the core. They simplified the code a lot when it comes to handling file containers and formats. Then, I've managed to use the view classes in lib/mwlib as well like it's done for the HTML clients. This led to a very clean implementation where the output is generated via templates instead of string concatenation in the job controller class. Due to the inheritance from the default product export class the site map export is only a specific implementation and both implementations are very configurable. Now, I'm very pleased with the result :D

The format of the product export XML file is subject to change as I think it will grow and adapt to the requirements that will come up when the product import is implemented. Please add your comments if you have any suggestions: https://github.com/aimeos/arcavias-core/pull/2/files

Regards,

Garret
#1440 by aimeos
07 Jan 2015, 14:01
Hi Garret

Really astonishing piece of work! I've already merged the PR despite of the XML format changes that will come up for sure to make the sitemap feature available.
Furthermore, I will have a look into this container/content thing and try to write some documentation about it.

Thanks a lot!
#1532 by garwat82
10 Apr 2015, 14:36
Hi all

aksenovaa wrote:Is there any results? If there is, I would like to look at the documentation or example.


The sitemap export is final while the default format of the product export may need some more love. Nevertheless, if you plan to write your own export for a specific format, the current implementation is a good starting point:
* https://github.com/aimeos/arcavias-core/tree/master/controller/jobs/src/Controller/Jobs/Product/Export
* https://github.com/aimeos/arcavias-core/tree/master/controller/jobs/layouts/product/export

I wasn't able to work much on the product import in the last weeks but I think I know how it could be done. There are some things that have to be implemented in the core in advance (mainly easy tasks but they require some time to implement) and it would be great if all interested parties would help to get this done. Drop me a note if you would like to join :-)

Garret