Pay attention that this module converts the existing addresses into "addresses + contacts". It means that some fields of the addresses will be missing (like the contact name), since these are supposed to be defined in an other object.
""",
- "depends" : ["base"],
+ "depends" : ["base", "process"],
"init_xml" : [],
"demo_xml" : ["base_contact_demo.xml"],
"update_xml" : [
"security/ir.model.access.csv",
- 'base_contact_view.xml'
+ 'base_contact_view.xml',
+ "process/base_contact_process.xml"
],
"active": False,
"installable": True
<field name="first_name" select="1"/>
<notebook colspan="4" >
<page string="General">
- <newline/>
- <separator string="General Information" colspan="4"/>
- <field name="mobile" select="2"/>
- <field name="title" select="1" />
- <field name="website"/>
- <field name="lang_id"/>
- <field name="active"/>
- <separator string="Functions" colspan="4"/>
- <field name="job_ids" colspan="4" nolabel="1" mode="tree, form">
- <form string="Functions">
- <field name="function_id"/>
- <field name="address_id"/>
- <field name="name"/>
- <field name="sequence_contact"/>
- <field name="phone"/>
- <field name="email"/>
- <field name="date_start" />
- <field name="date_stop" />
- <field name="state" />
- </form>
- <tree string="Functions">
- <field name="sequence_contact" string="Seq."/>
- <field name="function_id"/>
- <field name="name"/>
- <field name="address_id"/>
- <field name="phone"/>
- <field name="email"/>
- <field name="state" />
- </tree>
- </field>
+ <newline/>
+ <separator string="General Information" colspan="4"/>
+ <field name="mobile" select="2"/>
+ <field name="title" select="1" />
+ <field name="website"/>
+ <field name="lang_id"/>
+ <field name="active"/>
+ <separator string="Functions" colspan="4"/>
+ <field name="job_ids" colspan="4" nolabel="1" mode="tree, form">
+ <form string="Functions">
+ <field name="function_id"/>
+ <field name="address_id"/>
+ <field name="name"/>
+ <field name="sequence_contact"/>
+ <field name="phone"/>
+ <field name="email"/>
+ <field name="date_start" />
+ <field name="date_stop" />
+ <field name="state" />
+ </form>
+ <tree string="Functions">
+ <field name="sequence_contact" string="Seq."/>
+ <field name="function_id"/>
+ <field name="name"/>
+ <field name="address_id"/>
+ <field name="phone"/>
+ <field name="email"/>
+ <field name="state" />
+ </tree>
+ </field>
</page>
<page string="Extra Information">
- <field name="country_id"/>
- <field name="birthdate" select="1" />
+ <field name="country_id"/>
+ <field name="birthdate" select="1" />
</page>
</notebook>
</form>
<newline/>
<field name="job_ids" mode="tree, form" colspan="4">
<tree string="Contacts" editable="top">
- <field name="sequence_partner"/>
+ <field name="sequence_partner"/>
<field name="contact_id"/>
<field name="function_id"/>
<field name="phone"/>
<field name="email"/>
</tree>
<form string="Contacts">
- <field name="sequence_partner"/>
+ <field name="sequence_partner"/>
<field name="contact_id"/>
<field name="function_id"/>
<field name="phone"/>
</field>
</record>
-<!-- Views for res.partner.job -->
+ <!-- Views for res.partner.job -->
<record model="ir.ui.view" id="view_partner_job_tree">
<field name="name">res.partner.job.tree</field>
<field name="model">res.partner.job</field>
<field name="function_id"/>
<field name="email"/>
<field name="phone"/>
+ <field name="state" />
</tree>
</field>
</record>
<field name="phone" select="2"/>
<field name="sequence_contact" select="2"/>
<field name="sequence_partner" select="2"/>
+ <field name="date_start" />
+ <field name="date_stop" />
+ <field name="state" select="2" />
</page>
</notebook>
</form>
</field>
</record>
-<!-- Menuitem for res.partner.job -->
- <record model="ir.actions.act_window" id="action_res_partner_job">
- <field name="name">Functions</field>
- <field name="type">ir.actions.act_window</field>
- <field name="res_model">res.partner.job</field>
- <field name="view_type">form</field>
- </record>
- <menuitem name="Partners/Functions" action="action_res_partner_job" id="menu_action_res_partner_job"/>
-<!-- Act window defining a shorcut on partners to open all his contacts -->
- <act_window name="Open all Partner's Function"
- domain="[('name', '=', active_id)]"
- res_model="res.partner.job"
- src_model="res.partner"
- view_mode='tree,form'
- id="act_res_partner_jobs"/>
+ <!-- Menuitem for res.partner.job -->
+ <record model="ir.actions.act_window" id="action_res_partner_job">
+ <field name="name">Functions</field>
+ <field name="type">ir.actions.act_window</field>
+ <field name="res_model">res.partner.job</field>
+ <field name="view_type">form</field>
+ </record>
+ <menuitem name="Partners/Functions" action="action_res_partner_job" id="menu_action_res_partner_job"/>
+ <!-- Act window defining a shorcut on partners to open all his contacts -->
+ <act_window name="Open all Partner's Function"
+ domain="[('name', '=', active_id)]"
+ res_model="res.partner.job"
+ src_model="res.partner"
+ view_mode='tree,form'
+ id="act_res_partner_jobs"/>
</data>
</openerp>
--- /dev/null
+<?xml version="1.0" ?>
+<openerp>
+ <data>
+
+ <!--
+ Process
+ -->
+
+ <record id="process_process_basecontactworkflow0" model="process.process">
+ <field eval=""""base_contact workflow"""" name="name"/>
+ <field eval=""""Base contact flow for services companies."""" name="note"/>
+ <field eval="1" name="active"/>
+ </record>
+
+ <!--
+ Process node
+ -->
+
+ <record id="process_node_contacts0" model="process.node">
+ <field name="menu_id" ref="base_contact.menu_partner_contact_form"/>
+ <field name="model_id" ref="base_contact.model_res_partner_contact"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""People you work with."""" name="note"/>
+ <field eval=""""Contacts"""" name="name"/>
+ <field name="process_id" ref="process_process_basecontactworkflow0"/>
+ <field eval="1" name="flow_start"/>
+ </record>
+
+ <record id="process_node_partners0" model="process.node">
+ <field name="menu_id" ref="base.menu_partner_form"/>
+ <field name="model_id" ref="base.model_res_partner"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""Companies you work with."""" name="note"/>
+ <field eval=""""Partners"""" name="name"/>
+ <field name="process_id" ref="process_process_basecontactworkflow0"/>
+ <field eval="1" name="flow_start"/>
+ </record>
+
+ <record id="process_node_function0" model="process.node">
+ <field name="menu_id" ref="base_contact.menu_action_res_partner_job"/>
+ <field name="model_id" ref="base_contact.model_res_partner_job"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""Jobs at a same partner address."""" name="note"/>
+ <field eval=""""Function"""" name="name"/>
+ <field name="process_id" ref="process_process_basecontactworkflow0"/>
+ <field eval="0" name="flow_start"/>
+ </record>
+
+ <record id="process_node_addresses0" model="process.node">
+ <field name="menu_id" ref="base.menu_partner_address_form"/>
+ <field name="model_id" ref="base.model_res_partner_address"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""Working and private addresses."""" name="note"/>
+ <field eval=""""Addresses"""" name="name"/>
+ <field name="process_id" ref="process_process_basecontactworkflow0"/>
+ <field eval="0" name="flow_start"/>
+ </record>
+
+ <!--
+ Process Transition
+ -->
+
+ <record id="process_transition_contacttofunction0" model="process.transition">
+ <field eval="[(6,0,[])]" name="role_ids"/>
+ <field eval="[(6,0,[])]" name="transition_ids"/>
+ <field eval=""""Contact to function"""" name="name"/>
+ <field eval=""""Defines contacts and functions."""" name="note"/>
+ <field model="process.node" name="target_node_id" ref="process_node_function0"/>
+ <field model="process.node" name="source_node_id" ref="process_node_contacts0"/>
+ </record>
+
+ <record id="process_transition_functiontoaddress0" model="process.transition">
+ <field eval="[(6,0,[])]" name="role_ids"/>
+ <field eval="[(6,0,[])]" name="transition_ids"/>
+ <field eval=""""Function to address"""" name="name"/>
+ <field eval=""""Define functions and address."""" name="note"/>
+ <field model="process.node" name="target_node_id" ref="process_node_addresses0"/>
+ <field model="process.node" name="source_node_id" ref="process_node_function0"/>
+ </record>
+
+ <record id="process_transition_partnertoaddress0" model="process.transition">
+ <field eval="[(6,0,[])]" name="role_ids"/>
+ <field eval="[(6,0,[])]" name="transition_ids"/>
+ <field eval=""""Partner to address"""" name="name"/>
+ <field eval=""""Define partners and their addresses."""" name="note"/>
+ <field model="process.node" name="target_node_id" ref="process_node_addresses0"/>
+ <field model="process.node" name="source_node_id" ref="process_node_partners0"/>
+ </record>
+
+ </data>
+</openerp>
\ No newline at end of file
"author" : "Tiny",
"category" : "Generic Modules/Association",
"depends" : [
- "base", "product", "account",
+ "base", "product", "account", "process"
],
"demo_xml" : [
#"demo_data.xml",
],
"update_xml" : [
"security/ir.model.access.csv",
- "membership_view.xml","membership_wizard.xml"
+ "membership_view.xml","membership_wizard.xml",
+ "process/membership_process.xml"
],
"active" : False,
"installable" : True,
--- /dev/null
+<?xml version="1.0" ?>
+<openerp>
+ <data>
+
+ <!--
+ Process
+ -->
+
+ <record id="process_process_membershipworkflow0" model="process.process">
+ <field eval=""""Membership workflow"""" name="name"/>
+ <field eval=""""Membership flow for services companies."""" name="note"/>
+ <field eval="1" name="active"/>
+ </record>
+
+ <!--
+ Process Node
+ -->
+
+ <record id="process_node_membershipproduct0" model="process.node">
+ <field name="menu_id" ref="membership.menu_membership_products"/>
+ <field name="model_id" ref="product.model_product_product"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""Define membership product."""" name="note"/>
+ <field eval=""""Membership product"""" name="name"/>
+ <field name="process_id" ref="process_process_membershipworkflow0"/>
+ <field eval="1" name="flow_start"/>
+ </record>
+
+ <record id="process_node_waitingmember0" model="process.node">
+ <field name="menu_id" ref="account.menu_action_invoice_tree1"/>
+ <field name="model_id" ref="account.model_account_invoice"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""Draft invoice for membership."""" name="note"/>
+ <field eval=""""Waiting member"""" name="name"/>
+ <field name="process_id" ref="process_process_membershipworkflow0"/>
+ <field eval="0" name="flow_start"/>
+ </record>
+
+ <record id="process_node_invoicedmember0" model="process.node">
+ <field name="menu_id" ref="account.menu_action_invoice_tree1"/>
+ <field name="model_id" ref="account.model_account_invoice"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""Open invoice."""" name="note"/>
+ <field eval=""""Invoiced member"""" name="name"/>
+ <field name="process_id" ref="process_process_membershipworkflow0"/>
+ <field eval="0" name="flow_start"/>
+ </record>
+
+ <record id="process_node_paidmember0" model="process.node">
+ <field name="menu_id" ref="account.menu_action_invoice_tree1"/>
+ <field name="model_id" ref="account.model_account_invoice"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""Membership invoice paid."""" name="note"/>
+ <field eval=""""Paid member"""" name="name"/>
+ <field name="process_id" ref="process_process_membershipworkflow0"/>
+ <field eval=""""object.state=='paid'"""" name="model_states"/>
+ <field eval="0" name="flow_start"/>
+ </record>
+
+ <record id="process_node_setassociation0" model="process.node">
+ <field name="menu_id" ref="membership.menu_members"/>
+ <field name="model_id" ref="base.model_res_partner"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""Set an associate member of partner."""" name="note"/>
+ <field eval=""""Set association"""" name="name"/>
+ <field name="process_id" ref="process_process_membershipworkflow0"/>
+ <field eval=""""object.state=='paid'"""" name="model_states"/>
+ <field eval="0" name="flow_start"/>
+ </record>
+
+ <record id="process_node_associatedmember0" model="process.node">
+ <field name="menu_id" ref="membership.menu_members"/>
+ <field name="model_id" ref="base.model_res_partner"/>
+ <field eval=""""state"""" name="kind"/>
+ <field eval=""""Member is associated."""" name="note"/>
+ <field eval=""""Associated member"""" name="name"/>
+ <field name="process_id" ref="process_process_membershipworkflow0"/>
+ <field eval=""""object.state=='associated'"""" name="model_states"/>
+ <field eval="0" name="flow_start"/>
+ </record>
+
+ <!--
+ Process Transition
+ -->
+
+ <record id="process_transition_producttomember0" model="process.transition">
+ <field eval="[(6,0,[])]" name="role_ids"/>
+ <field eval="[(6,0,[])]" name="transition_ids"/>
+ <field eval=""""Product to member"""" name="name"/>
+ <field eval=""""Define product for membership."""" name="note"/>
+ <field model="process.node" name="target_node_id" ref="process_node_waitingmember0"/>
+ <field model="process.node" name="source_node_id" ref="process_node_membershipproduct0"/>
+ </record>
+
+ <record id="process_transition_waitingtoinvoice0" model="process.transition">
+ <field eval="[(6,0,[])]" name="role_ids"/>
+ <field eval="[(6,0,[])]" name="transition_ids"/>
+ <field eval=""""Waiting to invoice"""" name="name"/>
+ <field eval=""""Draft invoice is now open."""" name="note"/>
+ <field model="process.node" name="target_node_id" ref="process_node_invoicedmember0"/>
+ <field model="process.node" name="source_node_id" ref="process_node_waitingmember0"/>
+ </record>
+
+ <record id="process_transition_action_create0" model="process.transition.action">
+ <field eval=""""invoice_open"""" name="action"/>
+ <field eval=""""object"""" name="state"/>
+ <field eval=""""Create"""" name="name"/>
+ <field name="transition_id" ref="process_transition_waitingtoinvoice0"/>
+ </record>
+
+ <record id="process_transition_invoicetopaid0" model="process.transition">
+ <field eval="[(6,0,[])]" name="role_ids"/>
+ <field eval="[(6,0,[])]" name="transition_ids"/>
+ <field eval=""""Invoice to paid"""" name="name"/>
+ <field eval=""""Invoice is be paid."""" name="note"/>
+ <field model="process.node" name="target_node_id" ref="process_node_paidmember0"/>
+ <field model="process.node" name="source_node_id" ref="process_node_invoicedmember0"/>
+ </record>
+
+ <record id="process_transition_invoicetoassociate0" model="process.transition">
+ <field eval="[(6,0,[])]" name="role_ids"/>
+ <field eval="[(6,0,[])]" name="transition_ids"/>
+ <field eval=""""invoice to associate"""" name="name"/>
+ <field eval=""""Invoiced member may be Associated member."""" name="note"/>
+ <field model="process.node" name="target_node_id" ref="process_node_associatedmember0"/>
+ <field model="process.node" name="source_node_id" ref="process_node_invoicedmember0"/>
+ </record>
+
+ <record id="process_transition_associationpartner0" model="process.transition">
+ <field eval="[(6,0,[])]" name="role_ids"/>
+ <field eval="[(6,0,[])]" name="transition_ids"/>
+ <field eval=""""Association Partner"""" name="name"/>
+ <field eval=""""Associated partner."""" name="note"/>
+ <field model="process.node" name="target_node_id" ref="process_node_associatedmember0"/>
+ <field model="process.node" name="source_node_id" ref="process_node_setassociation0"/>
+ </record>
+
+ </data>
+</openerp>
\ No newline at end of file
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_membership_membership_line_partner_manager","membership.membership_line partner_manager","model_membership_membership_line","base.group_partner_manager",1,1,1,1
-"access_membership_membership_line","membership.membership_line","model_membership_membership_line","base.group_user",1,0,0,0
+"access_membership_membership_line","membership.membership_line","model_membership_membership_line",,1,0,0,0
"access_report_partner_member_year","report.partner_member.year","model_report_partner_member_year","base.group_partner_manager",1,0,0,0
"access_report_partner_member_year_new","report.partner_member.year_new","model_report_partner_member_year_new","base.group_partner_manager",1,0,0,0