[[ repeatIn(get_lines(data), 'a') ]]
[[ (a.get('level') <> 0) or removeParentNode('tr') ]]
[[ setTag('tr','tr',{'style': 'Table'+str(min(3,'level' in a and a.get('level') or 1))}) ]]
- [[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_name'}) ]] [[ a.get('name') ]]
- [[ a.get('level') == 4 or removeParentNode('td') ]][[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance'))]] [[company.currency_id.symbol]]
- [[ a.get('level') <> 4 or removeParentNode('td') ]][[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance'))]] [[company.currency_id.symbol]]
+ [[ (a.get('account_type') =='view' and a.get('level') >= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a.get('level')))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a.get('level')))+'_name'}) ]][[ a.get('name') ]]
+ [[ (a.get('level') <>2) or removeParentNode('td') ]][[ (a.get('account_type') =='view' and a.get('level') >= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.get('level')))+'_balance'}) ]][[ formatLang(a.get('balance'), currency_obj = company.currency_id) ]]
+ [[ a.get('level') == 2 or removeParentNode('td') ]][[ formatLang(a.get('balance'), currency_obj = company.currency_id) ]]
@@ -258,11 +256,11 @@
[[ repeatIn(get_lines(data), 'a') ]]
[[ (a.get('level') <> 0) or removeParentNode('tr') ]]
[[ setTag('tr','tr',{'style': 'Table'+str(min(3,'level' in a and a.get('level') or 1))}) ]]
- [[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_name'}) ]] [[ a.get('name') ]]
- [[ a.get('level') == 4 or removeParentNode('td') ]][[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance'))]] [[company.currency_id.symbol]]
- [[ a.get('level') <> 4 or removeParentNode('td') ]][[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance'))]] [[company.currency_id.symbol]]
- [[ a.get('level') == 4 or removeParentNode('td') ]][[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance_cmp'))]] [[company.currency_id.symbol]]
- [[ a.get('level') <> 4 or removeParentNode('td') ]][[ setTag('para','para',{'style': 'terp_level_'+str(min(6,a['level']))+'_balance'}) ]][[ formatLang(a.get('balance_cmp'))]] [[company.currency_id.symbol]]
+ [[ (a.get('account_type') =='view' and a.get('level') >= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a.get('level')))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a.get('level')))+'_name'}) ]][[ a.get('name') ]]
+ [[ (a.get('level') <>2) or removeParentNode('td') ]][[ (a.get('account_type') =='view' and a.get('level') >= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.get('level')))+'_balance'}) ]][[ formatLang(a.get('balance'), currency_obj = company.currency_id) ]]
+ [[ a.get('level') == 2 or removeParentNode('td') ]][[ formatLang(a.get('balance'), currency_obj = company.currency_id) ]]
+ [[ (a.get('level') <>2) or removeParentNode('td') ]][[ (a.get('account_type') =='view' and a.get('level') >= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.get('level')))+'_balance'}) ]][[ formatLang(a.get('balance_cmp'), currency_obj = company.currency_id) ]]
+ [[ a.get('level') == 2 or removeParentNode('td') ]][[ formatLang(a.get('balance_cmp'), currency_obj = company.currency_id) ]]
From bf578591fe8c61555cb0ed6fe771088fc8c80dd7 Mon Sep 17 00:00:00 2001
From: "Ujjvala Collins (OpenERP)"
Date: Wed, 30 Nov 2011 15:55:54 +0530
Subject: [PATCH 016/135] [ADD] account: Added demo data for financial report
object.
bzr revid: uco@tinyerp.com-20111130102554-9eujlahybnh2n8rm
---
addons/account/demo/account_minimal.xml | 42 +++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/addons/account/demo/account_minimal.xml b/addons/account/demo/account_minimal.xml
index 50b597c8e49..d6cc53a1542 100644
--- a/addons/account/demo/account_minimal.xml
+++ b/addons/account/demo/account_minimal.xml
@@ -471,5 +471,47 @@
+
+
+
+ Balance Sheet
+ sum
+
+
+ Assets
+
+
+ detail_with_hierarchy
+ account_type
+
+
+ Liability
+
+
+ detail_with_hierarchy
+ account_type
+
+
+
+ Profit and Loss
+ sum
+
+
+ Income
+
+
+ detail_with_hierarchy
+ account_type
+
+
+ Expense
+
+
+ detail_with_hierarchy
+ account_type
+
+
From 0a288529794a5f14fd0ed01e549140d3385e5a5b Mon Sep 17 00:00:00 2001
From: "Harry (OpenERP)"
Date: Wed, 30 Nov 2011 17:06:52 +0530
Subject: [PATCH 017/135] [IMP] marketing_campaign: improve yml to test process
of campaign segmentation, add new demo data for partner channel in
marketing_campaign module
bzr revid: hmo@tinyerp.com-20111130113652-uqxjdy7icybq2h4g
---
addons/marketing_campaign/__openerp__.py | 5 +
.../marketing_campaign_demo.xml | 91 +++++++++++++++++++
.../test/marketing_campaign.yml | 60 ++++++++++++
.../test/marketing_campaign_demo.yml | 5 +
.../test/ui/workitem_report.yml | 0
.../__openerp__.py | 5 -
.../marketing_campaign_demo.xml | 36 +-------
.../test/process/marketing_campaign.yml | 57 ------------
.../test/ui/demo_data.yml | 5 -
9 files changed, 163 insertions(+), 101 deletions(-)
create mode 100644 addons/marketing_campaign/marketing_campaign_demo.xml
create mode 100644 addons/marketing_campaign/test/marketing_campaign.yml
create mode 100644 addons/marketing_campaign/test/marketing_campaign_demo.yml
rename addons/{marketing_campaign_crm_demo => marketing_campaign}/test/ui/workitem_report.yml (100%)
delete mode 100644 addons/marketing_campaign_crm_demo/test/process/marketing_campaign.yml
delete mode 100644 addons/marketing_campaign_crm_demo/test/ui/demo_data.yml
diff --git a/addons/marketing_campaign/__openerp__.py b/addons/marketing_campaign/__openerp__.py
index 44a2f1e30bd..d9052239038 100644
--- a/addons/marketing_campaign/__openerp__.py
+++ b/addons/marketing_campaign/__openerp__.py
@@ -58,7 +58,12 @@ Note: If you need demo data, you can install the marketing_campaign_crm_demo mod
"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',
diff --git a/addons/marketing_campaign/marketing_campaign_demo.xml b/addons/marketing_campaign/marketing_campaign_demo.xml
new file mode 100644
index 00000000000..f49b918aa2c
--- /dev/null
+++ b/addons/marketing_campaign/marketing_campaign_demo.xml
@@ -0,0 +1,91 @@
+
+
+
+
+ Dummy Action
+
+ dummy
+
+
+
+
+
+
+
+
+ Welcome in OpenERP Family!
+ info@tinyerp.com
+
+ Hello, We are very happy to send Welcome message.
+
+
+ Cogretulation! You become now our Silver Partner.
+ info@tinyerp.com
+
+ Hello,We are happy to announce that you now become our Silver Partner.
+ Regards,OpenERP Team,
+
+
+
+ Congratulation! You become our Gold Partner.
+ info@tinyerp.com
+
+ Hello, We are happy to announce that you become our Gold Partner.
+ Regards,OpenERP Team,
+
+
+
+
+
+
+ OpenERP Partner Channel
+
+ active
+
+
+
+
+
+ New Partner
+
+
+
+
+
+
+ Silver Partner
+
+
+
+
+
+
+ Gold Partner
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ OpenERP Partner
+ create_date
+
+ draft
+
+
+
+
diff --git a/addons/marketing_campaign/test/marketing_campaign.yml b/addons/marketing_campaign/test/marketing_campaign.yml
new file mode 100644
index 00000000000..502f9e892ec
--- /dev/null
+++ b/addons/marketing_campaign/test/marketing_campaign.yml
@@ -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'
+
diff --git a/addons/marketing_campaign/test/marketing_campaign_demo.yml b/addons/marketing_campaign/test/marketing_campaign_demo.yml
new file mode 100644
index 00000000000..c727132bd47
--- /dev/null
+++ b/addons/marketing_campaign/test/marketing_campaign_demo.yml
@@ -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
diff --git a/addons/marketing_campaign_crm_demo/test/ui/workitem_report.yml b/addons/marketing_campaign/test/ui/workitem_report.yml
similarity index 100%
rename from addons/marketing_campaign_crm_demo/test/ui/workitem_report.yml
rename to addons/marketing_campaign/test/ui/workitem_report.yml
diff --git a/addons/marketing_campaign_crm_demo/__openerp__.py b/addons/marketing_campaign_crm_demo/__openerp__.py
index 444758c8ccb..4841cc1a2e8 100644
--- a/addons/marketing_campaign_crm_demo/__openerp__.py
+++ b/addons/marketing_campaign_crm_demo/__openerp__.py
@@ -40,11 +40,6 @@ Creates demo data like leads, campaigns and segments for the module marketing_ca
'demo_xml': [
'marketing_campaign_demo.xml',
],
- 'test': [
- 'test/process/marketing_campaign.yml',
- 'test/ui/demo_data.yml',
- 'test/ui/workitem_report.yml'
- ],
'installable': True,
'active': False,
'certificate' : '001005497972871352957',
diff --git a/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml b/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml
index 90db37f2176..7b45c959035 100644
--- a/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml
+++ b/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml
@@ -36,135 +36,103 @@
Thanks for showing interest in OpenERP
info@tinyerp.com
-
-
Hello,Thanks for generous interest you have shown in the openERP.Regards,OpenERP Team,
- mako
For OpenERP OnDemand Free Trial 2010
- crm.lead
Propose to subscribe to the OpenERP Discovery Day on May 2010
info@tinyerp.com
-
-
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,
- mako
For OpenERP Discovery Day on May 2010
- crm.lead
-
+
Thanks for subscribing to the OpenERP Discovery Day
info@tinyerp.com
-
-
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,
- mako
For OpenERP Discovery Day
- crm.lead
-
+
Thanks for buying the OpenERP book
info@tinyerp.com
-
-
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,
- mako
For OpenERP book
- crm.lead
Propose a free technical training to Gold partners
info@tinyerp.com
-
-
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,
- mako
For technical training to Gold partners
- crm.lead
Propose paid training to Silver partners
info@tinyerp.com
-
-
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,
- mako
For training to Silver partners
- crm.lead
Propose gold partnership to silver partners
info@tinyerp.com
-
-
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,
- mako
For gold partnership to silver partners
- crm.lead
Thanks for subscribing to technical training
info@tinyerp.com
-
-
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,
- mako
For subscribing to technical training
- crm.lead
diff --git a/addons/marketing_campaign_crm_demo/test/process/marketing_campaign.yml b/addons/marketing_campaign_crm_demo/test/process/marketing_campaign.yml
deleted file mode 100644
index 5d21d8c901a..00000000000
--- a/addons/marketing_campaign_crm_demo/test/process/marketing_campaign.yml
+++ /dev/null
@@ -1,57 +0,0 @@
--
- I created marketing campaing with specific activity(offers) to reach our partners
- and communication via email according to campaing activity.
- Now I start this compaign.
--
- !workflow {model: marketing.campaign, action: state_running_set, ref: marketing_campaign_openerpondemandfreetrial0}
--
- I check the campaign on Running mode.
--
- !assert {model: marketing.campaign, id: marketing_campaign_openerpondemandfreetrial0}:
- - state == 'running'
--
- This campaign is only for Belgium partner of leads, so I assinged this Campaign
- to right segment(Only for Belgium Leads), after that I start this segment.
--
- !workflow {model: marketing.campaign.segment, action: state_running_set, ref: marketing_campaign_segment_bosslistusassociationslist0}
--
- I check the segment on Running mode.
--
- !assert {model: marketing.campaign.segment, id: marketing_campaign_segment_bosslistusassociationslist0}:
- - 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_segment_bosslistusassociationslist0")])
--
- I process the event of belgium partner which is particiapated with our campaing activity,
- after processing the event, automatic email send to that partner with specific message and check
- the status of event.
--
- !python {model: marketing.campaign.workitem}: |
- ids = self.search(cr, uid, [('res_id', '=', ref('crm.crm_case_ericdubois4')), ('segment_id', '=', ref('marketing_campaign_segment_bosslistusassociationslist0')),
- ('campaign_id', '=', ref('marketing_campaign_openerpondemandfreetrial0')), ('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"
--
- After completion of all activity i close segmentation first.
--
- !workflow {model: marketing.campaign.segment, action: state_done_set, ref: marketing_campaign_segment_bosslistusassociationslist0}
--
- I check the segmentation is done.
--
- !assert {model: marketing.campaign.segment, id: marketing_campaign_segment_bosslistusassociationslist0}:
- - state == 'done'
--
- I close this campaing.
--
- !workflow {model: marketing.campaign.segment, action: state_done_set, ref: marketing_campaign_openerpondemandfreetrial0}
--
- I check the campaing is done.
--
- !assert {model: marketing.campaign.segment, id: marketing_campaign_openerpondemandfreetrial0}:
- - state == 'done'
-
\ No newline at end of file
diff --git a/addons/marketing_campaign_crm_demo/test/ui/demo_data.yml b/addons/marketing_campaign_crm_demo/test/ui/demo_data.yml
deleted file mode 100644
index 98ba4081300..00000000000
--- a/addons/marketing_campaign_crm_demo/test/ui/demo_data.yml
+++ /dev/null
@@ -1,5 +0,0 @@
--
- I create segment record to call onchange event.
--
- !record {model: marketing.campaign.segment, id: marketing_campaign_segment_bosslistusassociationslist0}:
- campaign_id: marketing_campaign_openerpondemandfreetrial0
From 0920c044fd6cac886349225876fc180eaee2d00f Mon Sep 17 00:00:00 2001
From: "Ujjvala Collins (OpenERP)"
Date: Thu, 1 Dec 2011 15:34:20 +0530
Subject: [PATCH 018/135] [IMP] account: * Replaced the current selection field
(P&L/BS Category on account type) by a functional field that will simulate
the old behavior (for the user it will be the same) but that will read and
write into the m2m field between financial reports and account types
bzr revid: uco@tinyerp.com-20111201100420-jsw584v4lemuzhca
---
addons/account/account.py | 33 +++++++++++++++++-----
addons/account/demo/account_minimal.xml | 37 +++++++++++++++++++------
2 files changed, 55 insertions(+), 15 deletions(-)
diff --git a/addons/account/account.py b/addons/account/account.py
index 8586105c991..3a3277eecb1 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -130,6 +130,21 @@ account_payment_term_line()
class account_account_type(osv.osv):
_name = "account.account.type"
_description = "Account Type"
+
+ def _get_report_type(self, cr, uid, context=None):
+ report_obj = self.pool.get('account.financial.report')
+ report_ids = report_obj.search(cr, uid, [], context=context)
+ report_type = [('none','/')]
+ for report in report_obj.browse(cr, uid, report_ids, context=context):
+ type = report.account_type_ids and report.account_type_ids[0] or False
+ if type:
+ if type.code in ('income', 'expense'):
+ report_name = 'Profit & Loss ('+type.code+' accounts)'
+ elif type.code in ('asset','liability'):
+ report_name = 'Balance Sheet ('+type.code+' accounts)'
+ report_type.append((type.code, report_name))
+ return report_type
+
_columns = {
'name': fields.char('Account Type', size=64, required=True),
'code': fields.char('Code', size=32, required=True),
@@ -140,13 +155,7 @@ class account_account_type(osv.osv):
'Detail' will copy each existing journal item of the previous year, even the reconciled ones.
'Unreconciled' will copy only the journal items that were unreconciled on the first day of the new fiscal year."""),
'sign': fields.selection([(-1, 'Reverse balance sign'), (1, 'Preserve balance sign')], 'Sign on Reports', required=True, help='For accounts that are typically more debited than credited and that you would like to print as negative amounts in your reports, you should reverse the sign of the balance; e.g.: Expense account. The same applies for accounts that are typically more credited than debited and that you would like to print as positive amounts in your reports; e.g.: Income account.'),
- 'report_type':fields.selection([
- ('none','/'),
- ('income','Profit & Loss (Income Accounts)'),
- ('expense','Profit & Loss (Expense Accounts)'),
- ('asset','Balance Sheet (Asset Accounts)'),
- ('liability','Balance Sheet (Liability Accounts)')
- ],'P&L / BS Category', select=True, readonly=False, help="This field is used to generate legal reports: profit and loss, balance sheet.", required=True),
+ 'report_type': fields.selection(_get_report_type, 'P&L / BS Category', help="This field is used to generate legal reports: profit and loss, balance sheet.", required=True),
'note': fields.text('Description'),
}
_defaults = {
@@ -156,6 +165,16 @@ class account_account_type(osv.osv):
}
_order = "code"
+ def write(self, cr, uid, ids, vals, context=None):
+ report_obj = self.pool.get('account.financial.report')
+ if vals.get('report_type'):
+ type_ids = self.search(cr, uid, [('code','=',vals['report_type'])], context=context)
+ report_ids = report_obj.search(cr, uid, [('account_type_ids','in',ids)])
+ for report in report_obj.browse(cr, uid, report_ids, context=context):
+ type_ids += [x.id for x in report.account_type_ids if x.id not in type_ids]
+ report_obj.write(cr, uid, [report.id], {'account_type_ids': [(6,0,type_ids)]}, context=context)
+ return super(account_account_type, self).write(cr, uid, ids, vals, context)
+
account_account_type()
def _code_get(self, cr, uid, context=None):
diff --git a/addons/account/demo/account_minimal.xml b/addons/account/demo/account_minimal.xml
index d6cc53a1542..f11a72ce7b4 100644
--- a/addons/account/demo/account_minimal.xml
+++ b/addons/account/demo/account_minimal.xml
@@ -13,49 +13,41 @@
Asset
asset
- asset
balance
Receivable
receivable
- asset
unreconciled
Liability
liability
- liability
balance
Payable
payable
- liability
unreconciled
Income
income
- income
none
Expense
expense
- expense
none
Equity
equity
- liability
balance
Cash
cash
- asset
balance
@@ -513,5 +505,34 @@
account_type
+
+
+
+ asset
+
+
+ liability
+
+
+ income
+
+
+ expense
+
+
+ asset
+
+
+ liability
+
+
+ liability
+
+
+ asset
+
+
From be08728a439efcb14da1ae1354bcd7d1c0651173 Mon Sep 17 00:00:00 2001
From: "Ujjvala Collins (OpenERP)"
Date: Thu, 1 Dec 2011 17:25:21 +0530
Subject: [PATCH 019/135] [IMP] account: * Moved 'sign' field from account type
to financial report object. * Changed and added demo data as per the new
requirements. * Replaced the 'Balance Sheet' and 'Profit and Loss' reports
with Financial report.
bzr revid: uco@tinyerp.com-20111201115521-g8npi3igpq8dvthu
---
addons/account/__openerp__.py | 4 +-
addons/account/account.py | 4 +-
addons/account/account_view.xml | 2 +-
addons/account/configurable_account_chart.xml | 105 +++++++++++++++---
addons/account/report/__init__.py | 6 +-
.../report/account_financial_report.py | 2 +-
addons/account/test/account_report.yml | 26 +----
addons/account/wizard/__init__.py | 4 +-
.../wizard/account_financial_report.py | 10 ++
.../wizard/account_financial_report_view.xml | 18 +++
10 files changed, 131 insertions(+), 50 deletions(-)
diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py
index c8d17c2cf9e..c4aa24cacb9 100644
--- a/addons/account/__openerp__.py
+++ b/addons/account/__openerp__.py
@@ -121,8 +121,8 @@ module named account_voucher.
'ir_sequence_view.xml',
'company_view.xml',
'board_account_view.xml',
- "wizard/account_report_profit_loss_view.xml",
- "wizard/account_report_balance_sheet_view.xml",
+ #"wizard/account_report_profit_loss_view.xml",
+ #"wizard/account_report_balance_sheet_view.xml",
"edi/invoice_action_data.xml",
"account_bank_view.xml",
"account_pre_install.yml"
diff --git a/addons/account/account.py b/addons/account/account.py
index 3a3277eecb1..1455c86aa33 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -154,13 +154,11 @@ class account_account_type(osv.osv):
'Balance' will generally be used for cash accounts.
'Detail' will copy each existing journal item of the previous year, even the reconciled ones.
'Unreconciled' will copy only the journal items that were unreconciled on the first day of the new fiscal year."""),
- 'sign': fields.selection([(-1, 'Reverse balance sign'), (1, 'Preserve balance sign')], 'Sign on Reports', required=True, help='For accounts that are typically more debited than credited and that you would like to print as negative amounts in your reports, you should reverse the sign of the balance; e.g.: Expense account. The same applies for accounts that are typically more credited than debited and that you would like to print as positive amounts in your reports; e.g.: Income account.'),
'report_type': fields.selection(_get_report_type, 'P&L / BS Category', help="This field is used to generate legal reports: profit and loss, balance sheet.", required=True),
'note': fields.text('Description'),
}
_defaults = {
'close_method': 'none',
- 'sign': 1,
'report_type': 'none',
}
_order = "code"
@@ -2789,11 +2787,13 @@ class account_financial_report(osv.osv):
], 'Display details'),
'account_report_id': fields.many2one('account.financial.report', 'Report Value'),
'account_type_ids': fields.many2many('account.account.type', 'account_account_financial_report_type', 'report_id', 'account_type_id', 'Account Types'),
+ 'sign': fields.selection([(-1, 'Reverse balance sign'), (1, 'Preserve balance sign')], 'Sign on Reports', required=True, help='For accounts that are typically more debited than credited and that you would like to print as negative amounts in your reports, you should reverse the sign of the balance; e.g.: Expense account. The same applies for accounts that are typically more credited than debited and that you would like to print as positive amounts in your reports; e.g.: Income account.'),
}
_defaults = {
'type': 'sum',
'display_detail': 'only_detail',
+ 'sign': 1,
}
account_financial_report()
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 28aacdbcec1..c3daf8d9c06 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -786,7 +786,6 @@
-
@@ -2767,6 +2766,7 @@ action = pool.get('res.config').next(cr, uid, [], context)
+
diff --git a/addons/account/configurable_account_chart.xml b/addons/account/configurable_account_chart.xml
index 0ac7a51405d..8486e2fb008 100644
--- a/addons/account/configurable_account_chart.xml
+++ b/addons/account/configurable_account_chart.xml
@@ -4,14 +4,12 @@
Receivable
receivable
- income
unreconciled
Payable
payable
- expense
unreconciled
@@ -24,86 +22,159 @@
Income View
view
- income
Expense View
expense
- expense
Asset View
asset
- asset
Liability View
liability
- liability
Income
income
- income
none
Expense
expense
- expense
none
Tax
tax
- expense
unreconciled
Cash
cash
- asset
balance
Liability
liability
- liability
balance
Asset
asset
- asset
balance
Equity
equity
- liability
balance
-
+
Bank
bank
- asset
balance
-
+
Check
check
- asset
balance
+
+
+ Balance Sheet
+ sum
+
+
+ Assets
+
+
+ detail_with_hierarchy
+ account_type
+
+
+ Liability
+
+
+ detail_with_hierarchy
+ account_type
+
+
+
+ Profit and Loss
+ sum
+
+
+ Income
+
+
+ detail_with_hierarchy
+ account_type
+
+
+ Expense
+
+
+ detail_with_hierarchy
+ account_type
+
+
+
+
+
+ asset
+
+
+ liability
+
+
+ income
+
+
+ expense
+
+
+ asset
+
+
+ liability
+
+
+ liability
+
+
+ asset
+
+
+ income
+
+
+ expense
+
+
+ asset
+
+
+ liability
+
+
+ expense
+
+
+ asset
+
+
+ asset
+
diff --git a/addons/account/report/__init__.py b/addons/account/report/__init__.py
index 90254c53bda..f7d82ffebce 100644
--- a/addons/account/report/__init__.py
+++ b/addons/account/report/__init__.py
@@ -33,13 +33,13 @@ import account_print_overdue
import account_aged_partner_balance
#import tax_report
import account_tax_report
-import account_balance_landscape
+#import account_balance_landscape
import account_invoice_report
import account_report
import account_entries_report
import account_analytic_entries_report
-import account_balance_sheet
-import account_profit_loss
+#import account_balance_sheet
+#import account_profit_loss
import account_treasury_report
import account_financial_report
diff --git a/addons/account/report/account_financial_report.py b/addons/account/report/account_financial_report.py
index 43fc2efb378..ab8f3f7cb6f 100644
--- a/addons/account/report/account_financial_report.py
+++ b/addons/account/report/account_financial_report.py
@@ -78,7 +78,7 @@ class report_account_common(report_sxw.rml_parse, common_report_header):
flag = False
vals = {
'name': account.code + ' ' + account.name,
- 'balance': account.balance != 0 and account.balance * account.user_type.sign or account.balance,
+ 'balance': account.balance != 0 and account.balance * report.sign or account.balance,
'type': 'account',
'level': 6,
'account_type': account.type,
diff --git a/addons/account/test/account_report.yml b/addons/account/test/account_report.yml
index 40ba7ea7127..c2797f274e7 100644
--- a/addons/account/test/account_report.yml
+++ b/addons/account/test/account_report.yml
@@ -37,24 +37,15 @@
data_dict = {'chart_account_id':ref('account.chart0')}
from tools import test_reports
test_reports.try_report_action(cr, uid, 'action_account_aged_balance_view',wiz_data=data_dict, context=ctx, our_module='account')
--
- Print the Account Balance Sheet in Horizontal mode
--
- !python {model: account.account}: |
- ctx={}
- ctx.update({'model': 'account.account','active_ids':[ref('account.chart0')]})
- data_dict = {'chart_account_id':ref('account.chart0'),'display_type': True}
- from tools import test_reports
- test_reports.try_report_action(cr, uid, 'action_account_bs_report',wiz_data=data_dict, context=ctx, our_module='account')
-
Print the Account Balance Sheet in Normal mode
-
!python {model: account.account}: |
ctx={}
ctx.update({'model': 'account.account','active_ids':[ref('account.chart0')]})
- data_dict = {'chart_account_id':ref('account.chart0'),'display_type': False}
+ data_dict = {'chart_account_id':ref('account.chart0'),'display_type': False, 'account_report_id': ref('account_financial_report_balancesheet0')}
from tools import test_reports
- test_reports.try_report_action(cr, uid, 'action_account_bs_report',wiz_data=data_dict, context=ctx, our_module='account')
+ test_reports.try_report_action(cr, uid, 'action_account_report',wiz_data=data_dict, context=ctx, our_module='account')
-
Print the Account Balance Report in Normal mode through the wizard - From Account Chart
-
@@ -147,18 +138,9 @@
!python {model: account.account}: |
ctx={}
ctx.update({'model': 'account.account','active_ids':[ref('account.chart0')]})
- data_dict = {'chart_account_id':ref('account.chart0'),'display_type': False,'target_move': 'all'}
+ data_dict = {'chart_account_id':ref('account.chart0'),'display_type': False,'target_move': 'all', 'account_report_id': ref('account_financial_report_balancesheet0')}
from tools import test_reports
- test_reports.try_report_action(cr, uid, 'action_account_pl_report',wiz_data=data_dict, context=ctx, our_module='account')
--
- Print the Profit-Loss Report in Horizontal Mode
--
- !python {model: account.account}: |
- ctx={}
- ctx.update({'model': 'account.account','active_ids':[ref('account.chart0')]})
- data_dict = {'chart_account_id':ref('account.chart0'),'display_type': True,'target_move': 'all'}
- from tools import test_reports
- test_reports.try_report_action(cr, uid, 'action_account_pl_report',wiz_data=data_dict, context=ctx, our_module='account')
+ test_reports.try_report_action(cr, uid, 'action_account_report',wiz_data=data_dict, context=ctx, our_module='account')
-
Print the Analytic Balance Report through the wizard
-
diff --git a/addons/account/wizard/__init__.py b/addons/account/wizard/__init__.py
index 88ae17f3c7b..bef2c78ac01 100644
--- a/addons/account/wizard/__init__.py
+++ b/addons/account/wizard/__init__.py
@@ -64,8 +64,8 @@ import account_report_account_balance
import account_change_currency
-import account_report_balance_sheet
-import account_report_profit_loss
+#import account_report_balance_sheet
+#import account_report_profit_loss
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_financial_report.py b/addons/account/wizard/account_financial_report.py
index de9cae3a00c..92c623a9524 100644
--- a/addons/account/wizard/account_financial_report.py
+++ b/addons/account/wizard/account_financial_report.py
@@ -38,9 +38,19 @@ class accounting_report(osv.osv_memory):
'date_to_cmp': fields.date("End Date"),
}
+ def _get_account_report(self, cr, uid, context=None):
+ menu_obj = self.pool.get('ir.ui.menu')
+ report_obj = self.pool.get('account.financial.report')
+ report_ids = []
+ if context.get('active_id'):
+ menu = menu_obj.browse(cr, uid, context.get('active_id')).name
+ report_ids = report_obj.search(cr, uid, [('name','ilike',menu)])
+ return report_ids and report_ids[0] or False
+
_defaults = {
'filter_cmp': 'filter_no',
'target_move': 'posted',
+ 'account_report_id': _get_account_report,
}
def _build_comparison_context(self, cr, uid, ids, data, context=None):
diff --git a/addons/account/wizard/account_financial_report_view.xml b/addons/account/wizard/account_financial_report_view.xml
index 1472da4ba87..4be6fb5e95c 100644
--- a/addons/account/wizard/account_financial_report_view.xml
+++ b/addons/account/wizard/account_financial_report_view.xml
@@ -40,6 +40,24 @@
new
+
+
+
+
+
+
Date: Thu, 1 Dec 2011 18:28:04 +0530
Subject: [PATCH 020/135] [FIX] project: fixed exception raised on task by done
button while sending a mail
lp bug: https://launchpad.net/bugs/898561 fixed
bzr revid: mtr@tinyerp.com-20111201125804-z3d24qzpleb4xn41
---
addons/project/project_data.xml | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/addons/project/project_data.xml b/addons/project/project_data.xml
index a3bfe9be673..b7b59911fa4 100644
--- a/addons/project/project_data.xml
+++ b/addons/project/project_data.xml
@@ -1,6 +1,18 @@
+
+
+
+ Project
+ project.project
+
+
+
+ Project task
+ project.task
+
+
Projects
From 593f5f571bbc49673975afc405e9345ef3457b92 Mon Sep 17 00:00:00 2001
From: "Jagdish Panchal (Open ERP)"
Date: Fri, 2 Dec 2011 12:34:58 +0530
Subject: [PATCH 021/135] [IMP] project_issue: clean the test cases
bzr revid: jap@tinyerp.com-20111202070458-0k5erfurcx46r243
---
addons/project_issue/__openerp__.py | 8 ++-
addons/project_issue/project_issue.py | 7 +--
addons/project_issue/test/cancel_issue.yml | 60 +++++++++++++++++++
.../project_issue/test/draft2open2close.yml | 57 ++++++++++++++++++
addons/project_issue/test/issue.eml | 45 ++++++++++++++
addons/project_issue/test/issue_demo.yml | 8 +++
addons/project_issue/test/subscribe_issue.yml | 17 ++++++
7 files changed, 196 insertions(+), 6 deletions(-)
create mode 100644 addons/project_issue/test/cancel_issue.yml
create mode 100644 addons/project_issue/test/draft2open2close.yml
create mode 100644 addons/project_issue/test/issue.eml
create mode 100644 addons/project_issue/test/issue_demo.yml
create mode 100644 addons/project_issue/test/subscribe_issue.yml
diff --git a/addons/project_issue/__openerp__.py b/addons/project_issue/__openerp__.py
index e77499df3d0..f57b8233878 100644
--- a/addons/project_issue/__openerp__.py
+++ b/addons/project_issue/__openerp__.py
@@ -54,8 +54,12 @@ and decide on their status as they evolve.
],
'demo_xml': ['project_issue_demo.xml'],
'test': [
- 'test/convert_issue_to_task.yml',
- 'test/test_project_issue_states.yml'
+ #'test/convert_issue_to_task.yml',
+ #'test/test_project_issue_states.yml'
+ 'test/subscribe_issue.yml',
+ 'test/draft2open2close.yml',
+ 'test/cancel_issue.yml',
+ 'test/issue_demo.yml'
],
'installable': True,
'active': False,
diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py
index b83efbc4996..88319e486ef 100644
--- a/addons/project_issue/project_issue.py
+++ b/addons/project_issue/project_issue.py
@@ -294,7 +294,7 @@ class project_issue(crm.crm_case, osv.osv):
data_obj = self.pool.get('ir.model.data')
task_obj = self.pool.get('project.task')
-
+
if context is None:
context = {}
@@ -306,7 +306,7 @@ class project_issue(crm.crm_case, osv.osv):
id2 = data_obj.browse(cr, uid, id2, context=context).res_id
if id3:
id3 = data_obj.browse(cr, uid, id3, context=context).res_id
-
+
for bug in case_obj.browse(cr, uid, ids, context=context):
new_task_id = task_obj.create(cr, uid, {
'name': bug.name,
@@ -314,7 +314,7 @@ class project_issue(crm.crm_case, osv.osv):
'description':bug.description,
'date': bug.date,
'project_id': bug.project_id.id,
- 'priority': bug.priority,
+ 'priority': tools.ustr(int(bug.priority) - 1),
'user_id': bug.user_id.id,
'planned_hours': 0.0,
})
@@ -324,7 +324,6 @@ class project_issue(crm.crm_case, osv.osv):
'state':'pending'
}
case_obj.write(cr, uid, [bug.id], vals)
-
return {
'name': _('Tasks'),
'view_type': 'form',
diff --git a/addons/project_issue/test/cancel_issue.yml b/addons/project_issue/test/cancel_issue.yml
new file mode 100644
index 00000000000..ff05d923ed0
--- /dev/null
+++ b/addons/project_issue/test/cancel_issue.yml
@@ -0,0 +1,60 @@
+-
+ In order to test process of issue tracking in OpenERP, I cancel the unqualified Issue.
+-
+ !python {model: project.issue}: |
+ self.case_cancel(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I check the issue is in cancel state.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue is in cancel state}:
+ - state == 'cancel'
+-
+ I re-open the Issue.
+-
+ !python {model: project.issue}: |
+ self.case_open(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I check the state of issue after open it.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue is in open state}:
+ - state == 'open'
+-
+ I put the issue in pending state.
+-
+ !python {model: project.issue}: |
+ self.case_pending(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I check the state of issue after put it in pending state.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue should be in pending state}:
+ - state == 'pending'
+-
+ I cancel the issue is in pending state.
+-
+ !python {model: project.issue}: |
+ self.case_cancel(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I check the issue is in cancel state.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue is in cancel state}:
+ - state == 'cancel'
+-
+ I close Issue.
+-
+ !python {model: project.issue}: |
+ self.case_close(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I check state of Issue after close.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue is in done state}:
+ - state == 'done'
+-
+ I cancel the issue is in done state.
+-
+ !python {model: project.issue}: |
+ self.case_cancel(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I check the issue is in cancel state.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue is in cancel state}:
+ - state == 'cancel'
\ No newline at end of file
diff --git a/addons/project_issue/test/draft2open2close.yml b/addons/project_issue/test/draft2open2close.yml
new file mode 100644
index 00000000000..4614bed3997
--- /dev/null
+++ b/addons/project_issue/test/draft2open2close.yml
@@ -0,0 +1,57 @@
+-
+ In order to test process of issue tracking in OpenERP, I Open the Issue.
+-
+ !python {model: project.issue}: |
+ self.case_open(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I check state of Issue after opened it.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue should be in open state}:
+ - state == 'open'
+-
+ Now I put Issue in pending due to need more information.
+-
+ !python {model: project.issue}: |
+ self.case_pending(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I check state after put in pending.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue should be in pending state}:
+ - state == 'pending'
+-
+ I send mail to get more details.
+-
+ !python {model: mail.compose.message }: |
+ ctx = context.copy()
+ ctx.update({'active_model': 'project.issue', 'active_id': ref("crm_case_buginaccountsmodule0"), 'active_ids': [ref("crm_case_buginaccountsmodule0")]})
+ vals = self.default_get(cr, uid , [], context=ctx)
+ try:
+ new_id = self.create(cr, uid, {'email_to': 'Robert_Adersen@yahoo.com', 'subject': 'Regarding error in account module we nees more details'})
+ self.send_mail(cr, uid, [new_id], context=ctx)
+ except Exception, e:
+ pass
+-
+ After getting sufficient details, I re-open Issue from pending state.
+-
+ !python {model: project.issue}: |
+ self.case_open(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I check state of Issue after re-opened.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue should be in open state}:
+ - state == 'open'
+-
+ I create Task for Issue.
+-
+ !python {model: project.issue}: |
+ self.convert_issue_task(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I close Issue after resolving it
+-
+ !python {model: project.issue}: |
+ self.case_close(cr, uid, [ref("crm_case_buginaccountsmodule0")])
+-
+ I Check state of Issue after closed.
+-
+ !assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue should be in done state}:
+ - state == 'done'
\ No newline at end of file
diff --git a/addons/project_issue/test/issue.eml b/addons/project_issue/test/issue.eml
new file mode 100644
index 00000000000..32659bbd7da
--- /dev/null
+++ b/addons/project_issue/test/issue.eml
@@ -0,0 +1,45 @@
+Return-Path:
+X-Original-To: abc@mycompany.com
+Delivered-To: abc@mycompany.com
+Received: by mail1.mycompany.com (Postfix, from userid 10002)
+ id 3955EBFACA; Tue, 29 Nov 2011 08:14:47 +0100 (CET)
+X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail1.mycompany.com
+X-Spam-Level:
+X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM,
+ RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1
+Received: from nm39-vm6.bullet.mail.ne1.yahoo.com (nm39-vm6.bullet.mail.ne1.yahoo.com [98.138.229.166])
+ by mail1.mycompany.com (Postfix) with SMTP id 0D074BF53A
+ for ; Tue, 29 Nov 2011 08:14:44 +0100 (CET)
+Received: from [98.138.90.54] by nm39.bullet.mail.ne1.yahoo.com with NNFMP; 29 Nov 2011 07:13:26 -0000
+Received: from [98.138.84.39] by tm7.bullet.mail.ne1.yahoo.com with NNFMP; 29 Nov 2011 07:13:26 -0000
+Received: from [127.0.0.1] by smtp107.mail.ne1.yahoo.com with NNFMP; 29 Nov 2011 07:13:26 -0000
+DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.in; s=s1024; t=1322550806; bh=LFefFqrky41IufKZHP8a86obZoBPxyX1aafgWNcrw7U=; h=X-Yahoo-Newman-Id:X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:Received:Message-ID:Date:From:User-Agent:MIME-Version:To:Subject:Content-Type:Content-Transfer-Encoding; b=NB8bd6b4Uk3/3fKhdzbcqFEZGPpKyotLeE0xh8H08rcFEahMFfY5uXgsYZsUFvTLCKfTyQWh/oPTVxHeUTGY/Y5MzAnndghX6S0mzlFtmW2dwLMqdWxQLZwU7EhbyYF9PCHicsmtlUVyo7Ou5ePSviqC0SOyCJJVWwzWlv5W9Zg=
+X-Yahoo-Newman-Id: 152218.10448.bm@smtp107.mail.ne1.yahoo.com
+X-Yahoo-Newman-Property: ymail-3
+X-YMail-OSG: i4zQqJUVM1mab8kxoCTmgMwxw9th.MdiJzmc4Ffbno7QGkl
+ acotmc0pGoiw_GrhwReSA6uNIveeAUi9WA6NniWAElxbUzGIQplTBHjRhdqF
+ d_rLG1Yn71DYxllLCZC8xoRzumVHw.kue0ymrl4D0VO.lEeyXbbYoz.TpAvu
+ ZASBwSV_mESEUu96bb1esfOjI_2MhibMNmt.2egkOG6LS3AcDkVWXJb.VpQe
+ yZieJ5djjUx9uu4HModjROSUWHKm3Qd5ZwvG.3s1JvHNNvPC3Mo6x.DXi_rj
+ d70J2pruXhJ9ZnbNooZiSHkrhaugWV.kquq6475ZxKP6Tu7G8iUgZUkHWCf.
+ aEdBFl2.4RanSkMohEfbNtwpXUQ0eDDOOPatHFB27JSP0jw--
+X-Yahoo-SMTP: oNtzSBqswBAqJIGYOgyGesyleENrhUEtEgBkQ053
+Received: from [192.168.1.30] (Robert_Adersen@180.211.100.2 with plain)
+ by smtp107.mail.ne1.yahoo.com with SMTP; 28 Nov 2011 23:13:25 -0800 PST
+Message-ID: <4ED48611.6070605@yahoo.in>
+Date: Tue, 29 Nov 2011 12:43:21 +0530
+From: Robert Adersen
+User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110424 Thunderbird/3.1.10
+MIME-Version: 1.0
+To: abc@mycompany.com
+Subject: Error in the account module
+Content-Type: text/plain; charset=ISO-8859-1; format=flowed
+Content-Transfer-Encoding: 7bit
+
+Hello Sir,
+
+I am using the openerp v6.1 and i have problem in hr module, so try to
+check it and solve my problem.
+
+thanks
+Robert Adersen
diff --git a/addons/project_issue/test/issue_demo.yml b/addons/project_issue/test/issue_demo.yml
new file mode 100644
index 00000000000..1ad26e6db73
--- /dev/null
+++ b/addons/project_issue/test/issue_demo.yml
@@ -0,0 +1,8 @@
+-
+ !record {model: project.issue, id: project_task_1, view: False}:
+ task_id: 'project.project_task_17'
+ name: 'Error in account module'
+-
+ !record {model: project.issue, id: project01, view: False}:
+ project_id: 'project.project_project_9'
+ name: 'OpenERP Integration'
diff --git a/addons/project_issue/test/subscribe_issue.yml b/addons/project_issue/test/subscribe_issue.yml
new file mode 100644
index 00000000000..4ba472b41ed
--- /dev/null
+++ b/addons/project_issue/test/subscribe_issue.yml
@@ -0,0 +1,17 @@
+-
+ In Order to test process of Issue in OpenERP, Custmer send the issue by email.
+-
+ !python {model: mail.thread}: |
+ import addons
+ request_file = open(addons.get_module_resource('project_issue','test', 'issue.eml'),'rb')
+ request_message = request_file.read()
+ self.message_process(cr, uid, 'project.issue', request_message)
+-
+ After getting the mail, I check details of new issue of that customer.
+-
+ !python {model: project.issue}: |
+ issue_ids = self.search(cr, uid, [('email_from', '=', 'Robert Adersen ')])
+ assert issue_ids and len(issue_ids), "issue is not created after getting request"
+ issue = self.browse(cr, uid, issue_ids[0], context=context)
+ assert not issue.partner_id, "Customer should be a new"
+ assert issue.name == "Error in the account module", "Subject does not match"
\ No newline at end of file
From 370e0c6510ece36865b61a325e8bb3b508993105 Mon Sep 17 00:00:00 2001
From: "Harry (OpenERP)"
Date: Fri, 2 Dec 2011 16:31:18 +0530
Subject: [PATCH 022/135] [IMP] marketing_campaign: cleanup demo and yml to
test process of compaign
bzr revid: hmo@tinyerp.com-20111202110118-3w1h2z38d844f04i
---
addons/marketing_campaign/__openerp__.py | 1 -
.../marketing_campaign/marketing_campaign.py | 2 +-
.../marketing_campaign_demo.xml | 48 ++++++-------
.../test/marketing_campaign.yml | 67 +++++++++++++++----
.../test/marketing_campaign_demo.yml | 5 --
5 files changed, 80 insertions(+), 43 deletions(-)
delete mode 100644 addons/marketing_campaign/test/marketing_campaign_demo.yml
diff --git a/addons/marketing_campaign/__openerp__.py b/addons/marketing_campaign/__openerp__.py
index d9052239038..44646a07ead 100644
--- a/addons/marketing_campaign/__openerp__.py
+++ b/addons/marketing_campaign/__openerp__.py
@@ -61,7 +61,6 @@ Note: If you need demo data, you can install the marketing_campaign_crm_demo mod
'marketing_campaign_demo.xml',
],
'test': [
- 'test/marketing_campaign_demo.yml',
'test/marketing_campaign.yml',
],
'installable': True,
diff --git a/addons/marketing_campaign/marketing_campaign.py b/addons/marketing_campaign/marketing_campaign.py
index e79b893d40c..2ec05d17d9b 100644
--- a/addons/marketing_campaign/marketing_campaign.py
+++ b/addons/marketing_campaign/marketing_campaign.py
@@ -670,7 +670,7 @@ class marketing_campaign_workitem(osv.osv):
def _process_one(self, cr, uid, workitem, context=None):
if workitem.state != 'todo':
- return
+ return False
activity = workitem.activity_id
proxy = self.pool.get(workitem.object_id.model)
diff --git a/addons/marketing_campaign/marketing_campaign_demo.xml b/addons/marketing_campaign/marketing_campaign_demo.xml
index f49b918aa2c..df01161182e 100644
--- a/addons/marketing_campaign/marketing_campaign_demo.xml
+++ b/addons/marketing_campaign/marketing_campaign_demo.xml
@@ -1,37 +1,31 @@
-
- Dummy Action
-
- dummy
-
-
-
-
-
-
- Welcome in OpenERP Family!
- info@tinyerp.com
+ Template for New Partner
+ info@tinyerp.com
+ Welcome in OpenERP Partner Channel!
+ ${object.email or ''}
Hello, We are very happy to send Welcome message.
- Cogretulation! You become now our Silver Partner.
- info@tinyerp.com
+ Template for Silver Partner
+ info@tinyerp.com
+ Congratulation! You become now our Silver Partner.
+ ${object.email or ''}
- Hello,We are happy to announce that you now become our Silver Partner.
- Regards,OpenERP Team,
+ Hello, We are happy to announce that you now become our Silver Partner.
+ Template for Gold Partner
+ info@tinyerp.com
Congratulation! You become our Gold Partner.
- info@tinyerp.com
+ ${object.email or ''}
- Hello, We are happy to announce that you become our Gold Partner.
- Regards,OpenERP Team,
+ Hello, We are happy to announce that you become our Gold Partner.
@@ -47,22 +41,25 @@
New Partner
-
+ object.credit_limit < 10000
+ True
Silver Partner
-
+ object.credit_limit >= 10000 and object.credit_limit < 50000
+ True
Gold Partner
-
+ object.credit_limit >= 100000
+ True
@@ -79,12 +76,17 @@
+
+ Partners
+ [('name','like','agrolait')]
+ res.partner
+
OpenERP Partner
create_date
+
- draft
diff --git a/addons/marketing_campaign/test/marketing_campaign.yml b/addons/marketing_campaign/test/marketing_campaign.yml
index 502f9e892ec..c4a48dcf704 100644
--- a/addons/marketing_campaign/test/marketing_campaign.yml
+++ b/addons/marketing_campaign/test/marketing_campaign.yml
@@ -1,44 +1,85 @@
-
- I start compaign.
+ In order to test process of compaign, I start compaign.
-
!workflow {model: marketing.campaign, action: state_running_set, ref: marketing_campaign_openerppartnerchannel}
-
- I check the campaign on Running mode.
+ I check the campaign on Running mode after started.
-
!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.
+ I assign segment to campaign.
+-
+ !record {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
+ campaign_id: marketing_campaign_openerppartnerchannel
+-
+ I start this segment after assinged campaign.
-
!workflow {model: marketing.campaign.segment, action: state_running_set, ref: marketing_campaign_segment0}
-
- I check the segment on Running mode.
+ I check the segment on Running mode after started.
-
!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.
+ I set credit limit for customer.
+-
+ !python {model: res.partner}: |
+ self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':1000}, context=context)
+-
+ I synchronized 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.
+ I check followup detail of first activity.
-
!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"
+ assert ids, 'Followup item is not created for first activity.'
+-
+ Now I increase credit limit of customer
+-
+ !python {model: res.partner}: |
+ self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':41000}, context=context)
+-
+ I process followup of first activity.
+-
+ !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.process(cr, uid, ids)
+ record = self.browse(cr, uid, ids)[0]
+ assert record.state == "done", "Followup item should be closed after process."
+-
+ I check followup detail of second activity after process of first activity.
+-
+ !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_2'))])
+ assert ids, 'Followup item is not created for second activity.'
+-
+ Now I increase credit limit of customer
+-
+ !python {model: res.partner}: |
+ self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':151000}, context=context)
+-
+ I process followup of second activity.
+-
+ !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_2'))])
+ self.process(cr, uid, ids)
+ record = self.browse(cr, uid, ids)[0]
+ assert record.state == "done", "Followup item should be closed after process."
-
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)
+ ('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_2'))])
+ self.preview(cr, uid, ids)
-
I close segmentation After completion of all activity.
-
diff --git a/addons/marketing_campaign/test/marketing_campaign_demo.yml b/addons/marketing_campaign/test/marketing_campaign_demo.yml
deleted file mode 100644
index c727132bd47..00000000000
--- a/addons/marketing_campaign/test/marketing_campaign_demo.yml
+++ /dev/null
@@ -1,5 +0,0 @@
--
- 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
From 82753bfc6a544125b3f5503e80335a1f2b2606c9 Mon Sep 17 00:00:00 2001
From: "Harry (OpenERP)"
Date: Fri, 2 Dec 2011 16:45:24 +0530
Subject: [PATCH 023/135] [IMP] marketing_campaign: clenup yml again
bzr revid: hmo@tinyerp.com-20111202111524-wk0wnrki1b0bm3po
---
.../test/marketing_campaign.yml | 45 ++++++++++++-------
1 file changed, 29 insertions(+), 16 deletions(-)
diff --git a/addons/marketing_campaign/test/marketing_campaign.yml b/addons/marketing_campaign/test/marketing_campaign.yml
index c4a48dcf704..18b3d95a911 100644
--- a/addons/marketing_campaign/test/marketing_campaign.yml
+++ b/addons/marketing_campaign/test/marketing_campaign.yml
@@ -21,11 +21,6 @@
-
!assert {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
- state == 'running'
--
- I set credit limit for customer.
--
- !python {model: res.partner}: |
- self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':1000}, context=context)
-
I synchronized segment manually to see all step of activity and process covered on this campaign.
-
@@ -36,19 +31,14 @@
-
!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'))])
+ ('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_0'))])
assert ids, 'Followup item is not created for first activity.'
--
- Now I increase credit limit of customer
--
- !python {model: res.partner}: |
- self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':41000}, context=context)
-
I process followup of first activity.
-
!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'))])
+ ('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_0'))])
self.process(cr, uid, ids)
record = self.browse(cr, uid, ids)[0]
assert record.state == "done", "Followup item should be closed after process."
@@ -57,21 +47,44 @@
-
!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_2'))])
+ ('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_1'))])
assert ids, 'Followup item is not created for second activity.'
-
Now I increase credit limit of customer
+-
+ !python {model: res.partner}: |
+ self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':41000}, context=context)
+-
+ I process followup of second activity after set draft.
+-
+ !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.button_draft(cr, uid, ids, context=context)
+ self.process(cr, uid, ids, context=context)
+ record = self.browse(cr, uid, ids[0], context=context)
+ assert record.state == "done", "Followup item should be closed after process."
+-
+ I check followup detail of third activity after process of second activity.
+-
+ !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_2'))])
+ assert ids, 'Followup item is not created for third activity.'
+-
+ Now I increase credit limit of customer
-
!python {model: res.partner}: |
self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':151000}, context=context)
-
- I process followup of second activity.
+ I process followup of third activity after set draft.
-
!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_2'))])
- self.process(cr, uid, ids)
- record = self.browse(cr, uid, ids)[0]
+ self.button_draft(cr, uid, ids, context=context)
+ self.process(cr, uid, ids, context=context)
+ record = self.browse(cr, uid, ids[0], context=context)
assert record.state == "done", "Followup item should be closed after process."
-
I print workitem report.
From 01f54a04b9c13ffc77f80649e1d80cd8cd90a692 Mon Sep 17 00:00:00 2001
From: "Meera Trambadia (OpenERP)"
Date: Mon, 5 Dec 2011 11:56:38 +0530
Subject: [PATCH 024/135] [FIX] crm: improved ids of crm security rights in csv
lp bug: https://launchpad.net/bugs/899916 fixed
bzr revid: mtr@tinyerp.com-20111205062638-vsg1n2zwyak399rd
---
addons/crm/security/ir.model.access.csv | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/addons/crm/security/ir.model.access.csv b/addons/crm/security/ir.model.access.csv
index 4ea07252276..5adf4f04473 100644
--- a/addons/crm/security/ir.model.access.csv
+++ b/addons/crm/security/ir.model.access.csv
@@ -14,9 +14,9 @@
"access_crm_meeting","crm.meeting","model_crm_meeting","base.group_sale_salesman",1,1,1,0
"access_crm_meeting_all","crm.meeting_allll","model_crm_meeting","base.group_user",1,0,0,0
"access_crm_lead","crm.lead","model_crm_lead","base.group_sale_salesman",1,1,1,0
-"access_crm_lead.all","crm.lead.all","model_crm_lead","base.group_user",1,0,0,0
+"access_crm_lead_all","crm.lead.all","model_crm_lead","base.group_user",1,0,0,0
"access_crm_phonecall","crm.phonecall","model_crm_phonecall","base.group_sale_salesman",1,1,1,0
-"access_crm_phonecall.all","crm.phonecall.all","model_crm_phonecall","base.group_user",1,0,0,0
+"access_crm_phonecall_all","crm.phonecall.all","model_crm_phonecall","base.group_user",1,0,0,0
"access_crm_case_section_user","crm.case.section.user","model_crm_case_section","base.group_sale_salesman",1,1,1,0
"access_crm_case_section_manager","crm.case.section.manager","model_crm_case_section","base.group_sale_manager",1,1,1,1
"access_crm_case_stage","crm.case.stage","model_crm_case_stage","base.group_user",1,0,0,0
From edce20b032775ab565874feee409783a9317a43c Mon Sep 17 00:00:00 2001
From: vishmita
Date: Tue, 6 Dec 2011 16:11:28 +0530
Subject: [PATCH 025/135] [FIX]Readonly char fields should be grey.
lp bug: https://launchpad.net/bugs/899076 fixed
bzr revid: vja@vja-desktop-20111206104128-pepiy3f7wy2xipmp
---
addons/web/static/src/css/base.css | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 067ea09cd38..4b8675beebb 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -1121,7 +1121,9 @@ label.error {
.openerp .oe_forms select{
padding-top: 2px;
}
-
+.openerp .oe_forms input[disabled] {
+ background: #EBEBE4;
+}
.openerp .oe_forms textarea {
resize:vertical;
}
From b66a616bf6ca932cf6c651f0b03c928f118fdbef Mon Sep 17 00:00:00 2001
From: "Amit (OpenERP)"
Date: Tue, 6 Dec 2011 18:10:28 +0530
Subject: [PATCH 026/135] [IMP]:point_of_sale:set default customer in
partner_id field
bzr revid: apa@tinyerp.com-20111206124028-tffnm10c8dj6wk9f
---
addons/point_of_sale/point_of_sale_view.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/addons/point_of_sale/point_of_sale_view.xml b/addons/point_of_sale/point_of_sale_view.xml
index 165c6c83e3a..a0f91861733 100644
--- a/addons/point_of_sale/point_of_sale_view.xml
+++ b/addons/point_of_sale/point_of_sale_view.xml
@@ -16,7 +16,7 @@
-
+
From dcdee5b4293e44d2d77690cdadb5b669af2bc9ec Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Wed, 7 Dec 2011 11:01:21 +0100
Subject: [PATCH 027/135] [fix] search problem
bzr revid: nicolas.vanhoren@openerp.com-20111207100121-xsybjs8bw2p66c48
---
addons/point_of_sale/static/src/js/pos.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 05adcaf458a..14019eee62a 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -1103,7 +1103,7 @@ openerp.point_of_sale = function(db) {
s = $(this).val().toLowerCase();
if (s) {
m = products.filter( function(p) {
- return p.name.toLowerCase().indexOf(s);
+ return p.name.toLowerCase().indexOf(s) != -1;
});
$('.search-clear').fadeIn();
} else {
From e102a2d686318bb1c9ece05e28a5c515525800f1 Mon Sep 17 00:00:00 2001
From: "Bharat (OpenERP)"
Date: Wed, 7 Dec 2011 18:12:54 +0530
Subject: [PATCH 028/135] [FIX] account : can't send a mail to partner from
Send followups wizard
lp bug: https://launchpad.net/bugs/898619 fixed
bzr revid: bde@tinyerp.com-20111207124254-2mykmcs3thxvxev5
---
addons/account_followup/report/account_followup_report.py | 2 +-
addons/account_followup/wizard/account_followup_print.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/addons/account_followup/report/account_followup_report.py b/addons/account_followup/report/account_followup_report.py
index c2a842cfd4c..420ca92b289 100644
--- a/addons/account_followup/report/account_followup_report.py
+++ b/addons/account_followup/report/account_followup_report.py
@@ -68,7 +68,7 @@ class account_followup_stat(osv.osv):
cr.execute("""
create or replace view account_followup_stat as (
SELECT
- l.id as id,
+ l.partner_id AS id,
l.partner_id AS partner_id,
min(l.date) AS date_move,
max(l.date) AS date_move_last,
diff --git a/addons/account_followup/wizard/account_followup_print.py b/addons/account_followup/wizard/account_followup_print.py
index ea1083f26ff..014fa2bb326 100644
--- a/addons/account_followup/wizard/account_followup_print.py
+++ b/addons/account_followup/wizard/account_followup_print.py
@@ -93,7 +93,7 @@ class account_followup_stat_by_partner(osv.osv):
cr.execute("""
create or replace view account_followup_stat_by_partner as (
SELECT
- l.partner_id * 10000 + l.company_id as id,
+ l.partner_id AS id,
l.partner_id AS partner_id,
min(l.date) AS date_move,
max(l.date) AS date_move_last,
From 26099a9cbca7fbbc3a234e3836bcd1ce9ae60adf Mon Sep 17 00:00:00 2001
From: "Vaibhav (OpenERP)"
Date: Wed, 7 Dec 2011 18:38:39 +0530
Subject: [PATCH 029/135] [FIX] Also check for field option in form view.
bzr revid: vda@tinyerp.com-20111207130839-j16iq92hl0lcf0ed
---
addons/web_calendar/static/src/js/calendar.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/addons/web_calendar/static/src/js/calendar.js b/addons/web_calendar/static/src/js/calendar.js
index 75b168ccf5a..fefc227a2d4 100644
--- a/addons/web_calendar/static/src/js/calendar.js
+++ b/addons/web_calendar/static/src/js/calendar.js
@@ -269,7 +269,7 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({
form.show_invalid = false;
_.each(['date_start', 'date_stop', 'date_delay'], function(field) {
var field_name = self[field];
- if (field_name) {
+ if (field_name && form.fields[field_name]) {
field = form.fields[field_name];
field.set_value(data[field_name]);
field.dirty = true;
From 1055b58dec47552d51e368efdf08f6a529e06cb2 Mon Sep 17 00:00:00 2001
From: "Bharat (OpenERP)"
Date: Wed, 7 Dec 2011 18:57:44 +0530
Subject: [PATCH 030/135] [FIX] point_of_sale : Unused Code in
point_of_sale/wizard/pos_box_out.py
lp bug: https://launchpad.net/bugs/900734 fixed
bzr revid: bde@tinyerp.com-20111207132744-gnlpum4hlnsl2z2h
---
addons/point_of_sale/wizard/pos_box_out.py | 7 -------
1 file changed, 7 deletions(-)
diff --git a/addons/point_of_sale/wizard/pos_box_out.py b/addons/point_of_sale/wizard/pos_box_out.py
index 46f710c7882..81971e766e1 100644
--- a/addons/point_of_sale/wizard/pos_box_out.py
+++ b/addons/point_of_sale/wizard/pos_box_out.py
@@ -89,13 +89,6 @@ class pos_box_out(osv.osv_memory):
raise osv.except_osv(_('Error !'), _('You have to open at least one cashbox'))
if statement_id:
statement_id = statement_id[0]
- if not statement_id:
- statement_id = statement_obj.create(cr, uid, {
- 'date': time.strftime('%Y-%m-%d 00:00:00'),
- 'journal_id': data['journal_id'],
- 'company_id': curr_company,
- 'user_id': uid,
- }, context=context)
vals['statement_id'] = statement_id
vals['journal_id'] = data['journal_id']
if acc_id:
From 16bf0d2a0d332cbc373206c30615de7bacdedba0 Mon Sep 17 00:00:00 2001
From: "Kunal Chavda (OpenERP)"
Date: Wed, 7 Dec 2011 19:00:55 +0530
Subject: [PATCH 031/135] [ADD]Implement new linechart and areachart.
bzr revid: kch@tinyerp.com-20111207133055-ghaagmkgjsmy3i8a
---
addons/web_graph/static/src/js/graph.js | 236 +++++++++++++++++++++++-
1 file changed, 233 insertions(+), 3 deletions(-)
diff --git a/addons/web_graph/static/src/js/graph.js b/addons/web_graph/static/src/js/graph.js
index 7f8f619a8c9..c0e51e74b90 100644
--- a/addons/web_graph/static/src/js/graph.js
+++ b/addons/web_graph/static/src/js/graph.js
@@ -57,7 +57,7 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
});
}
return $.when(
- this.dataset.call_and_eval('fields_get', [false, {}], null, 1),
+ this.dataset.call('fields_get', []),
loaded)
.then(function (fields_result, view_result) {
self.fields = fields_result[0];
@@ -177,14 +177,243 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
graph_data = _(graph_data).sortBy(function (point) {
return point[self.abscissa] + '[[--]]' + point[self.group_field];
});
-
if (this.chart == 'bar') {
return this.schedule_bar(graph_data);
} else if (this.chart == "pie") {
return this.schedule_pie(graph_data);
+ } else if (this.chart == 'line') {
+ return this.schedule_line(graph_data);
+ } else if (this.chart == 'area') {
+ return this.schedule_area(graph_data);
}
},
+ schedule_line: function(results) {
+ var self = this;
+ var group_list, view_chart;
+ if (!this.group_field) {
+ view_chart = "line";
+ group_list = _(this.columns).map(function (column, index) {
+ return {
+ group: column.name,
+ text: self.fields[column.name].string,
+ color: COLOR_PALETTE[index % (COLOR_PALETTE.length)]
+ }
+ });
+ } else {
+ view_chart = "line";
+ group_list = _(results).chain()
+ .pluck(this.group_field)
+ .uniq()
+ .map(function (value, index) {
+ return {
+ group: self.ordinate + '_' +
+ value.toLowerCase().replace(/[\s\/]+/g,'_'),
+ text: value,
+ color: COLOR_PALETTE[index % COLOR_PALETTE.length]
+ };
+ }).value();
+ results = _(results).chain()
+ .groupBy(function (record) { return record[self.abscissa]; })
+ .map(function (records) {
+ var r = {};
+ // second argument is coerced to a str, no good for boolean
+ r[self.abscissa] = records[0][self.abscissa];
+ _(records).each(function (record) {
+ var key = _.str.sprintf('%s_%s',
+ self.ordinate,
+ record[self.group_field].toLowerCase().replace(/[\s\/]+/g,'_'));
+ r[key] = record[self.ordinate];
+ });
+ return r;
+ })
+ .value();
+ }
+ var abscissa_description = {
+ title: "" + this.fields[this.abscissa].string + " ",
+ template: function (obj) {
+ return obj[self.abscissa] || 'Undefined';
+ }
+ };
+ var ordinate_description = {
+ lines: true,
+ title: "" + this.fields[this.ordinate].string + " "
+ };
+
+ var x_axis, y_axis;
+ x_axis = abscissa_description;
+ y_axis = ordinate_description;
+ var renderer = function () {
+ if (self.$element.is(':hidden')) {
+ self.renderer = setTimeout(renderer, 100);
+ return;
+ }
+ self.renderer = null;
+ var line_chart = new dhtmlXChart({
+ view: view_chart,
+ container: self.element_id+"-linechart",
+ value:"#"+group_list[0].group+"#",
+ item: {
+ borderColor: group_list[0].color,
+ color: "#000000"
+ },
+ line: {
+ color: group_list[0].color,
+ width: 3
+ },
+ xAxis: x_axis,
+ yAxis: y_axis,
+ padding: {
+ left: 35,
+ bottom: 20
+ },
+ origin: 0,
+ values: group_list,
+ legend: {
+ layout: "x",
+ align: "left",
+ valign: "top",
+ marker: {
+ type: "round",
+ width: 12
+ },
+ values:group_list
+ }
+ });
+ for (var m = 1; m" + this.fields[this.abscissa].string + "",
+ template: function (obj) {
+ return obj[self.abscissa] || 'Undefined';
+ }
+ };
+ var ordinate_description = {
+ lines: true,
+ title: "" + this.fields[this.ordinate].string + " "
+ };
+
+ var x_axis, y_axis;
+ x_axis = abscissa_description;
+ y_axis = ordinate_description;
+ var renderer = function () {
+ if (self.$element.is(':hidden')) {
+ self.renderer = setTimeout(renderer, 100);
+ return;
+ }
+ self.renderer = null;
+ var area_chart = new dhtmlXChart({
+ view: view_chart,
+ container: self.element_id+"-areachart",
+ value:"#"+group_list[0].group+"#",
+ color:group_list[0].color,
+ alpha: 0.6,
+ padding: {
+ left: 75
+ },
+ yAxis: y_axis,
+ xAxis: x_axis,
+ legend: {
+ values: group_list,
+ width: 75,
+ layout: "x",
+ align: "left",
+ valign: "top",
+ marker: {
+ type: "round",
+ width: 12
+ }
+ }
+ });
+ for (var m = 1; m
Date: Wed, 7 Dec 2011 19:47:10 +0100
Subject: [PATCH 032/135] [IMP] Added custom style to buttons.
bzr revid: mit@openerp.com-20111207184710-th1zwrouqnuz9b30
---
addons/web/static/src/css/base.css | 96 ++++++++++++++++++++++++++++++
1 file changed, 96 insertions(+)
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 0281ec3750f..05a29d99508 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -1703,3 +1703,99 @@ ul.oe-arrow-list li.oe-arrow-list-selected .oe-arrow-list-after {
.openerp .oe_view_editor_tree_grid a {
display: block;
}
+
+/***********/
+/* Buttons */
+/***********/
+
+a.button:link, a.button:visited, button, input[type='submit'] {
+ display: inline-block;
+ border: 1px solid #ababab;
+ color: #404040;
+ font-weight: 550;
+ font-size: 12px;
+ padding: 3px 10px;
+ min-width: 50px;
+ text-align: center;
+ background: #d8d8d8, none;
+ -o-background-size: 100% 100%;
+ -moz-background-size: 100% 100%;
+ -webkit-background-size: auto auto !important;
+ background-size: 100% 100%;
+ background: none, -webkit-gradient(linear, left top, left bottom, from(#efefef), to(#d8d8d8));
+ background: none, -webkit-linear-gradient(#efefef, #d8d8d8);
+ background: none, -moz-linear-gradient(#efefef, #d8d8d8);
+ background: none, -o-linear-gradient(top, #efefef, #d8d8d8);
+ background: none, -khtml-gradient(linear, left top, left bottom, from(#efefef), to(#d8d8d8));
+ -moz-border-radius: 3px;
+ -webkit-border-radius: 3px;
+ -o-border-radius: 3px;
+ -ms-border-radius: 3px;
+ border-radius: 3px;
+ -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(255, 255, 255, 0.8) inset;
+ -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(255, 255, 255, 0.8) inset;
+ -o-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(255, 255, 255, 0.8) inset;
+ -box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 1px rgba(255, 255, 255, 0.8) inset;
+ text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5);
+ -webkit-font-smoothing: antialiased;
+ outline: none;
+}
+
+a.button:hover, button:hover, input[type='submit']:hover {
+ background: #e3e3e3, none;
+ -o-background-size: 100% 100%;
+ -moz-background-size: 100% 100%;
+ -webkit-background-size: auto auto !important;
+ background-size: 100% 100%;
+ background: none, -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#e3e3e3));
+ background: none, -webkit-linear-gradient(#f6f6f6, #e3e3e3);
+ background: none, -moz-linear-gradient(#f6f6f6, #e3e3e3);
+ background: none, -o-linear-gradient(top, #f6f6f6, #e3e3e3);
+ background: none, -khtml-gradient(linear, left top, left bottom, from(#f6f6f6), to(#e3e3e3));
+ cursor: pointer;
+}
+
+a.button:focus, button:focus, input[type='submit']:focus {
+ border: 1px solid #80bfff;
+ background: #e3e3e3, none;
+ -o-background-size: 100% 100%;
+ -moz-background-size: 100% 100%;
+ -webkit-background-size: auto auto !important;
+ background-size: 100% 100%;
+ background: none, -webkit-gradient(linear, left top, left bottom, from(#f6f6f6), to(#e3e3e3));
+ background: none, -webkit-linear-gradient(#f6f6f6, #e3e3e3);
+ background: none, -moz-linear-gradient(#f6f6f6, #e3e3e3);
+ background: none, -o-linear-gradient(top, #f6f6f6, #e3e3e3);
+ background: none, -khtml-gradient(linear, left top, left bottom, from(#f6f6f6), to(#e3e3e3));
+ -moz-box-shadow: 0 0 3px #80bfff, 0 1px 1px rgba(255, 255, 255, 0.8) inset;
+ -webkit-box-shadow: 0 0 3px #80bfff, 0 1px 1px rgba(255, 255, 255, 0.8) inset;
+ -o-box-shadow: 0 0 3px #80bfff, 0 1px 1px rgba(255, 255, 255, 0.8) inset;
+ -box-shadow: 0 0 3px #80bfff, 0 1px 1px rgba(255, 255, 255, 0.8) inset;
+}
+
+a.button:active, a.button.active, button:active, button.active, input[type='submit']:active, input[type='submit'].active {
+ background: #e3e3e3;
+ background: -moz-linear-gradient(top, #e3e3e3, #f6f6f6) #1b468f;
+ background: -webkit-gradient(linear, left top, left bottom, from(#e3e3e3), to(#f6f6f6)) #1b468f;
+ background: linear-gradient(top, #e3e3e3, #f6f6f6) #1b468f;
+ -moz-box-shadow: none, 0 0 0 transparent;
+ -webkit-box-shadow: none, 0 0 0 transparent;
+ -o-box-shadow: none, 0 0 0 transparent;
+ -box-shadow: none, 0 0 0 transparent;
+}
+
+a.button.disabled, button:disabled, input[type='submit']:disabled {
+ background: #efefef !important;
+ border: 1px solid #d1d1d1 !important;
+ font-weight: 550;
+ font-size: 12px;
+ padding: 3px 10px;
+ min-width: 50px;
+ -moz-box-shadow: none !important, 0 0 0 transparent;
+ -webkit-box-shadow: none !important, 0 0 0 transparent;
+ -o-box-shadow: none !important, 0 0 0 transparent;
+ -box-shadow: none !important, 0 0 0 transparent;
+ color: #aaaaaa !important;
+ cursor: default;
+ text-shadow: 0 1px 1px white !important;
+}
From 7a1e543fbd259b9450ec1d68ba3dbc5ff7c6dba0 Mon Sep 17 00:00:00 2001
From: vishmita
Date: Thu, 8 Dec 2011 12:18:18 +0530
Subject: [PATCH 033/135] [FIX]Improve code.
lp bug: https://launchpad.net/bugs/899076 fixed
bzr revid: vja@vja-desktop-20111208064818-dpxh29j8sv0odhmz
---
addons/web/static/src/css/base.css | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 4b8675beebb..69bf11b820e 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -1121,8 +1121,8 @@ label.error {
.openerp .oe_forms select{
padding-top: 2px;
}
-.openerp .oe_forms input[disabled] {
- background: #EBEBE4;
+.openerp .oe_forms input[disabled],.openerp .oe_forms select[disabled], .openerp .oe_forms textarea[disabled]{
+ background: #EBEBE4 !important;
}
.openerp .oe_forms textarea {
resize:vertical;
From 65483c91a6b8d6aac677ca1a50e734e027146ef8 Mon Sep 17 00:00:00 2001
From: "Kunal Chavda (OpenERP)"
Date: Thu, 8 Dec 2011 12:30:02 +0530
Subject: [PATCH 034/135] [IMP]Improved code by removing duplicate code.
bzr revid: kch@tinyerp.com-20111208070002-oyk17wy006fyds3c
---
addons/web_graph/static/src/js/graph.js | 289 ++++--------------------
1 file changed, 41 insertions(+), 248 deletions(-)
diff --git a/addons/web_graph/static/src/js/graph.js b/addons/web_graph/static/src/js/graph.js
index c0e51e74b90..02bc48375aa 100644
--- a/addons/web_graph/static/src/js/graph.js
+++ b/addons/web_graph/static/src/js/graph.js
@@ -57,7 +57,7 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
});
}
return $.when(
- this.dataset.call('fields_get', []),
+ this.dataset.call_and_eval('fields_get', [false, {}], null, 1),
loaded)
.then(function (fields_result, view_result) {
self.fields = fields_result[0];
@@ -177,248 +177,20 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
graph_data = _(graph_data).sortBy(function (point) {
return point[self.abscissa] + '[[--]]' + point[self.group_field];
});
- if (this.chart == 'bar') {
- return this.schedule_bar(graph_data);
+ if (this.chart == 'bar' || 'line' || 'area') {
+ return this.schedule_bar_line_area(graph_data);
} else if (this.chart == "pie") {
return this.schedule_pie(graph_data);
- } else if (this.chart == 'line') {
- return this.schedule_line(graph_data);
- } else if (this.chart == 'area') {
- return this.schedule_area(graph_data);
}
},
- schedule_line: function(results) {
+ schedule_bar_line_area: function(results) {
var self = this;
- var group_list, view_chart;
+ var group_list,
+ view_chart = (self.chart == 'line')?'line':(self.chart == 'area')?'area':'';
if (!this.group_field) {
- view_chart = "line";
- group_list = _(this.columns).map(function (column, index) {
- return {
- group: column.name,
- text: self.fields[column.name].string,
- color: COLOR_PALETTE[index % (COLOR_PALETTE.length)]
- }
- });
- } else {
- view_chart = "line";
- group_list = _(results).chain()
- .pluck(this.group_field)
- .uniq()
- .map(function (value, index) {
- return {
- group: self.ordinate + '_' +
- value.toLowerCase().replace(/[\s\/]+/g,'_'),
- text: value,
- color: COLOR_PALETTE[index % COLOR_PALETTE.length]
- };
- }).value();
-
- results = _(results).chain()
- .groupBy(function (record) { return record[self.abscissa]; })
- .map(function (records) {
- var r = {};
- // second argument is coerced to a str, no good for boolean
- r[self.abscissa] = records[0][self.abscissa];
- _(records).each(function (record) {
- var key = _.str.sprintf('%s_%s',
- self.ordinate,
- record[self.group_field].toLowerCase().replace(/[\s\/]+/g,'_'));
- r[key] = record[self.ordinate];
- });
- return r;
- })
- .value();
- }
- var abscissa_description = {
- title: "" + this.fields[this.abscissa].string + " ",
- template: function (obj) {
- return obj[self.abscissa] || 'Undefined';
+ if (self.chart == 'bar'){
+ view_chart = (this.orientation === 'horizontal') ? 'barH' : 'bar';
}
- };
- var ordinate_description = {
- lines: true,
- title: "" + this.fields[this.ordinate].string + " "
- };
-
- var x_axis, y_axis;
- x_axis = abscissa_description;
- y_axis = ordinate_description;
- var renderer = function () {
- if (self.$element.is(':hidden')) {
- self.renderer = setTimeout(renderer, 100);
- return;
- }
- self.renderer = null;
- var line_chart = new dhtmlXChart({
- view: view_chart,
- container: self.element_id+"-linechart",
- value:"#"+group_list[0].group+"#",
- item: {
- borderColor: group_list[0].color,
- color: "#000000"
- },
- line: {
- color: group_list[0].color,
- width: 3
- },
- xAxis: x_axis,
- yAxis: y_axis,
- padding: {
- left: 35,
- bottom: 20
- },
- origin: 0,
- values: group_list,
- legend: {
- layout: "x",
- align: "left",
- valign: "top",
- marker: {
- type: "round",
- width: 12
- },
- values:group_list
- }
- });
- for (var m = 1; m" + this.fields[this.abscissa].string + "",
- template: function (obj) {
- return obj[self.abscissa] || 'Undefined';
- }
- };
- var ordinate_description = {
- lines: true,
- title: "" + this.fields[this.ordinate].string + " "
- };
-
- var x_axis, y_axis;
- x_axis = abscissa_description;
- y_axis = ordinate_description;
- var renderer = function () {
- if (self.$element.is(':hidden')) {
- self.renderer = setTimeout(renderer, 100);
- return;
- }
- self.renderer = null;
- var area_chart = new dhtmlXChart({
- view: view_chart,
- container: self.element_id+"-areachart",
- value:"#"+group_list[0].group+"#",
- color:group_list[0].color,
- alpha: 0.6,
- padding: {
- left: 75
- },
- yAxis: y_axis,
- xAxis: x_axis,
- legend: {
- values: group_list,
- width: 75,
- layout: "x",
- align: "left",
- valign: "top",
- marker: {
- type: "round",
- width: 12
- }
- }
- });
- for (var m = 1; m 1) {
+ if (self.chart == 'bar' && (this.columns.length > 1)) {
this.$element.text(
'OpenERP Web does not support combining grouping and '
+ 'multiple columns in graph at this time.');
@@ -440,8 +212,10 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
}
// transform series for clustered charts into series for stacked
// charts
- view_chart = (this.orientation === 'horizontal')
+ if (self.chart == 'bar'){
+ view_chart = (this.orientation === 'horizontal')
? 'stackedBarH' : 'stackedBar';
+ }
group_list = _(results).chain()
.pluck(this.group_field)
.uniq()
@@ -482,7 +256,7 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
};
var x_axis, y_axis;
- if (self.orientation == 'horizontal') {
+ if (self.chart == 'bar' && self.orientation == 'horizontal') {
x_axis = ordinate_description;
y_axis = abscissa_description;
} else {
@@ -495,9 +269,9 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
return;
}
self.renderer = null;
- var bar_chart = new dhtmlXChart({
+ var charts = new dhtmlXChart({
view: view_chart,
- container: self.element_id+"-barchart",
+ container: self.element_id+"-"+self.chart+"chart",
value:"#"+group_list[0].group+"#",
gradient: "3d",
border: false,
@@ -525,10 +299,20 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
}
}
});
+ if (self.chart == 'line'){
+ charts.define("item",{
+ borderColor: group_list[0].color,
+ color: "#000000"
+ });
+ charts.define("line",{
+ color: group_list[0].color,
+ width: 3
+ });
+ }
for (var m = 1; m
Date: Thu, 8 Dec 2011 10:52:22 +0100
Subject: [PATCH 035/135] Button restlyling now applies to input of type
'reset'
bzr revid: mit@openerp.com-20111208095222-f8luldz0vkxwvthe
---
addons/web/static/src/css/base.css | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 05a29d99508..cbfb8b0c710 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -737,7 +737,7 @@ label.error {
}
/* List */
.openerp .oe-listview table {
- clear: right;
+ reset: right;
width: 100%;
border-spacing: 0;
border: 1px solid silver;
@@ -983,7 +983,7 @@ label.error {
position: relative;
}
.openerp .oe_frame.oe_forms {
- clear: both;
+ reset: both;
}
.openerp table.oe_frame {
color: #4c4c4c;
@@ -1306,7 +1306,7 @@ label.error {
color: inherit;
}
.openerp .oe-view-manager-logs {
- clear: both;
+ reset: both;
background: #fff;
margin: 0.25em 0;
font-size: 85%;
@@ -1385,7 +1385,7 @@ label.error {
margin: 4px 0 0 4px;
}
.openerp .oe-sidebar-attachments-items {
- clear: both;
+ reset: both;
padding-top: 5px !important;
}
.openerp .oe-sidebar-attachments-items li {
@@ -1708,7 +1708,7 @@ ul.oe-arrow-list li.oe-arrow-list-selected .oe-arrow-list-after {
/* Buttons */
/***********/
-a.button:link, a.button:visited, button, input[type='submit'] {
+a.button:link, a.button:visited, button, input[type='submit'], input[type='reset'] {
display: inline-block;
border: 1px solid #ababab;
color: #404040;
@@ -1741,7 +1741,7 @@ a.button:link, a.button:visited, button, input[type='submit'] {
outline: none;
}
-a.button:hover, button:hover, input[type='submit']:hover {
+a.button:hover, button:hover, input[type='submit']:hover, input[type='reset']:hover {
background: #e3e3e3, none;
-o-background-size: 100% 100%;
-moz-background-size: 100% 100%;
@@ -1755,7 +1755,7 @@ a.button:hover, button:hover, input[type='submit']:hover {
cursor: pointer;
}
-a.button:focus, button:focus, input[type='submit']:focus {
+a.button:focus, button:focus, input[type='submit']:focus, input[type='reset']:focus {
border: 1px solid #80bfff;
background: #e3e3e3, none;
-o-background-size: 100% 100%;
@@ -1773,7 +1773,7 @@ a.button:focus, button:focus, input[type='submit']:focus {
-box-shadow: 0 0 3px #80bfff, 0 1px 1px rgba(255, 255, 255, 0.8) inset;
}
-a.button:active, a.button.active, button:active, button.active, input[type='submit']:active, input[type='submit'].active {
+a.button:active, a.button.active, button:active, button.active, input[type='submit']:active, input[type='submit'].active, input[type='reset']:active, input[type='reset'].active {
background: #e3e3e3;
background: -moz-linear-gradient(top, #e3e3e3, #f6f6f6) #1b468f;
background: -webkit-gradient(linear, left top, left bottom, from(#e3e3e3), to(#f6f6f6)) #1b468f;
@@ -1784,7 +1784,7 @@ a.button:active, a.button.active, button:active, button.active, input[type='subm
-box-shadow: none, 0 0 0 transparent;
}
-a.button.disabled, button:disabled, input[type='submit']:disabled {
+a.button.disabled, button:disabled, input[type='submit']:disabled, input[type='reset']:disabled {
background: #efefef !important;
border: 1px solid #d1d1d1 !important;
font-weight: 550;
From 9ca9d38c14b8a590fe49bbda0d0ee7f52434ca39 Mon Sep 17 00:00:00 2001
From: Minh Tran
Date: Thu, 8 Dec 2011 11:20:34 +0100
Subject: [PATCH 036/135] Limit button style to buttons within a .openerp div
bzr revid: mit@openerp.com-20111208102034-6ut270uvcw2tya99
---
addons/web/static/src/css/base.css | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index cbfb8b0c710..4d8b91815cb 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -1708,7 +1708,7 @@ ul.oe-arrow-list li.oe-arrow-list-selected .oe-arrow-list-after {
/* Buttons */
/***********/
-a.button:link, a.button:visited, button, input[type='submit'], input[type='reset'] {
+.openerp a.button:link, a.button:visited, button, input[type='submit'], input[type='reset'] {
display: inline-block;
border: 1px solid #ababab;
color: #404040;
@@ -1741,7 +1741,7 @@ a.button:link, a.button:visited, button, input[type='submit'], input[type='reset
outline: none;
}
-a.button:hover, button:hover, input[type='submit']:hover, input[type='reset']:hover {
+.openerp a.button:hover, button:hover, input[type='submit']:hover, input[type='reset']:hover {
background: #e3e3e3, none;
-o-background-size: 100% 100%;
-moz-background-size: 100% 100%;
@@ -1755,7 +1755,7 @@ a.button:hover, button:hover, input[type='submit']:hover, input[type='reset']:ho
cursor: pointer;
}
-a.button:focus, button:focus, input[type='submit']:focus, input[type='reset']:focus {
+.openerp a.button:focus, button:focus, input[type='submit']:focus, input[type='reset']:focus {
border: 1px solid #80bfff;
background: #e3e3e3, none;
-o-background-size: 100% 100%;
@@ -1773,7 +1773,7 @@ a.button:focus, button:focus, input[type='submit']:focus, input[type='reset']:fo
-box-shadow: 0 0 3px #80bfff, 0 1px 1px rgba(255, 255, 255, 0.8) inset;
}
-a.button:active, a.button.active, button:active, button.active, input[type='submit']:active, input[type='submit'].active, input[type='reset']:active, input[type='reset'].active {
+.openerp a.button:active, a.button.active, button:active, button.active, input[type='submit']:active, input[type='submit'].active, input[type='reset']:active, input[type='reset'].active {
background: #e3e3e3;
background: -moz-linear-gradient(top, #e3e3e3, #f6f6f6) #1b468f;
background: -webkit-gradient(linear, left top, left bottom, from(#e3e3e3), to(#f6f6f6)) #1b468f;
@@ -1784,7 +1784,7 @@ a.button:active, a.button.active, button:active, button.active, input[type='subm
-box-shadow: none, 0 0 0 transparent;
}
-a.button.disabled, button:disabled, input[type='submit']:disabled, input[type='reset']:disabled {
+.openerp a.button.disabled, button:disabled, input[type='submit']:disabled, input[type='reset']:disabled {
background: #efefef !important;
border: 1px solid #d1d1d1 !important;
font-weight: 550;
From ce8239440a49b853907b3fd6c0ccc8bee40af226 Mon Sep 17 00:00:00 2001
From: "Atik Agewan (OpenERP)"
Date: Fri, 9 Dec 2011 15:21:02 +0530
Subject: [PATCH 037/135] [IMP]: stage_previous, stage_next,case_reset Cover in
Test case
bzr revid: aag@tinyerp.com-20111209095102-3wgjy7v66y58a7eg
---
.../test/recruitment_process.yml | 41 +++++++++++++++----
1 file changed, 34 insertions(+), 7 deletions(-)
diff --git a/addons/hr_recruitment/test/recruitment_process.yml b/addons/hr_recruitment/test/recruitment_process.yml
index 43575137a6e..565b67168b6 100644
--- a/addons/hr_recruitment/test/recruitment_process.yml
+++ b/addons/hr_recruitment/test/recruitment_process.yml
@@ -19,17 +19,23 @@
assert applicant.name == "Application for the post of Jr.application Programmer.", "Subject does not match"
assert applicant.state == "draft"
assert len(resume_ids), "Resume does not attached."
+
+-
+ I Refuse applicant for the Recruitment.
+-
+ !python {model: hr.applicant}: |
+ self.case_close(cr, uid, [ref("hr_case_programmer")])
+-
+ I open applicant for the Recruitment.
+-
+ !python {model: hr.applicant}: |
+ self.case_reset(cr, uid, [ref("hr_case_programmer")])
+ self.case_open(cr, uid, [ref("hr_case_programmer")])
-
I assign the Job position to the applicant
-
!python {model: hr.applicant}: |
self.write(cr, uid, [ref('hr_case_programmer')], {'job_id':ref('hr.job_jr_appli')})
--
- I open applicant for the Recruitment
--
-
- !python {model: hr.applicant}: |
- self.case_open(cr, uid, [ref("hr_case_programmer")])
-
I start communication with applicant, first schedule phonecall.
-
@@ -40,6 +46,21 @@
-
!python {model: hr.applicant}: |
self.action_makeMeeting(cr, uid, [ref('hr_case_programmer')])
+-
+ I check Initial Qualification of applicant.
+-
+ !python {model: hr.applicant}: |
+ self.stage_next(cr, uid, [ref('hr_case_programmer')])
+-
+ I schedule First Interview of applicant.
+-
+ !python {model: hr.applicant}: |
+ self.stage_next(cr, uid, [ref('hr_case_programmer')])
+-
+ On a successful First Interview of applicant, I schedule Second Interview.
+-
+ !python {model: hr.applicant}: |
+ self.stage_next(cr, uid, [ref('hr_case_programmer')])
-
Applicant fillup the answer of the interview quetion.
-
@@ -56,7 +77,13 @@
!python {model: hr.applicant}: |
self.action_print_survey(cr, uid, [ref('hr_case_programmer')])
-
- On a successful interview with the applicant, I hired employee.
+ On a successful Second Interview of applicant Contract is Proposed to applicant.
+-
+ !python {model: hr.applicant}: |
+ self.stage_next(cr, uid, [ref('hr_case_programmer')])
+ self.stage_previous(cr, uid, [ref('hr_case_programmer')])
+-
+ I Hired employee.
-
!python {model: hr.applicant}: |
self.case_close_with_emp(cr, uid, [ref('hr_case_programmer')])
From d4299ee9f086d46259147e0ab21438fbcf59e58f Mon Sep 17 00:00:00 2001
From: "Atik Agewan (OpenERP)"
Date: Fri, 9 Dec 2011 15:55:28 +0530
Subject: [PATCH 038/135] [IMP]: Dead Code
bzr revid: aag@tinyerp.com-20111209102528-c9o6vse1mcfp1m14
---
addons/hr_recruitment/hr_recruitment.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py
index 8730d1fbf32..0acf41c5601 100644
--- a/addons/hr_recruitment/hr_recruitment.py
+++ b/addons/hr_recruitment/hr_recruitment.py
@@ -183,7 +183,7 @@ class hr_applicant(crm.crm_case, osv.osv):
'color': fields.integer('Color Index'),
'user_email': fields.related('user_id', 'user_email', type='char', string='User Email', readonly=True),
}
-
+ # Dead Code
def _get_stage(self, cr, uid, context=None):
ids = self.pool.get('hr.recruitment.stage').search(cr, uid, [], context=context)
return ids and ids[0] or False
@@ -365,6 +365,7 @@ class hr_applicant(crm.crm_case, osv.osv):
self.write(cr, uid, [res_id], vals, context)
return res_id
+ # Dead Code
def message_update(self, cr, uid, ids, msg, vals={}, default_act='pending', context=None):
if isinstance(ids, (str, int, long)):
ids = [ids]
From 5d15bf071f31f9fd2ea6c7dc6d633d5c8d5ff31f Mon Sep 17 00:00:00 2001
From: "Atik Agewan (OpenERP)"
Date: Fri, 9 Dec 2011 16:25:22 +0530
Subject: [PATCH 039/135] [IMP]: I create Employee ==> partner
bzr revid: aag@tinyerp.com-20111209105522-1wsw36413e2ym9qk
---
addons/hr_recruitment/test/recruitment_process.yml | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/addons/hr_recruitment/test/recruitment_process.yml b/addons/hr_recruitment/test/recruitment_process.yml
index 565b67168b6..010754bc55d 100644
--- a/addons/hr_recruitment/test/recruitment_process.yml
+++ b/addons/hr_recruitment/test/recruitment_process.yml
@@ -87,8 +87,17 @@
-
!python {model: hr.applicant}: |
self.case_close_with_emp(cr, uid, [ref('hr_case_programmer')])
+ context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")})
-
I check that applicant is "Hired".
-
!assert {model: hr.applicant, id: hr_case_programmer}:
- state == 'done'
+-
+ Now Hired Employee want to be a Partner of Company.
+-
+ !record {model: hr.recruitment.partner.create, id: hr_recruitment_partner_id1 }:
+-
+ !python {model: hr.recruitment.partner.create}: |
+ context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")})
+ self.make_order(cr, uid, [ref("hr_recruitment_partner_id1")], context=context)
From 165f43d2ce63e2c4ad6c513466e7e79173422d55 Mon Sep 17 00:00:00 2001
From: "Kunal Chavda (OpenERP)"
Date: Fri, 9 Dec 2011 16:35:21 +0530
Subject: [PATCH 040/135] [IMP]Improved code for use different properties when
different chart type.
bzr revid: kch@tinyerp.com-20111209110521-srj00rg522kjho0f
---
addons/web_graph/static/src/js/graph.js | 44 ++++++++++++-------------
1 file changed, 21 insertions(+), 23 deletions(-)
diff --git a/addons/web_graph/static/src/js/graph.js b/addons/web_graph/static/src/js/graph.js
index 02bc48375aa..02ff80b3e01 100644
--- a/addons/web_graph/static/src/js/graph.js
+++ b/addons/web_graph/static/src/js/graph.js
@@ -273,7 +273,8 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
view: view_chart,
container: self.element_id+"-"+self.chart+"chart",
value:"#"+group_list[0].group+"#",
- gradient: "3d",
+ gradient: (self.chart == "bar") ? "3d" : "light",
+ alpha: (self.chart == "area") ? 0.6 : 1,
border: false,
width: 1024,
tooltip:{
@@ -281,7 +282,15 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
self.abscissa, group_list[0].text, group_list[0].group)
},
radius: 0,
- color:group_list[0].color,
+ color: (self.chart != "line") ? group_list[0].color : "",
+ item: (self.chart == "line") ? {
+ borderColor: group_list[0].color,
+ color: "#000000"
+ } : "",
+ line: (self.chart == "line") ? {
+ color: group_list[0].color,
+ width: 3
+ } : "",
origin:0,
xAxis: x_axis,
yAxis: y_axis,
@@ -299,16 +308,7 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
}
}
});
- if (self.chart == 'line'){
- charts.define("item",{
- borderColor: group_list[0].color,
- color: "#000000"
- });
- charts.define("line",{
- color: group_list[0].color,
- width: 3
- });
- }
+
for (var m = 1; m
Date: Fri, 9 Dec 2011 17:08:32 +0530
Subject: [PATCH 041/135] [IMP]: hr_recruitment:Test func of
hr_recruitment_employee_hired
bzr revid: aag@tinyerp.com-20111209113832-ji33od2ert7n90pc
---
.../test/recruitment_process.yml | 22 +++++++++++++++++--
1 file changed, 20 insertions(+), 2 deletions(-)
diff --git a/addons/hr_recruitment/test/recruitment_process.yml b/addons/hr_recruitment/test/recruitment_process.yml
index 010754bc55d..e1d6133d036 100644
--- a/addons/hr_recruitment/test/recruitment_process.yml
+++ b/addons/hr_recruitment/test/recruitment_process.yml
@@ -19,7 +19,6 @@
assert applicant.name == "Application for the post of Jr.application Programmer.", "Subject does not match"
assert applicant.state == "draft"
assert len(resume_ids), "Resume does not attached."
-
-
I Refuse applicant for the Recruitment.
-
@@ -83,7 +82,7 @@
self.stage_next(cr, uid, [ref('hr_case_programmer')])
self.stage_previous(cr, uid, [ref('hr_case_programmer')])
-
- I Hired employee.
+ I Hired Applicant.
-
!python {model: hr.applicant}: |
self.case_close_with_emp(cr, uid, [ref('hr_case_programmer')])
@@ -93,6 +92,25 @@
-
!assert {model: hr.applicant, id: hr_case_programmer}:
- state == 'done'
+-
+ I Not give Employeement to Hired Aplicant till.
+-
+ !python {model: hired.employee}: |
+ context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")})
+ emp_id = self.create(cr, uid, {}, context=context)
+ self.case_close(cr, uid, [emp_id], context=context)
+-
+ Now I give Employeement to Hired Applicant .
+-
+ !python {model: hr.applicant}: |
+ self.case_reset(cr, uid, [ref("hr_case_programmer")])
+ self.case_open(cr, uid, [ref("hr_case_programmer")])
+ context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")})
+-
+ !python {model: hired.employee}: |
+ context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")})
+ emp_hr_id = self.create(cr, uid, {}, context=context)
+ self.case_close_with_emp(cr, uid, [emp_hr_id], context=context)
-
Now Hired Employee want to be a Partner of Company.
-
From 0b1365cbfd67a7dfd63cfd1a901b6a997e6d31d3 Mon Sep 17 00:00:00 2001
From: "Atik Agewan (OpenERP)"
Date: Fri, 9 Dec 2011 17:38:25 +0530
Subject: [PATCH 042/135] [IMP]: hr_recruitment:Test func of
hr.recruitment.job2phonecall wizards
bzr revid: aag@tinyerp.com-20111209120825-sqkpwjubtr08w1ee
---
addons/hr_recruitment/test/recruitment_process.yml | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/addons/hr_recruitment/test/recruitment_process.yml b/addons/hr_recruitment/test/recruitment_process.yml
index e1d6133d036..d87f21c5f24 100644
--- a/addons/hr_recruitment/test/recruitment_process.yml
+++ b/addons/hr_recruitment/test/recruitment_process.yml
@@ -34,12 +34,16 @@
I assign the Job position to the applicant
-
!python {model: hr.applicant}: |
+ context.update({'active_model': 'hr.applicant', 'active_id': ref("hr_case_programmer"), 'active_ids': [ref("hr_case_programmer")], 'survey_id': ref("survey_job_0")})
self.write(cr, uid, [ref('hr_case_programmer')], {'job_id':ref('hr.job_jr_appli')})
-
I start communication with applicant, first schedule phonecall.
+-
+ !record {model: hr.recruitment.job2phonecall, id: hr_recruitment_job2phonecall_id1 }:
-
!python {model: hr.recruitment.job2phonecall}: |
- self.make_phonecall(cr, uid, [ref('hr_case_programmer')])
+ context.update({'active_model': 'hr.applicant', 'active_id': ref("hr_case_programmer"), 'active_ids': [ref("hr_case_programmer")], 'survey_id': ref("survey_job_0")})
+ self.make_phonecall(cr, uid, [ref('hr_recruitment_job2phonecall_id1')], context=context)
-
I schedule meeting with applicant for interview.
-
From e6252ff604ff53ba4e1dc3e1356a1d66303b5734 Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Fri, 9 Dec 2011 14:47:37 +0100
Subject: [PATCH 043/135] [imp] refactored Pos
bzr revid: nicolas.vanhoren@openerp.com-20111209134737-um3fo7qwcwb9wdpo
---
addons/point_of_sale/static/src/js/pos.js | 36 +++++++++++------------
1 file changed, 17 insertions(+), 19 deletions(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 14019eee62a..dc484ad5690 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -49,8 +49,8 @@ openerp.point_of_sale = function(db) {
/*
Gets all the necessary data from the OpenERP web client (session, shop data etc.)
*/
- var Pos = (function() {
- function Pos(session) {
+ var Pos = db.web.Class.extend({
+ init: function(session) {
this.build_tree = _.bind(this.build_tree, this);
this.session = session;
$.when(this.fetch('pos.category', ['name', 'parent_id', 'child_id']),
@@ -58,11 +58,10 @@ openerp.point_of_sale = function(db) {
this.fetch('account.bank.statement', ['account_id', 'currency', 'journal_id', 'state', 'name']),
this.fetch('account.journal', ['auto_cash', 'check_dtls', 'currency', 'name', 'type']))
.then(this.build_tree);
- }
-
- Pos.prototype.ready = $.Deferred();
- Pos.prototype.store = new Store;
- Pos.prototype.fetch = function(osvModel, fields, domain) {
+ },
+ ready: $.Deferred(),
+ store: new Store,
+ fetch: function(osvModel, fields, domain) {
var dataSetSearch;
var self = this;
var callback = function(result) {
@@ -70,14 +69,14 @@ openerp.point_of_sale = function(db) {
};
dataSetSearch = new db.web.DataSetSearch(this, osvModel, {}, domain);
return dataSetSearch.read_slice(fields, 0).then(callback);
- };
- Pos.prototype.push = function(osvModel, record, callback, errorCallback) {
+ },
+ push: function(osvModel, record, callback, errorCallback) {
var dataSet;
dataSet = new db.web.DataSet(this, osvModel, null);
return dataSet.create(record, callback, errorCallback);
- };
- Pos.prototype.categories = {};
- Pos.prototype.build_tree = function() {
+ },
+ categories: {},
+ build_tree: function() {
var c, id, _i, _len, _ref, _ref2;
_ref = this.store.get('pos.category');
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
@@ -124,14 +123,14 @@ openerp.point_of_sale = function(db) {
}).call(this)
};
return this.ready.resolve();
- };
- Pos.prototype.build_ancestors = function(parent) {
+ },
+ build_ancestors: function(parent) {
if (parent != null) {
this.current_category.ancestors.unshift(parent);
return this.build_ancestors(this.categories[parent].parent);
}
- };
- Pos.prototype.build_subtree = function(category) {
+ },
+ build_subtree: function(category) {
var c, _i, _len, _ref, _results;
_ref = category.children;
_results = [];
@@ -141,9 +140,8 @@ openerp.point_of_sale = function(db) {
_results.push(this.build_subtree(this.categories[c]));
}
return _results;
- };
- return Pos;
- })();
+ }
+ });
/* global variable */
var pos;
From e7d3b6133918483c52910def38295f47f751280d Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Fri, 9 Dec 2011 15:22:11 +0100
Subject: [PATCH 044/135] [imp] improved storage
bzr revid: nicolas.vanhoren@openerp.com-20111209142211-dgt8s2exjr8pj7ai
---
addons/point_of_sale/static/src/js/pos.js | 29 +++++++++++------------
1 file changed, 14 insertions(+), 15 deletions(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index dc484ad5690..4af1d8d524b 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -30,22 +30,21 @@ openerp.point_of_sale = function(db) {
Local store access. Read once from localStorage upon construction and persist on every change.
There should only be one store active at any given time to ensure data consistency.
*/
- var Store = (function() {
- function Store() {
- var store;
- store = localStorage['pos'];
- this.data = (store && JSON.parse(store)) || {};
- }
-
- Store.prototype.get = function(key) {
+ var Store = db.web.Class.extend({
+ init: function() {
+ this.data = {};
+ },
+ get: function(key) {
+ if (this.data[key] === undefined) {
+ this.data[key] = JSON.parse(localStorage['oe_pos_' + key]);
+ }
return this.data[key];
- };
- Store.prototype.set = function(key, value) {
+ },
+ set: function(key, value) {
this.data[key] = value;
- return localStorage['pos'] = JSON.stringify(this.data);
- };
- return Store;
- })();
+ localStorage['oe_pos_' + key] = JSON.stringify(value);
+ },
+ });
/*
Gets all the necessary data from the OpenERP web client (session, shop data etc.)
*/
@@ -60,7 +59,7 @@ openerp.point_of_sale = function(db) {
.then(this.build_tree);
},
ready: $.Deferred(),
- store: new Store,
+ store: new Store(),
fetch: function(osvModel, fields, domain) {
var dataSetSearch;
var self = this;
From d26f77ca1d49d2c9a624adc25565bcda5a23c4c5 Mon Sep 17 00:00:00 2001
From: "Quentin (OpenERP)"
Date: Fri, 9 Dec 2011 16:18:47 +0100
Subject: [PATCH 045/135] [IMP] account: set report_type field of
account_account_type as fields.function + set the main account types as data
(instead of demo data) (and did the same for financial reports BS & PL)
bzr revid: qdp-launchpad@openerp.com-20111209151847-u63ur1o7wt017885
---
addons/account/__openerp__.py | 1 +
addons/account/account.py | 60 ++++--
addons/account/configurable_account_chart.xml | 179 ++----------------
addons/account/data/data_account_type.xml | 4 +
addons/account/demo/account_minimal.xml | 174 ++++-------------
5 files changed, 102 insertions(+), 316 deletions(-)
diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py
index 12df75b98c7..ea6142b0c89 100644
--- a/addons/account/__openerp__.py
+++ b/addons/account/__openerp__.py
@@ -104,6 +104,7 @@ module named account_voucher.
'account_invoice_view.xml',
'partner_view.xml',
'data/account_data.xml',
+ 'data/data_financial_report.xml',
'data/data_account_type.xml',
'account_invoice_workflow.xml',
'project/project_view.xml',
diff --git a/addons/account/account.py b/addons/account/account.py
index 8e9bdbc4866..d32fb5879ab 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -130,20 +130,43 @@ account_payment_term_line()
class account_account_type(osv.osv):
_name = "account.account.type"
_description = "Account Type"
-
- def _get_report_type(self, cr, uid, context=None):
- report_obj = self.pool.get('account.financial.report')
- report_ids = report_obj.search(cr, uid, [], context=context)
- report_type = [('none','/')]
- for report in report_obj.browse(cr, uid, report_ids, context=context):
- type = report.account_type_ids and report.account_type_ids[0] or False
- if type:
- if type.code in ('income', 'expense'):
- report_name = 'Profit & Loss ('+type.code+' accounts)'
- elif type.code in ('asset','liability'):
- report_name = 'Balance Sheet ('+type.code+' accounts)'
- report_type.append((type.code, report_name))
- return report_type
+
+ def _get_current_report_type(self, cr, uid, ids, name, arg, context=None):
+ obj_data = self.pool.get('ir.model.data')
+ obj_financial_report = self.pool.get('account.financial.report')
+ res = {}
+ financial_report_ref = {
+ 'asset': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_assets0')[1], context=context),
+ 'liability': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_liability0')[1], context=context),
+ 'income': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_income0')[1], context=context),
+ 'expense': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_expense0')[1], context=context),
+ }
+ for record in self.browse(cr, uid, ids, context=context):
+ res[record.id] = 'none'
+ for key, financial_report in financial_report_ref.items():
+ list_ids = [x.id for x in financial_report.account_type_ids]
+ if record.id in list_ids:
+ res[record.id] = key
+ return res
+
+ def _save_report_type(self, cr, uid, account_type_id, field_name, field_value, arg, context=None):
+ import pdb;pdb.set_trace()
+ obj_data = self.pool.get('ir.model.data')
+ obj_financial_report = self.pool.get('account.financial.report')
+ #unlink if it exists somewhere in the financial reports related to BS or PL
+ financial_report_ref = {
+ 'asset': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_assets0')[1], context=context),
+ 'liability': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_liability0')[1], context=context),
+ 'income': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_income0')[1], context=context),
+ 'expense': obj_financial_report.browse(cr, uid, obj_data.get_object_reference(cr, uid, 'account','account_financial_report_expense0')[1], context=context),
+ }
+ for key, financial_report in financial_report_ref.items():
+ list_ids = [x.id for x in financial_report.account_type_ids]
+ if account_type_id in list_ids:
+ obj_financial_report.write(cr, uid, [financial_report.id], {'account_type_ids': [(3, account_type_id)]})
+ #write it in the good place
+ if field_value != 'none':
+ return obj_financial_report.write(cr, uid, [financial_report_ref[field_value].id], {'account_type_ids': [(4, account_type_id)]})
_columns = {
'name': fields.char('Account Type', size=64, required=True, translate=True),
@@ -154,7 +177,12 @@ class account_account_type(osv.osv):
'Balance' will generally be used for cash accounts.
'Detail' will copy each existing journal item of the previous year, even the reconciled ones.
'Unreconciled' will copy only the journal items that were unreconciled on the first day of the new fiscal year."""),
- 'report_type': fields.selection(_get_report_type, 'P&L / BS Category', help="This field is used to generate legal reports: profit and loss, balance sheet.", required=True),
+ 'report_type': fields.function(_get_current_report_type, fnct_inv=_save_report_type, type='selection', string='P&L / BS Category',
+ selection= [('none','/'),
+ ('income', _('Profit & Loss (Income account)')),
+ ('expense', _('Profit & Loss (Expense account)')),
+ ('asset', _('Balance Sheet (Asset account)')),
+ ('liability', _('Balance Sheet (Liability account)'))], help="This field is used to generate legal reports: profit and loss, balance sheet.", required=True),
'note': fields.text('Description'),
}
_defaults = {
@@ -2975,7 +3003,7 @@ class account_financial_report(osv.osv):
], 'Display details'),
'account_report_id': fields.many2one('account.financial.report', 'Report Value'),
'account_type_ids': fields.many2many('account.account.type', 'account_account_financial_report_type', 'report_id', 'account_type_id', 'Account Types'),
- 'sign': fields.selection([(-1, 'Reverse balance sign'), (1, 'Preserve balance sign')], 'Sign on Reports', required=True, help='For accounts that are typically more debited than credited and that you would like to print as negative amounts in your reports, you should reverse the sign of the balance; e.g.: Expense account. The same applies for accounts that are typically more credited than debited and that you would like to print as positive amounts in your reports; e.g.: Income account.'),
+ 'sign': fields.selection([(-1, 'Reverse balance sign'), (1, 'Preserve balance sign')], 'Sign on Reports', required=True, help='For accounts that are typically more debited than credited and that you would like to print as negative amounts in your reports, you should reverse the sign of the balance; e.g.: Expense account. The same applies for accounts that are typically more credited than debited and that you would like to print as positive amounts in your reports; e.g.: Income account.'),
}
_defaults = {
diff --git a/addons/account/configurable_account_chart.xml b/addons/account/configurable_account_chart.xml
index 8486e2fb008..fa0aa3459dd 100644
--- a/addons/account/configurable_account_chart.xml
+++ b/addons/account/configurable_account_chart.xml
@@ -1,181 +1,44 @@
-
- Receivable
- receivable
- unreconciled
-
-
-
- Payable
- payable
- unreconciled
-
-
-
- View
- view
- none
-
-
Income View
view
+ income
Expense View
expense
+ expense
Asset View
asset
+ asset
Liability View
liability
+ liability
-
-
- Income
- income
- none
-
-
-
- Expense
- expense
- none
-
-
Tax
tax
unreconciled
+ expense
-
-
- Cash
- cash
- balance
-
-
-
- Liability
- liability
- balance
-
-
-
- Asset
- asset
- balance
-
-
Equity
equity
balance
-
-
-
- Bank
- bank
- balance
+ liability
Check
check
balance
-
-
-
-
- Balance Sheet
- sum
-
-
- Assets
-
-
- detail_with_hierarchy
- account_type
-
-
- Liability
-
-
- detail_with_hierarchy
- account_type
-
-
-
- Profit and Loss
- sum
-
-
- Income
-
-
- detail_with_hierarchy
- account_type
-
-
- Expense
-
-
- detail_with_hierarchy
- account_type
-
-
-
-
-
- asset
-
-
- liability
-
-
- income
-
-
- expense
-
-
- asset
-
-
- liability
-
-
- liability
-
-
- asset
-
-
- income
-
-
- expense
-
-
- asset
-
-
- liability
-
-
- expense
-
-
asset
-
- asset
-
-
@@ -183,7 +46,7 @@
Configurable Account Chart
view
-
+
@@ -193,7 +56,7 @@
Balance Sheet
view
-
+
@@ -233,7 +96,7 @@
Purchased Stocks
other
-
+
@@ -242,7 +105,7 @@
receivable
-
+
@@ -250,7 +113,7 @@
Tax Paid
other
-
+
@@ -266,7 +129,7 @@
Opening Income Account
other
-
+
@@ -283,7 +146,7 @@
payable
-
+
@@ -291,7 +154,7 @@
Tax Received
other
-
+
@@ -300,7 +163,7 @@
other
-
+
@@ -308,7 +171,7 @@
Opening Expense Account
other
-
+
@@ -318,7 +181,7 @@
Profit and Loss
view
-
+
@@ -334,7 +197,7 @@
Product Sales
other
-
+
@@ -350,7 +213,7 @@
Cost of Goods Sold
other
-
+
@@ -366,7 +229,7 @@
Expenses
other
-
+
@@ -374,7 +237,7 @@
Salary Expenses
other
-
+
diff --git a/addons/account/data/data_account_type.xml b/addons/account/data/data_account_type.xml
index ebed0ebb5de..590357ef080 100644
--- a/addons/account/data/data_account_type.xml
+++ b/addons/account/data/data_account_type.xml
@@ -30,21 +30,25 @@
Asset
asset
balance
+ asset
Liability
liability
balance
+ liability
Income
income
none
+ income
Expense
expense
none
+ expense
diff --git a/addons/account/demo/account_minimal.xml b/addons/account/demo/account_minimal.xml
index f11a72ce7b4..baa94450f02 100644
--- a/addons/account/demo/account_minimal.xml
+++ b/addons/account/demo/account_minimal.xml
@@ -5,50 +5,11 @@
Account Type
-->
-
- View
- view
- none
-
-
- Asset
- asset
- balance
-
-
- Receivable
- receivable
- unreconciled
-
-
- Liability
- liability
- balance
-
-
- Payable
- payable
- unreconciled
-
-
- Income
- income
- none
-
-
- Expense
- expense
- none
-
Equity
equity
balance
-
-
- Cash
- cash
- balance
+ liability
@@ -70,14 +31,14 @@
Balance Sheet - (test)
view
-
+
Assets - (test)
X10
view
-
+
@@ -87,7 +48,7 @@
Fixed Assets - (test)
view
-
+
@@ -95,7 +56,7 @@
Fixed Asset Account - (test)
other
-
+
@@ -103,7 +64,7 @@
Net Current Assets - (test)
view
-
+
@@ -111,7 +72,7 @@
Current Assets - (test)
view
-
+
@@ -119,7 +80,7 @@
Purchased Stocks - (test)
other
-
+
@@ -128,7 +89,7 @@
receivable
-
+
@@ -136,7 +97,7 @@
Output VAT - (test)
other
-
+
@@ -144,7 +105,7 @@
Bank Current Account - (test)
liquidity
-
+
@@ -152,7 +113,7 @@
Cash - (test)
liquidity
-
+
@@ -160,14 +121,14 @@
Opening Income - (test)
other
-
+
Liabilities - (test)
X11
view
-
+
@@ -177,7 +138,7 @@
Current Liabilities - (test)
view
-
+
@@ -186,7 +147,7 @@
payable
-
+
@@ -194,7 +155,7 @@
Input VAT - (test)
other
-
+
@@ -202,7 +163,7 @@
Reserve and Profit/Loss - (test)
other
-
+
@@ -210,7 +171,7 @@
Opening Expense - (test)
other
-
+
@@ -220,14 +181,14 @@
Profit and Loss - (test)
view
-
+
Income - (test)
X20
view
-
+
@@ -236,7 +197,7 @@
Foreign Exchange Gain - (test)
X201
other
-
+
@@ -246,7 +207,7 @@
Revenue - (test)
view
-
+
@@ -254,14 +215,14 @@
Product Sales - (test)
other
-
+
Expense - (test)
X21
view
-
+
@@ -272,7 +233,7 @@
Cost of Sales - (test)
view
-
+
@@ -280,7 +241,7 @@
Cost of Goods Sold - (test)
other
-
+
@@ -288,7 +249,7 @@
Overheads - (test)
view
-
+
@@ -296,14 +257,14 @@
Expenses - (test)
other
-
+
Foreign Exchange Loss - (test)
X2111
other
-
+
@@ -313,7 +274,7 @@
Salary Expenses - (test)
other
-
+
@@ -463,76 +424,5 @@
-
-
-
- Balance Sheet
- sum
-
-
- Assets
-
-
- detail_with_hierarchy
- account_type
-
-
- Liability
-
-
- detail_with_hierarchy
- account_type
-
-
-
- Profit and Loss
- sum
-
-
- Income
-
-
- detail_with_hierarchy
- account_type
-
-
- Expense
-
-
- detail_with_hierarchy
- account_type
-
-
-
-
-
- asset
-
-
- liability
-
-
- income
-
-
- expense
-
-
- asset
-
-
- liability
-
-
- liability
-
-
- asset
-
-
From cec632de7ddcec0c5f3dbbd17403862f2a2aca26 Mon Sep 17 00:00:00 2001
From: "Quentin (OpenERP)"
Date: Fri, 9 Dec 2011 16:54:55 +0100
Subject: [PATCH 046/135] [FIX] account: removed debug statement
bzr revid: qdp-launchpad@openerp.com-20111209155455-eni7vouo10m08ux7
---
addons/account/account.py | 1 -
1 file changed, 1 deletion(-)
diff --git a/addons/account/account.py b/addons/account/account.py
index d32fb5879ab..081f8fe1568 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -150,7 +150,6 @@ class account_account_type(osv.osv):
return res
def _save_report_type(self, cr, uid, account_type_id, field_name, field_value, arg, context=None):
- import pdb;pdb.set_trace()
obj_data = self.pool.get('ir.model.data')
obj_financial_report = self.pool.get('account.financial.report')
#unlink if it exists somewhere in the financial reports related to BS or PL
From 85f9bf937cde859e83c061cdd7e166a038551d07 Mon Sep 17 00:00:00 2001
From: Minh Tran
Date: Fri, 9 Dec 2011 16:58:54 +0100
Subject: [PATCH 047/135] [FIX] Fixed a bad 'replace all'
bzr revid: mit@openerp.com-20111209155854-1u8ay6j0iui3n3rq
---
addons/web/static/src/css/base.css | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 59a24c7906e..39b4d26cf75 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -737,7 +737,7 @@ label.error {
}
/* List */
.openerp .oe-listview table {
- reset: right;
+ clear: right;
width: 100%;
border-spacing: 0;
border: 1px solid silver;
@@ -993,7 +993,7 @@ label.error {
position: relative;
}
.openerp .oe_frame.oe_forms {
- reset: both;
+ clear: both;
}
.openerp table.oe_frame {
color: #4c4c4c;
@@ -1316,7 +1316,7 @@ label.error {
color: inherit;
}
.openerp .oe-view-manager-logs {
- reset: both;
+ clear: both;
background: #fff;
margin: 0.25em 0;
font-size: 85%;
@@ -1395,7 +1395,7 @@ label.error {
margin: 4px 0 0 4px;
}
.openerp .oe-sidebar-attachments-items {
- reset: both;
+ clear: both;
padding-top: 5px !important;
}
.openerp .oe-sidebar-attachments-items li {
From 8d9e9839bc96c4d7ed38820d2f6fcb72b141778c Mon Sep 17 00:00:00 2001
From: "Quentin (OpenERP)"
Date: Fri, 9 Dec 2011 17:16:28 +0100
Subject: [PATCH 048/135] [IMP] account: financial report display with
hierarchy feature + balance on financial reports with type==account_type
bzr revid: qdp-launchpad@openerp.com-20111209161628-0jmmpb274c8j1109
---
addons/account/account.py | 7 ++++
.../report/account_financial_report.py | 36 +++++++++----------
2 files changed, 23 insertions(+), 20 deletions(-)
diff --git a/addons/account/account.py b/addons/account/account.py
index 081f8fe1568..38c489f6da4 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -2954,6 +2954,7 @@ class account_financial_report(osv.osv):
return res
def _get_balance(self, cr, uid, ids, name, args, context=None):
+ account_obj = self.pool.get('account.account')
res = {}
res_all = {}
for report in self.browse(cr, uid, ids, context=context):
@@ -2964,6 +2965,12 @@ class account_financial_report(osv.osv):
# it's the sum of balance of the linked accounts
for a in report.account_ids:
balance += a.balance
+ elif report.type == 'account_type':
+ # it's the sum of balance of the leaf accounts with such an account type
+ report_types = [x.id for x in report.account_type_ids]
+ account_ids = account_obj.search(cr, uid, [('user_type','in', report_types), ('type','!=','view')], context=context)
+ for a in account_obj.browse(cr, uid, account_ids, context=context):
+ balance += a.balance
elif report.type == 'account_report' and report.account_report_id:
# it's the amount of the linked report
res2 = self._get_balance(cr, uid, [report.account_report_id.id], 'balance', False, context=context)
diff --git a/addons/account/report/account_financial_report.py b/addons/account/report/account_financial_report.py
index ab8f3f7cb6f..837b3dee6ff 100644
--- a/addons/account/report/account_financial_report.py
+++ b/addons/account/report/account_financial_report.py
@@ -65,32 +65,28 @@ class report_account_common(report_sxw.rml_parse, common_report_header):
lines.append(vals)
account_ids = []
if report.type == 'accounts' and report.account_ids:
- if report.display_detail == 'only_detail':
- account_ids = account_obj._get_children_and_consol(self.cr, self.uid, [x.id for x in report.account_ids])
- elif report.display_detail == 'detail_with_hierarchy':
- account_ids = [x.id for x in report.account_ids]
+ account_ids = account_obj._get_children_and_consol(self.cr, self.uid, [x.id for x in report.account_ids])
elif report.type == 'account_type' and report.account_type_ids:
account_ids = account_obj.search(self.cr, self.uid, [('user_type','in', [x.id for x in report.account_type_ids])])
account_ids.sort()
if account_ids:
for account in account_obj.browse(self.cr, self.uid, account_ids, context=data['form']['used_context']):
- if report.display_detail == 'detail_with_hierarchy' or account.type != 'view':
- flag = False
- vals = {
- 'name': account.code + ' ' + account.name,
- 'balance': account.balance != 0 and account.balance * report.sign or account.balance,
- 'type': 'account',
- 'level': 6,
- 'account_type': account.type,
- }
- if not currency_obj.is_zero(self.cr, self.uid, account.company_id.currency_id, vals['balance']):
+ flag = False
+ vals = {
+ 'name': account.code + ' ' + account.name,
+ 'balance': account.balance != 0 and account.balance * report.sign or account.balance,
+ 'type': 'account',
+ 'level': report.display_detail == 'detail_with_hierarchy' and min(account.level,6) or 6,
+ 'account_type': account.type,
+ }
+ if not currency_obj.is_zero(self.cr, self.uid, account.company_id.currency_id, vals['balance']):
+ flag = True
+ if data['form']['enable_filter']:
+ vals['balance_cmp'] = account_obj.browse(self.cr, self.uid, account.id, context=data['form']['comparison_context']).balance
+ if not currency_obj.is_zero(self.cr, self.uid, account.company_id.currency_id, vals['balance_cmp']):
flag = True
- if data['form']['enable_filter']:
- vals['balance_cmp'] = account_obj.browse(self.cr, self.uid, account.id, context=data['form']['comparison_context']).balance
- if not currency_obj.is_zero(self.cr, self.uid, account.company_id.currency_id, vals['balance_cmp']):
- flag = True
- if flag:
- lines.append(vals)
+ if flag:
+ lines.append(vals)
return lines
report_sxw.report_sxw('report.account.financial.report', 'account.financial.report',
From 91edca60591cd46af32cb7319ef0b376754ca757 Mon Sep 17 00:00:00 2001
From: "Quentin (OpenERP)"
Date: Fri, 9 Dec 2011 17:17:27 +0100
Subject: [PATCH 049/135] [ADD] account: added missing file
account/data/data_financial_report.xml
bzr revid: qdp-launchpad@openerp.com-20111209161727-oxq1dnet80tc1s29
---
addons/account/data/data_financial_report.xml | 43 +++++++++++++++++++
1 file changed, 43 insertions(+)
create mode 100644 addons/account/data/data_financial_report.xml
diff --git a/addons/account/data/data_financial_report.xml b/addons/account/data/data_financial_report.xml
new file mode 100644
index 00000000000..18624f94749
--- /dev/null
+++ b/addons/account/data/data_financial_report.xml
@@ -0,0 +1,43 @@
+
+
+
+
+
+ Balance Sheet
+ sum
+
+
+ Assets
+
+ detail_with_hierarchy
+ account_type
+
+
+ Liability
+
+ detail_with_hierarchy
+ account_type
+
+
+
+ Profit and Loss
+ sum
+
+
+ Income
+
+ detail_with_hierarchy
+ account_type
+
+
+ Expense
+
+ detail_with_hierarchy
+ account_type
+
+
+
+
+
From 8ec0108649dd736dd24ee67f674010219a06e6f2 Mon Sep 17 00:00:00 2001
From: "Quentin (OpenERP)"
Date: Fri, 9 Dec 2011 17:25:58 +0100
Subject: [PATCH 050/135] [REM] account: removal of deprecated account reports
for balance sheet and profit/loss
bzr revid: qdp-launchpad@openerp.com-20111209162558-xigtewgren97xuk5
---
addons/account/__openerp__.py | 2 -
addons/account/report/__init__.py | 2 -
.../account/report/account_balance_sheet.py | 224 -------------
.../account/report/account_balance_sheet.rml | 303 -----------------
.../account_balance_sheet_horizontal.rml | 250 --------------
.../report/account_profit_horizontal.rml | 282 ----------------
addons/account/report/account_profit_loss.py | 198 -----------
addons/account/report/account_profit_loss.rml | 314 ------------------
addons/account/wizard/__init__.py | 3 -
.../wizard/account_report_balance_sheet.py | 85 -----
.../account_report_balance_sheet_view.xml | 50 ---
.../wizard/account_report_profit_loss.py | 62 ----
.../account_report_profit_loss_view.xml | 49 ---
13 files changed, 1824 deletions(-)
delete mode 100644 addons/account/report/account_balance_sheet.py
delete mode 100644 addons/account/report/account_balance_sheet.rml
delete mode 100644 addons/account/report/account_balance_sheet_horizontal.rml
delete mode 100644 addons/account/report/account_profit_horizontal.rml
delete mode 100644 addons/account/report/account_profit_loss.py
delete mode 100644 addons/account/report/account_profit_loss.rml
delete mode 100644 addons/account/wizard/account_report_balance_sheet.py
delete mode 100644 addons/account/wizard/account_report_balance_sheet_view.xml
delete mode 100644 addons/account/wizard/account_report_profit_loss.py
delete mode 100644 addons/account/wizard/account_report_profit_loss_view.xml
diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py
index ea6142b0c89..e01dbc70f07 100644
--- a/addons/account/__openerp__.py
+++ b/addons/account/__openerp__.py
@@ -123,8 +123,6 @@ module named account_voucher.
'ir_sequence_view.xml',
'company_view.xml',
'board_account_view.xml',
- #"wizard/account_report_profit_loss_view.xml",
- #"wizard/account_report_balance_sheet_view.xml",
"edi/invoice_action_data.xml",
"account_bank_view.xml",
"account_pre_install.yml"
diff --git a/addons/account/report/__init__.py b/addons/account/report/__init__.py
index f7d82ffebce..78d369f79a8 100644
--- a/addons/account/report/__init__.py
+++ b/addons/account/report/__init__.py
@@ -38,8 +38,6 @@ import account_invoice_report
import account_report
import account_entries_report
import account_analytic_entries_report
-#import account_balance_sheet
-#import account_profit_loss
import account_treasury_report
import account_financial_report
diff --git a/addons/account/report/account_balance_sheet.py b/addons/account/report/account_balance_sheet.py
deleted file mode 100644
index ce9e3c51f06..00000000000
--- a/addons/account/report/account_balance_sheet.py
+++ /dev/null
@@ -1,224 +0,0 @@
-# -*- encoding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import time
-
-import pooler
-from report import report_sxw
-from account.report import account_profit_loss
-from common_report_header import common_report_header
-from tools.translate import _
-
-class report_balancesheet_horizontal(report_sxw.rml_parse, common_report_header):
- def __init__(self, cr, uid, name, context=None):
- super(report_balancesheet_horizontal, self).__init__(cr, uid, name, context=context)
- self.obj_pl = account_profit_loss.report_pl_account_horizontal(cr, uid, name, context=context)
- self.result_sum_dr = 0.0
- self.result_sum_cr = 0.0
- self.result = {}
- self.res_bl = {}
- self.result_temp = []
- self.localcontext.update({
- 'time': time,
- 'get_lines': self.get_lines,
- 'get_lines_another': self.get_lines_another,
- 'get_company': self._get_company,
- 'get_currency': self._get_currency,
- 'sum_dr': self.sum_dr,
- 'sum_cr': self.sum_cr,
- 'get_data':self.get_data,
- 'get_pl_balance':self.get_pl_balance,
- 'get_fiscalyear': self._get_fiscalyear,
- 'get_account': self._get_account,
- 'get_start_period': self.get_start_period,
- 'get_end_period': self.get_end_period,
- 'get_sortby': self._get_sortby,
- 'get_filter': self._get_filter,
- 'get_journal': self._get_journal,
- 'get_start_date':self._get_start_date,
- 'get_end_date':self._get_end_date,
- 'get_company':self._get_company,
- 'get_target_move': self._get_target_move,
- })
- self.context = context
-
- def set_context(self, objects, data, ids, report_type=None):
- new_ids = ids
- if (data['model'] == 'ir.ui.menu'):
- new_ids = 'chart_account_id' in data['form'] and [data['form']['chart_account_id']] or []
- objects = self.pool.get('account.account').browse(self.cr, self.uid, new_ids)
- return super(report_balancesheet_horizontal, self).set_context(objects, data, new_ids, report_type=report_type)
-
- def sum_dr(self):
- if self.res_bl['type'] == _('Net Profit'):
- self.result_sum_dr += self.res_bl['balance']*-1
- return self.result_sum_dr
-
- def sum_cr(self):
- if self.res_bl['type'] == _('Net Loss'):
- self.result_sum_cr += self.res_bl['balance']
- return self.result_sum_cr
-
- def get_pl_balance(self):
- return self.res_bl
-
- def get_data(self,data):
- cr, uid = self.cr, self.uid
- db_pool = pooler.get_pool(self.cr.dbname)
-
- #Getting Profit or Loss Balance from profit and Loss report
- self.obj_pl.get_data(data)
- self.res_bl = self.obj_pl.final_result()
-
- account_pool = db_pool.get('account.account')
- currency_pool = db_pool.get('res.currency')
-
- types = [
- 'liability',
- 'asset'
- ]
-
- ctx = self.context.copy()
- ctx['fiscalyear'] = data['form'].get('fiscalyear_id', False)
-
- if data['form']['filter'] == 'filter_period':
- ctx['period_from'] = data['form'].get('period_from', False)
- ctx['period_to'] = data['form'].get('period_to', False)
- elif data['form']['filter'] == 'filter_date':
- ctx['date_from'] = data['form'].get('date_from', False)
- ctx['date_to'] = data['form'].get('date_to', False)
- ctx['state'] = data['form'].get('target_move', 'all')
- cal_list = {}
- pl_dict = {}
- account_dict = {}
- account_id = data['form'].get('chart_account_id', False)
- account_ids = account_pool._get_children_and_consol(cr, uid, account_id, context=ctx)
- accounts = account_pool.browse(cr, uid, account_ids, context=ctx)
-
- if not self.res_bl:
- self.res_bl['type'] = _('Net Profit')
- self.res_bl['balance'] = 0.0
-
- if self.res_bl['type'] == _('Net Profit'):
- self.res_bl['type'] = _('Net Profit')
- else:
- self.res_bl['type'] = _('Net Loss')
- pl_dict = {
- 'code': self.res_bl['type'],
- 'name': self.res_bl['type'],
- 'level': False,
- 'balance':self.res_bl['balance'],
- }
- for typ in types:
- accounts_temp = []
- for account in accounts:
- if (account.user_type.report_type) and (account.user_type.report_type == typ):
- account_dict = {
- 'id': account.id,
- 'code': account.code,
- 'name': account.name,
- 'level': account.level,
- 'balance': account.balance != 0 and account.balance * account.user_type.sign or account.balance,
- 'type': account.type,
- }
- currency = account.currency_id and account.currency_id or account.company_id.currency_id
- if typ == 'liability' and account.type <> 'view' and (account.debit <> account.credit):
- self.result_sum_dr += account.balance
- if typ == 'asset' and account.type <> 'view' and (account.debit <> account.credit):
- self.result_sum_cr += account.balance
- if data['form']['display_account'] == 'movement':
- if not currency_pool.is_zero(self.cr, self.uid, currency, account.credit) or not currency_pool.is_zero(self.cr, self.uid, currency, account.debit) or not currency_pool.is_zero(self.cr, self.uid, currency, account.balance):
- accounts_temp.append(account_dict)
- elif data['form']['display_account'] == 'not_zero':
- if not currency_pool.is_zero(self.cr, self.uid, currency, account.balance):
- accounts_temp.append(account_dict)
- else:
- accounts_temp.append(account_dict)
- if account.id == data['form']['reserve_account_id']:
- pl_dict['level'] = account['level'] + 1
- accounts_temp.append(pl_dict)
-
- self.result[typ] = accounts_temp
- cal_list[typ]=self.result[typ]
-
- if cal_list:
- temp = {}
- for i in range(0,max(len(cal_list['liability']),len(cal_list['asset']))):
- if i < len(cal_list['liability']) and i < len(cal_list['asset']):
- temp={
- 'type': cal_list['liability'][i]['type'],
- 'code': cal_list['liability'][i]['code'],
- 'name': cal_list['liability'][i]['name'],
- 'level': cal_list['liability'][i]['level'],
- 'balance':cal_list['liability'][i]['balance'],
- 'type1': cal_list['asset'][i]['type'],
- 'code1': cal_list['asset'][i]['code'],
- 'name1': cal_list['asset'][i]['name'],
- 'level1': cal_list['asset'][i]['level'],
- 'balance1':cal_list['asset'][i]['balance'],
- }
- self.result_temp.append(temp)
- else:
- if i < len(cal_list['asset']):
- temp={
- 'type': '',
- 'code': '',
- 'name': '',
- 'level': False,
- 'balance':False,
- 'type1': cal_list['asset'][i]['type'],
- 'code1': cal_list['asset'][i]['code'],
- 'name1': cal_list['asset'][i]['name'],
- 'level1': cal_list['asset'][i]['level'],
- 'balance1':cal_list['asset'][i]['balance'],
- }
- self.result_temp.append(temp)
- if i < len(cal_list['liability']):
- temp={
- 'type': cal_list['liability'][i]['type'],
- 'code': cal_list['liability'][i]['code'],
- 'name': cal_list['liability'][i]['name'],
- 'level': cal_list['liability'][i]['level'],
- 'balance':cal_list['liability'][i]['balance'],
- 'type1': '',
- 'code1': '',
- 'name1': '',
- 'level1': False,
- 'balance1':False,
- }
- self.result_temp.append(temp)
- return None
-
- def get_lines(self):
- return self.result_temp
-
- def get_lines_another(self, group):
- return self.result.get(group, [])
-
-report_sxw.report_sxw('report.account.balancesheet.horizontal', 'account.account',
- 'addons/account/report/account_balance_sheet_horizontal.rml',parser=report_balancesheet_horizontal,
- header='internal landscape')
-
-report_sxw.report_sxw('report.account.balancesheet', 'account.account',
- 'addons/account/report/account_balance_sheet.rml',parser=report_balancesheet_horizontal,
- header='internal')
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_balance_sheet.rml b/addons/account/report/account_balance_sheet.rml
deleted file mode 100644
index 620ec05b16a..00000000000
--- a/addons/account/report/account_balance_sheet.rml
+++ /dev/null
@@ -1,303 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Balance Sheet
-
-
-
- [[ get_data(data) or removeParentNode('para') ]]
-
-
-
-
-
- Chart of Accounts
- Fiscal Year
- Filter By [[ data['form']['filter']!='filter_no' and get_filter(data) ]]
- Display Account
- Target Moves
-
-
- [[ get_account(data) or removeParentNode('para') ]]
- [[ get_fiscalyear(data) or '' ]]
- [[ data['form']['filter']=='filter_no' and get_filter(data) or removeParentNode('para') ]]
- [[ data['form']['filter']=='filter_date' or removeParentNode('blockTable') ]]
-
- Start Date
- End Date
-
-
- [[ formatLang(get_start_date(data),date=True) ]]
- [[ formatLang(get_end_date(data),date=True) ]]
-
-
- [[ data['form']['filter']=='filter_period' or removeParentNode('blockTable') ]]
-
- Start Period
- End Period
-
-
- [[ get_start_period(data) or removeParentNode('para') ]]
- [[ get_end_period(data) or removeParentNode('para') ]]
-
-
-
- [[ (data['form']['display_account']=='all' and 'All') or (data['form']['display_account']=='movement' and 'With movements') or 'With balance is not equal to 0']]
- [[ get_target_move(data) ]]
-
-
-
-
-
-
-
-
-
-
-
- Assets
-
-
-
-
-
-
-
-
-
- Code
-
-
- Account
-
-
- Balance
-
-
-
- [[ repeatIn(get_lines_another('asset'),'a' ) ]]
- [[ setTag('tr','tr',{'style': 'Table'+str(min(3,a['level']))}) ]]
- [[ (a['type'] =='view' and a['level'] >= 3) and setTag('para','para',{'style': 'terp_level_3_code_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_code'}) ]][[ a['code'] ]]
- [[ (a['type'] =='view' and a['level'] >= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a['level']))+'_name'}) ]][[ a['name'] ]]
- [[ (a['level'] <>2) or removeParentNode('td') ]][[ (a['type'] =='view' and a['level'] >= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_balance'}) ]][[ formatLang(a['balance'], currency_obj = company.currency_id) ]]
- [[ a['level'] == 2 or removeParentNode('td') ]][[ formatLang(a['balance'], currency_obj = company.currency_id) ]]
-
-
-
-
-
- Balance:
-
-
- [[ formatLang(sum_cr(), currency_obj = company.currency_id) ]]
-
-
-
-
-
-
-
-
-
-
- Liabilities
-
-
-
-
-
-
- Code
-
-
- Account
-
-
- Balance
-
-
-
- [[ repeatIn(get_lines_another('liability'),'a' ) ]]
- [[ setTag('tr','tr',{'style': 'Table'+str(min(3,a['level']))}) ]]
- [[ (a['type'] =='view' and a['level'] >= 3) and setTag('para','para',{'style': 'terp_level_3_code_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_code'}) ]][[ a['code'] ]]
- [[ (a['type'] =='view' and a['level'] >= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a['level']))+'_name'}) ]][[ a['name'] ]]
- [[ (a['level'] <>2) or removeParentNode('td') ]][[ (a['type'] =='view' and a['level'] >= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a['level']))+'_balance'}) ]][[ formatLang(a['balance'], currency_obj = company.currency_id) ]]
- [[ a['level'] == 2 or removeParentNode('td') ]][[ formatLang(a['balance'], currency_obj = company.currency_id) ]]
-
-
-
-
-
- Balance:
-
-
- [[ formatLang(sum_dr(), currency_obj = company.currency_id) ]]
-
-
-
-
-
-
-
-
diff --git a/addons/account/report/account_balance_sheet_horizontal.rml b/addons/account/report/account_balance_sheet_horizontal.rml
deleted file mode 100644
index b2d54e33466..00000000000
--- a/addons/account/report/account_balance_sheet_horizontal.rml
+++ /dev/null
@@ -1,250 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Balance Sheet
-
-
-
- [[ get_data(data) or removeParentNode('para') ]]
-
-
-
- Chart of Accounts
- Fiscal Year
- Filter By [[ data['form']['filter']!='filter_no' and get_filter(data) ]]
- Display Account
- Target Moves
-
-
- [[ get_account(data) or removeParentNode('para') ]]
- [[ get_fiscalyear(data) or '' ]]
- [[ data['form']['filter']=='filter_no' and get_filter(data) or removeParentNode('para') ]]
- [[ data['form']['filter']=='filter_date' or removeParentNode('blockTable') ]]
-
- Start Date
- End Date
-
-
- [[ formatLang(get_start_date(data),date=True) ]]
- [[ formatLang(get_end_date(data),date=True) ]]
-
-
- [[ data['form']['filter']=='filter_period' or removeParentNode('blockTable') ]]
-
- Start Period
- End Period
-
-
- [[ get_start_period(data) or removeParentNode('para') ]]
- [[ get_end_period(data) or removeParentNode('para') ]]
-
-
-
- [[ (data['form']['display_account']=='all' and 'All') or (data['form']['display_account']=='movement' and 'With movements') or 'With balance is not equal to 0']]
- [[ get_target_move(data) ]]
-
-
-
-
-
-
-
-
-
-
-
- Code
-
-
- Assets
-
-
- Balance
-
-
- Code
-
-
- Liabilities
-
-
- Balance
-
-
-
-
-
- [[ repeatIn(get_lines(),'a' ) ]] [[ a['code1'] ]][[ a['level1']<4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]
-
-
-
-
- [[ '. '*(a['level1']-1) ]] [[ a['level1']<4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name1'] ]]
-
-
-
-
- [[ a['level1']<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]] [[ formatLang(a['balance1'], currency_obj=company.currency_id) ]]
-
-
-
-
- [[ a['code'] ]][[ ( a['level']<4 or a['name']=='Net Profit') and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]
-
-
-
-
- [[ '. '*(a['level']-1) ]]
- [[ ( a['level']<4 or a['name']=='Net Profit') and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name'] ]]
-
-
-
-
- [[ ( a['level']<4 or a['name']=='Net Profit') and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]]
- [[(a['code'] and a['name']) and formatLang(a['balance'], currency_obj=company.currency_id) or removeParentNode('font')]]
-
-
-
-
-
-
-
- Balance:
-
-
- [[ formatLang(sum_cr(), currency_obj=company.currency_id) ]]
-
-
- Balance:
-
-
- [[ formatLang(sum_dr(), currency_obj=company.currency_id) ]]
-
-
-
-
-
-
diff --git a/addons/account/report/account_profit_horizontal.rml b/addons/account/report/account_profit_horizontal.rml
deleted file mode 100644
index 0918dcb2699..00000000000
--- a/addons/account/report/account_profit_horizontal.rml
+++ /dev/null
@@ -1,282 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Profit And Loss
-
-
-
-
-
-
- [[ get_data(data) or removeParentNode('para')]]
-
-
- Chart of Accounts
- Fiscal Year
- Filter By [[ data['form']['filter']!='filter_no' and get_filter(data) ]]
- Display Account
- Target Moves
-
-
- [[ get_account(data) or removeParentNode('para') ]]
- [[ get_fiscalyear(data) or '' ]]
- [[ data['form']['filter']=='filter_no' and get_filter(data) or removeParentNode('para') ]]
- [[ data['form']['filter']=='filter_date' or removeParentNode('blockTable') ]]
-
- Start Date
- End Date
-
-
- [[ formatLang(get_start_date(data),date=True) ]]
- [[ formatLang(get_end_date(data),date=True) ]]
-
-
- [[ data['form']['filter']=='filter_period' or removeParentNode('blockTable') ]]
-
- Start Period
- End Period
-
-
- [[ get_start_period(data) or removeParentNode('para') ]]
- [[ get_end_period(data) or removeParentNode('para') ]]
-
-
-
- [[ (data['form']['display_account']=='all' and 'All') or (data['form']['display_account']=='movement' and 'With movements') or 'With balance is not equal to 0']]
- [[ get_target_move(data) ]]
-
-
-
-
-
-
-
-
- Code
-
-
- Expenses
-
-
- Balance
-
-
- Code
-
-
- Income
-
-
- Balance
-
-
-
-
-
-
- [[ repeatIn(get_lines(),'a' ) ]] [[ a['code'] ]][[ a['level']<4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]
-
-
-
-
- [[ '. '*(a['level']-1) ]] [[ a['level']<4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name'] ]]
-
-
-
- [[ a['level']<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]] [[ formatLang(abs(a['balance']), currency_obj=company.currency_id) ]]
-
-
-
- [[ a['code1'] ]][[ a['level1']<4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]]
-
-
-
-
- [[ '. '*(a['level1']-1) ]] [[ a['level1']<4 and ( setTag('para','para',{'style':'terp_default_Bold_9'})) or removeParentNode('font') ]][[ a['name1'] ]]
-
-
-
- [[ a['level']<4 and ( setTag('para','para',{'style':'terp_default_Right_9_Bold'})) or removeParentNode('font') ]] [[(a['code1'] and a['name1']) and formatLang(abs(a['balance1']), currency_obj=company.currency_id) or removeParentNode('font') ]]
-
-
-
-
-
-
-
-
-
- [[ final_result()['type'] == 'Net Profit' and final_result()['type'] or '' ]]
-
-
- [[ final_result()['balance'] and final_result()['type'] == 'Net Profit' and formatLang(abs(final_result()['balance']), currency_obj=company.currency_id) ]]
-
-
-
-
-
- [[ final_result()['type'] == 'Net Loss' and final_result()['type'] or '' ]]
-
-
- [[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and formatLang(abs(final_result()['balance']), currency_obj=company.currency_id) ]]
-
-
-
-
-
-
-
- Total:
-
-
- [[ formatLang(abs(sum_dr()), currency_obj=company.currency_id) ]]
-
-
- Total:
-
-
- [[ formatLang(abs(sum_cr()), currency_obj=company.currency_id) ]]
-
-
-
-
-
-
diff --git a/addons/account/report/account_profit_loss.py b/addons/account/report/account_profit_loss.py
deleted file mode 100644
index 27182cdbd21..00000000000
--- a/addons/account/report/account_profit_loss.py
+++ /dev/null
@@ -1,198 +0,0 @@
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import time
-import pooler
-from report import report_sxw
-from common_report_header import common_report_header
-from tools.translate import _
-
-class report_pl_account_horizontal(report_sxw.rml_parse, common_report_header):
-
- def __init__(self, cr, uid, name, context=None):
- super(report_pl_account_horizontal, self).__init__(cr, uid, name, context=context)
- self.result_sum_dr = 0.0
- self.result_sum_cr = 0.0
- self.res_pl = {}
- self.result = {}
- self.result_temp = []
- self.localcontext.update( {
- 'time': time,
- 'get_lines': self.get_lines,
- 'get_lines_another': self.get_lines_another,
- 'get_currency': self._get_currency,
- 'get_data': self.get_data,
- 'sum_dr': self.sum_dr,
- 'sum_cr': self.sum_cr,
- 'final_result': self.final_result,
- 'get_fiscalyear': self._get_fiscalyear,
- 'get_account': self._get_account,
- 'get_start_period': self.get_start_period,
- 'get_end_period': self.get_end_period,
- 'get_sortby': self._get_sortby,
- 'get_filter': self._get_filter,
- 'get_journal': self._get_journal,
- 'get_start_date':self._get_start_date,
- 'get_end_date':self._get_end_date,
- 'get_company':self._get_company,
- 'get_target_move': self._get_target_move,
- })
- self.context = context
-
- def set_context(self, objects, data, ids, report_type=None):
- new_ids = ids
- if (data['model'] == 'ir.ui.menu'):
- new_ids = 'chart_account_id' in data['form'] and [data['form']['chart_account_id']] or []
- objects = self.pool.get('account.account').browse(self.cr, self.uid, new_ids)
- return super(report_pl_account_horizontal, self).set_context(objects, data, new_ids, report_type=report_type)
-
-
- def final_result(self):
- return self.res_pl
-
- def sum_dr(self):
- if self.res_pl['type'] == _('Net Profit'):
- self.result_sum_dr += self.res_pl['balance']
- return self.result_sum_dr
-
- def sum_cr(self):
- if self.res_pl['type'] == _('Net Loss'):
- self.result_sum_cr += self.res_pl['balance']
- return self.result_sum_cr
-
- def get_data(self, data):
- cr, uid = self.cr, self.uid
- db_pool = pooler.get_pool(self.cr.dbname)
-
- account_pool = db_pool.get('account.account')
- currency_pool = db_pool.get('res.currency')
-
- types = [
- 'expense',
- 'income'
- ]
-
- ctx = self.context.copy()
- ctx['fiscalyear'] = data['form'].get('fiscalyear_id', False)
-
- if data['form']['filter'] == 'filter_period':
- ctx['period_from'] = data['form'].get('period_from', False)
- ctx['period_to'] = data['form'].get('period_to', False)
- elif data['form']['filter'] == 'filter_date':
- ctx['date_from'] = data['form'].get('date_from', False)
- ctx['date_to'] = data['form'].get('date_to', False)
-
- cal_list = {}
- account_id = data['form'].get('chart_account_id', False)
- company_currency = account_pool.browse(self.cr, self.uid, account_id).company_id.currency_id
- account_ids = account_pool._get_children_and_consol(cr, uid, account_id, context=ctx)
- accounts = account_pool.browse(cr, uid, account_ids, context=ctx)
-
- for typ in types:
- accounts_temp = []
- for account in accounts:
- if (account.user_type.report_type) and (account.user_type.report_type == typ):
- currency = account.currency_id and account.currency_id or account.company_id.currency_id
- if typ == 'expense' and account.type <> 'view' and (account.debit <> account.credit):
- self.result_sum_dr += account.debit - account.credit
- if typ == 'income' and account.type <> 'view' and (account.debit <> account.credit):
- self.result_sum_cr += account.credit - account.debit
- if data['form']['display_account'] == 'movement':
- if not currency_pool.is_zero(self.cr, self.uid, currency, account.credit) or not currency_pool.is_zero(self.cr, self.uid, currency, account.debit) or not currency_pool.is_zero(self.cr, self.uid, currency, account.balance):
- accounts_temp.append(account)
- elif data['form']['display_account'] == 'not_zero':
- if not currency_pool.is_zero(self.cr, self.uid, currency, account.balance):
- accounts_temp.append(account)
- else:
- accounts_temp.append(account)
- if currency_pool.is_zero(self.cr, self.uid, company_currency, (self.result_sum_dr-self.result_sum_cr)):
- self.res_pl['type'] = None
- self.res_pl['balance'] = 0.0
- elif self.result_sum_dr > self.result_sum_cr:
- self.res_pl['type'] = _('Net Loss')
- self.res_pl['balance'] = (self.result_sum_dr - self.result_sum_cr)
- else:
- self.res_pl['type'] = _('Net Profit')
- self.res_pl['balance'] = (self.result_sum_cr - self.result_sum_dr)
- self.result[typ] = accounts_temp
- cal_list[typ] = self.result[typ]
- if cal_list:
- temp = {}
- for i in range(0,max(len(cal_list['expense']),len(cal_list['income']))):
- if i < len(cal_list['expense']) and i < len(cal_list['income']):
- temp={
- 'code': cal_list['expense'][i].code,
- 'name': cal_list['expense'][i].name,
- 'level': cal_list['expense'][i].level,
- 'balance': cal_list['expense'][i].balance != 0 and \
- cal_list['expense'][i].balance * cal_list['expense'][i].user_type.sign or \
- cal_list['expense'][i].balance,
- 'code1': cal_list['income'][i].code,
- 'name1': cal_list['income'][i].name,
- 'level1': cal_list['income'][i].level,
- 'balance1': cal_list['income'][i].balance != 0 and \
- cal_list['income'][i].balance * cal_list['income'][i].user_type.sign or \
- cal_list['income'][i].balance,
- }
- self.result_temp.append(temp)
- else:
- if i < len(cal_list['income']):
- temp={
- 'code': '',
- 'name': '',
- 'level': False,
- 'balance':False,
- 'code1': cal_list['income'][i].code,
- 'name1': cal_list['income'][i].name,
- 'level1': cal_list['income'][i].level,
- 'balance1': cal_list['income'][i].balance != 0 and \
- cal_list['income'][i].balance * cal_list['income'][i].user_type.sign \
- or cal_list['income'][i].balance,
- }
- self.result_temp.append(temp)
- if i < len(cal_list['expense']):
- temp={
- 'code': cal_list['expense'][i].code,
- 'name': cal_list['expense'][i].name,
- 'level': cal_list['expense'][i].level,
- 'balance': cal_list['expense'][i].balance != 0 and \
- cal_list['expense'][i].balance * cal_list['expense'][i].user_type.sign \
- or cal_list['expense'][i].balance,
- 'code1': '',
- 'name1': '',
- 'level1': False,
- 'balance1':False,
- }
- self.result_temp.append(temp)
- return None
-
- def get_lines(self):
- return self.result_temp
-
- def get_lines_another(self, group):
- return self.result.get(group, [])
-
-report_sxw.report_sxw('report.pl.account.horizontal', 'account.account',
- 'addons/account/report/account_profit_horizontal.rml',parser=report_pl_account_horizontal, header='internal landscape')
-
-report_sxw.report_sxw('report.pl.account', 'account.account',
- 'addons/account/report/account_profit_loss.rml',parser=report_pl_account_horizontal, header='internal')
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_profit_loss.rml b/addons/account/report/account_profit_loss.rml
deleted file mode 100644
index 28fe167aef5..00000000000
--- a/addons/account/report/account_profit_loss.rml
+++ /dev/null
@@ -1,314 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Profit And Loss
-
-
-
-
- [[ get_data(data) or removeParentNode('para')]]
-
-
-
-
-
- Chart of Accounts
- Fiscal Year
- Filter By [[ data['form']['filter']!='filter_no' and get_filter(data) ]]
- Display Account
- Target Moves
-
-
- [[ get_account(data) or removeParentNode('para') ]]
- [[ get_fiscalyear(data) or '' ]]
- [[ data['form']['filter']=='filter_no' and get_filter(data) or removeParentNode('para') ]]
- [[ data['form']['filter']=='filter_date' or removeParentNode('blockTable') ]]
-
- Start Date
- End Date
-
-
- [[ formatLang(get_start_date(data),date=True) ]]
- [[ formatLang(get_end_date(data),date=True) ]]
-
-
- [[ data['form']['filter']=='filter_period' or removeParentNode('blockTable') ]]
-
- Start Period
- End Period
-
-
- [[ get_start_period(data) or removeParentNode('para') ]]
- [[ get_end_period(data) or removeParentNode('para') ]]
-
-
-
- [[ (data['form']['display_account']=='all' and 'All') or (data['form']['display_account']=='movement' and 'With movements') or 'With balance is not equal to 0']]
- [[ get_target_move(data) ]]
-
-
-
-
-
- Expenses
-
-
-
- Code
-
-
- Account
-
-
- Balance
-
-
-
- [[ repeatIn(get_lines_another('expense'),'a' ) ]]
- [[ setTag('tr','tr',{'style': 'Table'+str(min(3,a.level))}) ]]
- [[ (a.type =='view' and a.level >= 3) and setTag('para','para',{'style': 'terp_level_3_code_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_code'}) ]][[ a.code ]]
- [[ (a.type =='view' and a.level >= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a.level))+'_name'}) ]][[ a.name ]]
- [[ (a.level <>2) or removeParentNode('td') ]][[ (a.type =='view' and a.level >= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_balance'}) ]][[ formatLang(a.balance * a.user_type.sign, currency_obj=company.currency_id) ]]
- [[ a.level == 2 or removeParentNode('td') ]][[ formatLang(a.balance * a.user_type.sign, currency_obj=company.currency_id) ]]
-
-
-
-
-
-
-
-
- [[ final_result()['type'] == 'Net Profit' and final_result()['type'] or removeParentNode('blockTable') ]]
-
-
- [[ final_result()['balance'] and final_result()['type'] == 'Net Profit' and formatLang(final_result()['balance'], currency_obj=company.currency_id) ]]
-
-
-
-
-
-
- Total:
-
-
- [[ formatLang(sum_dr(), currency_obj=company.currency_id) ]]
-
-
-
-
-
-
-
- Incomes
-
-
-
- Code
-
-
- Account
-
-
- Balance
-
-
-
- [[ repeatIn(get_lines_another('income'),'a' ) ]]
- [[ setTag('tr','tr',{'style': 'Table'+str(min(3,a.level))}) ]]
- [[ (a.type =='view' and a.level >= 3) and setTag('para','para',{'style': 'terp_level_3_code_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_code'}) ]][[ a.code ]]
- [[ (a.type =='view' and a.level >= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a.level))+'_name'}) ]][[ a.name ]]
- [[ (a.level <>2) or removeParentNode('td') ]][[ (a.type =='view' and a.level >= 3) and setTag('para','para',{'style': 'terp_level_3_balance_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_balance'}) ]][[ formatLang(a.balance * a.user_type.sign, currency_obj=company.currency_id) ]]
- [[ a.level == 2 or removeParentNode('td') ]][[ formatLang(a.balance * a.user_type.sign, currency_obj=company.currency_id) ]]
-
-
-
-
-
-
-
-
- [[ final_result()['type'] == 'Net Loss' and final_result()['type'] or removeParentNode('blockTable') ]]
-
-
- [[ final_result()['balance'] and final_result()['type'] == 'Net Loss' and formatLang(final_result()['balance'], currency_obj=company.currency_id) ]]
-
-
-
-
-
-
- Total:
-
-
- [[ formatLang(sum_cr(), currency_obj=company.currency_id) ]]
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/account/wizard/__init__.py b/addons/account/wizard/__init__.py
index bef2c78ac01..a78cf12050b 100644
--- a/addons/account/wizard/__init__.py
+++ b/addons/account/wizard/__init__.py
@@ -64,9 +64,6 @@ import account_report_account_balance
import account_change_currency
-#import account_report_balance_sheet
-#import account_report_profit_loss
-
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_balance_sheet.py b/addons/account/wizard/account_report_balance_sheet.py
deleted file mode 100644
index 01a89168a43..00000000000
--- a/addons/account/wizard/account_report_balance_sheet.py
+++ /dev/null
@@ -1,85 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import osv, fields
-from tools.translate import _
-
-class account_bs_report(osv.osv_memory):
- """
- This wizard will provide the account balance sheet report by periods, between any two dates.
- """
- _name = 'account.bs.report'
- _inherit = "account.common.account.report"
- _description = 'Account Balance Sheet Report'
-
- def _get_def_reserve_account(self, cr, uid, context=None):
- chart_id = self._get_account(cr, uid, context=context)
- res = self.onchange_chart_id(cr, uid, [], chart_id, context=context)
- if not res:
- return False
- return res['value']['reserve_account_id']
-
- _columns = {
- 'display_type': fields.boolean("Landscape Mode"),
- 'reserve_account_id': fields.many2one('account.account', 'Reserve & Profit/Loss Account',
- help='This account is used for transferring Profit/Loss (If It is Profit: Amount will be added, Loss : Amount will be deducted.), as calculated in Profit & Loss Report',
- domain = [('type','=','other')]),
- 'journal_ids': fields.many2many('account.journal', 'account_bs_report_journal_rel', 'account_id', 'journal_id', 'Journals', required=True),
- }
-
- _defaults={
- 'display_type': False,
- 'journal_ids': [],
- 'reserve_account_id': _get_def_reserve_account,
- }
-
- def onchange_chart_id(self, cr, uid, ids, chart_id, context=None):
- if not chart_id:
- return {}
- account = self.pool.get('account.account').browse(cr, uid, chart_id , context=context)
- if not account.company_id.property_reserve_and_surplus_account:
- return {'value': {'reserve_account_id': False}}
- return {'value': {'reserve_account_id': account.company_id.property_reserve_and_surplus_account.id}}
-
-
- def _print_report(self, cr, uid, ids, data, context=None):
- if context is None:
- context = {}
- data['form'].update(self.read(cr, uid, ids, ['display_type','reserve_account_id'])[0])
- if not data['form']['reserve_account_id']:
- raise osv.except_osv(_('Warning'),_('Please define the Reserve and Profit/Loss account for current user company !'))
- data = self.pre_print_report(cr, uid, ids, data, context=context)
- if data['form']['display_type']:
- return {
- 'type': 'ir.actions.report.xml',
- 'report_name': 'account.balancesheet.horizontal',
- 'datas': data,
- }
- else:
- return {
- 'type': 'ir.actions.report.xml',
- 'report_name': 'account.balancesheet',
- 'datas': data,
- }
-
-account_bs_report()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_balance_sheet_view.xml b/addons/account/wizard/account_report_balance_sheet_view.xml
deleted file mode 100644
index faac52388a1..00000000000
--- a/addons/account/wizard/account_report_balance_sheet_view.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-
-
-
-
-
- Account Balance Sheet
- account.bs.report
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Balance Sheet
- account.bs.report
- ir.actions.act_window
- form
- form
-
- new
-
-
-
-
-
-
diff --git a/addons/account/wizard/account_report_profit_loss.py b/addons/account/wizard/account_report_profit_loss.py
deleted file mode 100644
index f4c2897bfe0..00000000000
--- a/addons/account/wizard/account_report_profit_loss.py
+++ /dev/null
@@ -1,62 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import osv, fields
-
-class account_pl_report(osv.osv_memory):
- """
- This wizard will provide the account profit and loss report by periods, between any two dates.
- """
- _inherit = "account.common.account.report"
- _name = "account.pl.report"
- _description = "Account Profit And Loss Report"
-
- _columns = {
- 'display_type': fields.boolean("Landscape Mode"),
- 'journal_ids': fields.many2many('account.journal', 'account_pl_report_journal_rel', 'account_id', 'journal_id', 'Journals', required=True),
- }
-
- _defaults = {
- 'display_type': False,
- 'journal_ids': [],
- }
-
- def _print_report(self, cr, uid, ids, data, context=None):
- if context is None:
- context = {}
- data = self.pre_print_report(cr, uid, ids, data, context=context)
- data['form'].update(self.read(cr, uid, ids, ['display_type'])[0])
- if data['form']['display_type']:
- return {
- 'type': 'ir.actions.report.xml',
- 'report_name': 'pl.account.horizontal',
- 'datas': data,
- }
- else:
- return {
- 'type': 'ir.actions.report.xml',
- 'report_name': 'pl.account',
- 'datas': data,
- }
-
-account_pl_report()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_report_profit_loss_view.xml b/addons/account/wizard/account_report_profit_loss_view.xml
deleted file mode 100644
index 75b6766ff87..00000000000
--- a/addons/account/wizard/account_report_profit_loss_view.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
- Profit and Loss
- account.pl.report
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Account Profit And Loss
- account.pl.report
- ir.actions.act_window
- form
- form
-
- new
-
-
-
-
-
-
-
-
From ef32f0336038944b4a05f8b41503d7aa76d66a15 Mon Sep 17 00:00:00 2001
From: "Quentin (OpenERP)"
Date: Fri, 9 Dec 2011 17:29:42 +0100
Subject: [PATCH 051/135] [FIX] account: removed unwanted sort() on accounts
when computing the lines of a financial report
bzr revid: qdp-launchpad@openerp.com-20111209162942-9h27unjf3jyf3gll
---
addons/account/report/account_financial_report.py | 1 -
1 file changed, 1 deletion(-)
diff --git a/addons/account/report/account_financial_report.py b/addons/account/report/account_financial_report.py
index 837b3dee6ff..7657ec230e6 100644
--- a/addons/account/report/account_financial_report.py
+++ b/addons/account/report/account_financial_report.py
@@ -68,7 +68,6 @@ class report_account_common(report_sxw.rml_parse, common_report_header):
account_ids = account_obj._get_children_and_consol(self.cr, self.uid, [x.id for x in report.account_ids])
elif report.type == 'account_type' and report.account_type_ids:
account_ids = account_obj.search(self.cr, self.uid, [('user_type','in', [x.id for x in report.account_type_ids])])
- account_ids.sort()
if account_ids:
for account in account_obj.browse(self.cr, self.uid, account_ids, context=data['form']['used_context']):
flag = False
From 8ba72ec3902431e1355bec08d5ea92106ae21d4c Mon Sep 17 00:00:00 2001
From: "Quentin (OpenERP)"
Date: Fri, 9 Dec 2011 17:38:36 +0100
Subject: [PATCH 052/135] [FIX] account, financial reports: display flat must
not print view accounts
bzr revid: qdp-launchpad@openerp.com-20111209163836-3rcq5mkfesg2vhq6
---
addons/account/report/account_financial_report.py | 2 ++
1 file changed, 2 insertions(+)
diff --git a/addons/account/report/account_financial_report.py b/addons/account/report/account_financial_report.py
index 7657ec230e6..d4d33426eb1 100644
--- a/addons/account/report/account_financial_report.py
+++ b/addons/account/report/account_financial_report.py
@@ -70,6 +70,8 @@ class report_account_common(report_sxw.rml_parse, common_report_header):
account_ids = account_obj.search(self.cr, self.uid, [('user_type','in', [x.id for x in report.account_type_ids])])
if account_ids:
for account in account_obj.browse(self.cr, self.uid, account_ids, context=data['form']['used_context']):
+ if report.display_detail == 'only_detail' and account.type == 'view':
+ continue
flag = False
vals = {
'name': account.code + ' ' + account.name,
From 5030f3e6d17125b35e6be7928930fb0f0bc0ed42 Mon Sep 17 00:00:00 2001
From: "Turkesh Patel (Open ERP)"
Date: Mon, 12 Dec 2011 11:52:25 +0530
Subject: [PATCH 053/135] [IMP] solved the error in yml test case
bzr revid: tpa@tinyerp.com-20111212062225-pjqkhlz7nbg1k09h
---
addons/marketing_campaign/marketing_campaign_demo.xml | 4 ++--
addons/marketing_campaign/test/marketing_campaign.yml | 5 -----
2 files changed, 2 insertions(+), 7 deletions(-)
diff --git a/addons/marketing_campaign/marketing_campaign_demo.xml b/addons/marketing_campaign/marketing_campaign_demo.xml
index df01161182e..aaf5a98c6bc 100644
--- a/addons/marketing_campaign/marketing_campaign_demo.xml
+++ b/addons/marketing_campaign/marketing_campaign_demo.xml
@@ -63,7 +63,7 @@
-
+
@@ -78,7 +78,7 @@
Partners
- [('name','like','agrolait')]
+ [('name','like','Agrolait')]
res.partner
diff --git a/addons/marketing_campaign/test/marketing_campaign.yml b/addons/marketing_campaign/test/marketing_campaign.yml
index 18b3d95a911..562e2f981e0 100644
--- a/addons/marketing_campaign/test/marketing_campaign.yml
+++ b/addons/marketing_campaign/test/marketing_campaign.yml
@@ -7,11 +7,6 @@
-
!assert {model: marketing.campaign, id: marketing_campaign_openerppartnerchannel}:
- state == 'running'
--
- I assign segment to campaign.
--
- !record {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
- campaign_id: marketing_campaign_openerppartnerchannel
-
I start this segment after assinged campaign.
-
From c922cd895f81ee396be35424ebe247db2f2e025d Mon Sep 17 00:00:00 2001
From: "Ujjvala Collins (OpenERP)"
Date: Mon, 12 Dec 2011 12:44:29 +0530
Subject: [PATCH 054/135] [FIX] marketing_campaign: Resolved conflicts.
bzr revid: uco@tinyerp.com-20111212071429-42kl7qrteufbkyna
---
.../marketing_campaign_demo.xml | 40 -------------------
1 file changed, 40 deletions(-)
diff --git a/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml b/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml
index 26ea71f1618..7b45c959035 100644
--- a/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml
+++ b/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml
@@ -39,10 +39,6 @@
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
Hello,Thanks for generous interest you have shown in the openERP.Regards,OpenERP Team,
For OpenERP OnDemand Free Trial 2010
@@ -52,10 +48,6 @@
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
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.
@@ -64,20 +56,12 @@
For OpenERP Discovery Day on May 2010
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
Thanks for subscribing to the OpenERP Discovery Day
info@tinyerp.com
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
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.
@@ -85,20 +69,12 @@
For OpenERP Discovery Day
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
Thanks for buying the OpenERP book
info@tinyerp.com
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
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.
@@ -112,10 +88,6 @@
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
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.
@@ -130,10 +102,6 @@
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
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.
@@ -148,10 +116,6 @@
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
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.
@@ -166,10 +130,6 @@
-<<<<<<< TREE
-
-=======
->>>>>>> MERGE-SOURCE
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,
For subscribing to technical training
From 96f745fe2666fb7bc7fb92bd87c4dc53a2470eba Mon Sep 17 00:00:00 2001
From: vishmita
Date: Mon, 12 Dec 2011 16:52:19 +0530
Subject: [PATCH 055/135] [FIX]fixed change color of readonly fields.
bzr revid: vja@vja-desktop-20111212112219-pfynaaoob1th8qq8
---
addons/web/static/src/css/base.css | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 69bf11b820e..49583b86efc 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -1122,7 +1122,7 @@ label.error {
padding-top: 2px;
}
.openerp .oe_forms input[disabled],.openerp .oe_forms select[disabled], .openerp .oe_forms textarea[disabled]{
- background: #EBEBE4 !important;
+ background: #E0E0E0;
}
.openerp .oe_forms textarea {
resize:vertical;
From e903fc7761146e93e53ac9bfdde909ceeab9389c Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Mon, 12 Dec 2011 17:00:01 +0100
Subject: [PATCH 056/135] [imp] added disconnected feature
bzr revid: nicolas.vanhoren@openerp.com-20111212160001-vglc3zqz10hlter5
---
addons/point_of_sale/static/src/js/pos.js | 76 ++++++++++++++++++-----
1 file changed, 59 insertions(+), 17 deletions(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 4af1d8d524b..39408d1122b 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -34,9 +34,13 @@ openerp.point_of_sale = function(db) {
init: function() {
this.data = {};
},
- get: function(key) {
+ get: function(key, _default) {
if (this.data[key] === undefined) {
- this.data[key] = JSON.parse(localStorage['oe_pos_' + key]);
+ var stored = localStorage['oe_pos_' + key];
+ if (stored)
+ this.data[key] = JSON.parse(stored);
+ else
+ return _default;
}
return this.data[key];
},
@@ -48,8 +52,12 @@ openerp.point_of_sale = function(db) {
/*
Gets all the necessary data from the OpenERP web client (session, shop data etc.)
*/
- var Pos = db.web.Class.extend({
- init: function(session) {
+ var Pos = Backbone.Model.extend({
+ initialize: function(session, attributes) {
+ Backbone.Model.prototype.initialize.call(this, attributes);
+ this.store = new Store();
+ this.ready = $.Deferred();
+ this.flush_mutex = new $.Mutex();
this.build_tree = _.bind(this.build_tree, this);
this.session = session;
$.when(this.fetch('pos.category', ['name', 'parent_id', 'child_id']),
@@ -58,21 +66,56 @@ openerp.point_of_sale = function(db) {
this.fetch('account.journal', ['auto_cash', 'check_dtls', 'currency', 'name', 'type']))
.then(this.build_tree);
},
- ready: $.Deferred(),
- store: new Store(),
+ get: function(attribute) {
+ if (attribute === 'pending_operations') {
+ return this.store.get('pending_operations', []);
+ }
+ return Backbone.Model.prototype.get.call(this, attribute);
+ },
+ set: function(attributes, options) {
+ _.each(attributes, _.bind(function (value, attribute) {
+ if (attribute === 'pending_operations') {
+ this.store.set('pending_operations', value);
+ }
+ }, this));
+ return Backbone.Model.prototype.set.call(this, attributes, options);
+ },
fetch: function(osvModel, fields, domain) {
var dataSetSearch;
var self = this;
- var callback = function(result) {
- return self.store.set(osvModel, result);
- };
dataSetSearch = new db.web.DataSetSearch(this, osvModel, {}, domain);
- return dataSetSearch.read_slice(fields, 0).then(callback);
+ return dataSetSearch.read_slice(fields, 0).then(function(result) {
+ return self.store.set(osvModel, result);
+ });
},
- push: function(osvModel, record, callback, errorCallback) {
- var dataSet;
- dataSet = new db.web.DataSet(this, osvModel, null);
- return dataSet.create(record, callback, errorCallback);
+ push: function(osvModel, record) {
+ var ops = this.get('pending_operations');
+ ops.push({model: osvModel, record: record});
+ this.set({pending_operations: ops});
+ return this.flush();
+ },
+ flush: function() {
+ return this.flush_mutex.exec(_.bind(function() {
+ return this._int_flush();
+ }, this));
+ },
+ _int_flush : function() {
+ var ops = this.get('pending_operations');
+ if (ops.length === 0)
+ return $.when();
+ var op = ops[0];
+ var dataSet = new db.web.DataSet(this, op.model, null);
+ /* we prevent the default error handler and assume errors
+ * are a normal use case, except we stop the current iteration
+ */
+ return dataSet.create(op.record).fail(function(unused, event) {
+ event.preventDefault();
+ }).pipe(_.bind(function() {
+ console.debug('saved 1 record');
+ var ops2 = this.get('pending_operations');
+ this.set({'pending_operations': _.without(ops2, op)});
+ return this._int_flush();
+ }, this), function() {return $.when()});
},
categories: {},
build_tree: function() {
@@ -828,12 +871,11 @@ openerp.point_of_sale = function(db) {
validateCurrentOrder: function() {
var callback, currentOrder;
currentOrder = this.shop.get('selectedOrder');
- callback = _.bind(function() {
+ pos.push('pos.order', currentOrder.exportAsJSON()).then(_.bind(function() {
return currentOrder.set({
validated: true
});
- }, this);
- pos.push('pos.order', currentOrder.exportAsJSON(), callback);
+ }, this));
},
bindPaymentLineEvents: function() {
this.currentPaymentLines = (this.shop.get('selectedOrder')).get('paymentLines');
From ff182cf4885331864f5046ba8e216257c2fba8b4 Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Mon, 12 Dec 2011 17:05:58 +0100
Subject: [PATCH 057/135] [imp] disables the payment button during asynch
events
bzr revid: nicolas.vanhoren@openerp.com-20111212160558-4mm45tdsiao08fqf
---
addons/point_of_sale/static/src/js/pos.js | 2 ++
1 file changed, 2 insertions(+)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 39408d1122b..5022601063e 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -871,7 +871,9 @@ openerp.point_of_sale = function(db) {
validateCurrentOrder: function() {
var callback, currentOrder;
currentOrder = this.shop.get('selectedOrder');
+ $('button#validate-order', this.$element).attr('disabled', 'disabled');
pos.push('pos.order', currentOrder.exportAsJSON()).then(_.bind(function() {
+ $('button#validate-order', this.$element).removeAttr('disabled');
return currentOrder.set({
validated: true
});
From 6bbc8b1e31acc4a64b6fe27b51d3dfd2a9556b57 Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Mon, 12 Dec 2011 17:12:18 +0100
Subject: [PATCH 058/135] [imp] renammed "Back" into "Close"
bzr revid: nicolas.vanhoren@openerp.com-20111212161218-9dfsm336yg25qsxw
---
addons/point_of_sale/static/src/xml/pos.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/addons/point_of_sale/static/src/xml/pos.xml b/addons/point_of_sale/static/src/xml/pos.xml
index 74ff2229729..d8647aaccc9 100644
--- a/addons/point_of_sale/static/src/xml/pos.xml
+++ b/addons/point_of_sale/static/src/xml/pos.xml
@@ -25,7 +25,7 @@
- Back
+ Close
From b9224210c3d509e69120315e2354c314721bfa26 Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Mon, 12 Dec 2011 17:42:12 +0100
Subject: [PATCH 059/135] [imp] added startup code for synchronisation icon
bzr revid: nicolas.vanhoren@openerp.com-20111212164212-3jsfl1fltk6blq93
---
addons/point_of_sale/static/src/js/pos.js | 21 ++++++++++++++++++---
1 file changed, 18 insertions(+), 3 deletions(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 5022601063e..79cba643647 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -1167,14 +1167,18 @@ openerp.point_of_sale = function(db) {
template: "PointOfSale",
start: function() {
var self = this;
- this.$element.find("#loggedas button").click(function() {
- self.stop();
- });
if (pos)
throw "It is not possible to instantiate multiple instances "+
"of the point of sale at the same time.";
pos = new Pos(this.session);
+
+ pos.bind('change:pending_operations', this.changed_pending_operations, this);
+ this.changed_pending_operations();
+
+ this.$element.find("#loggedas button").click(function() {
+ self.try_close();
+ });
this.$element.find('#steps').buttonset();
@@ -1185,6 +1189,17 @@ openerp.point_of_sale = function(db) {
pos.app = new App(self.$element);
});
},
+ changed_pending_operations: function () {
+ var operations = pos.get('pending_operations');
+ var number = operations.length;
+
+ },
+ try_close: function() {
+ this.close();
+ },
+ close: function() {
+ this.stop();
+ },
stop: function() {
$('.oe_footer').show();
$('.oe_toggle_secondary_menu').show();
From f9524f5dba526a802a050844df939f0967f5e806 Mon Sep 17 00:00:00 2001
From: "Turkesh Patel (Open ERP)"
Date: Tue, 13 Dec 2011 10:52:38 +0530
Subject: [PATCH 060/135] [IMP] improvement in YML test cases in
marketing_campaign module
bzr revid: tpa@tinyerp.com-20111213052238-kuk13vidnoa3fwhq
---
.../marketing_campaign/marketing_campaign.py | 5 +-
.../test/marketing_campaign.yml | 50 +++++++++++++++++--
2 files changed, 50 insertions(+), 5 deletions(-)
diff --git a/addons/marketing_campaign/marketing_campaign.py b/addons/marketing_campaign/marketing_campaign.py
index 2ec05d17d9b..4e6f6a5227e 100644
--- a/addons/marketing_campaign/marketing_campaign.py
+++ b/addons/marketing_campaign/marketing_campaign.py
@@ -164,11 +164,12 @@ Normal - the campaign runs normally and automatically sends all emails and repor
self.write(cr, uid, ids, {'state': 'cancelled'})
return True
-
+ # dead code
def signal(self, cr, uid, model, res_id, signal, run_existing=True, context=None):
record = self.pool.get(model).browse(cr, uid, res_id, context)
return self._signal(cr, uid, record, signal, run_existing, context)
+ #dead code
def _signal(self, cr, uid, record, signal, run_existing=True, context=None):
if not signal:
raise ValueError('signal cannot be False')
@@ -461,6 +462,7 @@ class marketing_campaign_activity(osv.osv):
return super(marketing_campaign_activity, self).search(cr, uid, args,
offset, limit, order, context, count)
+ #dead code
def _process_wi_report(self, cr, uid, activity, workitem, context=None):
service = netsvc.LocalService('report.%s'%activity.report_id.report_name)
(report_data, format) = service.create(cr, uid, [], {}, {})
@@ -481,6 +483,7 @@ class marketing_campaign_activity(osv.osv):
activity.email_template_id.id,
workitem.res_id, context=context)
+ #dead code
def _process_wi_action(self, cr, uid, activity, workitem, context=None):
if context is None:
context = {}
diff --git a/addons/marketing_campaign/test/marketing_campaign.yml b/addons/marketing_campaign/test/marketing_campaign.yml
index 562e2f981e0..1b7a7fa2ae3 100644
--- a/addons/marketing_campaign/test/marketing_campaign.yml
+++ b/addons/marketing_campaign/test/marketing_campaign.yml
@@ -20,7 +20,27 @@
I synchronized segment manually to see all step of activity and process covered on this campaign.
-
!python {model: marketing.campaign.segment}: |
+ segment_id = self.browse(cr ,uid ,ref("marketing_campaign_segment0") ,context)
+ assert segment_id.date_next_sync, 'Next Synchronization date is not calculated.'
self.synchroniz(cr, uid, [ref("marketing_campaign_segment0")])
+-
+ I cancel Marketing Workitems.
+-
+ !python {model: marketing.campaign.workitem}: |
+ ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
+ ('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel'))])
+ self.button_cancel(cr, uid, ids)
+ record = self.browse(cr, uid, ids[0])
+ assert record.state == 'cancelled' or record.state == 'done' , 'Marketing Workitem shoud be in cancel state.'
+-
+ I set Marketing Workitems in draft state.
+-
+ !python {model: marketing.campaign.workitem}: |
+ ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
+ ('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel'))])
+ self.button_draft(cr, uid, ids)
+ record = self.browse(cr, uid, ids[0])
+ assert record.state == 'todo' or record.state == 'done' , 'Marketing Workitem shoud be in draft state.'
-
I check followup detail of first activity.
-
@@ -28,7 +48,9 @@
ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_0'))])
assert ids, 'Followup item is not created for first activity.'
--
+ work_item_id = self.browse(cr ,uid ,ids[0] ,context)
+ assert work_item_id.res_name, 'Resource Name is not defined.'
+-
I process followup of first activity.
-
!python {model: marketing.campaign.workitem}: |
@@ -49,7 +71,7 @@
-
!python {model: res.partner}: |
self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':41000}, context=context)
--
+-
I process followup of second activity after set draft.
-
!python {model: marketing.campaign.workitem}: |
@@ -71,7 +93,7 @@
-
!python {model: res.partner}: |
self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':151000}, context=context)
--
+-
I process followup of third activity after set draft.
-
!python {model: marketing.campaign.workitem}: |
@@ -89,7 +111,27 @@
('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_2'))])
self.preview(cr, uid, ids)
-
- I close segmentation After completion of all activity.
+ I cancel segmentation because of some activity.
+-
+ !workflow {model: marketing.campaign.segment, action: state_cancel_set, ref: marketing_campaign_segment0}
+-
+ I check the segmentation is canceled.
+-
+ !assert {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
+ - state == 'cancelled'
+-
+ I reopen the segmentation.
+-
+ !workflow {model: marketing.campaign.segment, action: state_draft_set, ref: marketing_campaign_segment0}
+-
+ !workflow {model: marketing.campaign.segment, action: state_running_set, ref: marketing_campaign_segment0}
+-
+ I check the segment on Running mode after started.
+-
+ !assert {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
+ - state == 'running'
+-
+ I close segmentation After completion of all activity.
-
!workflow {model: marketing.campaign.segment, action: state_done_set, ref: marketing_campaign_segment0}
-
From 1dedc1d259ded376963a650cb6059d60058f7e70 Mon Sep 17 00:00:00 2001
From: "Ujjvala Collins (OpenERP)"
Date: Tue, 13 Dec 2011 17:15:07 +0530
Subject: [PATCH 061/135] [IMP] account: Changed value of selection field
'only_detail' by 'detail_flat'. auction,hr_payroll_account,l10n_de: Changed
demo data according to change in xml ids of account types.
bzr revid: uco@tinyerp.com-20111213114507-733esietgnh04z5l
---
addons/account/account.py | 4 +-
.../report/account_financial_report.py | 2 +-
addons/auction/auction_demo.xml | 8 +-
.../hr_payroll_account_demo.xml | 6 +-
addons/l10n_de/account_chart_skr03.xml | 2080 ++++++-------
addons/l10n_de/account_chart_skr04.xml | 2660 ++++++++---------
addons/l10n_de/account_types_skr03.xml | 4 +-
addons/l10n_de/account_types_skr04.xml | 4 +-
8 files changed, 2384 insertions(+), 2384 deletions(-)
diff --git a/addons/account/account.py b/addons/account/account.py
index e1f1385c882..6e9ed9f1331 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -3006,7 +3006,7 @@ class account_financial_report(osv.osv):
'account_ids': fields.many2many('account.account', 'account_account_financial_report', 'report_line_id', 'account_id', 'Accounts'),
'display_detail': fields.selection([
('no_detail','No detail'),
- ('only_detail','Display children flat'),
+ ('detail_flat','Display children flat'),
('detail_with_hierarchy','Display children with hierarchy')
], 'Display details'),
'account_report_id': fields.many2one('account.financial.report', 'Report Value'),
@@ -3016,7 +3016,7 @@ class account_financial_report(osv.osv):
_defaults = {
'type': 'sum',
- 'display_detail': 'only_detail',
+ 'display_detail': 'detail_flat',
'sign': 1,
}
diff --git a/addons/account/report/account_financial_report.py b/addons/account/report/account_financial_report.py
index d4d33426eb1..c3b1f5e2e1a 100644
--- a/addons/account/report/account_financial_report.py
+++ b/addons/account/report/account_financial_report.py
@@ -70,7 +70,7 @@ class report_account_common(report_sxw.rml_parse, common_report_header):
account_ids = account_obj.search(self.cr, self.uid, [('user_type','in', [x.id for x in report.account_type_ids])])
if account_ids:
for account in account_obj.browse(self.cr, self.uid, account_ids, context=data['form']['used_context']):
- if report.display_detail == 'only_detail' and account.type == 'view':
+ if report.display_detail == 'detail_flat' and account.type == 'view':
continue
flag = False
vals = {
diff --git a/addons/auction/auction_demo.xml b/addons/auction/auction_demo.xml
index e93cc3ea04d..5566719a56d 100644
--- a/addons/auction/auction_demo.xml
+++ b/addons/auction/auction_demo.xml
@@ -21,7 +21,7 @@
-
+
@@ -32,13 +32,13 @@
-
+
Auction Adjudications
A7x*
-
+
other
@@ -47,7 +47,7 @@
Auction Adjudication Expenses
A6x*
-
+
other
diff --git a/addons/hr_payroll_account/hr_payroll_account_demo.xml b/addons/hr_payroll_account/hr_payroll_account_demo.xml
index 6372dabc723..ed6371a6f4d 100644
--- a/addons/hr_payroll_account/hr_payroll_account_demo.xml
+++ b/addons/hr_payroll_account/hr_payroll_account_demo.xml
@@ -81,7 +81,7 @@
Bank Current Account
liquidity
-
+
@@ -89,7 +89,7 @@
Salary Expenses
other
-
+
@@ -98,7 +98,7 @@
payable
-
+
diff --git a/addons/l10n_de/account_chart_skr03.xml b/addons/l10n_de/account_chart_skr03.xml
index 7a7e1fb8ee0..74af8bb976d 100644
--- a/addons/l10n_de/account_chart_skr03.xml
+++ b/addons/l10n_de/account_chart_skr03.xml
@@ -964,7 +964,7 @@
8339
other
-
+
@@ -972,7 +972,7 @@
3724
other
-
+
@@ -980,7 +980,7 @@
4300
other
-
+
@@ -988,7 +988,7 @@
0280
other
-
+
@@ -996,7 +996,7 @@
8300
other
-
+
@@ -1004,7 +1004,7 @@
4370
other
-
+
@@ -1012,7 +1012,7 @@
4520
other
-
+
@@ -1020,7 +1020,7 @@
3710
other
-
+
@@ -1028,7 +1028,7 @@
4149
other
-
+
@@ -1036,7 +1036,7 @@
0939
other
-
+
@@ -1044,7 +1044,7 @@
3551
other
-
+
@@ -1052,7 +1052,7 @@
3550
other
-
+
@@ -1060,7 +1060,7 @@
4145
other
-
+
@@ -1068,7 +1068,7 @@
1940
other
-
+
@@ -1076,7 +1076,7 @@
0930
other
-
+
@@ -1084,7 +1084,7 @@
0931
other
-
+
@@ -1092,7 +1092,7 @@
0932
other
-
+
@@ -1100,7 +1100,7 @@
3558
other
-
+
@@ -1108,7 +1108,7 @@
2171
other
-
+
@@ -1116,7 +1116,7 @@
3850
other
-
+
@@ -1124,7 +1124,7 @@
8905
other
-
+
@@ -1132,7 +1132,7 @@
8800
other
-
+
@@ -1140,7 +1140,7 @@
8906
other
-
+
@@ -1148,7 +1148,7 @@
4306
other
-
+
@@ -1156,7 +1156,7 @@
8900
other
-
+
@@ -1164,7 +1164,7 @@
8726
other
-
+
@@ -1172,7 +1172,7 @@
4969
other
-
+
@@ -1180,7 +1180,7 @@
4175
other
-
+
@@ -1188,7 +1188,7 @@
1793
other
-
+
@@ -1196,7 +1196,7 @@
1792
other
-
+
@@ -1204,7 +1204,7 @@
1791
other
-
+
@@ -1212,7 +1212,7 @@
1790
other
-
+
@@ -1220,7 +1220,7 @@
1795
other
-
+
@@ -1228,7 +1228,7 @@
1490
receivable
-
+
@@ -1236,7 +1236,7 @@
1491
other
-
+
@@ -1244,7 +1244,7 @@
7095
other
-
+
@@ -1252,7 +1252,7 @@
1495
other
-
+
@@ -1260,7 +1260,7 @@
1498
other
-
+
@@ -1268,7 +1268,7 @@
1499
other
-
+
@@ -1276,7 +1276,7 @@
0998
other
-
+
@@ -1284,7 +1284,7 @@
1700
other
-
+
@@ -1292,7 +1292,7 @@
0720
other
-
+
@@ -1300,7 +1300,7 @@
1702
other
-
+
@@ -1308,7 +1308,7 @@
1703
other
-
+
@@ -1316,7 +1316,7 @@
0725
other
-
+
@@ -1324,7 +1324,7 @@
1705
other
-
+
@@ -1332,7 +1332,7 @@
1706
other
-
+
@@ -1340,7 +1340,7 @@
1707
other
-
+
@@ -1348,7 +1348,7 @@
1708
other
-
+
@@ -1356,7 +1356,7 @@
1709
other
-
+
@@ -1364,7 +1364,7 @@
0680
other
-
+
@@ -1372,7 +1372,7 @@
2315
other
-
+
@@ -1380,7 +1380,7 @@
2312
other
-
+
@@ -1388,7 +1388,7 @@
2313
other
-
+
@@ -1396,7 +1396,7 @@
2310
other
-
+
@@ -1404,7 +1404,7 @@
2311
other
-
+
@@ -1412,7 +1412,7 @@
4831
other
-
+
@@ -1420,7 +1420,7 @@
4830
other
-
+
@@ -1428,7 +1428,7 @@
4960
other
-
+
@@ -1436,7 +1436,7 @@
1661
other
-
+
@@ -1444,7 +1444,7 @@
1660
other
-
+
@@ -1452,7 +1452,7 @@
0112
other
-
+
@@ -1460,7 +1460,7 @@
0113
other
-
+
@@ -1468,7 +1468,7 @@
0059
other
-
+
@@ -1476,7 +1476,7 @@
0111
other
-
+
@@ -1484,7 +1484,7 @@
0115
other
-
+
@@ -1492,7 +1492,7 @@
1120
liquidity
-
+
@@ -1500,7 +1500,7 @@
4320
other
-
+
@@ -1508,7 +1508,7 @@
8600
other
-
+
@@ -1516,7 +1516,7 @@
0050
other
-
+
@@ -1524,7 +1524,7 @@
8605
other
-
+
@@ -1532,7 +1532,7 @@
3140
other
-
+
@@ -1540,7 +1540,7 @@
4654
other
-
+
@@ -1548,7 +1548,7 @@
4964
other
-
+
@@ -1556,7 +1556,7 @@
4651
other
-
+
@@ -1564,7 +1564,7 @@
3145
other
-
+
@@ -1572,7 +1572,7 @@
4653
other
-
+
@@ -1580,7 +1580,7 @@
4652
other
-
+
@@ -1588,7 +1588,7 @@
4137
other
-
+
@@ -1596,7 +1596,7 @@
4550
other
-
+
@@ -1604,7 +1604,7 @@
8660
other
-
+
@@ -1612,7 +1612,7 @@
8749
other
-
+
@@ -1620,7 +1620,7 @@
0750
other
-
+
@@ -1628,7 +1628,7 @@
1455
other
-
+
@@ -1636,7 +1636,7 @@
3749
other
-
+
@@ -1644,7 +1644,7 @@
3610
other
-
+
@@ -1652,7 +1652,7 @@
2381
other
-
+
@@ -1660,7 +1660,7 @@
2380
other
-
+
@@ -1668,7 +1668,7 @@
2383
other
-
+
@@ -1676,7 +1676,7 @@
2382
other
-
+
@@ -1684,7 +1684,7 @@
2385
other
-
+
@@ -1692,7 +1692,7 @@
2384
other
-
+
@@ -1700,7 +1700,7 @@
0200
other
-
+
@@ -1708,7 +1708,7 @@
2386
other
-
+
@@ -1716,7 +1716,7 @@
0615
other
-
+
@@ -1724,7 +1724,7 @@
2388
other
-
+
@@ -1732,7 +1732,7 @@
1401
receivable
-
+
@@ -1740,7 +1740,7 @@
1400
receivable
-
+
@@ -1748,7 +1748,7 @@
1010
liquidity
-
+
@@ -1756,7 +1756,7 @@
0610
other
-
+
@@ -1764,7 +1764,7 @@
8730
other
-
+
@@ -1772,7 +1772,7 @@
1518
other
-
+
@@ -1780,7 +1780,7 @@
4215
other
-
+
@@ -1788,7 +1788,7 @@
8514
other
-
+
@@ -1796,7 +1796,7 @@
1130
liquidity
-
+
@@ -1804,7 +1804,7 @@
1230
liquidity
-
+
@@ -1812,7 +1812,7 @@
4210
other
-
+
@@ -1820,7 +1820,7 @@
4198
other
-
+
@@ -1828,7 +1828,7 @@
1449
other
-
+
@@ -1836,7 +1836,7 @@
8750
other
-
+
@@ -1844,7 +1844,7 @@
8828
other
-
+
@@ -1852,7 +1852,7 @@
4219
other
-
+
@@ -1860,7 +1860,7 @@
1330
liquidity
-
+
@@ -1868,7 +1868,7 @@
4190
other
-
+
@@ -1876,7 +1876,7 @@
0100
other
-
+
@@ -1884,7 +1884,7 @@
0079
other
-
+
@@ -1892,7 +1892,7 @@
0730
other
-
+
@@ -1900,7 +1900,7 @@
4355
other
-
+
@@ -1908,7 +1908,7 @@
8125
other
-
+
@@ -1916,7 +1916,7 @@
4350
other
-
+
@@ -1924,7 +1924,7 @@
4260
other
-
+
@@ -1932,7 +1932,7 @@
2387
other
-
+
@@ -1940,7 +1940,7 @@
1516
other
-
+
@@ -1948,7 +1948,7 @@
1448
other
-
+
@@ -1956,7 +1956,7 @@
4815
other
-
+
@@ -1964,7 +1964,7 @@
1511
other
-
+
@@ -1972,7 +1972,7 @@
1840
other
-
+
@@ -1980,7 +1980,7 @@
1510
other
-
+
@@ -1988,7 +1988,7 @@
1537
other
-
+
@@ -1996,7 +1996,7 @@
1240
liquidity
-
+
@@ -2004,7 +2004,7 @@
3090
other
-
+
@@ -2012,7 +2012,7 @@
1531
other
-
+
@@ -2020,7 +2020,7 @@
1530
other
-
+
@@ -2028,7 +2028,7 @@
4950
other
-
+
@@ -2036,7 +2036,7 @@
2166
other
-
+
@@ -2044,7 +2044,7 @@
4957
other
-
+
@@ -2052,7 +2052,7 @@
1539
other
-
+
@@ -2060,7 +2060,7 @@
1538
other
-
+
@@ -2068,7 +2068,7 @@
2617
other
-
+
@@ -2076,7 +2076,7 @@
2616
other
-
+
@@ -2084,7 +2084,7 @@
2615
other
-
+
@@ -2092,7 +2092,7 @@
4905
other
-
+
@@ -2100,7 +2100,7 @@
3800
other
-
+
@@ -2108,7 +2108,7 @@
2619
other
-
+
@@ -2116,7 +2116,7 @@
2618
other
-
+
@@ -2124,7 +2124,7 @@
0970
other
-
+
@@ -2132,7 +2132,7 @@
0971
other
-
+
@@ -2140,7 +2140,7 @@
0972
other
-
+
@@ -2148,7 +2148,7 @@
0973
other
-
+
@@ -2156,7 +2156,7 @@
0974
other
-
+
@@ -2164,7 +2164,7 @@
3559
other
-
+
@@ -2172,7 +2172,7 @@
0976
other
-
+
@@ -2180,7 +2180,7 @@
0977
other
-
+
@@ -2188,7 +2188,7 @@
0978
other
-
+
@@ -2196,7 +2196,7 @@
0979
other
-
+
@@ -2204,7 +2204,7 @@
3125
other
-
+
@@ -2212,7 +2212,7 @@
1900
other
-
+
@@ -2220,7 +2220,7 @@
8940
other
-
+
@@ -2228,7 +2228,7 @@
8190
other
-
+
@@ -2236,7 +2236,7 @@
8196
other
-
+
@@ -2244,7 +2244,7 @@
8400
other
-
+
@@ -2252,7 +2252,7 @@
8300
other
-
+
@@ -2260,7 +2260,7 @@
8947
other
-
+
@@ -2268,7 +2268,7 @@
8195
other
-
+
@@ -2276,7 +2276,7 @@
8949
other
-
+
@@ -2284,7 +2284,7 @@
0500
other
-
+
@@ -2292,7 +2292,7 @@
8741
other
-
+
@@ -2300,7 +2300,7 @@
0505
other
-
+
@@ -2308,7 +2308,7 @@
0504
other
-
+
@@ -2316,7 +2316,7 @@
1731
other
-
+
@@ -2324,7 +2324,7 @@
2688
other
-
+
@@ -2332,7 +2332,7 @@
2689
other
-
+
@@ -2340,7 +2340,7 @@
2680
other
-
+
@@ -2348,7 +2348,7 @@
1000
liquidity
-
+
@@ -2356,7 +2356,7 @@
8922
other
-
+
@@ -2364,7 +2364,7 @@
8120
other
-
+
@@ -2372,7 +2372,7 @@
0147
other
-
+
@@ -2380,7 +2380,7 @@
0480
other
-
+
@@ -2388,7 +2388,7 @@
0630
other
-
+
@@ -2396,7 +2396,7 @@
0485
other
-
+
@@ -2404,7 +2404,7 @@
1465
other
-
+
@@ -2412,7 +2412,7 @@
8955
other
-
+
@@ -2420,7 +2420,7 @@
8650
other
-
+
@@ -2428,7 +2428,7 @@
7000
other
-
+
@@ -2436,7 +2436,7 @@
1990
other
-
+
@@ -2444,7 +2444,7 @@
4170
other
-
+
@@ -2452,7 +2452,7 @@
1626
other
-
+
@@ -2460,7 +2460,7 @@
1625
other
-
+
@@ -2468,7 +2468,7 @@
1624
other
-
+
@@ -2476,7 +2476,7 @@
4946
other
-
+
@@ -2484,7 +2484,7 @@
1628
other
-
+
@@ -2492,7 +2492,7 @@
8935
other
-
+
@@ -2500,7 +2500,7 @@
8839
other
-
+
@@ -2508,7 +2508,7 @@
8838
other
-
+
@@ -2516,7 +2516,7 @@
3960
other
-
+
@@ -2524,7 +2524,7 @@
8933
other
-
+
@@ -2532,7 +2532,7 @@
8837
other
-
+
@@ -2540,7 +2540,7 @@
4340
other
-
+
@@ -2548,7 +2548,7 @@
0570
other
-
+
@@ -2556,7 +2556,7 @@
8939
other
-
+
@@ -2564,7 +2564,7 @@
8851
other
-
+
@@ -2572,7 +2572,7 @@
7140
other
-
+
@@ -2580,7 +2580,7 @@
8917
other
-
+
@@ -2588,7 +2588,7 @@
0513
other
-
+
@@ -2596,7 +2596,7 @@
8400
other
-
+
@@ -2604,7 +2604,7 @@
8850
other
-
+
@@ -2612,7 +2612,7 @@
2345
other
-
+
@@ -2620,7 +2620,7 @@
0650
other
-
+
@@ -2628,7 +2628,7 @@
2341
other
-
+
@@ -2636,7 +2636,7 @@
2340
other
-
+
@@ -2644,7 +2644,7 @@
2670
other
-
+
@@ -2652,7 +2652,7 @@
1190
liquidity
-
+
@@ -2660,7 +2660,7 @@
2349
other
-
+
@@ -2668,7 +2668,7 @@
2348
other
-
+
@@ -2676,7 +2676,7 @@
4880
other
-
+
@@ -2684,7 +2684,7 @@
1690
other
-
+
@@ -2692,7 +2692,7 @@
0890
other
-
+
@@ -2700,7 +2700,7 @@
0710
other
-
+
@@ -2708,7 +2708,7 @@
1756
other
-
+
@@ -2716,7 +2716,7 @@
1755
other
-
+
@@ -2724,7 +2724,7 @@
1754
other
-
+
@@ -2732,7 +2732,7 @@
1753
other
-
+
@@ -2740,7 +2740,7 @@
0715
other
-
+
@@ -2748,7 +2748,7 @@
0716
other
-
+
@@ -2756,7 +2756,7 @@
1750
other
-
+
@@ -2764,7 +2764,7 @@
0020
other
-
+
@@ -2772,7 +2772,7 @@
8160
other
-
+
@@ -2780,7 +2780,7 @@
0027
other
-
+
@@ -2788,7 +2788,7 @@
0025
other
-
+
@@ -2796,7 +2796,7 @@
4250
other
-
+
@@ -2804,7 +2804,7 @@
4885
other
-
+
@@ -2812,7 +2812,7 @@
0660
other
-
+
@@ -2820,7 +2820,7 @@
4500
other
-
+
@@ -2828,7 +2828,7 @@
0193
other
-
+
@@ -2836,7 +2836,7 @@
8790
other
-
+
@@ -2844,7 +2844,7 @@
3700
other
-
+
@@ -2852,7 +2852,7 @@
8736
other
-
+
@@ -2860,7 +2860,7 @@
8794
other
-
+
@@ -2868,7 +2868,7 @@
8723
other
-
+
@@ -2876,7 +2876,7 @@
1880
other
-
+
@@ -2884,7 +2884,7 @@
2120
other
-
+
@@ -2892,7 +2892,7 @@
2125
other
-
+
@@ -2900,7 +2900,7 @@
2127
other
-
+
@@ -2908,7 +2908,7 @@
2126
other
-
+
@@ -2916,7 +2916,7 @@
2129
other
-
+
@@ -2924,7 +2924,7 @@
2128
other
-
+
@@ -2932,7 +2932,7 @@
3115
other
-
+
@@ -2940,7 +2940,7 @@
3565
other
-
+
@@ -2948,7 +2948,7 @@
4660
other
-
+
@@ -2956,7 +2956,7 @@
4662
other
-
+
@@ -2964,7 +2964,7 @@
3110
other
-
+
@@ -2972,7 +2972,7 @@
0625
other
-
+
@@ -2980,7 +2980,7 @@
1579
other
-
+
@@ -2988,7 +2988,7 @@
1578
other
-
+
@@ -2996,7 +2996,7 @@
0620
other
-
+
@@ -3004,7 +3004,7 @@
8727
other
-
+
@@ -3012,7 +3012,7 @@
0150
other
-
+
@@ -3020,7 +3020,7 @@
1475
other
-
+
@@ -3028,7 +3028,7 @@
1573
other
-
+
@@ -3036,7 +3036,7 @@
1572
other
-
+
@@ -3044,7 +3044,7 @@
1571
other
-
+
@@ -3052,7 +3052,7 @@
1479
other
-
+
@@ -3060,7 +3060,7 @@
1577
other
-
+
@@ -3068,7 +3068,7 @@
1576
other
-
+
@@ -3076,7 +3076,7 @@
1575
other
-
+
@@ -3084,7 +3084,7 @@
0090
other
-
+
@@ -3092,7 +3092,7 @@
2712
other
-
+
@@ -3100,7 +3100,7 @@
1305
other
-
+
@@ -3108,7 +3108,7 @@
2659
other
-
+
@@ -3116,7 +3116,7 @@
2658
other
-
+
@@ -3124,7 +3124,7 @@
2716
other
-
+
@@ -3132,7 +3132,7 @@
1301
other
-
+
@@ -3140,7 +3140,7 @@
1302
other
-
+
@@ -3148,7 +3148,7 @@
2715
other
-
+
@@ -3156,7 +3156,7 @@
2653
other
-
+
@@ -3164,7 +3164,7 @@
1450
receivable
-
+
@@ -3172,7 +3172,7 @@
2650
other
-
+
@@ -3180,7 +3180,7 @@
2657
other
-
+
@@ -3188,7 +3188,7 @@
2656
other
-
+
@@ -3196,7 +3196,7 @@
2655
other
-
+
@@ -3204,7 +3204,7 @@
2654
other
-
+
@@ -3212,7 +3212,7 @@
4228
other
-
+
@@ -3220,7 +3220,7 @@
4229
other
-
+
@@ -3228,7 +3228,7 @@
4220
other
-
+
@@ -3236,7 +3236,7 @@
8540
other
-
+
@@ -3244,7 +3244,7 @@
8919
other
-
+
@@ -3252,7 +3252,7 @@
1830
other
-
+
@@ -3260,7 +3260,7 @@
8610
other
-
+
@@ -3268,7 +3268,7 @@
3794
other
-
+
@@ -3276,7 +3276,7 @@
4380
other
-
+
@@ -3284,7 +3284,7 @@
3790
other
-
+
@@ -3292,7 +3292,7 @@
2406
other
-
+
@@ -3300,7 +3300,7 @@
2407
other
-
+
@@ -3308,7 +3308,7 @@
2404
other
-
+
@@ -3316,7 +3316,7 @@
1372
other
-
+
@@ -3324,7 +3324,7 @@
2402
other
-
+
@@ -3332,7 +3332,7 @@
2403
other
-
+
@@ -3340,7 +3340,7 @@
2400
other
-
+
@@ -3348,7 +3348,7 @@
2401
other
-
+
@@ -3356,7 +3356,7 @@
4862
other
-
+
@@ -3364,7 +3364,7 @@
4860
other
-
+
@@ -3372,7 +3372,7 @@
4230
other
-
+
@@ -3380,7 +3380,7 @@
2010
other
-
+
@@ -3388,7 +3388,7 @@
2408
other
-
+
@@ -3396,7 +3396,7 @@
2409
other
-
+
@@ -3404,7 +3404,7 @@
3830
other
-
+
@@ -3412,7 +3412,7 @@
1759
other
-
+
@@ -3420,7 +3420,7 @@
1701
other
-
+
@@ -3428,7 +3428,7 @@
8807
other
-
+
@@ -3436,7 +3436,7 @@
1344
other
-
+
@@ -3444,7 +3444,7 @@
4595
other
-
+
@@ -3452,7 +3452,7 @@
4730
other
-
+
@@ -3460,7 +3460,7 @@
1345
other
-
+
@@ -3468,7 +3468,7 @@
8330
other
-
+
@@ -3476,7 +3476,7 @@
1630
payable
-
+
@@ -3484,7 +3484,7 @@
1950
other
-
+
@@ -3492,7 +3492,7 @@
1704
other
-
+
@@ -3500,7 +3500,7 @@
8338
other
-
+
@@ -3508,7 +3508,7 @@
4679
other
-
+
@@ -3516,7 +3516,7 @@
0540
other
-
+
@@ -3524,7 +3524,7 @@
4870
other
-
+
@@ -3532,7 +3532,7 @@
0530
other
-
+
@@ -3540,7 +3540,7 @@
4139
other
-
+
@@ -3548,7 +3548,7 @@
3560
other
-
+
@@ -3556,7 +3556,7 @@
8520
other
-
+
@@ -3564,7 +3564,7 @@
2318
other
-
+
@@ -3572,7 +3572,7 @@
0760
other
-
+
@@ -3580,7 +3580,7 @@
4130
other
-
+
@@ -3588,7 +3588,7 @@
0430
other
-
+
@@ -3596,7 +3596,7 @@
1752
other
-
+
@@ -3604,7 +3604,7 @@
2316
other
-
+
@@ -3612,7 +3612,7 @@
1751
other
-
+
@@ -3620,7 +3620,7 @@
2317
other
-
+
@@ -3628,7 +3628,7 @@
8970
other
-
+
@@ -3636,7 +3636,7 @@
4678
other
-
+
@@ -3644,7 +3644,7 @@
8975
other
-
+
@@ -3652,7 +3652,7 @@
8977
other
-
+
@@ -3660,7 +3660,7 @@
4900
other
-
+
@@ -3668,7 +3668,7 @@
8764
other
-
+
@@ -3676,7 +3676,7 @@
1481
other
-
+
@@ -3684,7 +3684,7 @@
1480
receivable
-
+
@@ -3692,7 +3692,7 @@
1485
other
-
+
@@ -3700,7 +3700,7 @@
1489
other
-
+
@@ -3708,7 +3708,7 @@
1488
other
-
+
@@ -3716,7 +3716,7 @@
0699
other
-
+
@@ -3724,7 +3724,7 @@
3300
other
-
+
@@ -3732,7 +3732,7 @@
2309
other
-
+
@@ -3740,7 +3740,7 @@
1711
other
-
+
@@ -3748,7 +3748,7 @@
1710
other
-
+
@@ -3756,7 +3756,7 @@
1717
other
-
+
@@ -3764,7 +3764,7 @@
0320
other
-
+
@@ -3772,7 +3772,7 @@
2300
other
-
+
@@ -3780,7 +3780,7 @@
1719
other
-
+
@@ -3788,7 +3788,7 @@
1718
other
-
+
@@ -3796,7 +3796,7 @@
2307
other
-
+
@@ -3804,7 +3804,7 @@
0990
other
-
+
@@ -3812,7 +3812,7 @@
1659
other
-
+
@@ -3820,7 +3820,7 @@
0996
other
-
+
@@ -3828,7 +3828,7 @@
0997
other
-
+
@@ -3836,7 +3836,7 @@
1650
payable
-
+
@@ -3844,7 +3844,7 @@
1651
other
-
+
@@ -3852,7 +3852,7 @@
0440
other
-
+
@@ -3860,7 +3860,7 @@
2520
other
-
+
@@ -3868,7 +3868,7 @@
1655
other
-
+
@@ -3876,7 +3876,7 @@
2289
other
-
+
@@ -3884,7 +3884,7 @@
0260
other
-
+
@@ -3892,7 +3892,7 @@
3660
other
-
+
@@ -3900,7 +3900,7 @@
3748
other
-
+
@@ -3908,7 +3908,7 @@
1631
other
-
+
@@ -3916,7 +3916,7 @@
2280
other
-
+
@@ -3924,7 +3924,7 @@
2281
other
-
+
@@ -3932,7 +3932,7 @@
2282
other
-
+
@@ -3940,7 +3940,7 @@
2283
other
-
+
@@ -3948,7 +3948,7 @@
2284
other
-
+
@@ -3956,7 +3956,7 @@
2285
other
-
+
@@ -3964,7 +3964,7 @@
8200
other
-
+
@@ -3972,7 +3972,7 @@
2287
other
-
+
@@ -3980,7 +3980,7 @@
3153
other
-
+
@@ -3988,7 +3988,7 @@
3152
other
-
+
@@ -3996,7 +3996,7 @@
3151
other
-
+
@@ -4004,7 +4004,7 @@
3150
other
-
+
@@ -4012,7 +4012,7 @@
3155
other
-
+
@@ -4020,7 +4020,7 @@
3154
other
-
+
@@ -4028,7 +4028,7 @@
4540
other
-
+
@@ -4036,7 +4036,7 @@
4976
other
-
+
@@ -4044,7 +4044,7 @@
2510
other
-
+
@@ -4052,7 +4052,7 @@
2652
other
-
+
@@ -4060,7 +4060,7 @@
4970
other
-
+
@@ -4068,7 +4068,7 @@
0420
other
-
+
@@ -4076,7 +4076,7 @@
4822
other
-
+
@@ -4084,7 +4084,7 @@
8729
other
-
+
@@ -4092,7 +4092,7 @@
0210
other
-
+
@@ -4100,7 +4100,7 @@
0199
other
-
+
@@ -4108,7 +4108,7 @@
2149
other
-
+
@@ -4116,7 +4116,7 @@
0740
other
-
+
@@ -4124,7 +4124,7 @@
0192
other
-
+
@@ -4132,7 +4132,7 @@
0661
other
-
+
@@ -4140,7 +4140,7 @@
0190
other
-
+
@@ -4148,7 +4148,7 @@
0191
other
-
+
@@ -4156,7 +4156,7 @@
8725
other
-
+
@@ -4164,7 +4164,7 @@
8724
other
-
+
@@ -4172,7 +4172,7 @@
0194
other
-
+
@@ -4180,7 +4180,7 @@
0195
other
-
+
@@ -4188,7 +4188,7 @@
1348
other
-
+
@@ -4196,7 +4196,7 @@
1349
other
-
+
@@ -4204,7 +4204,7 @@
1220
liquidity
-
+
@@ -4212,7 +4212,7 @@
1340
other
-
+
@@ -4220,7 +4220,7 @@
4180
other
-
+
@@ -4228,7 +4228,7 @@
2714
other
-
+
@@ -4236,7 +4236,7 @@
2451
other
-
+
@@ -4244,7 +4244,7 @@
2450
other
-
+
@@ -4252,7 +4252,7 @@
4948
other
-
+
@@ -4260,7 +4260,7 @@
8700
other
-
+
@@ -4268,7 +4268,7 @@
3770
other
-
+
@@ -4276,7 +4276,7 @@
4980
other
-
+
@@ -4284,7 +4284,7 @@
1870
other
-
+
@@ -4292,7 +4292,7 @@
8110
other
-
+
@@ -4300,7 +4300,7 @@
1879
other
-
+
@@ -4308,7 +4308,7 @@
4945
other
-
+
@@ -4316,7 +4316,7 @@
1502
other
-
+
@@ -4324,7 +4324,7 @@
3200
other
-
+
@@ -4332,7 +4332,7 @@
4940
other
-
+
@@ -4340,7 +4340,7 @@
1503
other
-
+
@@ -4348,7 +4348,7 @@
4826
other
-
+
@@ -4356,7 +4356,7 @@
4824
other
-
+
@@ -4364,7 +4364,7 @@
4530
other
-
+
@@ -4372,7 +4372,7 @@
1645
other
-
+
@@ -4380,7 +4380,7 @@
4820
other
-
+
@@ -4388,7 +4388,7 @@
2118
other
-
+
@@ -4396,7 +4396,7 @@
2119
other
-
+
@@ -4404,7 +4404,7 @@
1500
other
-
+
@@ -4412,7 +4412,7 @@
0065
other
-
+
@@ -4420,7 +4420,7 @@
1506
other
-
+
@@ -4428,7 +4428,7 @@
1507
other
-
+
@@ -4436,7 +4436,7 @@
1504
other
-
+
@@ -4444,7 +4444,7 @@
1505
other
-
+
@@ -4452,7 +4452,7 @@
2110
other
-
+
@@ -4460,7 +4460,7 @@
8611
other
-
+
@@ -4468,7 +4468,7 @@
1508
other
-
+
@@ -4476,7 +4476,7 @@
2113
other
-
+
@@ -4484,7 +4484,7 @@
2115
other
-
+
@@ -4492,7 +4492,7 @@
2116
other
-
+
@@ -4500,7 +4500,7 @@
8591
other
-
+
@@ -4508,7 +4508,7 @@
1110
liquidity
-
+
@@ -4516,7 +4516,7 @@
2620
other
-
+
@@ -4524,7 +4524,7 @@
2626
other
-
+
@@ -4532,7 +4532,7 @@
0060
other
-
+
@@ -4540,7 +4540,7 @@
2625
other
-
+
@@ -4548,7 +4548,7 @@
8310
other
-
+
@@ -4556,7 +4556,7 @@
0963
other
-
+
@@ -4564,7 +4564,7 @@
8575
other
-
+
@@ -4572,7 +4572,7 @@
8576
other
-
+
@@ -4580,7 +4580,7 @@
8570
other
-
+
@@ -4588,7 +4588,7 @@
0966
other
-
+
@@ -4596,7 +4596,7 @@
0965
other
-
+
@@ -4604,7 +4604,7 @@
1910
other
-
+
@@ -4612,7 +4612,7 @@
0969
other
-
+
@@ -4620,7 +4620,7 @@
8579
other
-
+
@@ -4628,7 +4628,7 @@
4655
other
-
+
@@ -4636,7 +4636,7 @@
8595
other
-
+
@@ -4644,7 +4644,7 @@
1773
other
-
+
@@ -4652,7 +4652,7 @@
3440
other
-
+
@@ -4660,7 +4660,7 @@
4985
other
-
+
@@ -4668,7 +4668,7 @@
4664
other
-
+
@@ -4676,7 +4676,7 @@
2020
other
-
+
@@ -4684,7 +4684,7 @@
8590
other
-
+
@@ -4692,7 +4692,7 @@
2750
other
-
+
@@ -4700,7 +4700,7 @@
4666
other
-
+
@@ -4708,7 +4708,7 @@
4650
other
-
+
@@ -4716,7 +4716,7 @@
2405
other
-
+
@@ -4724,7 +4724,7 @@
0499
other
-
+
@@ -4732,7 +4732,7 @@
0498
other
-
+
@@ -4740,7 +4740,7 @@
0490
other
-
+
@@ -4748,7 +4748,7 @@
3746
other
-
+
@@ -4756,7 +4756,7 @@
4590
other
-
+
@@ -4764,7 +4764,7 @@
4760
other
-
+
@@ -4772,7 +4772,7 @@
4910
other
-
+
@@ -4780,7 +4780,7 @@
0799
other
-
+
@@ -4788,7 +4788,7 @@
1970
other
-
+
@@ -4796,7 +4796,7 @@
4199
other
-
+
@@ -4804,7 +4804,7 @@
0400
other
-
+
@@ -4812,7 +4812,7 @@
4165
other
-
+
@@ -4820,7 +4820,7 @@
4160
other
-
+
@@ -4828,7 +4828,7 @@
1960
other
-
+
@@ -4836,7 +4836,7 @@
1470
receivable
-
+
@@ -4844,7 +4844,7 @@
1610
payable
-
+
@@ -4852,7 +4852,7 @@
4168
other
-
+
@@ -4860,7 +4860,7 @@
3970
other
-
+
@@ -4868,7 +4868,7 @@
8925
other
-
+
@@ -4876,7 +4876,7 @@
1471
other
-
+
@@ -4884,7 +4884,7 @@
4152
other
-
+
@@ -4892,7 +4892,7 @@
8921
other
-
+
@@ -4900,7 +4900,7 @@
8920
other
-
+
@@ -4908,7 +4908,7 @@
8929
other
-
+
@@ -4916,7 +4916,7 @@
8760
other
-
+
@@ -4924,7 +4924,7 @@
8648
other
-
+
@@ -4932,7 +4932,7 @@
8140
other
-
+
@@ -4940,7 +4940,7 @@
0380
other
-
+
@@ -4948,7 +4948,7 @@
0220
other
-
+
@@ -4956,7 +4956,7 @@
8915
other
-
+
@@ -4964,7 +4964,7 @@
8818
other
-
+
@@ -4972,7 +4972,7 @@
7100
other
-
+
@@ -4980,7 +4980,7 @@
4128
other
-
+
@@ -4988,7 +4988,7 @@
1558
other
-
+
@@ -4996,7 +4996,7 @@
1501
other
-
+
@@ -5004,7 +5004,7 @@
1478
other
-
+
@@ -5012,7 +5012,7 @@
8574
other
-
+
@@ -5020,7 +5020,7 @@
1570
other
-
+
@@ -5028,7 +5028,7 @@
4710
other
-
+
@@ -5036,7 +5036,7 @@
3745
other
-
+
@@ -5044,7 +5044,7 @@
8769
other
-
+
@@ -5052,7 +5052,7 @@
1680
other
-
+
@@ -5060,7 +5060,7 @@
1768
other
-
+
@@ -5068,7 +5068,7 @@
1769
other
-
+
@@ -5076,7 +5076,7 @@
8640
other
-
+
@@ -5084,7 +5084,7 @@
1762
other
-
+
@@ -5092,7 +5092,7 @@
1763
other
-
+
@@ -5100,7 +5100,7 @@
1760
other
-
+
@@ -5108,7 +5108,7 @@
0700
other
-
+
@@ -5116,7 +5116,7 @@
1766
other
-
+
@@ -5124,7 +5124,7 @@
1767
other
-
+
@@ -5132,7 +5132,7 @@
1764
other
-
+
@@ -5140,7 +5140,7 @@
1765
other
-
+
@@ -5148,7 +5148,7 @@
4301
other
-
+
@@ -5156,7 +5156,7 @@
4289
other
-
+
@@ -5164,7 +5164,7 @@
0039
other
-
+
@@ -5172,7 +5172,7 @@
0038
other
-
+
@@ -5180,7 +5180,7 @@
2713
other
-
+
@@ -5188,7 +5188,7 @@
0035
other
-
+
@@ -5196,7 +5196,7 @@
8625
other
-
+
@@ -5204,7 +5204,7 @@
0030
other
-
+
@@ -5212,7 +5212,7 @@
8150
other
-
+
@@ -5220,7 +5220,7 @@
4570
other
-
+
@@ -5228,7 +5228,7 @@
2711
other
-
+
@@ -5236,7 +5236,7 @@
8808
other
-
+
@@ -5244,7 +5244,7 @@
1300
other
-
+
@@ -5252,7 +5252,7 @@
8780
other
-
+
@@ -5260,7 +5260,7 @@
3552
other
-
+
@@ -5268,7 +5268,7 @@
4909
other
-
+
@@ -5276,7 +5276,7 @@
1547
other
-
+
@@ -5284,7 +5284,7 @@
1545
other
-
+
@@ -5292,7 +5292,7 @@
1542
other
-
+
@@ -5300,7 +5300,7 @@
1543
other
-
+
@@ -5308,7 +5308,7 @@
1540
other
-
+
@@ -5316,7 +5316,7 @@
0755
other
-
+
@@ -5324,7 +5324,7 @@
4676
other
-
+
@@ -5332,7 +5332,7 @@
3120
other
-
+
@@ -5340,7 +5340,7 @@
4674
other
-
+
@@ -5348,7 +5348,7 @@
4673
other
-
+
@@ -5356,7 +5356,7 @@
4672
other
-
+
@@ -5364,7 +5364,7 @@
1548
other
-
+
@@ -5372,7 +5372,7 @@
1549
other
-
+
@@ -5380,7 +5380,7 @@
8710
other
-
+
@@ -5388,7 +5388,7 @@
0140
other
-
+
@@ -5396,7 +5396,7 @@
0145
other
-
+
@@ -5404,7 +5404,7 @@
0631
other
-
+
@@ -5412,7 +5412,7 @@
0146
other
-
+
@@ -5420,7 +5420,7 @@
0149
other
-
+
@@ -5428,7 +5428,7 @@
0148
other
-
+
@@ -5436,7 +5436,7 @@
1461
other
-
+
@@ -5444,7 +5444,7 @@
1460
other
-
+
@@ -5452,7 +5452,7 @@
1315
other
-
+
@@ -5460,7 +5460,7 @@
2709
other
-
+
@@ -5468,7 +5468,7 @@
1312
other
-
+
@@ -5476,7 +5476,7 @@
1311
other
-
+
@@ -5484,7 +5484,7 @@
1310
other
-
+
@@ -5492,7 +5492,7 @@
2705
other
-
+
@@ -5500,7 +5500,7 @@
2707
other
-
+
@@ -5508,7 +5508,7 @@
2700
other
-
+
@@ -5516,7 +5516,7 @@
4886
other
-
+
@@ -5524,7 +5524,7 @@
4887
other
-
+
@@ -5532,7 +5532,7 @@
2389
other
-
+
@@ -5540,7 +5540,7 @@
1020
liquidity
-
+
@@ -5548,7 +5548,7 @@
4875
other
-
+
@@ -5556,7 +5556,7 @@
4874
other
-
+
@@ -5564,7 +5564,7 @@
2649
other
-
+
@@ -5572,7 +5572,7 @@
0616
other
-
+
@@ -5580,7 +5580,7 @@
4871
other
-
+
@@ -5588,7 +5588,7 @@
0640
other
-
+
@@ -5596,7 +5596,7 @@
3400
other
-
+
@@ -5604,7 +5604,7 @@
4872
other
-
+
@@ -5612,7 +5612,7 @@
4879
other
-
+
@@ -5620,7 +5620,7 @@
1820
other
-
+
@@ -5628,7 +5628,7 @@
2140
other
-
+
@@ -5636,7 +5636,7 @@
2792
other
-
+
@@ -5644,7 +5644,7 @@
4975
other
-
+
@@ -5652,7 +5652,7 @@
2790
other
-
+
@@ -5660,7 +5660,7 @@
8731
other
-
+
@@ -5668,7 +5668,7 @@
1380
other
-
+
@@ -5676,7 +5676,7 @@
2794
other
-
+
@@ -5684,7 +5684,7 @@
8980
other
-
+
@@ -5692,7 +5692,7 @@
8516
other
-
+
@@ -5700,7 +5700,7 @@
4700
other
-
+
@@ -5708,7 +5708,7 @@
4668
other
-
+
@@ -5716,7 +5716,7 @@
1920
other
-
+
@@ -5724,7 +5724,7 @@
8515
other
-
+
@@ -5732,7 +5732,7 @@
8320
other
-
+
@@ -5740,7 +5740,7 @@
4280
other
-
+
@@ -5748,7 +5748,7 @@
0520
other
-
+
@@ -5756,7 +5756,7 @@
8609
other
-
+
@@ -5764,7 +5764,7 @@
8510
other
-
+
@@ -5772,7 +5772,7 @@
0525
other
-
+
@@ -5780,7 +5780,7 @@
0910
other
-
+
@@ -5788,7 +5788,7 @@
4120
other
-
+
@@ -5796,7 +5796,7 @@
4127
other
-
+
@@ -5804,7 +5804,7 @@
4126
other
-
+
@@ -5812,7 +5812,7 @@
4125
other
-
+
@@ -5820,7 +5820,7 @@
4124
other
-
+
@@ -5828,7 +5828,7 @@
2666
other
-
+
@@ -5836,7 +5836,7 @@
2660
other
-
+
@@ -5844,7 +5844,7 @@
0159
other
-
+
@@ -5852,7 +5852,7 @@
0880
other
-
+
@@ -5860,7 +5860,7 @@
8960
other
-
+
@@ -5868,7 +5868,7 @@
1775
other
-
+
@@ -5876,7 +5876,7 @@
4882
other
-
+
@@ -5884,7 +5884,7 @@
1776
other
-
+
@@ -5892,7 +5892,7 @@
8518
other
-
+
@@ -5900,7 +5900,7 @@
0764
other
-
+
@@ -5908,7 +5908,7 @@
1771
other
-
+
@@ -5916,7 +5916,7 @@
1567
other
-
+
@@ -5924,7 +5924,7 @@
1746
other
-
+
@@ -5932,7 +5932,7 @@
1770
other
-
+
@@ -5940,7 +5940,7 @@
0299
other
-
+
@@ -5948,7 +5948,7 @@
1641
other
-
+
@@ -5956,7 +5956,7 @@
1640
payable
-
+
@@ -5964,7 +5964,7 @@
4750
other
-
+
@@ -5972,7 +5972,7 @@
0290
other
-
+
@@ -5980,7 +5980,7 @@
0731
other
-
+
@@ -5988,7 +5988,7 @@
1722
other
-
+
@@ -5996,7 +5996,7 @@
1648
other
-
+
@@ -6004,7 +6004,7 @@
1720
other
-
+
@@ -6012,7 +6012,7 @@
1721
other
-
+
@@ -6020,7 +6020,7 @@
8817
other
-
+
@@ -6028,7 +6028,7 @@
0595
other
-
+
@@ -6036,7 +6036,7 @@
0590
other
-
+
@@ -6044,7 +6044,7 @@
0985
other
-
+
@@ -6052,7 +6052,7 @@
0984
other
-
+
@@ -6060,7 +6060,7 @@
0986
other
-
+
@@ -6068,7 +6068,7 @@
0980
other
-
+
@@ -6076,7 +6076,7 @@
0983
other
-
+
@@ -6084,7 +6084,7 @@
0450
other
-
+
@@ -6092,7 +6092,7 @@
0178
other
-
+
@@ -6100,7 +6100,7 @@
0179
other
-
+
@@ -6108,7 +6108,7 @@
8100
other
-
+
@@ -6116,7 +6116,7 @@
8748
other
-
+
@@ -6124,7 +6124,7 @@
0170
other
-
+
@@ -6132,7 +6132,7 @@
3750
other
-
+
@@ -6140,7 +6140,7 @@
8745
other
-
+
@@ -6148,7 +6148,7 @@
8743
other
-
+
@@ -6156,7 +6156,7 @@
0175
other
-
+
@@ -6164,7 +6164,7 @@
0176
other
-
+
@@ -6172,7 +6172,7 @@
0177
other
-
+
@@ -6180,7 +6180,7 @@
4632
other
-
+
@@ -6188,7 +6188,7 @@
4631
other
-
+
@@ -6196,7 +6196,7 @@
4630
other
-
+
@@ -6204,7 +6204,7 @@
4637
other
-
+
@@ -6212,7 +6212,7 @@
3000
other
-
+
@@ -6220,7 +6220,7 @@
4635
other
-
+
@@ -6228,7 +6228,7 @@
4638
other
-
+
@@ -6236,7 +6236,7 @@
2200
other
-
+
@@ -6244,7 +6244,7 @@
1371
other
-
+
@@ -6252,7 +6252,7 @@
1588
other
-
+
@@ -6260,7 +6260,7 @@
2203
other
-
+
@@ -6268,7 +6268,7 @@
2204
other
-
+
@@ -6276,7 +6276,7 @@
0180
other
-
+
@@ -6284,7 +6284,7 @@
2206
other
-
+
@@ -6292,7 +6292,7 @@
1370
other
-
+
@@ -6300,7 +6300,7 @@
2208
other
-
+
@@ -6308,7 +6308,7 @@
2209
other
-
+
@@ -6316,7 +6316,7 @@
1580
other
-
+
@@ -6324,7 +6324,7 @@
1581
other
-
+
@@ -6332,7 +6332,7 @@
0189
other
-
+
@@ -6340,7 +6340,7 @@
1587
other
-
+
@@ -6348,7 +6348,7 @@
1584
other
-
+
@@ -6356,7 +6356,7 @@
1585
other
-
+
@@ -6364,7 +6364,7 @@
0770
other
-
+
@@ -6372,7 +6372,7 @@
0771
other
-
+
@@ -6380,7 +6380,7 @@
0777
other
-
+
@@ -6388,7 +6388,7 @@
0774
other
-
+
@@ -6396,7 +6396,7 @@
2150
other
-
+
@@ -6404,7 +6404,7 @@
0670
other
-
+
@@ -6412,7 +6412,7 @@
8105
other
-
+
@@ -6420,7 +6420,7 @@
0350
other
-
+
@@ -6428,7 +6428,7 @@
1210
liquidity
-
+
@@ -6436,7 +6436,7 @@
4270
other
-
+
@@ -6444,7 +6444,7 @@
0001
other
-
+
@@ -6452,7 +6452,7 @@
1352
other
-
+
@@ -6460,7 +6460,7 @@
1350
other
-
+
@@ -6468,7 +6468,7 @@
1355
other
-
+
@@ -6476,7 +6476,7 @@
4780
other
-
+
@@ -6484,7 +6484,7 @@
1860
other
-
+
@@ -6492,7 +6492,7 @@
4810
other
-
+
@@ -6500,7 +6500,7 @@
1869
other
-
+
@@ -6508,7 +6508,7 @@
3725
other
-
+
@@ -6516,7 +6516,7 @@
3726
other
-
+
@@ -6524,7 +6524,7 @@
3727
other
-
+
@@ -6532,7 +6532,7 @@
3720
other
-
+
@@ -6540,7 +6540,7 @@
3722
other
-
+
@@ -6548,7 +6548,7 @@
3723
other
-
+
@@ -6556,7 +6556,7 @@
4930
other
-
+
@@ -6564,7 +6564,7 @@
4680
other
-
+
@@ -6572,7 +6572,7 @@
2895
other
-
+
@@ -6580,7 +6580,7 @@
2894
other
-
+
@@ -6588,7 +6588,7 @@
4833
other
-
+
@@ -6596,7 +6596,7 @@
4832
other
-
+
@@ -6604,7 +6604,7 @@
2891
other
-
+
@@ -6612,7 +6612,7 @@
2890
other
-
+
@@ -6620,7 +6620,7 @@
2893
other
-
+
@@ -6628,7 +6628,7 @@
2892
other
-
+
@@ -6636,7 +6636,7 @@
8589
other
-
+
@@ -6644,7 +6644,7 @@
0070
other
-
+
@@ -6652,7 +6652,7 @@
2109
other
-
+
@@ -6660,7 +6660,7 @@
2108
other
-
+
@@ -6668,7 +6668,7 @@
0075
other
-
+
@@ -6676,7 +6676,7 @@
1451
other
-
+
@@ -6684,7 +6684,7 @@
1100
liquidity
-
+
@@ -6692,7 +6692,7 @@
2103
other
-
+
@@ -6700,7 +6700,7 @@
1517
other
-
+
@@ -6708,7 +6708,7 @@
2100
other
-
+
@@ -6716,7 +6716,7 @@
2107
other
-
+
@@ -6724,7 +6724,7 @@
2106
other
-
+
@@ -6732,7 +6732,7 @@
2105
other
-
+
@@ -6740,7 +6740,7 @@
2104
other
-
+
@@ -6748,7 +6748,7 @@
2734
other
-
+
@@ -6756,7 +6756,7 @@
2735
other
-
+
@@ -6764,7 +6764,7 @@
2736
other
-
+
@@ -6772,7 +6772,7 @@
2730
other
-
+
@@ -6780,7 +6780,7 @@
2731
other
-
+
@@ -6788,7 +6788,7 @@
2732
other
-
+
@@ -6796,7 +6796,7 @@
2733
other
-
+
@@ -6804,7 +6804,7 @@
2738
other
-
+
@@ -6812,7 +6812,7 @@
2739
other
-
+
@@ -6820,7 +6820,7 @@
0767
other
-
+
@@ -6828,7 +6828,7 @@
0956
other
-
+
@@ -6836,7 +6836,7 @@
0957
other
-
+
@@ -6844,7 +6844,7 @@
0955
other
-
+
@@ -6852,7 +6852,7 @@
0950
other
-
+
@@ -6860,7 +6860,7 @@
4993
other
-
+
@@ -6868,7 +6868,7 @@
1810
other
-
+
@@ -6876,7 +6876,7 @@
3430
other
-
+
@@ -6884,7 +6884,7 @@
3435
other
-
+
@@ -6892,7 +6892,7 @@
2740
other
-
+
@@ -6900,7 +6900,7 @@
2743
other
-
+
@@ -6908,7 +6908,7 @@
2742
other
-
+
@@ -6916,7 +6916,7 @@
2744
other
-
+
@@ -6924,7 +6924,7 @@
2747
other
-
+
@@ -6932,7 +6932,7 @@
2746
other
-
+
@@ -6940,7 +6940,7 @@
4840
other
-
+
@@ -6948,7 +6948,7 @@
4841
other
-
+
@@ -6956,7 +6956,7 @@
4842
other
-
+
@@ -6964,7 +6964,7 @@
4843
other
-
+
@@ -6972,7 +6972,7 @@
4167
other
-
+
@@ -6980,7 +6980,7 @@
4100
other
-
+
@@ -6988,7 +6988,7 @@
8315
other
-
+
@@ -6996,7 +6996,7 @@
0781
other
-
+
@@ -7004,7 +7004,7 @@
0780
other
-
+
@@ -7012,7 +7012,7 @@
0787
other
-
+
@@ -7020,7 +7020,7 @@
0784
other
-
+
@@ -7028,7 +7028,7 @@
4790
other
-
+
@@ -7036,7 +7036,7 @@
1609
other
-
+
@@ -7044,7 +7044,7 @@
4150
other
-
+
@@ -7052,7 +7052,7 @@
0410
other
-
+
@@ -7060,7 +7060,7 @@
3540
other
-
+
@@ -7068,7 +7068,7 @@
4925
other
-
+
@@ -7076,7 +7076,7 @@
4155
other
-
+
@@ -7084,7 +7084,7 @@
1601
payable
-
+
@@ -7092,7 +7092,7 @@
1600
payable
-
+
@@ -7100,7 +7100,7 @@
8720
other
-
+
@@ -7108,7 +7108,7 @@
1605
payable
-
+
@@ -7116,7 +7116,7 @@
1607
payable
-
+
@@ -7124,7 +7124,7 @@
1606
payable
-
+
@@ -7132,7 +7132,7 @@
8950
other
-
+
@@ -7140,7 +7140,7 @@
8910
other
-
+
@@ -7148,7 +7148,7 @@
8819
other
-
+
@@ -7156,7 +7156,7 @@
1574
other
-
+
@@ -7164,7 +7164,7 @@
8853
other
-
+
@@ -7172,7 +7172,7 @@
8852
other
-
+
@@ -7180,7 +7180,7 @@
0550
other
-
+
@@ -7188,7 +7188,7 @@
4955
other
-
+
@@ -7196,7 +7196,7 @@
3980
other
-
+
@@ -7204,7 +7204,7 @@
8337
other
-
+
@@ -7212,7 +7212,7 @@
1788
other
-
+
@@ -7220,7 +7220,7 @@
1789
other
-
+
@@ -7228,7 +7228,7 @@
1780
other
-
+
@@ -7236,7 +7236,7 @@
1781
other
-
+
@@ -7244,7 +7244,7 @@
1782
other
-
+
@@ -7252,7 +7252,7 @@
1783
other
-
+
@@ -7260,7 +7260,7 @@
1784
other
-
+
@@ -7268,7 +7268,7 @@
1785
other
-
+
@@ -7276,7 +7276,7 @@
1786
other
-
+
@@ -7284,7 +7284,7 @@
1787
other
-
+
@@ -7292,7 +7292,7 @@
7110
other
-
+
@@ -7300,7 +7300,7 @@
4169
other
-
+
@@ -7308,7 +7308,7 @@
4288
other
-
+
@@ -7316,7 +7316,7 @@
4290
other
-
+
@@ -7324,7 +7324,7 @@
2323
other
-
+
@@ -7332,7 +7332,7 @@
1774
other
-
+
@@ -7340,7 +7340,7 @@
1777
other
-
+
@@ -7348,7 +7348,7 @@
2320
other
-
+
@@ -7356,7 +7356,7 @@
2327
other
-
+
@@ -7364,7 +7364,7 @@
2326
other
-
+
@@ -7372,7 +7372,7 @@
2325
other
-
+
@@ -7380,7 +7380,7 @@
1772
other
-
+
@@ -7388,7 +7388,7 @@
8930
other
-
+
@@ -7396,7 +7396,7 @@
7050
other
-
+
@@ -7404,7 +7404,7 @@
2328
other
-
+
@@ -7412,7 +7412,7 @@
1779
other
-
+
@@ -7420,7 +7420,7 @@
1778
other
-
+
@@ -7428,7 +7428,7 @@
4140
other
-
+
@@ -7436,7 +7436,7 @@
8924
other
-
+
@@ -7444,7 +7444,7 @@
8746
other
-
+
@@ -7452,7 +7452,7 @@
8931
other
-
+
@@ -7460,7 +7460,7 @@
0300
other
-
+
@@ -7468,7 +7468,7 @@
3760
other
-
+
@@ -7476,7 +7476,7 @@
4138
other
-
+
@@ -7484,7 +7484,7 @@
3764
other
-
+
@@ -7492,7 +7492,7 @@
0120
other
-
+
@@ -7500,7 +7500,7 @@
0040
other
-
+
@@ -7508,7 +7508,7 @@
3769
other
-
+
@@ -7516,7 +7516,7 @@
8829
other
-
+
@@ -7524,7 +7524,7 @@
0129
other
-
+
@@ -7532,7 +7532,7 @@
8630
other
-
+
@@ -7540,7 +7540,7 @@
3135
other
-
+
@@ -7548,7 +7548,7 @@
4560
other
-
+
@@ -7556,7 +7556,7 @@
3130
other
-
+
@@ -7564,7 +7564,7 @@
1561
other
-
+
@@ -7572,7 +7572,7 @@
8801
other
-
+
@@ -7580,7 +7580,7 @@
1290
other
-
+
@@ -7588,7 +7588,7 @@
0535
other
-
+
@@ -7596,7 +7596,7 @@
1551
other
-
+
@@ -7604,7 +7604,7 @@
1550
other
-
+
@@ -7612,7 +7612,7 @@
1555
other
-
+
@@ -7620,7 +7620,7 @@
8932
other
-
+
@@ -7628,7 +7628,7 @@
1557
other
-
+
@@ -7636,7 +7636,7 @@
1556
other
-
+
@@ -7644,7 +7644,7 @@
1559
other
-
+
@@ -7652,7 +7652,7 @@
2490
other
-
+
@@ -7660,7 +7660,7 @@
2493
other
-
+
@@ -7668,7 +7668,7 @@
2492
other
-
+
@@ -7676,7 +7676,7 @@
2494
other
-
+
@@ -7684,7 +7684,7 @@
2990
other
-
+
@@ -7692,7 +7692,7 @@
0600
other
-
+
@@ -7700,7 +7700,7 @@
0601
other
-
+
@@ -7708,7 +7708,7 @@
2501
other
-
+
@@ -7716,7 +7716,7 @@
2390
other
-
+
@@ -7724,7 +7724,7 @@
0605
other
-
+
@@ -7732,7 +7732,7 @@
1410
receivable
-
+
@@ -7740,7 +7740,7 @@
2255
other
-
+
@@ -7748,7 +7748,7 @@
1295
other
-
+
@@ -7756,7 +7756,7 @@
4640
other
-
+
@@ -7764,7 +7764,7 @@
2250
other
-
+
@@ -7772,7 +7772,7 @@
1322
other
-
+
@@ -7780,7 +7780,7 @@
1320
other
-
+
@@ -7788,7 +7788,7 @@
1321
other
-
+
@@ -7796,7 +7796,7 @@
1327
other
-
+
@@ -7804,7 +7804,7 @@
1325
other
-
+
@@ -7812,7 +7812,7 @@
1329
other
-
+
@@ -7820,7 +7820,7 @@
4852
other
-
+
@@ -7828,7 +7828,7 @@
8519
other
-
+
@@ -7836,7 +7836,7 @@
4670
other
-
+
@@ -7844,7 +7844,7 @@
0870
other
-
+
@@ -7852,7 +7852,7 @@
8135
other
-
+
@@ -7860,7 +7860,7 @@
4200
other
-
+
@@ -7868,7 +7868,7 @@
0920
other
-
+
@@ -7876,7 +7876,7 @@
8130
other
-
+
@@ -7884,7 +7884,7 @@
4800
other
-
+
@@ -7892,7 +7892,7 @@
1568
other
-
+
@@ -7900,7 +7900,7 @@
4636
other
-
+
@@ -7908,7 +7908,7 @@
4805
other
-
+
@@ -7916,7 +7916,7 @@
4806
other
-
+
@@ -7924,7 +7924,7 @@
4876
other
-
+
@@ -7932,7 +7932,7 @@
1850
other
-
+
@@ -7940,7 +7940,7 @@
4809
other
-
+
@@ -7948,7 +7948,7 @@
4949
other
-
+
@@ -7956,7 +7956,7 @@
1525
other
-
+
@@ -7964,7 +7964,7 @@
1526
other
-
+
@@ -7972,7 +7972,7 @@
1527
other
-
+
@@ -7980,7 +7980,7 @@
2176
other
-
+
@@ -7988,7 +7988,7 @@
1521
other
-
+
@@ -7996,7 +7996,7 @@
1250
liquidity
-
+
@@ -8004,7 +8004,7 @@
4965
other
-
+
@@ -8012,7 +8012,7 @@
0761
other
-
+
@@ -8020,7 +8020,7 @@
1528
other
-
+
@@ -8028,7 +8028,7 @@
1529
other
-
+
@@ -8036,7 +8036,7 @@
4961
other
-
+
@@ -8044,7 +8044,7 @@
1390
other
-
+
@@ -8052,7 +8052,7 @@
2600
other
-
+
@@ -8060,7 +8060,7 @@
8705
other
-
+
@@ -8068,7 +8068,7 @@
2375
other
-
+
@@ -8076,7 +8076,7 @@
1930
other
-
+
@@ -8084,7 +8084,7 @@
0900
other
-
+
@@ -8092,7 +8092,7 @@
4110
other
-
+
@@ -8100,7 +8100,7 @@
8945
other
-
+
@@ -8108,7 +8108,7 @@
4873
other
-
+
@@ -8116,7 +8116,7 @@
2205
other
-
+
@@ -8124,7 +8124,7 @@
4890
other
-
+
@@ -8132,7 +8132,7 @@
7080
other
-
+
@@ -8140,7 +8140,7 @@
7090
other
-
+
@@ -8148,7 +8148,7 @@
0518
other
-
+
@@ -8156,7 +8156,7 @@
0519
other
-
+
@@ -8164,7 +8164,7 @@
0516
other
-
+
@@ -8172,7 +8172,7 @@
0517
other
-
+
@@ -8180,7 +8180,7 @@
3505
other
-
+
@@ -8188,7 +8188,7 @@
0510
other
-
+
@@ -8196,7 +8196,7 @@
1582
other
-
+
@@ -8204,7 +8204,7 @@
1583
other
-
+
@@ -8212,7 +8212,7 @@
2679
other
-
+
@@ -8220,7 +8220,7 @@
0999
other
-
+
@@ -8228,7 +8228,7 @@
4998
other
-
+
@@ -8236,7 +8236,7 @@
8918
other
-
+
@@ -8244,7 +8244,7 @@
4663
other
-
+
@@ -8252,7 +8252,7 @@
8614
other
-
+
@@ -8260,7 +8260,7 @@
1739
other
-
+
@@ -8268,7 +8268,7 @@
1738
other
-
+
@@ -8276,7 +8276,7 @@
1635
other
-
+
@@ -8284,7 +8284,7 @@
1980
other
-
+
@@ -8292,7 +8292,7 @@
4999
other
-
+
@@ -8300,7 +8300,7 @@
1638
other
-
+
@@ -8308,7 +8308,7 @@
1730
other
-
+
@@ -8316,7 +8316,7 @@
1733
other
-
+
@@ -8324,7 +8324,7 @@
1732
other
-
+
@@ -8332,7 +8332,7 @@
1735
other
-
+
@@ -8340,7 +8340,7 @@
1734
other
-
+
@@ -8348,7 +8348,7 @@
1737
other
-
+
@@ -8356,7 +8356,7 @@
1736
other
-
+
@@ -8364,7 +8364,7 @@
0580
other
-
+
@@ -8372,7 +8372,7 @@
8820
other
-
+
@@ -8380,7 +8380,7 @@
8827
other
-
+
@@ -8388,7 +8388,7 @@
0460
other
-
+
@@ -8396,7 +8396,7 @@
1195
liquidity
-
+
@@ -8404,7 +8404,7 @@
1446
receivable
-
+
@@ -8412,7 +8412,7 @@
0240
other
-
+
@@ -8420,7 +8420,7 @@
3600
other
-
+
@@ -8428,7 +8428,7 @@
8770
other
-
+
@@ -8436,7 +8436,7 @@
0160
other
-
+
@@ -8444,7 +8444,7 @@
0165
other
-
+
@@ -8452,7 +8452,7 @@
1595
other
-
+
@@ -8460,7 +8460,7 @@
1594
other
-
+
@@ -8468,7 +8468,7 @@
1597
other
-
+
@@ -8476,7 +8476,7 @@
1596
other
-
+
@@ -8484,7 +8484,7 @@
1590
other
-
+
@@ -8492,7 +8492,7 @@
1593
other
-
+
@@ -8500,7 +8500,7 @@
1592
other
-
+
@@ -8508,7 +8508,7 @@
1599
other
-
+
@@ -8516,7 +8516,7 @@
1598
other
-
+
@@ -8524,7 +8524,7 @@
4600
other
-
+
@@ -8532,7 +8532,7 @@
2213
other
-
+
@@ -8540,7 +8540,7 @@
2212
other
-
+
@@ -8548,7 +8548,7 @@
2210
other
-
+
@@ -8556,7 +8556,7 @@
4865
other
-
+
@@ -8564,7 +8564,7 @@
2216
other
-
+
@@ -8572,7 +8572,7 @@
2215
other
-
+
@@ -8580,7 +8580,7 @@
2214
other
-
+
@@ -8588,7 +8588,7 @@
2219
other
-
+
@@ -8596,7 +8596,7 @@
2218
other
-
+
@@ -8604,7 +8604,7 @@
8735
other
-
+
@@ -8612,7 +8612,7 @@
1748
other
-
+
@@ -8620,7 +8620,7 @@
1749
other
-
+
@@ -8628,7 +8628,7 @@
1744
other
-
+
@@ -8636,7 +8636,7 @@
1745
other
-
+
@@ -8644,7 +8644,7 @@
2350
other
-
+
@@ -8652,7 +8652,7 @@
1747
other
-
+
@@ -8660,7 +8660,7 @@
1740
other
-
+
@@ -8668,7 +8668,7 @@
1741
other
-
+
@@ -8676,7 +8676,7 @@
1742
other
-
+
@@ -8684,7 +8684,7 @@
1743
other
-
+
@@ -8692,7 +8692,7 @@
0015
other
-
+
@@ -8700,7 +8700,7 @@
4366
other
-
+
@@ -8708,7 +8708,7 @@
4360
other
-
+
@@ -8716,7 +8716,7 @@
0010
other
-
+
@@ -8724,7 +8724,7 @@
2430
other
-
+
@@ -8732,7 +8732,7 @@
1200
liquidity
-
+
@@ -8740,7 +8740,7 @@
4240
other
-
+
@@ -8748,7 +8748,7 @@
4396
other
-
+
@@ -8756,7 +8756,7 @@
3736
other
-
+
@@ -8764,7 +8764,7 @@
3735
other
-
+
@@ -8772,7 +8772,7 @@
1890
other
-
+
@@ -8780,7 +8780,7 @@
3731
other
-
+
@@ -8788,7 +8788,7 @@
3730
other
-
+
@@ -8796,7 +8796,7 @@
4920
other
-
+
@@ -8804,7 +8804,7 @@
2130
other
-
+
@@ -8812,7 +8812,7 @@
4510
other
-
+
@@ -8820,7 +8820,7 @@
3100
other
-
+
@@ -8828,7 +8828,7 @@
4994
other
-
+
@@ -8836,7 +8836,7 @@
2139
other
-
+
@@ -8844,7 +8844,7 @@
1447
receivable
-
+
@@ -8852,7 +8852,7 @@
1569
other
-
+
@@ -8860,7 +8860,7 @@
1445
other
-
+
@@ -8868,7 +8868,7 @@
4995
other
-
+
@@ -8876,7 +8876,7 @@
1658
other
-
+
@@ -8884,7 +8884,7 @@
1560
other
-
+
@@ -8892,7 +8892,7 @@
0085
other
-
+
@@ -8900,7 +8900,7 @@
2505
other
-
+
@@ -8908,7 +8908,7 @@
1563
other
-
+
@@ -8916,7 +8916,7 @@
0080
other
-
+
@@ -8924,7 +8924,7 @@
1565
other
-
+
@@ -8932,7 +8932,7 @@
1566
other
-
+
@@ -8940,7 +8940,7 @@
2500
other
-
+
@@ -8948,7 +8948,7 @@
2726
other
-
+
@@ -8956,7 +8956,7 @@
2725
other
-
+
@@ -8964,7 +8964,7 @@
2723
other
-
+
@@ -8972,7 +8972,7 @@
4990
other
-
+
@@ -8980,7 +8980,7 @@
0110
other
-
+
@@ -8988,7 +8988,7 @@
2720
other
-
+
@@ -8996,7 +8996,7 @@
4991
other
-
+
@@ -9004,7 +9004,7 @@
2710
other
-
+
@@ -9012,7 +9012,7 @@
1562
other
-
+
@@ -9020,7 +9020,7 @@
0949
other
-
+
@@ -9028,7 +9028,7 @@
0948
other
-
+
@@ -9036,7 +9036,7 @@
0940
other
-
+
@@ -9044,7 +9044,7 @@
0943
other
-
+
@@ -9052,7 +9052,7 @@
8410
other
-
+
@@ -9060,7 +9060,7 @@
0701
other
-
+
@@ -9068,7 +9068,7 @@
0947
other
-
+
@@ -9076,7 +9076,7 @@
1716
other
-
+
@@ -9084,7 +9084,7 @@
3780
other
-
+
@@ -9092,7 +9092,7 @@
1761
other
-
+
@@ -9100,7 +9100,7 @@
1800
other
-
+
@@ -9108,7 +9108,7 @@
4390
other
-
+
@@ -9116,7 +9116,7 @@
0310
other
-
+
@@ -9124,7 +9124,7 @@
8990
other
-
+
@@ -9132,7 +9132,7 @@
3420
other
-
+
@@ -9140,7 +9140,7 @@
2170
other
-
+
@@ -9148,7 +9148,7 @@
3425
other
-
+
@@ -9156,7 +9156,7 @@
4397
other
-
+
@@ -9164,7 +9164,7 @@
4996
other
-
+
@@ -9172,7 +9172,7 @@
4997
other
-
+
@@ -9180,7 +9180,7 @@
2000
other
-
+
@@ -9188,7 +9188,7 @@
2001
other
-
+
@@ -9196,7 +9196,7 @@
4992
other
-
+
@@ -9204,7 +9204,7 @@
0705
other
-
+
@@ -9212,7 +9212,7 @@
1360
liquidity
-
+
@@ -9220,7 +9220,7 @@
2005
other
-
+
@@ -9228,7 +9228,7 @@
8340
other
-
+
@@ -9236,7 +9236,7 @@
4855
other
-
+
@@ -9244,7 +9244,7 @@
4854
other
-
+
@@ -9252,7 +9252,7 @@
4853
other
-
+
@@ -9260,7 +9260,7 @@
4580
other
-
+
@@ -9268,7 +9268,7 @@
4851
other
-
+
@@ -9276,7 +9276,7 @@
4850
other
-
+
diff --git a/addons/l10n_de/account_chart_skr04.xml b/addons/l10n_de/account_chart_skr04.xml
index 09af6c20e28..b3315ce3b50 100644
--- a/addons/l10n_de/account_chart_skr04.xml
+++ b/addons/l10n_de/account_chart_skr04.xml
@@ -160,7 +160,7 @@
other
-
+
@@ -169,7 +169,7 @@
other
-
+
@@ -186,7 +186,7 @@
other
-
+
@@ -195,7 +195,7 @@
other
-
+
@@ -204,7 +204,7 @@
other
-
+
@@ -213,7 +213,7 @@
other
-
+
@@ -222,7 +222,7 @@
other
-
+
@@ -231,7 +231,7 @@
other
-
+
@@ -240,7 +240,7 @@
other
-
+
@@ -249,7 +249,7 @@
other
-
+
@@ -258,7 +258,7 @@
other
-
+
@@ -267,7 +267,7 @@
other
-
+
@@ -276,7 +276,7 @@
other
-
+
@@ -285,7 +285,7 @@
other
-
+
@@ -294,7 +294,7 @@
other
-
+
@@ -303,7 +303,7 @@
other
-
+
@@ -312,7 +312,7 @@
other
-
+
@@ -321,7 +321,7 @@
other
-
+
@@ -330,7 +330,7 @@
other
-
+
@@ -339,7 +339,7 @@
other
-
+
@@ -348,7 +348,7 @@
other
-
+
@@ -357,7 +357,7 @@
other
-
+
@@ -366,7 +366,7 @@
other
-
+
@@ -375,7 +375,7 @@
other
-
+
@@ -384,7 +384,7 @@
other
-
+
@@ -393,7 +393,7 @@
other
-
+
@@ -402,7 +402,7 @@
other
-
+
@@ -411,7 +411,7 @@
other
-
+
@@ -420,7 +420,7 @@
other
-
+
@@ -429,7 +429,7 @@
other
-
+
@@ -438,7 +438,7 @@
other
-
+
@@ -447,7 +447,7 @@
other
-
+
@@ -456,7 +456,7 @@
other
-
+
@@ -465,7 +465,7 @@
other
-
+
@@ -474,7 +474,7 @@
other
-
+
@@ -483,7 +483,7 @@
other
-
+
@@ -492,7 +492,7 @@
other
-
+
@@ -501,7 +501,7 @@
other
-
+
@@ -510,7 +510,7 @@
other
-
+
@@ -519,7 +519,7 @@
other
-
+
@@ -528,7 +528,7 @@
other
-
+
@@ -537,7 +537,7 @@
other
-
+
@@ -562,7 +562,7 @@
other
-
+
@@ -579,7 +579,7 @@
other
-
+
@@ -604,7 +604,7 @@
view
-
+
@@ -613,7 +613,7 @@
other
-
+
@@ -622,7 +622,7 @@
other
-
+
@@ -631,7 +631,7 @@
other
-
+
@@ -640,7 +640,7 @@
other
-
+
@@ -649,7 +649,7 @@
other
-
+
@@ -666,7 +666,7 @@
other
-
+
@@ -683,7 +683,7 @@
other
-
+
@@ -700,7 +700,7 @@
other
-
+
@@ -709,7 +709,7 @@
other
-
+
@@ -734,7 +734,7 @@
view
-
+
@@ -743,7 +743,7 @@
other
-
+
@@ -752,7 +752,7 @@
other
-
+
@@ -761,7 +761,7 @@
other
-
+
@@ -770,7 +770,7 @@
other
-
+
@@ -779,7 +779,7 @@
other
-
+
@@ -788,7 +788,7 @@
other
-
+
@@ -797,7 +797,7 @@
other
-
+
@@ -806,7 +806,7 @@
other
-
+
@@ -815,7 +815,7 @@
other
-
+
@@ -824,7 +824,7 @@
other
-
+
@@ -833,7 +833,7 @@
other
-
+
@@ -842,7 +842,7 @@
other
-
+
@@ -851,7 +851,7 @@
other
-
+
@@ -860,7 +860,7 @@
other
-
+
@@ -869,7 +869,7 @@
other
-
+
@@ -878,7 +878,7 @@
other
-
+
@@ -887,7 +887,7 @@
other
-
+
@@ -896,7 +896,7 @@
other
-
+
@@ -905,7 +905,7 @@
other
-
+
@@ -914,7 +914,7 @@
other
-
+
@@ -923,7 +923,7 @@
other
-
+
@@ -932,7 +932,7 @@
other
-
+
@@ -941,7 +941,7 @@
other
-
+
@@ -950,7 +950,7 @@
other
-
+
@@ -959,7 +959,7 @@
other
-
+
@@ -968,7 +968,7 @@
other
-
+
@@ -977,7 +977,7 @@
other
-
+
@@ -986,7 +986,7 @@
other
-
+
@@ -995,7 +995,7 @@
other
-
+
@@ -1012,7 +1012,7 @@
view
-
+
@@ -1021,7 +1021,7 @@
other
-
+
@@ -1030,7 +1030,7 @@
other
-
+
@@ -1039,7 +1039,7 @@
other
-
+
@@ -1048,7 +1048,7 @@
other
-
+
@@ -1065,7 +1065,7 @@
view
-
+
@@ -1074,7 +1074,7 @@
other
-
+
@@ -1083,7 +1083,7 @@
other
-
+
@@ -1092,7 +1092,7 @@
other
-
+
@@ -1101,7 +1101,7 @@
other
-
+
@@ -1110,7 +1110,7 @@
other
-
+
@@ -1119,7 +1119,7 @@
other
-
+
@@ -1128,7 +1128,7 @@
other
-
+
@@ -1137,7 +1137,7 @@
other
-
+
@@ -1146,7 +1146,7 @@
other
-
+
@@ -1155,7 +1155,7 @@
other
-
+
@@ -1164,7 +1164,7 @@
other
-
+
@@ -1181,7 +1181,7 @@
view
-
+
@@ -1190,7 +1190,7 @@
other
-
+
@@ -1199,7 +1199,7 @@
other
-
+
@@ -1208,7 +1208,7 @@
other
-
+
@@ -1217,7 +1217,7 @@
other
-
+
@@ -1226,7 +1226,7 @@
other
-
+
@@ -1235,7 +1235,7 @@
other
-
+
@@ -1244,7 +1244,7 @@
other
-
+
@@ -1253,7 +1253,7 @@
other
-
+
@@ -1262,7 +1262,7 @@
other
-
+
@@ -1271,7 +1271,7 @@
other
-
+
@@ -1280,7 +1280,7 @@
other
-
+
@@ -1289,7 +1289,7 @@
other
-
+
@@ -1298,7 +1298,7 @@
other
-
+
@@ -1323,7 +1323,7 @@
other
-
+
@@ -1332,7 +1332,7 @@
other
-
+
@@ -1349,7 +1349,7 @@
other
-
+
@@ -1366,7 +1366,7 @@
view
-
+
@@ -1375,7 +1375,7 @@
other
-
+
@@ -1384,7 +1384,7 @@
other
-
+
@@ -1393,7 +1393,7 @@
other
-
+
@@ -1402,7 +1402,7 @@
other
-
+
@@ -1411,7 +1411,7 @@
other
-
+
@@ -1428,7 +1428,7 @@
other
-
+
@@ -1445,7 +1445,7 @@
view
-
+
@@ -1454,7 +1454,7 @@
other
-
+
@@ -1463,7 +1463,7 @@
other
-
+
@@ -1480,7 +1480,7 @@
view
-
+
@@ -1489,7 +1489,7 @@
other
-
+
@@ -1498,7 +1498,7 @@
other
-
+
@@ -1507,7 +1507,7 @@
other
-
+
@@ -1524,7 +1524,7 @@
other
-
+
@@ -1541,7 +1541,7 @@
other
-
+
@@ -1566,7 +1566,7 @@
other
-
+
@@ -1575,7 +1575,7 @@
other
-
+
@@ -1584,7 +1584,7 @@
other
-
+
@@ -1593,7 +1593,7 @@
other
-
+
@@ -1602,7 +1602,7 @@
other
-
+
@@ -1611,7 +1611,7 @@
other
-
+
@@ -1620,7 +1620,7 @@
other
-
+
@@ -1629,7 +1629,7 @@
other
-
+
@@ -1638,7 +1638,7 @@
other
-
+
@@ -1647,7 +1647,7 @@
other
-
+
@@ -1656,7 +1656,7 @@
other
-
+
@@ -1665,7 +1665,7 @@
other
-
+
@@ -1674,7 +1674,7 @@
other
-
+
@@ -1683,7 +1683,7 @@
other
-
+
@@ -1692,7 +1692,7 @@
other
-
+
@@ -1701,7 +1701,7 @@
other
-
+
@@ -1710,7 +1710,7 @@
other
-
+
@@ -1719,7 +1719,7 @@
other
-
+
@@ -1728,7 +1728,7 @@
other
-
+
@@ -1737,7 +1737,7 @@
other
-
+
@@ -1746,7 +1746,7 @@
other
-
+
@@ -1755,7 +1755,7 @@
other
-
+
@@ -1764,7 +1764,7 @@
other
-
+
@@ -1773,7 +1773,7 @@
other
-
+
@@ -1782,7 +1782,7 @@
other
-
+
@@ -1791,7 +1791,7 @@
other
-
+
@@ -1800,7 +1800,7 @@
other
-
+
@@ -1809,7 +1809,7 @@
other
-
+
@@ -1818,7 +1818,7 @@
other
-
+
@@ -1827,7 +1827,7 @@
other
-
+
@@ -1836,7 +1836,7 @@
other
-
+
@@ -1845,7 +1845,7 @@
other
-
+
@@ -1854,7 +1854,7 @@
other
-
+
@@ -1863,7 +1863,7 @@
other
-
+
@@ -1872,7 +1872,7 @@
other
-
+
@@ -1881,7 +1881,7 @@
other
-
+
@@ -1890,7 +1890,7 @@
other
-
+
@@ -1899,7 +1899,7 @@
other
-
+
@@ -1908,7 +1908,7 @@
other
-
+
@@ -1917,7 +1917,7 @@
other
-
+
@@ -1934,7 +1934,7 @@
other
-
+
@@ -1943,7 +1943,7 @@
other
-
+
@@ -1952,7 +1952,7 @@
other
-
+
@@ -1961,7 +1961,7 @@
other
-
+
@@ -1970,7 +1970,7 @@
other
-
+
@@ -1979,7 +1979,7 @@
other
-
+
@@ -1988,7 +1988,7 @@
other
-
+
@@ -1997,7 +1997,7 @@
other
-
+
@@ -2006,7 +2006,7 @@
other
-
+
@@ -2015,7 +2015,7 @@
other
-
+
@@ -2024,7 +2024,7 @@
other
-
+
@@ -2033,7 +2033,7 @@
other
-
+
@@ -2042,7 +2042,7 @@
other
-
+
@@ -2051,7 +2051,7 @@
other
-
+
@@ -2060,7 +2060,7 @@
other
-
+
@@ -2069,7 +2069,7 @@
other
-
+
@@ -2078,7 +2078,7 @@
other
-
+
@@ -2087,7 +2087,7 @@
other
-
+
@@ -2096,7 +2096,7 @@
other
-
+
@@ -2105,7 +2105,7 @@
other
-
+
@@ -2114,7 +2114,7 @@
other
-
+
@@ -2123,7 +2123,7 @@
other
-
+
@@ -2132,7 +2132,7 @@
other
-
+
@@ -2141,7 +2141,7 @@
other
-
+
@@ -2150,7 +2150,7 @@
other
-
+
@@ -2159,7 +2159,7 @@
other
-
+
@@ -2168,7 +2168,7 @@
other
-
+
@@ -2177,7 +2177,7 @@
other
-
+
@@ -2186,7 +2186,7 @@
other
-
+
@@ -2195,7 +2195,7 @@
other
-
+
@@ -2204,7 +2204,7 @@
other
-
+
@@ -2213,7 +2213,7 @@
other
-
+
@@ -2222,7 +2222,7 @@
other
-
+
@@ -2231,7 +2231,7 @@
other
-
+
@@ -2240,7 +2240,7 @@
other
-
+
@@ -2249,7 +2249,7 @@
other
-
+
@@ -2258,7 +2258,7 @@
other
-
+
@@ -2267,7 +2267,7 @@
other
-
+
@@ -2276,7 +2276,7 @@
other
-
+
@@ -2285,7 +2285,7 @@
other
-
+
@@ -2294,7 +2294,7 @@
other
-
+
@@ -2303,7 +2303,7 @@
other
-
+
@@ -2312,7 +2312,7 @@
other
-
+
@@ -2321,7 +2321,7 @@
other
-
+
@@ -2330,7 +2330,7 @@
other
-
+
@@ -2339,7 +2339,7 @@
other
-
+
@@ -2348,7 +2348,7 @@
other
-
+
@@ -2357,7 +2357,7 @@
other
-
+
@@ -2366,7 +2366,7 @@
other
-
+
@@ -2375,7 +2375,7 @@
other
-
+
@@ -2392,7 +2392,7 @@
other
-
+
@@ -2401,7 +2401,7 @@
other
-
+
@@ -2410,7 +2410,7 @@
other
-
+
@@ -2419,7 +2419,7 @@
other
-
+
@@ -2428,7 +2428,7 @@
other
-
+
@@ -2445,7 +2445,7 @@
other
-
+
@@ -2454,7 +2454,7 @@
other
-
+
@@ -2463,7 +2463,7 @@
other
-
+
@@ -2472,7 +2472,7 @@
other
-
+
@@ -2481,7 +2481,7 @@
other
-
+
@@ -2498,7 +2498,7 @@
other
-
+
@@ -2507,7 +2507,7 @@
other
-
+
@@ -2516,7 +2516,7 @@
other
-
+
@@ -2525,7 +2525,7 @@
other
-
+
@@ -2534,7 +2534,7 @@
other
-
+
@@ -2543,7 +2543,7 @@
other
-
+
@@ -2552,7 +2552,7 @@
other
-
+
@@ -2561,7 +2561,7 @@
other
-
+
@@ -2570,7 +2570,7 @@
other
-
+
@@ -2579,7 +2579,7 @@
other
-
+
@@ -2588,7 +2588,7 @@
other
-
+
@@ -2597,7 +2597,7 @@
other
-
+
@@ -2606,7 +2606,7 @@
other
-
+
@@ -2615,7 +2615,7 @@
other
-
+
@@ -2624,7 +2624,7 @@
other
-
+
@@ -2633,7 +2633,7 @@
other
-
+
@@ -2642,7 +2642,7 @@
other
-
+
@@ -2651,7 +2651,7 @@
other
-
+
@@ -2660,7 +2660,7 @@
other
-
+
@@ -2669,7 +2669,7 @@
other
-
+
@@ -2678,7 +2678,7 @@
other
-
+
@@ -2687,7 +2687,7 @@
other
-
+
@@ -2696,7 +2696,7 @@
other
-
+
@@ -2705,7 +2705,7 @@
other
-
+
@@ -2714,7 +2714,7 @@
other
-
+
@@ -2723,7 +2723,7 @@
other
-
+
@@ -2732,7 +2732,7 @@
other
-
+
@@ -2741,7 +2741,7 @@
other
-
+
@@ -2750,7 +2750,7 @@
other
-
+
@@ -2759,7 +2759,7 @@
other
-
+
@@ -2768,7 +2768,7 @@
other
-
+
@@ -2777,7 +2777,7 @@
other
-
+
@@ -2786,7 +2786,7 @@
other
-
+
@@ -2795,7 +2795,7 @@
other
-
+
@@ -2804,7 +2804,7 @@
other
-
+
@@ -2813,7 +2813,7 @@
other
-
+
@@ -2822,7 +2822,7 @@
other
-
+
@@ -2831,7 +2831,7 @@
other
-
+
@@ -2840,7 +2840,7 @@
other
-
+
@@ -2849,7 +2849,7 @@
other
-
+
@@ -2858,7 +2858,7 @@
other
-
+
@@ -2867,7 +2867,7 @@
other
-
+
@@ -2876,7 +2876,7 @@
other
-
+
@@ -2885,7 +2885,7 @@
other
-
+
@@ -2894,7 +2894,7 @@
other
-
+
@@ -2903,7 +2903,7 @@
other
-
+
@@ -2912,7 +2912,7 @@
other
-
+
@@ -2921,7 +2921,7 @@
other
-
+
@@ -2930,7 +2930,7 @@
other
-
+
@@ -2939,7 +2939,7 @@
other
-
+
@@ -2948,7 +2948,7 @@
other
-
+
@@ -2957,7 +2957,7 @@
other
-
+
@@ -2966,7 +2966,7 @@
other
-
+
@@ -2975,7 +2975,7 @@
other
-
+
@@ -2984,7 +2984,7 @@
other
-
+
@@ -2993,7 +2993,7 @@
other
-
+
@@ -3002,7 +3002,7 @@
other
-
+
@@ -3011,7 +3011,7 @@
other
-
+
@@ -3020,7 +3020,7 @@
other
-
+
@@ -3029,7 +3029,7 @@
other
-
+
@@ -3038,7 +3038,7 @@
other
-
+
@@ -3047,7 +3047,7 @@
other
-
+
@@ -3056,7 +3056,7 @@
other
-
+
@@ -3065,7 +3065,7 @@
other
-
+
@@ -3074,7 +3074,7 @@
other
-
+
@@ -3083,7 +3083,7 @@
other
-
+
@@ -3092,7 +3092,7 @@
other
-
+
@@ -3101,7 +3101,7 @@
other
-
+
@@ -3110,7 +3110,7 @@
other
-
+
@@ -3119,7 +3119,7 @@
other
-
+
@@ -3128,7 +3128,7 @@
other
-
+
@@ -3137,7 +3137,7 @@
other
-
+
@@ -3146,7 +3146,7 @@
other
-
+
@@ -3155,7 +3155,7 @@
other
-
+
@@ -3164,7 +3164,7 @@
other
-
+
@@ -3173,7 +3173,7 @@
other
-
+
@@ -3182,7 +3182,7 @@
other
-
+
@@ -3191,7 +3191,7 @@
other
-
+
@@ -3200,7 +3200,7 @@
other
-
+
@@ -3209,7 +3209,7 @@
other
-
+
@@ -3226,7 +3226,7 @@
view
-
+
@@ -3235,7 +3235,7 @@
other
-
+
@@ -3244,7 +3244,7 @@
other
-
+
@@ -3253,7 +3253,7 @@
other
-
+
@@ -3262,7 +3262,7 @@
other
-
+
@@ -3279,7 +3279,7 @@
other
-
+
@@ -3304,7 +3304,7 @@
view
-
+
@@ -3313,7 +3313,7 @@
receivable
-
+
@@ -3322,7 +3322,7 @@
view
-
+
@@ -3331,7 +3331,7 @@
other
-
+
@@ -3340,7 +3340,7 @@
other
-
+
@@ -3349,7 +3349,7 @@
other
-
+
@@ -3358,7 +3358,7 @@
other
-
+
@@ -3367,7 +3367,7 @@
receivable
-
+
@@ -3376,7 +3376,7 @@
receivable
-
+
@@ -3385,7 +3385,7 @@
receivable
-
+
@@ -3394,7 +3394,7 @@
receivable
-
+
@@ -3403,7 +3403,7 @@
receivable
-
+
@@ -3412,7 +3412,7 @@
receivable
-
+
@@ -3421,7 +3421,7 @@
other
-
+
@@ -3430,7 +3430,7 @@
other
-
+
@@ -3439,7 +3439,7 @@
other
-
+
@@ -3448,7 +3448,7 @@
other
-
+
@@ -3457,7 +3457,7 @@
other
-
+
@@ -3466,7 +3466,7 @@
other
-
+
@@ -3475,7 +3475,7 @@
other
-
+
@@ -3484,7 +3484,7 @@
other
-
+
@@ -3493,7 +3493,7 @@
other
-
+
@@ -3510,7 +3510,7 @@
other
-
+
@@ -3519,7 +3519,7 @@
other
-
+
@@ -3528,7 +3528,7 @@
other
-
+
@@ -3537,7 +3537,7 @@
other
-
+
@@ -3546,7 +3546,7 @@
receivable
-
+
@@ -3555,7 +3555,7 @@
other
-
+
@@ -3564,7 +3564,7 @@
other
-
+
@@ -3573,7 +3573,7 @@
other
-
+
@@ -3590,7 +3590,7 @@
other
-
+
@@ -3607,7 +3607,7 @@
view
-
+
@@ -3616,7 +3616,7 @@
other
-
+
@@ -3625,7 +3625,7 @@
other
-
+
@@ -3634,7 +3634,7 @@
other
-
+
@@ -3643,7 +3643,7 @@
other
-
+
@@ -3652,7 +3652,7 @@
other
-
+
@@ -3661,7 +3661,7 @@
other
-
+
@@ -3670,7 +3670,7 @@
receivable
-
+
@@ -3679,7 +3679,7 @@
other
-
+
@@ -3688,7 +3688,7 @@
other
-
+
@@ -3705,7 +3705,7 @@
other
-
+
@@ -3714,7 +3714,7 @@
other
-
+
@@ -3731,7 +3731,7 @@
view
-
+
@@ -3740,7 +3740,7 @@
other
-
+
@@ -3749,7 +3749,7 @@
other
-
+
@@ -3758,7 +3758,7 @@
other
-
+
@@ -3767,7 +3767,7 @@
other
-
+
@@ -3776,7 +3776,7 @@
other
-
+
@@ -3785,7 +3785,7 @@
other
-
+
@@ -3794,7 +3794,7 @@
receivable
-
+
@@ -3803,7 +3803,7 @@
other
-
+
@@ -3812,7 +3812,7 @@
other
-
+
@@ -3829,7 +3829,7 @@
other
-
+
@@ -3838,7 +3838,7 @@
other
-
+
@@ -3855,7 +3855,7 @@
other
-
+
@@ -3872,7 +3872,7 @@
other
-
+
@@ -3889,7 +3889,7 @@
view
-
+
@@ -3898,7 +3898,7 @@
other
-
+
@@ -3907,7 +3907,7 @@
other
-
+
@@ -3916,7 +3916,7 @@
other
-
+
@@ -3925,7 +3925,7 @@
other
-
+
@@ -3934,7 +3934,7 @@
other
-
+
@@ -3943,7 +3943,7 @@
other
-
+
@@ -3952,7 +3952,7 @@
other
-
+
@@ -3961,7 +3961,7 @@
other
-
+
@@ -3970,7 +3970,7 @@
other
-
+
@@ -3979,7 +3979,7 @@
other
-
+
@@ -3988,7 +3988,7 @@
other
-
+
@@ -3997,7 +3997,7 @@
other
-
+
@@ -4006,7 +4006,7 @@
other
-
+
@@ -4015,7 +4015,7 @@
other
-
+
@@ -4024,7 +4024,7 @@
other
-
+
@@ -4033,7 +4033,7 @@
other
-
+
@@ -4042,7 +4042,7 @@
other
-
+
@@ -4051,7 +4051,7 @@
other
-
+
@@ -4060,7 +4060,7 @@
other
-
+
@@ -4069,7 +4069,7 @@
other
-
+
@@ -4086,7 +4086,7 @@
other
-
+
@@ -4095,7 +4095,7 @@
other
-
+
@@ -4104,7 +4104,7 @@
other
-
+
@@ -4113,7 +4113,7 @@
other
-
+
@@ -4122,7 +4122,7 @@
other
-
+
@@ -4131,7 +4131,7 @@
other
-
+
@@ -4140,7 +4140,7 @@
other
-
+
@@ -4149,7 +4149,7 @@
other
-
+
@@ -4158,7 +4158,7 @@
other
-
+
@@ -4167,7 +4167,7 @@
other
-
+
@@ -4176,7 +4176,7 @@
other
-
+
@@ -4185,7 +4185,7 @@
other
-
+
@@ -4194,7 +4194,7 @@
other
-
+
@@ -4203,7 +4203,7 @@
other
-
+
@@ -4212,7 +4212,7 @@
other
-
+
@@ -4221,7 +4221,7 @@
other
-
+
@@ -4230,7 +4230,7 @@
other
-
+
@@ -4239,7 +4239,7 @@
other
-
+
@@ -4248,7 +4248,7 @@
other
-
+
@@ -4257,7 +4257,7 @@
other
-
+
@@ -4266,7 +4266,7 @@
other
-
+
@@ -4275,7 +4275,7 @@
other
-
+
@@ -4284,7 +4284,7 @@
other
-
+
@@ -4293,7 +4293,7 @@
other
-
+
@@ -4302,7 +4302,7 @@
other
-
+
@@ -4311,7 +4311,7 @@
other
-
+
@@ -4320,7 +4320,7 @@
other
-
+
@@ -4329,7 +4329,7 @@
other
-
+
@@ -4338,7 +4338,7 @@
other
-
+
@@ -4347,7 +4347,7 @@
other
-
+
@@ -4356,7 +4356,7 @@
other
-
+
@@ -4365,7 +4365,7 @@
other
-
+
@@ -4374,7 +4374,7 @@
other
-
+
@@ -4383,7 +4383,7 @@
other
-
+
@@ -4392,7 +4392,7 @@
other
-
+
@@ -4401,7 +4401,7 @@
other
-
+
@@ -4410,7 +4410,7 @@
other
-
+
@@ -4419,7 +4419,7 @@
other
-
+
@@ -4428,7 +4428,7 @@
other
-
+
@@ -4437,7 +4437,7 @@
other
-
+
@@ -4446,7 +4446,7 @@
other
-
+
@@ -4455,7 +4455,7 @@
other
-
+
@@ -4464,7 +4464,7 @@
other
-
+
@@ -4473,7 +4473,7 @@
other
-
+
@@ -4482,7 +4482,7 @@
other
-
+
@@ -4491,7 +4491,7 @@
other
-
+
@@ -4500,7 +4500,7 @@
liquidity
-
+
@@ -4509,7 +4509,7 @@
other
-
+
@@ -4518,7 +4518,7 @@
other
-
+
@@ -4527,7 +4527,7 @@
other
-
+
@@ -4536,7 +4536,7 @@
other
-
+
@@ -4545,7 +4545,7 @@
other
-
+
@@ -4554,7 +4554,7 @@
other
-
+
@@ -4563,7 +4563,7 @@
other
-
+
@@ -4572,7 +4572,7 @@
other
-
+
@@ -4581,7 +4581,7 @@
other
-
+
@@ -4598,7 +4598,7 @@
other
-
+
@@ -4607,7 +4607,7 @@
other
-
+
@@ -4632,7 +4632,7 @@
other
-
+
@@ -4641,7 +4641,7 @@
other
-
+
@@ -4658,7 +4658,7 @@
other
-
+
@@ -4675,7 +4675,7 @@
view
-
+
@@ -4684,7 +4684,7 @@
other
-
+
@@ -4693,7 +4693,7 @@
other
-
+
@@ -4702,7 +4702,7 @@
other
-
+
@@ -4727,7 +4727,7 @@
other
-
+
@@ -4736,7 +4736,7 @@
view
-
+
@@ -4745,7 +4745,7 @@
liquidity
-
+
@@ -4754,7 +4754,7 @@
liquidity
-
+
@@ -4771,7 +4771,7 @@
liquidity
-
+
@@ -4780,7 +4780,7 @@
liquidity
-
+
@@ -4789,7 +4789,7 @@
liquidity
-
+
@@ -4798,7 +4798,7 @@
liquidity
-
+
@@ -4807,7 +4807,7 @@
liquidity
-
+
@@ -4816,7 +4816,7 @@
liquidity
-
+
@@ -4825,7 +4825,7 @@
liquidity
-
+
@@ -4835,7 +4835,7 @@
liquidity
-
+
@@ -4844,7 +4844,7 @@
liquidity
-
+
@@ -4853,7 +4853,7 @@
liquidity
-
+
@@ -4862,7 +4862,7 @@
liquidity
-
+
@@ -4871,7 +4871,7 @@
liquidity
-
+
@@ -4880,7 +4880,7 @@
other
-
+
@@ -4889,7 +4889,7 @@
other
-
+
@@ -4914,7 +4914,7 @@
view
-
+
@@ -4923,7 +4923,7 @@
other
-
+
@@ -4932,7 +4932,7 @@
other
-
+
@@ -4941,7 +4941,7 @@
other
-
+
@@ -4958,7 +4958,7 @@
other
-
+
@@ -4975,7 +4975,7 @@
other
-
+
@@ -4984,7 +4984,7 @@
other
-
+
@@ -4993,7 +4993,7 @@
other
-
+
@@ -5002,7 +5002,7 @@
other
-
+
@@ -5019,7 +5019,7 @@
other
-
+
@@ -5028,7 +5028,7 @@
other
-
+
@@ -5037,7 +5037,7 @@
other
-
+
@@ -5046,7 +5046,7 @@
other
-
+
@@ -5063,7 +5063,7 @@
other
-
+
@@ -5072,7 +5072,7 @@
other
-
+
@@ -5081,7 +5081,7 @@
other
-
+
@@ -5090,7 +5090,7 @@
other
-
+
@@ -5099,7 +5099,7 @@
other
-
+
@@ -5108,7 +5108,7 @@
other
-
+
@@ -5117,7 +5117,7 @@
other
-
+
@@ -5126,7 +5126,7 @@
other
-
+
@@ -5135,7 +5135,7 @@
other
-
+
@@ -5144,7 +5144,7 @@
other
-
+
@@ -5153,7 +5153,7 @@
other
-
+
@@ -5162,7 +5162,7 @@
other
-
+
@@ -5179,7 +5179,7 @@
other
-
+
@@ -5188,7 +5188,7 @@
other
-
+
@@ -5197,7 +5197,7 @@
other
-
+
@@ -5206,7 +5206,7 @@
other
-
+
@@ -5215,7 +5215,7 @@
other
-
+
@@ -5224,7 +5224,7 @@
other
-
+
@@ -5233,7 +5233,7 @@
other
-
+
@@ -5242,7 +5242,7 @@
other
-
+
@@ -5251,7 +5251,7 @@
other
-
+
@@ -5260,7 +5260,7 @@
other
-
+
@@ -5285,7 +5285,7 @@
other
-
+
@@ -5302,7 +5302,7 @@
other
-
+
@@ -5327,7 +5327,7 @@
view
-
+
@@ -5336,7 +5336,7 @@
other
-
+
@@ -5345,7 +5345,7 @@
other
-
+
@@ -5354,7 +5354,7 @@
other
-
+
@@ -5363,7 +5363,7 @@
other
-
+
@@ -5372,7 +5372,7 @@
other
-
+
@@ -5397,7 +5397,7 @@
other
-
+
@@ -5414,7 +5414,7 @@
other
-
+
@@ -5431,7 +5431,7 @@
other
-
+
@@ -5448,7 +5448,7 @@
view
-
+
@@ -5457,7 +5457,7 @@
other
-
+
@@ -5482,7 +5482,7 @@
other
-
+
@@ -5491,7 +5491,7 @@
other
-
+
@@ -5508,7 +5508,7 @@
other
-
+
@@ -5533,7 +5533,7 @@
other
-
+
@@ -5542,7 +5542,7 @@
other
-
+
@@ -5551,7 +5551,7 @@
other
-
+
@@ -5560,7 +5560,7 @@
other
-
+
@@ -5569,7 +5569,7 @@
other
-
+
@@ -5586,7 +5586,7 @@
other
-
+
@@ -5595,7 +5595,7 @@
other
-
+
@@ -5604,7 +5604,7 @@
other
-
+
@@ -5613,7 +5613,7 @@
other
-
+
@@ -5622,7 +5622,7 @@
other
-
+
@@ -5631,7 +5631,7 @@
other
-
+
@@ -5640,7 +5640,7 @@
other
-
+
@@ -5649,7 +5649,7 @@
other
-
+
@@ -5658,7 +5658,7 @@
other
-
+
@@ -5667,7 +5667,7 @@
other
-
+
@@ -5676,7 +5676,7 @@
other
-
+
@@ -5685,7 +5685,7 @@
other
-
+
@@ -5694,7 +5694,7 @@
other
-
+
@@ -5703,7 +5703,7 @@
other
-
+
@@ -5720,7 +5720,7 @@
other
-
+
@@ -5745,7 +5745,7 @@
view
-
+
@@ -5754,7 +5754,7 @@
other
-
+
@@ -5763,7 +5763,7 @@
other
-
+
@@ -5780,7 +5780,7 @@
view
-
+
@@ -5789,7 +5789,7 @@
other
-
+
@@ -5798,7 +5798,7 @@
other
-
+
@@ -5807,7 +5807,7 @@
other
-
+
@@ -5824,7 +5824,7 @@
view
-
+
@@ -5833,7 +5833,7 @@
other
-
+
@@ -5842,7 +5842,7 @@
other
-
+
@@ -5851,7 +5851,7 @@
other
-
+
@@ -5860,7 +5860,7 @@
other
-
+
@@ -5869,7 +5869,7 @@
other
-
+
@@ -5878,7 +5878,7 @@
other
-
+
@@ -5887,7 +5887,7 @@
other
-
+
@@ -5896,7 +5896,7 @@
other
-
+
@@ -5905,7 +5905,7 @@
other
-
+
@@ -5914,7 +5914,7 @@
other
-
+
@@ -5939,7 +5939,7 @@
view
-
+
@@ -5948,7 +5948,7 @@
other
-
+
@@ -5957,7 +5957,7 @@
other
-
+
@@ -5966,7 +5966,7 @@
other
-
+
@@ -5975,7 +5975,7 @@
other
-
+
@@ -5984,7 +5984,7 @@
other
-
+
@@ -5993,7 +5993,7 @@
other
-
+
@@ -6002,7 +6002,7 @@
other
-
+
@@ -6019,7 +6019,7 @@
view
-
+
@@ -6028,7 +6028,7 @@
other
-
+
@@ -6037,7 +6037,7 @@
other
-
+
@@ -6046,7 +6046,7 @@
other
-
+
@@ -6055,7 +6055,7 @@
other
-
+
@@ -6064,7 +6064,7 @@
other
-
+
@@ -6073,7 +6073,7 @@
other
-
+
@@ -6082,7 +6082,7 @@
other
-
+
@@ -6091,7 +6091,7 @@
other
-
+
@@ -6108,7 +6108,7 @@
other
-
+
@@ -6125,7 +6125,7 @@
view
-
+
@@ -6134,7 +6134,7 @@
other
-
+
@@ -6143,7 +6143,7 @@
other
-
+
@@ -6152,7 +6152,7 @@
other
-
+
@@ -6161,7 +6161,7 @@
other
-
+
@@ -6170,7 +6170,7 @@
other
-
+
@@ -6179,7 +6179,7 @@
other
-
+
@@ -6188,7 +6188,7 @@
other
-
+
@@ -6205,7 +6205,7 @@
view
-
+
@@ -6214,7 +6214,7 @@
payable
-
+
@@ -6223,7 +6223,7 @@
payable
-
+
@@ -6232,7 +6232,7 @@
payable
-
+
@@ -6241,7 +6241,7 @@
payable
-
+
@@ -6250,7 +6250,7 @@
other
-
+
@@ -6259,7 +6259,7 @@
other
-
+
@@ -6268,7 +6268,7 @@
payable
-
+
@@ -6277,7 +6277,7 @@
other
-
+
@@ -6286,7 +6286,7 @@
other
-
+
@@ -6295,7 +6295,7 @@
other
-
+
@@ -6304,7 +6304,7 @@
payable
-
+
@@ -6313,7 +6313,7 @@
other
-
+
@@ -6322,7 +6322,7 @@
other
-
+
@@ -6331,7 +6331,7 @@
other
-
+
@@ -6348,7 +6348,7 @@
other
-
+
@@ -6365,7 +6365,7 @@
view
-
+
@@ -6374,7 +6374,7 @@
other
-
+
@@ -6383,7 +6383,7 @@
other
-
+
@@ -6392,7 +6392,7 @@
other
-
+
@@ -6409,7 +6409,7 @@
view
-
+
@@ -6418,7 +6418,7 @@
other
-
+
@@ -6427,7 +6427,7 @@
other
-
+
@@ -6436,7 +6436,7 @@
other
-
+
@@ -6445,7 +6445,7 @@
payable
-
+
@@ -6454,7 +6454,7 @@
other
-
+
@@ -6463,7 +6463,7 @@
other
-
+
@@ -6472,7 +6472,7 @@
other
-
+
@@ -6489,7 +6489,7 @@
view
-
+
@@ -6498,7 +6498,7 @@
other
-
+
@@ -6507,7 +6507,7 @@
other
-
+
@@ -6516,7 +6516,7 @@
other
-
+
@@ -6525,7 +6525,7 @@
payable
-
+
@@ -6534,7 +6534,7 @@
other
-
+
@@ -6543,7 +6543,7 @@
other
-
+
@@ -6552,7 +6552,7 @@
other
-
+
@@ -6569,7 +6569,7 @@
view
-
+
@@ -6578,7 +6578,7 @@
other
-
+
@@ -6587,7 +6587,7 @@
other
-
+
@@ -6596,7 +6596,7 @@
other
-
+
@@ -6605,7 +6605,7 @@
other
-
+
@@ -6614,7 +6614,7 @@
other
-
+
@@ -6623,7 +6623,7 @@
other
-
+
@@ -6632,7 +6632,7 @@
other
-
+
@@ -6641,7 +6641,7 @@
other
-
+
@@ -6650,7 +6650,7 @@
other
-
+
@@ -6659,7 +6659,7 @@
other
-
+
@@ -6668,7 +6668,7 @@
other
-
+
@@ -6677,7 +6677,7 @@
other
-
+
@@ -6686,7 +6686,7 @@
other
-
+
@@ -6695,7 +6695,7 @@
other
-
+
@@ -6704,7 +6704,7 @@
other
-
+
@@ -6713,7 +6713,7 @@
other
-
+
@@ -6722,7 +6722,7 @@
other
-
+
@@ -6731,7 +6731,7 @@
other
-
+
@@ -6740,7 +6740,7 @@
other
-
+
@@ -6749,7 +6749,7 @@
other
-
+
@@ -6758,7 +6758,7 @@
other
-
+
@@ -6767,7 +6767,7 @@
other
-
+
@@ -6776,7 +6776,7 @@
other
-
+
@@ -6785,7 +6785,7 @@
other
-
+
@@ -6794,7 +6794,7 @@
other
-
+
@@ -6803,7 +6803,7 @@
other
-
+
@@ -6812,7 +6812,7 @@
other
-
+
@@ -6821,7 +6821,7 @@
other
-
+
@@ -6830,7 +6830,7 @@
other
-
+
@@ -6839,7 +6839,7 @@
other
-
+
@@ -6848,7 +6848,7 @@
other
-
+
@@ -6857,7 +6857,7 @@
other
-
+
@@ -6866,7 +6866,7 @@
other
-
+
@@ -6883,7 +6883,7 @@
other
-
+
@@ -6892,7 +6892,7 @@
other
-
+
@@ -6909,7 +6909,7 @@
other
-
+
@@ -6918,7 +6918,7 @@
other
-
+
@@ -6927,7 +6927,7 @@
other
-
+
@@ -6936,7 +6936,7 @@
other
-
+
@@ -6945,7 +6945,7 @@
other
-
+
@@ -6954,7 +6954,7 @@
other
-
+
@@ -6963,7 +6963,7 @@
other
-
+
@@ -6972,7 +6972,7 @@
other
-
+
@@ -6981,7 +6981,7 @@
other
-
+
@@ -6990,7 +6990,7 @@
other
-
+
@@ -6999,7 +6999,7 @@
other
-
+
@@ -7008,7 +7008,7 @@
other
-
+
@@ -7017,7 +7017,7 @@
other
-
+
@@ -7026,7 +7026,7 @@
other
-
+
@@ -7035,7 +7035,7 @@
other
-
+
@@ -7044,7 +7044,7 @@
other
-
+
@@ -7053,7 +7053,7 @@
other
-
+
@@ -7062,7 +7062,7 @@
other
-
+
@@ -7071,7 +7071,7 @@
other
-
+
@@ -7080,7 +7080,7 @@
other
-
+
@@ -7089,7 +7089,7 @@
view
-
+
@@ -7098,7 +7098,7 @@
other
-
+
@@ -7107,7 +7107,7 @@
other
-
+
@@ -7116,7 +7116,7 @@
other
-
+
@@ -7125,7 +7125,7 @@
other
-
+
@@ -7134,7 +7134,7 @@
other
-
+
@@ -7143,7 +7143,7 @@
other
-
+
@@ -7152,7 +7152,7 @@
other
-
+
@@ -7161,7 +7161,7 @@
other
-
+
@@ -7170,7 +7170,7 @@
other
-
+
@@ -7179,7 +7179,7 @@
other
-
+
@@ -7188,7 +7188,7 @@
other
-
+
@@ -7197,7 +7197,7 @@
other
-
+
@@ -7214,7 +7214,7 @@
other
-
+
@@ -7223,7 +7223,7 @@
other
-
+
@@ -7232,7 +7232,7 @@
other
-
+
@@ -7241,7 +7241,7 @@
other
-
+
@@ -7250,7 +7250,7 @@
other
-
+
@@ -7259,7 +7259,7 @@
other
-
+
@@ -7268,7 +7268,7 @@
other
-
+
@@ -7277,7 +7277,7 @@
other
-
+
@@ -7286,7 +7286,7 @@
other
-
+
@@ -7295,7 +7295,7 @@
other
-
+
@@ -7304,7 +7304,7 @@
other
-
+
@@ -7313,7 +7313,7 @@
other
-
+
@@ -7322,7 +7322,7 @@
other
-
+
@@ -7331,7 +7331,7 @@
other
-
+
@@ -7340,7 +7340,7 @@
other
-
+
@@ -7349,7 +7349,7 @@
other
-
+
@@ -7358,7 +7358,7 @@
other
-
+
@@ -7367,7 +7367,7 @@
other
-
+
@@ -7376,7 +7376,7 @@
other
-
+
@@ -7385,7 +7385,7 @@
other
-
+
@@ -7394,7 +7394,7 @@
other
-
+
@@ -7403,7 +7403,7 @@
other
-
+
@@ -7412,7 +7412,7 @@
other
-
+
@@ -7437,7 +7437,7 @@
other
-
+
@@ -7454,7 +7454,7 @@
other
-
+
@@ -7479,7 +7479,7 @@
other
-
+
@@ -7488,7 +7488,7 @@
other
-
+
@@ -7497,7 +7497,7 @@
other
-
+
@@ -7506,7 +7506,7 @@
other
-
+
@@ -7515,7 +7515,7 @@
other
-
+
@@ -7524,7 +7524,7 @@
other
-
+
@@ -7533,7 +7533,7 @@
other
-
+
@@ -7542,7 +7542,7 @@
other
-
+
@@ -7551,7 +7551,7 @@
other
-
+
@@ -7560,7 +7560,7 @@
other
-
+
@@ -7569,7 +7569,7 @@
other
-
+
@@ -7578,7 +7578,7 @@
other
-
+
@@ -7587,7 +7587,7 @@
other
-
+
@@ -7596,7 +7596,7 @@
other
-
+
@@ -7605,7 +7605,7 @@
other
-
+
@@ -7614,7 +7614,7 @@
other
-
+
@@ -7623,7 +7623,7 @@
other
-
+
@@ -7632,7 +7632,7 @@
other
-
+
@@ -7641,7 +7641,7 @@
other
-
+
@@ -7650,7 +7650,7 @@
other
-
+
@@ -7659,7 +7659,7 @@
other
-
+
@@ -7668,7 +7668,7 @@
other
-
+
@@ -7677,7 +7677,7 @@
other
-
+
@@ -7686,7 +7686,7 @@
other
-
+
@@ -7695,7 +7695,7 @@
other
-
+
@@ -7704,7 +7704,7 @@
other
-
+
@@ -7713,7 +7713,7 @@
other
-
+
@@ -7722,7 +7722,7 @@
other
-
+
@@ -7731,7 +7731,7 @@
other
-
+
@@ -7740,7 +7740,7 @@
other
-
+
@@ -7749,7 +7749,7 @@
other
-
+
@@ -7758,7 +7758,7 @@
other
-
+
@@ -7767,7 +7767,7 @@
other
-
+
@@ -7776,7 +7776,7 @@
other
-
+
@@ -7785,7 +7785,7 @@
other
-
+
@@ -7794,7 +7794,7 @@
other
-
+
@@ -7803,7 +7803,7 @@
other
-
+
@@ -7812,7 +7812,7 @@
other
-
+
@@ -7821,7 +7821,7 @@
other
-
+
@@ -7838,7 +7838,7 @@
other
-
+
@@ -7847,7 +7847,7 @@
other
-
+
@@ -7856,7 +7856,7 @@
other
-
+
@@ -7865,7 +7865,7 @@
other
-
+
@@ -7874,7 +7874,7 @@
other
-
+
@@ -7883,7 +7883,7 @@
other
-
+
@@ -7908,7 +7908,7 @@
other
-
+
@@ -7917,7 +7917,7 @@
other
-
+
@@ -7926,7 +7926,7 @@
other
-
+
@@ -7935,7 +7935,7 @@
other
-
+
@@ -7944,7 +7944,7 @@
other
-
+
@@ -7953,7 +7953,7 @@
other
-
+
@@ -7962,7 +7962,7 @@
other
-
+
@@ -7971,7 +7971,7 @@
other
-
+
@@ -7980,7 +7980,7 @@
other
-
+
@@ -7989,7 +7989,7 @@
other
-
+
@@ -8006,7 +8006,7 @@
other
-
+
@@ -8015,7 +8015,7 @@
other
-
+
@@ -8024,7 +8024,7 @@
other
-
+
@@ -8033,7 +8033,7 @@
other
-
+
@@ -8042,7 +8042,7 @@
other
-
+
@@ -8051,7 +8051,7 @@
other
-
+
@@ -8060,7 +8060,7 @@
other
-
+
@@ -8069,7 +8069,7 @@
other
-
+
@@ -8078,7 +8078,7 @@
other
-
+
@@ -8087,7 +8087,7 @@
other
-
+
@@ -8096,7 +8096,7 @@
other
-
+
@@ -8105,7 +8105,7 @@
other
-
+
@@ -8114,7 +8114,7 @@
other
-
+
@@ -8123,7 +8123,7 @@
other
-
+
@@ -8132,7 +8132,7 @@
other
-
+
@@ -8141,7 +8141,7 @@
other
-
+
@@ -8150,7 +8150,7 @@
other
-
+
@@ -8159,7 +8159,7 @@
other
-
+
@@ -8168,7 +8168,7 @@
other
-
+
@@ -8177,7 +8177,7 @@
other
-
+
@@ -8186,7 +8186,7 @@
other
-
+
@@ -8195,7 +8195,7 @@
other
-
+
@@ -8204,7 +8204,7 @@
other
-
+
@@ -8213,7 +8213,7 @@
other
-
+
@@ -8222,7 +8222,7 @@
other
-
+
@@ -8231,7 +8231,7 @@
other
-
+
@@ -8240,7 +8240,7 @@
other
-
+
@@ -8249,7 +8249,7 @@
other
-
+
@@ -8258,7 +8258,7 @@
other
-
+
@@ -8267,7 +8267,7 @@
other
-
+
@@ -8276,7 +8276,7 @@
other
-
+
@@ -8285,7 +8285,7 @@
other
-
+
@@ -8294,7 +8294,7 @@
other
-
+
@@ -8303,7 +8303,7 @@
other
-
+
@@ -8312,7 +8312,7 @@
other
-
+
@@ -8321,7 +8321,7 @@
other
-
+
@@ -8330,7 +8330,7 @@
other
-
+
@@ -8339,7 +8339,7 @@
other
-
+
@@ -8348,7 +8348,7 @@
other
-
+
@@ -8357,7 +8357,7 @@
other
-
+
@@ -8366,7 +8366,7 @@
other
-
+
@@ -8375,7 +8375,7 @@
other
-
+
@@ -8384,7 +8384,7 @@
other
-
+
@@ -8393,7 +8393,7 @@
other
-
+
@@ -8402,7 +8402,7 @@
other
-
+
@@ -8411,7 +8411,7 @@
other
-
+
@@ -8420,7 +8420,7 @@
other
-
+
@@ -8429,7 +8429,7 @@
other
-
+
@@ -8438,7 +8438,7 @@
other
-
+
@@ -8447,7 +8447,7 @@
other
-
+
@@ -8456,7 +8456,7 @@
other
-
+
@@ -8481,7 +8481,7 @@
other
-
+
@@ -8490,7 +8490,7 @@
other
-
+
@@ -8499,7 +8499,7 @@
other
-
+
@@ -8516,7 +8516,7 @@
other
-
+
@@ -8533,7 +8533,7 @@
other
-
+
@@ -8558,7 +8558,7 @@
other
-
+
@@ -8583,7 +8583,7 @@
other
-
+
@@ -8592,7 +8592,7 @@
other
-
+
@@ -8601,7 +8601,7 @@
other
-
+
@@ -8610,7 +8610,7 @@
other
-
+
@@ -8619,7 +8619,7 @@
other
-
+
@@ -8628,7 +8628,7 @@
other
-
+
@@ -8637,7 +8637,7 @@
other
-
+
@@ -8646,7 +8646,7 @@
other
-
+
@@ -8655,7 +8655,7 @@
other
-
+
@@ -8664,7 +8664,7 @@
other
-
+
@@ -8673,7 +8673,7 @@
other
-
+
@@ -8682,7 +8682,7 @@
other
-
+
@@ -8691,7 +8691,7 @@
other
-
+
@@ -8700,7 +8700,7 @@
other
-
+
@@ -8709,7 +8709,7 @@
other
-
+
@@ -8718,7 +8718,7 @@
other
-
+
@@ -8727,7 +8727,7 @@
other
-
+
@@ -8736,7 +8736,7 @@
other
-
+
@@ -8745,7 +8745,7 @@
other
-
+
@@ -8754,7 +8754,7 @@
other
-
+
@@ -8763,7 +8763,7 @@
other
-
+
@@ -8772,7 +8772,7 @@
other
-
+
@@ -8781,7 +8781,7 @@
other
-
+
@@ -8790,7 +8790,7 @@
other
-
+
@@ -8799,7 +8799,7 @@
other
-
+
@@ -8808,7 +8808,7 @@
other
-
+
@@ -8817,7 +8817,7 @@
other
-
+
@@ -8826,7 +8826,7 @@
other
-
+
@@ -8835,7 +8835,7 @@
other
-
+
@@ -8844,7 +8844,7 @@
other
-
+
@@ -8853,7 +8853,7 @@
other
-
+
@@ -8862,7 +8862,7 @@
other
-
+
@@ -8871,7 +8871,7 @@
other
-
+
@@ -8880,7 +8880,7 @@
other
-
+
@@ -8889,7 +8889,7 @@
other
-
+
@@ -8898,7 +8898,7 @@
other
-
+
@@ -8907,7 +8907,7 @@
other
-
+
@@ -8916,7 +8916,7 @@
other
-
+
@@ -8925,7 +8925,7 @@
other
-
+
@@ -8934,7 +8934,7 @@
other
-
+
@@ -8943,7 +8943,7 @@
other
-
+
@@ -8952,7 +8952,7 @@
other
-
+
@@ -8961,7 +8961,7 @@
other
-
+
@@ -8970,7 +8970,7 @@
other
-
+
@@ -8979,7 +8979,7 @@
other
-
+
@@ -8988,7 +8988,7 @@
other
-
+
@@ -8997,7 +8997,7 @@
other
-
+
@@ -9006,7 +9006,7 @@
other
-
+
@@ -9015,7 +9015,7 @@
other
-
+
@@ -9024,7 +9024,7 @@
other
-
+
@@ -9033,7 +9033,7 @@
other
-
+
@@ -9042,7 +9042,7 @@
other
-
+
@@ -9051,7 +9051,7 @@
other
-
+
@@ -9060,7 +9060,7 @@
other
-
+
@@ -9069,7 +9069,7 @@
other
-
+
@@ -9078,7 +9078,7 @@
other
-
+
@@ -9087,7 +9087,7 @@
other
-
+
@@ -9096,7 +9096,7 @@
other
-
+
@@ -9105,7 +9105,7 @@
other
-
+
@@ -9114,7 +9114,7 @@
other
-
+
@@ -9123,7 +9123,7 @@
other
-
+
@@ -9132,7 +9132,7 @@
other
-
+
@@ -9141,7 +9141,7 @@
other
-
+
@@ -9150,7 +9150,7 @@
other
-
+
@@ -9159,7 +9159,7 @@
other
-
+
@@ -9168,7 +9168,7 @@
other
-
+
@@ -9177,7 +9177,7 @@
other
-
+
@@ -9186,7 +9186,7 @@
other
-
+
@@ -9195,7 +9195,7 @@
other
-
+
@@ -9204,7 +9204,7 @@
other
-
+
@@ -9213,7 +9213,7 @@
other
-
+
@@ -9222,7 +9222,7 @@
other
-
+
@@ -9231,7 +9231,7 @@
other
-
+
@@ -9256,7 +9256,7 @@
other
-
+
@@ -9281,7 +9281,7 @@
other
-
+
@@ -9290,7 +9290,7 @@
other
-
+
@@ -9299,7 +9299,7 @@
other
-
+
@@ -9308,7 +9308,7 @@
other
-
+
@@ -9317,7 +9317,7 @@
other
-
+
@@ -9326,7 +9326,7 @@
other
-
+
@@ -9335,7 +9335,7 @@
other
-
+
@@ -9344,7 +9344,7 @@
other
-
+
@@ -9353,7 +9353,7 @@
other
-
+
@@ -9362,7 +9362,7 @@
other
-
+
@@ -9371,7 +9371,7 @@
other
-
+
@@ -9380,7 +9380,7 @@
other
-
+
@@ -9389,7 +9389,7 @@
other
-
+
@@ -9398,7 +9398,7 @@
other
-
+
@@ -9407,7 +9407,7 @@
other
-
+
@@ -9416,7 +9416,7 @@
other
-
+
@@ -9425,7 +9425,7 @@
other
-
+
@@ -9434,7 +9434,7 @@
other
-
+
@@ -9443,7 +9443,7 @@
other
-
+
@@ -9452,7 +9452,7 @@
other
-
+
@@ -9461,7 +9461,7 @@
other
-
+
@@ -9470,7 +9470,7 @@
other
-
+
@@ -9479,7 +9479,7 @@
other
-
+
@@ -9488,7 +9488,7 @@
other
-
+
@@ -9497,7 +9497,7 @@
other
-
+
@@ -9506,7 +9506,7 @@
other
-
+
@@ -9515,7 +9515,7 @@
other
-
+
@@ -9524,7 +9524,7 @@
other
-
+
@@ -9533,7 +9533,7 @@
other
-
+
@@ -9542,7 +9542,7 @@
other
-
+
@@ -9551,7 +9551,7 @@
other
-
+
@@ -9560,7 +9560,7 @@
other
-
+
@@ -9569,7 +9569,7 @@
other
-
+
@@ -9578,7 +9578,7 @@
other
-
+
@@ -9587,7 +9587,7 @@
other
-
+
@@ -9596,7 +9596,7 @@
other
-
+
@@ -9605,7 +9605,7 @@
other
-
+
@@ -9614,7 +9614,7 @@
other
-
+
@@ -9623,7 +9623,7 @@
other
-
+
@@ -9632,7 +9632,7 @@
other
-
+
@@ -9641,7 +9641,7 @@
other
-
+
@@ -9650,7 +9650,7 @@
other
-
+
@@ -9659,7 +9659,7 @@
other
-
+
@@ -9668,7 +9668,7 @@
other
-
+
@@ -9677,7 +9677,7 @@
other
-
+
@@ -9686,7 +9686,7 @@
other
-
+
@@ -9695,7 +9695,7 @@
other
-
+
@@ -9704,7 +9704,7 @@
other
-
+
@@ -9713,7 +9713,7 @@
other
-
+
@@ -9722,7 +9722,7 @@
other
-
+
@@ -9731,7 +9731,7 @@
other
-
+
@@ -9740,7 +9740,7 @@
other
-
+
@@ -9749,7 +9749,7 @@
other
-
+
@@ -9758,7 +9758,7 @@
other
-
+
@@ -9767,7 +9767,7 @@
other
-
+
@@ -9776,7 +9776,7 @@
other
-
+
@@ -9785,7 +9785,7 @@
other
-
+
@@ -9794,7 +9794,7 @@
other
-
+
@@ -9803,7 +9803,7 @@
other
-
+
@@ -9812,7 +9812,7 @@
other
-
+
@@ -9837,7 +9837,7 @@
other
-
+
@@ -9862,7 +9862,7 @@
other
-
+
@@ -9871,7 +9871,7 @@
other
-
+
@@ -9880,7 +9880,7 @@
other
-
+
@@ -9889,7 +9889,7 @@
other
-
+
@@ -9898,7 +9898,7 @@
other
-
+
@@ -9907,7 +9907,7 @@
other
-
+
@@ -9916,7 +9916,7 @@
other
-
+
@@ -9925,7 +9925,7 @@
other
-
+
@@ -9934,7 +9934,7 @@
other
-
+
@@ -9943,7 +9943,7 @@
other
-
+
@@ -9952,7 +9952,7 @@
other
-
+
@@ -9961,7 +9961,7 @@
other
-
+
@@ -9970,7 +9970,7 @@
other
-
+
@@ -9979,7 +9979,7 @@
other
-
+
@@ -9988,7 +9988,7 @@
other
-
+
@@ -9997,7 +9997,7 @@
other
-
+
@@ -10022,7 +10022,7 @@
other
-
+
@@ -10031,7 +10031,7 @@
other
-
+
@@ -10040,7 +10040,7 @@
other
-
+
@@ -10049,7 +10049,7 @@
other
-
+
@@ -10058,7 +10058,7 @@
other
-
+
@@ -10067,7 +10067,7 @@
other
-
+
@@ -10076,7 +10076,7 @@
other
-
+
@@ -10085,7 +10085,7 @@
other
-
+
@@ -10094,7 +10094,7 @@
other
-
+
@@ -10103,7 +10103,7 @@
other
-
+
@@ -10112,7 +10112,7 @@
other
-
+
@@ -10121,7 +10121,7 @@
other
-
+
@@ -10130,7 +10130,7 @@
other
-
+
@@ -10139,7 +10139,7 @@
other
-
+
@@ -10148,7 +10148,7 @@
other
-
+
@@ -10157,7 +10157,7 @@
other
-
+
@@ -10166,7 +10166,7 @@
other
-
+
@@ -10183,7 +10183,7 @@
view
-
+
@@ -10192,7 +10192,7 @@
other
-
+
@@ -10201,7 +10201,7 @@
other
-
+
@@ -10210,7 +10210,7 @@
other
-
+
@@ -10219,7 +10219,7 @@
other
-
+
@@ -10228,7 +10228,7 @@
other
-
+
@@ -10237,7 +10237,7 @@
other
-
+
@@ -10246,7 +10246,7 @@
other
-
+
@@ -10255,7 +10255,7 @@
other
-
+
@@ -10264,7 +10264,7 @@
other
-
+
@@ -10273,7 +10273,7 @@
other
-
+
@@ -10298,7 +10298,7 @@
other
-
+
@@ -10307,7 +10307,7 @@
other
-
+
@@ -10316,7 +10316,7 @@
other
-
+
@@ -10325,7 +10325,7 @@
other
-
+
@@ -10334,7 +10334,7 @@
other
-
+
@@ -10343,7 +10343,7 @@
other
-
+
@@ -10352,7 +10352,7 @@
other
-
+
@@ -10361,7 +10361,7 @@
other
-
+
@@ -10370,7 +10370,7 @@
other
-
+
@@ -10379,7 +10379,7 @@
other
-
+
@@ -10388,7 +10388,7 @@
other
-
+
@@ -10397,7 +10397,7 @@
other
-
+
@@ -10406,7 +10406,7 @@
other
-
+
@@ -10415,7 +10415,7 @@
other
-
+
@@ -10424,7 +10424,7 @@
other
-
+
@@ -10433,7 +10433,7 @@
other
-
+
@@ -10442,7 +10442,7 @@
other
-
+
@@ -10451,7 +10451,7 @@
other
-
+
@@ -10460,7 +10460,7 @@
other
-
+
@@ -10469,7 +10469,7 @@
other
-
+
@@ -10494,7 +10494,7 @@
other
-
+
@@ -10503,7 +10503,7 @@
other
-
+
@@ -10512,7 +10512,7 @@
other
-
+
@@ -10521,7 +10521,7 @@
other
-
+
@@ -10530,7 +10530,7 @@
other
-
+
@@ -10539,7 +10539,7 @@
other
-
+
@@ -10548,7 +10548,7 @@
other
-
+
@@ -10557,7 +10557,7 @@
other
-
+
@@ -10582,7 +10582,7 @@
other
-
+
@@ -10591,7 +10591,7 @@
other
-
+
@@ -10600,7 +10600,7 @@
other
-
+
@@ -10609,7 +10609,7 @@
other
-
+
@@ -10618,7 +10618,7 @@
other
-
+
@@ -10627,7 +10627,7 @@
other
-
+
@@ -10636,7 +10636,7 @@
other
-
+
@@ -10645,7 +10645,7 @@
other
-
+
@@ -10654,7 +10654,7 @@
other
-
+
@@ -10663,7 +10663,7 @@
other
-
+
@@ -10672,7 +10672,7 @@
other
-
+
@@ -10681,7 +10681,7 @@
other
-
+
@@ -10690,7 +10690,7 @@
other
-
+
@@ -10699,7 +10699,7 @@
other
-
+
@@ -10708,7 +10708,7 @@
other
-
+
@@ -10717,7 +10717,7 @@
other
-
+
@@ -10726,7 +10726,7 @@
other
-
+
@@ -10735,7 +10735,7 @@
other
-
+
@@ -10744,7 +10744,7 @@
other
-
+
@@ -10753,7 +10753,7 @@
other
-
+
@@ -10762,7 +10762,7 @@
other
-
+
@@ -10771,7 +10771,7 @@
other
-
+
@@ -10780,7 +10780,7 @@
other
-
+
@@ -10789,7 +10789,7 @@
other
-
+
@@ -10798,7 +10798,7 @@
other
-
+
@@ -10807,7 +10807,7 @@
other
-
+
@@ -10816,7 +10816,7 @@
other
-
+
@@ -10825,7 +10825,7 @@
other
-
+
@@ -10834,7 +10834,7 @@
other
-
+
@@ -10843,7 +10843,7 @@
other
-
+
@@ -10852,7 +10852,7 @@
other
-
+
@@ -10861,7 +10861,7 @@
other
-
+
@@ -10870,7 +10870,7 @@
other
-
+
@@ -10879,7 +10879,7 @@
other
-
+
@@ -10888,7 +10888,7 @@
other
-
+
@@ -10897,7 +10897,7 @@
other
-
+
@@ -10906,7 +10906,7 @@
other
-
+
@@ -10915,7 +10915,7 @@
other
-
+
@@ -10924,7 +10924,7 @@
other
-
+
@@ -10933,7 +10933,7 @@
other
-
+
@@ -10942,7 +10942,7 @@
other
-
+
@@ -10951,7 +10951,7 @@
other
-
+
@@ -10960,7 +10960,7 @@
other
-
+
@@ -10969,7 +10969,7 @@
other
-
+
@@ -10978,7 +10978,7 @@
other
-
+
@@ -10987,7 +10987,7 @@
other
-
+
@@ -10996,7 +10996,7 @@
other
-
+
@@ -11005,7 +11005,7 @@
other
-
+
@@ -11014,7 +11014,7 @@
other
-
+
@@ -11023,7 +11023,7 @@
other
-
+
@@ -11032,7 +11032,7 @@
other
-
+
@@ -11041,7 +11041,7 @@
other
-
+
@@ -11050,7 +11050,7 @@
other
-
+
@@ -11059,7 +11059,7 @@
other
-
+
@@ -11068,7 +11068,7 @@
other
-
+
@@ -11077,7 +11077,7 @@
other
-
+
@@ -11086,7 +11086,7 @@
other
-
+
@@ -11095,7 +11095,7 @@
other
-
+
@@ -11104,7 +11104,7 @@
other
-
+
@@ -11113,7 +11113,7 @@
other
-
+
@@ -11122,7 +11122,7 @@
other
-
+
@@ -11131,7 +11131,7 @@
other
-
+
@@ -11140,7 +11140,7 @@
other
-
+
@@ -11149,7 +11149,7 @@
other
-
+
@@ -11158,7 +11158,7 @@
other
-
+
@@ -11167,7 +11167,7 @@
other
-
+
@@ -11176,7 +11176,7 @@
other
-
+
@@ -11185,7 +11185,7 @@
other
-
+
@@ -11194,7 +11194,7 @@
other
-
+
@@ -11203,7 +11203,7 @@
other
-
+
@@ -11212,7 +11212,7 @@
other
-
+
@@ -11221,7 +11221,7 @@
other
-
+
@@ -11230,7 +11230,7 @@
other
-
+
@@ -11239,7 +11239,7 @@
other
-
+
@@ -11248,7 +11248,7 @@
other
-
+
@@ -11257,7 +11257,7 @@
other
-
+
@@ -11266,7 +11266,7 @@
other
-
+
@@ -11275,7 +11275,7 @@
other
-
+
@@ -11284,7 +11284,7 @@
other
-
+
@@ -11293,7 +11293,7 @@
other
-
+
@@ -11302,7 +11302,7 @@
other
-
+
@@ -11311,7 +11311,7 @@
other
-
+
@@ -11320,7 +11320,7 @@
other
-
+
@@ -11329,7 +11329,7 @@
other
-
+
@@ -11338,7 +11338,7 @@
other
-
+
@@ -11347,7 +11347,7 @@
other
-
+
@@ -11356,7 +11356,7 @@
other
-
+
@@ -11365,7 +11365,7 @@
other
-
+
@@ -11374,7 +11374,7 @@
other
-
+
@@ -11383,7 +11383,7 @@
other
-
+
@@ -11392,7 +11392,7 @@
other
-
+
@@ -11401,7 +11401,7 @@
other
-
+
@@ -11410,7 +11410,7 @@
other
-
+
@@ -11419,7 +11419,7 @@
other
-
+
@@ -11428,7 +11428,7 @@
other
-
+
@@ -11437,7 +11437,7 @@
other
-
+
@@ -11446,7 +11446,7 @@
other
-
+
@@ -11455,7 +11455,7 @@
other
-
+
@@ -11464,7 +11464,7 @@
other
-
+
@@ -11473,7 +11473,7 @@
other
-
+
@@ -11482,7 +11482,7 @@
other
-
+
@@ -11491,7 +11491,7 @@
other
-
+
@@ -11500,7 +11500,7 @@
other
-
+
@@ -11509,7 +11509,7 @@
other
-
+
@@ -11518,7 +11518,7 @@
other
-
+
@@ -11527,7 +11527,7 @@
other
-
+
@@ -11536,7 +11536,7 @@
other
-
+
@@ -11545,7 +11545,7 @@
other
-
+
@@ -11554,7 +11554,7 @@
other
-
+
@@ -11563,7 +11563,7 @@
other
-
+
@@ -11572,7 +11572,7 @@
other
-
+
@@ -11581,7 +11581,7 @@
other
-
+
@@ -11590,7 +11590,7 @@
other
-
+
@@ -11599,7 +11599,7 @@
other
-
+
@@ -11608,7 +11608,7 @@
other
-
+
@@ -11617,7 +11617,7 @@
other
-
+
@@ -11626,7 +11626,7 @@
other
-
+
@@ -11635,7 +11635,7 @@
other
-
+
@@ -11644,7 +11644,7 @@
other
-
+
@@ -11653,7 +11653,7 @@
other
-
+
@@ -11662,7 +11662,7 @@
other
-
+
@@ -11671,7 +11671,7 @@
other
-
+
@@ -11680,7 +11680,7 @@
other
-
+
@@ -11689,7 +11689,7 @@
other
-
+
@@ -11698,7 +11698,7 @@
other
-
+
@@ -11707,7 +11707,7 @@
other
-
+
@@ -11716,7 +11716,7 @@
other
-
+
@@ -11725,7 +11725,7 @@
other
-
+
@@ -11734,7 +11734,7 @@
other
-
+
@@ -11743,7 +11743,7 @@
other
-
+
@@ -11752,7 +11752,7 @@
other
-
+
@@ -11761,7 +11761,7 @@
other
-
+
@@ -11770,7 +11770,7 @@
other
-
+
@@ -11779,7 +11779,7 @@
other
-
+
@@ -11788,7 +11788,7 @@
other
-
+
@@ -11797,7 +11797,7 @@
other
-
+
@@ -11806,7 +11806,7 @@
other
-
+
@@ -11815,7 +11815,7 @@
other
-
+
@@ -11824,7 +11824,7 @@
other
-
+
@@ -11833,7 +11833,7 @@
other
-
+
@@ -11842,7 +11842,7 @@
other
-
+
@@ -11851,7 +11851,7 @@
other
-
+
@@ -11860,7 +11860,7 @@
other
-
+
@@ -11869,7 +11869,7 @@
other
-
+
@@ -11878,7 +11878,7 @@
other
-
+
@@ -11887,7 +11887,7 @@
other
-
+
@@ -11896,7 +11896,7 @@
other
-
+
@@ -11905,7 +11905,7 @@
other
-
+
@@ -11914,7 +11914,7 @@
other
-
+
@@ -11923,7 +11923,7 @@
other
-
+
@@ -11932,7 +11932,7 @@
other
-
+
@@ -11941,7 +11941,7 @@
other
-
+
@@ -11950,7 +11950,7 @@
other
-
+
@@ -11959,7 +11959,7 @@
other
-
+
@@ -11968,7 +11968,7 @@
other
-
+
@@ -11977,7 +11977,7 @@
other
-
+
@@ -11986,7 +11986,7 @@
other
-
+
@@ -11995,7 +11995,7 @@
other
-
+
@@ -12004,7 +12004,7 @@
other
-
+
@@ -12013,7 +12013,7 @@
other
-
+
@@ -12038,7 +12038,7 @@
other
-
+
@@ -12047,7 +12047,7 @@
other
-
+
@@ -12056,7 +12056,7 @@
other
-
+
@@ -12065,7 +12065,7 @@
other
-
+
@@ -12074,7 +12074,7 @@
other
-
+
@@ -12083,7 +12083,7 @@
other
-
+
@@ -12092,7 +12092,7 @@
other
-
+
@@ -12101,7 +12101,7 @@
other
-
+
@@ -12110,7 +12110,7 @@
other
-
+
@@ -12119,7 +12119,7 @@
other
-
+
@@ -12128,7 +12128,7 @@
other
-
+
@@ -12137,7 +12137,7 @@
other
-
+
@@ -12162,7 +12162,7 @@
other
-
+
@@ -12171,7 +12171,7 @@
other
-
+
@@ -12180,7 +12180,7 @@
other
-
+
@@ -12189,7 +12189,7 @@
other
-
+
@@ -12214,7 +12214,7 @@
other
-
+
@@ -12223,7 +12223,7 @@
other
-
+
@@ -12232,7 +12232,7 @@
other
-
+
@@ -12241,7 +12241,7 @@
other
-
+
@@ -12250,7 +12250,7 @@
other
-
+
@@ -12259,7 +12259,7 @@
other
-
+
@@ -12284,7 +12284,7 @@
other
-
+
@@ -12293,7 +12293,7 @@
other
-
+
@@ -12302,7 +12302,7 @@
other
-
+
@@ -12311,7 +12311,7 @@
other
-
+
@@ -12336,7 +12336,7 @@
other
-
+
@@ -12345,7 +12345,7 @@
other
-
+
@@ -12354,7 +12354,7 @@
other
-
+
@@ -12363,7 +12363,7 @@
other
-
+
@@ -12372,7 +12372,7 @@
other
-
+
@@ -12381,7 +12381,7 @@
other
-
+
@@ -12390,7 +12390,7 @@
other
-
+
@@ -12399,7 +12399,7 @@
other
-
+
@@ -12408,7 +12408,7 @@
other
-
+
@@ -12417,7 +12417,7 @@
other
-
+
@@ -12426,7 +12426,7 @@
other
-
+
@@ -12435,7 +12435,7 @@
other
-
+
@@ -12444,7 +12444,7 @@
other
-
+
@@ -12469,7 +12469,7 @@
other
-
+
@@ -12486,7 +12486,7 @@
other
-
+
@@ -12495,7 +12495,7 @@
other
-
+
@@ -12520,7 +12520,7 @@
other
-
+
@@ -12529,7 +12529,7 @@
other
-
+
@@ -12538,7 +12538,7 @@
other
-
+
@@ -12547,7 +12547,7 @@
other
-
+
@@ -12556,7 +12556,7 @@
other
-
+
@@ -12565,7 +12565,7 @@
other
-
+
@@ -12574,7 +12574,7 @@
other
-
+
@@ -12583,7 +12583,7 @@
other
-
+
@@ -12608,7 +12608,7 @@
other
-
+
@@ -12617,7 +12617,7 @@
other
-
+
@@ -12626,7 +12626,7 @@
other
-
+
@@ -12635,7 +12635,7 @@
other
-
+
@@ -12644,7 +12644,7 @@
other
-
+
@@ -12653,7 +12653,7 @@
other
-
+
@@ -12662,7 +12662,7 @@
other
-
+
@@ -12671,7 +12671,7 @@
other
-
+
@@ -12680,7 +12680,7 @@
other
-
+
@@ -12689,7 +12689,7 @@
other
-
+
@@ -12698,7 +12698,7 @@
other
-
+
@@ -12707,7 +12707,7 @@
other
-
+
@@ -12716,7 +12716,7 @@
other
-
+
@@ -12725,7 +12725,7 @@
other
-
+
@@ -12734,7 +12734,7 @@
other
-
+
@@ -12743,7 +12743,7 @@
other
-
+
@@ -12752,7 +12752,7 @@
other
-
+
@@ -12761,7 +12761,7 @@
other
-
+
@@ -12770,7 +12770,7 @@
other
-
+
@@ -12779,7 +12779,7 @@
other
-
+
@@ -12788,7 +12788,7 @@
other
-
+
@@ -12797,7 +12797,7 @@
other
-
+
@@ -12822,7 +12822,7 @@
other
-
+
@@ -12839,7 +12839,7 @@
other
-
+
@@ -12848,7 +12848,7 @@
other
-
+
@@ -12857,7 +12857,7 @@
other
-
+
@@ -12882,7 +12882,7 @@
other
-
+
@@ -12891,7 +12891,7 @@
other
-
+
@@ -12900,7 +12900,7 @@
other
-
+
@@ -12925,7 +12925,7 @@
other
-
+
@@ -12934,7 +12934,7 @@
other
-
+
@@ -12943,7 +12943,7 @@
other
-
+
@@ -12968,7 +12968,7 @@
other
-
+
@@ -12977,7 +12977,7 @@
other
-
+
@@ -12986,7 +12986,7 @@
other
-
+
@@ -12995,7 +12995,7 @@
other
-
+
@@ -13004,7 +13004,7 @@
other
-
+
@@ -13013,7 +13013,7 @@
other
-
+
@@ -13022,7 +13022,7 @@
other
-
+
@@ -13031,7 +13031,7 @@
other
-
+
@@ -13040,7 +13040,7 @@
other
-
+
@@ -13049,7 +13049,7 @@
other
-
+
@@ -13058,7 +13058,7 @@
other
-
+
@@ -13067,7 +13067,7 @@
other
-
+
@@ -13076,7 +13076,7 @@
other
-
+
@@ -13085,7 +13085,7 @@
other
-
+
@@ -13094,7 +13094,7 @@
other
-
+
@@ -13103,7 +13103,7 @@
other
-
+
@@ -13112,7 +13112,7 @@
other
-
+
@@ -13121,7 +13121,7 @@
other
-
+
@@ -13146,7 +13146,7 @@
other
-
+
@@ -13155,7 +13155,7 @@
other
-
+
@@ -13164,7 +13164,7 @@
other
-
+
@@ -13173,7 +13173,7 @@
other
-
+
@@ -13182,7 +13182,7 @@
other
-
+
@@ -13191,7 +13191,7 @@
other
-
+
@@ -13200,7 +13200,7 @@
other
-
+
@@ -13209,7 +13209,7 @@
other
-
+
@@ -13226,7 +13226,7 @@
other
-
+
@@ -13243,7 +13243,7 @@
other
-
+
@@ -13260,7 +13260,7 @@
other
-
+
@@ -13285,7 +13285,7 @@
other
-
+
@@ -13302,7 +13302,7 @@
other
-
+
@@ -13319,7 +13319,7 @@
other
-
+
@@ -13336,7 +13336,7 @@
other
-
+
@@ -13353,7 +13353,7 @@
other
-
+
@@ -13370,7 +13370,7 @@
other
-
+
@@ -13395,7 +13395,7 @@
other
-
+
@@ -13412,7 +13412,7 @@
other
-
+
@@ -13429,7 +13429,7 @@
other
-
+
@@ -13446,7 +13446,7 @@
other
-
+
@@ -13463,7 +13463,7 @@
other
-
+
@@ -13480,7 +13480,7 @@
other
-
+
@@ -13497,7 +13497,7 @@
other
-
+
@@ -13514,7 +13514,7 @@
other
-
+
diff --git a/addons/l10n_de/account_types_skr03.xml b/addons/l10n_de/account_types_skr03.xml
index 5967999b601..c65cba38333 100644
--- a/addons/l10n_de/account_types_skr03.xml
+++ b/addons/l10n_de/account_types_skr03.xml
@@ -15,14 +15,14 @@
none
-
+
Erfolgskonten - Aufwendungen
expense
expense
none
-
+
Bilanzkonten - Aktiva - Vermögenskonten
balance asset
asset
diff --git a/addons/l10n_de/account_types_skr04.xml b/addons/l10n_de/account_types_skr04.xml
index 5967999b601..c65cba38333 100644
--- a/addons/l10n_de/account_types_skr04.xml
+++ b/addons/l10n_de/account_types_skr04.xml
@@ -15,14 +15,14 @@
none
-
+
Erfolgskonten - Aufwendungen
expense
expense
none
-
+
Bilanzkonten - Aktiva - Vermögenskonten
balance asset
asset
From 7d81001ae4b9758d8e875ef1a3d847549c17d5b4 Mon Sep 17 00:00:00 2001
From: "Ujjvala Collins (OpenERP)"
Date: Tue, 13 Dec 2011 18:52:47 +0530
Subject: [PATCH 062/135] [REM] account: Removed usused files.
bzr revid: uco@tinyerp.com-20111213132247-2w2wld4l1scio50i
---
addons/account/report/__init__.py | 1 -
.../report/account_balance_landscape.py | 393 ------------------
.../report/account_balance_landscape.rml | 317 --------------
.../account_balance_landscape_old_backup.rml | 182 --------
.../report/account_balance_old_backup.rml | 179 --------
5 files changed, 1072 deletions(-)
delete mode 100644 addons/account/report/account_balance_landscape.py
delete mode 100644 addons/account/report/account_balance_landscape.rml
delete mode 100644 addons/account/report/account_balance_landscape_old_backup.rml
delete mode 100644 addons/account/report/account_balance_old_backup.rml
diff --git a/addons/account/report/__init__.py b/addons/account/report/__init__.py
index 78d369f79a8..70ceb4b8f83 100644
--- a/addons/account/report/__init__.py
+++ b/addons/account/report/__init__.py
@@ -33,7 +33,6 @@ import account_print_overdue
import account_aged_partner_balance
#import tax_report
import account_tax_report
-#import account_balance_landscape
import account_invoice_report
import account_report
import account_entries_report
diff --git a/addons/account/report/account_balance_landscape.py b/addons/account/report/account_balance_landscape.py
deleted file mode 100644
index 4e62a9777c9..00000000000
--- a/addons/account/report/account_balance_landscape.py
+++ /dev/null
@@ -1,393 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import time
-import locale
-from report import report_sxw
-
-parents = {
- 'tr':1,
- 'li':1,
- 'story': 0,
- 'section': 0
-}
-
-class account_balance_landscape(report_sxw.rml_parse):
- def __init__(self, cr, uid, name, context):
- super(account_balance_landscape, self).__init__(cr, uid, name, context=context)
- self.flag=1
- self.dr_total= 0.00
- self.cr_total= 0.00
- self.parent_bal=0
- self.status=0
- self.done_total=0
- self.baldiv={}
- self.empty_parent=0
- self.result_total = {}
- self.total_for_perc=[]
- self.localcontext.update({
- 'time': time,
- 'lines': self.lines,
- 'get_lines':self.get_lines,
- 'linesForTotal': self.linesForTotal,
- 'linesForYear': self.linesForYear,
- 'get_years':self.get_years,
- 'cal_total':self.cal_total,
- 'total_dr':self.total_dr,
- 'total_cr':self.total_cr
- })
- self.context = context
-
- def linesForYear(self,form):
- temp=0
- years={}
-
- global pattern
- global show
- global perc
- global bal_zero
- global ref_bal
-
- pattern=form['compare_pattern']
-
- if form['show_columns']!=1:
- show=0
- else:
- show=form['show_columns']
-
- if form['format_perc']!=1:
- perc=0
- else:
- perc=form['format_perc']
-
- if form['account_choice']=='bal_zero':
- bal_zero=0
- else:
- bal_zero=1
-
- ctx = self.context.copy()
-
- if perc==1:
- if form['select_account']!=False:
- ref_ac=self.pool.get('account.account').browse(self.cr, self.uid, form['select_account'], ctx.copy())
- if ref_ac.balance<>0.00:
- ref_bal=ref_ac.balance
- else:
- ref_bal=1.00
- else:
- ref_bal='nothing'
- else:
- ref_bal='nothing'
-
-
- self.done_total=1
- self.total_for_perc=self.linesForTotal(form, ids={}, doneAccount={}, level=1)
- self.done_total=0
-
- for t1 in range(0,len(form['fiscalyear'])):
- locale.setlocale(locale.LC_ALL, '')
- self.result_total["sum_credit" + str(t1)]=locale.format("%.2f", self.result_total["sum_credit" + str(t1)], grouping=True)
- self.result_total["sum_debit" + str(t1)]=locale.format("%.2f", self.result_total["sum_debit" + str(t1)], grouping=True)
-
- for temp in range(0,len(form['fiscalyear'])):
- fy=self.pool.get('account.fiscalyear').name_get(self.cr, self.uid, form['fiscalyear'][temp])
- years["year"+str(temp)]=fy[0][1][12:16]
-
- return [years]
-
-
- def linesForTotal(self, form, ids={}, doneAccount={}, level=1):
- if not self.done_total==1:
- return [self.result_total]
- accounts=[]
- if not ids:
- ids = self.ids
- if not ids:
- return []
-
- ctx = self.context.copy()
-
- for id in form['fiscalyear']:
- tmp=[]
-
- ctx['fiscalyear'] = id
- ctx['periods'] = form['periods']
- ctx['period_manner'] = form['period_manner']
- ctx['state'] = form['context'].get('state','all')
- tmp = self.pool.get('account.account').browse(self.cr, self.uid, ids, ctx.copy())
-
- if tmp:
- accounts.append(tmp)
-
- merged_accounts=zip(*accounts)
- # used to check for the frst record so all sum_credit and sum_debit r set to 0.00
- if level==1:
- doneAccount={}
- for entry in merged_accounts:
-
- if entry[0].id in doneAccount:
- continue
- doneAccount[entry[0].id] = 1
-
- for k in range(0,len(entry)):
- temp_credit=0.00
- temp_debit=0.00
- if entry[0].type <> 'view':
- temp_credit+=entry[k].credit
- temp_debit+=entry[k].debit
-
- if self.flag==1:
- self.result_total["sum_credit" + str(k)]=0.00
- self.result_total["sum_debit" + str(k)]=0.00
-
- if form['account_choice']=='bal_zero':
- if temp_credit<>temp_debit:
- self.result_total["sum_credit" + str(k)]+=temp_credit
- self.result_total["sum_debit" + str(k)]+=temp_debit
- else:
- self.result_total["sum_credit" + str(k)]+=temp_credit
- self.result_total["sum_debit" + str(k)]+=temp_debit
-
- self.flag=2
-
- if entry[0].child_id:
- ids2 = [(x.code,x.id) for x in entry[0].child_id]
- ids2.sort()
-
- result_total_parent = self.linesForTotal(form, [x[1] for x in ids2], doneAccount, level+1)
-
- return [self.result_total]
-
- def lines(self, form, ids={}, done={}, level=1):
- accounts=[]
- if not ids:
- ids = self.ids
- if not ids:
- return []
- result = []
- ctx = self.context.copy()
- tmp1=[]
- for id in form['fiscalyear']:
-
- ctx['fiscalyear'] = id
- ctx['periods'] = form['periods']
- ctx['period_manner']=form['period_manner']
- ctx['state'] = form['context'].get('state','all')
- tmp1 = self.pool.get('account.account').browse(self.cr, self.uid, ids, ctx.copy())
-
- if tmp1:
- accounts.append(tmp1)
-
- if level==1: #if parent is called,done is not empty when called again.
- done={}
-
- def cmp_code(x, y):
- return cmp(x.code, y.code)
- for n in range(0,len(accounts)):
- accounts[n].sort(cmp_code)
- merged_accounts=zip(*accounts)
-
- for entry in merged_accounts:
- j=0
- checked=1
-
- if form['account_choice']!='all': # if checked,include empty a/c;not otherwise
- checked=0
-
- if entry[0].id in done:
- continue
- done[entry[0].id] = 1
-
- if entry[0].child_id: # this is for parent account,dont check 0 for it
- checked=4
- self.status=1 # for displaying it Bold
- else:
- self.status=0
- if checked==0:
- i=0
- for i in range(0,len(entry)):
- if bal_zero==0:
- if entry[i].balance<>0.0:
- checked=4
- break
- else:
- checked=3
- i=i+1
- else:
- if entry[i].credit <> 0.0 or entry[i].debit <> 0.0:
- checked=4
- break
- else:
- checked=3
- i=i+1
-
- if checked==3:
- # this is the point where we skip those accounts which are encountered as empty ones
- continue
- self.empty_parent=0
- else:
- self.empty_parent=1
- res = {
- 'code': entry[0].code,
- 'name': entry[0].name,
- 'level': level,
- 'status': self.status,
- }
-
- for j in range(0,len(entry)):
-
- locale.setlocale(locale.LC_ALL, '')
- res["debit"+str(j)]=locale.format("%.2f", entry[j].debit, grouping=True)
- res["credit"+str(j)]=locale.format("%.2f", entry[j].credit, grouping=True)
- res["balance"+str(j)]=locale.format("%.2f", entry[j].balance, grouping=True)
-
-
- if j==0:
- res["bal_cash"+str(j)]="0.00"
- res["bal_perc"+str(j)]="0.00%"
- else:
- temp_cash=entry[j].balance - entry[j-1].balance
- res["bal_cash"+str(j)]=locale.format("%.2f", temp_cash, grouping=True)
- if entry[j-1].balance<>0.00:
- temp_perc=(entry[j].balance - entry[j-1].balance )*100/entry[j-1].balance
- else:
- temp_perc=(entry[j].balance) *100
-
- res["bal_perc"+str(j)]=locale.format("%.2f", temp_perc) + "%"
-
-
- if ref_bal=='nothing':
- if level==1:
- self.parent_bal=1
- else:
- self.parent_bal=0
-
- if self.parent_bal==1:
- res["balance_perc"+str(j)]="/"
- else:
- if entry[j].balance==0.00:
- if self.baldiv["baldiv"+str(level-1)+str(j)]<>0.00:
- res["balance_perc"+str(j)]="0.00%"
- else:
- res["balance_perc"+str(j)]="/"
- else:
- if self.baldiv["baldiv"+str(level-1)+str(j)]<>0.00:
- temp=self.baldiv["baldiv"+str(level-1)+str(j)]
- temp1=(entry[j].balance * 100 )/ float(temp)
- temp1=round(temp1,2)
- res["balance_perc" + str(j)]=str(temp1)+"%"
- else:
- res["balance_perc"+str(j)]="/"
- else:
- res["balance_perc"+str(j)]=str( (entry[j].balance * 100 )/ float(ref_bal)) + "%"
-
- result.append(res)
-
- if entry[0].child_id:
-
- for q in range(0,len(form['fiscalyear'])):
- self.baldiv["baldiv"+str(level)+str(q)]=entry[q].balance
-
- ids2 = [(x.code,x.id) for x in entry[0].child_id]
- ids2.sort()
- dir=[]
- dir += self.lines(form, [x[1] for x in ids2], done, level+1)
- if dir==[]:
- for w in range(0,len(form['fiscalyear'])):
- if entry[w].credit <> 0.0 or entry[w].debit <> 0.0 or entry[w].balance<>0.00:
- dont_pop=1
- break
- else:
- dont_pop=0
- if dont_pop==1:
- result +=dir
- else:
- result.pop(-1) # here we pop up the parent having its children as emprty accounts
- else:
- result +=dir
-
- return result
-
- def get_years(self, form):
- result =[]
- res={}
- for temp in range(0, len(form['fiscalyear'])):
- res={}
- fy=self.pool.get('account.fiscalyear').name_get(self.cr, self.uid, form['fiscalyear'][temp])
- res['year']=fy[0][1]
- res['last_str']=temp
-
- result.append(res)
- self.linesForYear(form)
- return result
-
- def get_lines(self, year_dict, form):
- final_result = []
- res = {}
- line_l = self.lines(form)
- self.cal_total(year_dict)
- if line_l:
- for l in line_l:
- res = {}
- res['code'] = l['code']
- res['name'] = l['name']
- res['level'] = l['level']
- for k,v in l.items():
- if k.startswith('debit'+str(year_dict['last_str'])):
- res['debit'] = v
- if k.startswith('credit'+str(year_dict['last_str'])):
- res['credit'] = v
- if k.startswith('balance'+str(year_dict['last_str'])) and not k.startswith('balance_perc'+str(year_dict['last_str'])):
- res['balance'] =v
- if k.startswith('balance_perc'+str(year_dict['last_str'])) and not k.startswith('balance'+str(year_dict['last_str'])):
- res['balance_perc'] = v
- if form['compare_pattern'] == 'bal_perc':
- if k.startswith('bal_perc'+str(year_dict['last_str'])):
- res['pattern'] = v
- elif form['compare_pattern'] == 'bal_cash':
- if k.startswith('bal_cash'+str(year_dict['last_str'])):
- res['pattern'] = v
- else:
- res['pattern'] = ''
- final_result.append(res)
- return final_result
-
- def cal_total(self, year_dict):
- total_l = self.result_total
- if total_l:
- for k,v in total_l.items():
- if k.startswith('sum_debit'+str(year_dict['last_str'])):
- self.dr_total = v
- elif k.startswith('sum_credit'+str(year_dict['last_str'])):
- self.cr_total = v
- else:
- continue
- return True
-
- def total_dr(self):
- return self.dr_total
-
- def total_cr(self):
- return self.cr_total
-
-report_sxw.report_sxw('report.account.account.balance.landscape', 'account.account', 'addons/account/report/account_balance_landscape.rml', parser=account_balance_landscape, header="internal landscape")
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/account/report/account_balance_landscape.rml b/addons/account/report/account_balance_landscape.rml
deleted file mode 100644
index d8e4881bbbe..00000000000
--- a/addons/account/report/account_balance_landscape.rml
+++ /dev/null
@@ -1,317 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ repeatIn(get_years(data['form']), 'y') ]]
-
-
-
- Account Balance - [[ company.currency_id.name ]]
-
-
-
-
-
-
- Year : [[ y['year'] ]]
-
-
-
- [[ data['form']['show_columns'] and 'Code' or removeParentNode('blockTable') ]]
-
-
- Account Name
-
-
- [[ data['form']['compare_pattern']!='none' and 'C.S.Y.T.(C./P)' or removeParentNode('font') ]]
-
-
- Debit
-
-
- Credit
-
-
- Balance
-
-
-
-
-
-
-
-
-
- [[ data['form']['show_columns'] and removeParentNode('blockTable') or 'Code' ]]
-
-
- Account Name
-
-
- [[ data['form']['compare_pattern']!='none' and 'C.S.Y.T.(C./P)' or removeParentNode('font') ]]
-
-
- Balance
-
-
-
-
-
-
-
- [[ repeatIn(get_lines(y,data['form']), 'a') ]]
-
-
-
- [[ (data['form']['format_perc'] or not data['form']['show_columns']) and removeParentNode('blockTable') ]] [[ a['code'] ]]
-
-
- [['.....'*(a['level']-1) ]] [[ a['name'] ]]
-
-
- [[ a['pattern'] ]]
-
-
- [[ a['debit'] ]]
-
-
- [[ a['credit'] ]]
-
-
- [[ a['balance'] ]]
-
-
-
-
-
-
-
- [[ (not data['form']['format_perc'] or not data['form']['show_columns']) and removeParentNode('blockTable') ]] [[ a['code'] ]]
-
-
- [['.....'*(a['level']-1) ]] [[ a['name'] ]]
-
-
- [[ a['pattern'] ]]
-
-
- [[ a['debit'] ]]
-
-
- [[ a['credit'] ]]
-
-
- [[ a['balance'] ]]
-
-
- [[ a['balance_perc'] ]]
-
-
-
-
-
-
-
-
-
- [[ (data['form']['format_perc'] or data['form']['show_columns']) and removeParentNode('blockTable') ]] [[ a['code'] ]]
-
-
- [['.....'*(a['level']-1) ]] [[ a['name'] ]]
-
-
- [[ a['pattern'] ]]
-
-
- [[ a['balance'] ]]
-
-
-
-
-
-
-
-
-
- [[ (not data['form']['format_perc'] or data['form']['show_columns']) and removeParentNode('blockTable') ]] [[ a['code'] ]]
-
-
- [['.....'*(a['level']-1) ]] [[ a['name'] ]]
-
-
- [[ a['pattern'] ]]
-
-
- [[ a['balance'] ]]
-
-
- [[ a['balance_perc'] ]]
-
-
-
-
-
-
-
-
-
-
-
- [[ not data['form']['show_columns'] and removeParentNode('blockTable') ]]
-
-
- Total :
-
-
- [[ total_dr() ]]
-
-
- [[ total_cr() ]]
-
-
-
-
-
-
-
-
-
-
-
- [[ data['form']['compare_pattern']!='none' and "C.S.Y.T.(C./P) : Compare Selected Years In Terms of Cash/Perc" or removeParentNode('font') ]]
-
-
\ No newline at end of file
diff --git a/addons/account/report/account_balance_landscape_old_backup.rml b/addons/account/report/account_balance_landscape_old_backup.rml
deleted file mode 100644
index 6790082f8dd..00000000000
--- a/addons/account/report/account_balance_landscape_old_backup.rml
+++ /dev/null
@@ -1,182 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Account Balance
-
-
-
-
-
-
-
-
-
- [[ company.name ]]
-
-
-
-
-
-
-
- Currency: [[ company.currency_id.name ]]
-
-
-
-
-
-
- Printing date: [[ time.strftime('%Y-%m-%d') ]] at [[ time.strftime('%H:%M:%S') ]]
-
-
-
-
- [[repeatIn(linesForYear(data['form']),'year_header',td=len(data['form']['fiscalyear'][0][2]),width=[126],value=['year'],type=['string']) ]]
-
-
-
- Account Information
-
-
-
-
-
- [[ repeatIn([],'title',td=len(data['form']['fiscalyear'][0][2]),width=[42,42,42],value=['Debit','Credit','Balance'],type=['lable','lable','lable']) ]]
-
-
-
- Code
-
-
- Account Name
-
-
-
-
-
- [[ repeatIn([],'title',td=len(data['form']['fiscalyear'][0][2]),width=[84,42],value=['Cash','%'],type=['lable','lable']) ]]
-
-
-
-
-
-
-
-
-
-
-
-
- [[ repeatIn(lines(data['form']),'a',td=len(data['form']['fiscalyear'][0][2]),width=[42,42,42],value=['debit','credit','balance'],type=['string','string','string']) ]]
-
-
-
-
-
-
- [[ a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'})) ]][[ a['code'] ]]
-
-
- [['.....'*(a['level']-1) ]] [[ a['status']==1 and ( setTag('font','font',{'name':'Helvetica-bold'})) ]][[ a['name'] ]]
-
-
-
-
-
-
-
-
- [[ repeatIn(linesForTotal(data['form']),'total',td=len(data['form']['fiscalyear'][0][2]),width=[42,42,42],value=['sum_debit','sum_credit',''],type=['string','string','lable'] ) ]]
-
-
-
- Total:[[ data['form']['show_columns']==0 and removeParentNode('section')]]
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/account/report/account_balance_old_backup.rml b/addons/account/report/account_balance_old_backup.rml
deleted file mode 100644
index cf67cb6bc3d..00000000000
--- a/addons/account/report/account_balance_old_backup.rml
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Account balance
-
-
-
-
-
-
-
- [[ company.name ]]
-
-
-
-
-
- Currency: [[ company.currency_id.name ]]
-
-
-
-
-
-
- Printing date: [[ time.strftime('%Y-%m-%d') ]] at [[ time.strftime('%H:%M:%S') ]]
-
-
-
-
- [[repeatIn(linesForYear(data['form']),'year_header',td=len(data['form']['fiscalyear'][0][2]),width=[126],value=['year'],type=['string']) ]]
-
-
-
- Account Information
-
-
-
-
-
- [[ repeatIn([],'title',td=len(data['form']['fiscalyear'][0][2]),width=[42,42,42],value=['Debit','Credit','Balance'],type=['lable','lable','lable']) ]]
-
-
-
- Code
-
-
- Account Name
-
-
-
-
-
- [[ repeatIn([],'title',td=len(data['form']['fiscalyear'][0][2]),width=[84,42],value=['Cash','%'],type=['lable','lable']) ]]
-
-
-
-
-
-
-
-
-
-
-
-
- [[ repeatIn(lines(data['form']),'a',td=len(data['form']['fiscalyear'][0][2]),width=[42,42,42],value=['debit','credit','balance'],type=['string','string','string']) ]]
-
-
-
-
-
-
-
-
-
- [[ a['status']==1 and ( setTag('para','para',{'fontName':'Helvetica-bold'})) ]][[ a['code'] ]]
-
-
- [['.....'*(a['level']-1) ]] [[ a['status']==1 and ( setTag('font','font',{'name':'Helvetica-bold'})) ]][[ a['name'] ]]
-
-
-
-
-
-
-
-
- [[ repeatIn(linesForTotal(data['form']),'total',td=len(data['form']['fiscalyear'][0][2]),width=[42,42,42],value=['sum_debit','sum_credit',''],type=['string','string','lable'] ) ]]
-
-
-
- Total:[[ data['form']['show_columns']==0 and removeParentNode('section')]]
-
-
-
-
-
-
-
-
-
From 0941028b447165accf5c59a1a0bf3e4d305af138 Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Tue, 13 Dec 2011 14:45:34 +0100
Subject: [PATCH 063/135] [imp] added notifications when there is pending
operations
bzr revid: nicolas.vanhoren@openerp.com-20111213134534-xiyd0h096pei1k70
---
addons/point_of_sale/static/src/css/pos.css | 9 ++++++++
addons/point_of_sale/static/src/js/pos.js | 23 ++++++++++++++++++++-
addons/point_of_sale/static/src/xml/pos.xml | 8 +++++++
3 files changed, 39 insertions(+), 1 deletion(-)
diff --git a/addons/point_of_sale/static/src/css/pos.css b/addons/point_of_sale/static/src/css/pos.css
index 24eb704b7dc..2ff5fbf9dd3 100644
--- a/addons/point_of_sale/static/src/css/pos.css
+++ b/addons/point_of_sale/static/src/css/pos.css
@@ -478,3 +478,12 @@
.point-of-sale .pos-receipt-container {
font-size: 0.75em;
}
+
+.point-of-sale .oe_pos_synch-notification-button {
+ color: white;
+ border: 1px solid black;
+ border-radius: 3px;
+ padding: 2px 3px 2px 3px;
+ background-color: #D92A2A;
+}
+
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 79cba643647..423399b9c07 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -1161,6 +1161,23 @@ openerp.point_of_sale = function(db) {
};
return App;
})();
+
+ db.point_of_sale.SynchNotification = db.web.Widget.extend({
+ template: "pos-synch-notification",
+ init: function() {
+ this._super.apply(this, arguments);
+ this.nbr_pending = 0;
+ },
+ render_element: function() {
+ this._super.apply(this, arguments);
+ $('.oe_pos_synch-notification-button', this.$element).click(this.on_synch);
+ },
+ on_change_nbr_pending: function(nbr_pending) {
+ this.nbr_pending = nbr_pending;
+ this.render_element();
+ },
+ on_synch: function() {}
+ });
db.web.client_actions.add('pos.ui', 'db.point_of_sale.PointOfSale');
db.point_of_sale.PointOfSale = db.web.Widget.extend({
@@ -1173,6 +1190,10 @@ openerp.point_of_sale = function(db) {
"of the point of sale at the same time.";
pos = new Pos(this.session);
+ this.synch_notification = new db.point_of_sale.SynchNotification(this);
+ this.synch_notification.replace($('.oe_pos_synch-notification', this.$element));
+ this.synch_notification.on_synch.add(_.bind(pos.flush, pos));
+
pos.bind('change:pending_operations', this.changed_pending_operations, this);
this.changed_pending_operations();
@@ -1192,7 +1213,7 @@ openerp.point_of_sale = function(db) {
changed_pending_operations: function () {
var operations = pos.get('pending_operations');
var number = operations.length;
-
+ this.synch_notification.on_change_nbr_pending(number);
},
try_close: function() {
this.close();
diff --git a/addons/point_of_sale/static/src/xml/pos.xml b/addons/point_of_sale/static/src/xml/pos.xml
index d8647aaccc9..61a5af2a17b 100644
--- a/addons/point_of_sale/static/src/xml/pos.xml
+++ b/addons/point_of_sale/static/src/xml/pos.xml
@@ -25,6 +25,7 @@
+
Close
@@ -122,6 +123,13 @@
+
+
+
+ pending orders
+
+
+
From b5d844d2e68b5707e8eda930cc4c8f1f3a9a1ba7 Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Tue, 13 Dec 2011 15:07:32 +0100
Subject: [PATCH 064/135] [imp] added warning when we try to exit the pos with
pending changes
bzr revid: nicolas.vanhoren@openerp.com-20111213140732-kfu92k7wb6rcp9ie
---
addons/point_of_sale/static/src/css/pos.css | 4 +++
addons/point_of_sale/static/src/js/pos.js | 33 ++++++++++++++++++---
addons/point_of_sale/static/src/xml/pos.xml | 3 ++
3 files changed, 36 insertions(+), 4 deletions(-)
diff --git a/addons/point_of_sale/static/src/css/pos.css b/addons/point_of_sale/static/src/css/pos.css
index 2ff5fbf9dd3..d93f29f740f 100644
--- a/addons/point_of_sale/static/src/css/pos.css
+++ b/addons/point_of_sale/static/src/css/pos.css
@@ -487,3 +487,7 @@
background-color: #D92A2A;
}
+.point-of-sale .oe_pos-close-warning {
+ height: 500px;
+}
+
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 423399b9c07..21ff6de3ec2 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -25,6 +25,7 @@ openerp.point_of_sale = function(db) {
return QWeb.render(template, ctx);
};
};
+ var _t = db.web._t;
/*
Local store access. Read once from localStorage upon construction and persist on every change.
@@ -1211,12 +1212,36 @@ openerp.point_of_sale = function(db) {
});
},
changed_pending_operations: function () {
- var operations = pos.get('pending_operations');
- var number = operations.length;
- this.synch_notification.on_change_nbr_pending(number);
+ this.synch_notification.on_change_nbr_pending(pos.get('pending_operations').length);
},
try_close: function() {
- this.close();
+ pos.flush().then(_.bind(function() {
+ var close = _.bind(this.close, this);
+ if (pos.get('pending_operations').length > 0) {
+ var confirm = false;
+ $(QWeb.render('pos-close-warning')).dialog({
+ resizable: false,
+ height:160,
+ modal: true,
+ title: "Warning",
+ buttons: {
+ "Yes": function() {
+ confirm = true;
+ $( this ).dialog( "close" );
+ },
+ "No": function() {
+ $( this ).dialog( "close" );
+ }
+ },
+ close: function() {
+ if (confirm)
+ close();
+ }
+ });
+ } else {
+ close();
+ }
+ }, this));
},
close: function() {
this.stop();
diff --git a/addons/point_of_sale/static/src/xml/pos.xml b/addons/point_of_sale/static/src/xml/pos.xml
index 61a5af2a17b..8b82bafd648 100644
--- a/addons/point_of_sale/static/src/xml/pos.xml
+++ b/addons/point_of_sale/static/src/xml/pos.xml
@@ -130,6 +130,9 @@
+
+ There are pending operations that could not be saved into the database, are you sure you want to exit?
+
From 3485feae6cec6f28785d988fc70fc698cf3bf797 Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Tue, 13 Dec 2011 15:14:17 +0100
Subject: [PATCH 065/135] [fix] problem with order widget
bzr revid: nicolas.vanhoren@openerp.com-20111213141417-muyn1yjodvjvu7eb
---
addons/point_of_sale/static/src/css/pos.css | 4 ----
addons/point_of_sale/static/src/js/pos.js | 2 +-
2 files changed, 1 insertion(+), 5 deletions(-)
diff --git a/addons/point_of_sale/static/src/css/pos.css b/addons/point_of_sale/static/src/css/pos.css
index d93f29f740f..2ff5fbf9dd3 100644
--- a/addons/point_of_sale/static/src/css/pos.css
+++ b/addons/point_of_sale/static/src/css/pos.css
@@ -487,7 +487,3 @@
background-color: #D92A2A;
}
-.point-of-sale .oe_pos-close-warning {
- height: 500px;
-}
-
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 21ff6de3ec2..098cea69700 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -658,7 +658,7 @@ openerp.point_of_sale = function(db) {
Shopping carts.
*/
var OrderlineWidget = db.web.Widget.extend({
- tagName: 'tr',
+ tag_name: 'tr',
template_fct: qweb_template('pos-orderline-template'),
init: function(parent, options) {
this._super(parent);
From ed2b1ce175827be535bd8a5614a50929f0663eab Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Tue, 13 Dec 2011 15:31:35 +0100
Subject: [PATCH 066/135] [fix] problem with order lines, was changing
selection
bzr revid: nicolas.vanhoren@openerp.com-20111213143135-1ue0wg2puwduchps
---
addons/point_of_sale/static/src/js/pos.js | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 098cea69700..6b01dfc0c9a 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -703,13 +703,12 @@ openerp.point_of_sale = function(db) {
changeSelectedOrder: function() {
this.currentOrderLines.unbind();
this.bindOrderLineEvents();
- return this.render_element();
+ this.render_element();
},
bindOrderLineEvents: function() {
this.currentOrderLines = (this.shop.get('selectedOrder')).get('orderLines');
this.currentOrderLines.bind('add', this.addLine, this);
- this.currentOrderLines.bind('change', this.render_element, this);
- return this.currentOrderLines.bind('remove', this.render, this);
+ this.currentOrderLines.bind('remove', this.render_element, this);
},
addLine: function(newLine) {
var line = new OrderlineWidget(null, {
@@ -718,7 +717,7 @@ openerp.point_of_sale = function(db) {
numpadState: this.numpadState
});
line.appendTo(this.$element);
- return this.updateSummary();
+ this.updateSummary();
},
render_element: function() {
this.$element.empty();
@@ -730,7 +729,7 @@ openerp.point_of_sale = function(db) {
});
line.appendTo(this.$element);
}, this));
- return this.updateSummary();
+ this.updateSummary();
},
updateSummary: function() {
var currentOrder, tax, total, totalTaxExcluded;
@@ -740,7 +739,7 @@ openerp.point_of_sale = function(db) {
tax = currentOrder.getTax();
$('#subtotal').html(totalTaxExcluded.toFixed(2)).hide().fadeIn();
$('#tax').html(tax.toFixed(2)).hide().fadeIn();
- return $('#total').html(total.toFixed(2)).hide().fadeIn();
+ $('#total').html(total.toFixed(2)).hide().fadeIn();
},
});
/*
From c4b7697fde88925a7a05e78d64fc6c565def10af Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Tue, 13 Dec 2011 15:58:18 +0100
Subject: [PATCH 067/135] [imp] added possibility to remove an order line
bzr revid: nicolas.vanhoren@openerp.com-20111213145818-0yw0g4xi7aioe39y
---
addons/point_of_sale/static/src/js/pos.js | 53 +++++++++++------------
1 file changed, 26 insertions(+), 27 deletions(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 6b01dfc0c9a..f2301feb028 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -251,26 +251,28 @@ openerp.point_of_sale = function(db) {
To add more of the same product, just update the quantity accordingly.
The Order also contains payment information.
*/
- var Orderline = (function() {
- __extends(Orderline, Backbone.Model);
- function Orderline() {
- Orderline.__super__.constructor.apply(this, arguments);
- }
-
- Orderline.prototype.defaults = {
+ var Orderline = Backbone.Model.extend({
+ defaults: {
quantity: 1,
list_price: 0,
discount: 0
- };
- Orderline.prototype.incrementQuantity = function() {
+ },
+ initialize: function(attributes) {
+ Backbone.Model.prototype.initialize.apply(this, arguments);
+ this.bind('change:quantity', function(unused, qty) {
+ if (qty == 0)
+ this.trigger('killme');
+ }, this);
+ },
+ incrementQuantity: function() {
return this.set({
quantity: (this.get('quantity')) + 1
});
- };
- Orderline.prototype.getTotal = function() {
+ },
+ getTotal: function() {
return (this.get('quantity')) * (this.get('list_price')) * (1 - (this.get('discount')) / 100);
- };
- Orderline.prototype.exportAsJSON = function() {
+ },
+ exportAsJSON: function() {
var result;
result = {
qty: this.get('quantity'),
@@ -279,18 +281,11 @@ openerp.point_of_sale = function(db) {
product_id: this.get('id')
};
return result;
- };
- return Orderline;
- })();
- var OrderlineCollection = (function() {
- __extends(OrderlineCollection, Backbone.Collection);
- function OrderlineCollection() {
- OrderlineCollection.__super__.constructor.apply(this, arguments);
- }
-
- OrderlineCollection.prototype.model = Orderline;
- return OrderlineCollection;
- })();
+ },
+ });
+ var OrderlineCollection = Backbone.Collection.extend({
+ model: Orderline,
+ });
/*
Every PaymentLine has all the attributes of the corresponding CashRegister.
*/
@@ -365,9 +360,13 @@ openerp.point_of_sale = function(db) {
var existing;
existing = (this.get('orderLines')).get(product.id);
if (existing != null) {
- return existing.incrementQuantity();
+ existing.incrementQuantity();
} else {
- return (this.get('orderLines')).add(new Orderline(product.toJSON()));
+ var line = new Orderline(product.toJSON());
+ this.get('orderLines').add(line);
+ line.bind('killme', function() {
+ this.get('orderLines').remove(line);
+ }, this);
}
};
Order.prototype.addPaymentLine = function(cashRegister) {
From f76eda6bbaf7a91af87760e6a5909e814e793e69 Mon Sep 17 00:00:00 2001
From: Fabien Meghazi
Date: Tue, 13 Dec 2011 17:22:35 +0100
Subject: [PATCH 068/135] [IMP] Use current month range search for calendar
view
bzr revid: fme@openerp.com-20111213162235-d5jywhbfii8dfpjj
---
addons/web_calendar/static/src/js/calendar.js | 42 ++++++++++++++-----
1 file changed, 32 insertions(+), 10 deletions(-)
diff --git a/addons/web_calendar/static/src/js/calendar.js b/addons/web_calendar/static/src/js/calendar.js
index 887bdc47780..aac3dcb4f3b 100644
--- a/addons/web_calendar/static/src/js/calendar.js
+++ b/addons/web_calendar/static/src/js/calendar.js
@@ -10,6 +10,7 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({
// Dhtmlx scheduler ?
init: function(parent, dataset, view_id, options) {
this._super(parent);
+ this.ready = $.Deferred();
this.set_default_options(options);
this.dataset = dataset;
this.model = dataset.model;
@@ -26,6 +27,9 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({
'#905000', '#9b0000', '#840067', '#510090', '#0000c9', '#009b00', '#9abe00', '#ffc900' ];
this.color_map = {};
this.last_search = [];
+ this.range_start = null;
+ this.range_stop = null;
+ this.update_range_dates(Date.today());
},
start: function() {
this._super();
@@ -126,9 +130,8 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({
scheduler.attachEvent('onClick', this.do_edit_event);
scheduler.attachEvent('onLightbox', this.do_edit_event);
- scheduler.attachEvent('onViewChange', function(mode, date) {
- self.$element.removeClass('oe_cal_day oe_cal_week oe_cal_month').addClass('oe_cal_' + mode);
- });
+ scheduler.attachEvent('onViewChange', this.on_view_changed);
+ this.refresh_scheduler();
if (this.options.sidebar) {
this.mini_calendar = scheduler.renderCalendar({
@@ -141,6 +144,18 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({
});
}
},
+ on_view_changed: function(mode, date) {
+ this.$element.removeClass('oe_cal_day oe_cal_week oe_cal_month').addClass('oe_cal_' + mode);
+ if (!date.between(this.range_start, this.range_stop)) {
+ this.update_range_dates(date);
+ this.do_ranged_search();
+ }
+ this.ready.resolve();
+ },
+ update_range_dates: function(date) {
+ this.range_start = date.clone().moveToFirstDayOfMonth();
+ this.range_stop = this.range_start.clone().addMonths(1).addSeconds(-1);
+ },
refresh_scheduler: function() {
scheduler.setCurrentView(scheduler._date);
},
@@ -345,23 +360,30 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({
return data;
},
do_search: function(domain, context, group_by) {
+ this.last_search = arguments;
+ this.do_ranged_search();
+ },
+ do_ranged_search: function() {
var self = this
- if (!domain) {
- this.do_search.apply(this, this.last_search);
- } else {
- this.last_search = [domain, context, group_by];
- }
scheduler.clearAll();
- $.when(this.has_been_loaded).then(function() {
+ $.when(this.has_been_loaded, this.ready).then(function() {
self.dataset.read_slice(_.keys(self.fields), {
offset: 0,
- limit: self.limit
+ domain: self.get_range_domain(),
+ context: self.last_search[1]
}, function(events) {
self.dataset_events = events;
self.on_events_loaded(events);
});
});
},
+ get_range_domain: function() {
+ var format = openerp.web.date_to_str,
+ domain = this.last_search[0].slice(0);
+ domain.unshift([this.date_start, '>=', format(this.range_start.clone().addDays(-6))]);
+ domain.unshift([this.date_start, '<=', format(this.range_stop.clone().addDays(6))]);
+ return domain;
+ },
do_show: function () {
var self = this;
$.when(this.has_been_loaded).then(function() {
From fc1c009d158907ec82d6961dc0601370dd614850 Mon Sep 17 00:00:00 2001
From: Fabien Meghazi
Date: Tue, 13 Dec 2011 17:51:17 +0100
Subject: [PATCH 069/135] [FIX] Fixed dashboard creatable action default_view
flag
bzr revid: fme@openerp.com-20111213165117-1cea257xcoc3s9v6
---
addons/web_dashboard/static/src/js/dashboard.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/addons/web_dashboard/static/src/js/dashboard.js b/addons/web_dashboard/static/src/js/dashboard.js
index c7132d7a9ef..f5fa0387adb 100644
--- a/addons/web_dashboard/static/src/js/dashboard.js
+++ b/addons/web_dashboard/static/src/js/dashboard.js
@@ -154,7 +154,7 @@ openerp.web.form.DashBoard = openerp.web.form.Widget.extend({
if (action_attrs.domain) {
action.domain = action_attrs.domain;
}
- var action_orig = _.extend({}, action);
+ var action_orig = _.extend({ flags : {} }, action);
if (view_mode && view_mode != action.view_mode) {
var action_view_mode = action.view_mode.split(',');
@@ -195,7 +195,7 @@ openerp.web.form.DashBoard = openerp.web.form.Widget.extend({
var action_id = parseInt(action_attrs.creatable, 10);
$action.parent().find('button.oe_dashboard_button_create').click(function() {
if (isNaN(action_id)) {
- action.flags.default_view = 'form';
+ action_orig.flags.default_view = 'form';
self.do_action(action_orig);
} else {
self.rpc('/web/action/load', {
From 00c3cb84d8191040c95db96ff5e5c4728b8960fb Mon Sep 17 00:00:00 2001
From: Fabien Meghazi
Date: Tue, 13 Dec 2011 17:57:01 +0100
Subject: [PATCH 070/135] [IMP] Dashboard: moved 'Create' button in title of
action
bzr revid: fme@openerp.com-20111213165701-qirmbnuyztsrny8u
---
addons/web_dashboard/static/src/css/dashboard.css | 5 +++++
addons/web_dashboard/static/src/xml/web_dashboard.xml | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/addons/web_dashboard/static/src/css/dashboard.css b/addons/web_dashboard/static/src/css/dashboard.css
index 7ee47f4b88c..785de7d5b6b 100644
--- a/addons/web_dashboard/static/src/css/dashboard.css
+++ b/addons/web_dashboard/static/src/css/dashboard.css
@@ -39,6 +39,11 @@
padding-bottom: 2px;
}
+.openerp .oe_dashboard_button_create {
+ margin-left: 4px;
+ padding: 0 4px 0 4px;
+}
+
.openerp a.oe-dashboard-action-rename {
float: left;
padding-right: 4px;
diff --git a/addons/web_dashboard/static/src/xml/web_dashboard.xml b/addons/web_dashboard/static/src/xml/web_dashboard.xml
index 5d05990c917..5f98df612d5 100644
--- a/addons/web_dashboard/static/src/xml/web_dashboard.xml
+++ b/addons/web_dashboard/static/src/xml/web_dashboard.xml
@@ -25,11 +25,11 @@
+ Create
- Create
From 5fe485b645f89d46223b70664d31ac673c306c05 Mon Sep 17 00:00:00 2001
From: Xavier Morel
Date: Tue, 13 Dec 2011 17:11:44 +0100
Subject: [PATCH 071/135] [FIX] o2m uses weird class sets
bzr revid: xmo@openerp.com-20111213161144-6mhs22l10xmz2j4z
---
addons/web/static/src/css/base.css | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 00e8e1f5e55..0fa3a44a4cd 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -1108,7 +1108,8 @@ label.error {
white-space: normal;
}
-.openerp .oe_form_field_one2many .oe-actions h3.oe_view_title {
+.openerp .oe_form_field_one2many .oe-actions h3.oe_view_title,
+.openerp .oe_form_field_one2many_list .oe-actions h3.oe_view_title{
display: inline;
margin: 0 0.5em 0 0;
}
From 9895bc0984aebdd25a28d76893f4d42fa7b164e9 Mon Sep 17 00:00:00 2001
From: Fabien Meghazi
Date: Wed, 14 Dec 2011 10:51:23 +0100
Subject: [PATCH 072/135] [IMP] Remove bottom pager from o2m
bzr revid: fme@openerp.com-20111214095123-ks095wgp4bvf56bu
---
addons/web/static/src/xml/base.xml | 3 +++
1 file changed, 3 insertions(+)
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index f1f8990bfc5..a8784907562 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -619,6 +619,9 @@
this.removeAttr('t-if');
+
+
+
this.removeAttr('t-if');
var $title = $(document.createElement('h3')).addClass('oe_view_title');
From 515ff465a071a359cb570e4a3a816cc9e80411da Mon Sep 17 00:00:00 2001
From: Xavier Morel
Date: Tue, 13 Dec 2011 17:25:05 +0100
Subject: [PATCH 073/135] [FIX] account_voucher: don't break non-form views
when overriding fields_view_get to manipulate the form view
bzr revid: xmo@openerp.com-20111213162505-fcy8xnq4q3rcrx9v
---
addons/account_voucher/account_voucher.py | 34 ++++++++++++-----------
1 file changed, 18 insertions(+), 16 deletions(-)
diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py
index 535f76b8d64..2b63157ef30 100644
--- a/addons/account_voucher/account_voucher.py
+++ b/addons/account_voucher/account_voucher.py
@@ -91,10 +91,10 @@ class account_voucher(osv.osv):
return False
def _get_payment_rate_currency(self, cr, uid, context=None):
- '''
+ """
Return the default value for field payment_rate_currency_id: the currency of the journal
if there is one, otherwise the currency of the user's company
- '''
+ """
if context is None: context = {}
journal_pool = self.pool.get('account.journal')
journal_id = context.get('journal_id', False)
@@ -141,20 +141,22 @@ class account_voucher(osv.osv):
def fields_view_get(self, cr, uid, view_id=None, view_type=False, context=None, toolbar=False, submenu=False):
mod_obj = self.pool.get('ir.model.data')
if context is None: context = {}
- if not view_id and context.get('invoice_type', False):
- if context.get('invoice_type', False) in ('out_invoice', 'out_refund'):
- result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_receipt_form')
- else:
- result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_payment_form')
- result = result and result[1] or False
- view_id = result
- if not view_id and view_type == 'form' and context.get('line_type', False):
- if context.get('line_type', False) == 'customer':
- result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_receipt_form')
- else:
- result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_payment_form')
- result = result and result[1] or False
- view_id = result
+
+ if view_type == 'form':
+ if not view_id and context.get('invoice_type'):
+ if context.get('invoice_type') in ('out_invoice', 'out_refund'):
+ result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_receipt_form')
+ else:
+ result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_payment_form')
+ result = result and result[1] or False
+ view_id = result
+ if not view_id and context.get('line_type'):
+ if context.get('line_type') == 'customer':
+ result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_receipt_form')
+ else:
+ result = mod_obj.get_object_reference(cr, uid, 'account_voucher', 'view_vendor_payment_form')
+ result = result and result[1] or False
+ view_id = result
res = super(account_voucher, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar, submenu=submenu)
doc = etree.XML(res['arch'])
From 26839f8fca378bc697b3c11d852124df5b7be02d Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Tue, 13 Dec 2011 17:36:31 +0100
Subject: [PATCH 074/135] [imp] added css print
bzr revid: nicolas.vanhoren@openerp.com-20111213163631-0c3zo6ape917woao
---
addons/point_of_sale/static/src/css/pos.css | 22 +++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/addons/point_of_sale/static/src/css/pos.css b/addons/point_of_sale/static/src/css/pos.css
index 2ff5fbf9dd3..afb6d19898f 100644
--- a/addons/point_of_sale/static/src/css/pos.css
+++ b/addons/point_of_sale/static/src/css/pos.css
@@ -487,3 +487,25 @@
background-color: #D92A2A;
}
+@media print {
+ #oe_header, #oe_menu, .point-of-sale #topheader, .point-of-sale #leftpane {
+ display: none;
+ }
+ .point-of-sale #content {
+ top: 0px;
+ }
+ .point-of-sale #rigthpane {
+ left: 0px;
+ background-color: white;
+ }
+ #receipt-screen header, #pos-finish-order {
+ display: none;
+ }
+ #receipt-screen {
+ text-align: left;
+ }
+ .pos-sale-ticket {
+ margin: 0;
+ }
+}
+
From e7b4fd0a9d81058a6af8e5acef8dac838c5c908f Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Tue, 13 Dec 2011 18:02:48 +0100
Subject: [PATCH 075/135] [fix] problem with pending operations not always
notified
bzr revid: nicolas.vanhoren@openerp.com-20111213170248-04rbu93vz4yiml96
---
addons/point_of_sale/static/src/js/pos.js | 20 +++++---------------
1 file changed, 5 insertions(+), 15 deletions(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index f2301feb028..82383b1a8d8 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -61,26 +61,16 @@ openerp.point_of_sale = function(db) {
this.flush_mutex = new $.Mutex();
this.build_tree = _.bind(this.build_tree, this);
this.session = session;
+ this.set({'pending_operations': this.store.get('pending_operations', [])});
+ this.bind('change:pending_operations', _.bind(function(unused, val) {
+ this.store.set('pending_operations', val);
+ }, this));
$.when(this.fetch('pos.category', ['name', 'parent_id', 'child_id']),
this.fetch('product.product', ['name', 'list_price', 'pos_categ_id', 'taxes_id', 'img'], [['pos_categ_id', '!=', 'false']]),
this.fetch('account.bank.statement', ['account_id', 'currency', 'journal_id', 'state', 'name']),
this.fetch('account.journal', ['auto_cash', 'check_dtls', 'currency', 'name', 'type']))
.then(this.build_tree);
},
- get: function(attribute) {
- if (attribute === 'pending_operations') {
- return this.store.get('pending_operations', []);
- }
- return Backbone.Model.prototype.get.call(this, attribute);
- },
- set: function(attributes, options) {
- _.each(attributes, _.bind(function (value, attribute) {
- if (attribute === 'pending_operations') {
- this.store.set('pending_operations', value);
- }
- }, this));
- return Backbone.Model.prototype.set.call(this, attributes, options);
- },
fetch: function(osvModel, fields, domain) {
var dataSetSearch;
var self = this;
@@ -90,7 +80,7 @@ openerp.point_of_sale = function(db) {
});
},
push: function(osvModel, record) {
- var ops = this.get('pending_operations');
+ var ops = _.clone(this.get('pending_operations'));
ops.push({model: osvModel, record: record});
this.set({pending_operations: ops});
return this.flush();
From 3ad3baefbadf1f31347e994fccf4470608cbf5ba Mon Sep 17 00:00:00 2001
From: Launchpad Translations on behalf of openerp <>
Date: Wed, 14 Dec 2011 04:45:21 +0000
Subject: [PATCH 076/135] Launchpad automatic translations update.
bzr revid: launchpad_translations_on_behalf_of_openerp-20111214044521-noijt6jiqm918uoh
---
addons/account_payment/i18n/sr@latin.po | 116 +++++++++++++-----------
1 file changed, 63 insertions(+), 53 deletions(-)
diff --git a/addons/account_payment/i18n/sr@latin.po b/addons/account_payment/i18n/sr@latin.po
index 6efe331146d..13925099baf 100644
--- a/addons/account_payment/i18n/sr@latin.po
+++ b/addons/account_payment/i18n/sr@latin.po
@@ -8,19 +8,19 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
-"PO-Revision-Date: 2010-12-23 15:17+0000\n"
-"Last-Translator: Olivier Dony (OpenERP) \n"
+"PO-Revision-Date: 2011-12-13 15:21+0000\n"
+"Last-Translator: Milan Milosevic \n"
"Language-Team: Serbian latin \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-11-05 05:22+0000\n"
-"X-Generator: Launchpad (build 14231)\n"
+"X-Launchpad-Export-Date: 2011-12-14 04:45+0000\n"
+"X-Generator: Launchpad (build 14487)\n"
#. module: account_payment
#: field:payment.order,date_scheduled:0
msgid "Scheduled date if fixed"
-msgstr "Zakazani datum ako je fiskno"
+msgstr "Zakazani datum ako je fiksiran"
#. module: account_payment
#: field:payment.line,currency:0
@@ -30,7 +30,7 @@ msgstr "Valuta partnera"
#. module: account_payment
#: view:payment.order:0
msgid "Set to draft"
-msgstr "Postavi za obradu"
+msgstr "Postavi kao pripremu"
#. module: account_payment
#: help:payment.order,mode:0
@@ -41,7 +41,7 @@ msgstr "Odaberite način plaćanja koji će biti primenjen."
#: view:payment.mode:0
#: view:payment.order:0
msgid "Group By..."
-msgstr "Grupirano po"
+msgstr "Grupiši po..."
#. module: account_payment
#: model:ir.module.module,description:account_payment.module_meta_information
@@ -52,6 +52,11 @@ msgid ""
"* a basic mechanism to easily plug various automated payment.\n"
" "
msgstr ""
+"\n"
+"Ovaj modul omogućava:\n"
+"*efikasniji način za upravljanje isplaćivanja faktura\n"
+"*osnovni mehanizam za lako obrađivanje automatizovanih načina isplate\n"
+" "
#. module: account_payment
#: field:payment.order,line_ids:0
@@ -98,7 +103,7 @@ msgstr "Zeljeni Datum"
#. module: account_payment
#: selection:payment.line,state:0
msgid "Free"
-msgstr "slobodno"
+msgstr "Slobodno"
#. module: account_payment
#: field:payment.order.create,entries:0
@@ -108,18 +113,18 @@ msgstr "Stavke"
#. module: account_payment
#: report:payment.order:0
msgid "Used Account"
-msgstr "Koristeni Nalog"
+msgstr "Korišteni nalog"
#. module: account_payment
#: field:payment.line,ml_maturity_date:0
#: field:payment.order.create,duedate:0
msgid "Due Date"
-msgstr "Datum dospeća"
+msgstr "Krajnji rok"
#. module: account_payment
#: constraint:account.move.line:0
msgid "You can not create move line on closed account."
-msgstr ""
+msgstr "Ne možete da napravite poteznu liniju na zatvorenim računima."
#. module: account_payment
#: view:account.move.line:0
@@ -135,7 +140,7 @@ msgstr "_Dodaj u nalog za plaćanje"
#: model:ir.actions.act_window,name:account_payment.action_account_payment_populate_statement
#: model:ir.actions.act_window,name:account_payment.action_account_populate_statement_confirm
msgid "Payment Populate statement"
-msgstr "Ispuna sadrzaja fakture"
+msgstr "Ispunjavanje sadržaja fakture"
#. module: account_payment
#: report:payment.order:0
@@ -146,12 +151,12 @@ msgstr "Iznos"
#. module: account_payment
#: sql_constraint:account.move.line:0
msgid "Wrong credit or debit value in accounting entry !"
-msgstr ""
+msgstr "Pogrešna vrednost kredita ili debita u ulazu računa !"
#. module: account_payment
#: view:payment.order:0
msgid "Total in Company Currency"
-msgstr "Ukupno u valuti preduzeca"
+msgstr "Ukupno u valuti preduzeća"
#. module: account_payment
#: selection:payment.order,state:0
@@ -172,7 +177,7 @@ msgstr "Referenca"
#. module: account_payment
#: sql_constraint:payment.line:0
msgid "The payment line name must be unique!"
-msgstr ""
+msgstr "Red plaćanja mora biti jedinstven!"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_payment_order_tree
@@ -212,7 +217,7 @@ msgstr "Efektivni datum fakture"
#. module: account_payment
#: report:payment.order:0
msgid "Execution Type"
-msgstr "Tip Izuzetka"
+msgstr "Tip Izvršavanja"
#. module: account_payment
#: selection:payment.line,state:0
@@ -229,7 +234,7 @@ msgstr "Stanje"
#: view:payment.line:0
#: view:payment.order:0
msgid "Transaction Information"
-msgstr "Informacije Transakcije"
+msgstr "Informacije o transakciji"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_payment_mode_form
@@ -257,8 +262,8 @@ msgid ""
"by you.'Directly' stands for the direct execution.'Due date' stands for the "
"scheduled date of execution."
msgstr ""
-"Odaberite opciju za nalog za plaćanje: \"Fiksno\" znači datum naveden od "
-"vaše strane. \"Direktno\" znači direktno izvršenje. \"Datum odgode\" znači "
+"Odaberite opciju za nalog za plaćanje: \"Fiksirano\" znači datum naveden s "
+"Vaše strane. \"Direktno\" znači direktno izvršenje. \"Datum odgode\" znači "
"zakazan datum izvršenja."
#. module: account_payment
@@ -280,12 +285,12 @@ msgstr "Datum izvršenja"
#. module: account_payment
#: help:payment.mode,journal:0
msgid "Bank or Cash Journal for the Payment Mode"
-msgstr ""
+msgstr "Dnevnik banke ili keša za način plaćanja"
#. module: account_payment
#: selection:payment.order,date_prefered:0
msgid "Fixed date"
-msgstr "Fiksni datum"
+msgstr "Fiksirani datum"
#. module: account_payment
#: field:payment.line,info_partner:0
@@ -301,18 +306,19 @@ msgstr "Ciljni račun"
#. module: account_payment
#: view:payment.order:0
msgid "Search Payment Orders"
-msgstr "Pretrazi naloge za placanje"
+msgstr "Pretraži naloge za plaćanje"
#. module: account_payment
#: constraint:account.move.line:0
msgid ""
"You can not create move line on receivable/payable account without partner"
msgstr ""
+"Ne možete napraviti poteznu liniju na primaćem/platežnom računu bez partnera"
#. module: account_payment
#: field:payment.line,create_date:0
msgid "Created"
-msgstr "Kreirano"
+msgstr "Napravljeno"
#. module: account_payment
#: view:payment.order:0
@@ -327,17 +333,17 @@ msgstr "Ukupni iznos valute"
#. module: account_payment
#: view:payment.order:0
msgid "Make Payments"
-msgstr "Napravite plaćanja"
+msgstr "Izvršite plaćanja"
#. module: account_payment
#: field:payment.line,state:0
msgid "Communication Type"
-msgstr "Tip Komunikacije"
+msgstr "Tip komunikacije"
#. module: account_payment
#: model:ir.module.module,shortdesc:account_payment.module_meta_information
msgid "Payment Management"
-msgstr "Menadzment Plaćanja"
+msgstr "Upravljanje plaćanjem"
#. module: account_payment
#: field:payment.line,bank_statement_line_id:0
@@ -347,7 +353,7 @@ msgstr "Red Izvoda iz Banke"
#. module: account_payment
#: selection:payment.order,date_prefered:0
msgid "Due date"
-msgstr "Krajnji Rok"
+msgstr "Krajnji rok"
#. module: account_payment
#: field:account.invoice,amount_to_pay:0
@@ -391,7 +397,7 @@ msgstr "Način plaćanja"
#. module: account_payment
#: report:payment.order:0
msgid "Value Date"
-msgstr "Datum"
+msgstr "Datum valute"
#. module: account_payment
#: report:payment.order:0
@@ -412,23 +418,23 @@ msgstr "Priprema"
#. module: account_payment
#: help:payment.line,communication2:0
msgid "The successor message of Communication."
-msgstr "Nasljedna poruka komunikacije."
+msgstr "Naredna poruka komunikacije."
#. module: account_payment
#: code:addons/account_payment/account_move_line.py:110
#, python-format
msgid "No partner defined on entry line"
-msgstr "Partner nije definisan"
+msgstr "Partner nije definisan na redu stavke"
#. module: account_payment
#: help:payment.line,info_partner:0
msgid "Address of the Ordering Customer."
-msgstr "Adresa kupca naručitelja."
+msgstr "Adresa naručitelja."
#. module: account_payment
#: view:account.payment.populate.statement:0
msgid "Populate Statement:"
-msgstr "Popuni sadrzaj:"
+msgstr "Popuni sadržaj:"
#. module: account_payment
#: view:account.move.line:0
@@ -438,7 +444,7 @@ msgstr "Ukupno potražuje"
#. module: account_payment
#: help:payment.order,date_scheduled:0
msgid "Select a date if you have chosen Preferred Date to be fixed."
-msgstr "Odaberite datum ako ste odabrali fiksni željeni datum"
+msgstr "Odaberite datum ako ste odabrali fiksirani željeni datum"
#. module: account_payment
#: field:payment.order,user_id:0
@@ -454,12 +460,12 @@ msgstr "Redovi plaćanja"
#. module: account_payment
#: model:ir.model,name:account_payment.model_account_move_line
msgid "Journal Items"
-msgstr "Sadrzaj Dnevnika"
+msgstr "Stavke dnevnika"
#. module: account_payment
#: constraint:account.move.line:0
msgid "Company must be same for its related account and period."
-msgstr ""
+msgstr "Preduzeće mora biti isto za sve vezane račune i periode."
#. module: account_payment
#: help:payment.line,move_line_id:0
@@ -492,12 +498,12 @@ msgstr "Ukupno:"
#. module: account_payment
#: field:payment.order,date_created:0
msgid "Creation date"
-msgstr "Datum kreiranja"
+msgstr "Datum pravljenja"
#. module: account_payment
#: view:account.payment.populate.statement:0
msgid "ADD"
-msgstr "Dodaj"
+msgstr "DODAJ"
#. module: account_payment
#: view:account.bank.statement:0
@@ -517,22 +523,22 @@ msgstr "Iznos u valuti preduzeca"
#. module: account_payment
#: help:payment.line,partner_id:0
msgid "The Ordering Customer"
-msgstr "Kupac naručitelj"
+msgstr "Naručitelj"
#. module: account_payment
#: model:ir.model,name:account_payment.model_account_payment_make_payment
msgid "Account make payment"
-msgstr "Izvrsi placanje naloga"
+msgstr "Izvrši plaćanje naloga"
#. module: account_payment
#: report:payment.order:0
msgid "Invoice Ref"
-msgstr "Referenca fakture"
+msgstr "Ref. fakture"
#. module: account_payment
#: field:payment.line,name:0
msgid "Your Reference"
-msgstr "Vaše veze"
+msgstr "Vaš poziv na broj"
#. module: account_payment
#: field:payment.order,mode:0
@@ -578,7 +584,7 @@ msgstr "Otkaži"
#: view:payment.line:0
#: view:payment.order:0
msgid "Information"
-msgstr "Informacija"
+msgstr "Informacije"
#. module: account_payment
#: model:ir.actions.act_window,help:account_payment.action_payment_order_tree
@@ -588,6 +594,10 @@ msgid ""
"that should be done, keep track of all payment orders and mention the "
"invoice reference and the partner the payment should be done for."
msgstr ""
+"Nalog za plaćanje je zahtev za plaćanje od strane Vašeg preduzeća za isplatu "
+"faktura nabavke ili kupaca. Ovde možete snimiti sve naloge za plaćanje na "
+"čekanju, pratite sve naloge za plaćanje i pomenete poziv na broj za datu "
+"fakturu i kom partneru treba izvršiti isplatu."
#. module: account_payment
#: help:payment.line,amount:0
@@ -612,12 +622,12 @@ msgstr "Komunikacija 2"
#. module: account_payment
#: field:payment.line,bank_id:0
msgid "Destination Bank account"
-msgstr "Destinacioni bankovni račun"
+msgstr "Ciljni bankovni račun"
#. module: account_payment
#: view:account.payment.make.payment:0
msgid "Are you sure you want to make payment?"
-msgstr "Jeste li sigurni da zelite da izvrsite isplatu?"
+msgstr "Jeste li sigurni da želite da izvršite isplatu?"
#. module: account_payment
#: view:payment.mode:0
@@ -639,7 +649,7 @@ msgstr "Potvrdi plaćanja"
#: field:payment.line,company_currency:0
#: report:payment.order:0
msgid "Company Currency"
-msgstr "Valuta preduzeca"
+msgstr "Valuta preduzeća"
#. module: account_payment
#: model:ir.ui.menu,name:account_payment.menu_main_payment
@@ -651,7 +661,7 @@ msgstr "Isplata"
#. module: account_payment
#: report:payment.order:0
msgid "Payment Order / Payment"
-msgstr "Isplata Faktura / Placanje"
+msgstr "Isplata Faktura / Plaćanje"
#. module: account_payment
#: field:payment.line,move_line_id:0
@@ -664,13 +674,13 @@ msgid ""
"Used as the message between ordering customer and current company. Depicts "
"'What do you want to say to the recipient about this order ?'"
msgstr ""
-"Koristi se kao poruka izmedju narucioca i date kompanije. Objasnjava ' Sta "
-"ste to hteli reci kupcu o ovoj narudzbi?'"
+"Koristi se kao poruka između naručioca i date kompanije. Prikazuje ' Šta "
+"želite reći kupcu o ovoj narudžbini?'"
#. module: account_payment
#: field:payment.mode,name:0
msgid "Name"
-msgstr "Ime"
+msgstr "Naziv"
#. module: account_payment
#: report:payment.order:0
@@ -681,7 +691,7 @@ msgstr "Bankovni račun"
#: view:payment.line:0
#: view:payment.order:0
msgid "Entry Information"
-msgstr "Unos Informacije"
+msgstr "Informacije o unosu"
#. module: account_payment
#: model:ir.model,name:account_payment.model_payment_order_create
@@ -702,7 +712,7 @@ msgstr "Ukupno"
#: view:account.payment.make.payment:0
#: model:ir.actions.act_window,name:account_payment.action_account_payment_make_payment
msgid "Make Payment"
-msgstr "Izvrsi placanje"
+msgstr "Izvrši placanje"
#. module: account_payment
#: field:payment.line,partner_id:0
@@ -713,7 +723,7 @@ msgstr "Partner"
#. module: account_payment
#: model:ir.actions.act_window,name:account_payment.action_create_payment_order
msgid "Populate Payment"
-msgstr "Popuni Placanje"
+msgstr "Popuni plaćanje"
#. module: account_payment
#: help:payment.mode,bank_id:0
@@ -723,7 +733,7 @@ msgstr "Bankovni račun za način plaćanja"
#. module: account_payment
#: constraint:account.move.line:0
msgid "You can not create move line on view account."
-msgstr ""
+msgstr "Ne možete napraviti poteznu liniju na računu po viđenju"
#~ msgid "Invalid model name in the action definition."
#~ msgstr "Pogrešno ime modela u definiciji akcije."
From 9e7832d62dfc978c3b5af4cb12a97272eb393a8c Mon Sep 17 00:00:00 2001
From: "Ujjvala Collins (OpenERP)"
Date: Wed, 14 Dec 2011 11:02:10 +0530
Subject: [PATCH 077/135] [IMP] account_voucher,l10n_de: Renamed remaining
account type xml ids.
bzr revid: uco@tinyerp.com-20111214053210-mqrjyxm40a8pd84t
---
addons/account_voucher/test/case1_usd_usd.yml | 2 +-
addons/account_voucher/test/case4_cad_chf.yml | 2 +-
addons/l10n_de/account_types_skr03.xml | 4 ++--
addons/l10n_de/account_types_skr04.xml | 4 ++--
4 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/addons/account_voucher/test/case1_usd_usd.yml b/addons/account_voucher/test/case1_usd_usd.yml
index 3432d3cf27b..d75c386e259 100644
--- a/addons/account_voucher/test/case1_usd_usd.yml
+++ b/addons/account_voucher/test/case1_usd_usd.yml
@@ -51,7 +51,7 @@
name: "cash account in usd"
code: "Xcash usd"
type: 'liquidity'
- user_type: "account.account_type_cash_moves"
+ user_type: "account.data_account_type_cash"
-
I create a bank journal with USD as currency
diff --git a/addons/account_voucher/test/case4_cad_chf.yml b/addons/account_voucher/test/case4_cad_chf.yml
index f31a7393a8e..ff8db125682 100644
--- a/addons/account_voucher/test/case4_cad_chf.yml
+++ b/addons/account_voucher/test/case4_cad_chf.yml
@@ -46,7 +46,7 @@
name: "cash account in chf"
code: "Xcash chf"
type: 'liquidity'
- user_type: "account.account_type_cash_moves"
+ user_type: "account.data_account_type_cash"
-
I create a bank journal with CHF as currency
diff --git a/addons/l10n_de/account_types_skr03.xml b/addons/l10n_de/account_types_skr03.xml
index c65cba38333..3c3da6eb67f 100644
--- a/addons/l10n_de/account_types_skr03.xml
+++ b/addons/l10n_de/account_types_skr03.xml
@@ -8,7 +8,7 @@
none
-
+
Erfolgskonten - Erlöse
income
income
@@ -29,7 +29,7 @@
balance
-
+
Bilanzkonten - Passiva - Kapitalkonten
balance liability
liability
diff --git a/addons/l10n_de/account_types_skr04.xml b/addons/l10n_de/account_types_skr04.xml
index c65cba38333..3c3da6eb67f 100644
--- a/addons/l10n_de/account_types_skr04.xml
+++ b/addons/l10n_de/account_types_skr04.xml
@@ -8,7 +8,7 @@
none
-
+
Erfolgskonten - Erlöse
income
income
@@ -29,7 +29,7 @@
balance
-
+
Bilanzkonten - Passiva - Kapitalkonten
balance liability
liability
From dab76844484ae76001c903a01a9775e12d4889ef Mon Sep 17 00:00:00 2001
From: "Ujjvala Collins (OpenERP)"
Date: Wed, 14 Dec 2011 11:44:51 +0530
Subject: [PATCH 078/135] [FIX] sale,stock_location: Fixed runbot errors.
bzr revid: uco@tinyerp.com-20111214061451-7dv4fut2d4y0lway
---
addons/sale/test/data_test.yml | 4 ----
addons/stock_location/test/stock_location_pull_flow.yml | 4 ----
2 files changed, 8 deletions(-)
diff --git a/addons/sale/test/data_test.yml b/addons/sale/test/data_test.yml
index 8b5d32a086a..8e064212f58 100644
--- a/addons/sale/test/data_test.yml
+++ b/addons/sale/test/data_test.yml
@@ -9,7 +9,6 @@
close_method: none
code: View
name: View
- sign: 1
-
I create Income Account Type.
-
@@ -17,7 +16,6 @@
close_method: unreconciled
code: Income
name: Income
- sign: 1
-
I create Expense Account Type.
-
@@ -25,7 +23,6 @@
close_method: unreconciled
code: Expense
name: Expense
- sign: 1
-
I create Cash Account Type.
-
@@ -33,7 +30,6 @@
close_method: balance
code: Cash
name: Cash
- sign: 1
-
I create Minimal Chart Account.
-
diff --git a/addons/stock_location/test/stock_location_pull_flow.yml b/addons/stock_location/test/stock_location_pull_flow.yml
index dec830b2d77..c5e134181f7 100644
--- a/addons/stock_location/test/stock_location_pull_flow.yml
+++ b/addons/stock_location/test/stock_location_pull_flow.yml
@@ -7,7 +7,6 @@
close_method: balance
code: asset_test
name: Asset For Tests
- sign: 1
-
I create a account type income.
-
@@ -15,7 +14,6 @@
close_method: unreconciled
code: income_test
name: Income For Tests
- sign: 1
-
I create a account type Expense.
-
@@ -23,7 +21,6 @@
close_method: unreconciled
code: expense_test
name: Expense For Tests
- sign: 1
-
I create a account type Receivable.
-
@@ -31,7 +28,6 @@
close_method: unreconciled
code: receivable_test
name: Receivable For Tests
- sign: 1
-
I create a account Receivable.
From 4666042e5c0d6cd6639413fb91b42f3cf5c7743f Mon Sep 17 00:00:00 2001
From: "Yogesh (OpenERP)"
Date: Wed, 14 Dec 2011 14:42:07 +0530
Subject: [PATCH 079/135] [FIX] account_voucher:- is_multi_currency field add
in view and set invisible=1 for atts.
lp bug: https://launchpad.net/bugs/903740 fixed
bzr revid: ysa@tinyerp.com-20111214091207-1sje5q3st51cbxfr
---
addons/account_voucher/voucher_payment_receipt_view.xml | 1 +
1 file changed, 1 insertion(+)
diff --git a/addons/account_voucher/voucher_payment_receipt_view.xml b/addons/account_voucher/voucher_payment_receipt_view.xml
index 5cf9b42be0b..29608909148 100644
--- a/addons/account_voucher/voucher_payment_receipt_view.xml
+++ b/addons/account_voucher/voucher_payment_receipt_view.xml
@@ -356,6 +356,7 @@
+
From 2863869b60980e8dc9b1bf21676c2752f5fa5db4 Mon Sep 17 00:00:00 2001
From: "Atik Agewan (OpenERP)"
Date: Wed, 14 Dec 2011 15:07:45 +0530
Subject: [PATCH 080/135] [IMP]: hr_recruitment:optimize code of yml
bzr revid: aag@tinyerp.com-20111214093745-rmyqn9qhut07xfne
---
addons/hr_recruitment/test/recruitment_process.yml | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/addons/hr_recruitment/test/recruitment_process.yml b/addons/hr_recruitment/test/recruitment_process.yml
index d87f21c5f24..1bf0e24a650 100644
--- a/addons/hr_recruitment/test/recruitment_process.yml
+++ b/addons/hr_recruitment/test/recruitment_process.yml
@@ -38,12 +38,11 @@
self.write(cr, uid, [ref('hr_case_programmer')], {'job_id':ref('hr.job_jr_appli')})
-
I start communication with applicant, first schedule phonecall.
--
- !record {model: hr.recruitment.job2phonecall, id: hr_recruitment_job2phonecall_id1 }:
-
!python {model: hr.recruitment.job2phonecall}: |
context.update({'active_model': 'hr.applicant', 'active_id': ref("hr_case_programmer"), 'active_ids': [ref("hr_case_programmer")], 'survey_id': ref("survey_job_0")})
- self.make_phonecall(cr, uid, [ref('hr_recruitment_job2phonecall_id1')], context=context)
+ id = self.create(cr, uid, {}, context=context)
+ self.make_phonecall(cr, uid, [id], context=context)
-
I schedule meeting with applicant for interview.
-
From 83f694ed7a9d56b3807ea41ec12dfe413fc0beee Mon Sep 17 00:00:00 2001
From: Fabien Meghazi
Date: Wed, 14 Dec 2011 11:13:44 +0100
Subject: [PATCH 081/135] [IMP] Merge Advanced Filter button in select box and
float it right
bzr revid: fme@openerp.com-20111214101344-61j1cpcjy4bdsz0w
---
addons/web/static/src/css/base.css | 6 ++----
addons/web/static/src/js/search.js | 5 ++++-
addons/web/static/src/xml/base.xml | 2 +-
3 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css
index 0fa3a44a4cd..4badc4d4690 100644
--- a/addons/web/static/src/css/base.css
+++ b/addons/web/static/src/css/base.css
@@ -717,11 +717,9 @@ label.error {
.openerp .oe_search-view-buttons {
padding: 10px 0 10px 0;
}
-.openerp .oe_search-view-custom-filter-btn span {
- background: url(/web/static/src/img/icons/gtk-add.png) repeat-y;
- padding-left: 18px;
+.openerp .oe_search-view-filters-management {
+ float: right;
}
-
.openerp .searchview_extended_add_proposition span {
font-size: 0.9em;
background: url(/web/static/src/img/icons/gtk-add.png) repeat-y;
diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js
index d1e4b161b39..9b485b457cd 100644
--- a/addons/web/static/src/js/search.js
+++ b/addons/web/static/src/js/search.js
@@ -155,6 +155,7 @@ openerp.web.SearchView = openerp.web.Widget.extend(/** @lends openerp.web.Search
var ext = new openerp.web.search.ExtendedSearch(this, this.model);
lines.push([ext]);
this.inputs.push(ext);
+ this.extended_search = ext;
var render = QWeb.render("SearchView", {
'view': data.fields_view['arch'],
@@ -163,7 +164,6 @@ openerp.web.SearchView = openerp.web.Widget.extend(/** @lends openerp.web.Search
});
this.$element.html(render);
- this.$element.find(".oe_search-view-custom-filter-btn").click(ext.on_activate);
var f = this.$element.find('form');
this.$element.find('form')
@@ -199,6 +199,9 @@ openerp.web.SearchView = openerp.web.Widget.extend(/** @lends openerp.web.Search
var select = this.$element.find(".oe_search-view-filters-management");
var val = select.val();
switch(val) {
+ case 'advanced_filter':
+ this.extended_search.on_activate();
+ break;
case 'add_to_dashboard':
this.on_add_to_dashboard();
break;
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index a8784907562..8ab323e776a 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -1151,7 +1151,6 @@
Search
Clear
- Advanced Filter
@@ -1165,6 +1164,7 @@
+ Advanced Filter
Save Filter
Add to Dashboard
Manage Filters
From 0a86b7abbf2060de08b09cb7b89df9b5a6adeb55 Mon Sep 17 00:00:00 2001
From: "Atik Agewan (OpenERP)"
Date: Wed, 14 Dec 2011 15:47:28 +0530
Subject: [PATCH 082/135] [IMP]: hr_recruitment:optimize code of yml
bzr revid: aag@tinyerp.com-20111214101728-pmxerksloz1972p9
---
addons/hr_recruitment/hr_recruitment.py | 1 -
.../test/recruitment_process.yml | 18 +++++++-----------
2 files changed, 7 insertions(+), 12 deletions(-)
diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py
index baa5a761899..8594c565acb 100644
--- a/addons/hr_recruitment/hr_recruitment.py
+++ b/addons/hr_recruitment/hr_recruitment.py
@@ -365,7 +365,6 @@ class hr_applicant(crm.crm_case, osv.osv):
self.write(cr, uid, [res_id], vals, context)
return res_id
- # Dead Code
def message_update(self, cr, uid, ids, msg, vals={}, default_act='pending', context=None):
if isinstance(ids, (str, int, long)):
ids = [ids]
diff --git a/addons/hr_recruitment/test/recruitment_process.yml b/addons/hr_recruitment/test/recruitment_process.yml
index 1bf0e24a650..c1ef5022209 100644
--- a/addons/hr_recruitment/test/recruitment_process.yml
+++ b/addons/hr_recruitment/test/recruitment_process.yml
@@ -20,7 +20,7 @@
assert applicant.state == "draft"
assert len(resume_ids), "Resume does not attached."
-
- I Refuse applicant for the Recruitment.
+ I refuse applicant for the Recruitment.
-
!python {model: hr.applicant}: |
self.case_close(cr, uid, [ref("hr_case_programmer")])
@@ -34,7 +34,6 @@
I assign the Job position to the applicant
-
!python {model: hr.applicant}: |
- context.update({'active_model': 'hr.applicant', 'active_id': ref("hr_case_programmer"), 'active_ids': [ref("hr_case_programmer")], 'survey_id': ref("survey_job_0")})
self.write(cr, uid, [ref('hr_case_programmer')], {'job_id':ref('hr.job_jr_appli')})
-
I start communication with applicant, first schedule phonecall.
@@ -89,33 +88,30 @@
-
!python {model: hr.applicant}: |
self.case_close_with_emp(cr, uid, [ref('hr_case_programmer')])
- context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")})
-
I check that applicant is "Hired".
-
!assert {model: hr.applicant, id: hr_case_programmer}:
- state == 'done'
-
- I Not give Employeement to Hired Aplicant till.
+ I do not give employment to the hired the applicant.
-
!python {model: hired.employee}: |
context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")})
emp_id = self.create(cr, uid, {}, context=context)
self.case_close(cr, uid, [emp_id], context=context)
-
- Now I give Employeement to Hired Applicant .
+ Now I give employment to hired applicant .
-
!python {model: hr.applicant}: |
+ hired_emp_obj = self.pool.get('hired.employee')
self.case_reset(cr, uid, [ref("hr_case_programmer")])
self.case_open(cr, uid, [ref("hr_case_programmer")])
context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")})
+ emp_hr_id = hired_emp_obj.create(cr, uid, {}, context=context)
+ hired_emp_obj.case_close_with_emp(cr, uid, [emp_hr_id], context=context)
-
- !python {model: hired.employee}: |
- context.update({'active_model': 'hr.applicant', 'active_ids': [ref("hr_recruitment.hr_case_programmer")], 'active_id': ref("hr_recruitment.hr_case_programmer")})
- emp_hr_id = self.create(cr, uid, {}, context=context)
- self.case_close_with_emp(cr, uid, [emp_hr_id], context=context)
--
- Now Hired Employee want to be a Partner of Company.
+ Now hired employee want to be a partner of company.
-
!record {model: hr.recruitment.partner.create, id: hr_recruitment_partner_id1 }:
-
From 5fd40337886c65df3b82fd677e9b82c0f1a96512 Mon Sep 17 00:00:00 2001
From: Fabien Meghazi
Date: Wed, 14 Dec 2011 11:43:01 +0100
Subject: [PATCH 083/135] [IMP] Hide secondary menu on home page client action
bzr revid: fme@openerp.com-20111214104301-a2031jvoo5tek9sl
---
addons/web/static/src/js/chrome.js | 9 +++++++++
addons/web_dashboard/static/src/js/dashboard.js | 2 +-
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/addons/web/static/src/js/chrome.js b/addons/web/static/src/js/chrome.js
index f737d8eb92a..83f7f971434 100644
--- a/addons/web/static/src/js/chrome.js
+++ b/addons/web/static/src/js/chrome.js
@@ -916,6 +916,8 @@ openerp.web.Menu = openerp.web.Widget.extend(/** @lends openerp.web.Menu# */{
if (!(this.folded && manual)) {
this.do_show_secondary($sub_menu, $main_menu);
+ } else {
+ this.do_show_secondary();
}
if ($main_menu != $clicked_menu) {
@@ -941,8 +943,15 @@ openerp.web.Menu = openerp.web.Widget.extend(/** @lends openerp.web.Menu# */{
}
return false;
},
+ do_hide_secondary: function() {
+ this.$secondary_menu.hide();
+ },
do_show_secondary: function($sub_menu, $main_menu) {
var self = this;
+ this.$secondary_menu.show();
+ if (!arguments.length) {
+ return;
+ }
if (this.folded) {
var css = $main_menu.position(),
fold_width = this.$secondary_menu.width() + 2,
diff --git a/addons/web_dashboard/static/src/js/dashboard.js b/addons/web_dashboard/static/src/js/dashboard.js
index f5fa0387adb..b70217a1021 100644
--- a/addons/web_dashboard/static/src/js/dashboard.js
+++ b/addons/web_dashboard/static/src/js/dashboard.js
@@ -397,8 +397,8 @@ openerp.web_dashboard.ApplicationTiles = openerp.web.Widget.extend({
this._super(parent);
},
start: function() {
- // TODO menu hide
var self = this;
+ openerp.webclient.menu.do_hide_secondary();
var domain = [['application','=',true], ['state','=','installed'], ['name', '!=', 'base']];
var ds = new openerp.web.DataSetSearch(this, 'ir.module.module',{},domain);
ds.read_slice(['id'], {}, function(result) {
From 337fd9d81e42615711facfaeda9001ee52446ba1 Mon Sep 17 00:00:00 2001
From: "Atik Agewan (OpenERP)"
Date: Wed, 14 Dec 2011 16:56:47 +0530
Subject: [PATCH 084/135] [IMP]: hr_recruitment:remove changes of
message_update
bzr revid: aag@tinyerp.com-20111214112647-mv855r130x1om8zb
---
addons/hr_recruitment/hr_recruitment.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py
index 8594c565acb..625b69a0b02 100644
--- a/addons/hr_recruitment/hr_recruitment.py
+++ b/addons/hr_recruitment/hr_recruitment.py
@@ -365,7 +365,7 @@ class hr_applicant(crm.crm_case, osv.osv):
self.write(cr, uid, [res_id], vals, context)
return res_id
- def message_update(self, cr, uid, ids, msg, vals={}, default_act='pending', context=None):
+ def message_update(self, cr, uid, ids, msg, vals=None, default_act='pending', context=None):
if isinstance(ids, (str, int, long)):
ids = [ids]
if vals is None:
From 2d3a70230834b129da9870163b5a991cda392d65 Mon Sep 17 00:00:00 2001
From: Fabien Meghazi
Date: Wed, 14 Dec 2011 12:28:14 +0100
Subject: [PATCH 085/135] [FIX] Dashboard: merge domain & context of board
action to loaded action
bzr revid: fme@openerp.com-20111214112814-sogxz3no8wh0fbai
---
addons/web_dashboard/static/src/js/dashboard.js | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/addons/web_dashboard/static/src/js/dashboard.js b/addons/web_dashboard/static/src/js/dashboard.js
index b70217a1021..ce7e877b73f 100644
--- a/addons/web_dashboard/static/src/js/dashboard.js
+++ b/addons/web_dashboard/static/src/js/dashboard.js
@@ -149,10 +149,11 @@ openerp.web.form.DashBoard = openerp.web.form.Widget.extend({
view_mode = action_attrs.view_mode;
if (action_attrs.context) {
- action.context = action_attrs.context;
+ action.context = _.extend((action.context || {}), action_attrs.context);
}
if (action_attrs.domain) {
- action.domain = action_attrs.domain;
+ action.domain = action.domain || [];
+ action.domain.unshift.apply(action.domain, action_attrs.domain);
}
var action_orig = _.extend({ flags : {} }, action);
From cb9c87c8ce5ede26090a3eb3645d390175ed76f3 Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Wed, 14 Dec 2011 13:30:41 +0100
Subject: [PATCH 086/135] [imp] now calls home page on close
bzr revid: nicolas.vanhoren@openerp.com-20111214123041-1shjqcvzs0lkd32j
---
addons/point_of_sale/static/src/js/pos.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 82383b1a8d8..1798caae868 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -1232,7 +1232,7 @@ openerp.point_of_sale = function(db) {
}, this));
},
close: function() {
- this.stop();
+ this.do_action({type: 'ir.actions.client', tag: 'default_home'});
},
stop: function() {
$('.oe_footer').show();
From 81214b16f6fc4edfc4445b59d47296dfac56ecf4 Mon Sep 17 00:00:00 2001
From: "Harry (OpenERP)"
Date: Wed, 14 Dec 2011 18:13:14 +0530
Subject: [PATCH 087/135] [REM] project_issue: remove convert_issue_to_task and
test_projest_issue_states. test cases of these files are moved into
issue_process file.
bzr revid: hmo@tinyerp.com-20111214124314-d72ydud9281pcmnw
---
addons/project_issue/__openerp__.py | 2 -
.../test/convert_issue_to_task.yml | 32 -----
.../test/test_project_issue_states.yml | 112 ------------------
3 files changed, 146 deletions(-)
delete mode 100644 addons/project_issue/test/convert_issue_to_task.yml
delete mode 100644 addons/project_issue/test/test_project_issue_states.yml
diff --git a/addons/project_issue/__openerp__.py b/addons/project_issue/__openerp__.py
index f8480b96e15..cf37b955bd6 100644
--- a/addons/project_issue/__openerp__.py
+++ b/addons/project_issue/__openerp__.py
@@ -54,8 +54,6 @@ and decide on their status as they evolve.
],
'demo_xml': ['project_issue_demo.xml'],
'test': [
- #'test/convert_issue_to_task.yml',
- #'test/test_project_issue_states.yml'
'test/subscribe_issue.yml',
'test/draft2open2close.yml',
'test/cancel_issue.yml',
diff --git a/addons/project_issue/test/convert_issue_to_task.yml b/addons/project_issue/test/convert_issue_to_task.yml
deleted file mode 100644
index 13ddef69251..00000000000
--- a/addons/project_issue/test/convert_issue_to_task.yml
+++ /dev/null
@@ -1,32 +0,0 @@
--
- Create an issue
--
- !record {model: project.issue, id: project_issue_onchangeevent0}:
- categ_id: project_issue.bug_categ
- name: on_change event does not pass context to the method
- project_id: project.project_project_22
- working_hours_close: 0.0
- working_hours_open: 0.0
-
--
- Check there is no task attached to issue
--
- !assert {model: project.issue, id: project_issue_onchangeevent0, string: There must not be any task attached to issue}:
- - task_id.id == False
-
--
- Convert issue to task
--
- !python {model: project.issue}: |
- self.convert_issue_task(cr, uid, [ref("project_issue_onchangeevent0")],
- {"lang": "en_US", "project_id": False, "tz": False, "active_model": "ir.ui.menu",
- "department_id": False, "section_id": False, "search_default_project_id":
- False, "search_default_my_bugs": 1, "search_default_user_id": 1, "search_default_current_bugs":
- 1, "active_ids": [ref("project_issue.menu_project_issue_track")], "active_id":
- ref("project_issue.menu_project_issue_track"), })
-
--
- Check there is a task attached to issue
--
- !assert {model: project.issue, id: project_issue_onchangeevent0, string: After creating a task for the issue there must be a task attached to it}:
- - task_id.id != False
diff --git a/addons/project_issue/test/test_project_issue_states.yml b/addons/project_issue/test/test_project_issue_states.yml
deleted file mode 100644
index ee48c9a9df0..00000000000
--- a/addons/project_issue/test/test_project_issue_states.yml
+++ /dev/null
@@ -1,112 +0,0 @@
--
- Create an issue
--
- !record {model: project.issue, id: project_issue_stockmovedates0}:
- categ_id: project_issue.bug_categ
- name: Stock Move dates
- project_id: project.project_project_22
- working_hours_close: 0.0
- working_hours_open: 0.0
--
- Check if issue in 'draft' state
--
- !assert {model: project.issue, id: project_issue_stockmovedates0, severity: error, string: Issue is in draft state}:
- - state == 'draft'
-
--
- Open the issue
--
- !python {model: project.issue}: |
- self.case_open(cr, uid, [ref("project_issue_stockmovedates0")], {"lang":
- "en_US", "active_ids": [ref("project_issue.menu_project_issue_track")], "tz":
- False, "active_model": "ir.ui.menu", "search_default_project_id": False, "search_default_my_bugs":
- 1, "search_default_user_id": 1, "search_default_current_bugs": 1, "project_id":
- False, "active_id": ref("project_issue.menu_project_issue_track"), })
--
- Check if issue in 'open' state
--
- !assert {model: project.issue, id: project_issue_stockmovedates0, severity: error, string: Issue is in open state}:
- - state == 'open'
-
--
- Keep issue pending
--
- !python {model: project.issue}: |
- self.case_pending(cr, uid, [ref("project_issue_stockmovedates0")],
- {"lang": "en_US", "active_ids": [ref("project_issue.menu_project_issue_track")],
- "tz": False, "active_model": "ir.ui.menu", "search_default_project_id":
- False, "search_default_my_bugs": 1, "search_default_user_id": 1, "search_default_current_bugs":
- 1, "project_id": False, "active_id": ref("project_issue.menu_project_issue_track"),
- })
--
- Check if issue in 'pending' state
--
- !assert {model: project.issue, id: project_issue_stockmovedates0, severity: error, string: Issue is in pending state}:
- - state == 'pending'
-
-
--
- Open the issue
--
- !python {model: project.issue}: |
- self.case_open(cr, uid, [ref("project_issue_stockmovedates0")], {"lang":
- "en_US", "active_ids": [ref("project_issue.menu_project_issue_track")], "tz":
- False, "active_model": "ir.ui.menu", "search_default_project_id": False, "search_default_my_bugs":
- 1, "search_default_user_id": 1, "search_default_current_bugs": 1, "project_id":
- False, "active_id": ref("project_issue.menu_project_issue_track"), })
--
- Check if issue in 'open' state
--
- !assert {model: project.issue, id: project_issue_stockmovedates0, severity: error, string: Issue is in open state}:
- - state == 'open'
-
-
--
- Cancel the issue
--
- !python {model: project.issue}: |
- self.case_cancel(cr, uid, [ref("project_issue_stockmovedates0")],
- {"lang": "en_US", "active_ids": [ref("project_issue.menu_project_issue_track")],
- "tz": False, "active_model": "ir.ui.menu", "search_default_project_id":
- False, "search_default_my_bugs": 1, "search_default_user_id": 1, "search_default_current_bugs":
- 1, "project_id": False, "active_id": ref("project_issue.menu_project_issue_track"),
- })
--
- Check if issue in 'cancel' state
--
- !assert {model: project.issue, id: project_issue_stockmovedates0, severity: error, string: Issue is in cancel state}:
- - state == 'cancel'
-
-
--
- Reset the issue
--
- !python {model: project.issue}: |
- self.case_reset(cr, uid, [ref("project_issue_stockmovedates0")],
- {"lang": "en_US", "active_ids": [ref("project_issue.menu_project_issue_track")],
- "tz": False, "active_model": "ir.ui.menu", "search_default_project_id":
- False, "search_default_my_bugs": 1, "search_default_user_id": 1, "search_default_current_bugs":
- 1, "project_id": False, "active_id": ref("project_issue.menu_project_issue_track"),
- })
--
- Check if issue in 'draft' state
--
- !assert {model: project.issue, id: project_issue_stockmovedates0, severity: error, string: Issue is in draft state}:
- - state == 'draft'
-
-
--
- Close the issue
--
- !python {model: project.issue}: |
- self.case_close(cr, uid, [ref("project_issue_stockmovedates0")],
- {"lang": "en_US", "active_ids": [ref("project_issue.menu_project_issue_track")],
- "tz": False, "active_model": "ir.ui.menu", "search_default_project_id":
- False, "search_default_my_bugs": 1, "search_default_user_id": 1, "search_default_current_bugs":
- 1, "project_id": False, "active_id": ref("project_issue.menu_project_issue_track"),
- })
--
- Check if issue in 'done' state
--
- !assert {model: project.issue, id: project_issue_stockmovedates0, severity: error, string: Issue is in done state}:
- - state == 'done'
From c79cd910d4c22add7e47f5b3909e268168a16283 Mon Sep 17 00:00:00 2001
From: "Harry (OpenERP)"
Date: Wed, 14 Dec 2011 18:15:04 +0530
Subject: [PATCH 088/135] [REN] project_issue: rename yml file with
issue_process.
bzr revid: hmo@tinyerp.com-20111214124504-9nw5mr688hkpp3a2
---
addons/project_issue/__openerp__.py | 2 +-
.../test/{draft2open2close.yml => issue_process.yml} | 0
2 files changed, 1 insertion(+), 1 deletion(-)
rename addons/project_issue/test/{draft2open2close.yml => issue_process.yml} (100%)
diff --git a/addons/project_issue/__openerp__.py b/addons/project_issue/__openerp__.py
index cf37b955bd6..012f9b5e799 100644
--- a/addons/project_issue/__openerp__.py
+++ b/addons/project_issue/__openerp__.py
@@ -55,7 +55,7 @@ and decide on their status as they evolve.
'demo_xml': ['project_issue_demo.xml'],
'test': [
'test/subscribe_issue.yml',
- 'test/draft2open2close.yml',
+ 'test/issue_process.yml',
'test/cancel_issue.yml',
'test/issue_demo.yml'
],
diff --git a/addons/project_issue/test/draft2open2close.yml b/addons/project_issue/test/issue_process.yml
similarity index 100%
rename from addons/project_issue/test/draft2open2close.yml
rename to addons/project_issue/test/issue_process.yml
From 0043ed55a3756580f34daf5180515c40883f4cf5 Mon Sep 17 00:00:00 2001
From: "Harry (OpenERP)"
Date: Wed, 14 Dec 2011 18:25:43 +0530
Subject: [PATCH 089/135] [FIX] project_issue: In yml, set email_from on
compose mail to send reply to customer
bzr revid: hmo@tinyerp.com-20111214125543-oeosngloik6biiu7
---
addons/project_issue/test/issue_process.yml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/addons/project_issue/test/issue_process.yml b/addons/project_issue/test/issue_process.yml
index 4614bed3997..d5900bb1b4f 100644
--- a/addons/project_issue/test/issue_process.yml
+++ b/addons/project_issue/test/issue_process.yml
@@ -26,7 +26,7 @@
ctx.update({'active_model': 'project.issue', 'active_id': ref("crm_case_buginaccountsmodule0"), 'active_ids': [ref("crm_case_buginaccountsmodule0")]})
vals = self.default_get(cr, uid , [], context=ctx)
try:
- new_id = self.create(cr, uid, {'email_to': 'Robert_Adersen@yahoo.com', 'subject': 'Regarding error in account module we nees more details'})
+ new_id = self.create(cr, uid, {'email_from': 'support@mycompany.com','email_to': 'Robert_Adersen@yahoo.com', 'subject': 'Regarding error in account module we nees more details'})
self.send_mail(cr, uid, [new_id], context=ctx)
except Exception, e:
pass
@@ -54,4 +54,4 @@
I Check state of Issue after closed.
-
!assert {model: project.issue, id: crm_case_buginaccountsmodule0, severity: error, string: Issue should be in done state}:
- - state == 'done'
\ No newline at end of file
+ - state == 'done'
From 4a6fea38958ef1bf31e0ce90a7338559c26a06d5 Mon Sep 17 00:00:00 2001
From: niv-openerp
Date: Wed, 14 Dec 2011 14:10:27 +0100
Subject: [PATCH 090/135] [fix] small css bug
bzr revid: nicolas.vanhoren@openerp.com-20111214131027-8sqbng7rp84nez1h
---
addons/point_of_sale/static/src/js/pos.js | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js
index 1798caae868..bc473dd4745 100644
--- a/addons/point_of_sale/static/src/js/pos.js
+++ b/addons/point_of_sale/static/src/js/pos.js
@@ -1191,12 +1191,11 @@ openerp.point_of_sale = function(db) {
});
this.$element.find('#steps').buttonset();
-
- $('.oe_toggle_secondary_menu').hide();
- $('.oe_footer').hide();
return pos.ready.then( function() {
pos.app = new App(self.$element);
+ $('.oe_toggle_secondary_menu').hide();
+ $('.oe_footer').hide();
});
},
changed_pending_operations: function () {
From ce67d2252c6c4f3e615f7aa1bda6e1578c0c13e2 Mon Sep 17 00:00:00 2001
From: Fabien Meghazi
Date: Wed, 14 Dec 2011 14:23:06 +0100
Subject: [PATCH 091/135] [FIX] Make Field boolean readonly inherit of form's
view boolean Field
bzr revid: fme@openerp.com-20111214132306-l33r94vm16lpxeko
---
addons/web/static/src/js/view_form.js | 28 ++++++++++++---------------
addons/web/static/src/js/view_page.js | 7 ++++---
2 files changed, 16 insertions(+), 19 deletions(-)
diff --git a/addons/web/static/src/js/view_form.js b/addons/web/static/src/js/view_form.js
index fef32df4a90..5908dc67dc6 100644
--- a/addons/web/static/src/js/view_form.js
+++ b/addons/web/static/src/js/view_form.js
@@ -619,8 +619,8 @@ openerp.web.form.SidebarAttachments = openerp.web.Widget.extend({
var $e = $(e.target);
if ($e.val() != '') {
this.$element.find('form.oe-binary-form').submit();
- $e.parent().find('input[type=file]').attr('disabled', 'true');
- $e.parent().find('button').attr('disabled', 'true').find('img, span').toggle();
+ $e.parent().find('input[type=file]').prop('disabled', true);
+ $e.parent().find('button').prop('disabled', true).find('img, span').toggle();
}
},
on_attachment_delete: function(e) {
@@ -1094,13 +1094,9 @@ openerp.web.form.WidgetButton = openerp.web.form.Widget.extend({
this.check_disable();
},
check_disable: function() {
- if (this.readonly || this.force_disabled || !this.view.is_interactible_record()) {
- this.$element.find("button").attr("disabled", "disabled");
- this.$element.find("button").css("color", "grey");
- } else {
- this.$element.find("button").removeAttr("disabled");
- this.$element.find("button").css("color", "");
- }
+ var disabled = (this.readonly || this.force_disabled || !this.view.is_interactible_record());
+ this.$element.find('button').prop('disabled', disabled);
+ this.$element.find("button").css('color', disabled ? 'grey' : '');
}
});
@@ -1268,7 +1264,7 @@ openerp.web.form.FieldChar = openerp.web.form.Field.extend({
},
update_dom: function() {
this._super.apply(this, arguments);
- this.$element.find('input').attr('disabled', this.readonly);
+ this.$element.find('input').prop('disabled', this.readonly);
},
set_value_from_ui: function() {
this.value = openerp.web.parse_value(this.$element.find('input').val(), this);
@@ -1392,7 +1388,7 @@ openerp.web.DateTimeWidget = openerp.web.Widget.extend({
},
set_readonly: function(readonly) {
this.readonly = readonly;
- this.$input.attr('disabled', this.readonly);
+ this.$input.prop('disabled', this.readonly);
this.$element.find('img.oe_datepicker_trigger').toggleClass('oe_input_icon_disabled', readonly);
},
is_valid: function(required) {
@@ -1479,7 +1475,7 @@ openerp.web.form.FieldText = openerp.web.form.Field.extend({
},
update_dom: function() {
this._super.apply(this, arguments);
- this.$element.find('textarea').attr('disabled', this.readonly);
+ this.$element.find('textarea').prop('disabled', this.readonly);
},
set_value_from_ui: function() {
this.value = openerp.web.parse_value(this.$element.find('textarea').val(), this);
@@ -1516,7 +1512,7 @@ openerp.web.form.FieldBoolean = openerp.web.form.Field.extend({
},
update_dom: function() {
this._super.apply(this, arguments);
- this.$element.find('input').attr('disabled', this.readonly);
+ this.$element.find('input').prop('disabled', this.readonly);
},
focus: function() {
this.$element.find('input').focus();
@@ -1599,7 +1595,7 @@ openerp.web.form.FieldSelection = openerp.web.form.Field.extend({
},
update_dom: function() {
this._super.apply(this, arguments);
- this.$element.find('select').attr('disabled', this.readonly);
+ this.$element.find('select').prop('disabled', this.readonly);
},
validate: function() {
var value = this.values[this.$element.find('select')[0].selectedIndex];
@@ -1948,7 +1944,7 @@ openerp.web.form.FieldMany2One = openerp.web.form.Field.extend({
},
update_dom: function() {
this._super.apply(this, arguments);
- this.$input.attr('disabled', this.readonly);
+ this.$input.prop('disabled', this.readonly);
}
});
@@ -2905,7 +2901,7 @@ openerp.web.form.FieldBinaryFile = openerp.web.form.FieldBinary.extend({
update_dom: function() {
this._super.apply(this, arguments);
this.$element.find('.oe-binary-file-set, .oe-binary-file-clear').toggle(!this.readonly);
- this.$element.find('input[type=text]').attr('disabled', this.readonly);
+ this.$element.find('input[type=text]').prop('disabled', this.readonly);
},
set_value: function(value) {
this._super.apply(this, arguments);
diff --git a/addons/web/static/src/js/view_page.js b/addons/web/static/src/js/view_page.js
index abcfb5131dd..40ca1176c79 100644
--- a/addons/web/static/src/js/view_page.js
+++ b/addons/web/static/src/js/view_page.js
@@ -102,9 +102,10 @@ openerp.web.page = function (openerp) {
this._super(s[2]);
}
});
- openerp.web.page.FieldBooleanReadonly = openerp.web.page.FieldCharReadonly.extend({
- set_value: function (value) {
- this._super(value ? '\u2611' : '\u2610');
+ openerp.web.page.FieldBooleanReadonly = openerp.web.form.FieldBoolean.extend({
+ update_dom: function() {
+ this._super.apply(this, arguments);
+ this.$element.find('input').prop('disabled', true);
}
});
openerp.web.page.FieldSelectionReadonly = openerp.web.page.FieldReadonly.extend({
From a5850d82a779d674ebd7bc159df72193ec861a99 Mon Sep 17 00:00:00 2001
From: Fabien Meghazi
Date: Wed, 14 Dec 2011 15:17:29 +0100
Subject: [PATCH 092/135] [IMP] o2m: do not display viewmanager header when
only one view defined
bzr revid: fme@openerp.com-20111214141729-2oj23myi1ot42i21
---
addons/web/static/src/xml/base.xml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index 8ab323e776a..a861c3c93f5 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -483,6 +483,10 @@
+
+
+ this.attr('t-if', 'views.length != 1');
+
From efc5cabe7a85918fc87d21bf8a300ee24426f8a5 Mon Sep 17 00:00:00 2001
From: Olivier Dony
Date: Wed, 14 Dec 2011 15:33:21 +0100
Subject: [PATCH 093/135] [FIX] share: sent share notifications immediately w/o
queuing
lp bug: https://launchpad.net/bugs/903058 fixed
bzr revid: odo@openerp.com-20111214143321-l9r6mdqe2fc7m4t0
---
addons/share/wizard/share_wizard.py | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/addons/share/wizard/share_wizard.py b/addons/share/wizard/share_wizard.py
index 5f33f02f9e5..3466b372f07 100644
--- a/addons/share/wizard/share_wizard.py
+++ b/addons/share/wizard/share_wizard.py
@@ -689,7 +689,7 @@ class share_wizard(osv.osv_memory):
raise osv.except_osv(_('Email required'), _('The current user must have an email address configured in User Preferences to be able to send outgoing emails.'))
# TODO: also send an HTML version of this mail
- emails_sent = 0
+ msg_ids = []
for result_line in wizard_data.result_line_ids:
email_to = result_line.user_id.user_email
subject = wizard_data.name
@@ -718,16 +718,16 @@ class share_wizard(osv.osv_memory):
body += _("OpenERP is a powerful and user-friendly suite of Business Applications (CRM, Sales, HR, etc.)\n"
"It is open source and can be found on http://www.openerp.com.")
- if mail_message.schedule_with_attach(cr, uid,
- user.user_email,
- [email_to],
- subject,
- body,
- model='share.wizard'):
- emails_sent += 1
- else:
- self._logger.warning('Failed to send share notification from %s to %s, ignored', user.user_email, email_to)
- self._logger.info('%s share notification(s) successfully sent.', emails_sent)
+ msg_ids.append(mail_message.schedule_with_attach(cr, uid,
+ user.user_email,
+ [email_to],
+ subject,
+ body,
+ model='share.wizard',
+ context=context))
+ # force direct delivery, as users expect instant notification
+ mail_message.send(cr, uid, msg_ids, context=context)
+ self._logger.info('%d share notification(s) sent.', len(msg_ids))
share_wizard()
class share_result_line(osv.osv_memory):
From e557a4b4c0d720c778828b73eae19920e9cf8f66 Mon Sep 17 00:00:00 2001
From: Xavier Morel
Date: Wed, 14 Dec 2011 15:43:17 +0100
Subject: [PATCH 094/135] [FIX] don't display add/remove buttons in
group_by_no_leaf views
bzr revid: xmo@openerp.com-20111214144317-7k0u4s2xg9ochpte
---
addons/web/static/src/js/view_list.js | 2 ++
addons/web/static/src/xml/base.xml | 4 ++--
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/addons/web/static/src/js/view_list.js b/addons/web/static/src/js/view_list.js
index 059bc020682..bf423434ecc 100644
--- a/addons/web/static/src/js/view_list.js
+++ b/addons/web/static/src/js/view_list.js
@@ -79,6 +79,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView#
self.compute_aggregates();
});
+ this.no_leaf = false;
},
/**
* Retrieves the view's number of records per page (|| section)
@@ -473,6 +474,7 @@ openerp.web.ListView = openerp.web.View.extend( /** @lends openerp.web.ListView#
if (_.isEmpty(group_by) && !context['group_by_no_leaf']) {
group_by = null;
}
+ this.no_leaf = !!context['group_by_no_leaf'];
this.reload_view(!!group_by, context).then(
$.proxy(this, 'reload_content'));
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index a861c3c93f5..cf517fef490 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -573,7 +573,7 @@
-
+
@@ -634,7 +634,7 @@
this.prepend($title);
-