Magento 2

Consultando no banco quantidade disponivel para Venda (estoque)

No Magento 2, a quantidade “reservada” na “Salable Quantity” é gerenciada principalmente pelos módulos MSI (Multi-Source Inventory). A “Salable Quantity” é a quantidade total disponível para venda, levando em consideração as reservas feitas por pedidos pendentes e outras operações que afetam o estoque.

Para consultar diretamente essas informações no banco de dados do Magento 2, você pode usar uma query SQL que acesse as tabelas relacionadas ao MSI. Aqui está um exemplo de uma query que pode te ajudar a verificar quantas unidades estão sendo reservadas para um determinado SKU:

SELECT 
    p.sku,
    SUM(sq.quantity - sq.stock_id) AS salable_quantity,
    SUM(sr.quantity) AS reserved_quantity
FROM 
    catalog_product_entity p
JOIN 
    inventory_source_item si ON p.sku = si.sku
JOIN 
    inventory_stock_item sq ON p.sku = sq.sku
JOIN 
    inventory_reservation sr ON sr.sku = p.sku
WHERE 
    p.sku = 'seu_sku_aqui'
GROUP BY 
    p.sku;

Vamos entender cada parte desta query:

  1. catalog_product_entity p: Esta tabela contém os produtos e seus SKUs.
  2. inventory_source_item si: Esta tabela contém informações de estoque para cada fonte (source) configurada no Magento.
  3. inventory_stock_item sq: Esta tabela contém a quantidade em estoque disponível para venda para cada produto.
  4. inventory_reservation sr: Esta tabela contém as reservas feitas no estoque, que afetam a “Salable Quantity”.

Passos para executar a query:

  1. Substitua 'seu_sku_aqui' pelo SKU específico que você deseja consultar.

  2. Execute a query em seu banco de dados Magento 2. Certifique-se de ter permissões adequadas para acessar e consultar essas tabelas.

Esta query somará a quantidade de reservas feitas (reserved_quantity) para o SKU especificado. A salable_quantity é calculada subtraindo a quantidade reservada (stock_id) da quantidade total disponível (quantity).

Se você precisar de ajustes ou uma análise mais detalhada, informe-se sobre a configuração específica do seu ambiente Magento e suas tabelas de banco de dados, pois algumas personalizações ou extensões podem afetar a estrutura das tabelas.

Post Recentes

WordPress não aparece no Google: noindex esquecido e robots.txt virtual

Site novo há semanas e nenhuma página indexada? Confira a caixinha de visibilidade em Leitura, o noindex no HTML e…

17 horas atrás

array_map perde as chaves do array no PHP: como manter o índice

O retorno do array_map voltou com índice 0, 1, 2 e o código que dependia da chave quebrou. Entenda quando…

1 dia atrás

Backup do Magento 2 com mysqldump: dump leve sem as tabelas de log

Dump de 12 GB que demora horas porque arrasta report_event e cron_schedule. Faça o backup em duas passadas, guarde só…

2 dias atrás

Preference do di.xml não aplica no Magento 2: o que checar antes

Escreveu a preference e o Magento 2 continua usando a classe original? Confira a área do di.xml, o generated/code e…

3 dias atrás

Filtro por atributo do WooCommerce vazio: global x personalizado

Cadastrou Cor direto na aba Atributos do produto e o filtro por atributo vem vazio. Veja como identificar o tipo,…

3 dias atrás

wp db query: rodar SQL no WordPress pelo WP-CLI sem phpMyAdmin

Precisa de um SELECT no banco do cliente e só tem SSH? O wp db query pega a senha do…

4 dias atrás