Ringkasan fondasi data

Lapisan fondasi data Cortex Framework berfungsi sebagai representasi standar dan bersih dari catatan terbaru dari sistem sumber Anda. Solusi ini menjembatani kesenjangan antara sistem pencatatan perusahaan yang direplikasi secara mentah dan data penggunaan analitik bernilai tinggi dengan menyediakan tabel dan tampilan yang dapat digunakan kembali dan memiliki fidelitas tinggi di dalam BigQuery.

Meskipun lapisan fondasi data menyediakan lapisan produk data, lapisan ini dapat digunakan sepenuhnya secara terpisah dan mencakup fungsi berikut:

  • Deployment independen: Organisasi yang ingin membuat penyimpanan data operasional (ODS) yang bersih, sesuai, dan standar di dalam BigQuery dapat men-deploy modul dasar data saja. Anda tidak perlu men-deploy lapisan produk data untuk menggunakan fondasi data.
  • Penggunaan langsung: Tabel dasar data mandiri berfungsi sebagai sumber tepercaya terpusat yang sangat dioptimalkan yang dapat langsung mendukung arsitektur data mesh perusahaan yang ada, pipeline ETL hilir kustom, alat BI pihak ketiga, model ML kustom, dan agen AI independen tanpa bergantung pada produk data yang dikirimkan Cortex Framework.
  • Ekstensibilitas tinggi: Framework mengenali dan menambahkan kolom tabel kustom (misalnya, kolom yang diawali 'Z' atau 'Y') secara otomatis selama build dan kompilasi modul dasar. Memperluas dengan tabel tambahan (tabel kustom, atau tabel standar yang tidak disertakan dalam fondasi) dapat dilakukan dengan sedikit upaya.

Sumber data yang didukung

Lapisan fondasi data mendukung data mentah yang direplikasi dari sistem SAP ERP, termasuk:

Untuk mengetahui informasi selengkapnya, lihat dokumentasi untuk Integrasi sistem sumber.

Kemampuan inti

Tujuan utama lapisan ini adalah untuk menstandardisasi, membersihkan, dan menyesuaikan data sumber mentah ke dalam tabel dengan fidelitas tinggi menggunakan metode berikut:

  • Perlindungan skema: Skema transaksional mentah seperti yang berasal dari SAP sering berubah dan sulit dinavigasi. Lapisan fondasi melindungi konsumen downstream dari kompleksitas tabel mentah dan perubahan skema pokok dengan menyediakan struktur target yang stabil dan standar.
  • Metadata dan anotasi siap pakai untuk bisnis: Untuk membantu pengguna bisnis memahami model data teknis, lapisan fondasi data menggunakan library anotasi yang ekstensif (src/data_modules/{namespace}/{system}/data_foundation/{foundation_name}/annotations/). Selama proses pembangunan, framework memperkaya kolom sistem sumber teknis dengan deskripsi bisnis yang mudah dibaca di metadata tabel BigQuery (misalnya, menerjemahkan kolom SAP seperti bukrs menjadi Company Code). Metadata yang kaya ini membuat tabel dapat langsung digunakan oleh analis bisnis, dasbor BI, dan agen AI perusahaan.
  • Adaptasi skema dinamis: Mendukung skema tabel dinamis. Lapisan ini secara otomatis menyerap dan menyebarkan kolom kustom (seperti kolom Z* atau Y* di SAP, atau atribut kustom di sumber lain) dari lapisan mentah tanpa memerlukan perubahan kode manual pada model SQL yang mendasarinya.
  • Penyesuaian dan penghapusan duplikat data otomatis: Baik data mentah tiba sebagai log perubahan atau snapshot lengkap, lapisan fondasi akan otomatis menangani penghapusan duplikat, casting jenis data, dan rekonstruksi status. Dengan begitu, Anda akan selalu mengkueri status setiap data yang akurat dan terbaru.

Sumber CDC versus non-CDC

