Para replicar datos de SAP en BigQuery, usa la clase de carga de datos /GOOG/CL_BQTR_DATA_LOAD
dentro de tus aplicaciones de SAP, como programas ABAP personalizados, salidas de usuario, complementos empresariales (BAdIs) y mejoras. Tu aplicación de SAP debe pasar los datos que se replicarán como entrada a la clase.
Llama al método de replicación de datos
Para crear una instancia de la clase de carga de datos de BigQuery /GOOG/CL_BQTR_DATA_LOAD
, pasa la clave de transferencia masiva y el nombre del objeto de diccionario configurado en la configuración de transferencia de datos de BigQuery.
Para enviar los datos a BigQuery, debes llamar al método REPLICATE_DATA
de la clase /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) ).
Reemplaza lo siguiente:
MASS_TRANSFER_KEY
: Es la clave de transferencia masiva configurada en la configuración de transferencia de datos de BigQuery.DATA_SOURCE
: Es el nombre del objeto del diccionario de SAP, como la tabla, la vista del diccionario o la vista de CDS.CDC_FRAMEWORK
: Opcional El framework de captura de datos modificados (CDC) que usa el programa de llamada. Los valores admitidos sonODQ
ySLT
.BigQuery Toolkit para SAP tiene una lógica integrada para determinar la marca de operación (insertar, actualizar y borrar) según el framework de CDC. Si deseas obtener más información, consulta Campos adicionales para los cambios de registro y las consultas de recuento.
Cuando se pasa
CDC_FRAMEWORK
comoODQ
, BigQuery Toolkit para SAP obtiene el valor de la columnaODQ_CHANGEMODE
en la carga útil que se pasa en la entrada:- Si el valor =
C
,operation_flag
se establece enI
. - Si el valor =
U
,operation_flag
se establece enU
. - Si el valor =
D
,operation_flag
se establece enD
. - Para todos los demás valores,
operation_flag
se establece enL
.
Cuando se pasa
CDC_FRAMEWORK
comoSLT
, BigQuery Toolkit para SAP obtiene el valor de la columna "OPERATION" deWA_HEADER
:- Si el valor =
I
,operation_flag
se establece enI
. - Si el valor =
U
,operation_flag
se establece enU
. - Si el valor =
D
,operation_flag
se establece enD
. - Para todos los demás valores,
operation_flag
se establece enL
.
Si no se pasa
CDC_FRAMEWORK
o se pasa como cualquier otro valor,operation_flag
se establece enL
.- Si el valor =
MANDT_FIELDNAME
: Opcional Es el nombre del campo de cliente de SAP que se debe agregar a la definición de la tabla de BigQuery. Esto se puede usar para objetos de diccionario de SAP, como entidades de CDS, que no tienen el campo de cliente en su definición, pero deseas que el campo se agregue a BigQuery.MANDT_VALUE
: Opcional Es el valor del campo de cliente de SAP que se debe propagar en BigQuery. Solo se puede usar cuando también se propagaIV_FLDNM_MANDT
.ITAB_DATA
: Es una tabla interna de tipoDATA_SOURCE
. PropagasITAB_DATA
con los datos que se deben replicar en la tabla de BigQuery.WA_HEADER
: Es una estructura plana que contiene información del encabezado sobre la replicación. Se usa para determinar eloperation_flag
cuandoCDC_FRAMEWORK
esSLT
.
Cuando llamas a este método, el módulo de transferencia de datos de BigQuery realiza las siguientes acciones:
- Sincroniza la definición de la tabla de BigQuery con la definición de objetos del diccionario de SAP según la configuración de la tabla y el campo que se mantiene en la configuración de la transferencia de datos de BigQuery.
- Los datos de mapas propagados en
ITAB_DATA
del formato SAP al formato BigQuery según la configuración a nivel del campo que se mantiene en la configuración de la transferencia de datos de BigQuery Si no se mantiene la configuración a nivel del campo, se usan las reglas de asignación de datos predeterminadas. - Llama al método
InsertAllTabledata
de la API de BigQuery para cargar datos en la tabla de BigQuery de destino.
Si todos los pasos se completan correctamente, el parámetro de exportación ev_error_code
muestra el valor 0
.
Si se produjo un error en algún paso, ev_error_code
muestra un valor distinto de cero y el mensaje de error correspondiente se propaga en et_return
.
Como desarrollador de aplicaciones, puedes controlar los errores, como guardarlos para analizarlos más adelante y volver a intentar cargar los registros que no se pudieron replicar.
Obtenga asistencia
Google Cloud ofrece asistencia para problemas y preguntas relacionados con la instalación, configuración, operación y mantenimiento de BigQuery Toolkit para SAP. Sin embargo, la asistencia se limita al kit de herramientas en sí.
Google Cloud no admite otros componentes del entorno, como la infraestructura de red, las bases de datos, los sistemas operativos ni el software de terceros. Si tienes problemas relacionados con componentes del entorno que no sean de BigQuery Toolkit para SAP, comunícate con el proveedor o proveedor de asistencia adecuado.
Para las funciones que ofrece SAP, como el aprovisionamiento de datos operativos (ODP) y SAP Landscape Transformation (SLT), comunícate con el equipo de asistencia de SAP para obtener ayuda.
Para solucionar problemas con BigQuery Toolkit para SAP, consulta Cómo solucionar problemas de BigQuery Toolkit para SAP.
Si necesitas ayuda para resolver problemas con el SDK de ABAP para Google Cloud, haz lo siguiente:
Consulta la guía de solución de problemas del SDK de ABAP para Google Cloud.
Haz tus preguntas y analiza el SDK de ABAP para Google Cloud con la comunidad en Cloud Forums.
Recopila toda la información de diagnóstico disponible y comunícate con el servicio de Atención al cliente de Cloud. Si deseas obtener más información para comunicarte con el equipo de Atención al cliente, consulta Obtén asistencia para SAP en Google Cloud.