Merge lp:~jfb-tempo-consulting/unifield-server/DF-rec into lp:unifield-server

Proposed by jftempo
Status: Merged
Merged at revision: 5579
Proposed branch: lp:~jfb-tempo-consulting/unifield-server/DF-rec
Merge into: lp:unifield-server
Diff against target: 107 lines (+59/-0)
4 files modified
bin/addons/msf_profile/data/patches.xml (+4/-0)
bin/addons/msf_profile/msf_profile.py (+53/-0)
bin/addons/msf_sync_data_server/data/sync_server.sync_rule.csv (+1/-0)
bin/addons/sync_common/common.py (+1/-0)
To merge this branch: bzr merge lp:~jfb-tempo-consulting/unifield-server/DF-rec
Reviewer Review Type Date Requested Status
UniField Reviewer Team Pending
Review via email: mp+377632@code.launchpad.net
To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'bin/addons/msf_profile/data/patches.xml'
2--- bin/addons/msf_profile/data/patches.xml 2020-01-06 17:23:45 +0000
3+++ bin/addons/msf_profile/data/patches.xml 2020-01-17 13:26:16 +0000
4@@ -486,5 +486,9 @@
5 <field name="method">us_6905_manage_bned_switch</field>
6 </record>
7
8+ <record id="rec_entries_uf14_1_uf15" model="patch.scripts">
9+ <field name="method">rec_entries_uf14_1_uf15</field>
10+ </record>
11+
12 </data>
13 </openerp>
14
15=== modified file 'bin/addons/msf_profile/msf_profile.py'
16--- bin/addons/msf_profile/msf_profile.py 2020-01-06 17:23:45 +0000
17+++ bin/addons/msf_profile/msf_profile.py 2020-01-17 13:26:16 +0000
18@@ -52,6 +52,27 @@
19 'model': lambda *a: 'patch.scripts',
20 }
21
22+ # UF15.2
23+ def rec_entries_uf14_1_uf15(self, cr, uid, *a, **b):
24+ current_instance = self.pool.get('res.users').browse(cr, uid, uid, fields_to_fetch=['company_id']).company_id.instance_id
25+ if current_instance:
26+ trigger_obj = self.pool.get('sync.trigger.something.target')
27+ cr.execute('''
28+ select sdref, values, source from sync_client_update_received where model='account.move.reconcile' and execution_date > ( select applied from sync_client_version where name='UF15.0') and fields not like '%action_date%'
29+ ''')
30+
31+ for update in cr.fetchall():
32+ rec_number = False
33+ try:
34+ rec_number = eval(update[1])
35+ except:
36+ self._logger.warn('Unable to parse values, sdref: %s' % update[0])
37+
38+ if rec_number:
39+ trigger_obj.create(cr, uid, {'name': 'trigger_rec', 'destination': update[2] , 'args': rec_number[0], 'local': True})
40+
41+ return True
42+
43 # UF15.1
44 def us_6930_gen_unreconcile(self, cr, uid, *a, **b):
45 # generate updates to delete reconcile done after UF15.0
46@@ -3544,6 +3565,38 @@
47
48 communication_config()
49
50+class sync_tigger_something_target(osv.osv):
51+ _name = 'sync.trigger.something.target'
52+
53+ _columns = {
54+ 'name': fields.char('Name', size=256, select=1),
55+ 'destination': fields.char('Destination', size=256, select=1),
56+ 'args': fields.text('Args', select=1),
57+ 'local': fields.boolean('Generated on the instance'),
58+ }
59+
60+ _defaults = {
61+ 'local': False,
62+ }
63+ def create(self, cr, uid, vals, context=None):
64+ if context is None:
65+ context = {}
66+ if context.get('sync_update_execution') and vals.get('name') == 'trigger_rec':
67+ current_instance = self.pool.get('res.users').browse(cr, uid, uid, fields_to_fetch=['company_id']).company_id.instance_id
68+ if current_instance.instance == vals.get('destination'):
69+ # coordo retrieves updates targeted to project
70+ rec_obj = self.pool.get('account.move.reconcile')
71+ # check if this rec num was already requested by an instance
72+ if not self.search(cr, uid, [('name', '=', 'trigger_rec'), ('args', '=', vals['args']), ('local', '=', False)], context=context):
73+ rec_ids = rec_obj.search(cr, uid, [('name', '=', vals['args'])], context=context)
74+ if rec_ids:
75+ cr.execute('''update account_move_reconcile set action_date=create_date where id in %s''', (tuple(rec_ids),))
76+ cr.execute('''update ir_model_data set last_modification=NOW(), touched='[''name'']' where model='account.move.reconcile' and res_id in %s ''', (tuple(rec_ids),))
77+
78+ return super(sync_tigger_something_target, self).create(cr, uid, vals, context)
79+
80+sync_tigger_something_target()
81+
82 class sync_tigger_something(osv.osv):
83 _name = 'sync.trigger.something'
84
85
86=== modified file 'bin/addons/msf_sync_data_server/data/sync_server.sync_rule.csv'
87--- bin/addons/msf_sync_data_server/data/sync_server.sync_rule.csv 2019-12-27 12:31:18 +0000
88+++ bin/addons/msf_sync_data_server/data/sync_server.sync_rule.csv 2020-01-17 13:26:16 +0000
89@@ -1,5 +1,6 @@
90 id,active,applies_to_type,can_delete,master_data,direction_usb,direction,domain,included_fields,type_id,model_id,owner_field,name,status,forced_values,sequence_number
91 msf_sync_data_server.trigger_something_up,TRUE,TRUE,FALSE,TRUE,cp_to_rw,Up,"[]","['name', 'args']",OC,sync.trigger.something.up,,Trigger Something Up,Valid,,10
92+msf_sync_data_server.trigger_something_target,TRUE,TRUE,FALSE,TRUE,bidirectional,Bidirectional-Private,"[]","['name', 'args', 'destination']",OC,sync.trigger.something.target,destination,Trigger Something Target,Valid,,15
93 msf_sync_data_server.analytic_account,TRUE,TRUE,FALSE,TRUE,bidirectional,Down,"[('category' , 'in' , ['FREE1', 'FREE2', 'DEST'])]","['category', 'code', 'date', 'date_start', 'description', 'name', 'type']",OC,account.analytic.account,,Analytic Accounts (Free 1 & 2 & Destination),Valid,,100
94 msf_sync_data_server.cost_center_hq,TRUE,TRUE,FALSE,TRUE,bidirectional,Down,"[('category' , '=' , 'OC'), ('parent_id', '=', '')]","['category', 'code', 'date', 'date_start', 'description', 'name', 'type']",OC,account.analytic.account,,Cost Center (HQ),Valid,,101
95 msf_sync_data_server.cost_center,TRUE,TRUE,TRUE,TRUE,bidirectional,Bidirectional-Private,"[('category' , '=' , 'OC'), ('parent_id', '!=', ''), ('code', '!=', 'cc-intermission')]","['category', 'code', 'date', 'date_start', 'description', 'name', 'type']",OC,account.analytic.account,category,Cost Center,Valid,,102
96
97=== modified file 'bin/addons/sync_common/common.py'
98--- bin/addons/sync_common/common.py 2019-06-14 14:52:08 +0000
99+++ bin/addons/sync_common/common.py 2020-01-17 13:26:16 +0000
100@@ -145,6 +145,7 @@
101 'sync.sale.order.line.split',
102 'sync.trigger.something',
103 'sync.trigger.something.up',
104+ 'sync.trigger.something.target',
105 'sync.version.instance.monitor',
106 'tender',
107 'tender.line',

Subscribers

People subscribed via source and target branches