Para replicar dados do SAP no BigQuery, use a classe de carga de dados
/GOOG/CL_BQTR_DATA_LOAD
nos seus aplicativos SAP, como programas ABAP personalizados, saídas de usuário, complementos de negócios (BAdIs) e melhorias. Seu aplicativo SAP
precisa transmitir os dados a serem replicados como uma entrada para a classe.
Chamar o método de replicação de dados
Você instancia a classe de carregamento de dados do BigQuery
/GOOG/CL_BQTR_DATA_LOAD
transmitindo a
chave de transferência em massa e o nome do objeto de dicionário configurado na
configuração de transferência de dados do BigQuery.
Para enviar os dados ao BigQuery, chame o
método REPLICATE_DATA
da 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) ).
Substitua:
MASS_TRANSFER_KEY
: a chave de transferência em massa configurada na configuração de transferência de dados do BigQuery.DATA_SOURCE
: o nome do objeto de dicionário da SAP, como tabela, visualização de dicionário ou visualização do CDS.CDC_FRAMEWORK
: opcional. O framework de captura de dados alterados (CDC, na sigla em inglês) usado pelo programa de chamada. Os valores aceitos sãoODQ
eSLT
.O BigQuery Toolkit para SAP tem uma lógica integrada para determinar a flag de operação (inserir, atualizar e excluir) com base no framework CDC. Para mais informações, consulte Campos extras para alterações de registro e consultas de contagem.
Quando
CDC_FRAMEWORK
é transmitido comoODQ
, o BigQuery Toolkit para SAP recebe o valor da colunaODQ_CHANGEMODE
no payload transmitido na entrada:- Se o valor for
C
,operation_flag
será definido comoI
. - Se o valor for
U
, ooperation_flag
será definido comoU
. - Se o valor for
D
, ooperation_flag
será definido comoD
. - Para todos os outros valores, o
operation_flag
é definido comoL
.
Quando
CDC_FRAMEWORK
é transmitido comoSLT
, o BigQuery Toolkit para SAP recebe o valor da coluna "OPERATION" deWA_HEADER
:- Se o valor for
I
, ooperation_flag
será definido comoI
. - Se o valor for
U
, ooperation_flag
será definido comoU
. - Se o valor for
D
, ooperation_flag
será definido comoD
. - Para todos os outros valores, o
operation_flag
é definido comoL
.
Se
CDC_FRAMEWORK
não for transmitido ou for transmitido como qualquer outro valor,operation_flag
será definido comoL
.- Se o valor for
MANDT_FIELDNAME
: opcional. O nome do campo de cliente do SAP que precisa ser anexado à definição da tabela do BigQuery. Isso pode ser usado para objetos de dicionário do SAP, como entidades CDS, que não têm o campo de cliente na definição, mas você quer que o campo seja adicionado ao BigQuery.MANDT_VALUE
: opcional. O valor do campo de cliente SAP que precisa ser preenchido no BigQuery. Ele só pode ser usado quandoIV_FLDNM_MANDT
também estiver preenchido.ITAB_DATA
: uma tabela interna do tipoDATA_SOURCE
. PreenchaITAB_DATA
com os dados que precisam ser replicados na tabela do BigQuery.WA_HEADER
: uma estrutura plana que contém informações do cabeçalho sobre a replicação. Ele é usado para determinar ooperation_flag
quandoCDC_FRAMEWORK
éSLT
.
Quando você chama esse método, o módulo de transferência de dados do BigQuery realiza as seguintes ações:
- Sincronize a definição da tabela do BigQuery com a definição do objeto do dicionário SAP com base nas configurações de tabela e campo mantidas na configuração de transferência de dados do BigQuery.
- Mapeie dados preenchidos em
ITAB_DATA
do formato SAP para o formato do BigQuery com base nas configurações de nível de campo mantidas na configuração de transferência de dados do BigQuery. Se as configurações de nível de campo não forem mantidas, as regras de mapeamento de dados padrão serão usadas. - Chame o método
InsertAllTabledata
da API BigQuery para carregar dados na tabela do BigQuery de destino.
Se todas as etapas forem concluídas, o parâmetro de exportação ev_error_code
vai retornar o valor 0
.
Se houver um erro em qualquer etapa, ev_error_code
vai retornar um valor diferente de zero, e
a mensagem de erro correspondente será preenchida em et_return
.
Como desenvolvedor de aplicativos, você pode processar erros, inclusive salvando-os para análise posterior e tentando novamente o carregamento de registros que falharam na replicação.
Receber suporte
Google Cloud oferece suporte para problemas e dúvidas relacionados à instalação, configuração, operação e manutenção do BigQuery Toolkit para SAP. No entanto, o suporte é limitado ao próprio kit de ferramentas.
Google Cloud não oferece suporte a outros componentes do ambiente, como infraestrutura de rede, bancos de dados, sistemas operacionais ou softwares de terceiros. Para problemas relacionados a componentes de ambiente que não sejam o BigQuery Toolkit para SAP, entre em contato com o fornecedor ou provedor de suporte apropriado.
Para funcionalidades fornecidas pela SAP, como o provisionamento de dados operacionais (ODP, na sigla em inglês) e a transformação de paisagem do SAP (SLT, na sigla em inglês), entre em contato com o suporte da SAP para receber ajuda.
Para resolver problemas com o BigQuery Toolkit para SAP, consulte Solução de problemas do BigQuery Toolkit para SAP.
Se você precisar de ajuda para resolver problemas com o ABAP SDK for Google Cloud, faça o seguinte:
Consulte o guia de solução de problemas do ABAP SDK for Google Cloud.
Faça suas perguntas e discuta o ABAP SDK for Google Cloud com a comunidade nos Fóruns do Cloud.
Colete todas as informações de diagnóstico disponíveis e entre em contato com o Cloud Customer Care. Para mais informações sobre como entrar em contato com o atendimento ao cliente, consulte Como receber suporte para o SAP no Google Cloud.