Replicación de datos de SAP en BigQuery con el kit de herramientas de BigQuery para SAP

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 son ODQ y SLT.

    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 como ODQ, BigQuery Toolkit para SAP obtiene el valor de la columna ODQ_CHANGEMODE en la carga útil que se pasa en la entrada:

    • Si el valor = C, operation_flag se establece en I.
    • Si el valor = U, operation_flag se establece en U.
    • Si el valor = D, operation_flag se establece en D.
    • Para todos los demás valores, operation_flag se establece en L.

    Cuando se pasa CDC_FRAMEWORK como SLT, BigQuery Toolkit para SAP obtiene el valor de la columna "OPERATION" de WA_HEADER:

    • Si el valor = I, operation_flag se establece en I.
    • Si el valor = U, operation_flag se establece en U.
    • Si el valor = D, operation_flag se establece en D.
    • Para todos los demás valores, operation_flag se establece en L.

    Si no se pasa CDC_FRAMEWORK o se pasa como cualquier otro valor, operation_flag se establece en L.

  • 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 propaga IV_FLDNM_MANDT.

  • ITAB_DATA: Es una tabla interna de tipo DATA_SOURCE. Propagas ITAB_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 el operation_flag cuando CDC_FRAMEWORK es SLT.

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: