Hallo zusammen,
Ich beschäftige mich gerade mit der Rest-API und dem Update von Varianten. Soweit funktioniert alles einwandfrei, doch wenn ich versuche zu den bestehenden Varianten eine weitere hinzuzufügen werden alle Varianten im Backend richtig angezeigt, doch im Frontend kann ich nur die letzte importierte Variante auswählen. Ich habe bereits einige Versuche hinter mir, doch ich komme auf keinen nenner.
An für sich weiß ich wo der Fehler liegt. In der Tabelle s_article_configurator_options erhält jede Variante jeweils die Position 0. Importiere ich mehrere Datensätze bekommt jeder eine fortlaufende Positionsnummer. Das hält aber nur bis zum nächsten import.
Nun dachte ich mir, ich füge den Wert position ein und erhöhe jeweils den Wert. Dies hatte aber leider nicht das erhoffte Ergebnis.
Erster Import:
$updateArticle = array( 'configuratorSet' =\> array( 'groups' =\> array( array( 'name' =\> 'Typ', 'options' =\> array( array('name' =\> 'SAAB10006'), ) ), array( 'name' =\> 'Serie', 'options' =\> array( array('name' =\> '200003'), ) ), ) ), 'taxId' =\> 1, 'variants' =\> array( array( 'isMain' =\> true, 'active' =\> true, 'number' =\> 'SW10020', 'inStock' =\> 1, 'position' =\> 0, 'additionaltext' =\> '', 'configuratorOptions' =\> array( array('group' =\> 'Typ', 'option' =\> '200003'), array('group' =\> 'Serie', 'option' =\> 'SAAB10006'), ), 'prices' =\> array( array( 'customerGroupKey' =\> 'EK', 'price' =\> 1999, ), ) ), ), );
Zweiter Update Import:
$updateArticle = array( 'configuratorSet' =\> array( 'groups' =\> array( array( 'name' =\> 'Typ', 'options' =\> array( array('name' =\> 'SAAB10007'), ) ), array( 'name' =\> 'Serie', 'options' =\> array( array('name' =\> '200003'), ) ), ) ), 'taxId' =\> 1, 'variants' =\> array( array( 'isMain' =\> false, 'active' =\> true, 'number' =\> 'SW10020.1', 'inStock' =\> 1, 'position' =\> 1, 'additionaltext' =\> '', 'configuratorOptions' =\> array( array('group' =\> 'Typ', 'option' =\> '200003'), array('group' =\> 'Serie', 'option' =\> 'SAAB10007'), ), 'prices' =\> array( array( 'customerGroupKey' =\> 'EK', 'price' =\> 1999, ), ) ), ), );