Skip to content

Commit 049f719

Browse files
committed
Merge remote-tracking branch 'origin/MAGETWO-47555' into pr-379
2 parents fd3628b + bf10fbb commit 049f719

File tree

2 files changed

+32
-2
lines changed

2 files changed

+32
-2
lines changed

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2163,7 +2163,7 @@ public function validateRow(array $rowData, $rowNum)
21632163

21642164
if (!$this->validator->isValid($rowData)) {
21652165
foreach ($this->validator->getMessages() as $message) {
2166-
$this->addRowError($message, $rowNum);
2166+
$this->addRowError($message, $rowNum, $this->validator->getInvalidAttribute());
21672167
}
21682168
}
21692169

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

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,13 @@ class Validator extends AbstractValidator implements RowValidatorInterface
3434
* @var array
3535
*/
3636
protected $_rowData;
37-
37+
38+
/*
39+
* @var string
40+
*/
41+
protected $_invalidAttribute;
42+
43+
3844
/**
3945
* @param \Magento\Framework\Stdlib\StringUtils $string
4046
* @param RowValidatorInterface[] $validators
@@ -200,9 +206,32 @@ public function isAttributeValid($attrCode, array $attrParams, array $rowData)
200206
}
201207
$this->_uniqueAttributes[$attrCode][$rowData[$attrCode]] = $rowData[Product::COL_SKU];
202208
}
209+
210+
if (!$valid) {
211+
$this->setInvalidAttribute($attrCode);
212+
}
213+
203214
return (bool)$valid;
204215

205216
}
217+
218+
219+
public function setInvalidAttribute($attribute)
220+
{
221+
$this->_invalidAttribute = $attribute;
222+
}
223+
224+
/*
225+
* @return string
226+
*/
227+
public function getInvalidAttribute()
228+
{
229+
return $this->_invalidAttribute;
230+
}
231+
232+
233+
234+
206235

207236
/**
208237
* @return bool
@@ -211,6 +240,7 @@ public function isAttributeValid($attrCode, array $attrParams, array $rowData)
211240
protected function isValidAttributes()
212241
{
213242
$this->_clearMessages();
243+
$this->setInvalidAttribute(NULL);
214244
if (!isset($this->_rowData['product_type'])) {
215245
return false;
216246
}

0 commit comments

Comments
 (0)