~unifield-team/unifield-wm/us-826

« back to all changes in this revision

Viewing changes to analytic_distribution/destination_tools.py

  • Committer: Olivier DOSSMANN
  • Date: 2014-03-07 15:05:30 UTC
  • mto: This revision was merged to the branch mainline in revision 2033.
  • Revision ID: od@tempo-consulting.fr-20140307150530-xoxv9tz0a3ii9mjp
REF-38 [DEL] analytic_distribution_invoice module

  * move elements from analytic_distribution_invoice to account_override AND register_accounting
  * delete useless remaining elements
  * delete the module analytic_distribution_invoice

Show diffs side-by-side

added added

removed removed

Lines of Context:
74
74
    def __init__(self, obj, rel, id1, id2, string='unknown', limit=None, **args):
75
75
        super(many2many_notlazy, self).__init__(obj, rel, id1, id2, string, limit, **args)
76
76
 
77
 
    def set(self, cr, obj, id, name, values, user=None, context=None):
 
77
    def set(self, cr, obj, m_id, name, values, user=None, context=None):
78
78
        if context is None:
79
79
            context = {}
80
80
        if not values:
90
90
                    d1 = ' and ' + ' and '.join(d1)
91
91
                else:
92
92
                    d1 = ''
93
 
                args = [id, id]+d2
 
93
                args = [m_id, m_id]+d2
94
94
                if not act[2]:
95
95
                    args.append((0,))
96
96
                else:
106
106
                    cr.execute('delete from '+self._rel+' where '+self._id1+'=%s AND '+self._id2+' IN (SELECT '+self._rel+'.'+self._id2+' FROM '+self._rel+', '+','.join(tables)+' WHERE '+self._rel+'.'+self._id1+'=%s AND '+self._rel+'.'+self._id2+' = '+obj._table+'.id '+ d1 +' and '+self._rel+'.'+self._id2+' not in %s)', args)
107
107
 
108
108
 
109
 
                cr.execute('select '+self._id2+' from '+self._rel+' where '+self._id1+'=%s', [id, ])
 
109
                cr.execute('select '+self._id2+' from '+self._rel+' where '+self._id1+'=%s', [m_id, ])
110
110
                existing = [x[0] for x in cr.fetchall()]
111
111
 
112
112
                for act_nbr in act[2]:
113
113
                    if act_nbr not in existing:
114
114
                        if self._rel == 'account_destination_link':
115
115
                            link_obj = pooler.get_pool(cr.dbname).get('account.destination.link')
116
 
                            link_obj.create(cr, user, {self._id1: id, self._id2: act_nbr})
 
116
                            link_obj.create(cr, user, {self._id1: m_id, self._id2: act_nbr})
117
117
                        else:
118
 
                            cr.execute('insert into '+self._rel+' ('+self._id1+','+self._id2+') values (%s, %s)', (id, act_nbr))
 
118
                            cr.execute('insert into '+self._rel+' ('+self._id1+','+self._id2+') values (%s, %s)', (m_id, act_nbr))
119
119
 
120
120
            else:
121
121
                newargs.append(act)
122
122
        if newargs:
123
 
            return super(many2many_notlazy, self).set(cr, obj, id, name, newargs, user=user, context=context)
124
 
 
125
 
 
 
123
            return super(many2many_notlazy, self).set(cr, obj, m_id, name, newargs, user=user, context=context)
 
124
 
 
125
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
 
 
b'\\ No newline at end of file'