Integración con Oracle EBS

La integración de Oracle EBS (E-Business Suite) admite modelos de datos de pedido a efectivo con transferencia de datos mediante Incorta. Incorta usa una instancia privada o alojada para transferir los datos de Oracle a un conjunto de datos de CDC de BigQuery y controla el procesamiento de CDC. A partir de ahí, Cortex Framework transforma y materializa los datos de los CDC en recursos de informes con Cloud Composer para orquestar trabajos de BigQuery.

En el siguiente diagrama, se describe cómo los datos de Oracle EBS están disponibles a través de la carga de trabajo operativa de Oracle EBS:

Fuente de datos de Oracle EBS

Figura 1. Descripción general de la integración de Cortex Framework, Oracle EBS y Incorta .

Configuración de implementación

En la siguiente tabla, se comparten los parámetros para configurar la carga de trabajo de Oracle EBS: El archivo config.json configura la configuración necesaria para transferir datos desde cualquier fuente de datos, incluido Oracle EBS. Este archivo contiene los siguientes parámetros para Oracle EBS:

Parámetro Significado Valor predeterminado Descripción Campo de fuente de Oracle coincidente
OracleEBS.itemCategorySetIDs Conjuntos de categorías de artículos [1100000425] Es la lista de conjuntos que se usarán para categorizar los elementos. MTL_ITEM_CATEGORIES.CATEGORY_SET_ID
OracleEBS.currencyConversionType Tipo de conversión de moneda "Corporate" Es el tipo de conversión de moneda que se usará en las tablas agregadas. GL_DAILY_RATES.CONVERSION_TYPE
OracleEBS.currencyConversionTargets Objetivos de conversión de moneda ["USD"] Es la lista de monedas de destino que se incluirán en las tablas conjuntas. GL_DAILY_RATES.TO_CURRENCY
OracleEBS.languages Idiomas ["US"] Es una lista de idiomas para presentar traducciones de campos, como las descripciones de los artículos. FND_LANGUAGES.LANGUAGE_CODE
OracleEBS.datasets.cdc Conjunto de datos del CDC - Conjunto de datos de CDC. -
OracleEBS.datasets.reporting Conjunto de datos de informes "REPORTING_OracleEBS" Conjunto de datos de informes. -

Transferencia de datos

Comunícate con un representante de Incorta y consulta la Guía de configuración de EBS de Oracle para Google Cortex para obtener detalles sobre cómo transferir datos de Oracle a BigQuery.

Aunque Incorta admite la programación de trabajos de transferencia de datos en varios intervalos, para obtener un rendimiento óptimo y una actualización de datos, te recomendamos que programes los trabajos de transferencia de datos de Incorta para que se ejecuten a diario. Si tu caso de uso requiere el manejo de datos borrados, asegúrate de habilitarlos siguiendo las instrucciones en la documentación de Incorta, Cómo manejar las eliminaciones de fuentes.

Parámetros de configuración de informes

En esta sección, se describen los parámetros de configuración de informes necesarios para tu entorno.

Conexión de Airflow de Cloud Composer

Crea una conexión de BigQuery Airflow llamada oracleebs_reporting_bq que usará el operador de BigQuery para realizar transformaciones de informes. Consulta más detalles en la documentación para administrar conexiones de Airflow.

Configuración de Materializer

Busca la configuración de materialización en src/OracleEBS/config/reporting_settings.yaml. De forma predeterminada, las tablas de dimensión, encabezado y agregación se materializan a diario. Las tablas de la capa de informes también se particionan por fecha. Las particiones y el agrupamiento se pueden personalizar si es necesario. Para obtener más información, consulta Configuración del clúster y Partición de tablas.

Modelo de datos

En esta sección, se describe el modelo de datos lógicos de Order to Cash de EBS de Oracle. En cada subsección, se explica el siguiente diagrama de relaciones de entidades (ERD) de EBS de Oracle.

Diagrama de relaciones de entidades para Oracle EBS

