Импорт только измененных значений ?

[10 ноября 2016 г.]    Российская сборка Magento 2.49.12
Magento 2: модули и услуги
#1 dispatcer
  • Группа: Пользователь
  • Сообщений: 2
  • Регистрация: 26.01.2012

26.01.2012 13:43

Можно ли сделать так что бы при импорте обновлять только необходимые значения и не обновлять значения типа "###", то есть если значение "###" оставить
старое значение в базе
по умолчанию при "###" в базе становится 0
пример csv
"sku","qty","price"
"ab1","###","252"
"ab2","100","###"
"ab3","200","292"
"ab4","###","212"

Импорт делаю через интерфейс магазина

Спасибо

#2 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

26.01.2012 13:47

Magento при импорте требует только ограниченное количество колонок.
Другие колонки администратор добавляет в импортируемый файл по собственному желанию: если есть необходимость в обновлении соответстваующих этим колонкам свойств.
Однако если колонка присутствует в имопртируемом файле - она должна быть заполнена реальными дапнными, без пропусков.
Если указано пустое значение - значит, оно перетрёт уже присутствующее в базе данные непустое значение.

#3 dispatcer
  • Группа: Пользователь
  • Сообщений: 2
  • Регистрация: 26.01.2012

26.01.2012 13:51

Это я уже понял спасибо
а как то так if($number !='###') например в Abstract.php нельзя


можно конечно свой обработчик импорта использовать как то так


while( ($fields = fgetcsv($handle, 1000, ",")) !== FALSE)
{
$entity_id = getEntityID_bySKU ($db_magento, $fields[0]) ;
if($entity_id)
{
if($fields[2] !='###') {
updatePrice($db_magento, $entity_id, $fields[2]);
}
if($fields[3] != '###') {
updateQTY ($db_magento, $entity_id, $fields[3]);
}
}
function updatePrice($db_magento, $entity_id, $price)
{
}
function updateQTY ($db_magento, $entity_id, $qty)
{
}

но хотелось бы стандартными средствами импорта, возможно есть какие либо идеи

#4 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

26.01.2012 13:56

Программированием всё можно.
Я лишь описал стандартное поведение системы.

Поделиться темой: