Langsung ke konten utama

Modul Rumah Sakit Part 1 (Custom Modul Odoo 12)

Studi kasus yang akan kita jadikan project di latihan pembuatan custom modul odoo 12 adalah pembuatan modul manajemen Rumah Sakit. Tutorial ini saya buat bersumber dari video tutorial Odoo Mates yang saya olah dan sajikan dalam bentuk tulisan berbahasa Indonesia.

I. PERSIAPAN

Baik, sebelum memasuki latihan.
1. Pastikan sudah menginstall odoo 12
2. Sudah melakukan setting IDE PyCharm
3. Buka PyCharm

II. MATERI

1. Buat folder addon/modul rumahsakit

Kalau kamu sudah mengikuti tutorial nomor 2 di atas, maka akan punya struktur project dan config running odoo seperti ini:
Karena kita akan membuat modul manajemen Rumah Sakit, mari kita ubah folder latihan_odoo menjadi rumahsakit, caranya klik kanan folder latihan_odoo -> Refactor -> Rename -> ubah namanya -> Refactor.

2. Buat file model pasien.py

Caranya klik kanan folder rumahsakit -> New -> ketikkan pasien.py -> Enter.
Baris kode lengkapnya:


3. Buat file view pasien.xml

Baris kode lengkapnya:


4. Buat file __init__.py

Karena kita sudah membuatnya di awal, maka tinggal edit saja.
Baris kode lengkapnya:


5. Buat file __manifest__.py

Karena kita sudah membuatnya di awal, maka tinggal edit saja.
Baris kode lengkapnya:


Struktur project nya menjadi seperti ini:


Sekarang waktunya testing, di Run odoo nya. Buka browser: http://localhost:8069/ . Login.

Aktifkan developer mode

Klik icon Menu (pojok kiri atas) -> Settings -> Activate the developer mode.

Update List Aplikasi

Menu -> Apps -> Update Apps list

Install modul Rumah Sakit

Cari nama modul yang kita buat dengan keyword rumah.

Silahkan Install , kalau mau lihat info detail tentang modulnya klik icon titik 3 -> Module info. Informasi yang tertera di tab Information adalah info yang kita definisikan di file __manifest__.py

Sudah di install kok gak muncul di Menu ?

Hal ini dikarenakan kita belum mendefisinikan hak akses untuk model rumahsakit.pasien. Jadi untuk melihat modul Rumah Sakit yang sudah kita install tadi, caranya dengan menjadi Superuser, klik icon serangga -> Become Superuser.
Yap, sekarang sudah muncul kan.


Sekarang, silahkan explore. Jadinya seperti ini.

Tampilan Tree (list) Pasien


Tampilan Form Pasien

III. PENJELASAN

  1. File __init__.py untuk mendefinisikan file model yang dibutuhkan (.py). Sehingga baris kodenya sangat sederhana. 
  2. File __manifest__.py secara umum untuk mendefinisikan atau memberikan informasi tentang suatu modul dan mendefinisikan file view / report (.xml , .csv) yang dibutuhkan modul. 
  • depends -> refer modul lain yang dibutuhkan. Misal kita membuat form dengan field combo (select) yang list datanya mengambil dari master data modul lain. Pembahasan lebih lanjut ada di sesi selanjutnya.
  • data -> file-file yang diperlukan modul berupa file .xml (views or reports), .csv (configuration data (modules parametrization, security rules), demonstration data).
  • referensi detail: https://www.odoo.com/documentation/13.0/reference/module.html
  1. File pasien.py untuk membuat model, field dan fungsi-fungsi yang diperlukan (fungsi akan dijelaskan di pembahasan selanjutnya). Model dan field-field yang didefinisikan di file ini akan menjadi tabel di database. Detail informasi model yang kita buat dapat di lihat di Menu -> Settings -> Technical -> Models.
  1. File pasien.xml untuk membuat menu, action, view tree, view form, view kanban, dll.
