Langsung ke konten utama

Modul Rumah Sakit Part 2 (Custom Modul Odoo 12)

Melanjutkan dari tutorial sebelumnya, Modul Rumah Sakit Part 1. Kita sudah membuat modul baru dengan 1 model (rumahsakit.pasien) dan 2 view (tree & form).  Akses Indeks Tutorial ini untuk mempermudah dalam navigasi / mengikuti tutorial secara keseluruhan.

1. Memberikan hak akses model

Setiap model yang dibuat harus dibuatkan hak aksesnya. Jika belum, model yang sudah memiliki view tree, form, dll tidak dapat diakses oleh user biasa, harus mengaktifkan Superuser untuk dapat mengaksesnya. Caranya bagaimana?
  1. Buat folder security
  2. Buat file ir.model.access.csv
  3. Baris kodenya:
    id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
    access_rumahsakit_pasien,access.rumahsakit.pasien,model_rumahsakit_pasien,,1,1,1,1
    
  4. Edit file __manifest__.py , load file ir.model.access.csv di data 
  5. Stop - Run atau ReRun odoo, lalu update list aplikasinya, upgrade. Seperti langkah 3 - 7 di sini.
Setelah set hak akses model, menu Rumah Sakit muncul (tanpa akses Superuser)

2. _rec_name di model

Belum mendefinisikan _rec_name
_rec_name adalah field name (secara default) di model. Bisa kita cek di model yang kita buat di file pasien.py. Kita tidak membuat field name, sehingga perlu kita definisikan. Jika kita membuat field name, tidak perlu untuk mendefinisikan _rec_name (akan kita coba di model yang akan kita buat selanjutnya). Fungsi dari _rec_name adalah untuk judul breadcrumb dan display data di field Many2one.
  1. Tambahkan baris kode _rec_name = 'name' di model lalu simpan. 
  2. Stop - Run atau ReRun odoo, lalu update list aplikasinya, upgrade. Seperti langkah 3 - 7 di sini.

3. Membuat sequence (penomoran record data)

  1. tambahkan import api (file pasien.py)
  2. from odoo import models, fields, api
  3. buat field baru 
  4. name_seq = fields.Char(string='Reference', required=True, copy=False, readonly=True, index=True, default=lambda self: ('New'))
  5. buat fungsi membuat sequence
  6. @api.model
        def create(self, vals):
            if vals.get('name_seq', ('New')) == ('New'):
                vals['name_seq'] = self.env['ir.sequence'].next_by_code('rumahsakit.pasien.sequence') or ('New')
            return super(RumahsakitPasien, self).create(vals)
    Baris lengkap kodenya,
  7. Buat folder data dan file sequence.xml di dalam folder tersebut
  8. Baris lengkap kodenya,
  9. Tambahkan 'data/sequence.xml' di file __manifest__.py  
  10. Tambahkan field name_seq di view form-nya (file pasien.xml)
  11. Tambahkan field name_seq di view tree-nya juga 
  12. Stop - Run atau ReRun odoo, lalu update list aplikasinya, upgrade. Seperti langkah 3 - 7 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

Instalasi Odoo 12 di Mac OS (X)

Persiapan Pastikan sudah terinstall python3 (sangat direkomendasikan Python versi 3.6) dan pip3. Tutor lengkap instalasi baca di sini . Pastikan sudah terinstall Xcode Command Line Tools. Jika belum, buka Terminal lalu eksekusi perintah ini: xcode-select --install Download & Install postgresql (minimal versi 9.6).  Download odoo 12 , isi form, lalu gulir ke bawah ke bagian Odoo 12, Download Odoo Community yang Source , atau bisa klik direct link  ini. Instalasi Odoo Ekstrak odoo_12.0.latest.tar.gz Buka Terminal, buat virtual environment (venv) odoo12 : cd ~ mkdir venv cd venv python3 -m venv odoo12 Aktifkan venv odoo12 dan buat folder src cd odoo12 source bin/activate mkdir src Copy semua folder dan file yang sudah di esktrak di langkah 1 ke dalam folder src ( /home/ namausernamekamu /venv/odoo12/ src ). Install requirement odoo, jika ada error yang muncul silahkan di trace error-nya sampai semuanya berhasil terinstall. pip3 install -r require

Membuat Aplikasi Login dengan EXTJS 7.0.0 (Part 1)

Sebelum memulai pembuatan aplikasi login dengan framework Extjs 7.0.0 pastikan sudah menyelesaikan tugas-tugas berikut ini: Download SDK EXTJS 7.0.0 Install Sencha Cmd Sudah saya buatkan tutorial instalasi masing-masing sistem operasi (OS), tinggal ikuti saja. Jika masih menemukan kesulitan, silahkan bertanya di kolom komentar. PERSIAPAN Buat folder baru dengan nama: ProjectExtJS , lokasi bebas. Sebagai contoh saya membuat di /Users/gosantha/ProjectExtJS . Untuk pengguna windows, misal di drive D:\ProjectExtJS Buat folder baru lagi di dalamnya dengan nama: sdk_extjs   Pindahkan file  ext-7.0.0-gpl.zip  (SDK EXTJS 7.0.0) yang sudah di download ke folder sdk_extjs Ekstrak file  ext-7.0.0-gpl.zip    Kurang lebih seperti ini struktur folder projectnya. BUAT APLIKASI Buka Terminal (Linux/Mac) atau Command Prompt (Windows) Masuk ke folder  ProjectExtJS  dengan perintah cd ke_path_ProjectExtJS contoh punya saya: cd /Users/gosantha/ProjectExtJS contoh di windows, seperti di langkah persiapa