Untuk pipeline yang dikelola secara native oleh Cortex Framework, konfigurasi diterapkan di tingkat tabel individual. Anda dapat mengonfigurasi cara setiap tabel diproses berdasarkan apakah data sumber mentah tiba sebagai log perubahan inkremental atau snapshot tabel lengkap. Misalnya, tabel individual dalam sumber CDC lainnya dapat dideklarasikan sebagai isCdc: false untuk memperlakukannya sebagai tabel snapshot:

  • Sumber yang mendukung CDC: Untuk data mentah yang direplikasi sebagai log pengambilan data perubahan (berisi stempel waktu dan tanda operasi, seperti penyisipan, pembaruan, dan penghapusan dari alat seperti BigQuery Connector untuk SAP atau BigQuery Toolkit untuk SAP), Cortex Framework membuat pipeline Dataform khusus yang memproses log mentah secara inkremental ke dalam tabel yang sesuai "status terbaru" yang dipertahankan dan terus diperbarui.
  • Sumber non-CDC (snapshot/batch lengkap): Untuk sumber yang tidak menyediakan log perubahan CDC, atau tempat tabel direplikasi secara berkala sebagai ekstrak lengkap, Cortex Framework menginstruksikan pipeline untuk memproses data sebagai snapshot tabel lengkap tanpa logika rekonstruksi status CDC (lihat atribut konfigurasi isCdc di fondasi data, konfigurasi table-settings).

Fondasi data eksternal

