Skip to content

ffrirr/PT-Subang-Autocomp-Indonesia-Training

Repository files navigation

Panduan Instalasi Odoo 16 di Windows

Link Penting

  1. Instal Python 3.8.10

    • Install Python 3.8.10 dari Microsoft Store.
    • Buka Command Prompt (CMD) dan ketikkan perintah berikut untuk memastikan Python telah terdaftar pada sistem:
      python --version
      
  2. Instal PostgreSQL versi 15

    • Download dan install PostgreSQL versi 15.
    • Saat instalasi, pilih password yang mudah diingat.
    • Setelah PostgreSQL terinstal, tambahkan folder C:\Program Files\PostgreSQL\<version>\bin dan C:\Program Files\PostgreSQL\<version>\lib PostgreSQL ke Path Environment Variables windows.
    • Untuk memastikan PostgreSQL berhasil terinstal, ketikkan perintah berikut di CMD:
      postgres --version
      
  3. Konfigurasi PostgreSQL

    • Buka Command Promt atau cmd.
    • Masuk ke PostgreSQL dengan perintah:
      psql -U postgres
      
    • Masukkan password PostgreSQL yang telah Anda setup selama instalasi.
    • Setelah berhasil masuk, buat user baru dengan perintah berikut:
      CREATE USER odoo_user WITH PASSWORD 'odoo_user' CREATEDB CREATEROLE LOGIN;
      
    • Untuk memastikan user telah dibuat dengan role yang benar, ketikkan perintah:
      \du
      
  4. Install Git

  5. Clone Repository Odoo

    • Buat folder baru bernama Training.
    • Buka Command Prompt didalam folder Training:
      cd Training
      
    • Clone repository Odoo dari GitHub dengan perintah:
      git clone --branch 16.0 --depth 1 https://github.com/odoo/odoo.git
      
  6. Setup Virtual Environment

    • Buat virtual environment dengan Python:
      python -m venv env-odoo16
      
    • Aktifkan virtual environment:
      env-odoo16\Scripts\activate
      
    • Masuk ke folder odoo:
      cd odoo
      
    • Install dependencies setuptools dan wheel:
      pip install setuptools wheel
      
    • Install dependencies dari requirements.txt:
      pip install -r requirements.txt
      

Running odoo Pertama Kali

  1. Masuk ke folder Training
  2. Buka CMD di folder tersebut
  3. Lalu aktifkan virtual environment dengan menggunakan command:
env-odoo16\Scripts\activate
  1. Masuk ke folder odoo
cd odoo
  1. Running odoo dengan command
python odoo-bin -r dbuser -w dbpassword --addons-path=addons -d mydb
  1. Buka odoo pada browser di localhost:8069 untuk login kita menggunakan: email:admin password:admin

Menambahkan beberapa extensions pada vscode

pada bagian extension cari dan instal:

  1. Rainbow CSV
  2. python Debugger
  3. Arkademy - Odo Technical Training
  4. Odoo Code Snippets by Michell Stuttgart

Menambahkan odoo conf(konfigurasi)

  1. Pada folder Training, Buat sebuah folder untuk meletakkan module atau addons custom yang akan dibuat example: training_module
  2. Lalu kembali ke folder Training dan buat folder conf
  3. Dalam folder conf tersebut buat sebuah file dengan extension .conf (example : training.conf). didalam file tersebut copy konfigurasi berikut:
[options]
addons_path = C:\Users\firwin\Documents\Training\training_module,C:\Users\firwin\Documents\Training\odoo\addons
admin_passwd = odoo
db_host = localhost
db_name = False
db_password =odoo_user
db_port = 5432
db_user =odoo_user 
dbfilter =
http_port = 8010
xmlrpc_port = 8010
list_db = True
log_db = False
log_db_level = warning
log_handler = :INFO
log_level = info
logfile = 
default_productivity_apps = True

ket:

  • addons_path = berisi semua folder addons/ module yang akan digunakan pada odoo, pada contoh diatas addonsnya berada pada folder training_module dan addons

Menambahkan Module Custom baru

  1. Masuk ke folder Training
  2. Buka CMD
  3. Aktifkan virtual environment
  4. Masuk ke folder odoo
  5. buat module baru dengan command
odoo-bin scaffold <nama module> <path folder dimana module akan diletakkan>

Running Odoo dengan menggunakan debugger

  1. buka vscode
  2. lalu pada menu Run and Debug alt text klik create a lunch.json file alt text
  3. pilih folder tempat custom module kita. disini saya menggunakan folder training module
  4. pilih python debugger
  5. pilih python file, akan muncul sebuah file launch.json
  6. lalu copy-kan konfigurasi berikut pada file launch.json tersebut:
{
    "version": "0.2.0",
    "configurations": [
        
        {
            "name": "Training Odoo 16",
            "type": "debugpy",
            "request": "launch",
            "stopOnEntry": false,
            "console": "integratedTerminal",
            // untuk python isikan path python yang ada pada foder virtual environment
            "python": "C:/Users/firwin/Documents/Training/env-odoo16/Scripts/python",
            // untuk python isikan path file odoo-bin yang ada di folder odoo            "program": "C:/Users/firwin/Documents/Training/odoo/odoo-bin",
            "args": [
                // untuk config isikan file conf yang ada pada folder conf
                "--config=C:/Users/firwin/Documents/Training/conf/training.conf",
                "--dev=xml",
                // "--database=odoo16_arkana_training",
            ]
        },
    ]
}
  1. lalu save dengan menekan ctrl+s
  2. lalu run odoo dengan cara klik tombol alt text

