Tabela OSTC no SAP Business One (Códigos de imposto sobre vendas)

OSTC é a tabela do SAP Business One de códigos de imposto sobre vendas: uma linha por código com nome, alíquota combinada, se é válido para vendas (clientes) e para compras (fornecedores) e um indicador de inativo. As linhas de documentos o guardam em TaxCode e os parceiros de negócios em OCRD.VatGroup, então a OSTC fornece a alíquota e o nome nos relatórios de imposto sobre vendas.

Campos-chave da OSTC

CampoO que contém
CodeCódigo de imposto sobre vendas, a chave. INV1.TaxCode e JDT1.TaxCode apontam para ele.
NameNome do código de imposto.
RateAlíquota.
ValidForARY = válido para documentos de clientes.
ValidForAPY = válido para documentos de fornecedores.
FreightY = frete.
LockY = inativo, N = ativo.
TfcIdID da combinação de fórmulas (OTFC).
IsSystemY = código de imposto do sistema.
EfctDateVigente a partir da data.
VatExemptY = aplicar isenção de IVA.
ProviderProvedor do serviço de impostos.

Como a OSTC se relaciona com outras tabelas

OSTC é um dado mestre. As linhas de documentos levam TaxCode (INV1.TaxCode e as demais tabelas de linhas), as linhas de lançamentos contábeis levam JDT1.TaxCode e OCRD.VatGroup guarda o código de imposto padrão de um parceiro de negócios, e todos apontam para OSTC.Code. As definições de impostos das configurações baseadas em IVA ficam na OVTG.

Joins mais comuns

  • INV1 T0 INNER JOIN OSTC T1 ON T1.Code = T0.TaxCode (código de imposto da linha da nota fiscal)
  • JDT1 T2 INNER JOIN OSTC T1 ON T1.Code = T2.TaxCode (código de imposto da linha do lançamento)
  • OCRD T3 LEFT JOIN OSTC T1 ON T1.Code = T3.VatGroup (código de imposto padrão do parceiro de negócios)

Quando usar a tabela OSTC

Use a OSTC para totalizar as vendas tributadas e o imposto por código, listar os códigos válidos para vendas ou compras e encontrar clientes cujo código de imposto padrão está inativo.

Consulta de exemplo: vendas tributadas e imposto por código de imposto sobre vendas neste mês

SQL Server

SELECT T1.Code, T1.Name, T1.Rate, SUM(T0.LineTotal) AS NetAmount, SUM(T0.VatSum) AS TaxAmount
FROM INV1 T0
INNER JOIN OINV T2 ON T2.DocEntry = T0.DocEntry
INNER JOIN OSTC T1 ON T1.Code = T0.TaxCode
WHERE T2.CANCELED = 'N' AND T2.DocDate >= DATEADD(day, 1 - DAY(GETDATE()), CAST(GETDATE() AS date))
GROUP BY T1.Code, T1.Name, T1.Rate
ORDER BY T1.Code

SAP HANA (nomes de colunas entre aspas duplas)

SELECT T1."Code", T1."Name", T1."Rate", SUM(T0."LineTotal") AS "NetAmount", SUM(T0."VatSum") AS "TaxAmount"
FROM INV1 T0
INNER JOIN OINV T2 ON T2."DocEntry" = T0."DocEntry"
INNER JOIN OSTC T1 ON T1."Code" = T0."TaxCode"
WHERE T2."CANCELED" = 'N' AND T2."DocDate" >= ADD_DAYS(CAST(CURRENT_TIMESTAMP AS date), 1 - DAYOFMONTH(CURRENT_TIMESTAMP))
GROUP BY T1."Code", T1."Name", T1."Rate"
ORDER BY T1."Code"

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: OCRD.VatGroup é um código de imposto, não um grupo de IVA

Apesar do nome, OCRD.VatGroup aponta para a OSTC (códigos de imposto sobre vendas), enquanto OCRD.ECVatGroup aponta para a OVTG. Nas linhas de documentos e de lançamentos é o contrário: TaxCode vai para a OSTC e VatGroup para a OVTG. Confira qual coluna a sua localização preenche antes de fazer o join. Veja Tabela OVTG (grupos de impostos).

Perguntas sobre a tabela OSTC

Qual coluna das linhas aponta para a OSTC?

TaxCode, por exemplo INV1.TaxCode e JDT1.TaxCode.

Como encontro os códigos de imposto válidos para compras?

Filtre OSTC.ValidForAP = 'Y'; ValidForAR faz o mesmo para vendas.

Como um código de imposto sobre vendas é marcado como inativo?

OSTC.Lock = 'Y' significa inativo.

Tabelas relacionadas

OVTG (Definições de impostos (grupos de IVA)) · INV1 (Nota fiscal de saída (linhas)) · JDT1 (Linhas do lançamento contábil) · OCRD (Parceiros de negócios) · 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.