Integración con Oracle EBS

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

En el siguiente diagrama se describe cómo se pueden obtener los datos de Oracle EBS a través de la carga de trabajo operativa de Oracle EBS:

Fuente de datos de Oracle EBS

Imagen 1. Descripción general de la integración de Cortex Framework, Oracle EBS e Incorta .

Configuración del despliegue

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

Parámetro Significado Valor predeterminado Descripción Campo de origen de Oracle coincidente
OracleEBS.itemCategorySetIDs Conjuntos de categorías de artículos [1100000425] 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" Tipo de conversión de moneda que se va a usar en las tablas agregadas. GL_DAILY_RATES.CONVERSION_TYPE
OracleEBS.currencyConversionTargets Objetivos de conversión de moneda ["USD"] Lista de monedas de destino que se incluirán en las tablas conjuntas. GL_DAILY_RATES.TO_CURRENCY
OracleEBS.languages Idiomas ["US"] Lista de idiomas en los que se mostrarán las traducciones de campos como las descripciones de los artículos. FND_LANGUAGES.LANGUAGE_CODE
OracleEBS.datasets.cdc Conjunto de datos de los CDC - Conjunto de datos de los CDC. -
OracleEBS.datasets.reporting Conjunto de datos de informes "REPORTING_OracleEBS" Conjunto de datos de informes. -

Ingestión de datos

Ponte en contacto con un representante de Incorta y consulta la guía de configuración de Oracle EBS para Google Cortex para obtener información sobre cómo ingerir datos de Oracle en BigQuery.

Aunque Incorta admite la programación de trabajos de ingestión de datos a intervalos diferentes, para conseguir un rendimiento y una actualización de los datos óptimos, recomendamos programar los trabajos de ingestión de datos de Incorta para que se ejecuten a diario. Si tu caso práctico requiere gestionar datos eliminados, asegúrate de habilitarlos siguiendo las instrucciones de la documentación de Incorta, Handling source deletes (Gestión de eliminaciones de fuentes).

Configuraciones de informes

En esta sección se describen las configuraciones de informes necesarias para su 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. Para obtener más información, consulta la documentación sobre cómo gestionar conexiones de Airflow.

Configuración de Materializer

Encuentra los ajustes 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 tienen particiones por fechas. Las particiones y los clústeres 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ógico de Oracle EBS Order to Cash. En cada subsección se explica el siguiente diagrama de relaciones entre entidades (DRE) de Oracle EBS.

Diagrama de relaciones entre entidades de Oracle EBS

Imagen 2. Oracle EBS: diagrama de relaciones entre entidades.

Vistas de hechos básicos

Son los objetos azules del diagrama ER y son vistas de tablas de CDC sin transformaciones, salvo algunos alias de nombres de columna.

Tablas de dimensiones

Son los objetos morados del diagrama ER y contienen los atributos de dimensión relevantes que usan las tablas de informes. De forma predeterminada, estas dimensiones se filtran en función de los valores del parámetro deployment configuration (configuración de la implementación) cuando procede. Esta integración también usa la dimensión del calendario gregoriano Cortex K9 para los atributos de fecha, que se implementa de forma predeterminada.

Tablas de encabezado

Son los objetos verdes del diagrama ER y contienen los hechos y las dimensiones combinados que describen entidades empresariales, como pedidos y facturas, a nivel de encabezado. Las tablas de encabezado se particionan por una fecha de evento principal correspondiente 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 líneas de factura en los encabezados asociados. Para consultar estos campos anidados, usa el operador UNNEST para convertir los elementos en filas, tal como se muestra en las secuencias de comandos de ejemplo proporcionadas (src/OracleEBS/src/reporting/ddls/samples/).

Atributos anidados y repetidos

Algunas tablas contienen campos repetidos anidados adicionales, como ITEM_CATEGORIES o ITEM_DESCRIPTIONS, donde se pueden aplicar varios valores del mismo atributo a la entidad. Si desanida estos atributos repetidos, asegúrese de filtrar por un solo valor de atributo para evitar que se contabilicen las métricas en exceso.

Cuentas por cobrar aplicadas

SalesAppliedReceivables es una tabla única en la que las entidades pueden hacer referencia a facturas por sí solas o a facturas con recibos de efectivo. Por lo tanto, hay campos INVOICE y CASH_RECEIPT anidados (pero no repetidos), donde el campo CASH_RECEIPT solo se rellena cuando APPLICATION_TYPE = 'CASH'.

Tablas de datos agregados

Estos son los objetos rojos del diagrama ER 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 aditivas (por ejemplo, recuentos y sumas) y no incluyen medidas como medias y proporciones. Esto significa que los usuarios deben obtener las medidas no aditivas para asegurarse de que se puedan obtener correctamente al agregar datos a un nivel superior, como el mensual. Consulta secuencias de comandos de ejemplo 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 a cada una de las monedas de destino especificadas en la configuración de la implementación. Cuando utilice estas métricas, asegúrese de filtrar por una sola moneda de destino o por un grupo de monedas de destino para generar informes y evitar que se contabilicen en exceso. También se puede ver en las secuencias de comandos de ejemplo, 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 los atributos y las medidas a nivel de línea (por ejemplo, ITEM_CATEGORY_NAME y AMOUNTS) y los atributos y las medidas a nivel de encabezado (por ejemplo, BILL_TO_CUSTOMER_NAME y NUM_ORDERS). Consulta estos detalles por separado para evitar que se contabilicen varias veces.

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

Siguientes pasos