Integrazione con Oracle EBS

L'integrazione di Oracle EBS (E-Business Suite) supporta i modelli di dati Order to Cash con l'importazione dei dati utilizzando Incorta. Incorta utilizza un'istanza ospitata o privata per importare i dati da Oracle in un set di dati CDC BigQuery e gestisce l'elaborazione CDC. Da qui, Cortex Framework trasforma e materializza i dati CDC in asset di reporting utilizzando Cloud Composer per orchestrare i job BigQuery.

Il seguente diagramma descrive come i dati di Oracle EBS sono disponibili tramite il carico di lavoro operativo di Oracle EBS:

Origine dati Oracle EBS

Figura 1. Panoramica dell'integrazione di Cortex Framework, Oracle EBS e Incorta .

Configurazione del deployment

La tabella seguente riporta i parametri per la configurazione del carico di lavoro Oracle EBS: Il file config.json configura le impostazioni necessarie per trasferire i dati da qualsiasi origine dati, incluso Oracle EBS. Questo file contiene i seguenti parametri per Oracle EBS:

Parametro Significato Valore predefinito Descrizione Campo dell'origine Oracle corrispondente
OracleEBS.itemCategorySetIDs Set di categorie di articoli [1100000425] Elenco di insiemi da utilizzare per classificare gli elementi. MTL_ITEM_CATEGORIES.CATEGORY_SET_ID
OracleEBS.currencyConversionType Tipo di conversione di valuta "Corporate" Tipo di conversione valuta da utilizzare nelle tabelle aggregate. GL_DAILY_RATES.CONVERSION_TYPE
OracleEBS.currencyConversionTargets Target di conversione di valuta ["USD"] Elenco delle valute target da includere nelle tabelle aggregate. GL_DAILY_RATES.TO_CURRENCY
OracleEBS.languages Lingue ["US"] Elenco delle lingue in cui presentare le traduzioni di campi come le descrizioni degli articoli. FND_LANGUAGES.LANGUAGE_CODE
OracleEBS.datasets.cdc Set di dati CDC - Set di dati CDC. -
OracleEBS.datasets.reporting Set di dati dei report "REPORTING_OracleEBS" Set di dati dei report. -

Importazione dati

Contatta un rappresentante di Incorta e consulta la guida alla configurazione di Oracle EBS per Google Cortex per informazioni sull'importazione dei dati da Oracle a BigQuery.

Sebbene Incorta supporti la pianificazione dei job di importazione dei dati a vari intervalli, per un rendimento ottimale e l'aggiornamento dei dati, consigliamo di pianificare l'esecuzione giornaliera dei job di importazione dei dati di Incorta. Se il tuo caso d'uso richiede la gestione dei dati eliminati, assicurati di attivarli seguendo le istruzioni riportate nella sezione Gestione delle eliminazioni delle origini della documentazione di Incorta.

Configurazioni dei report

Questa sezione illustra le configurazioni dei report necessarie per il tuo ambiente.

Connessione Airflow di Cloud Composer

Crea una connessione BigQuery Airflow denominata oracleebs_reporting_bq che verrà utilizzata dall'operatore BigQuery per eseguire le trasformazioni dei report. Per ulteriori dettagli, consulta la documentazione sulla gestione delle connessioni Airflow.

Impostazioni di Materializer

Trova le impostazioni di materializzazione in src/OracleEBS/config/reporting_settings.yaml. Per impostazione predefinita, le tabelle dimensione, intestazione e aggregate vengono materializzate ogni giorno. Anche le tabelle del livello di generazione di report sono partizionate per data. Le partizioni e il clustering possono essere personalizzati se necessario. Per ulteriori informazioni, consulta Impostazioni cluster e Partizione della tabella.

Modello dati

Questa sezione descrive il modello di dati logico Order to Cash di Oracle EBS. Ogni sezione descrive il seguente diagramma ER (Entity Relationship Diagram) di Oracle EBS.

Diagramma delle relazioni tra entità per Oracle EBS

Figura 2. Oracle EBS: diagramma delle relazioni tra entità.

Visualizzazioni dei fatti di base