Selain mengelola pemrosesan CDC secara native di tingkat tabel individual, Cortex Framework memberikan fleksibilitas arsitektur untuk berintegrasi dengan dasar data eksternal yang ada di seluruh tingkat dasar. Seluruh fondasi dapat dinyatakan sebagai eksternal, yang dalam hal ini Cortex Framework mengasumsikan bahwa seluruh pemrosesan CDC telah dilakukan:

  • Fondasi data yang dikelola Cortex: Cortex Framework membangun dan mengatur pipeline transformasi Dataform, membaca dari zona pendaratan mentah Anda dan mewujudkan tabel yang sesuai dalam set data fondasi target Anda.
  • Dasar data eksternal: Jika perusahaan Anda sudah menggunakan alat replikasi eksternal, pipeline pihak ketiga, atau lapisan semantik yang telah ditetapkan sebelumnya yang melakukan rekonstruksi CDC dan pembersihan data di luar Cortex Framework, Anda dapat mendaftarkannya sebagai dasar data eksternal (lihat tanda external di setelan dasar modul data. Jika dikonfigurasi sebagai eksternal, Cortex Framework akan melewati pembuatan pipeline transformasi fondasi bawaan dan mengarahkan produk data hilir langsung ke set data target yang ada.

Opsi kemampuan konfigurasi fondasi data

Meskipun konfigurasi tingkat global dan modul dikelola dalam file config.yaml, opsi tingkat tabel terperinci dikonfigurasi melalui file table_settings.yaml khusus sumber (untuk sistem SAP, file ini dibuat dari bagian common, ecc, dan s4. Untuk informasi mendetail, lihat: Deployment, Table-settings configuration style for SAP ERP). File ini memberi Anda kontrol atas opsi materialisasi, pengoptimalan deployment, dan fitur performa BigQuery untuk setiap tabel, tanpa perlu menulis atau mengubah kode SQL.

  • Penyelesaian dependensi dinamis: Secara default (deployAlways: false), Cortex Framework mengoptimalkan jejak deployment dan biaya eksekusi hanya dengan men-deploy dan mengompilasi tabel lapisan dasar data yang secara aktif diperlukan sebagai dependensi oleh produk data hilir yang diaktifkan. Untuk mengganti pengoptimalan ini dan memaksa tabel dasar agar selalu di-deploy (yang sangat berguna saat menjalankan dasar data secara mandiri atau untuk workload hilir kustom), tetapkan deployAlways: true.
  • Mode penyerapan: Mengontrol apakah tabel diproses menggunakan rekonstruksi status CDC inkremental atau pemrosesan snapshot penuh.
  • Penamaan dan tag target: Sesuaikan nama tabel yang disesuaikan target dan lampirkan tag metadata arbitrer (misalnya, [sap, finance, hourly]) langsung ke tindakan Dataform untuk mengaktifkan eksekusi pipeline selektif (dataform run --tags ...).
  • Detail pengelompokan: Menempatkan data terkait secara bersamaan dengan mengurutkan blok penyimpanan di hingga empat kolom alfanumerik (misalnya, bukrs, gjahr). Pengelompokan secara signifikan meningkatkan performa kueri dan mengurangi biaya pemindaian data untuk kueri yang memfilter atau menggabungkan kolom ini.
  • Detail partisi: Segmen tabel historis besar menurut waktu (time atau DATE dengan timeGrain: day | month | year) atau rentang bilangan bulat (integer). Partisi mencegah pemindaian tabel penuh saat kueri meminta rentang tanggal atau interval ID tertentu.

Memperluas fondasi data

Untuk memperluas lapisan fondasi data dengan tabel tambahan, Anda memiliki beberapa opsi:

Tabel dasar data yang tersedia

Tabel berikut mencantumkan tabel yang disertakan dalam lapisan fondasi data Cortex Framework dan detail terkait.

Lini bisnis Modul SAP Nama tabel Deskripsi Sumber yang didukung Tag Dataform Detail partisi Detail cluster
SAP ECC SAP S/4HANA
Keuangan CO bpge Nilai Anggaran (Keseluruhan) finance, sap_co, daily
bpja Nilai Anggaran (Tahunan) finance, sap_co, daily
bpvg Item Baris Dokumen finance, sap_co, daily
cepc Tabel Data Master Pusat Laba finance, sap_co, daily
cepct Teks untuk Data Master Pusat Laba finance, sap_co, daily
ckmlcr Buku Besar Material: Nilai Catatan Total Periode finance, sap_co, daily
ckmlhd Buku Besar Material: Header Record finance, sap_co, daily
cobk Mengontrol Objek: Header Dokumen keuangan, pengendalian, harian
coep Mengontrol Objek: Item Baris (Menurut Periode) keuangan, pengendalian, harian
cooi Pengelolaan Komitmen: Item Baris keuangan, pengendalian, harian
cosp Objek Pengontrol: Total Biaya untuk Postingan Eksternal keuangan, pengendalian, harian
coss Mengontrol Objek: Total Biaya untuk Postingan Internal keuangan, pengendalian, harian
cskb Elemen Biaya (Data yang Bergantung pada Area Pengendalian) finance, sap_co, daily
csks Master Record Pusat Biaya finance, sap_co, daily
cskt Teks Pusat Biaya finance, sap_co, daily
csku Teks Elemen Biaya finance, sap_co, daily
jest Status Objek Individual finance, sap_co, daily
sethanahier0101 Tabel hierarki untuk Grup Pusat Biaya finance, sap_co, monthly
sethanahier0106 Tabel hierarki untuk Grup Pusat Biaya finance, sap_co, monthly
setheader Menetapkan Header dan Direktori finance, sap_co, monthly
setheadert Deskripsi Singkat Set finance, sap_co, monthly
setleaf Nilai dalam Set finance, sap_co, monthly
setnode Set Tingkat Bawah dalam Set finance, sap_co, monthly
tj02t Teks Status Sistem finance, sap_co, yearly
tka01 Mengontrol Area finance, sap_co, yearly
tka02 Mengontrol Penetapan Area finance, sap_co, yearly
FI acdoca Item Baris Entri Jurnal Universal finance, sap_fi, hourly rclnt, rbukrs
acdocu Entri Jurnal Grup finance, sap_fi, hourly
adr6 Alamat Email (Layanan Alamat Bisnis) finance, sap_fi, daily
adrc Alamat (Layanan Alamat Bisnis) finance, sap_fi, daily
adrct Teks Alamat (Layanan Alamat Bisnis) finance, sap_fi, daily
anek Header Dokumen Postingan Aset finance, sap_fi, daily
anep Item Baris Aset finance, sap_fi, daily
ankt Kelas Aset: Deskripsi finance, sap_fi, hourly
anla Segmen Master Record Aset finance, sap_fi, hourly
anlb Persyaratan Penyusutan finance, sap_fi, hourly
anlc Catatan Nilai Aset: Tahun finance, sap_fi, yearly
anlh Nomor Aset Utama finance, sap_fi, hourly
anlz Alokasi Aset yang Bergantung pada Waktu finance, sap_fi, hourly
atras Tabel Tingkat Treasury finance, sap_fi, daily
bkpf Header Dokumen Akuntansi finance, sap_fi, hourly budat (waktu/hari) bukrs, gjahr
bsad Tabel yang Dibuat untuk Tampilan finance, sap_fi, hourly
bsak Tabel yang Dibuat untuk Tampilan finance, sap_fi, hourly
bseg Segmen Dokumen Akuntansi finance, sap_fi, hourly mandt, bukrs, gjahr
bsid Tabel yang Dibuat untuk Tampilan finance, sap_fi, hourly
bsik Tabel yang Dibuat untuk Tampilan finance, sap_fi, hourly
but000 Bp: Data Umum I finance, sap_fi, daily
but020 Bp: Alamat finance, sap_fi, daily
but0bk Bp: Detail Bank finance, sap_fi, daily
faat_doc_it Akuntansi Aset: Item Baris Statistik finance, sap_fi, daily
faat_plan_values Nilai Aset: Nilai yang Direncanakan dan Penilaian Ulang finance, sap_fi, daily
faat_ydda Nilai Aset: Data yang Bergantung pada Tahun finance, sap_fi, yearly
fagl_011pc Versi Laporan Keuangan: Item dalam Versi Laporan Keuangan finance, sap_fi, monthly
fagl_011qt Struktur Laporan Keuangan: Teks untuk Item Laporan Keuangan finance, sap_fi, monthly
fagl_011zc Versi Laporan Keuangan: Penugasan Item Fs ke Akun Buku Besar finance, sap_fi, monthly
faglflexa Buku Besar: Item Baris Aktual finance, sap_fi, hourly
fincs_ref_vers_r Relasi Versi Referensi finance, sap_fi, yearly
finsc_ld_cmp Setelan yang Bergantung pada CompCode untuk Buku Besar Entri Jurnal Univ. finance, sap_fi, daily
finsc_ledger Buku Besar Entri Jurnal Universal finance, sap_fi, yearly
finsc_ledger_rep Buku Besar Entri Jurnal Terpadu (Tabel tambahan untuk Pelaporan) finance, sap_fi, daily
finsc_ledger_t Teks Buku Besar Entri Jurnal Universal finance, sap_fi, yearly
ska1 Master Akun G/L (Daftar Akun) finance, sap_fi, daily
skat Catatan Induk Akun G/L (Daftar Akun: Deskripsi) finance, sap_fi, daily
t001 Kode Perusahaan finance, sap_fi, once
t002 Kunci Bahasa (Komponen Bc-I18) finance, sap_fi, once
t002t Teks Utama Bahasa finance, sap_fi, once
t005 Negara finance, sap_fi, yearly
t005k Komunikasi: Kode Telepon Negara konfigurasi, tahunan
t005s Pajak: Kunci Wilayah (Provinsi) konfigurasi, tahunan
t005t Nama Negara konfigurasi, tahunan
t005u Pajak: Kunci Wilayah: Teks konfigurasi, tahunan
t009 Varian Tahun Fiskal konfigurasi, setelah
t009b Periode Varian Tahun Fiskal konfigurasi, setelah
t090nat Teks Kunci Penyusutan finance, sap_fi, hourly
t093b Setelan Kode Perusahaan untuk Area Penyusutan finance, sap_fi, hourly
t093c Setelan Kode Perusahaan untuk Akuntansi Aset finance, sap_fi, hourly
t093t Teks Area Penyusutan finance, sap_fi, hourly
t095t Nama Penentuan Akun finance, sap_fi, hourly
t098t Deskripsi Alasan Penilaian Manual finance, sap_fi, hourly
t881 Ledger Master finance, sap_fi, once
t881t Fi-Sl Ledger Text finance, sap_fi, once
tabw Jenis Transaksi Aset finance, sap_fi, daily
tabwh Teks Grup Jenis Transaksi Aset finance, sap_fi, daily
tabwt Teks Jenis Transaksi Aset finance, sap_fi, daily
tcurc Kode Mata Uang finance, sap_fi, once
tcurf Faktor Konversi finance, sap_fi, once
tcurr Nilai Tukar finance, sap_fi, daily
tcurt Nama Kode Mata Uang finance, sap_fi, daily
tcurx Angka Desimal dalam Mata Uang finance, sap_fi, daily
tf200 Versi Konsolidasi finance, sap_fi, yearly
tf201 Versi: Nama finance, sap_fi, yearly
tvarvc Tabel Variabel Varian (Khusus Klien) finance, sap_fi, daily
vwpanla Master Aset untuk Sekuritas finance, sap_fi, daily
FSCM fdsb Catatan Ringkasan Perkiraan dan Pengelolaan Kas finance, sap_fscm, hourly
fqm_flow Satu Eksposur Dari Operasi finance, sap_fscm, hourly
PS prhi Struktur Rincian Kerja, Tepi (Penunjuk Hierarki) finance, sap_ps, hourly
proj Definisi Project finance, sap_ps, hourly
prps Data Master Elemen WBS finance, sap_ps, hourly
prte Menjadwalkan Data untuk Item Project finance, sap_ps, hourly
rpsco Database info project: Biaya, pendapatan, keuangan finance, sap_ps, daily
TRM vtbfha Transaksi Keuangan (Vtbfha) finance, sap_trm, hourly
vtbfhapo Alur Transaksi (Vtbfhapo) finance, sap_trm, hourly
vtbfhazu Aktivitas Transaksi (Vtbfhazu) finance, sap_trm, hourly
vtvbar NPV Transaksi OTC (Vtvbar) finance, sap_trm, hourly
HR HCM hrrp_directory Direktori hierarki hr, sap_hcm, bulanan
hrrp_node Node hierarki hr, sap_hcm, bulanan
hrrp_nodet Teks node hierarki hr, sap_hcm, bulanan
IT DASAR dd01l Domain it, sap_basis, once
dd03l Kolom Tabel it, sap_basis, once
dd04t R/3 Dd: Teks Elemen Data it, sap_basis, once
dd07l Nilai Domain it, sap_basis, once
dd07t Dd: Teks untuk Nilai Tetap Domain (Bergantung pada Bahasa) it, sap_basis, once
dd08l Definisi Hubungan it, sap_basis, once
Manufaktur PP afko Data Header Pesanan PP Orders manufaktur, sap_pp, per jam
afpo Item Pesanan manufaktur, sap_pp, per jam
aufk Data Master Pesanan manufaktur, sap_pp, per jam
tiang Link Material ke Bom manufaktur, sap_pp, bulanan
stas Boms - Item Selection manufaktur, sap_pp, bulanan
stko Bom Header manufaktur, sap_pp, bulanan
stpo Item Bom manufaktur, sap_pp, bulanan
Penjualan SD kna1 Data Umum di Customer Master sales, sap_sd, daily
konv Ketentuan (Data Transaksi) sales, sap_sd, daily kdatu (waktu/hari) stunr
prcd_elements Elemen Harga sales, sap_sd, hourly
t179 Materi: Hierarki Produk sales, sap_sd, once
t179t Materi: Hierarki Produk: Teks sales, sap_sd, once
tspa Unit Organisasi: Divisi Penjualan penjualan, sap_sd, tahunan
tspat Unit Organisasi: Divisi Penjualan: Teks penjualan, sap_sd, tahunan
tvfst Penagihan : Teks Alasan Pemblokiran penjualan, sap_sd, tahunan
tvko Unit Organisasi: Organisasi Penjualan penjualan, sap_sd, tahunan
tvkot Unit Organisasi: Organisasi Penjualan: Teks penjualan, sap_sd, tahunan
tvlst Penayangan: Alasan/Cakupan Pemblokiran: Teks penjualan, sap_sd, tahunan
tvtw Unit Organisasi: Saluran Distribusi penjualan, sap_sd, tahunan
tvtwt Unit Organisasi: Saluran Distribusi: Teks penjualan, sap_sd, tahunan
vbak Dokumen Penjualan: Data Header sales, sap_sd, hourly audat (waktu/hari) vkorg
vbap Dokumen Penjualan: Data Item sales, sap_sd, hourly werks, lgort
vbep Dokumen Penjualan: Data Baris Jadwal sales, sap_sd, hourly
vbfa Alur Dokumen Penjualan sales, sap_sd, hourly
vbpa Dokumen Penjualan: Partner sales, sap_sd, hourly
vbrk Dokumen Penagihan: Data Header sales, sap_sd, hourly
vbrp Dokumen Penagihan: Data Item sales, sap_sd, hourly
vbuk Dokumen Penjualan: Status Header dan Data Administratif sales, sap_sd, hourly
vbup Dokumen Penjualan: Status Item sales, sap_sd, hourly
wb2_d_bvdetail Ccs: Pernyataan Mendetail untuk Penyelesaian sales, sap_sd, daily
wb2_d_settl_cal Potongan Harga: Kalender Penyelesaian sales, sap_sd, daily
wbrk Dokumen Penyelesaian Agensi: Header sales, sap_sd, hourly
wbrp Dokumen Penyelesaian Agensi: Item sales, sap_sd, hourly
wcocoh Kontrak Kondisi: Header sales, sap_sd, daily
wcocoi Kontrak Kondisi: Item sales, sap_sd, daily
Supply Chain LE likp Dokumen SD: Data Header Pengiriman supply_chain, sap_le, hourly erdat (waktu/bulan) vkorg
bibir Dokumen SD: Pengiriman: Data Item supply_chain, sap_le, hourly erdat (waktu/bulan)
MM ekbe Histori Dokumen Pembelian (Ekbe) supply_chain, sap_mm, hourly budat (waktu/hari) mandt, vgabe, ebeln, bwart
ekes Konfirmasi Vendor (Ekes) supply_chain, sap_mm, hourly
eket Baris Jadwal Perjanjian Penjadwalan supply_chain, sap_mm, hourly eindt (waktu/hari) mandt, ebeln
ekkn Penetapan Akun dalam Dokumen Pembelian (Ekkn) supply_chain, sap_mm, hourly
ekko Header Dokumen Pembelian supply_chain, sap_mm, hourly bedat (waktu/hari) mandt, ebeln
ekpo Item Dokumen Pembelian supply_chain, sap_mm, hourly aedat (waktu/hari) mandt, ebeln
lfa1 Master Vendor (Bagian Umum) supply_chain, sap_mm, daily
makt Deskripsi Materi supply_chain, sap_mm, daily spras
mara Data Umum Bahan supply_chain, sap_mm, daily
marc Data Pabrik untuk Material supply_chain, sap_mm, hourly
mard Data Lokasi Penyimpanan untuk Material supply_chain, sap_mm, hourly
matdoc Dokumen Material supply_chain, sap_mm, hourly
mbew Penilaian Material supply_chain, sap_mm, daily
mbewh Penilaian Material: Riwayat supply_chain, sap_mm, daily
mch1 Batch (Jika Batch Management Cross-Plant) supply_chain, sap_mm, daily
mcha Batch supply_chain, sap_mm, daily
mchb Stok Batch supply_chain, sap_mm, daily
mkol Stok Khusus dari Vendor supply_chain, sap_mm, weekly
mseg Segmen Dokumen: Materi supply_chain, sap_mm, hourly
msfd Stok Pesanan Penjualan dengan Vendor supply_chain, sap_mm, weekly
mska Stok Pesanan Penjualan supply_chain, sap_mm, weekly
msku Stok Khusus dengan Pelanggan supply_chain, sap_mm, weekly
mslb Stok Khusus dengan Vendor supply_chain, sap_mm, weekly
rbco Item Dokumen, Invoice Masuk, Zuordnung supply_chain, sap_mm, hourly
rbkp Header Dokumen: Tanda Terima Invoice supply_chain, sap_mm, hourly
rseg Item Dokumen: Invoice Masuk supply_chain, sap_mm, hourly
t001k Area Valuasi supply_chain, sap_mm, once
t001l Lokasi Penyimpanan supply_chain, sap_mm, once
t001w Tanaman/Cabang supply_chain, sap_mm, once
t006 Satuan Ukur supply_chain, sap_mm, yearly
t006a Menetapkan Internal ke Unit yang Bergantung pada Bahasa konfigurasi, setelah
t006t Teks Dimensi konfigurasi, setelah
t023 Grup Materi supply_chain, sap_mm, once
t023t Deskripsi Grup Material supply_chain, sap_mm, once
t024 Membeli Grup supply_chain, sap_mm, once
t024e Organisasi Pembelian supply_chain, sap_mm, once
t134 Jenis Material supply_chain, sap_mm, once
t134t Deskripsi Jenis Materi supply_chain, sap_mm, once
t148t Deskripsi Saham Khusus supply_chain, sap_mm, once
t156 Jenis Gerakan supply_chain, sap_mm, once
t156t Teks Jenis Gerakan konfigurasi, setelah
t157e Tabel Teks: Alasan Perpindahan konfigurasi, setelah
t161 Jenis Dokumen Pembelian (T161) supply_chain, sap_mm, once
t161t Teks untuk Jenis Dokumen Pembelian supply_chain, sap_mm, once