04 April 2012

Pengganti checkbox tree di dalam form OpenERP

Bismillahirrahmaanirrahiim

Pernah memiliki pertanyaan seperti pertanyaan ini: http://www.openerp.com/forum/topic29356.html ?
Saya pernah dan sudah berbulan2 lalu belum menemukan jawabannya...


Jadi kalau tree di depan (saat pertama kali buka menu) akan selalu muncul checkbox di sebelah kiri seperti ini.




Sedangkan jika di dalam form ada tree, maka checkbox tersebut tidak muncul, paling yang ada icon Save atau Edit seperti berikut.




Sedangkan kebutuhan adanya checkbox pada tree di dalam form cukup sering yaitu untuk menjalankan action tertentu. Contohnya ingin membeli barang tertentu saja dari daftar produk di dalam form Purchase Requisition.


Nah, ini solusi sementara dari saya. Jadi ya saya buat saja tombol Check dan Uncheck di setiap baris di tree seperti berikut.




Sebelumnya ditambahkan dulu field state dengan tipe boolean, True jika di-check False bila uncheck.
Tombol Check visible jika state False dan Uncheck visible hanya jika state True

mirip-mirip aja kan dengan checkbox biasa tinggal klik klik doang =P

Jadi dalam view.xml nya bisa dibuat seperti ini.

<field name="po_ids" colspan="4" nolabel="1" >
  <tree string="Products to be aded on Purchase Order">
     <field name="state"/>
     <button name="check_po" type="object" string="Select Product to Purchase Order" attrs="{'invisible':[('
state','=',True)]}" icon="gtk-apply"/>
     <button name="uncheck_po" type="object" string="UnSelect Product to Purchase Order" attrs="{'invisible':[('
state','=',False)]}" icon="gtk-cancel"/>

Gitu deh... mudah2an membantu..
Tapi kalau ada yang punya solusi lebih mudah tolong dibagi ilmunya ya :)

Ohya kalau masih menggunakan OpenERP web client versi 6.0.2 harap diupgrade ke versi 6.0.3 yaa
karena mungkin ada bugs...
jadi kalau pake web versi 6.0.2 ketika click tombol di dalam tree maka akan reload keseluruhan form ...


Terima kasih :)

10 komentar:

  1. Hehehehe lucu juga tips nya. Ternyata di tree bisa dikasih button. Btw, di gtk-client juga bisa diterapkan, walaupun entah kenapa iconnya tidak keluar.

    Saya baru coba-coba, tapi pasti kegunaannya banyak.

    Nice tips :D

    BalasHapus
    Balasan
    1. hmm saya jarang banget buka gtk-client... kadang saya buat module bisa dibuka di web version tapi di gtk tidak bisa.. itu kenapa ya?
      hehe malah jadi nanya :D

      Hapus
    2. Tidak bisanya pas apa nya yah Mbak Tya? Saya belum pernah mengalaminya soalnya. Siapa tau bisa bantu.

      Hapus
    3. iya jadi ada beberapa modul baru yang saya buat, baik2 saja di web tapi di gtk tidak bisa input... form nya tidak muncul... entah mengapa...

      Hapus
  2. Halo mba Tya, salam kenal. Saya Togar, kebetulan saya juga developer OpenERP.
    untuk kasus mba itu, sebenarnya checkbox di tree view Budgets itu hanyalah fitur selection untuk OpenERP web. Kalau di GTK client, checkbox itu tidak ada. Jadi checkbox itu tidak terhubung ke method Python.

    Lalu kalau di Budget Lines bagaimana? Kita tinggal tambahkan saja [editable="top"] pada tag tree field line_ids nya. Jadinya kira-kira seperti ini:







    @andhitiarama: salah kenal bro.. saya pernah lihat blog anda. hebaaatt!! saluute untuk blog anda.. :)

    BalasHapus
    Balasan
    1. Halo bang Togar, salam kenal juga...
      Kebetulan saya memang fokus di OpenERP web saja nih, GTK-client belum banyak diexplore...

      terus saya sudah coba tambahkan editable="top" di field (contoh saya po_ids misalnya)


      tapi tetap tidak muncul checkbox seperti di tree view...

      saya coba juga di tree dalam field, seperti ini:




      tetap tidak muncul,
      apakah ada yang salah?

      terima kasih sebelumnya...

      Hapus
  3. wahh.. blogspot langsung mengkonversi tag html yaa..
    hahahaa.. jadinya ga kelihatan script kita.. kita ganti tag <> menjadi [] aja yah..
    jadi bentuk field line_ids nya kira2 jadi begini..

    [field name="line_ids" nolabel="1" colspan="4"]
    [tree string="PO Lines" editable="top"]
    [field name="name" /]
    [field name="field_checkbox" /]
    [/tree]
    [/field]

    yang mba buat bagaimana?

    BalasHapus
  4. hahaha iya betul juga... scriptnya gk keliatan.....

    betul, sama kok dengan yg saya buat pak...

    tapi tetap saja tidak muncul checkbox di sebelah kiri...

    maksud saya itu checkbox seperti yg di tree depan pak.. yang kita bisa delete lebih dari satu data, atau kita check untuk export ke csv...
    bukan field_checkbox biasa pak ...

    BalasHapus
  5. kalau checkbox itu ingin menghapus beberapa lines sekaligus, setau saya itu memang tidak bisa mba.. soalnya record/lines dalam openerp web didesign sebagai link atau pop up.. CMIIW. :)

    BalasHapus
    Balasan
    1. yaps memang tidak bisa setahu saya... maka dari itu saya akalin sperti blog saya ini...
      karena kadang perlu melakukan action untuk beberapa baris sekaligus... :)

      Hapus