-
Notifications
You must be signed in to change notification settings - Fork 4
/
06_update_partner_owned_share.py
59 lines (46 loc) · 1.74 KB
/
06_update_partner_owned_share.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#! /usr/bin/env python
# -*- encoding: utf-8 -*-
'''
Ticket S#12994: Member Refactoring
Content:
- Update partner owned shares
'''
from cfg_secret_configuration import odoo_configuration_user
import erppeek
import sys
###############################################################################
# Odoo Connection
###############################################################################
def init_openerp(url, login, password, database):
openerp = erppeek.Client(url)
uid = openerp.login(login, password=password, database=database)
user = openerp.ResUsers.browse(uid)
tz = user.tz
return openerp, uid, tz
openerp, uid, tz = init_openerp(
odoo_configuration_user['url'],
odoo_configuration_user['login'],
odoo_configuration_user['password'],
odoo_configuration_user['database'])
###############################################################################
# Script
###############################################################################
def update_partner_owned_share():
'''
@Function run by erppeek to update data for partner owned shares
'''
print ">>>>>>> START UPDATING PARTNER OWNED SHARES >>>>>>>>>>"
# Search for all invoice with fundraising_category_id set
invoices = openerp.AccountInvoice.browse(
[('fundraising_category_id', '!=', False),
('partner_owned_share_id', '=', False)])
total_inv = len(invoices)
counter = 0
print ">>>> Number of Invoices found: %d" % total_inv
for invoice in invoices:
invoice.assign_ownshare_to_invoice()
counter += 1
sys.stdout.write("\rCompleted: %d / %d" % (counter, total_inv))
sys.stdout.flush()
print "\n>>>>>>> DONE >>>>>>>>>>"
update_partner_owned_share()