Sumber batch SAP SuccessFactors

Halaman ini menjelaskan cara mengekstrak data dari entity mana pun dalam modul SAP SuccessFactors Employee Central ke Google Cloud dengan Cloud Data Fusion.

Untuk mengetahui informasi selengkapnya, lihat ringkasan SAP di Google Cloud.

Sebelum memulai

Siapkan sistem dan layanan berikut yang digunakan oleh plugin SAP SuccessFactors:

  1. Mengonfigurasi sistem SAP SuccessFactors. Anda harus menyiapkan izin di sistem SAP.
  2. Deploy plugin SAP SuccessFactors di Cloud Data Fusion. Anda harus men-deploy versi plugin yang kompatibel dengan versi Cloud Data Fusion.
    • Jika Anda mengupgrade versi instance atau plugin Cloud Data Fusion, evaluasi dampak perubahan pada cakupan dan performa fungsional pipeline.
  3. Buat konektivitas antara Cloud Data Fusion dan SAP SuccessFactors.
    • Pastikan komunikasi diaktifkan antara instance Cloud Data Fusion dan instance SAP SuccessFactors.
    • Untuk instance pribadi, siapkan peering jaringan VPC.

Mengonfigurasi plugin

  1. Buka antarmuka web Cloud Data Fusion dan klik Studio.
  2. Pastikan Data Pipeline - Batch dipilih (bukan Real-Time).
  3. Di menu Sumber, klik SuccessFactors. Node SAP SuccessFactors akan muncul di pipeline Anda.
  4. Untuk mengonfigurasi sumber, buka node SAP SuccessFactors, lalu klik Properties.
  5. Masukkan properti berikut. Untuk mengetahui daftar lengkapnya, lihat Properti.

    1. Masukkan Label untuk node SAP SuccessFactors—misalnya, SAP SuccessFactors tables.
    2. Masukkan detail koneksi. Anda dapat menyiapkan koneksi baru satu kali, atau koneksi yang sudah ada dan dapat digunakan kembali.

      Koneksi satu kali

      Untuk menambahkan koneksi satu kali ke SAP, ikuti langkah-langkah berikut:

      1. Tetap nonaktifkan Gunakan koneksi.
      2. Di bagian Connection, masukkan informasi berikut dari akun SAP di kolom ini:

        1. Berikan kredensial SAP.
        2. Di kolom SAP SuccessFactors Base URL, masukkan URL dasar akun SAP SuccessFactors Anda.
        3. Di kolom Reference name, masukkan nama untuk koneksi yang mengidentifikasi sumber ini untuk garis keturunan.
        4. Di kolom Entity Name, masukkan nama entity yang Anda ekstrak—misalnya, people.
        5. Untuk membuat skema berdasarkan metadata dari SAP yang memetakan jenis data SAP ke jenis data Cloud Data Fusion yang sesuai, klik Get schema. Untuk mengetahui informasi selengkapnya, lihat Pemetaan jenis data.
        6. Di kolom Proxy URL, masukkan URL Proxy, termasuk protokol, alamat, dan port.
        7. Opsional: untuk mengoptimalkan beban penyerapan dari SAP, masukkan informasi berikut:

          1. Untuk mengekstrak data berdasarkan kondisi pemilihan, klik Filter options dan Select fields.
          2. Di Luaskan kolom, masukkan daftar kolom navigasi yang akan diperluas dalam data output yang diekstrak. Contoh, customManager.
          3. Di Parameter kueri tambahan, masukkan parameter yang akan ditambahkan ke URL, misalnya, fromDate=2023-01-01&toDate=2023-01-31.
          4. Di kolom Associated entity name, masukkan nama entitas yang akan diekstrak—misalnya, EmpCompensationCalculated.
          5. Di kolom Pagination type, masukkan jenis—misalnya, Server-side pagination.

      Koneksi yang dapat digunakan kembali

      Untuk menggunakan kembali koneksi yang ada, ikuti langkah-langkah berikut:

      1. Aktifkan Gunakan koneksi.
      2. Klik Jelajahi koneksi.
      3. Klik nama koneksi.

      Jika koneksi tidak ada, buat koneksi yang dapat digunakan kembali dengan mengikuti langkah-langkah berikut:

      1. Klik Tambahkan koneksi > SAP SuccessFactors.
      2. Di halaman Create a SAP SuccessFactors connection yang terbuka, masukkan nama dan deskripsi koneksi.
      3. Berikan kredensial SAP. Anda dapat meminta nilai nama pengguna dan sandi login SAP kepada administrator SAP.
      4. Di kolom Proxy URL, masukkan URL Proxy, termasuk protokol, alamat, dan port.
      5. Klik Create.

Properti

Properti Makro diaktifkan Properti wajib Deskripsi
Label Tidak Ya Nama node di pipeline data Anda.
Menggunakan koneksi Tidak Tidak Gunakan koneksi yang dapat digunakan kembali. Jika koneksi digunakan, Anda tidak perlu menyediakan kredensial. Untuk mengetahui informasi selengkapnya, lihat Mengelola koneksi.
Nama Tidak Ya Nama koneksi yang dapat digunakan kembali.
Nama Referensi Tidak Ya Mengidentifikasi sumber untuk garis keturunan secara unik dan menganotasi metadata.
URL Dasar SAP SuccessFactors Ya Ya URL dasar SuccessFactors API.
Nama Entitas Ya Ya Nama Entitas yang akan diekstrak. Tidak mendukung entity yang memiliki properti dengan jenis data Biner atau volume data yang besar. Misalnya, UserBadges dan BadgeTemplates tidak didukung.
Nama Pengguna SAP SuccessFactors Ya Ya ID pengguna untuk autentikasi, mirip dengan USER_ID@COMPANY_ID. Misalnya, sfadmin@cymbalgroup.
Sandi SAP SuccessFactors Ya Ya Sandi SAP SuccessFactors untuk autentikasi pengguna.
Opsi Filter Ya Tidak Kondisi filter yang membatasi volume data output, misalnya, Price gt 200. Lihat opsi filter yang didukung.
Pilih Kolom Ya Tidak Kolom yang akan dipertahankan dalam data yang diekstrak. Misalnya, Category, Price, Name, Address. Jika kolom dibiarkan kosong, semua kolom non-navigasi akan dipertahankan dalam data yang diekstrak.

Semua kolom harus dipisahkan koma (,).
Luaskan Kolom Ya Tidak Daftar kolom navigasi yang akan diperluas dalam data output yang diekstrak. Misalnya, customManager. Jika entity memiliki kumpulan data hierarkis, sumber akan menghasilkan kumpulan data untuk setiap baris dalam entity yang dibaca, dengan setiap kumpulan data berisi kolom tambahan yang menyimpan nilai dari properti navigasi yang ditentukan di Kolom Luaskan.
Nama Entitas Terkait Ya Tidak Nama Entitas Terkait yang sedang diekstrak. Misalnya, EmpCompensationCalculated.
Jenis Pengelompokan Ya Ya Jenis penomoran halaman yang akan digunakan. Pagination sisi server menggunakan pagination berbasis snapshot. Jika penomoran halaman berbasis snapshot dicoba pada entitas yang tidak mendukung fitur tersebut, server akan otomatis memaksa penomoran halaman offset klien pada kueri.
Contoh entity yang hanya mendukung penomoran halaman sisi server adalah BadgeTemplates, UserBadges, dan EPCustomBackgroundPortlet. Tidak ada data yang ditransfer jika penomoran halaman sisi klien dipilih pada entity ini, karena bergantung pada Count API, yang menampilkan -1 sebagai respons.

Default-nya adalah Penomoran halaman sisi Server.

Opsi filter yang didukung

Operator berikut didukung:

Operator Deskripsi Contoh
Operator Logis
Eq Sama dengan /EmpGlobalAssignment?$filter=assignmentClass eq 'GA'
Ne Tidak sama dengan /RecurringDeductionItem?$filter=amount ne 18
Gt Lebih dari /RecurringDeductionItem?$filter=amount gt 4
Ge Lebih besar dari atau sama dengan /RecurringDeductionItem?$filter=amount ge 18
Lt Kurang dari /RecurringDeductionItem?$filter=amount lt 18
Le Kurang dari atau sama dengan /RecurringDeductionItem?$filter=amount le 20
And Logika dan /RecurringDeductionItem?$filter=amount le 20 and amount gt 4
Or Logika atau /RecurringDeductionItem?$filter=amount le 20 or amount gt 4
Not Negasi logis /RecurringDeductionItem?$filter=not endswith(payComponentType, 'SUPSPEE_US')
Operator Aritmetika
Add Penambahan /RecurringDeductionItem?$filter=amount add 5 gt 18
Sub Pengurangan /RecurringDeductionItem?$filter=amount sub 5 gt 18
Mul Perkalian /RecurringDeductionItem?$filter=amount mul 2 gt 18
Div Pembagian /RecurringDeductionItem?$filter=amount div 2 gt 18
Mod Modulus /RecurringDeductionItem?$filter=amount mod 2 eq 0
Operator Pengelompokan
( ) Pengelompokan prioritas /RecurringDeductionItem?$filter=(amount sub 5) gt 8

Pemetaan jenis data

Tabel berikut adalah daftar jenis data SAP dengan jenis Cloud Data Fusion yang sesuai.

Jenis Data SuccessFactors Jenis Data Skema Cloud Data Fusion
Binary Bytes
Boolean Boolean
Byte Bytes
DateTime DateTime
DateTimeOffset Timestamp_Micros
Decimal Decimal
Double Double
Float Float
Int16 Integer
Int32 Integer
Int64 Long
SByte Integer
String String
Time Time_Micros

Kasus penggunaan

Contoh kasus penggunaan berikut adalah data untuk satu karyawan di EmployeePayrollRunResults:

Contoh properti Nilai contoh
externalCode SAP_EC_PAYROLL_1000_0101201501312015_456_416
ID Orang 456
Pengguna user-1
ID Ketenagakerjaan 416
ID Penyedia Gaji SAP_EC_PAYROLL
Awal Periode Pembayaran Efektif 01/01/2015
Akhir Periode Pembayaran Efektif 31/01/2015
ID Perusahaan BestRun Germany (1000)
Pembayaran 28/01/2015
Mata Uang EUR (EUR)
Jenis Pengoperasian Gaji Reguler (REGULAR)
ID Sistem X0B

Contoh ini menunjukkan hasil untuk karyawan di EmployeePayrollRunResults:

EmployeePayrollRunResults_externalCode EmployeePayrollRunResults_mdfSystemEffectiveStartDate amount createdBy createdDate
SAP_EC_PAYROLL_2800_0101201901312019_305_265 1/31/2019 0:00:00 70923.9 sfadmin 12/10/2019 15:32:20
SAP_EC_PAYROLL_2800_0101201901312019_310_270 1/31/2019 0:00:00 64500 sfadmin 12/10/2019 15:32:20
SAP_EC_PAYROLL_2800_0201201902282019_305_265 2/28/2019 0:00:00 70923.9 sfadmin 12/10/2019 15:32:20
SAP_EC_PAYROLL_2800_0201201902282019_310_270 2/28/2019 0:00:00 64500 sfadmin 12/10/2019 15:32:20
SAP_EC_PAYROLL_2800_0301201903312019_305_265 3/31/2019 0:00:00 70923.9 sfadmin 12/10/2019 15:32:20

Contoh pipeline

Lihat contoh konfigurasi dalam file JSON berikut:

  {
      "artifact": {
          "name": "data-pipeline-1",
          "version": "DATA_FUSION_VERSION",
          "scope": "SYSTEM"
      },
      "description": "",
      "name": "Demo_SuccessFactors_BatchSource",
      "config": {
          "resources": {
              "memoryMB": 2048,
              "virtualCores": 1
          },
          "driverResources": {
              "memoryMB": 2048,
              "virtualCores": 1
          },
          "connections": [
              {
                  "from": "SAP SuccessFactors",
                  "to": "BigQuery"
              }
          ],
          "comments": [],
          "postActions": [],
          "properties": {},
          "processTimingEnabled": true,
          "stageLoggingEnabled": false,
          "stages": [
              {
                  "name": "SAP SuccessFactors",
                  "plugin": {
                      "name": "SuccessFactors",
                      "type": "batchsource",
                      "label": "SAP SuccessFactors",
                      "artifact": {
                          "name": "successfactors-plugins",
                          "version": "PLUGIN_VERSION",
                          "scope": "USER"
                      },
                      "properties": {
                        "useConnection": "false",
                        "username": "${username}",
                        "password": "${password}",
                        "baseURL": "${baseUrl}",
                        "referenceName": "test",
                        "entityName": "${EmpCompensation}",
                        "proxyUrl": "${ProxyUrl}",
                        "paginationType": "serverSide",
                        "initialRetryDuration": "2",
                        "maxRetryDuration": "300",
                        "maxRetryCount": "3",
                        "retryMultiplier": "2",
                        "proxyUsername": "${Proxyusername}",
                        "proxyPassword": "${Proxypassword}"
                      }
                  },
                  "outputSchema": [
                      {
                          "name": "etlSchemaBody",
                          "schema": ""
                      }
                  ],
                  "id": "SAP-SuccessFactors"
              },
              {
                  "name": "BigQuery",
                  "plugin": {
                      "name": "BigQueryTable",
                      "type": "batchsink",
                      "label": "BigQuery",
                      "artifact": {
                          "name": "google-cloud",
                          "version": "BIGQUERY_PLUGIN_VERSION",
                          "scope": "SYSTEM"
                      },
                      "properties": {
                        "useConnection": "false",
                        "project": "auto-detect",
                        "serviceAccountType": "filePath",
                        "serviceFilePath": "auto-detect",
                        "referenceName": "Reff",
                        "dataset": "SF_Aug",
                        "table": "testdata_proxy",
                        "operation": "insert",
                        "truncateTable": "true",
                        "allowSchemaRelaxation": "true",
                        "location": "US",
                        "createPartitionedTable": "false",
                        "partitioningType": "TIME",
                        "partitionFilterRequired": "false"
                      }
                  },
                  "outputSchema": [
                      {
                          "name": "etlSchemaBody",
                          "schema": ""
                      }
                  ],
                  "inputSchema": [
                      {
                          "name": "SAP SuccessFactors",
                          "schema": ""
                      }
                  ],
                  "id": "BigQuery"
              }
          ],
           "schedule": "0 1 */1 * *",
        "engine": "spark",
        "numOfRecordsPreview": 100,
        "rangeRecordsPreview": {
            "min": 1,
            "max": "5000"
        },
        "description": "Data Pipeline Application",
        "maxConcurrentRuns": 1,
        "pushdownEnabled": false,
        "transformationPushdown": {}
      }
  }
  

Langkah selanjutnya