Tabela OPOR no SAP Business One (Pedido de compra (cabeçalho))
OPOR é a tabela do SAP Business One que guarda o cabeçalho de cada pedido de compra: fornecedor, datas, totais e status. As linhas ficam na POR1, relacionadas por DocEntry, e o tipo de objeto é 22. Os recebimentos de mercadorias (OPDN/PDN1) e as notas fiscais de entrada (OPCH/PCH1) copiados do pedido apontam para ele por BaseType, BaseEntry e BaseLine.
Campos-chave da OPOR
| Campo | O que contém |
|---|---|
DocEntry | Chave interna. Relaciona com POR1.DocEntry. |
DocNum | Número do pedido de compra que os usuários veem. |
DocDate | Data de lançamento do pedido. |
DocDueDate | Data de entrega prevista. |
CardCode | Fornecedor. Relaciona com OCRD.CardCode. |
DocTotal | Total do pedido com imposto. |
DocStatus | O = em aberto, C = fechado (recebido por completo ou fechado manualmente). |
CANCELED | Y se o pedido foi cancelado. |
POR1.ItemCode | Item pedido. Relaciona com OITM.ItemCode. |
POR1.Quantity | Quantidade pedida na linha. |
POR1.OpenQty | Quantidade que falta receber. |
POR1.LineStatus | O = em aberto, C = fechada. |
POR1.WhsCode | Depósito de recebimento. Relaciona com OWHS. |
Como a OPOR se relaciona com outras tabelas
OPOR é o cabeçalho e POR1 as linhas, relacionadas por DocEntry e identificadas por LineNum. Quando um recebimento de mercadorias ou uma nota fiscal de entrada é criado a partir do pedido, cada linha de destino grava BaseType = 22, BaseEntry = o POR1.DocEntry e BaseLine = o POR1.LineNum. No sentido contrário, POR1.TargetType e TrgetEntry mostram o documento para o qual a linha foi copiada (20 = recebimento de mercadorias, 18 = nota fiscal de entrada).
Joins mais comuns
OPOR T0 INNER JOIN POR1 T1 ON T0.DocEntry = T1.DocEntry (linhas)PDN1 T2 ON T2.BaseType = 22 AND T2.BaseEntry = T1.DocEntry AND T2.BaseLine = T1.LineNum (recebimentos de mercadorias criados a partir do pedido)PCH1 T3 ON T3.BaseType = 22 AND T3.BaseEntry = T1.DocEntry AND T3.BaseLine = T1.LineNum (notas fiscais de entrada copiadas direto do pedido)OPOR T0 INNER JOIN OCRD T4 ON T0.CardCode = T4.CardCode (fornecedor)
Quando usar a tabela OPOR
Use a OPOR e a POR1 para o acompanhamento de fornecedores (follow-up), os recebimentos previstos por depósito, o valor dos compromissos em aberto e a revisão de preços de compra. Trabalhe com as linhas para tudo que envolve quantidades, porque um pedido de compra costuma ser recebido em várias entregas.
Consulta de exemplo: linhas de pedidos de compra em aberto com valor a receber
SQL Server
SELECT T0.DocNum, T0.DocDueDate, T0.CardCode, T0.CardName, T1.ItemCode, T1.Dscription, T1.Quantity, T1.OpenQty, T1.WhsCode, T1.OpenQty * T1.Price AS OpenValue FROM OPOR T0 INNER JOIN POR1 T1 ON T0.DocEntry = T1.DocEntry WHERE T0.DocStatus = 'O' AND T0.CANCELED = 'N' AND T1.LineStatus = 'O' ORDER BY T0.DocDueDate, T0.DocNum
SAP HANA (nomes de colunas entre aspas duplas)
SELECT T0."DocNum", T0."DocDueDate", T0."CardCode", T0."CardName", T1."ItemCode", T1."Dscription", T1."Quantity", T1."OpenQty", T1."WhsCode", T1."OpenQty" * T1."Price" AS "OpenValue" FROM OPOR T0 INNER JOIN POR1 T1 ON T0."DocEntry" = T1."DocEntry" WHERE T0."DocStatus" = 'O' AND T0."CANCELED" = 'N' AND T1."LineStatus" = 'O' ORDER BY T0."DocDueDate", T0."DocNum"
Cole qualquer uma das duas versões em Ferramentas → Consultas → Gerador de consultas. Precisa do outro dialeto para a sua própria consulta? Use o conversor de SQL para HANA.
Erro comum: O cabeçalho continua em aberto enquanto houver uma linha em aberto
OPOR.DocStatus continua 'O' até que todas as linhas estejam fechadas, então um relatório só de cabeçalho mostra um pedido 90% recebido como totalmente pendente. Use POR1.OpenQty e LineStatus. E ao rastrear recebimentos, compare os três campos base (BaseType, BaseEntry, BaseLine): o BaseEntry sozinho também coincide com outros tipos de documento que usam o mesmo número. Veja Consulta de pedidos de compra em aberto.
Consultas prontas que usam a OPOR (em inglês)
- Open purchase orders by vendor: Open purchase order lines with quantity still to receive, grouped by vendor.
- Last purchase price per item: The most recent A/P invoice price, vendor and date for every item.
Tabelas relacionadas
OPCH (Nota fiscal de entrada (cabeçalho)) · OITM (Itens (cadastro de itens)) · OITW (Estoque do item por depósito) · pesquisar todas as tabelas do SAP Business One
Pronto para começar?
Diga do que você precisa. Você recebe uma resposta técnica clara, um escopo fechado e um preço, normalmente em até 24 horas.
