72 $writeOnlyErrorItems =
false 79 $columnsName = $sourceCsv->getColNames();
81 $outputCsv->setHeaderCols($columnsName);
83 foreach ($sourceCsv as $rowNum => $rowData) {
85 if (!$writeOnlyErrorItems || ($writeOnlyErrorItems && $errorMessages)) {
87 $outputCsv->writeRow($rowData);
91 return $outputFileName;
103 $messages .= $error->getErrorMessage() .
',';
105 $messages = rtrim($messages,
',');
108 $messages = str_pad($messages, 1,
'"', STR_PAD_BOTH);
120 $fileName = basename($sourceFile, self::ERROR_REPORT_FILE_EXTENSION);
130 return $this->sourceCsvFactory->create(
132 'file' => $sourceFile,
134 'delimiter' => $this->reportHelper->getDelimiter(),
145 return $this->outputCsvFactory->create(
createSourceCsvModel($sourceFile)
createReport( $originalFileName, ProcessingErrorAggregatorInterface $errorAggregator, $writeOnlyErrorItems=false)
const REPORT_ERROR_COLUMN_NAME
generateOutputFileName($sourceFile)
createOutputCsvModel($outputFileName)
const ERROR_REPORT_FILE_SUFFIX
getErrorByRowNumber($rowNumber)
__construct(\Magento\ImportExport\Helper\Report $reportHelper, \Magento\ImportExport\Model\Import\Source\CsvFactory $sourceCsvFactory, \Magento\ImportExport\Model\Export\Adapter\CsvFactory $outputCsvFactory, \Magento\Framework\Filesystem $filesystem)
retrieveErrorMessagesByRowNumber($rowNumber, ProcessingErrorAggregatorInterface $errorAggregator)
const ERROR_REPORT_FILE_EXTENSION