Replica dei dati SAP in BigQuery utilizzando BigQuery Toolkit per SAP

Per la replica dei dati SAP in BigQuery, utilizzi la classe di caricamento dei dati /GOOG/CL_BQTR_DATA_LOAD all'interno delle applicazioni SAP, ad esempio programmi ABAP personalizzati, user exit, Business Add-In (BAdI) e miglioramenti. La tua applicazione SAP deve passare i dati da replicare come input alla classe.

Chiama il metodo di replica dei dati

Istanzia la classe di caricamento dei dati BigQuery /GOOG/CL_BQTR_DATA_LOAD passando la chiave di trasferimento collettivo e il nome dell'oggetto dizionario configurato nella configurazione di BigQuery Data Transfer.

Per inviare i dati a BigQuery, chiama 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 in BigQuery Data Transfer.
  • DATA_SOURCE: il nome dell'oggetto dizionario SAP come tabella, vista 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 per SAP ha una logica integrata per determinare il flag dell'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 recupera il valore della colonna ODQ_CHANGEMODE nel payload passato nell'input:

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

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

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

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

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

  • MANDT_VALUE: (Facoltativo). Il valore del campo client SAP che deve essere compilato in BigQuery. Può essere utilizzato solo quando viene compilato anche IV_FLDNM_MANDT.

  • ITAB_DATA: una tabella interna di tipo DATA_SOURCE. Riempi ITAB_DATA con i dati da replicare nella tabella BigQuery.

  • WA_HEADER: una struttura piatta, che contiene informazioni di intestazione sulla 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 dizionario SAP in base alle impostazioni di tabella e campo mantenute nella configurazione di BigQuery Data Transfer.
  • Mappa i dati inseriti in ITAB_DATA dal formato SAP al formato BigQuery in base alle impostazioni a livello di campo mantenute 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 uno dei passaggi, 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, incluso il salvataggio per un'analisi successiva e il nuovo tentativo di caricamento dei record per cui la replica non è riuscita.

Assistenza

Google Cloud offre assistenza per problemi e domande relativi all'installazione, alla configurazione, al funzionamento e alla manutenzione di BigQuery Toolkit per SAP.

Per i problemi derivanti da componenti gestiti da SAP, come Operational Data Provisioning (ODP), Data Migration Server (DMIS), Core Data Services (CDS), Internet Communication Manager (ICM) o software di terze parti, Google Cloud Customer Care si impegna al massimo per identificare la causa principale. Per risolvere questi problemi, contatta il fornitore o il provider di assistenza pertinente.

Per risolvere i problemi relativi a BigQuery Toolkit for SAP, consulta Risoluzione dei problemi relativi a BigQuery Toolkit for SAP.

Se hai bisogno di aiuto per risolvere i problemi relativi all'ABAP SDK for Google Cloud, procedi nel seguente modo: