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 sonoODQ
eSLT
.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 comeODQ
, BigQuery Toolkit for SAP ottiene il valore della colonnaODQ_CHANGEMODE
nel payload passato nell'input:- Se il valore =
C
,operation_flag
viene impostato suI
. - Se il valore =
U
,operation_flag
viene impostato suU
. - Se il valore =
D
,operation_flag
viene impostato suD
. - Per tutti gli altri valori,
operation_flag
è impostato suL
.
Quando
CDC_FRAMEWORK
viene passato comeSLT
, BigQuery Toolkit for SAP ottiene il valore della colonna "OPERATION" daWA_HEADER
:- Se il valore =
I
,operation_flag
viene impostato suI
. - Se il valore =
U
,operation_flag
viene impostato suU
. - Se il valore =
D
,operation_flag
viene impostato suD
. - Per tutti gli altri valori,
operation_flag
è impostato suL
.
Se
CDC_FRAMEWORK
non viene passato o viene passato come qualsiasi altro valore,operation_flag
viene impostato suL
.- Se il valore =
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 ancheIV_FLDNM_MANDT
.ITAB_DATA
: una tabella interna di tipoDATA_SOURCE
. CompilaITAB_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 determinareoperation_flag
quandoCDC_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:
Fai riferimento alla guida alla risoluzione dei problemi dell'ABAP SDK for Google Cloud.
Fai le tue domande e discuti dell'ABAP SDK per Google Cloud con la community nei forum di Cloud.
Raccogli tutte le informazioni di diagnostica disponibili e contatta l'assistenza clienti Google Cloud. Per informazioni su come contattare il servizio clienti, vedi Ricevere assistenza per SAP su Google Cloud.