Figura 2: Oracle EBS: Diagrama de relaciones de entidades.

Vistas de datos básicos

Estos son los objetos azules del ERE y son vistas en tablas de CDC sin transformaciones, excepto algunos alias de nombres de columnas.

Tablas de dimensiones

Estos son los objetos morados del ERE y contienen los atributos dimensionales relevantes que usan las tablas de informes. De forma predeterminada, estas dimensiones se filtran según los valores de los parámetros de la configuración de la implementación cuando corresponde. Esta integración también usa la dimensión del calendario gregoriano de Cortex K9 para los atributos de fecha, que se implementa de forma predeterminada.

Tablas de encabezado

Estos son los objetos verdes en el ERE y contienen los hechos y las dimensiones unidos que describen entidades comerciales, como pedidos y facturas, a nivel del encabezado. Las tablas de encabezados se particionan según una fecha de evento principal que corresponde a cada entidad, por ejemplo, ORDERED_DATE o INVOICE_DATE.

Líneas anidadas y repetidas

Las tablas SalesOrders y SalesInvoices contienen campos repetidos anidados llamados LINES. Estos campos agrupan las distintas líneas de pedido y de factura según sus encabezados asociados. Para consultar estos campos anidados, usa el operador UNNEST para compactar los elementos en filas, como se muestra en las secuencias de comandos de muestra proporcionadas (src/OracleEBS/src/reporting/ddls/samples/).

Atributos anidados y repetidos

Algunas tablas contienen campos repetidos anidados adicionales, como ITEM_CATEGORIES o ITEM_DESCRIPTIONS, en los que se pueden aplicar varios valores del mismo atributo a la entidad. Si anulas estos atributos repetidos, asegúrate de filtrar hasta un valor de atributo único para evitar el recuento excesivo de medidas.

Acreencias aplicadas

SalesAppliedReceivables es una tabla única en la que las entidades pueden hacer referencia a facturas por su cuenta o a una factura con un recibo de efectivo. Por lo tanto, hay campos INVOICE y CASH_RECEIPT anidados (pero no repetidos), en los que el campo CASH_RECEIPT solo se propaga cuando APPLICATION_TYPE = 'CASH'.

Tablas conjuntas

Estos son los objetos rojos en el ERE y se agregan desde las tablas de encabezado hasta las medidas diarias. Cada una de estas tablas también se particiona por una fecha de evento principal. Las tablas agregadas solo contienen medidas aditivos (por ejemplo, recuentos y sumas) y no incluyen medidas como promedios y proporciones. Esto significa que los usuarios deben derivar las medidas no agregativas para garantizar que se puedan derivar de manera adecuada cuando se agregan hasta un nivel más alto, como mensual. Consulta secuencias de comandos de muestra, como src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql.

Importes de conversión de moneda

Cada tabla agregada usa la dimensión CurrencyRateMD para crear un campo repetido anidado de AMOUNTS que contiene medidas de moneda convertidas en cada una de las monedas objetivo especificadas en la configuración de implementación. Cuando uses estas medidas, asegúrate de filtrar por una sola moneda de destino o agrupar por monedas de destino para los informes para evitar un recuento excesivo. Esto también se puede ver en las secuencias de comandos de muestra, como src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql.

Atributos y medidas de líneas anidadas

La tabla SalesOrdersDailyAgg contiene un campo repetido anidado llamado LINES para diferenciar entre atributos y medidas a nivel de la línea (por ejemplo, ITEM_CATEGORY_NAME y AMOUNTS) en comparación con atributos y medidas a nivel del encabezado (por ejemplo, BILL_TO_CUSTOMER_NAME y NUM_ORDERS). Ten cuidado de consultar estos granos por separado para evitar un recuento excesivo.

Aunque las facturas también tienen una noción de encabezados en comparación con las líneas, la tabla SalesInvoicesDailyAgg solo contiene medidas a nivel de la línea, por lo que no sigue la misma estructura que SalesOrdersDailyAgg.

Próximos pasos