Tabela OCRD no SAP Business One (Parceiros de negócios)

OCRD é a tabela de cadastro de parceiros de negócios do SAP Business One: clientes, fornecedores e leads ficam aqui e são diferenciados pelo CardType. A chave é CardCode; os endereços ficam na CRD1 e as pessoas de contato na OCPR.

Campos-chave da OCRD

CampoO que contém
CardCodeChave do parceiro de negócios. Usada em todos os documentos (OINV, ORDR, OPCH…).
CardNameNome.
CardTypeC = cliente, S = fornecedor (supplier), L = lead.
GroupCodeGrupo de parceiros de negócios. Relaciona com OCRG.GroupCode.
LicTradNumIdentificação fiscal: CNPJ/CPF, NIT, RUC, número de VAT ou TRN, usada pela nota fiscal eletrônica.
BalanceSaldo da conta em moeda local.
CreditLineLimite de crédito.
GroupNumCondições de pagamento. Relaciona com OCTG.GroupNum.
SlpCodeVendedor padrão. Relaciona com OSLP.
Phone1Telefone principal.
E_MailEndereço de e-mail.
frozenForY se o parceiro de negócios está inativo (congelado).

Como a OCRD se relaciona com outras tabelas

OCRD é um dado mestre. As tabelas filhas usam CardCode como chave: CRD1 (endereços, uma linha por endereço e tipo), OCPR (pessoas de contato) e CRD7 (identificações fiscais adicionais). Os documentos copiam CardCode e CardName para o cabeçalho, então um relatório pode mostrar o nome como estava no documento ou fazer join com a OCRD para obter o nome atual.

Joins mais comuns

  • OCRD T0 LEFT JOIN CRD1 T1 ON T0.CardCode = T1.CardCode (endereços)
  • OCRD T0 LEFT JOIN OCPR T2 ON T0.CardCode = T2.CardCode (contatos)
  • OCRD T0 LEFT JOIN OCRG T3 ON T0.GroupCode = T3.GroupCode (grupo de parceiros de negócios)
  • OCRD T0 LEFT JOIN OCTG T4 ON T0.GroupNum = T4.GroupNum (condições de pagamento)

Quando usar a tabela OCRD

A OCRD alimenta listas de clientes, controle de crédito, ligações de cobrança e validações para a nota fiscal eletrônica. Antes de entrar em produção com ZATCA, SRI, FEL, DTE ou PINT AE, verifique se cada cliente ativo tem um LicTradNum válido, porque a autoridade fiscal ou o certificador rejeita as notas sem ele.

Crie clientes e fornecedores pela DI API (objeto BusinessPartners) ou pelo Service Layer (BusinessPartners). Enviar um CardCode que já existe retorna -2035 “This entry already exists” (este registro já existe), então verifique o código antes do Add(). Veja -2035 e outros erros da DI API.

Consulta de exemplo: clientes ativos com saldo e limite de crédito

SQL Server

SELECT T0.CardCode, T0.CardName, T0.LicTradNum, T0.Balance, T0.CreditLine,
  T0.Phone1, T0.E_Mail
FROM OCRD T0
WHERE T0.CardType = 'C' AND T0.frozenFor = 'N'
ORDER BY T0.Balance DESC

SAP HANA (nomes de colunas entre aspas duplas)

SELECT T0."CardCode", T0."CardName", T0."LicTradNum", T0."Balance", T0."CreditLine",
  T0."Phone1", T0."E_Mail"
FROM OCRD T0
WHERE T0."CardType" = 'C' AND T0."frozenFor" = 'N'
ORDER BY T0."Balance" DESC

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: Esquecer o CardType

Clientes, fornecedores e leads compartilham a OCRD, então uma consulta sem CardType = 'C' ou 'S' mistura todos. Os leads (L) não têm lançamentos, mas aparecem em contagens e exportações. Veja Parceiros de negócios sem identificação fiscal.

Consultas prontas que usam a OCRD (em inglês)

Tabelas relacionadas

OINV (Nota fiscal de saída (cabeçalho)) · ORDR (Pedido de venda (cabeçalho)) · OPCH (Nota fiscal de entrada (cabeçalho)) · pesquisar todas as tabelas do SAP Business One

Fontes: Documentação e SDK do SAP Business One (referência das tabelas do banco de dados da DI API), SAP Help Portal.

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.