Integrasi / ERP / Microsoft Dynamics 365 Supply Chain Management
Panduan Integrasi Dynamics 365 Supply Chain Management untuk Penjadwalan Produksi dengan SkyPlanner APS
Panduan integrasi Dynamics 365 Supply Chain Management ini menjelaskan kepada mitra dan tim TI cara menghubungkan Microsoft Dynamics 365 Supply Chain Management dengan SkyPlanner APS. SkyPlanner terintegrasi dua arah dengan Dynamics 365 Supply Chain Management melalui entitas data standarnya:
- Data yang masuk mencakup perintah produksi, operasi rute, job rute, baris BOM, sumber daya produksi, kalender, produk yang telah dirilis, persediaan yang tersedia, dan baris pesanan pembelian.
- Waktu mulai dan selesai yang dijadwalkan serta sumber daya produksi yang dipilih ditulis kembali ke perintah produksi dan operasi rutenya.
- Jam kerja operator dan kuantitas dikirim kembali melalui jurnal kartu rute.
- Webhook SkyPlanner mengirim perubahan jadwal begitu perubahan terjadi.
Tim SkyPlanner menyesuaikan konfigurasi integrasi dengan pengaturan Supply Chain Management Anda selama orientasi awal dan memberikan dukungan setelah sistem mulai digunakan. Panduan ini ditujukan bagi mitra dan pengembang yang ingin terlibat atau membangun integrasi sendiri menggunakan REST API SkyPlanner yang telah didokumentasikan (referensi API).
Opsi integrasi Dynamics 365 SCM
Supply Chain Management menyediakan akses ke datanya melalui entitas data. Ada empat opsi yang relevan untuk penjadwalan:
- Endpoint REST OData v4.
[Your organization's root URL]/datamenyediakan akses ke setiap entitas data yang ditandai IsPublic, dengan dukungan penuh untuk membuat, membaca, memperbarui, dan menghapus data. Endpoint ini mendukung$filter,$count,$orderby,$skip,$top,$select, serta$expandtingkat pertama. Pembagian halaman dikendalikan oleh server dengan maksimum 10.000 rekaman, dan permintaan batch dapat mengelompokkan operasi penulisan dalam changeset. OData bekerja secara sinkron. (sumber) - Batch data API. Data management package REST API dan integrasi berulang memindahkan data dalam volume besar secara asinkron. Microsoft menyatakan: “If the volume is more than a few hundred thousand records, use the batch data API.” (Jika volumenya melebihi beberapa ratus ribu rekaman, gunakan batch data API.) API ini juga didukung untuk penerapan lokal. (sumber)
- Peristiwa bisnis. Aplikasi Finance and operations menerbitkan peristiwa bisnis ke Azure Service Bus, Event Grid, endpoint HTTPS, atau Power Automate. (sumber)
- Layanan kustom dan aksi OData. Layanan kustom X++ dan aksi OData terikat menjalankan logika bisnis sesuai permintaan.
Integrasi SkyPlanner menggunakan endpoint OData untuk lalu lintas data harian dan batch data API untuk pemuatan awal dalam volume besar. Tidak ada komponen yang diinstal di Supply Chain Management.
Autentikasi
Daftarkan aplikasi di Microsoft Entra ID (service principal). Di Supply Chain Management, petakan aplikasi tersebut ke pengguna dengan peran keamanan yang dibutuhkan integrasi. Integrasi membaca data produksi, sumber daya produksi, dan persediaan, serta menulis data penjadwalan perintah produksi dan jurnal. Token diminta dari Entra ID menggunakan kredensial klien.
Dua aturan menentukan data yang dapat diakses integrasi:
- Entitas hukum. OData mengembalikan data perusahaan default, kecuali permintaan menyertakan
?cross-company=true. Pabrik dengan beberapa lokasi memfilter data berdasarkandataAreaId. - Nama publik. Nama entitas di bawah ini adalah nama dalam pengelolaan data. Nama koleksi OData publik bisa berbeda, jadi periksa namanya di
/data/$metadatapada lingkungan Anda.
Di sisi SkyPlanner, REST API menggunakan token API untuk autentikasi (SkyPlanner Settings > API) dan didokumentasikan dalam Swagger/OpenAPI. Tutorial integrasi memandu Anda melakukan panggilan awal.
Pemetaan data
| Entitas D365 SCM | Objek SkyPlanner | Arah | Frekuensi |
|---|---|---|---|
| Produk yang telah dirilis (ItemNumber) | Produk dan material | SCM → SkyPlanner | Pemuatan awal, lalu hanya perubahan data |
| Baris BOM produksi (ProdProductionOrderBillOfMaterialsLineEntity), baris BOM | Struktur produk, material per perintah produksi | SCM → SkyPlanner | Setiap sinkronisasi perintah produksi |
| Rute, versi rute, operasi rute, properti operasi (RouteOperationPropertiesV2Entity) | Tahap proses beserta waktu persiapan dan waktu proses | SCM → SkyPlanner | Pemuatan awal, lalu saat ada perubahan |
| Sumber daya produksi (OpResOperationsResourceEntity), kelompok sumber daya produksi, kapabilitas | Stasiun kerja, kelompok stasiun kerja, efisiensi | SCM → SkyPlanner | Pemuatan awal, jarang diperbarui setelahnya |
| Kalender waktu kerja, hari dan interval waktu dalam kalender, penetapan kalender | Shift kerja | SCM → SkyPlanner | Setiap hari, atau shift kerja dikelola di SkyPlanner |
| Header perintah produksi (ProdProductionOrderHeaderEntity) | Perintah produksi beserta tenggat dan statusnya | SCM → SkyPlanner | Setiap beberapa menit atau saat terjadi peristiwa bisnis |
| Operasi rute (ProdProductionOrderRouteOperationEntity), job rute (ProdProductionOrderRouteJobEntity) | Job beserta durasi dan kebutuhan sumber daya produksinya | SCM → SkyPlanner | Setiap sinkronisasi perintah produksi |
| Persediaan yang tersedia | Saldo stok | SCM → SkyPlanner | Setiap jam atau saat penjadwalan dijalankan |
| Baris pesanan pembelian beserta tanggal pengirimannya | Material yang akan datang; stok diperbarui saat PO ditandai Delivered | SCM → SkyPlanner | Setiap jam atau saat penjadwalan dijalankan |
| Tanggal/waktu mulai dan selesai yang dijadwalkan serta sumber daya produksi untuk setiap operasi rute | Waktu mulai, waktu selesai, dan stasiun kerja yang direncanakan per operasi | SkyPlanner → SCM | Saat jadwal berubah, melalui webhook SkyPlanner |
| Jurnal kartu rute (ProdRouteCardProductionJournalEntryEntity: RegisteredHours, ReportedGoodInventoryQuantity) | Catatan waktu dan kuantitas | SkyPlanner → SCM | Per konfirmasi atau per shift kerja, jika dipilih |
| Pengaturan batasan di SkyPlanner | Matriks waktu persiapan, perkakas sebagai sumber daya produksi berkapasitas terbatas, jumlah operator, sumber daya produksi alternatif | Dikelola di SkyPlanner | Diatur selama orientasi awal |
Pola integrasi
1. Pemuatan awal master data. Muat sumber daya produksi, kelompok sumber daya produksi, kalender, produk yang telah dirilis, rute, dan BOM. Gunakan batch data API jika volumenya mencapai ratusan ribu rekaman; untuk volume yang lebih kecil, gunakan pembagian halaman OData. Petakan setiap sumber daya produksi SCM ke stasiun kerja SkyPlanner. Jangan hanya memetakan kelompoknya: penjadwalan operasi mengalokasikan kelompok, tetapi pekerjaan di lantai produksi dijalankan oleh masing-masing sumber daya produksi.
2. Sinkronisasi perintah produksi. Baca perintah produksi yang telah ditetapkan dengan status yang dikelola SkyPlanner, biasanya Scheduled dan Released, beserta operasi rute, job rute, dan baris BOM-nya. Baca juga baris pesanan pembelian yang masih terbuka. SkyPlanner menganggap material yang dipesan tersedia pada tanggal pengiriman PO dan memperbarui stok saat PO ditandai Delivered.
Jangan sertakan perintah produksi terencana kecuali secara tegas termasuk dalam lingkup proyek. Planning Optimization membuatnya ulang setiap kali dijalankan.
3. Penulisan balik jadwal. Untuk setiap operasi yang ditempatkan atau dipindahkan oleh mesin penjadwalan, SkyPlanner menulis tanggal/waktu mulai dan selesai yang dijadwalkan serta sumber daya produksinya ke operasi rute, menggunakan nama field dalam /data/$metadata pada lingkungan Anda. Perubahan dikirim dalam changeset batch OData, sehingga hasil satu kali penjadwalan diterapkan sebagai satu pembaruan yang konsisten.
4. Konfirmasi dari lantai produksi. Operator mencatat pekerjaan menggunakan SkyPlanner Mobile Confirmations atau Production Timer, dan catatan waktu tersebut menjaga jadwal tetap mutakhir. Jam kerja dan kuantitas produk baik dapat dikirim kembali sebagai baris jurnal kartu rute. Report as finished tetap dijalankan di tempat yang Anda gunakan saat ini, yaitu di SCM atau Production floor execution.
Pilih satu saluran untuk setiap posting. Mencatat jam kerja yang sama dari SkyPlanner dan Production floor execution akan menggandakan pencatatan.
5. Aturan kepemilikan data dan penanganan konflik. Dokumentasikan aturan ini sebelum sistem mulai digunakan:
| Data | Pemilik |
|---|---|
| Produk, BOM, rute, kuantitas, status perintah produksi, perhitungan biaya | Supply Chain Management |
| Perintah produksi terencana | Planning Optimization |
| Urutan operasi, waktu mulai dan selesai yang dijadwalkan, penetapan sumber daya produksi | SkyPlanner |
| Matriks waktu persiapan, perkakas, jumlah operator, sumber daya produksi alternatif | SkyPlanner |
| Shift kerja dan ketidakhadiran | Satu sistem, dipilih saat penentuan lingkup |
| Posting jam kerja dan hasil produksi | Supply Chain Management, dari catatan waktu SkyPlanner jika dipilih |
Sumber konflik utama adalah penjadwalan job di SCM sendiri. Jika perencana menjadwalkan ulang pesanan di SCM, tanggal dari SkyPlanner akan tertimpa. Gunakan IsProductionOrderSchedulingLocked pada header pesanan produksi yang penjadwalannya dikelola SkyPlanner. Perlakukan setiap pesanan yang diubah di SCM sebagai versi baru, lalu sinkronkan kembali. Autopilot menjadwalkan ulang secara otomatis saat terjadi perubahan produksi.
Cakupan proyek
Implementasi biasanya selesai dalam hitungan minggu setelah orientasi dimulai. Sebelum itu, Anda dapat menjalankan uji coba gratis selama 30 hari menggunakan data sendiri. Ekspor sumber daya produksi, rute, dan pesanan produksi yang masih terbuka melalui proyek ekspor manajemen data atau add-in Excel. Impor data tersebut dalam format CSV atau Excel, lalu validasi jadwalnya.
- Penentuan lingkup. Tetapkan tabel pemetaan, status yang dikelola SkyPlanner, frekuensi sinkronisasi, dan saluran posting.
- Akses. Daftarkan aplikasi Entra ID, petakan ke pengguna SCM dengan peran yang hanya memberikan hak akses yang diperlukan, lalu pastikan nama entitas publik di
/data/$metadata. Mulai dari lingkungan sandbox, kemudian lanjutkan ke lingkungan produksi. - Pemuatan data awal. Sumber daya produksi, kalender, produk yang telah dirilis, rute, dan BOM.
- Sinkronisasi pesanan dan pesanan pembelian. Lakukan polling dengan
$filteruntuk mengambil rekaman yang berubah, serta gunakan peristiwa bisnis jika tersedia dalam katalog Anda. - Pengaturan batasan di SkyPlanner. Matriks waktu penyiapan, perkakas, jumlah operator, serta mesin atau personel alternatif.
- Penulisan balik jadwal. Perbarui operasi rute secara batch dan kunci penjadwalan pesanan yang dikelola SkyPlanner.
- Pengujian paralel. Jalankan SkyPlanner secara paralel dengan perencanaan yang digunakan saat ini, bandingkan tanggalnya, lalu perbaiki master data.
- Mulai operasional. Aktifkan penulisan balik setelah data sesuai.
Hal yang perlu diantisipasi dalam integrasi Dynamics 365 SCM
- Efisiensi terhitung dua kali. SCM menghitung waktu dengan rumus “Scheduling time = Time x 100 / Efficiency percentage.” (Waktu penjadwalan dihitung dengan membagi waktu dasar dengan persentase efisiensi yang dinyatakan sebagai pecahan desimal.) Petakan efisiensi ke efisiensi stasiun kerja SkyPlanner hanya sekali, bukan menerapkannya lagi pada waktu yang sudah disesuaikan.
- Kalender ditetapkan pada kelompok sumber daya produksi. Baca penetapan kalender untuk setiap kelompok dan sumber daya produksi. Jika tidak, perhitungan kapasitas akan menyimpang.
- Penjadwalan operasi vs penjadwalan job. Pesanan yang dijadwalkan melalui penjadwalan operasi tidak memiliki waktu mulai dan selesai maupun sumber daya produksi tertentu. Sinkronkan operasi rute dan kebutuhan sumber daya produksi, bukan hanya tanggalnya.
- Pengaturan batas kapasitas. Sumber daya produksi dengan Finite capacity yang diatur ke No dapat dijadwalkan melebihi kapasitas di SCM. Modelkan setiap batasan nyata sebagai batas kapasitas di SkyPlanner.
- 32 sumber daya produksi per operasi. SCM membatasi penjadwalan job hingga 32 sumber daya produksi per operasi. Di SkyPlanner, pilihan alternatif diatur dalam kelompok stasiun kerja dan stasiun kerja alternatif.
- Paginasi dan volume data. OData membagi hasil menjadi halaman berisi 10.000 rekaman dan mendukung ekspansi hingga satu tingkat. Gunakan batch data API untuk pemuatan awal berukuran besar.
- Badan hukum. Tanpa
cross-company=truedan filterdataAreaId, pabrik yang mencakup beberapa perusahaan hanya akan menyinkronkan perusahaan default.
Siapa yang mengonfigurasi integrasi
Pekerjaan ini mencakup pemetaan sesuai rute, sumber daya produksi, dan konfigurasi SCM Anda, serta pengaturan batasan di SkyPlanner: matriks waktu penyiapan, perkakas, jumlah operator, dan sumber daya produksi alternatif.
- Tim SkyPlanner mengonfigurasi integrasi selama orientasi dan memberikan dukungan setelah mulai operasional, baik untuk sisi SkyPlanner maupun entitas data SCM yang disepakati. Setiap pabrik menggunakan D365 SCM dengan cara berbeda, dan pengetahuan tentang perbedaan itulah yang diterapkan di sini.
- Mitra Dynamics Anda dapat ikut terlibat. Mitra memahami konfigurasi, ekstensi, dan peran keamanan Anda, serta dapat menyiapkan aplikasi Entra ID dan akses entitas. SkyPlanner menyediakan REST API, dokumentasi Swagger/OpenAPI, dan webhook.
- Pengembang internal Anda dapat mengembangkan integrasi ini lebih lanjut melalui REST API terdokumentasi yang sama dengan token API. Token API sudah cukup untuk memulai, dan tim SkyPlanner siap membantu bila diperlukan.
Setelah terhubung, mesin Arcturus menyusun jadwal berdasarkan data pesanan produksi terkini di SCM, lalu tanggal hasil penjadwalan ditulis ke operasi rute. Harga SkyPlanner mulai dari 199 € per bulan, sudah termasuk 5 stasiun kerja, dengan penagihan bulanan. Penawaran harga integrasi disampaikan di awal sesuai proses dan kebutuhan Anda, bersama paket langganan Anda, sehingga total biaya sudah jelas sebelum Anda memulai.
Lihat perbandingannya dengan perencanaan bawaan SCM di penjadwalan produksi dengan batas kapasitas di Dynamics 365 SCM. Gambaran umumnya tersedia di halaman Dynamics 365 SCM, sedangkan ERP lainnya dapat Anda temukan di pusat integrasi ERP.
Ulasan SkyPlanner dari perusahaan manufaktur
2 jamdihemat setiap minggu
“SkyPlanner telah membawa perencanaan produksi kami dari lembar kerja Excel ke optimasi produksi secara real-time.”
Kalle Kalliomäki, Spesialis Rantai Pasok
UTU · Panel listrik dan perangkat hubung bagi
Perencanaan produksi menghemat 2 jam kerja setiap minggu, dan antrean kerja baru sampai ke lini produksi dalam hitungan detik.
+90%efisiensi produksi
“Efisiensi produksi meningkat 90%.”
Abdul Rucyinga, Kepala TI
Laboratory & Allied · Manufaktur farmasi
Efisiensi produksi meningkat 90%, dan penyusunan rencana yang dioptimalkan untuk tiga bulan di seluruh stasiun kerja membutuhkan waktu kurang dari 30 menit.
100%keandalan pengiriman sejak 2021
“SkyPlanner memberi kami gambaran kapasitas yang jelas dan membuat perencanaan lebih dapat diprediksi.”
Dan Berglund, COO/CFO
Opes Corporation · Manufaktur kimia dan pangan
Keandalan pengiriman mencapai 100% sepanjang penggunaan SkyPlanner, sejak 2021.
1.000-anperintah kerja dijadwalkan otomatis
“Kini kami mengendalikan produksi dengan cara yang berbeda, dan pemahaman kami tentang kapasitas sudah berada di tingkat yang sama sekali berbeda.”
Hannu Ryynänen, CEO
Mamec · Mesin pencampur industri, pompa, dan manufaktur kontrak berteknologi tinggi
Ribuan perintah kerja dijadwalkan secara otomatis, dan seluruh organisasi dapat memantau produksi secara real-time.
Pertanyaan umum
API D365 SCM mana yang digunakan integrasi ini?
Endpoint REST OData v4 di /data, yang menyediakan akses ke semua entitas data publik dengan dukungan penuh untuk membuat, membaca, memperbarui, dan menghapus data. Pemuatan awal berukuran besar menggunakan batch data API. Peristiwa bisnis menyediakan pemicu hampir real-time jika tersedia dalam katalog Anda.
Apakah kami perlu menginstal sesuatu di Supply Chain Management?
Tidak. Integrasi ini menggunakan entitas data standar melalui OData. Administrator Anda mendaftarkan aplikasi Microsoft Entra ID dan memetakannya ke pengguna SCM dengan peran yang diperlukan.
Bagaimana tanggal hasil penjadwalan ditulis kembali ke Supply Chain Management?
SkyPlanner menulis tanggal dan waktu mulai serta selesai yang dijadwalkan, berikut sumber daya produksi untuk operasi, ke operasi rute pesanan produksi melalui changeset batch OData. Pesanan yang penjadwalannya dikelola SkyPlanner dilindungi dengan IsProductionOrderSchedulingLocked.
Mengapa menghubungkan SkyPlanner alih-alih menyesuaikan penjadwalan job SCM?
Planning Optimization hanya memperhitungkan batas kapasitas dalam rentang waktu kapasitas terbatas; di luar rentang itu, perencanaan menganggap kapasitas tidak terbatas (sumber). Penjadwalan job SCM menempatkan pesanan produksi satu per satu dengan memperhitungkan kapasitas yang sudah dicadangkan, sementara waktu penyiapan dicatat sebagai waktu pada operasi (sumber). Microsoft juga tidak menyarankan perencanaan induk dengan batas kapasitas ketika pergantian sif mengubah kapasitas (sumber). SkyPlanner menjadwalkan semua pesanan yang telah ditetapkan secara bersamaan menggunakan matriks waktu penyiapan, dan Autopilot merencanakan ulang secara otomatis setiap kali ada perubahan yang berarti. Tim SkyPlanner mengonfigurasi dan mendukung integrasi dua arah ini, sedangkan mitra Dynamics Anda dapat bertanggung jawab atas sisi SCM.
Apakah SkyPlanner sebaiknya menjadwalkan pesanan produksi yang masih berstatus rencana?
Biasanya tidak. Planning Optimization membuat ulang pesanan produksi yang masih berstatus rencana setiap kali dijalankan. SkyPlanner menjadwalkan pesanan produksi yang telah ditetapkan, dengan status yang disepakati saat penentuan lingkup.
Apakah integrasi ini dapat digunakan dengan Supply Chain Management on-premises?
Pada penerapan on-premises, integrasi menggunakan batch data API yang didukung Microsoft untuk lingkungan tersebut. Sisi SkyPlanner tetap menggunakan REST API yang sama, dan jalur integrasi dipastikan saat penentuan lingkup.
Bisakah kami menguji SkyPlanner sebelum membangun integrasi?
Ya. Uji coba gratis selama 30 hari mendukung hingga 20 stasiun kerja dengan impor CSV atau Excel dari Supply Chain Management, tanpa memerlukan kartu kredit. Mulai uji coba, atau hubungi tim penjualan untuk menentukan lingkup integrasi.