0xb7 ODOO ORM M2M RELATION CODES

Link to a new record that needs to be created with the given values dictionary

(0, 0,  { values })

update the linked record with id = ID (write values on it)

(1, ID, { values })

remove and delete the linked record with id = ID (calls unlink on ID, that will delete the object completely, and the link to it as well)

(2, ID)

cut the link to the linked record with id = ID (delete the relationship between the two objects but does not delete the target object itself)

(3, ID)

link to existing record with id = ID (adds a relationship)

(4, ID)

unlink all (like using (3,ID) for all linked records)

(5)

replace the list of linked IDs (like using (5) then (4,ID) for each ID in the list of IDs)

(6, 0, [IDs])
odoo python snippets

 

0xb6 ODOO ACTION BOOLEAN BUTTON CUSTOMIZATION

<xpath expr="//button[@name='action_view_invoice']" position="before">
    <button name="toggle_is_virtual" type="object" class="oe_stat_button" icon="fa-cog">
    <field
        name="is_virtual" widget="boolean_button"
        string="Virtual"
        options='{"terminology": {"string_true": "Virtual", "hover_true": "Make common", "string_false": "Common", "hover_false": "Make virtual"}}'
    />
    </button>
</xpath>
odoo python

 

0xa8 OPENERP 6.1 DATE RANGE SEARCH FILTER

Add two dummy fields to you model:

'ship_date_from': fields.function(lambda *a, **k: {}, method=True, type='date', string='Date from'),
'ship_date_to': fields.function(lambda *a, **k: {}, method=True, type='date', string='Date to'),

Add fields to search view with filter domain based on your record's date field:

<field name="ship_date_from" filter_domain="[('ship_date','&gt;=',self)]"/>
<field name="ship_date_to" filter_domain="[('ship_date','&lt;=',self)]"/>

Profit!

odoo python

 

0x8f FIRST LOOK AT ODOO AND IT'S API

В свете смены работы, пришлось полезть посмотреть что такое Odoo вообще и его апи в частности.

Для начала про Odoo - на мою малинку она ставилась эдак минут 20, может и больше, но, как ни странно, без всяких танцев с бубном. Первое обращение (типа сетап базы в постгрессе и т.д.) отрабатывало еще минут пятнадцать, и только тогда оно впустило меня внутрь, посмотреть что же оно такое.

Штука интересная - предлагает установить довольно много приложений на любой вкус - CRM, управление проектами, продажами, сервисный центр, билдер сайтов, в общем - дофига всего:

Continue reading →

odoo python php