Questi sono gli oggetti blu nell'ERD e sono viste sulle tabelle CDC senza trasformazioni diverse da alcuni alias dei nomi delle colonne.

Tabelle delle dimensioni

Si tratta degli oggetti viola nell'ERD e contengono gli attributi dimensionali pertinenti utilizzati dalle tabelle dei report. Per impostazione predefinita, queste dimensioni vengono filtrate in base ai valori dei parametri di configurazione del deployment, se applicabili. Questa integrazione utilizza anche la dimensione del calendario gregoriano di Cortex K9 per gli attributi data, che viene implementata per impostazione predefinita.

Intestazioni delle tabelle

Si tratta degli oggetti verdi nell'ERD e contengono i fatti e le dimensioni uniti che descrivono entità aziendali come ordini e fatture a livello di intestazione. Le tabelle di intestazione sono partizionate in base a una data dell'evento principale corrispondente a ogni entità, ad esempio ORDERED_DATE o INVOICE_DATE.

Righe nidificate e ripetute

Le tabelle SalesOrders e SalesInvoices contengono campi ripetuti nidificati chiamati LINES. Questi campi raggruppano le varie righe dell'ordine e della fattura sotto le intestazioni associate. Per eseguire query su questi campi nidificati, utilizza l'operatore UNNEST per appiattire gli elementi in righe, come mostrato negli script di esempio forniti (src/OracleEBS/src/reporting/ddls/samples/).

Attributi nidificati e ripetuti

Alcune tabelle contengono campi ripetuti nidificati aggiuntivi, come ITEM_CATEGORIES o ITEM_DESCRIPTIONS, in cui possono essere applicati più valori dello stesso attributo all'entità. Se estrai questi attributi ripetuti, assicurati di filtrare fino a un singolo valore dell'attributo per evitare di conteggiare eccessivamente le misure.

Crediti applicati

SalesAppliedReceivables è una tabella univoca in quanto le entità possono fare riferimento alle fatture da sole o a una fattura con una ricevuta di cassa. Di conseguenza, esistono campi INVOICE e CASH_RECEIPT nidificati (ma non ripetuti), in cui il campo CASH_RECEIPT viene compilato solo quando APPLICATION_TYPE = 'CASH'.

Tabelle aggregate

Si tratta degli oggetti rossi nell'ERD e vengono aggregati dalle tabelle di intestazione fino alle misure giornaliere. Inoltre, ciascuna di queste tabelle è partizionata in base a una data di evento principale. Le tabelle aggregate contengono solo misure additive (ad es. conteggi, somme) e non includono misure come medie e rapporti. Ciò significa che gli utenti devono ricavare le misure non additive per assicurarsi che possano essere ricavate in modo appropriato quando vengono aggregate fino a un livello più elevato, ad esempio mensile. Consulta script di esempio come src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql.

Importi di conversione di valute

Ogni tabella aggregata utilizza la dimensione CurrencyRateMD per creare un campo ripetuto nidificato di AMOUNTS contenente misure in valuta convertite in ciascuna delle valute di destinazione specificate nella configurazione di implementazione. Quando utilizzi queste misure, assicurati di filtrare per una singola valuta di destinazione o per un gruppo di valute di destinazione per i report per evitare un conteggio eccessivo. Questo può essere visualizzato anche negli script di esempio come src/OracleEBS/src/reporting/ddls/samples/SalesOrderAggMetrics.sql.

Misure e attributi delle righe nidificati

La tabella SalesOrdersDailyAgg contiene un campo ripetuto nidificato denominato LINES per distinguere le misure e gli attributi a livello di riga (ad esempio ITEM_CATEGORY_NAME e AMOUNTS) da quelli a livello di intestazione (ad esempio BILL_TO_CUSTOMER_NAME e NUM_ORDERS). Fai attenzione a eseguire query su questi granuli separatamente per evitare un conteggio eccessivo.

Sebbene le fatture abbiano anche un concetto di intestazioni rispetto alle righe, la tabella SalesInvoicesDailyAgg contiene solo misure a livello di riga, pertanto non segue la stessa struttura di SalesOrdersDailyAgg.

Passaggi successivi