Tabla OCRY en SAP Business One (Países/regiones)
OCRY es la tabla de SAP Business One de países y regiones: una fila por código de país, con su nombre, formato de dirección, indicador de la UE, códigos ISO y las reglas de dígitos para identificaciones fiscales y datos bancarios. Las direcciones de los socios de negocios guardan el código de país, así que OCRY convierte OCRD.Country en un nombre legible para reportes de ventas por país.
Campos clave de OCRY
| Campo | Qué contiene |
|---|---|
Code | Código de país/región, la clave. OCRD.Country apunta a él. |
Name | Nombre del país/región. |
AddrFormat | Formato de dirección (OADF). |
IsEC | Y = miembro de la UE, N = no pertenece a la UE. |
ISO2Code / ISO3Code / ISONumeric | Códigos ISO alfa-2, alfa-3 y numérico. |
TaxIdDigts | Número de dígitos de la identificación fiscal. |
BnkCodDgts / BnkActDgts | Número de dígitos del código bancario y del número de cuenta. |
ValIban | Y = validar IBAN, N = sin verificación de IBAN. |
IsBlackLst | Y = en lista negra. |
IsIntraS | Y = transacciones Intrastat. |
ReportCode | Código usado en los reportes. |
Cómo se relaciona OCRY con otras tablas
OCRY es un dato maestro. OCRD.Country (país de facturación) apunta a OCRY.Code, igual que las columnas de país de las direcciones de los socios de negocios y de los datos de dirección de los documentos. OCRY.AddrFormat apunta a la tabla de formatos de dirección.
Joins habituales
OCRD T0 LEFT JOIN OCRY T1 ON T1.Code = T0.Country (país de facturación del socio de negocios)OINV T2 INNER JOIN OCRD T0 ON T0.CardCode = T2.CardCode (facturas y luego el país mediante OCRD)
Cuándo se usa la tabla OCRY
Use OCRY para ventas por país, para separar clientes de la UE y de fuera de la UE (IsEC), para asignar códigos ISO a los códigos de país en archivos de facturación electrónica o EDI y para encontrar socios de negocios sin país.
Consulta de ejemplo: clientes y ventas facturadas por país en este año
SQL Server
SELECT T1.Code, T1.Name, T1.IsEC, COUNT(DISTINCT T0.CardCode) AS Customers, SUM(T2.DocTotal - T2.VatSum) AS SalesExclTax FROM OINV T2 INNER JOIN OCRD T0 ON T0.CardCode = T2.CardCode LEFT JOIN OCRY T1 ON T1.Code = T0.Country WHERE T2.CANCELED = 'N' AND YEAR(T2.DocDate) = YEAR(GETDATE()) GROUP BY T1.Code, T1.Name, T1.IsEC ORDER BY SalesExclTax DESC
SAP HANA (nombres de columna entre comillas dobles)
SELECT T1."Code", T1."Name", T1."IsEC", COUNT(DISTINCT T0."CardCode") AS "Customers", SUM(T2."DocTotal" - T2."VatSum") AS "SalesExclTax" FROM OINV T2 INNER JOIN OCRD T0 ON T0."CardCode" = T2."CardCode" LEFT JOIN OCRY T1 ON T1."Code" = T0."Country" WHERE T2."CANCELED" = 'N' AND YEAR(T2."DocDate") = YEAR(CURRENT_TIMESTAMP) GROUP BY T1."Code", T1."Name", T1."IsEC" ORDER BY "SalesExclTax" DESC
Pegue cualquiera de las dos versiones en Herramientas → Consultas → Generador de consultas. ¿Necesita el otro dialecto para su propia consulta? Use el conversor de SQL a HANA.
Error frecuente: Un INNER JOIN descarta socios sin país
OCRD.Country puede estar vacío. Un INNER JOIN con OCRY descarta sin aviso a esos socios de negocios y sus ventas de un reporte por país. Use LEFT JOIN y muestre el país vacío como una fila propia; luego corrija los datos maestros. Vea Consulta de socios de negocios sin identificación fiscal.
Consultas listas que usan OCRY
- Ventas por cliente en un rango de fechas: Ventas netas por cliente (facturas menos notas de crédito) entre dos fechas, de mayor a menor.
- Socios de negocios sin identificación fiscal: Clientes y proveedores activos sin número de identificación fiscal (VAT / RUC / NIT / NTN).
Preguntas sobre la tabla OCRY
¿Cómo obtengo el nombre del país de un cliente?
Una OCRD.Country con OCRY.Code y lea OCRY.Name.
¿OCRY guarda los códigos ISO de país?
Sí: ISO2Code, ISO3Code e ISONumeric.
¿Cómo encuentro los países de la UE en SAP Business One?
Filtre OCRY.IsEC = 'Y'.
Tablas relacionadas
OCRD (Socios de negocios) · OINV (Factura de clientes (cabecera)) · buscar todas las tablas de SAP Business One
¿Listo para empezar?
Cuéntenos lo que necesita. Recibirá una respuesta técnica clara, un alcance definido y un precio fijo, normalmente en 24 horas.
