Para ayudarte a comprender rápidamente el diccionario de datos de SAP Business One, repasaremos las convenciones de nomenclatura de las tablas en SAP Business One.

Palabras de tres letras

La mayoría de las tablas en SAP Business One tienen cuatro letras. Las únicas excepciones son las tablas con números finales, si estos son mayores que nueve. Estas tablas tendrán cinco letras. Para comprender fácilmente los nombres de las tablas, existe una abreviatura de tres letras en SAP Business One. Algunas de las abreviaturas más comunes son las siguientes:

IDDescriptionDescripción
ADM AdministrationAdministración
ATCAttachmentsAdjuntos
CPRContact PersonsPersonas de contacto
CRDBusiness PartnersSocios de negocios
DLNDelivery NotesNotas de entregas
HEMEmployeesEmpleados
INVSales InvoicesFacturas de ventas
ITMItemsArtículos
ITTProduct Trees (Bill of Materials)Árbol de productos (Listas de materiales)
OPRSales OpportunitiesOportunidad de ventas
PCHPurchase InvoicesFacturas de compras
PDNGoods Receipt POOrden de recepción de mercancías
PORPurchase OrdersOrdenes de compra
QUTSales QuotationsCotizaciones de ventas
RDRSales OrdersOrdenes de venta
RINSales Credit NotesNotas de crédito (ventas)
RPCPurchase Credit NotesNotas de crédito (compras)
SLPSales EmployeesVendedores
USRUsersUsuarios
WORProduction OrdersOrdenes de producción
WTRStock TransfersTransferencias de Stock

Tablas «O»

Todas las tablas que empiezan por «O» se refieren a tablas maestras. Aquí, «O» representa el objeto. Por ejemplo:

IDDescriptionDescripción
OITMItems MasterMaster de productos
OCRDBusiness Partners MasterMaster de socios de negocios
OSLPSales EmployeeEmpleados de ventas

Tablas «A»

La mayoría de las tablas que empiezan por «A» pueden referirse a tablas de registro histórico. La «A» aquí representa el archivo. Por ejemplo:

IDDescriptionDescripción
AITMItems—HistoryProductos - Bitácora
ACRDBusiness Partners—HistorySocios de negocios - Bitácora
AUSRArchive Users—HistoryArchivo de usuarios - Bitácora

Tablas de encabezado de documento

Son tablas O especiales con la misma estructura. Pueden estar relacionadas con Ventas o Compras. Se denominan Documentos de Marketing. También incluyen la mayoría de las tablas de transacciones de inventario. Algunos ejemplos son:

IDDescriptionDescripción
OINVA/R Invoice HeaderEncabezado de factura de cuentas por cobrar
OPCHA/P Invoice HeaderEncabezado de factura de cuentas por pagar
OIGNGoods Receipt HeaderEncabezado de recepción de mercancías

Tablas de líneas (detalle) de documento

Todas las tablas que terminan con un número se refieren a tablas de detalle de líneas de documento o subtablas de la tabla principal. Los números aquí pueden referirse a diferentes propiedades de las tablas de encabezado.

IDDescriptionDescripción
INV1A/R Invoice RowFila de factura de cuentas por cobrar
PCH1A/P Invoice RowFila de factura de cuentas por pagar
IGN1Goods Receipt RowFila de recepción de mercancías
INV2A/R Invoice—Row ExpenseFactura de cuentas por cobrar: Gastos de fila

Ejemplos de tablas importantes

A continuación se enumeran algunas tablas específicas muy importantes para la creación de consultas:

  • OJDT – Asiento contable: Esta tabla incluye todos los asientos contables financieros, independientemente de si se contabilizan de forma automática o manual.
  • OINM – Diario de almacén: Esta tabla incluye todas las transacciones relacionadas con el inventario. Es un punto único para comprobar todo lo relacionado con el inventario (o stock). En la nueva versión, se convierte en una vista. Esta vista debe consultarse con mucho cuidado.
  • ADOC – Historial de documentos: Esta tabla incluye todo el historial de documentos.
    Sin embargo, su nombre incorrecto en la documentación es «Historial de facturas» en el archivo de ayuda.

Enlaces de tabla: la clave para una consulta correcta

Los enlaces de tabla son fundamentales para la creación de consultas. Verá diferentes enlaces en esta sección, pero los más comunes se analizarán en la siguiente, ya que son demasiado numerosos y se utilizan con demasiada frecuencia.

Para comprender los enlaces de tabla, necesita saber más sobre las estructuras de tabla.

Primary Key (Clave principal)

Cada tabla tiene una clave principal. Algunas tablas también tienen claves foráneas. Todas estas claves se utilizan para el índice. Docentry es una clave principal típica para vincular OXXX con tablas de documentos XXXn. Por ejemplo, Docentry es un campo clave común para vincular OPOR con POR1, POR2 y POR12.

Una clave principal puede ser uno o más campos. Para una tabla simple, un campo clave sería suficiente. Para una tabla compleja, no es raro que dos o más campos de clave principal sean suficientes.

Una clave principal debe ser única dentro de la misma tabla. Esta clave no admitirá valores nulos (es decir, campos vacíos o sin datos).

Foreign Key (Clave externa)