membuat model pertama kali

Disclaimer : install module real_estate terlebih dahulu

  1. buat file dengan extension .py pada module real_estate>models example : estate_property.py
  2. tambahkan juga pada file __init__.py yang ada di dalam folder models tersebut
from . import estate_property
  1. buka file estate_property.py tadi tambahkan script python berikut untuk menambahkan models
from odoo import models

class EstateProperty(models.Model):
    _name = 'estate.property'
    _description = 'Estate Property'
  1. Restart odoo dengan menekan tombol hijau alt text
  2. upgrade module dengan cara:
  • buka odoo di browser
  • pergi ke apps
  • lalu cari module real_estate
  • pada pojok kanan atas pada module tersebut klik titik tiga lalu pilih upgrade. alt text
  1. cek apakah model berhasil tergenerate di odoo dengan cara
  • pilih alt text
  • pilih setting
  • pilih technical
  • lalu pilih models
  • cari model yang sudah kita buat tadi example : estate_property alt text alt text
  • jika ditemukan berarti model berhasil tergenerate

menambahkan fields pada model

  1. buka file python estate_property.py tadi
  2. tambahkan fields yang diinginkan seperti contoh script python dibawah ini: untuk jenis fields apa saja yang dapat ditambahkan dapat dilihat di text
from odoo import models, fields


class EstateProperty(models.Model):
    _name = 'estate.property'
    _description = 'Estate Property'

    name = fields.Char(string='Name')
    description = fields.Text(string='Description')
    postcode = fields.Char(string='Postcode')
    date_availability = fields.Date(string='Date Availability')
    expected_price = fields.Float(string='Expected Price')
    selling_price = fields.Float(string='Selling Price')
    bedrooms = fields.Integer(string='Bed rooms')
    living_area = fields.Integer(string='Living Area')
    facades = fields.Integer(string='Facades')
    garage = fields.Boolean(string='Garage')
    garden = fields.Boolean(string='Garden')
    garden_area = fields.Integer(string='Garden Area')
    garden_orientation = fields.Selection(string='Garden Orientation', 
                                          selection=[('n', 'N'),
                                                    ('s', 'S'),
                                                    ('e', 'E'),
                                                    ('w', 'W'),])
  1. lalu restart odoo
  2. upgrade module
  3. untuk check field berhasil tergenerate buka setting>technical>models, lalu cari model yang tadi dibuat. example : estate_property
  4. double click pada model tersebut, lihat apakah fieldnya ada didalam model tersebut. alt text alt text
<?xml version='1.0' encoding='utf-8'?>
<odoo>
  
    <record id="module_category_real_estate" model="ir.module.category">
        <field name="name">Real Estate</field>
        <field name="sequence">10</field>
    </record>

    <record id="group_real_estate_user" model="res.groups">
        <field name="name">User</field>
        <field name="category_id" ref="module_category_real_estate"/>
        <field name="implied_ids" eval="[(6, 0, [ref('base.group_user')])]"/>
    </record>

    <record id="group_real_estate_administrator" model="res.groups">
        <field name="name">Administrator</field>
        <field name="category_id" ref="module_category_real_estate"/>
        <field name="implied_ids" eval="[(6, 0, [ref('group_real_estate_user')])]"/>
        <field name="users" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]"/>
    </record> 

</odoo> 
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_estate_property,access.estate.property,model_estate_property,real_estate.group_real_estate_administrator,1,1,1,1
access_estate_property_type,access.estate.property.type,model_estate_property_type,real_estate.group_real_estate_administrator,1,1,1,1
access_estate_property_tag,access.estate.property.tag,model_estate_property_tag,real_estate.group_real_estate_administrator,1,1,1,1
access_estate_property_offer,access.estate.property.offer,model_estate_property_offer,real_estate.group_real_estate_administrator,1,1,1,1

access_estate_property_user,access.estate.property,model_estate_property,real_estate.group_real_estate_user,1,0,0,0
access_estate_property_offer_user,access.estate.property.offer.user,model_estate_property_offer,real_estate.group_real_estate_user,1,0,1,0
access_estate_property_type_user,access.estate.property.type,model_estate_property_type,real_estate.group_real_estate_user,1,0,0,0
access_estate_property_tag_user,access.estate.property.tag,model_estate_property_tag,real_estate.group_real_estate_user,1,0,0,0

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages