Skip to content

Commit 443cbb1

Browse files
committed
ACP2E-4057: The product import process encounters an error if a multi-select attribute is configured as required
1 parent 51db228 commit 443cbb1

File tree

1 file changed

+6
-5
lines changed
  • app/code/Magento/CatalogImportExport/Model/Import/Product

1 file changed

+6
-5
lines changed

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

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -208,17 +208,18 @@ public function isRequiredAttributeValid($attrCode, array $attributeParams, arra
208208
*/
209209
private function validateRequiredAttributeValue(string $attrCode, array $rowData): bool
210210
{
211+
$emptyConstant = $this->context->getEmptyAttributeValueConstant();
211212
if (isset($rowData[$attrCode]) && is_array($rowData[$attrCode])) {
212-
$emptyConstant = $this->context->getEmptyAttributeValueConstant();
213-
$filteredArray = array_filter($rowData[$attrCode], function ($value) {
214-
return !empty(trim($value));
213+
$trimmedValues = array_map('trim', $rowData[$attrCode]);
214+
$filteredArray = array_filter($trimmedValues, function ($value) {
215+
return !empty($value);
215216
});
216217
return !empty($filteredArray)
217-
&& !in_array($emptyConstant, array_map('trim', $rowData[$attrCode]), true);
218+
&& !in_array($emptyConstant, $trimmedValues, true);
218219
}
219220
return isset($rowData[$attrCode])
220221
&& strlen(trim($rowData[$attrCode]))
221-
&& trim($rowData[$attrCode]) !== $this->context->getEmptyAttributeValueConstant();
222+
&& trim($rowData[$attrCode]) !== $emptyConstant;
222223
}
223224

224225
/**

0 commit comments

Comments
 (0)