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 sonoODQ
eSLT
.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 comeODQ
, BigQuery Toolkit for SAP recupera il valore della colonnaODQ_CHANGEMODE
nel payload passato nell'input:- Se il valore =
C
,operation_flag
è impostato suI
. - Se il valore =
U
,operation_flag
è impostato suU
. - Se il valore =
D
,operation_flag
è impostato suD
. - Per tutti gli altri valori,
operation_flag
è impostato suL
.
Quando
CDC_FRAMEWORK
viene passato comeSLT
, BigQuery Toolkit for SAP recupera il valore della colonna "OPERATION" daWA_HEADER
:- Se il valore =
I
,operation_flag
è impostato suI
. - Se il valore =
U
,operation_flag
è impostato suU
. - Se il valore =
D
,operation_flag
è impostato suD
. - Per tutti gli altri valori,
operation_flag
è impostato suL
.
Se
CDC_FRAMEWORK
non viene trasmesso o viene trasmesso come qualsiasi altro valore,operation_flag
viene impostato suL
.- Se il valore =
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 ancheIV_FLDNM_MANDT
.ITAB_DATA
: una tabella interna di tipoDATA_SOURCE
. RiempiITAB_DATA
con i dati da replicare nella tabella BigQuery.WA_HEADER
: una struttura piatta, che contiene informazioni di intestazione sulla 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 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:
Consulta la guida alla risoluzione dei problemi di ABAP SDK for Google Cloud.
Poni le tue domande e discuti di ABAP SDK for Google Cloud con la community nei forum di Cloud.
Raccogli tutte le informazioni diagnostiche disponibili e contatta l'assistenza clienti Google Cloud. Per informazioni su come contattare l'assistenza clienti, vedi Assistenza per SAP su Google Cloud.