Baris 5 - 45 : mengapa saya berikan catatan Custom tampilan? Karena, tanpa kita tambahkan kode tersebut (baris 5 -45). Aplikasi tetap bisa berjalan, dengan tampilan tree dan form sesuai urutan yang di definisikan di model.

Selanjutnya, mari kita lakukan latihan / percobaan di sini.



tag: tutorial odoo 12 bahasa indonesia, tutorial odoo bahasa indonesia, tutorial custom modul odoo, ansori.web.id

Komentar

Postingan populer dari blog ini

Download EXTJS 7.0.0 GPL

 Silahkan kunjungi laman berikut: https://www.sencha.com/legal/gpl/ Silahkan isi form yang berada di sisi kanan,  mulai dari nama, email sampai negara. Select Sencha Product : pastikan EXT JS Lalu klik tombol GET SDK . Cek email masuk dari Sencha. Di email tersebut ada link Download. Klik aja.  Selesai! Langkah-langkah di atas adalah cara yang disarankan untuk mengunduh resource sdk extjs. 😊 Berikut direct link download, jika sudah tidak bisa mengunduh EXTJS versi 7.0.0, karena secara default link downloadnya auto pointing ke versi extjs yang terbaru. ext-7.0.0-gpl.zip Versi Lama lainnya: ext-6.2.0-gpl.zip ext-4.2.0-gpl.zip Note: Link download extjs 7.0.0 Link download extjs 6.2.0 Link download extjs 4.2.0

Cara Membuat Virtual Environment Python di Mac OS (Catalina) dengan Pyenv

 Baru-baru ini saya mengalami kendala development karena coba-coba upgrade versi python di Mac. Setelah melakukan troubleshooting beberapa jam, akhirnya saya menemukan titik terang perihal development aplikasi yang aman dengan menggunakan versi python tertentu yaitu menggunakan pyenv . Sebagai contoh untuk develop module odoo 12 direkomendasikan menggunakan python 3.6, untuk odoo 14 menggunakan python 3.8. Di satu komputer / mesin / sistem operasi Mac Oc dan Linux biasanya hanya akan terinstall satu versi python (misal di mac: python 2.7) atau dua versi python (python 2.7 dan python 3.6). Untuk mengeceknya dengan melakukan perintah python -V dan/atau  python3 -V  di Terminal. OK, langsung saja kita install pyenv  -nya. Pastikan sudah terinstall brew (Homebrew)  dan Xcode Command Line Tools . brew install readline xz brew install pyenv pyenv-virtualenv Selanjutnya, install beberapa versi python yang akan digunakan. Contoh saya akan menginstall python 3.6 dan 3....

Perkenalan EXTJS 7.0.0

Buat kita para developer, calon developer atau yang sedang belajar pemrograman web perlu tau nih. Ada framework javascript yang menurut saya bagus dan mudah dalam pengembangannya. Saya berkenalan dengan framework ini tahun 2016 di PT. Gosantha Global. Kala itu sedang beralih profesi dari IT Support ke Web Programmer / Developer. Bisa dibayangkan ya,.. Dari yang jarang menulis baris program alias ngoding jadi bakal berjibaku dengan kode-kode. Yap! Seperti yang tertulis di judul, namanya framework EXTJS. Framework extjs cocok untuk pembuatan aplikasi satu halaman (Single Page Application disingkat SPA). Sudah tau kan apa itu SPA? Secara sederhana, ketika kita mengakses/menggunakan aplikasi ini di browser, lalu kita klik suatu menu/tombol, halaman web tidak berpindah (tidak refresh), hanya tampilannya saja yang berubah. Contohnya seperti gmail dan link berikut: Contoh Admin Dashboard menggunakan EXTJS 7.0.0 https://examples.sencha.com/extjs/7.0.0/examples/admin-dashboard/ Kitchen Sink : K...