Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Membangun   Aplikasi Bisnis           mengunakanOpenbiz Frameworks                    dan     Cubi Platform               ...
Daftar IsiDAFTAR ISI.........................................................................................................
Bab 1: Mengenal Openbiz Framework dan Cubi Platform     Openbiz FrameworksOpenbiz merupakan framework aplikasi php yang me...
Bab 2: Memulai Cubi dan Openbiz      Menunduh Cubi dan OpenbizSilahkan unduh Cubi dan Openbiz di alamat berikut. Atau sali...
/nayaka    (isi direktori cubi ditaruh di sini )            index.php            /bin                 app_init.php        ...
Merubah permisi (permision) file dan direkori dalam Cubi.Sebelum Anda melakukan proses instalasi Cubi, Anda harus merubah ...
•    Direktori /log dan isinya, digunakan untuk mencatat log saat aplikasi berjalan.   •    Direktori /session dan isinya,...
3. Pada halaman 1. System Check tekanlah tombol [ Next > ], sehingga tampil halaman 2.   Database Configuration.4. Pada ha...
6. Pada halaman 3. Application Configuration, muat atau aktifkan module dengan mengklik   tombol [Load Modules]. Anda dapa...
seperti saat mau menginstal aplikasi pada sub-bab sebelumnya, yaitu   http://localhost/cubi/index.php.2. Jika Anda belum p...
11
Bab 3: Membuat Module Pertama AndaDalam bab ini kita akan membuat module mengunakan code generator, kemudian mempelajariba...
•   [metadata template set] adalah template yang digunakan untuk                  membuat file metadata.Contoh, kita jalan...
kelompok 1 diperinci menjadi Create (menambah data baru), Update (mengedit) dan Delete(menghapus).Pilihn 3. No access cont...
/hrm/form/PegawaiCopyForm.xml is generated.       ---------------------------------------       Do you want to generate vi...
Di dalam direktori modules terdapat direktori hrm, ini adalah direktori untuk modul HRM kita.Di dalam direktori hrm terdap...
4. Pada halaman Module Management, klik tombol Load Modules       Mengakses Module Secara LangsungDi dalam direktori /hrm/...
Memerbaiki File Hasil Code GeneratorSaat ini code generator masih memiliki beberapa kekurangan, sehingga kita perlu memper...
Memperbaiki MenuGanti kode berikut :<MenuItem Name="Hrm" Title="Hrm" Description="Hrm Description" URL="{@home:url}/hrm/da...
Menata Hak AksesPertama kali module dimuat, hak akses belum tertata, sehingga kita nanti tidak bisa mengaksesModule kita. ...
5. Selanjutnya tekan tombol Save.Saat ini Anda sudah bisa mengakses module Hrm, tetapi Anda harus Logout, kemudian Loginla...
Bab 4. Memahami Cara Kerja Module       File mod.xmlSetiap module harus memiliki file mod.xml dibawah direktori module. Fi...
Bab 5: Arsitektur Openbiz dan MetaObject OpenbizDasar-dasar DataObject, Form dan ViewArsitektur OpenbizsdsdKonsep MetaObje...
Upcoming SlideShare
Loading in …5
×

Membangun Aplikasi Bisnis dengan Openbiz Framework dan Cubi Platform

2,207 views

Published on

Informasi terbaru tentang Openbiz dan Cubi silahkan kunjungi:
http://www.openbiz.me (internasional)
http://www.openbiz.web.id (indonesia)

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Membangun Aplikasi Bisnis dengan Openbiz Framework dan Cubi Platform

  1. 1. Membangun Aplikasi Bisnis mengunakanOpenbiz Frameworks dan Cubi Platform Oleh : Agus Suhartono OpenBiz Contributor, on coding standard and code quality enhancement Kioss Project http://www.kioss.co.id 1
  2. 2. Daftar IsiDAFTAR ISI...................................................................................................................................................................2BAB 1: MENGENAL OPENBIZ FRAMEWORK DAN CUBI PLATFORM........................................................3 OPENBIZ FRAMEWORKS....................................................................................................................................................3 CUBI PLATFORM..............................................................................................................................................................3BAB 2: MEMULAI CUBI DAN OPENBIZ................................................................................................................4 MENUNDUH CUBI DAN OPENBIZ........................................................................................................................................4 STRUKTUR DIREKTORI.......................................................................................................................................................4 MERUBAH PERMISI (PERMISION) FILE DAN DIREKORI DALAM CUBI...........................................................................................6 MELAKUKAN INSTALASI CUBI...........................................................................................................................................7 MENJALAN APLIKASI CUBI...............................................................................................................................................9BAB 3: MEMBUAT MODULE PERTAMA ANDA.................................................................................................12 MEMBUAT TABEL DATABASE...........................................................................................................................................12 MEMBUAT MODULE + METADATA MENGGUNAKAN CODE GENERATOR ................................................................................12 MENGINSTALL MODULE DALAM CUBI...............................................................................................................................16 Mengakses Module Secara Langsung..................................................................................................................17 MEMERBAIKI FILE HASIL CODE GENERATOR.....................................................................................................................18 Memperbaiki ACL................................................................................................................................................18 Memperbaiki Menu..............................................................................................................................................19 Memperbaiki View................................................................................................................................................19 Memperbaiki Form..............................................................................................................................................19 MEMUAT ULANG MODULE.............................................................................................................................................19 MENATA HAK AKSES.....................................................................................................................................................20BAB 4. MEMAHAMI CARA KERJA MODULE....................................................................................................22 FILE MOD.XML..............................................................................................................................................................22 HUBUNGAN URL DAN VIEW..........................................................................................................................................22 2
  3. 3. Bab 1: Mengenal Openbiz Framework dan Cubi Platform Openbiz FrameworksOpenbiz merupakan framework aplikasi php yang menyediakan object-oriented metadata-drivenplatform bagi pengembang aplikasi untuk membangun aplikasi web dengan sedikit mungkinkode. Openbiz framework dikembangkan sejak tahun 2003 dan terus dikembangkan lebih lanjutoleh komunitas pengembang dan umpan balik pengguna. Openbiz digunakan dalam aplikasinyata dalam dunia ini.Openbiz framework fokus pada bagaimana membatu para pengembang untukmengimplementasikan logika aplikasi lebih efisien.. Untuk melakukannya, Openbizmenggunakan konsep “metadata-driven”. Dengan menggunakan metadata Openbiz berbentukxml, pengembang dapat ● Mendeklarasikan pemetaan antara table database dengan data object (ORM) ● Mendeklaraskan bagaimana mempresentasikan data ke user interface ● Mendeklarasikan perilaku object serta hubungan/relasi antar objek ● Mendeskripsikan operasi CRUD, data query, data validation, template, access control, navigation flow, cache, multiple database … ● Mendeklarasikan lokasi dari custom class atau servicePada umumnya aplikasi Openbiz memiliki 80% metadata dan 20% kode program. Cubi PlatformCubi platform pada awalnya berupa contoh aplikasi yang berjalan di atas Openbiz. Kemudian diaberkembang menjadi platform aplikasi yang berisi komponen umum yang dipakai oleh aplikasiweb atau aplikasi bisnis.Cubi juga menyediakan sekumpulan tools untuk mengelola metadata, mengelola module,membuat paketbahasa, theme dan membangun aplikasi.Cubi tidak hanya berupa platform aplikasi siap pakai, tetapi juga menyediakan contoh terbaikuntuk mempelajadi openbiz. 3
  4. 4. Bab 2: Memulai Cubi dan Openbiz Menunduh Cubi dan OpenbizSilahkan unduh Cubi dan Openbiz di alamat berikut. Atau salin dari CD yang tersedia. Kemudianekstraklah file yang terkompres.Lokasi mengunduh Openbiz dan Cubi: http://www.phpopenbiz.org Struktur direktoriSecara default, direktori Cubi dan Openbiz diatur untuk diletakkan secara berdampingan./cubi/openbizDari aturan ini, kita bisa memiliki dua alternatif susunan direktori aplikasi kita.Cara 1: Cubi dan Openbiz diletakkan dalam direktori aplikasi kita, keudian direktori cubi digantimenjadi app. File index.php di root aplikasi mem-forward request ke app/index.php .Contoh:nayaka/ index.php (forward ke app/index.php) /app (isi direktori cubi ditaruh di sini ) index.php /bin app_init.php controller.php ... ... /themes /openbiz (isi direktori openbiz ditaruh di sini) bin/ messages/ metadata/ others/Cara 2: Direktori cubi dijadikan direktori aplikasi, kemudian direktori openbiz berdampingan(diluar) dengan direktori aplikasi (cubi). Cara ini memungkinkan beberapa aplikasi menggunakansatu librari openbiz bersama-sama. 4
  5. 5. /nayaka (isi direktori cubi ditaruh di sini ) index.php /bin app_init.php controller.php ... ... /themes /sigap (isi direktori cubi ditaruh di sini ) index.php /bin app_init.php controller.php ... ... /themes /openbiz (isi direktori openbiz ditaruh di sini) bin/ messages/ metadata/ others/Letak direktori openbiz terhadap cubi bisa diubah dengan mengedit file bin/app_init.php di dalamcubi. Yaitu pada bagian:define(OPENBIZ_HOME, dirname(dirname(dirname(__FILE__)))."/openbiz");Cara 3: Direktori cubi dijadikan sebagai direktori aplikasi, dan direktori openbiz diletakkan didalam direktori aplikasi tersebut. /nayaka (isi direktori cubi ditaruh di sini ) index.php /bin app_init.php controller.php ... ... /themes /openbiz (isi direktori openbiz ditaruh di sini) /bin /messagesCara ini mengharuskan Anda merubah lokasi OPENBIZ_HOME di dalam cubi/bin/app_init.phpsebagai berikut:define(OPENBIZ_HOME, dirname(dirname(__FILE__))."/openbiz"); 5
  6. 6. Merubah permisi (permision) file dan direkori dalam Cubi.Sebelum Anda melakukan proses instalasi Cubi, Anda harus merubah permisi beberapa file dandirektori milik Cubi supaya web-server memiliki hak untuk menulisi file atau direktori tersebut.Pada Linux anda perlu melakukan perintah CHMOD 777 untuk direktori dan CHMOD 666 padafile.Perhatikan susunan direktori Cubi berikut, kemudian perhatikan pada file dan direktori yangtercetak tebal./cubi (writable by webserver (chmod cubi 777) saat instalasi) index.php Config.xml (writable by web-server (chmod 666 Config.xml) saatinstalasi) install.lock /backup /bin /files (writabe by web-server chmod 777 files -R) /images /install /js /log (writabe by web-server chmod 777 log -R) /modules /pages /resources /server /session (writabe by web-server chmod 777 session -R) /themes /theme-name theme.xml /css /images /js /template /cfg /cpl (writabe by web-server chmod 777 cpl -R) system_view.tpl.html system_right_listform.tpl.html ... /upgradeBerikut file dan direktori yang perlu diubah permisinya supaya bisa ditulisi oleh web-server. • Direktori root Cubi (/cubi), direktori ini harus bisa ditulisi pada saat instalasi, karena pada waktu itu skrip penginstal akan membuat file install.lock dibawah direktori cubi ini. • File Config.xml, file ini harus bisa ditulisi pada saat instalasi, karena pada waktu itu skrip penginstal akan menyimpan informasi instalasi ke dalam file Config.xml ini. • Direktori /files serta isinya, direktori ini akan digunakan untuk menyimpan data tembolok (cache) dan file-file yang diunggah (upload). 6
  7. 7. • Direktori /log dan isinya, digunakan untuk mencatat log saat aplikasi berjalan. • Direktori /session dan isinya, digunakan untuk menyimpan data sesi aplikasi (session) • Direktori /themes/nama-theme/template/cpl dan isinya, digunakan oleh Smarty untuk menyimpan template yang sudah dikompilasi. Secara default, theme yang aktif adalah default, maka direktori cpl-nya berada di /themes/default/template/cpl. Melakukan Instalasi CubiSeletah susunan direktori dan permisi beberapa file dan direktori sudah disesuaikan, maka prosesinstalasi sudah siap dilakukan. Berikut tatacara melakukan instalasi Cubi: 1. Akseslah file index.php di bawah cubi dari web-browser, misal jika kita mengunakan susunan direktori default, dan direktori cubi tidak diubah namanya dimana direktori cubi ditaruh dibawah web-root, maka kita bisa mengakses alamat http://localhost/cubi/index.php. Jika aplikasi belum pernah diinstal, maka secara otomatis akan memanggil skrip penginstall yang ada di direktori cubi/install seperti terlihat pada gambar berikut: 2. Kliklah tombol [ Setup Now! ] Sehingga akan tampil halaman 1. System Check seperti gambar berikut: 7
  8. 8. 3. Pada halaman 1. System Check tekanlah tombol [ Next > ], sehingga tampil halaman 2. Database Configuration.4. Pada halaman 2. Database Configuration isilah data-data sebagai berikut: • Pilih jenis database pada field Database Type. • Isi Database Host Name dengan nama host dimana server database berada, jika server database sama dengan server web, maka diisi localhost. • Isi Database Port sesuai dengan port yang digunakan oleh server database. Untuk MySql defaultnya adalah 3306. • Isi Database Name dengan nama database yang akan dibuat atau yang sudah ada. • Isi Database Username dan Database Password dengan username dan password database. • Jika database yang ada pada field Database Name sudah ada di server database, maka pada field Create Database tidak perlu dicentang, artinya skrip penginstal tidak perlu membuat database lagi. Tetapi jika database belum ada, Anda harus mencentangnya, supaya skrip penginstal melakukan pembuatan database secara otomatis. Pastikan username yang Anda isikan di field Database Username memiliki hak akses membuat database baru.5. Selanjutnya, bila Anda sudah selesai mengisi data yang diperlukan, kliklah tombol [ Next > ]. 8
  9. 9. 6. Pada halaman 3. Application Configuration, muat atau aktifkan module dengan mengklik tombol [Load Modules]. Anda dapat melihat module apa saja yang sudah berhasil diinstal dengan mengklik tombol [Show Results].7. Tekan tombol [Next >] untuk melanjutkan, sehingga tampil halaman berikut:8. Proses instalasi sudah selesai, selanjutnya Anda dapat mengakses aplikasi dengan mengklik tombol [Launch Openbiz Cubi] . Menjalan Aplikasi Cubi1. Sekarang Anda sudah bisa mengakses aplikasi Anda, yaitu dengan mengakses URL 9
  10. 10. seperti saat mau menginstal aplikasi pada sub-bab sebelumnya, yaitu http://localhost/cubi/index.php.2. Jika Anda belum pernah login sebelumnya, maka halaman login (index.php/user/login) akan ditampilkan.3. Isi Username dan Password Anda, kemudian klik tombol [Login] . Catatan: Username dan Password default adalah admin dan admin.4. Maka Anda masuk halaman seperti berikut: 1
  11. 11. 11
  12. 12. Bab 3: Membuat Module Pertama AndaDalam bab ini kita akan membuat module mengunakan code generator, kemudian mempelajaribagaimana sebuah module dalam Cubi bekerja. Membuat Tabel DatabaseKita akan membuat aplikasi HRM, pertama kita membuat tabel pegawai terlebih dahulu. Buatlahtable database dengan struktur sebagai berikut.CREATE TABLE `hrm_pegawai` ( `hrm_pegawai_id` int(11) NOT NULL AUTO_INCREMENT, `nip` varchar(20) NOT NULL, `nama` varchar(100) NOT NULL, `tanggal_lahir` date DEFAULT NULL, `tempat_lahir` varchar(50) DEFAULT NULL, `alamat` varchar(200) DEFAULT NULL, `kabupaten` varchar(50) DEFAULT NULL, `provinsi` varchar(50) DEFAULT NULL, `kode_pos` varchar(10) DEFAULT NULL, PRIMARY KEY (`hrm_pegawai_id`)) ENGINE=MyISAM ; Membuat Module + Metadata Menggunakan Code GeneratorCubi menyediakan tools berupa code generator yang digunakan untuk membantu pengembangmembuat aplikasi. Tools tersebut dapat digunaan untuk membuat module, theme, dll. Toolstersebut berada di direktori cubi/bin/tools .Catatan:Code generator dalam cubi dijalankan dalam shell (command line interface – CLI). Sehingga phpharus diatur untuk bisa dijalankan sebagai perintah shell (CLI). Juga lokasi file eksekusi phpharus dimasukkan dalam PATH linkungan sistim operasi.Skrip yang digunakan untuk membuat metadata + module adalah cubi/bin/tools/gen_meta.phpCara memakainya sebagai berikut: 1. Dalam command line, masuklah ke direktori path-cubi/bin/tools 2. Jalankan perintah sebagai berikut: php gen_meta.php dbname table [modulename] [metadata template set] • dbname adalah nama database alias yang terdapat dalam Config.xml • table adalah nama table dalam database • [modulename] adalah nama module dimana file hasil code generator diletakkan, defaultnya disesuakan dengan nama table database 1
  13. 13. • [metadata template set] adalah template yang digunakan untuk membuat file metadata.Contoh, kita jalankan perintah berikut: php gen_meta.php Default hrm_pegawaimaka akan ada pilihan format module dan nama : --------------------------------------- Please select metadata naming: 1. module path: /hrm_pegawai, object name: HrmPegawai, module name: hrm_pegawai 2. module path: /hrm_pegawai, object name: Pegawai, module name: hrm_pegawai S. specify a custom module path, object name and module name Please select: [1/2/s] (1) :Perhatikan pilihan 1 dan 2, module path dan module name adalah nama table yang diberikan.Yang berbeda ada pada object name, di mana pilihan 1 menggunakan gabungan kata yang adapada nama table, hrm_pegawai menjadi HrmPegawai. Pilihan ke 2 menggunakan suku kataterakhir dari nama table, hrm_pegawai menjadi Pegawai.Sedangkan pilihan S, kita diberi keleluasan untuk memberi nama module, path dan nama objek.Coba lagi dengan perintah berikut : php gen_meta.php Default hrm_pegawai hrmmaka akan ada pilihan format module dan nama sebagai berikut : --------------------------------------- Please select metadata naming: 1. module path: /hrm, object name: HrmPegawai, module name: hrm 2. module path: /hrm, object name: Pegawai, module name: hrm S. specify a custom module path, object name and module name Please select: [1/2/s] (1) :Pilihlah nomor 2, sehingga tampil berikut: Access control options: 1. Access and Manage (default) 2. Access, Create, Update and Delete 3. No access control Please select access control type [1/2/3] (1) :Pilihan 1. Access and Manage (default) , akan memberi 2 kelompok hak akses, yaitu Accessyang hanya mempunyai hak baca saja, dan Manage yang memiliki hak untuk mengelola sepertimenambah, mengubah dan menghapus.Pilihan 2. Access, Create, Update and Delete, memiliki 4 kelompok hak akses. Manage pada 1
  14. 14. kelompok 1 diperinci menjadi Create (menambah data baru), Update (mengedit) dan Delete(menghapus).Pilihn 3. No access control , berarti tidak ada hak akses sehingga semua user dapat mengakses.Setelah Anda memilih salah satu dari jenis Acces control, maka akan ada konfirmasi berikut: Target dir: /home/agus/public_html/openbiz3/app/modules/hrm Medata file to create: do/PegawaiDO.xml form/Pegawai...Form.xml view/PegawaiView.xml Do you want to continue? [y/n] (y) :Pilih y untuk melanjutkan dan pilih n untuk membatalkan.Jika Anda memilih y, maka akan tampil pesan berikut: Do you want to generate data Object? [y/n] (y) :Jika Anda memilih y, maka code generator akan membikin metadata untuk Data Object. BaikAnda memilih y maupun n, proses akan dilanjutkan. Bedanya bila Anda memilih y, maka akanada pesan bahwa Data Object sudah dibuat, kemudian dilanjutkan konfirmasi pembuatan FormObject: Do you want to generate data Object? [y/n] (y) : y Generate Data Object metadata file ... Start generate dataobject PegawaiDO. Create directory /home/agus/public_html/openbiz3/app/modules/hrm/do /hrm/do/PegawaiDO.xml is generated. --------------------------------------- Do you want to generate form Object? [y/n] (y) :Seperti pada Data Object, jika Anda memilih y, maka form object akan dibuat dan pesan bahwaform object sudah dibuat akan ditampilkan. Generate Form Object metadata files ... Start generate form object PegawaiListForm. Create directory /home/agus/public_html/openbiz3/app/modules/hrm/form /hrm/form/PegawaiListForm.xml is generated. Start generate form object PegawaiNewForm. /hrm/form/PegawaiNewForm.xml is generated. Start generate form object PegawaiEditForm. /hrm/form/PegawaiEditForm.xml is generated. Start generate form object PegawaiDetailForm. /hrm/form/PegawaiDetailForm.xml is generated. Start generate form object PegawaiCopyForm. 1
  15. 15. /hrm/form/PegawaiCopyForm.xml is generated. --------------------------------------- Do you want to generate view Object? [y/n] (y) :Jika Anda memilih y, maka view object akan dibuat dan pesan bahwa view object sudah dibuatakan ditampilkan. Generate view Object metadata files ... Start generate form object PegawaiListView. Create directory /home/agus/public_html/openbiz3/app/modules/hrm/view /hrm/view/PegawaiListView.xml is generated. --------------------------------------- Do you want to generate module dashboard files? [y/n] (y) :Berikutnya adalah konfirasi apakah Anda akan membuat module dashboard ataukah tidak.Module dashboard adalah halaman berisi menu-menu yang terdapat dalam module. Bentuknyaseperti icon dalam control panel.Silahkan pilih y untuk membuat module dashboard. Generate Module Dashboard ... Start generate DashboardForm.xml . Create directory /home/agus/public_html/openbiz3/app/modules/hrm/widget /hrm/widget/DashboardForm.xml is generated. Start generate DashboardView.xml . /hrm/view/DashboardView.xml is generated. Start generate LeftMenu.xml . /hrm/widget/LeftMenu.xml is generated. Start modify view.tpl to enable module left menu supports . /hrm/template/view.tpl is modified. --------------------------------------- Do you want to create mod.xml? [y/n] (y) :Pilih y untuk membuat file metadata mod.xml. File mod.xml merupakan file informasi tentangmodule yang bersangkutan. Generate mod.xml ... Start generate mod.xml. /hrm/mod.xml is generated.Proses selesai! Mari kita lihat apa yang terjadi. Berikut ini file-file yang dihasilkan oleh codegenerator Cubi: 1
  16. 16. Di dalam direktori modules terdapat direktori hrm, ini adalah direktori untuk modul HRM kita.Di dalam direktori hrm terdapat 5 direktori, yaitu do, form, template, view dan widget, sertasatu file mod.xml. • Direktori do digunakan untuk menaruh file data object, yaitu PegawaiDO.xml. • Direktori form digunakan untuk menaruh file form object, yaitu: PegawaiCopyForm.xml, PegawaiDetailForm.xml, PegawaiEditForm.xml, PegawaiListForm.xml dan PegawaiNewForm.xml. • Direktori view digunakan untuk menaruh view object, yaitu DashboardView.xml dan PegawaiList.xml • Direktori widget digunakan untuk menaruh file widget, yaitu DashboardForm.xml dan LeftMenu.xml Menginstall Module dalam CubiBerikut cara menginstall module dalam Cubi 1. Loginlah terlebih dahulu 2. Kliklah menu Administrator di sebelah atas 3. Pilih menu di sebelah kiri Module → Module Management 1
  17. 17. 4. Pada halaman Module Management, klik tombol Load Modules Mengakses Module Secara LangsungDi dalam direktori /hrm/view ada dua file, yaitu DashboardView.xml dan PegawaiList.xml,artinya kita dapat mengakses melalui http://hostname/cubi/index.php/hrm/dashboard danhttp://hostname/cubi/index.php/hrm/pegawai_list.Jika Anda melihat tampilan di atas berarti hak akses belum kita tetapkan terhadap Role yang kitagunakan untuk login. 1
  18. 18. Memerbaiki File Hasil Code GeneratorSaat ini code generator masih memiliki beberapa kekurangan, sehingga kita perlu memperbaikikekurangan tersebut, perhatikan file mod.xml yang dihasilkan:<?xml version="1.0" standalone="no"?><Module Name="hrm" Description="hrm module" Version="0.1" OpenbizVersion="2.4"> <ACL> <Resource Name="hrm"> <Action Name="Access" Description="Access Hrm Module Dashboard"/> </Resource> <Resource Name="hrm"> <Action Name="Access" Description="Access Hrm"/> <Action Name="Manage" Description="Manage Hrm"/> </Resource> </ACL> <Menu> <MenuItem Name="Hrm" Title="Hrm" Description="Hrm Description"URL="{@home:url}/hrm/dashboard" Parent="" Order="10"> <MenuItem Name="Hrm" Title="Pegawai" Description="Hrm description" URL=""Parent="" Order="10"> <MenuItem Name="Hrm.List" Title="Pegawai Manage" Description=""URL="{@home:url}/hrm/hrm_list" Order="10"/> </MenuItem> </MenuItem> </Menu> <Dependency> <Module Name="system"/> </Dependency></Module>Ada dua kelompok, yaitu ACL dan Menu. ACL untuk membuat hak akses, dan Menu untukmembuat menu. Keduanya akan diekseskusi saat module dimuat (Load Modules) Memperbaiki ACLDan kode berikut : <Resource Name="hrm"> <Action Name="Access" Description="Access Hrm"/> <Action Name="Manage" Description="Manage Hrm"/> </Resource>menjadi : <Resource Name="hrm.pegawai"> <Action Name="Access" Description="Access Hrm"/> <Action Name="Manage" Description="Manage Hrm"/> </Resource> 1
  19. 19. Memperbaiki MenuGanti kode berikut :<MenuItem Name="Hrm" Title="Hrm" Description="Hrm Description" URL="{@home:url}/hrm/dashboard"Parent="" Order="10"> <MenuItem Name="Hrm" Title="Pegawai" Description="Hrm description" URL="" Parent=""Order="10"> <MenuItem Name="Hrm.List" Title="Pegawai Manage" Description=""URL="{@home:url}/hrm/hrm_list" Order="10"/> </MenuItem></MenuItem>menjadi :<MenuItem Name="Hrm" Title="Hrm" Description="Hrm Description" URL="{@home:url}/hrm/dashboard"Parent="" Order="10"> <MenuItem Name="Hrm.Pegawai" Title="Pegawai" Description="Hrm description" URL=""Parent="" Order="10"> <MenuItem Name="Hrm.Pegawai.List" Title="Pegawai Manage" Description=""URL="{@home:url}/hrm/pegawai_list" Order="10"/> </MenuItem></MenuItem> Memperbaiki ViewBuka file PegawaiListView.xml di bawah direktori /hrm/view. Ubah kode berikut :<EasyView Name="PegawaiListView" Description="hrm" Class="EasyView" Tab=""TemplateEngine="Smarty" TemplateFile="view.tpl" Access="hrm.Access">menjadi :<EasyView Name="PegawaiListView" Description="hrm" Class="EasyView" Tab=""TemplateEngine="Smarty" TemplateFile="view.tpl" Access="hrm.pegawai.Access"> Memperbaiki FormUbah hak akses pada file Pegawai....Form.xml, dari Access="hrm.Access" menjadiAccess="hrm.pegawai.Access". Memuat Ulang Module 1. Dari halaman Administrator, Pilih menu di sebelah kiri Module → Module Management 2. Cari module hrm, pilih, kemudian klik Tombol Delete 3. klik tombol Load ModulesMaka module sekarang sudah dimuat ulang, hak akses dan menu sudah diperbaiki. Jika Andamerefresh browser, maka akan bertambah satu menu di bagian Atas, yaitu Hrm. 1
  20. 20. Menata Hak AksesPertama kali module dimuat, hak akses belum tertata, sehingga kita nanti tidak bisa mengaksesModule kita. 1. Dari halaman Administrator, klik menu Role → Role Management 2. Klik pada Administrator pada daftar Role yang tersedia 3. Cari Hrm pada daftar yang tersedia 4. Tetapkan Acces Level menjadi Allow 2
  21. 21. 5. Selanjutnya tekan tombol Save.Saat ini Anda sudah bisa mengakses module Hrm, tetapi Anda harus Logout, kemudian Loginlagi. 2
  22. 22. Bab 4. Memahami Cara Kerja Module File mod.xmlSetiap module harus memiliki file mod.xml dibawah direktori module. File ini digunakan saatmodule demuat (load module), dan saat terjadi proses update module.Informasi yang ada dalam sebuah module adalah: • Nama, menunjukkan nama module • Description, menjelaskan tentang module yang bersangkutan • Version, menunjukkan versi module, informasi ini saat bermanfaat saat proses update module. • OpenbizVersion, menunjukkan dengan versi berapa dari Openbiz module bekerja. • ACL, tentang hak akses dalam module • Menu, definisi menu yang diunakan dalam module.Informasi-informasi tersebut akan dimuat kedalam sistem saat module diinstal (dimuat). Hubungan URL dan ViewCubi mempunyai konvensi yang memetakan URL dengan View yang dipanggilnya.Http://hostname/cubi/index.php/namamodule/namaviewMaka sistim akan memanggil view dalam direkori namamodule/view, di nama view yangdipangail adalah NamaveiwView.xml • Setiap nama view diakhiri dengan kata View • Dalam pemanggilan di URL, kata View tidak perlu disertakan • Jika nama view lebih dari satu kata, maka setiap kata diawali huruh BESAR • Pemanggilan di URL setiap kata dipisah dengan karakter garis bawah “_” .Contoh :Nama View Nama File View dalam URLPegawaiListView PegawaiListView.xml pegawai_listPegawaiIntiView PegawaiIntiView.xml pegawai_inti 2
  23. 23. Bab 5: Arsitektur Openbiz dan MetaObject OpenbizDasar-dasar DataObject, Form dan ViewArsitektur OpenbizsdsdKonsep MetaObject OpenbizBab 6: 2

×