Search code examples
xmlimportshopware

Why were the XML import of an article in ShopWare 5.4.6 Data only partially taken into account?


I have imported an article using XML file via Shopware backend.

There was a positive message 1 and even implicitly a suplier was created in database 3 (but no matching article in Item overview 2 ).

Unfortunately the article is not in the frontend, not in the backend 2 and is not included in the database table 5.

  1. Why was data only partially taken into account when importing articles?
  2. Why was suplier crated in mysql 3 but not visible in 'Item overview' 2.
  3. Why was there no error message?
  4. Maybe it's still an error in the XML file. Which one could that be?

Thats the source of this XML ( import 1articel with space bordered string supplier.xml ):

`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Root>
<articles>
<article>
    <prices><price>
            <group>EK</group>
            <price>2.99</price>
            <pseudoprice></pseudoprice>
            <baseprice></baseprice>
        </price></prices>
    <tax>19.00</tax>
    <category><categories>101</categories></category>
    <active>1</active>
    <ordernumber>ordernumber: space bordered string supplier</ordernumber>
    <name>name: space bordered string supplier</name>
    <mainnumber>9</mainnumber>
    <supplier>   space bordered string supplier   </supplier>
</article>
</articles>
</Root>`

Importing finished successfully. 1 of 1

yes new timed row in database phpmyadmin

Manufacturer administration. See line 4

no matching article in Item overview (backend)

no matching article in phpmyadmin


Solution

  • When creating products without variants, the ordernumber has to be the same as the mainnumber. Those will only differ, when this is a variant product (and even in this case one of the variants will have ordernumber = mainnumber). Because of this, your example won't work (it is a valid import, because if there would be an article with this mainnumber, the product might be assigned to it as variant).