Posts

Build Dashboard

  Official tutorial dapat dilihat di  https://www.odoo.com/documentation/18.0/developer/tutorials/discover_js_framework/02_build_a_dashboard.html Solusi akhir dapat dilihat di  https://github.com/odoo/tutorials/tree/master-discover-js-framework-solutions/awesome_dashboard/static/src/dashboard Solusi pertahap: Layout

Tutorial Owl Components

 Official tutorial dapat dilihat di  https://www.odoo.com/documentation/18.0/developer/tutorials/discover_js_framework/01_owl_components.html Solusi akhir dapat dilihat di  https://github.com/odoo/tutorials/tree/master-discover-js-framework-solutions/awesome_owl Untuk mengakses awesome_owl, gunakan link http://localhost:8068/awesome_owl (ganti port dengan port yang Anda gunakan). Solusi Counters Card dan Sum Todo List

Solusi Tutorial Odoo Server Framework 101

 Blogger ini berisi solusi untuk tutorial resmi dari Odoo Server Framework 101 . Anda dapat membaca tutorialnya dari link yang telah disediakan. Blog ini akan berisi solusi dan penjelasan singkat jika diperlukan. Anda bisa melihat solusi akhir dari tutorial Odoo Server Framework 101 di github resmi milik odoo , Jika Anda membutuhkan step by step dari masing-masing tutorial dapat dilihat pada link dibawah. Solusi 1 (Membuat Module Basic). Solusi 2 (Membuat Models) . Solusi 3 (Menambahkan Security Dasar) Solusi 4 (Membuat menu action) Solusi 5 (Custom form, search dan view) Solusi 6 (interlink between model) Solusi 7 (compute field) solusi 8 (action button) solusi 9 (SQL and Python Constrain) solusi 10 (Add Sprinkle) solusi 11 (Inheritance) Solusi 12 (Interact with other module) Solusi 13 (QWeb - Kanban view)

Build Dashboard - Bagian Layout

solusi untuk tutorial  https://www.odoo.com/documentation/18.0/developer/tutorials/discover_js_framework/02_build_a_dashboard.html bagian pertama (layout) file static/src/dashboard/dashboard.js /** @odoo-module **/ import { Component } from "@odoo/owl" ; import { registry } from "@web/core/registry" ; import { Layout } from "@web/search/layout" ; class AwesomeDashboard extends Component {     static template = "awesome_dashboard.AwesomeDashboard" ;     static components = { Layout }; } registry . category ( "actions" ). add ( "awesome_dashboard.dashboard" , AwesomeDashboard ); file static/src/dashboard/dashboard.xml <? xml version = "1.0" encoding = "UTF-8" ?> < templates xml:space = "preserve" >     < t t-name = "awesome_dashboard.AwesomeDashboard" >         < Layout display = "display" className = "'o_dashboard h-100...

Solusi Tutorial Owl Components - Todo List

Solusi untuk tutorial  https://www.odoo.com/documentation/18.0/developer/tutorials/discover_js_framework/01_owl_components.html  untuk bagian Todo List. buat file static/src/todo_list/todo_list.js import { Component , useState } from "@odoo/owl" ; import { TodoItem } from "./todo_item" ; import { useAutofocus } from "../utils" ; export class TodoList extends Component {     static template = "awesome_owl.TodoList" ;     static components = { TodoItem };     setup () {         this . nextId = 0 ;         this . todos = useState ([]);         useAutofocus ( "input" )     }     addTodo ( ev ) {         if ( ev . keyCode === 13 && ev . target . value != "" ) {             this . todos . push ({                 id: this . nextId ++ ,   ...

Solusi Tutorial Owl Components - Card and Sum

 solusi untuk tutorial  https://www.odoo.com/documentation/18.0/developer/tutorials/discover_js_framework/01_owl_components.html bagian card dan sum Card: Buat file baru card/card.js import { Component , useState } from "@odoo/owl" ; export class Card extends Component {     static template = "awesome_owl.Card" ;     static props = {         title : String ,         slots : {             type : Object ,             shape : {                 default : true             },         }     };     setup () {         this . state = useState ({ isOpen : true });     }     toggleContent () {         this . state . isOpen = ! this . state . isOpen ;     } } buat file ...

Solusi Tutorial Owl Components - Counter

 Solusi untuk tutorial Owl Components bagian Counter Link tutorial  https://www.odoo.com/documentation/18.0/developer/tutorials/discover_js_framework/01_owl_components.html Buat file awesome_owl/static/src/counter/counter.js /** @odoo-module **/ import { Component , useState } from "@odoo/owl" ; export class Counter extends Component {     static template = "awesome_owl.Counter" ;     static props = {         onchange : { type : Function , optional : true }     };     setup () {         this . state = useState ({ value : 0 });     }     increment () {         this . state . value ++ ;         if ( this . props . onchange ){             this . props . onchange ();         }     } } Buat file awesome_owl/static/src/counter/counter.xml <? xml version = "1.0" ...