Skip to content

Commit d592d00

Browse files
committed
ACP2E-2028: [Cloud] Import of customizable options not working
1 parent 70f8114 commit d592d00

File tree

2 files changed

+8
-2
lines changed
  • app/code/Magento/CatalogImportExport/Model/Import/Product
  • dev/tests/integration/testsuite/Magento/CatalogImportExport/Model/Import/ProductTest

2 files changed

+8
-2
lines changed

app/code/Magento/CatalogImportExport/Model/Import/Product/Option.php

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1305,14 +1305,17 @@ protected function _importData()
13051305
? mb_strtolower($rowData[self::COLUMN_SKU])
13061306
: '';
13071307

1308+
$multiRowData = $this->_getMultiRowFormat($rowData);
13081309
if ($rowSku !== $prevRowSku) {
13091310
$nextOptionId = $optionId ?? $nextOptionId;
13101311
$nextValueId = $valueId ?? $nextValueId;
13111312
$prevRowSku = $rowSku;
1313+
} elseif (count($multiRowData) === 0) {
1314+
$nextOptionId += $optionCount;
1315+
$nextValueId += $valueCount;
13121316
}
13131317
$optionId = $nextOptionId;
13141318
$valueId = $nextValueId;
1315-
$multiRowData = $this->_getMultiRowFormat($rowData);
13161319
if (!empty($rowData[self::COLUMN_SKU]) && isset($this->_productsSkuToId[$rowData[self::COLUMN_SKU]])) {
13171320
$this->_rowProductId = $this->_productsSkuToId[$rowData[self::COLUMN_SKU]];
13181321
if (array_key_exists('custom_options', $rowData)
@@ -1326,6 +1329,7 @@ protected function _importData()
13261329
}
13271330
}
13281331

1332+
$optionCount = $valueCount = 0;
13291333
foreach ($multiRowData as $combinedData) {
13301334
foreach ($rowData as $key => $field) {
13311335
$combinedData[$key] = $field;
@@ -1344,6 +1348,7 @@ protected function _importData()
13441348
);
13451349
if ($optionData) {
13461350
$options[$optionData['option_id']] = $optionData;
1351+
$optionCount++;
13471352
}
13481353
$this->_collectOptionTypeData(
13491354
$combinedData,
@@ -1355,6 +1360,7 @@ protected function _importData()
13551360
$parentCount,
13561361
$childCount
13571362
);
1363+
$valueCount++;
13581364

13591365
$this->_collectOptionTitle($combinedData, $prevOptionId, $titles);
13601366
}

dev/tests/integration/testsuite/Magento/CatalogImportExport/Model/Import/ProductTest/ProductOptionsTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -816,7 +816,7 @@ function ($input) {
816816
*/
817817
protected function mergeWithExistingData(
818818
array $expected,
819-
$options
819+
$options
820820
) {
821821
$expectedOptionId = $expected['id'];
822822
$expectedOptions = $expected['options'];

0 commit comments

Comments
 (0)