[SAP] – Debug Background Job
Cara melakukan debugging Background Job
Background Job, suatu yang jamak ada pada sistem. Dimana dapat melakukan task – task tertentu yang dijadwalkan baik secara periodik, maupun sekali run dengan setting waktu. Background Job SAP berjalan disisi server.
Banyak sekali penerapan system background job dalam sebuah sistem besar ERP ini, mulai dari drop/upload data mingguan, bulanan, read-write data ke 3rd party non direct dan sebagainya.
Seiring dengan berjalannya sistem, dan tracking saat terjadi error. Lalu Bagaimanakan cara untuk ‘mendebug’ sebuah Background JOB?
Nah ini yang tidak sedikit menjadi permasalahan, saat harus melakukan tracing dari sebuah background job yang berjalan. Di point ini saya akan bedakan dalam beberapa hal utama yakni
1. Melakukan debugging langsung jika nama program diketahui
Point ini sangat jamak terjadi dan biasanya langsung bisa solved dengan cara ini, dimana tinggal mencari di SM37 dari nama Background Job nya untuk dapat diketahui nama programnya, untuk kemudian dilakukan run manual dari dalam program.
2. Melakukan Debugging dari Process Background Job itu sendiri
Nah, point ini yang relatif agak membutuhkan effort.
Pernah kejadian dimana, hasil drop file dari Background job selalu selisih dengan push manual.
Nah case seperti ini, yang kita perlu untuk melakukan debugging background Job, dimana ‘biasanya mencoba debug denga point 1’ namun hasilnya masih belum sesuai. Maka untuk mendapatkan hasil analisa yang lebih dalam perlu dilakukan debug Background Job dengan langkah sebagai berikut :
- Buka nama Background Job dengan SM37
- Tick pada nama JobName, lalu repeat schedulling
- Lalu Pilih intermediate dan save
- selanjutnya akan muncul, status dari running background Job, setelah BJOB finish lalu eksekusi tcode JDBC
Yes, debugger dari background job sudah jalan, dengan step dan input yang sama dengan saat Bjob ini dijalankan oleh SAP-BATCH.
Namun perlu saya note ya, debugging ini tidak real secara langsung menggunakan user SAP-BATCH (user BackgroundJob), tetapi sifatnya mengulangi alur program yang dijalankan sebelumnya oleh SAP-BATCH dengan menggunakan user dari pelaku debugger.
Jadi untuk case, misal drop file menggunakan Bjob, saat Bjob ini finish dan belum JDBG maka file sudah akan terbentuk, dan ketika di debug menggunakan JDBG, dia akan mengulangi hal yang sama dilakukan oleh SAP-BATCH sebelumnya.
Case ini membantu saya untuk menemukan permasalahan perbedaan data yang ada, dimana setelah dilakukan debugging dan evaluasi, permasalahan ada pada otorisasi user yang berbeda.
Done,
Demikian sharing singkat dari saya terkait how to ndebug background job. Dan semoga bermanfaat.
_TerimaKasih,
GuritnoY
https://www.linkedin.com/in/guritno-yudho-wibowo-95944236/