Sunday, March 15, 2015

Parameterized Bounded Task Flow


Melanjutkan blog saya sebelumnya tentang task flow, kali ini saya akan memberikan contoh pembuatan Bounded Task Flow sederhana yang menerima input parameter. Bounded task flow dapat di-reuse di berbagai project ADF lain. Biasanya kita memerlukan input parameter untuk task flow tersebut, baik terkait Business Process atau keperluan lain di aplikasi. Dalam contoh ini, Input Parameter akan diterima oleh Task Flow, kemudian ditampilkan ke halaman .jspx. Kasus lebih kompleks dapat anda kembangkan dari sample ini.

1. Buat Project ADF di JDeveloper, lalu New -> ADF Task Flow untuk membuat task flow baru dalam project anda.


2. Masukkan nama Task Flow anda, lalu jangan lupa untuk men-check pilihan Create as Bounded Task Flow agar task flow yang dihasilkan adalah bounded task flow.


3. Task Flow Diagram akan terbuka, masukkan 1 komponen View. Beri nama View tersebut sesuai kebutuhan anda, lalu double click view tersebut untuk membuat Page Implementation-nya.


4. Dalam page di View tersebut, saya membuat 1 component OutputText saja. Nantinya ini akan digunakan untuk menampilkan input parameter yang diberikan pada task flow.


5. Buka kembali task flow .xml, buka Overview -> Parameters. Disini kita dapat menambah/mengurangi parameter yang akan masuk ke dalam task flow beserta tipenya. Kita juga dapat menentukan apakah parameter tersebut Required ketika task flow dipanggil. Dalam contoh ini, saya akan membuat 1 parameter Required yaitu inputParameter1 dengan tipe String.


6. Klik View1 yang kita buat di langkah ketiga. Cek Property Inspector -> Page Parameters. Disini kita dapat menentukan kemana input parameter akan disimpan/di-reuse dalam aplikasi. Dalam contoh ini, saya menyimpan inputParameter1 (step 5) ke dalam variabel Page Flow Scope yang bernama label1Val. Nantinya variabel ini dapat diakses oleh komponen dalam task flow untuk diproses lebih jauh.


7. Buka Page Fragment yang kita buat di step 4. Klik komponen Input Text -> Property Inspector -> Value. Masukkan value #{pageFlowScope. label1Val}. Ini merupakan variable tempat kita menyimpan value dari input parameter (step 6). Nantinya value ini akan ditampilkan oleh Input Text tersebut ketika page di-load oleh browser.


8. Untuk testing task flow kita, buat sebuah page jsf kosong. Dalam page tersebut, drag Bounded Task Flow yang kita buat. Kita akan diminta untuk memasukkan value dari inputParameter1 karena parameter tersebut kita tentukan sebagai Required (step 5). Dalam contoh ini, saya memasukkan value testVal sebagai parameter.


9. Run aplikasi anda, maka Label yang kita buat harusnya akan menampilkan testVal, sesuai dengan input yang kita specify di step 8


Sekian blog kali ini. Semoga membantu.

No comments:

Post a Comment