Una clave externa (foreign key) se utiliza generalmente para vincular con la clave principal de otra tabla. Este campo se actualizará cada vez que cambie el registro de la otra tabla.
Si bien se puede vincular cualquier campo entre tablas, si el campo no es nulo, se recomienda usar la clave externa siempre que sea posible para mejorar el rendimiento de la base de datos.

Ejemplos de vínculos de tablas en SAP Business One

Para mayor claridad sobre el vínculo, a continuación se muestran algunos ejemplos:

  • Tablas OITM – Artículos e ITM1 – Precios de artículos:
    Estas dos tablas están vinculadas mediante el campo Código de artículo. Ambas tablas tienen el mismo nombre de campo para vincular. No se trata de relaciones uno a uno, sino de uno a muchos. Un Código de artículo en el maestro de artículos puede tener más de un precio de artículo asociado.
  • Tablas OITT – Árbol de productos e ITT1 – Artículos secundarios del árbol de productos:
    Estas dos tablas están vinculadas mediante el campo Código en OITT y el campo Padre en ITT1. Estas tablas se utilizan para la lista de materiales.
  • Tabla OCRD-Socio Comercial y tabla OSLP-Empleado de Ventas:
    Estas dos tablas están vinculadas mediante el mismo campo, SlpCode. En la segunda tabla, SlpCode es la clave principal para OSLP. Por otro lado, es una clave externa en la primera tabla, OCRD.

Tablas base vs. tablas de destino

Las tablas base y de destino son tablas vinculadas especiales dentro de SAP Business One. También son las tablas vinculadas más utilizadas para consultas SQL.
La mayoría de ellas se relacionan con documentos de Ventas y Compras, o todos los llamados «Documentos de Marketing».

Es posible que los documentos de marketing no tengan tablas base ni tablas de destino. Para obtener el Documento Base, puede usar el atajo de teclado Ctrl+N. Para obtener el Documento de Destino, puede usar el atajo de teclado Ctrl+T. Solo cuando la tabla base o la tabla de destino estén disponibles para el documento actual, los elementos de menú y los iconos estarán activos. De lo contrario, tanto los iconos como los elementos de menú estarán inactivos.

Al usar los términos «Base» y «Destino», queda claro que la tabla de destino puede basarse en la tabla base.
Una tabla podría basarse en diferentes tipos de tablas:

A continuación, se presenta una lista de pares base-destino comúnmente utilizados (no se incluyen todos). Puede encontrar más, pero los siguientes son los más utilizados:

BASE« »TARGET
TableDescription« »TableDescription
OQUTSales Quotation« »ORDRSales Order
OQUTSales Quotation« »ODLNDelivery
OQUTSales Quotation« »OINVA/R Invoice
ORDRSales Order« »ODLNDelivery
ORDRSales Order« »OINVA/R Invoice
ODLNDelivery« »ORDNReturns
ODLNDelivery« »OINVA/R Invoice
ORDNReturns« »ORINA/R Credit Note
ODLNA/R Invoice« »ORINA/R Credit Note
OPORPurchase Order« »OPDNGoods Receipt PO
OPORPurchase Order« »OPCHA/P Invoice
OPDNGoods Receipt PO« »ORPDGoods return
OPDNGoods Receipt PO« »OPCHA/P Invoice
ORPDGoods return« »ORPCA/P Credit Note
OPCHA/P Invoice« »ORPCA/P Credit Note

He omitido los detalles del enlace. De hecho, verá que todos los enlaces existen en la primera tabla secundaria, o la llamada tabla de filas de la tabla de encabezado, como QUT1, en lugar de OQUT.

Los campos de enlace son muy claros. Por ejemplo:

  • BaseEntry en la tabla de destino se refiere a DocEntry de la tabla base.
  • BaseType se refiere a los tipos de la tabla base.
  • BaseRef suele estar vinculado al campo DocNum de la tabla base.
  • BaseLine será el número de línea en la tabla de líneas base.
  • TargetEntry en la tabla base se refiere a DocEntry de la tabla de destino.
  • TargetType se refiere a los tipos de la tabla de destino.

Manteniéndolo simple: la clave para crear una buena consulta.

La simplicidad es fundamental en el cambiante mundo actual. Dondequiera que compliques las cosas, puedes encontrarte en una posición incómoda para competir con otros.

Mi lema es: simple, más simple, lo más simple.

Tengo una costumbre al crear consultas: el último paso para cualquier consulta nueva es comprobar si es la más simple. De esta manera, la simplicidad no solo se mantiene en la consulta ya creada, sino que también ayuda a que las nuevas consultas sean las más simples desde el principio.
Al mantener una consulta lo más simple posible, se garantiza que el rendimiento del sistema no se vea afectado. También será de gran ayuda para el proceso de resolución de problemas. Una breve lista de verificación para la simplicidad es la siguiente:

  • Otras consultas: ¿Existen otras consultas que realicen una función similar? De ser así, ¿por qué es necesario crear la nueva consulta?
  • Tablas: ¿Hay alguna tabla que no se haya utilizado para la consulta? • Campos: ¿Hay campos que no se hayan utilizado en la consulta?
  • Condiciones: ¿Hay alguna condición que se superponga?

La lista podría ser mucho más larga. El significado es claro: existe una lucha constante por eliminar las complicaciones.

Cuando pruebes este método y se convierta en una rutina, descubrirás que la creación de consultas se convierte en un proceso agradable.

Shares: