Replica dei dati SAP in BigQuery utilizzando BigQuery Toolkit per SAP

Per la replica dei dati SAP in BigQuery, utilizza la classe di caricamento dei dati/GOOG/CL_BQTR_DATA_LOAD all'interno delle applicazioni SAP, ad esempio programmi ABAP personalizzati, uscite utente, componenti aggiuntivi aziendali (BAdI) e miglioramenti. L'applicazione SAP deve passare i dati da replicare come input alla classe.

Chiama il metodo di replica dei dati

Puoi creare un'istanza della classe di caricamento dei dati BigQuery /GOOG/CL_BQTR_DATA_LOAD passando la chiave di trasferimento collettivo e il nome dell'oggetto del dizionario configurato nella configurazione di BigQuery Data Transfer.

Per inviare i dati a BigQuery, chiami il metodo REPLICATE_DATA della classe /GOOG/CL_BQTR_DATA_LOAD.

DATA(lo_bq_data_load) =
  NEW /GOOG/CL_BQTR_DATA_LOAD( IV_MASS_TR_KEY = 'MASS_TRANSFER_KEY'
                               IV_DATA_SOURCE = 'DATA_SOURCE'
                               IV_CDC_FRAMEWORK = 'CDC_FRAMEWORK'
                               IV_FLDNM_MANDT = 'MANDT_FIELDNAME'
                               IV_MANDT_VALUE = 'MANDT_VALUE'
 ).
"Write Logic to populate ITAB_DATA, WA_HEADER

"Replicate Data to BigQuery
lo_bq_data_load->replicate_data(
  EXPORTING
    it_content       = ITAB_DATA
    IS_HEADER_INFO   = WA_HEADER
  IMPORTING
    ev_error_code    = data(lv_error_code)
    et_return        = data(lt_return) ).

Sostituisci quanto segue:

  • MASS_TRANSFER_KEY: la chiave di trasferimento collettivo configurata nella configurazione di BigQuery Data Transfer.
  • DATA_SOURCE: il nome dell'oggetto del dizionario SAP, come tabella, vista del dizionario o vista CDS.
  • CDC_FRAMEWORK: facoltativo. Il framework Change Data Capture (CDC) utilizzato dal programma chiamante. I valori supportati sono ODQ e SLT.

    BigQuery Toolkit for SAP ha una logica integrata per determinare il flag di operazione (inserimento, aggiornamento ed eliminazione) in base al framework CDC. Per ulteriori informazioni, vedi Campi aggiuntivi per le modifiche ai record e le query di conteggio.

    Quando CDC_FRAMEWORK viene passato come ODQ, BigQuery Toolkit for SAP ottiene il valore della colonna ODQ_CHANGEMODE nel payload passato nell'input:

    • Se il valore = C, operation_flag viene impostato su I.
    • Se il valore = U, operation_flag viene impostato su U.
    • Se il valore = D, operation_flag viene impostato su D.
    • Per tutti gli altri valori, operation_flag è impostato su L.

    Quando CDC_FRAMEWORK viene passato come SLT, BigQuery Toolkit for SAP ottiene il valore della colonna "OPERATION" da WA_HEADER:

    • Se il valore = I, operation_flag viene impostato su I.
    • Se il valore = U, operation_flag viene impostato su U.
    • Se il valore = D, operation_flag viene impostato su D.
    • Per tutti gli altri valori, operation_flag è impostato su L.

    Se CDC_FRAMEWORK non viene passato o viene passato come qualsiasi altro valore, operation_flag viene impostato su L.

  • MANDT_FIELDNAME: facoltativo. Il nome del campo del client SAP che deve essere aggiunto alla definizione della tabella BigQuery. Questo può essere utilizzato per gli oggetti del dizionario SAP, come le entità CDS, che non hanno il campo client nella definizione, ma vuoi che il campo venga aggiunto a BigQuery.

  • MANDT_VALUE: facoltativo. Il valore del campo del cliente SAP che deve essere compilato in BigQuery. Può essere utilizzato solo se è compilato anche IV_FLDNM_MANDT.

  • ITAB_DATA: una tabella interna di tipo DATA_SOURCE. Compila ITAB_DATA con i dati che devono essere replicati nella tabella BigQuery.

  • WA_HEADER: una struttura piatta che contiene informazioni sull'intestazione della replica. Viene utilizzato per determinare operation_flag quando CDC_FRAMEWORK è SLT.

Quando chiami questo metodo, il modulo BigQuery Data Transfer esegue le seguenti azioni:

  • Sincronizza la definizione della tabella BigQuery con la definizione dell'oggetto del dizionario SAP in base alle impostazioni della tabella e del campo gestite nella configurazione di BigQuery Data Transfer.
  • Mappa i dati compilati in ITAB_DATA dal formato SAP al formato BigQuery in base alle impostazioni a livello di campo gestite nella configurazione di BigQuery Data Transfer. Se le impostazioni a livello di campo non vengono mantenute, vengono utilizzate le regole di mappatura dei dati predefinite.
  • Chiama il metodo InsertAllTabledata dell'API BigQuery per caricare i dati nella tabella BigQuery di destinazione.

Se tutti i passaggi hanno esito positivo, il parametro di esportazione ev_error_code restituisce il valore 0. Se si è verificato un errore in un passaggio, ev_error_code restituisce un valore diverso da zero e il messaggio di errore corrispondente viene inserito in et_return.

In qualità di sviluppatore di applicazioni, puoi gestire gli errori, tra cui salvarli per un'analisi successiva e riprovare a caricare i record di cui non è andata a buon fine la replica.

Richiedi assistenza

Google Cloud offre assistenza per problemi e domande relativi all'installazione, alla configurazione, al funzionamento e alla manutenzione di BigQuery Toolkit per SAP. Tuttavia, l'assistenza è limitata al toolkit stesso.

Google Cloud non supporta altri componenti dell'ambiente come l'infrastruttura di rete, i database, i sistemi operativi o il software di terze parti. Per problemi relativi a componenti dell'ambiente diversi da BigQuery Toolkit per SAP, contatta il fornitore o il provider di assistenza appropriato.

Per le funzionalità fornite da SAP, come Operational Data Provisioning (ODP) e SAP Landscape Transformation (SLT), contatta l'assistenza SAP per ricevere assistenza.

Per risolvere i problemi relativi a BigQuery Toolkit per SAP, consulta Risolvere i problemi relativi a BigQuery Toolkit per SAP.

Se hai bisogno di aiuto per risolvere i problemi relativi all'SDK ABAP per Google Cloud, segui questi passaggi: