Replikasi data SAP ke BigQuery menggunakan BigQuery Toolkit untuk SAP

Untuk replikasi data SAP ke BigQuery, Anda menggunakan class pemuatan data /GOOG/CL_BQTR_DATA_LOAD dalam aplikasi SAP seperti program ABAP kustom, exit pengguna, Add-In Bisnis (BAdI), dan peningkatan. Aplikasi SAP Anda harus meneruskan data yang akan direplikasi sebagai input ke class.

Memanggil metode replikasi data

Anda membuat instance class pemuatan data BigQuery /GOOG/CL_BQTR_DATA_LOAD dengan meneruskan kunci transfer massal dan nama objek kamus yang dikonfigurasi dalam konfigurasi BigQuery Data Transfer.

Untuk mengirim data ke BigQuery, Anda memanggil metode REPLICATE_DATA dari class /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) ).

Ganti kode berikut:

  • MASS_TRANSFER_KEY: Kunci transfer massal yang dikonfigurasi dalam konfigurasi BigQuery Data Transfer.
  • DATA_SOURCE: Nama objek kamus SAP seperti tabel, tampilan kamus, atau tampilan CDS.
  • CDC_FRAMEWORK: Opsional. Framework Pengambilan Data Perubahan (CDC) yang digunakan oleh program panggilan. Nilai yang didukung adalah ODQ dan SLT.

    BigQuery Toolkit untuk SAP memiliki logika bawaan untuk menentukan flag operasi (insert, update, dan delete) berdasarkan framework CDC. Untuk mengetahui informasi selengkapnya, lihat Kolom tambahan untuk perubahan kumpulan data dan kueri jumlah.

    Saat CDC_FRAMEWORK diteruskan sebagai ODQ, BigQuery Toolkit untuk SAP akan mendapatkan nilai kolom ODQ_CHANGEMODE dalam payload yang diteruskan dalam input:

    • Jika nilai = C, operation_flag ditetapkan ke I.
    • Jika nilai = U, operation_flag akan ditetapkan ke U.
    • Jika nilai = D, operation_flag akan ditetapkan ke D.
    • Untuk semua nilai lainnya, operation_flag ditetapkan ke L.

    Saat CDC_FRAMEWORK diteruskan sebagai SLT, BigQuery Toolkit untuk SAP akan mendapatkan nilai kolom 'OPERATION' dari WA_HEADER:

    • Jika nilai = I, operation_flag akan ditetapkan ke I.
    • Jika nilai = U, operation_flag akan ditetapkan ke U.
    • Jika nilai = D, operation_flag akan ditetapkan ke D.
    • Untuk semua nilai lainnya, operation_flag ditetapkan ke L.

    Jika CDC_FRAMEWORK tidak diteruskan atau diteruskan sebagai nilai lain, operation_flag akan ditetapkan ke L.

  • MANDT_FIELDNAME: Opsional. Nama kolom klien SAP yang perlu ditambahkan ke definisi tabel BigQuery. Ini dapat digunakan untuk objek kamus SAP seperti entity CDS, yang tidak memiliki kolom klien dalam definisinya, tetapi Anda ingin kolom tersebut ditambahkan ke BigQuery.

  • MANDT_VALUE: Opsional. Nilai kolom klien SAP yang perlu diisi di BigQuery. Ini hanya dapat digunakan jika IV_FLDNM_MANDT juga diisi.

  • ITAB_DATA: Tabel internal jenis DATA_SOURCE. Anda mengisi ITAB_DATA dengan data yang perlu direplikasi ke tabel BigQuery.

  • WA_HEADER: Struktur datar, yang berisi informasi header tentang replikasi. Ini digunakan untuk menentukan operation_flag saat CDC_FRAMEWORK adalah SLT.

Saat Anda memanggil metode ini, modul BigQuery Data Transfer akan melakukan tindakan berikut:

  • Menyinkronkan definisi tabel BigQuery dengan definisi objek kamus SAP berdasarkan setelan tabel dan kolom yang dikelola di konfigurasi BigQuery Data Transfer.
  • Data peta yang diisi di ITAB_DATA dari format SAP ke format BigQuery berdasarkan setelan tingkat kolom yang dikelola dalam konfigurasi BigQuery Data Transfer. Jika setelan tingkat kolom tidak dipertahankan, aturan pemetaan data default akan digunakan.
  • Panggil metode InsertAllTabledata BigQuery API untuk memuat data ke tabel BigQuery target.

Jika semua langkah berhasil, parameter ekspor ev_error_code akan menampilkan nilai 0. Jika terjadi error di langkah mana pun, ev_error_code akan menampilkan nilai non-nol dan pesan error yang sesuai akan diisi di et_return.

Sebagai developer aplikasi, Anda dapat menangani error, termasuk menyimpannya untuk analisis di lain waktu dan mencoba lagi memuat data yang gagal direplikasi.

Mendapatkan dukungan

Google Cloud menawarkan dukungan untuk masalah dan pertanyaan terkait penginstalan, konfigurasi, pengoperasian, dan pemeliharaan BigQuery Toolkit untuk SAP. Namun, dukungan terbatas pada toolkit itu sendiri.

Google Cloud tidak mendukung komponen lingkungan lainnya seperti infrastruktur jaringan, database, sistem operasi, atau software pihak ketiga. Untuk masalah terkait komponen lingkungan selain BigQuery Toolkit for SAP, hubungi vendor atau penyedia dukungan yang sesuai.

Untuk fungsi yang disediakan oleh SAP, seperti Penyediaan Data Operasional (ODP) dan Transformasi Lanskap SAP (SLT), hubungi dukungan SAP untuk mendapatkan bantuan.

Untuk memecahkan masalah terkait BigQuery Toolkit untuk SAP, lihat Memecahkan masalah BigQuery Toolkit untuk SAP.

Jika Anda memerlukan bantuan untuk menyelesaikan masalah terkait ABAP SDK untuk Google Cloud, lakukan hal berikut: