Magento 2.3 Управление запасами с использованием запасов, поступающих из внешней системы - PullRequest
2 голосов
/ 03 февраля 2020

Я работаю над проектом, в котором мне нужно импортировать данные о запасах в Magento один раз в час из внешней системы. У меня есть скрипт для импорта товара через SQL, и он прекрасно работает:

INSERT INTO `cataloginventory_stock_item` 
    (`product_id`, `stock_id`, `qty`, `is_in_stock`, `manage_stock`, `use_config_manage_stock`) VALUES (?, ?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE
    `qty` = VALUES(`qty`), `is_in_stock` = VALUES(`is_in_stock`)

INSERT INTO `inventory_source_item` 
    (`source_code`, `sku`, `quantity`, `status`) VALUES (?, ?, ?, ?) 
ON DUPLICATE KEY UPDATE
    `quantity` = VALUES(`quantity`), `status` = VALUES(`status`)

Однако, с момента появления новой системы управления запасами Magento 2.3, мы сейчас работаем в проблему, потому что теперь ведется журнал в таблице inventory_reservation, который используется при подсчете количества имеющихся запасов.
Я не уверен, что является лучшей практикой здесь, потому что мне нужно, чтобы стоимость акций управлялась из эта внешняя система, которая также получает поток размещенных заказов и соответствующим образом корректирует запас, но Magento также делает это так, чтобы каждый запас заказа вычитался дважды.

Является ли это лучшим вариантом, если каждый раз просто очищать таблицу inventory_reservation Я запускаю импорт, поэтому Magento просто думает, что на складе есть эта сумма, или мне не хватает чего-то действительно очевидного здесь, в M2.3?

...