Rohan Nayani(Open ERP) has proposed merging
lp:~openerp-dev/openobject-addons/trunk-coverage-marketing-ron into
lp:openobject-addons.
Requested reviews:
Harry (OpenERP) (hmo-tinyerp)
Jigar Amin (OpenERP) (jam-openerp)
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-coverage-marketing-ron/+merge/82637
Summary
=============================
marketing_campaign_demo.xml
* [ADD] added new demo data for campaign on partner object with following
activity
activity1: send email after join partner channel . condition: credit_limit <
10000.
activity2: send email after become silver partner. condition: credit_limit >=
10000 and credit_limit < 50000
activity3: send email after become gold partner. condition: credit_limit <
100000
marketing_campaign.yml
* [IMP] Process for marketing campaign
--
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-coverage-marketing-ron/+merge/82637
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openobject-addons/trunk-coverage-marketing-ron.
=== modified file 'marketing_campaign/__openerp__.py'
--- marketing_campaign/__openerp__.py 2011-10-11 20:05:49 +0000
+++ marketing_campaign/__openerp__.py 2011-11-30 11:50:34 +0000
@@ -58,7 +58,12 @@
"security/ir.model.access.csv"
],
'demo_xml': [
+ 'marketing_campaign_demo.xml',
],
+ 'test': [
+ 'test/marketing_campaign_demo.yml',
+ 'test/marketing_campaign.yml',
+ ],
'installable': True,
'active': False,
'certificate' : '00421723279617928365',
=== modified file 'marketing_campaign/marketing_campaign.py'
--- marketing_campaign/marketing_campaign.py 2011-11-22 08:51:38 +0000
+++ marketing_campaign/marketing_campaign.py 2011-11-30 11:50:34 +0000
@@ -707,7 +707,7 @@
if result:
# process _chain
- workitem = workitem.browse(context)[0] # reload
+ workitem = workitem.browse(context=context)[0] # reload
date = datetime.strptime(workitem.date, DT_FMT)
for transition in activity.to_ids:
@@ -784,11 +784,7 @@
res = {}
wi_obj = self.browse(cr, uid, ids[0], context=context)
if wi_obj.activity_id.type == 'email':
- data_obj = self.pool.get('ir.model.data')
- data_id = data_obj._get_id(cr, uid, 'email_template', 'email_template_preview_form')
- view_id = 0
- if data_id:
- view_id = data_obj.browse(cr, uid, data_id, context=context).res_id
+ view_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'email_template', 'email_template_preview_form')
res = {
'name': _('Email Preview'),
'view_type': 'form',
@@ -796,7 +792,7 @@
'res_model': 'email_template.preview',
'view_id': False,
'context': context,
- 'views': [(view_id, 'form')],
+ 'views': [(view_id and view_id[1] or 0, 'form')],
'type': 'ir.actions.act_window',
'target': 'new',
'nodestroy':True,
=== added file 'marketing_campaign/marketing_campaign_demo.xml'
--- marketing_campaign/marketing_campaign_demo.xml 1970-01-01 00:00:00 +0000
+++ marketing_campaign/marketing_campaign_demo.xml 2011-11-30 11:50:34 +0000
@@ -0,0 +1,91 @@
+<?xml version="1.0" ?>
+<openerp>
+ <data>
+ <record id="action_dummy" model="ir.actions.server">
+ <field name="name">Dummy Action</field>
+ <field name="model_id" ref="base.model_res_partner"/>
+ <field name="state">dummy</field>
+ <field name="code"></field>
+ <field eval="5" name="sequence"/>
+ <field eval="True" name="condition"/>
+ </record>
+
+
+ <!-- Email tempalte -->
+ <record id="email_template_1" model="email.template">
+ <field name="subject">Welcome in OpenERP Family!</field>
+ <field name="email_to">[email protected]</field>
+ <field name="model_id" ref="base.model_res_partner"/>
+ <field name="body_text">Hello, We are very happy to send Welcome message.</field>
+ </record>
+ <record id="email_template_2" model="email.template">
+ <field name="subject">Cogretulation! You become now our Silver Partner.</field>
+ <field name="email_to">[email protected]</field>
+ <field name="model_id" ref="base.model_res_partner"/>
+ <field name="body_text">Hello,We are happy to announce that you now become our Silver Partner.
+ Regards,OpenERP Team,</field>
+ </record>
+
+ <record id="email_template_3" model="email.template">
+ <field name="subject">Congratulation! You become our Gold Partner.</field>
+ <field name="email_to">[email protected]</field>
+ <field name="model_id" ref="base.model_res_partner"/>
+ <field name="body_text">Hello, We are happy to announce that you become our Gold Partner.
+ Regards,OpenERP Team,</field>
+ </record>
+
+
+
+ <!-- Campaign -->
+ <record id="marketing_campaign_openerppartnerchannel" model="marketing.campaign">
+ <field name="name">OpenERP Partner Channel</field>
+ <field name="object_id" ref="base.model_res_partner"/>
+ <field name="mode">active</field>
+ </record>
+
+ <!-- Activity -->
+
+ <record id="marketing_campaign_activity_0" model="marketing.campaign.activity">
+ <field name="name">New Partner</field>
+ <field name="server_action_id" ref="action_dummy"/>
+ <field name="campaign_id" ref="marketing_campaign_openerppartnerchannel"/>
+ <field name="email_template_id" ref="email_template_1"/>
+ <field eval="1" name="start"/>
+ </record>
+ <record id="marketing_campaign_activity_1" model="marketing.campaign.activity">
+ <field name="name">Silver Partner</field>
+ <field name="server_action_id" ref="action_dummy"/>
+ <field name="campaign_id" ref="marketing_campaign_openerppartnerchannel"/>
+ <field name="email_template_id" ref="email_template_2"/>
+ </record>
+
+ <record id="marketing_campaign_activity_2" model="marketing.campaign.activity">
+ <field name="name">Gold Partner</field>
+ <field name="server_action_id" ref="action_dummy"/>
+ <field name="campaign_id" ref="marketing_campaign_openerppartnerchannel"/>
+ <field name="email_template_id" ref="email_template_3"/>
+ </record>
+
+
+ <!-- Tranisition -->
+ <record id="marketing_campaign_transition_0" model="marketing.campaign.transition">
+ <field model="marketing.campaign.activity" name="activity_from_id" ref = "marketing_campaign_activity_0"/>
+ <field model="marketing.campaign.activity" name="activity_to_id" ref = "marketing_campaign_activity_1"/>
+ </record>
+
+ <record id="marketing_campaign_transition_1" model="marketing.campaign.transition">
+ <field model="marketing.campaign.activity" name="activity_from_id" ref = "marketing_campaign_activity_1"/>
+ <field model="marketing.campaign.activity" name="activity_to_id" ref = "marketing_campaign_activity_2"/>
+ </record>
+
+ <!-- Segment -->
+ <record id="marketing_campaign_segment0" model="marketing.campaign.segment">
+ <field eval="time.strftime('%Y-%m-%d %H:%M:%S')" name="date_run"/>
+ <field name="name">OpenERP Partner</field>
+ <field name="sync_mode">create_date</field>
+ <field name="campaign_id" ref="marketing_campaign_openerppartnerchannel"/>
+ <field name="state">draft</field>
+ </record>
+
+ </data>
+</openerp>
=== added directory 'marketing_campaign/test'
=== added file 'marketing_campaign/test/marketing_campaign.yml'
--- marketing_campaign/test/marketing_campaign.yml 1970-01-01 00:00:00 +0000
+++ marketing_campaign/test/marketing_campaign.yml 2011-11-30 11:50:34 +0000
@@ -0,0 +1,60 @@
+-
+ I start compaign.
+-
+ !workflow {model: marketing.campaign, action: state_running_set, ref: marketing_campaign_openerppartnerchannel}
+-
+ I check the campaign on Running mode.
+-
+ !assert {model: marketing.campaign, id: marketing_campaign_openerppartnerchannel}:
+ - state == 'running'
+-
+ This campaign is only for OpenERP partner, so I assinged this Campaign
+ to right segment, after that I start this segment.
+-
+ !workflow {model: marketing.campaign.segment, action: state_running_set, ref: marketing_campaign_segment0}
+-
+ I check the segment on Running mode.
+-
+ !assert {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
+ - state == 'running'
+-
+ I synchronized this segment manually to see all step of activity and process covered on this campaign.
+-
+ !python {model: marketing.campaign.segment}: |
+ self.synchroniz(cr, uid, [ref("marketing_campaign_segment0")])
+-
+ I process work item.
+-
+ !python {model: marketing.campaign.workitem}: |
+ ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
+ ('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_1'))])
+ #assert ids, 'Activity items not created'
+ #self.process(cr, uid, ids)
+ #record = self.browse(cr, uid, ids)[0]
+ #assert record.state == "done", "Activity item not in done state"
+-
+ I print workitem report.
+-
+ !python {model: marketing.campaign.workitem}: |
+ ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
+ ('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_1'))])
+ #self.preview(cr, uid, ids)
+-
+ I close segmentation After completion of all activity.
+-
+ !workflow {model: marketing.campaign.segment, action: state_done_set, ref: marketing_campaign_segment0}
+-
+ I check the segmentation is done.
+-
+ !assert {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
+ - state == 'done'
+-
+ I close this campaing.
+-
+ !workflow {model: marketing.campaign.segment, action: state_done_set, ref: marketing_campaign_openerppartnerchannel}
+-
+ I check the campaing is done.
+-
+ !assert {model: marketing.campaign.segment, id: marketing_campaign_openerppartnerchannel}:
+ - state == 'done'
+
=== added file 'marketing_campaign/test/marketing_campaign_demo.yml'
--- marketing_campaign/test/marketing_campaign_demo.yml 1970-01-01 00:00:00 +0000
+++ marketing_campaign/test/marketing_campaign_demo.yml 2011-11-30 11:50:34 +0000
@@ -0,0 +1,5 @@
+-
+ In order to test process of marketing campaign, I create segment.
+-
+ !record {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
+ campaign_id: marketing_campaign_openerppartnerchannel
=== modified file 'marketing_campaign_crm_demo/marketing_campaign_demo.xml'
--- marketing_campaign_crm_demo/marketing_campaign_demo.xml 2011-01-14 00:11:01 +0000
+++ marketing_campaign_crm_demo/marketing_campaign_demo.xml 2011-11-30 11:50:34 +0000
@@ -34,137 +34,105 @@
<!-- Email tempalte -->
<record id="email_template_1" model="email.template">
- <field name="def_subject">Thanks for showing interest in OpenERP</field>
- <field name="def_to">[email protected]</field>
- <field eval="[(6,0,[])]" name="allowed_groups"/>
+ <field name="subject">Thanks for showing interest in OpenERP</field>
+ <field name="email_to">[email protected]</field>
<field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/>
<field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/>
- <field name="object_name" ref="crm.model_crm_lead"/>
- <field eval="0" name="use_sign"/>
- <field name="def_body_text">Hello,Thanks for generous interest you have shown in the openERP.Regards,OpenERP Team,</field>
- <field name="template_language">mako</field>
+ <field name="model_id" ref="crm.model_crm_lead"/>
+ <field name="body_text">Hello,Thanks for generous interest you have shown in the openERP.Regards,OpenERP Team,</field>
<field name="name">For OpenERP OnDemand Free Trial 2010</field>
- <field name="model_int_name">crm.lead</field>
</record>
<record id="email_template_2" model="email.template">
- <field name="def_subject">Propose to subscribe to the OpenERP Discovery Day on May 2010</field>
- <field name="def_to">[email protected]</field>
- <field eval="[(6,0,[])]" name="allowed_groups"/>
+ <field name="subject">Propose to subscribe to the OpenERP Discovery Day on May 2010</field>
+ <field name="email_to">[email protected]</field>
<field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/>
<field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/>
- <field name="object_name" ref="crm.model_crm_lead"/>
- <field eval="0" name="use_sign"/>
- <field name="def_body_text">Hello,We have very good offer that might suit you.
+ <field name="model_id" ref="crm.model_crm_lead"/>
+ <field name="body_text">Hello,We have very good offer that might suit you.
We propose you to subscribe to the OpenERP Discovery Day on May 2010.
If any further information required kindly revert back.
We really appreciate your co-operation on this.
Regards,OpenERP Team,</field>
- <field name="template_language">mako</field>
<field name="name">For OpenERP Discovery Day on May 2010</field>
- <field name="model_int_name">crm.lead</field>
</record>
- <record id="email_template_3" model="email.template">
- <field name="def_subject">Thanks for subscribing to the OpenERP Discovery Day</field>
- <field name="def_to">[email protected]</field>
- <field eval="[(6,0,[])]" name="allowed_groups"/>
+ <record id="email_template_3" model="email.template">
+ <field name="subject">Thanks for subscribing to the OpenERP Discovery Day</field>
+ <field name="email_to">[email protected]</field>
<field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/>
<field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/>
- <field name="object_name" ref="crm.model_crm_lead"/>
- <field eval="0" name="use_sign"/>
- <field name="def_body_text">Hello,Thanks for showing intrest and for subscribing to the OpenERP Discovery Day.
+ <field name="model_id" ref="crm.model_crm_lead"/>
+ <field name="body_text">Hello,Thanks for showing intrest and for subscribing to the OpenERP Discovery Day.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,</field>
- <field name="template_language">mako</field>
<field name="name">For OpenERP Discovery Day</field>
- <field name="model_int_name">crm.lead</field>
</record>
- <record id="email_template_4" model="email.template">
- <field name="def_subject">Thanks for buying the OpenERP book</field>
- <field name="def_to">[email protected]</field>
- <field eval="[(6,0,[])]" name="allowed_groups"/>
+ <record id="email_template_4" model="email.template">
+ <field name="subject">Thanks for buying the OpenERP book</field>
+ <field name="email_to">[email protected]</field>
<field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/>
<field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/>
- <field name="object_name" ref="crm.model_crm_lead"/>
- <field eval="0" name="use_sign"/>
- <field name="def_body_text">Hello,Thanks for showing intrest and buying the OpenERP book.
+ <field name="model_id" ref="crm.model_crm_lead"/>
+ <field name="body_text">Hello,Thanks for showing intrest and buying the OpenERP book.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,</field>
- <field name="template_language">mako</field>
<field name="name">For OpenERP book</field>
- <field name="model_int_name">crm.lead</field>
</record>
<record id="email_template_5" model="email.template">
- <field name="def_subject">Propose a free technical training to Gold partners</field>
- <field name="def_to">[email protected]</field>
- <field eval="[(6,0,[])]" name="allowed_groups"/>
+ <field name="subject">Propose a free technical training to Gold partners</field>
+ <field name="email_to">[email protected]</field>
<field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/>
<field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/>
- <field name="object_name" ref="crm.model_crm_lead"/>
- <field eval="0" name="use_sign"/>
- <field name="def_body_text">Hello, We have very good offer that might suit you.
+ <field name="model_id" ref="crm.model_crm_lead"/>
+ <field name="body_text">Hello, We have very good offer that might suit you.
For our gold partners,We are arranging free technical training on june,2010.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,</field>
- <field name="template_language">mako</field>
<field name="name">For technical training to Gold partners</field>
- <field name="model_int_name">crm.lead</field>
</record>
<record id="email_template_6" model="email.template">
- <field name="def_subject">Propose paid training to Silver partners</field>
- <field name="def_to">[email protected]</field>
- <field eval="[(6,0,[])]" name="allowed_groups"/>
+ <field name="subject">Propose paid training to Silver partners</field>
+ <field name="email_to">[email protected]</field>
<field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/>
<field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/>
- <field name="object_name" ref="crm.model_crm_lead"/>
- <field eval="0" name="use_sign"/>
- <field name="def_body_text">Hello, We have very good offer that might suit you.
+ <field name="model_id" ref="crm.model_crm_lead"/>
+ <field name="body_text">Hello, We have very good offer that might suit you.
For our silver partners,We are paid technical training on june,2010.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,</field>
- <field name="template_language">mako</field>
<field name="name">For training to Silver partners</field>
- <field name="model_int_name">crm.lead</field>
</record>
<record id="email_template_7" model="email.template">
- <field name="def_subject">Propose gold partnership to silver partners</field>
- <field name="def_to">[email protected]</field>
- <field eval="[(6,0,[])]" name="allowed_groups"/>
+ <field name="subject">Propose gold partnership to silver partners</field>
+ <field name="email_to">[email protected]</field>
<field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/>
<field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/>
- <field name="object_name" ref="crm.model_crm_lead"/>
- <field eval="0" name="use_sign"/>
- <field name="def_body_text">Hello, We have very good offer that might suit you.
+ <field name="model_id" ref="crm.model_crm_lead"/>
+ <field name="body_text">Hello, We have very good offer that might suit you.
For our silver partners,We are offering Gold partnership.
If any further information required kindly revert back.
I really appreciate your co-operation on this.
Regards,OpenERP Team,</field>
- <field name="template_language">mako</field>
<field name="name">For gold partnership to silver partners</field>
- <field name="model_int_name">crm.lead</field>
</record>
<record id="email_template_8" model="email.template">
- <field name="def_subject">Thanks for subscribing to technical training</field>
- <field name="def_to">[email protected]</field>
- <field eval="[(6,0,[])]" name="allowed_groups"/>
+ <field name="subject">Thanks for subscribing to technical training</field>
+ <field name="email_to">[email protected]</field>
<field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/>
<field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/>
- <field name="object_name" ref="crm.model_crm_lead"/>
- <field eval="0" name="use_sign"/>
- <field name="def_body_text">Hello, Thanks for showing intrest and for subscribing to technical training.If any further information required kindly revert back.I really appreciate your co-operation on this.
+ <field name="model_id" ref="crm.model_crm_lead"/>
+ <field name="body_text">Hello, Thanks for showing intrest and for subscribing to technical training.If any further information required kindly revert back.I really appreciate your co-operation on this.
Regards,OpenERP Team,</field>
- <field name="template_language">mako</field>
<field name="name">For subscribing to technical training</field>
- <field name="model_int_name">crm.lead</field>
</record>
<!-- Report -->
@@ -181,6 +149,7 @@
<record id="marketing_campaign_openerpondemandfreetrial0" model="marketing.campaign">
<field name="name">OpenERP OnDemand Free Trial 2010</field>
<field name="object_id" ref="crm.model_crm_lead"/>
+ <field name="mode">active</field>
<field name="partner_field_id" ref="crm.field_crm_lead_partner_id"/>
</record>
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp