Open NoorulBhoelai opened 6 years ago
Few discussion points we had internally:
It would be best if SKU would be case-sensitive and if it would support all characters possible. This way we give more freedom to the merchant and they can create SKU's in any format. Having that said, we understand that his will be a big change.
Removing the strtolower functionality wasn't as easy as it looked, because it is used in a lot of classes.
\Magento\CatalogImportExport\Model\Import\Product\SkuProcessor::_getSkus
\Magento\CatalogImportExport\Model\Import\Product::_saveProductAttributes
\Magento\BundleImportExport\Model\Import\Product\Type\Bundle::saveData:363
\Magento\ConfigurableImportExport\Model\Import\Product\Type\Configurable::configurableInBunch:804
\Magento\ConfigurableImportExport\Model\Import\Product\Type\Configurable::saveData:773
\Magento\DownloadableImportExport\Model\Import\Product\Type\Downloadable::saveData:288
It seems the ImportExport is missing some strtolower method somewhere, but we couldn't find the exact location.
Hello,
Thank you for raising this issue. We are currently investigating this and more issues with regards to SKU look ups under the issue https://github.com/magento-engcom/import-export-improvements/issues/37 I would like to combine these issues if that makes sense.
@tadhgbowe is this case being covered in your issue validation?
While importing new simple products with a capital alpha character postfix, existing simple product will not get replaced because of the strtolower($sku) function when fetching SKU's from the database.
Preconditions
Steps to reproduce
Expected result
View catalog_product_entity table and you will find the sku 11111M product being copied instead of being replaced.
Function of the strtolower on SKU
\Magento\CatalogImportExport\Model\Import\Product\SkuProcessor::getNewSku line 144