commit
d47f1b6650
|
@ -30,6 +30,8 @@
|
|||
Third party accounting
|
||||
Taxes management
|
||||
Budgets
|
||||
Customer and Supplier Invoices
|
||||
Bank statements
|
||||
""",
|
||||
"website" : "http://www.openerp.com",
|
||||
"category" : "Generic Modules/Accounting",
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
##############################################################################
|
||||
{
|
||||
"name" : "report_account_analytic",
|
||||
"description": """Modifiy the account analytic view to show
|
||||
"description": """Modify account analytic view to show
|
||||
important data for project manager of services companies.
|
||||
Add menu to show relevant information for each manager.""",
|
||||
"version" : "1.0",
|
||||
|
|
|
@ -30,9 +30,9 @@
|
|||
|
||||
1. You can compare the balance sheet for different years.
|
||||
|
||||
2. You can set the cash or percentage comparision between two years.
|
||||
2. You can set the cash or percentage comparison between two years.
|
||||
|
||||
3. You can set the referencial account for the percentage comparision for particular years.
|
||||
3. You can set the referential account for the percentage comparison for particular years.
|
||||
|
||||
4. You can select periods as an actual date or periods as creation date.
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
"author" : "Tiny",
|
||||
"website" : "http://www.openerp.com",
|
||||
"category" : "Generic Modules/Accounting",
|
||||
"description": """This module allow accountants to manage analytic and crossovered budgets.
|
||||
"description": """This module allows accountants to manage analytic and crossovered budgets.
|
||||
|
||||
Once the Master Budgets and the Budgets defined (in Financial
|
||||
Management/Budgets/), the Project Managers can set the planned amount on each
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
from osv import fields
|
||||
from osv import osv
|
||||
import time
|
||||
|
@ -110,7 +109,7 @@ class payment_order(osv.osv):
|
|||
('now', 'Directly'),
|
||||
('due', 'Due date'),
|
||||
('fixed', 'Fixed date')
|
||||
], "Prefered date", change_default=True, required=True,help="Choose an option for the Payment Order:'Fixed' stands for a date specified by you.'Directly' stands for the direct execution.'Due date' stands for the scheduled date of execution."),
|
||||
], "Preferred date", change_default=True, required=True,help="Choose an option for the Payment Order:'Fixed' stands for a date specified by you.'Directly' stands for the direct execution.'Due date' stands for the scheduled date of execution."),
|
||||
'date_created': fields.date('Creation date', readonly=True),
|
||||
'date_done': fields.date('Execution date', readonly=True),
|
||||
}
|
||||
|
@ -401,13 +400,13 @@ class payment_line(osv.osv):
|
|||
# 'reference': fields.function(select_by_name, string="Ref", method=True,
|
||||
# type='char'),
|
||||
'ml_maturity_date': fields.function(_get_ml_maturity_date, method=True, type='date', string='Maturity Date'),
|
||||
'ml_inv_ref': fields.function(_get_ml_inv_ref, method=True, type='many2one', relation='account.invoice', string='Invoice Ref'),
|
||||
'ml_inv_ref': fields.function(_get_ml_inv_ref, method=True, type='many2one', relation='account.invoice', string='Invoice Ref.'),
|
||||
'info_owner': fields.function(info_owner, string="Owner Account", method=True, type="text",help='Address of the Main Partner'),
|
||||
'info_partner': fields.function(info_partner, string="Destination Account", method=True, type="text",help='Address of the Ordering Customer.'),
|
||||
# 'partner_payable': fields.function(partner_payable, string="Partner payable", method=True, type='float'),
|
||||
# 'value_date': fields.function(_value_date, string='Value Date',
|
||||
# method=True, type='date'),
|
||||
'date': fields.date('Payment Date',help="If no payment date is specified, the bank will treat this payment line direclty"),
|
||||
'date': fields.date('Payment Date',help="If no payment date is specified, the bank will treat this payment line directly"),
|
||||
'create_date': fields.datetime('Created' ,readonly=True),
|
||||
'state': fields.selection([('normal','Free'), ('structured','Structured')], 'Communication Type', required=True)
|
||||
}
|
||||
|
@ -430,6 +429,7 @@ class payment_line(osv.osv):
|
|||
if move_line_id:
|
||||
line = self.pool.get('account.move.line').browse(cr,uid,move_line_id)
|
||||
data['amount_currency']=line.amount_to_pay
|
||||
|
||||
res = self.onchange_amount(cr, uid, ids, data['amount_currency'], currency,
|
||||
company_currency, context)
|
||||
if res:
|
||||
|
@ -460,12 +460,12 @@ class payment_line(osv.osv):
|
|||
|
||||
return {'value': data}
|
||||
|
||||
def onchange_amount(self,cr,uid,ids,amount,currency,cmpny_currency,context=None):
|
||||
if not amount:
|
||||
return {}
|
||||
def onchange_amount(self, cr, uid, ids, amount, currency, cmpny_currency, context=None):
|
||||
if (not amount) or (not cmpny_currency):
|
||||
return {'value': {'amount':False}}
|
||||
res = {}
|
||||
currency_obj = self.pool.get('res.currency')
|
||||
company_amount = currency_obj.compute(cr, uid, currency, cmpny_currency,amount)
|
||||
company_amount = currency_obj.compute(cr, uid, currency, cmpny_currency, amount)
|
||||
res['amount'] = company_amount
|
||||
return {'value': res}
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
<report auto="True" id="payment_order1" model="payment.order" name="payement.order" rml="account_payment/report/order.rml" string="Payment Order"/>
|
||||
<report auto="True" id="payment_order1" model="payment.order" name="payment.order" rml="account_payment/report/order.rml" string="Payment Order"/>
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
|
@ -220,14 +220,14 @@
|
|||
<notebook>
|
||||
<page string="Payment">
|
||||
<field name="order_id" select="1"/>
|
||||
<field name="move_line_id" on_change="onchange_move_line(move_line_id,parent.mode, currency, company_currency)" select="1" domain="[('reconcile_id','=', False), ('credit', '>',0),('amount_to_pay','>',0)] "/>
|
||||
<field name="move_line_id" on_change="onchange_move_line(move_line_id, False, currency, company_currency)" select="1" domain="[('reconcile_id','=', False), ('credit', '>',0),('amount_to_pay','>',0)] "/>
|
||||
<separator colspan="4" string="Transaction Information"/>
|
||||
<field name="date"/>
|
||||
<group colspan="2">
|
||||
<field name="amount_currency" select="2" on_change="onchange_amount(amount_currency,currency,comapny_currency)"/>
|
||||
<field name="currency" nolabel="1"/>
|
||||
</group>
|
||||
<field name="partner_id" on_change="onchange_partner(partner_id)" select="1"/>
|
||||
<field name="partner_id" on_change="onchange_partner(partner_id, False)" select="1"/>
|
||||
<field domain="[('partner_id','=',partner_id)]" name="bank_id"/>
|
||||
<separator colspan="2" string="Owner Account"/>
|
||||
<separator colspan="2" string="Desitination Account"/>
|
||||
|
|
|
@ -31,4 +31,4 @@ class payment_order(report_sxw.rml_parse):
|
|||
'time': time,
|
||||
|
||||
})
|
||||
report_sxw.report_sxw('report.payment.order', 'payement.order', 'addons/account_payment/report/payment_order.rml', parser=payment_order,header=False)
|
||||
report_sxw.report_sxw('report.payment.order', 'payment.order', 'addons/account_payment/report/payment_order.rml', parser=payment_order,header=False)
|
|
@ -67,22 +67,24 @@ def _populate_statement(obj, cursor, user, data, context):
|
|||
|
||||
for line in line_obj.browse(cursor, user, line_ids, context=context):
|
||||
ctx = context.copy()
|
||||
ctx['date'] = line.value_date
|
||||
ctx['date'] = line.ml_maturity_date # was value_date earlier,but this field exists no more now
|
||||
amount = currency_obj.compute(cursor, user, line.currency.id,
|
||||
statement.currency.id, line.amount_currency, context=ctx)
|
||||
reconcile_id = statement_reconcile_obj.create(cursor, user, {
|
||||
'line_ids': [(6, 0, [line.move_line_id.id])]
|
||||
}, context=context)
|
||||
statement_line_obj.create(cursor, user, {
|
||||
'name': line.order_id.reference or '?',
|
||||
'amount': - amount,
|
||||
'type': 'supplier',
|
||||
'partner_id': line.partner_id.id,
|
||||
'account_id': line.move_line_id.account_id.id,
|
||||
'statement_id': statement.id,
|
||||
'ref': line.reference,
|
||||
'reconcile_id': reconcile_id,
|
||||
}, context=context)
|
||||
|
||||
if line.move_line_id:
|
||||
reconcile_id = statement_reconcile_obj.create(cursor, user, {
|
||||
'line_ids': [(6, 0, [line.move_line_id.id])]
|
||||
}, context=context)
|
||||
statement_line_obj.create(cursor, user, {
|
||||
'name': line.order_id.reference or '?',
|
||||
'amount': - amount,
|
||||
'type': 'supplier',
|
||||
'partner_id': line.partner_id.id,
|
||||
'account_id': line.move_line_id.account_id.id,
|
||||
'statement_id': statement.id,
|
||||
'ref': line.communication,
|
||||
'reconcile_id': reconcile_id,
|
||||
}, context=context)
|
||||
return {}
|
||||
|
||||
|
||||
|
|
|
@ -24,7 +24,10 @@
|
|||
"version" : "1.0",
|
||||
"depends" : ["account"],
|
||||
"author" : "Tiny",
|
||||
"description": """Financial and accounting reporting""",
|
||||
"description": """Financial and accounting reporting
|
||||
Fiscal statements
|
||||
Indicators
|
||||
""",
|
||||
"website" : "http://www.openerp.com",
|
||||
"category" : "Generic Modules/Accounting",
|
||||
"init_xml" : [ ],
|
||||
|
|
|
@ -24,7 +24,8 @@
|
|||
"version" : "1.0",
|
||||
"depends" : ["account"],
|
||||
"author" : "Tiny",
|
||||
"description": """Financial and accounting reporting""",
|
||||
"description": """Financial and accounting reporting
|
||||
Balance Sheet Report""",
|
||||
"category" : "Generic Modules/Accounting",
|
||||
"init_xml" : [ ],
|
||||
"demo_xml" : [ ],
|
||||
|
|
|
@ -57,7 +57,7 @@
|
|||
<field name="view_type">form</field>
|
||||
<field name="view_id" ref="view_account_report_bs_form"/>
|
||||
</record>
|
||||
<menuitem name="Balance Sheet Rrport Form" id="bs_report_action_form" action="acc_bs_report_action_form" parent="menu_finan_config_BSheet"/>
|
||||
<menuitem name="Balance Sheet Report Form" id="bs_report_action_form" action="acc_bs_report_action_form" parent="menu_finan_config_BSheet"/>
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
"author" : "Tiny",
|
||||
"description": """
|
||||
|
||||
This module allows you to define what is the defaut invoicing rate for a specific journal on a given account. This is mostly used when a user encode his timesheet: the values are retrieved and the fields are auto-filled... but the possibility to change these values is still available.
|
||||
This module allows you to define what is the default invoicing rate for a specific journal on a given account. This is mostly used when a user encode his timesheet: the values are retrieved and the fields are auto-filled... but the possibility to change these values is still available.
|
||||
|
||||
Obviously if no data has been recorded for the current account, the default value is given as usual by the account data so that this module is perfectly compatible with older configurations.
|
||||
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
"author" : "Tiny",
|
||||
"description": """
|
||||
|
||||
This module allows you to define what is the defaut function of a specific user on a given account. This is mostly used when a user encode his timesheet: the values are retrieved and the fields are auto-filled... but the possibility to change these values is still available.
|
||||
This module allows you to define what is the default function of a specific user on a given account. This is mostly used when a user encode his timesheet: the values are retrieved and the fields are auto-filled... but the possibility to change these values is still available.
|
||||
|
||||
Obviously if no data has been recorded for the current account, the default value is given as usual by the employee data so that this module is perfectly compatible with older configurations.
|
||||
|
||||
|
|
|
@ -26,7 +26,8 @@
|
|||
"website" : "http://www.openerp.com",
|
||||
"author" : "Tiny",
|
||||
"init_xml" : [],
|
||||
"description": "Allows the administrator to track every user operations on all objects of the system.",
|
||||
"description": """Allows the administrator to track every user operations on all objects of the system.
|
||||
Subscribe Rules for read, write, create and delete on objects and check logs""",
|
||||
"category" : "Generic Modules/Others",
|
||||
"update_xml" : ["audittrail_view.xml",
|
||||
"security/ir.model.access.csv",
|
||||
|
|
|
@ -30,14 +30,13 @@
|
|||
|
||||
It lets you define
|
||||
*contacts unrelated to a partner,
|
||||
*contacts working at several adresses (possibly for different partners),
|
||||
*contacts working at several addresses (possibly for different partners),
|
||||
*contacts with possibly different functions for each of its job's addresses
|
||||
|
||||
It also add new menuitems located in
|
||||
It also add new menu items located in
|
||||
Partners \ Contacts
|
||||
Partners \ Functions
|
||||
|
||||
|
||||
Pay attention that this module converts the existing addresses into "addresses + contacts". It means that some fields of the addresses will be missing (like the contact name), since these are supposed to be defined in an other object.
|
||||
""",
|
||||
"depends" : ["base", "process"],
|
||||
|
|
|
@ -27,11 +27,9 @@
|
|||
"description": """"
|
||||
This module's aim is to check the quality of other modules.
|
||||
|
||||
It defines a wizard on the list of modules in OpenERP, which allow you to evaluate them on different critera such as: the respect of OpenERP coding standards, the speed efficency...
|
||||
|
||||
|
||||
This module also provide generic framework to define your own quality test. For further info, coders may take a look into base_module_quality\README.txt
|
||||
It defines a wizard on the list of modules in OpenERP, which allow you to evaluate them on different criteria such as: the respect of OpenERP coding standards, the speed efficiency...
|
||||
|
||||
This module also provides generic framework to define your own quality test. For further info, coders may take a look into base_module_quality\README.txt
|
||||
""",
|
||||
"init_xml" : [],
|
||||
"update_xml" : ["base_module_quality_wizard.xml", "security/ir.model.access.csv",],
|
||||
|
|
|
@ -20,40 +20,70 @@
|
|||
#
|
||||
##############################################################################
|
||||
import pooler
|
||||
import os
|
||||
from tools import config
|
||||
|
||||
class abstract_quality_check(object):
|
||||
'''
|
||||
This Class provide...
|
||||
'''
|
||||
|
||||
#This float have to store the rating of the module.
|
||||
#Used to compute the final score (average of all scores).
|
||||
score = 0.0
|
||||
|
||||
#This char have to store the result.
|
||||
#Used to display the result of the test.
|
||||
result = ""
|
||||
|
||||
#This char have to store the result with more details.
|
||||
#Used to provide more details if necessary.
|
||||
result_details = ""
|
||||
|
||||
#This bool defines if the test can be run only if the module is installed.
|
||||
#True => the module have to be installed.
|
||||
#False => the module can be uninstalled.
|
||||
bool_installed_only = True
|
||||
# #This float have to store the rating of the module.
|
||||
# #Used to compute the final score (average of all scores).
|
||||
# score = 0.0
|
||||
#
|
||||
# #This char have to store the result.
|
||||
# #Used to display the result of the test.
|
||||
# result = ""
|
||||
#
|
||||
# #This char have to store the result with more details.
|
||||
# #Used to provide more details if necessary.
|
||||
# result_details = ""
|
||||
#
|
||||
# #This bool defines if the test can be run only if the module is installed.
|
||||
# #True => the module have to be installed.
|
||||
# #False => the module can be uninstalled.
|
||||
# bool_installed_only = True
|
||||
|
||||
def __init__(self):
|
||||
'''
|
||||
this method should initialize the var
|
||||
'''
|
||||
raise 'Not Implemented'
|
||||
#This float have to store the rating of the module.
|
||||
#Used to compute the final score (average of all scores).
|
||||
self.score = 0.0
|
||||
|
||||
def run_test(self, cr, uid, module_path=""):
|
||||
#This char have to store the result.
|
||||
#Used to display the result of the test.
|
||||
self.result = ""
|
||||
|
||||
#This char have to store the result with more details.
|
||||
#Used to provide more details if necessary.
|
||||
self.result_details = ""
|
||||
|
||||
#This bool defines if the test can be run only if the module is installed.
|
||||
#True => the module have to be installed.
|
||||
#False => the module can be uninstalled.
|
||||
self.bool_installed_only = True
|
||||
|
||||
self.tests = []
|
||||
self.list_folders = os.listdir(config['addons_path']+'/base_module_quality/')
|
||||
for item in self.list_folders:
|
||||
self.item = item
|
||||
path = config['addons_path']+'/base_module_quality/'+item
|
||||
if os.path.exists(path+'/'+item+'.py') and item not in ['report', 'wizard', 'security']:
|
||||
item2 = 'base_module_quality.' + item +'.' + item
|
||||
x = __import__(item2)
|
||||
x2 = getattr(x, item)
|
||||
x3 = getattr(x2, item)
|
||||
self.tests.append(x3)
|
||||
# raise 'Not Implemented'
|
||||
|
||||
def run_test(self, cr, uid, module_path="", module_state=""):
|
||||
'''
|
||||
this method should do the test and fill the score, result and result_details var
|
||||
'''
|
||||
raise 'Not Implemented'
|
||||
# raise 'Not Implemented'
|
||||
|
||||
def get_objects(self, cr, uid, module):
|
||||
# This function returns all object of the given module..
|
||||
|
@ -77,5 +107,34 @@ class abstract_quality_check(object):
|
|||
result_ids[obj] = ids
|
||||
return result_ids
|
||||
|
||||
def format_table(self, test='', header=[], data_list=[]):
|
||||
res_format = {}
|
||||
if test=='method':
|
||||
detail = ""
|
||||
detail += "\n===Method Test===\n"
|
||||
res_format['detail'] = detail
|
||||
if not data_list[2]:
|
||||
detail += ('{| border="1" cellspacing="0" cellpadding="5" align="left" \n! %-40s \n! %-16s \n! %-20s \n! %-16s ') % (header[0].ljust(40), header[1].ljust(16), header[2].ljust(20), header[3].ljust(16))
|
||||
for res in data_list[1]:
|
||||
detail += ('\n|-\n| %s \n| %s \n| %s \n| %s ') % (res, data_list[1][res][0], data_list[1][res][1], data_list[1][res][2])
|
||||
res_format['detail'] = detail + '\n|}'
|
||||
res_format['summary'] = data_list[0]
|
||||
elif test=='pylint':
|
||||
res_format['summary'] = data_list[0]
|
||||
res_format['detail'] = data_list[1]
|
||||
elif test=='speed':
|
||||
detail = ""
|
||||
detail += "\n===Speed Test===\n"
|
||||
res_format['detail'] = detail
|
||||
if not data_list[2]:
|
||||
detail += ('{| border="1" cellspacing="0" cellpadding="5" align="left" \n! %-40s \n! %-10s \n! %-10s \n! %-10s \n! %-10s \n! %-20s') % (header[0].ljust(40), header[1].ljust(10), header[2].ljust(10), header[3].ljust(10), header[4].ljust(10), header[5].ljust(20))
|
||||
for data in data_list[1]:
|
||||
detail += ('\n|-\n| %s \n| %s \n| %s \n| %s \n| %s \n| %s ') % (data[0], data[1], data[2], data[3], data[4], data[5])
|
||||
res_format['detail'] = detail + '\n|}\n'
|
||||
res_format['summary'] = data_list[0]
|
||||
return res_format
|
||||
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
|
|
@ -9,8 +9,20 @@
|
|||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Result">
|
||||
<separator string="Summary" colspan="4"/>
|
||||
<field name="general_info" widget="text_wiki" nolabel="1" colspan="4" height="350" width="800"/>
|
||||
<notebook>
|
||||
<page string="Summary">
|
||||
<!-- <separator string="Summary" colspan="4"/>-->
|
||||
<field name="general_info" widget="text_wiki" nolabel="1" colspan="4" height="350" width="800"/>
|
||||
</page>
|
||||
<page string="Detail">
|
||||
<!-- <separator string="Detail" colspan="4"/>-->
|
||||
<field name="detail" widget="text_wiki" nolabel="1" colspan="4" height="350" width="800"/>
|
||||
</page>
|
||||
<page string="Verbose detail">
|
||||
<!-- <separator string="Verbose detail" colspan="4"/>-->
|
||||
<field name="verbose_detail" widget="text_wiki" nolabel="1" colspan="4" height="350" width="800"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
|
|
@ -30,23 +30,24 @@ import pooler
|
|||
class quality_test(base_module_quality.abstract_quality_check):
|
||||
|
||||
def __init__(self):
|
||||
self.result = """
|
||||
===Method Test===:
|
||||
|
||||
This test checks if the module classes are raising exception when calling basic methods or no.
|
||||
|
||||
"""
|
||||
super(quality_test, self).__init__()
|
||||
# self.result = """
|
||||
#===Method Test===:
|
||||
#
|
||||
#This test checks if the module classes are raising exception when calling basic methods or no.
|
||||
#
|
||||
#"""
|
||||
self.bool_installed_only = True
|
||||
return None
|
||||
|
||||
def run_test(self, cr, uid, module_path):
|
||||
def run_test(self, cr, uid, module_path, module_state):
|
||||
pool = pooler.get_pool(cr.dbname)
|
||||
module_name = module_path.split('/')[-1]
|
||||
obj_list = self.get_objects(cr, uid, module_name)
|
||||
result = {}
|
||||
ok_count = 0
|
||||
ex_count = 0
|
||||
|
||||
error = False
|
||||
for obj in obj_list:
|
||||
temp = []
|
||||
try:
|
||||
|
@ -71,13 +72,26 @@ This test checks if the module classes are raising exception when calling basic
|
|||
temp.append('Exception')
|
||||
ex_count += 1
|
||||
result[obj] = temp
|
||||
self.result += ('{| border="1" cellspacing="0" cellpadding="5" align="left" \n! %-40s \n! %-16s \n! %-20s \n! %-16s ') % ('Object Name'.ljust(40), 'search()'.ljust(16), 'fields_view_get()'.ljust(20), 'read()'.ljust(16))
|
||||
|
||||
for res in result:
|
||||
self.result += ('\n|-\n| %s \n| %s \n| %s \n| %s ') % (res, result[res][0],result[res][1], result[res][2])
|
||||
|
||||
self.result += '\n|}'
|
||||
# self.result += ('{| border="1" cellspacing="0" cellpadding="5" align="left" \n! %-40s \n! %-16s \n! %-20s \n! %-16s ') % ('Object Name'.ljust(40), 'search()'.ljust(16), 'fields_view_get()'.ljust(20), 'read()'.ljust(16))
|
||||
header_list = ['Object Name', 'search()', 'fields_view_get', 'read']
|
||||
# for res in result:
|
||||
# self.result += ('\n|-\n| %s \n| %s \n| %s \n| %s ') % (res, result[res][0],result[res][1], result[res][2])
|
||||
# self.result += '\n|}'
|
||||
self.score = (ok_count + ex_count) and float(ok_count)/float(ok_count + ex_count) or 0.0
|
||||
if not self.bool_installed_only or module_state=="installed":
|
||||
summary = """
|
||||
===Method Test===:
|
||||
|
||||
This test checks if the module classes are raising exception when calling basic methods or no.
|
||||
|
||||
""" + "Score: " + str(self.score) + "/10\n"
|
||||
else:
|
||||
summary =""" \n===Method Test===:
|
||||
|
||||
The module has to be installed before running this test.\n\n """
|
||||
header_list = ""
|
||||
error = True
|
||||
self.result = self.format_table(test='method', header=header_list, data_list=[summary,result,error])
|
||||
return None
|
||||
|
||||
|
||||
|
|
|
@ -30,16 +30,17 @@ from base_module_quality import base_module_quality
|
|||
class quality_test(base_module_quality.abstract_quality_check):
|
||||
|
||||
def __init__(self):
|
||||
self.result = """
|
||||
===Pylint Test===:
|
||||
|
||||
This test checks if the module satisfy the current coding standard used by OpenERP.
|
||||
|
||||
"""
|
||||
super(quality_test, self).__init__()
|
||||
# self.result = """
|
||||
#===Pylint Test===:
|
||||
#
|
||||
# This test checks if the module satisfy the current coding standard used by OpenERP.
|
||||
#
|
||||
#"""
|
||||
self.bool_installed_only = False
|
||||
return None
|
||||
|
||||
def run_test(self, cr, uid, module_path):
|
||||
def run_test(self, cr, uid, module_path, module_state):
|
||||
config_file_path = config['addons_path']+'/base_module_quality/pylint_test/pylint_test_config.txt'
|
||||
list_files = os.listdir(module_path)
|
||||
for i in list_files:
|
||||
|
@ -50,6 +51,9 @@ class quality_test(base_module_quality.abstract_quality_check):
|
|||
|
||||
n = 0
|
||||
score = 0.0
|
||||
detail = ""
|
||||
detail = "\n===Pylint Test===\n"
|
||||
error = False
|
||||
for file in list_files:
|
||||
if file.split('.')[-1] == 'py' and not file.endswith('__init__.py') and not file.endswith('__terp__.py'):
|
||||
file_path = os.path.join(module_path, file)
|
||||
|
@ -64,13 +68,28 @@ class quality_test(base_module_quality.abstract_quality_check):
|
|||
|
||||
try:
|
||||
score += float(res[leftchar+1:rightchar])
|
||||
self.result += file + ": " + res[leftchar+1:rightchar] + "/10\n"
|
||||
# self.result += file + ": " + res[leftchar+1:rightchar] + "/10\n"
|
||||
detail += file + ": " + res[leftchar+1:rightchar] + "/10\n"
|
||||
except:
|
||||
score += 0
|
||||
self.result += file + ": Unable to parse the result. Check the details.\n"
|
||||
|
||||
# self.result += file + ": Unable to parse the result. Check the details.\n"
|
||||
detail += file + ": Unable to parse the result. Check the details.\n"
|
||||
self.result_details += res
|
||||
self.score = n and score / n or score
|
||||
if not self.bool_installed_only or module_state=="installed":
|
||||
summary ="""
|
||||
===Pylint Test===:
|
||||
|
||||
This test checks if the module satisfy the current coding standard used by OpenERP.
|
||||
|
||||
""" + "Score: " + str(self.score) + "/10\n"
|
||||
else:
|
||||
summary =""" \n===Pylint Test===:
|
||||
|
||||
The module has to be installed before running this test.\n\n """
|
||||
header_list = ""
|
||||
error = True
|
||||
self.result = self.format_table(test='pylint', data_list=[summary,detail,error])
|
||||
return None
|
||||
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# lint Python modules using external checkers.
|
||||
#
|
||||
# This is the main checker controling the other ones and the reports
|
||||
# This is the main checker controlling the other ones and the reports
|
||||
# generation. It is itself both a raw checker and an astng checker in order
|
||||
# to:
|
||||
# * handle message activation / deactivation at the module level
|
||||
|
|
|
@ -34,74 +34,83 @@ from base_module_quality import base_module_quality
|
|||
class quality_test(base_module_quality.abstract_quality_check):
|
||||
|
||||
def __init__(self):
|
||||
self.result = """
|
||||
===Speed Test===:
|
||||
|
||||
This test checks the speed of the module.
|
||||
|
||||
"""
|
||||
super(quality_test, self).__init__()
|
||||
# self.result = """
|
||||
#===Speed Test===:
|
||||
#
|
||||
#This test checks the speed of the module.
|
||||
#
|
||||
#"""
|
||||
self.bool_installed_only = True
|
||||
return None
|
||||
|
||||
def run_test(self, cr, uid, module_path):
|
||||
def run_test(self, cr, uid, module_path, module_state):
|
||||
pool = pooler.get_pool(cr.dbname)
|
||||
module_name = module_path.split('/')[-1]
|
||||
self.result+=('{| border="1" cellspacing="0" cellpadding="5" align="left" \n! %-40s \n! %-10s \n! %-10s \n! %-10s \n! %-10s \n! %-20s') % ('Object Name'.ljust(40), 'Size (S)'.ljust(10), '1'.ljust(10), 'S/2'.ljust(10), 'S'.ljust(10), 'Complexity'.ljust(20))
|
||||
# self.result+=('{| border="1" cellspacing="0" cellpadding="5" align="left" \n! %-40s \n! %-10s \n! %-10s \n! %-10s \n! %-10s \n! %-20s') % ('Object Name'.ljust(40), 'Size-Number of Records (S)'.ljust(10), '1'.ljust(10), 'S/2'.ljust(10), 'S'.ljust(10), 'Complexity using query'.ljust(20))
|
||||
header_list = ['Object Name', 'Size-Number of Records (S)', '1', 'S/2', 'S', 'Complexity using query']
|
||||
obj_list = self.get_objects(cr, uid, module_name)
|
||||
obj_counter = 0
|
||||
score = 0
|
||||
obj_ids = self.get_ids(cr, uid, obj_list)
|
||||
detail = ""
|
||||
list1 = []
|
||||
error = False
|
||||
for obj in obj_ids:
|
||||
obj_counter += 1
|
||||
ids = obj_ids[obj]
|
||||
ids = ids[:100]
|
||||
size = len(ids)
|
||||
if size:
|
||||
c1 = time.time()
|
||||
c1 = cr.count
|
||||
|
||||
pool.get(obj).read(cr, uid, ids[0])
|
||||
c2 = time.time()
|
||||
base_time = c2 - c1
|
||||
c1 = time.time()
|
||||
pool.get(obj).read(cr, uid, ids[0])
|
||||
code_base_complexity = cr.count - c1
|
||||
|
||||
pool.get(obj).read(cr, uid, ids[:size/2])
|
||||
c2 = time.time()
|
||||
halfsize_time = c2 - c1
|
||||
c1 = time.time()
|
||||
pool.get(obj).read(cr, uid, ids[:size/2])
|
||||
code_half_complexity = cr.count - c1
|
||||
|
||||
pool.get(obj).read(cr, uid, ids)
|
||||
c2 = time.time()
|
||||
size_time = c2 - c1
|
||||
pool.get(obj).read(cr, uid, ids)
|
||||
code_size_complexity = cr.count - c1
|
||||
|
||||
if size < 5:
|
||||
self.score += -2
|
||||
self.result += ('\n|-\n| %s \n| %s \n| %s \n| %s \n| %s \n| %s ') % (obj, size, base_time, halfsize_time, size_time, "Warning! Not enough demo data")
|
||||
# self.result += ('\n|-\n| %s \n| %s \n| %s \n| %s \n| %s \n| %s ') % (obj, size, code_base_complexity, code_half_complexity, code_size_complexity, "Warning! Not enough demo data")
|
||||
list = [obj, size, code_base_complexity, code_half_complexity, code_size_complexity, "Warning! Not enough demo data"]
|
||||
list1.append(list)
|
||||
else:
|
||||
tolerated_margin = 5/100
|
||||
complexity = "not recognized"
|
||||
if min(size_time,base_time,halfsize_time) != base_time:
|
||||
if code_size_complexity <= (code_base_complexity + size):
|
||||
complexity = "O(1)"
|
||||
score += 10
|
||||
|
||||
score = 10
|
||||
else:
|
||||
k1 = (halfsize_time - base_time)*1000 / ((size/2) - 1)
|
||||
k2 = (size_time - base_time)*1000 / ((size) - 1)
|
||||
tmp = k1 * tolerated_margin
|
||||
if (k1 - tmp) < k2 and k2 < (k1 + tmp):
|
||||
complexity = "O(n)"
|
||||
if round(tmp) == 0:
|
||||
complexity = "O(1)"
|
||||
score += 10
|
||||
else:
|
||||
score += 5
|
||||
else:
|
||||
complexity = "O(n²) or worst"
|
||||
score += 0
|
||||
|
||||
self.result += ('\n|-\n| %s \n| %s \n| %s \n| %s \n| %s \n| %s ') % (obj, size, base_time, halfsize_time, size_time, complexity)
|
||||
complexity = "O(n) or worst"
|
||||
score = 0
|
||||
# self.result += ('\n|-\n| %s \n| %s \n| %s \n| %s \n| %s \n| %s ') % (obj, size, code_base_complexity, code_half_complexity, code_size_complexity, complexity)
|
||||
list = [obj, size, code_base_complexity, code_half_complexity, code_size_complexity, complexity]
|
||||
list1.append(list)
|
||||
else:
|
||||
score += -5
|
||||
self.result += ('\n|-\n| %s \n| %s \n| %s \n| %s \n| %s \n| %s ') % (obj, size, "", "", "", "Warning! Object has no demo data")
|
||||
|
||||
|
||||
self.result += '\n|}\n'
|
||||
# self.result += ('\n|-\n| %s \n| %s \n| %s \n| %s \n| %s \n| %s ') % (obj, size, "", "", "", "Warning! Object has no demo data")
|
||||
list = [obj, size, "", "", "", "Warning! Object has no demo data"]
|
||||
list1.append(list)
|
||||
# self.result += '\n|}\n'
|
||||
self.score = obj_counter and score/obj_counter or 0.0
|
||||
if not self.bool_installed_only or module_state=="installed":
|
||||
summary = """
|
||||
===Speed Test===:
|
||||
|
||||
This test checks the speed of the module.
|
||||
|
||||
"""+ "Score: " + str(self.score) + "/10\n"
|
||||
else:
|
||||
summary =""" \n===Speed Test===:
|
||||
|
||||
The module has to be installed before running this test.\n\n """
|
||||
header_list = ""
|
||||
error = True
|
||||
self.result = self.format_table(test='speed', header=header_list, data_list=[summary,list1, error])
|
||||
return None
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
|
@ -26,7 +26,7 @@ from osv import osv, fields
|
|||
import tools
|
||||
import os
|
||||
|
||||
|
||||
from base_module_quality import base_module_quality
|
||||
#TODO: (utiliser les nouveaux wizards pour heriter la vue et rajouter un onglet par test?)
|
||||
#TODO: implement the speed test
|
||||
#TODO: add cheks: do the class quality_check inherits the class abstract_quality_check?
|
||||
|
@ -56,34 +56,31 @@ class wiz_quality_check(osv.osv_memory):
|
|||
# general_info = ""
|
||||
_name = 'wizard.quality.check'
|
||||
|
||||
|
||||
def _check(self, cr, uid, data, context={}):
|
||||
string_ret = ""
|
||||
string_detail = ""
|
||||
from tools import config
|
||||
data['ids'] = data.get('module_id', False)
|
||||
pool = pooler.get_pool(cr.dbname)
|
||||
module_data = pool.get('ir.module.module').browse(cr, uid, [data['ids']])
|
||||
list_folders = os.listdir(config['addons_path']+'/base_module_quality/')
|
||||
module_name = module_data[0].name
|
||||
for item in list_folders:
|
||||
path = config['addons_path']+'/base_module_quality/'+item
|
||||
if os.path.exists(path+'/'+item+'.py') and item not in ['report', 'wizard', 'security']:
|
||||
ad = tools.config['addons_path']
|
||||
if module_data[0].name == 'base':
|
||||
ad = tools.config['root_path']+'/addons'
|
||||
module_path = os.path.join(ad, module_data[0].name)
|
||||
item2 = 'base_module_quality.'+item+'.'+item
|
||||
x = __import__(item2)
|
||||
x2 = getattr(x, item)
|
||||
x3 = getattr(x2, item)
|
||||
val = x3.quality_test()
|
||||
if (not val.bool_installed_only or module_data[0].state == "installed"):
|
||||
val.run_test(cr, uid, str(module_path))
|
||||
else:
|
||||
val.result += "The module has to be installed before running this test."
|
||||
string_ret += val.result
|
||||
abstract_obj = base_module_quality.abstract_quality_check()
|
||||
for test in abstract_obj.tests:
|
||||
ad = tools.config['addons_path']
|
||||
if module_data[0].name == 'base':
|
||||
ad = tools.config['root_path']+'/addons'
|
||||
module_path = os.path.join(ad, module_data[0].name)
|
||||
val = test.quality_test()
|
||||
val.run_test(cr, uid, str(module_path), str(module_data[0].state))
|
||||
string_ret += val.result['summary']
|
||||
string_detail += val.result['detail']
|
||||
self.string_detail = string_detail
|
||||
return string_ret
|
||||
|
||||
def _check_detail(self, cr, uid, data, context={}):
|
||||
return self.string_detail
|
||||
|
||||
# def _general_info(self, cr, uid, data, context={}):
|
||||
# return self.general_info
|
||||
|
||||
|
@ -102,9 +99,12 @@ class wiz_quality_check(osv.osv_memory):
|
|||
#~ },
|
||||
_columns = {
|
||||
'general_info': fields.text('General Info', readonly="1",),
|
||||
'detail' : fields.text('Detail', readonly="1",),
|
||||
'verbose_detail' : fields.text('Verbose Detail', readonly="1",)
|
||||
}
|
||||
_defaults = {
|
||||
'general_info': _check
|
||||
'general_info': _check,
|
||||
'detail': _check_detail
|
||||
}
|
||||
|
||||
wiz_quality_check()
|
||||
|
|
|
@ -35,7 +35,7 @@ This version works for creating and updating existing records. It recomputes
|
|||
dependencies and links for all types of widgets (many2one, many2many, ...).
|
||||
It also support workflows and demo/update data.
|
||||
|
||||
This should help you to easily create reuseable and publishable modules
|
||||
This should help you to easily create reusable and publishable modules
|
||||
for custom configurations and demo/testing data.
|
||||
|
||||
How to use it:
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
"version" : "1.0",
|
||||
"author" : "Tiny",
|
||||
"category" : "Generic Modules/Sales & Purchases",
|
||||
"description": "Allows to add delivery methods in sales order and packings. You can define your own carrier and delivery grids for prices. When creating invoices from pickings, Open ERP is able to add and compute the shipping line.",
|
||||
"description": "Allows to add delivery methods in sales order and packing. You can define your own carrier and delivery grids for prices. When creating invoices from pickings, Open ERP is able to add and compute the shipping line.",
|
||||
"depends" : ["sale","purchase", "stock",],
|
||||
"init_xml" : ["delivery_data.xml"],
|
||||
"demo_xml" : ["delivery_demo.xml"],
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
"website": "http://www.openerp.com",
|
||||
"description": """This is a complete document management system:
|
||||
* FTP Interface
|
||||
* User Authentification
|
||||
* User Authentication
|
||||
* Document Indexation
|
||||
""",
|
||||
"depends" : ["base","process"],
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
"author" : "Tiny",
|
||||
"category" : "Generic Modules/Others",
|
||||
"website": "http://www.openerp.com",
|
||||
"description": """Allows to synchronize calendars with others applications.""",
|
||||
"description": """Allows to synchronise calendars with others applications.""",
|
||||
"depends" : ["document","crm_configuration"],
|
||||
"init_xml" : ["document_data.xml"],
|
||||
"update_xml" : [
|
||||
|
|
|
@ -28,13 +28,13 @@
|
|||
|
||||
This module allow you
|
||||
* to manage your events and their registrations
|
||||
* to use emails to automaticly confirm and send acknowledgements for any registration to an event
|
||||
* to use emails to automatically confirm and send acknowledgements for any registration to an event
|
||||
* ...
|
||||
|
||||
Note that:
|
||||
- You can define new types of events in
|
||||
Events \ Configuration \ Types of Events
|
||||
- You can access pre-defined reports about number of registration per event or per event category in :
|
||||
- You can access predefined reports about number of registration per event or per event category in :
|
||||
Events \ Reporting
|
||||
""",
|
||||
"depends" : [
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
* Payment of the invoice to the employee
|
||||
|
||||
This module also use the analytic accounting and is compatible with
|
||||
the invoice on timesheet module so that you will be able to automatcally
|
||||
the invoice on timesheet module so that you will be able to automatically
|
||||
re-invoice your customer's expenses if your work by project.
|
||||
""",
|
||||
"init_xml" : [],
|
||||
|
|
|
@ -5,12 +5,12 @@
|
|||
"author" : "Tiny & Axelor",
|
||||
"category" : "Generic Modules/Human Resources",
|
||||
"website" : "http://www.openerp.com",
|
||||
"description": """Human Ressources: Holidays tracking and workflow
|
||||
"description": """Human Resources: Holidays tracking and workflow
|
||||
|
||||
This module allows you to manage holidays and holidays requests. For each employee, you can also define a number of available holidays per holiday status.
|
||||
|
||||
Note that:
|
||||
- A synchronisation with an internal agenda (use of the crm module) is possible: in order to automaticly create a case when an holiday request is accepted, you have to link the holidays status to a case section. You can set up this info and your color preferencies in
|
||||
- A synchronisation with an internal agenda (use of the CRM module) is possible: in order to automatically create a case when an holiday request is accepted, you have to link the holidays status to a case section. You can set up this info and your colour preferences in
|
||||
HR \ Configuration \ Holidays Status
|
||||
- An employee can make a negative holiday request (holiday request of -2 days for example), this is considered by the system as an ask for more off-days. It will increase his total of that holiday status available (if the request is accepted).
|
||||
- There are two ways to print the employee's holidays:
|
||||
|
|
|
@ -33,7 +33,7 @@ the analytic account.
|
|||
|
||||
Lots of reporting on time and employee tracking are provided.
|
||||
|
||||
It is completly integrated with the cost accounting module. It allows you
|
||||
It is completely integrated with the cost accounting module. It allows you
|
||||
to set up a management by affair.
|
||||
""",
|
||||
"depends" : ["account", "hr", "base", "hr_attendance", "process"],
|
||||
|
|
|
@ -27,8 +27,8 @@
|
|||
"website" : "http://www.openerp.com",
|
||||
"depends" : ["account",'hr_timesheet'],
|
||||
"description": """
|
||||
Module to generate invoices based on costs (human ressources, expenses, ...).
|
||||
You can define pricelists in analytic account, make some theorical revenue
|
||||
Module to generate invoices based on costs (human resources, expenses, ...).
|
||||
You can define price lists in analytic account, make some theoretical revenue
|
||||
reports, eso.""",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : [
|
||||
|
|
|
@ -20,7 +20,9 @@
|
|||
#
|
||||
##############################################################################
|
||||
|
||||
import l10n_fr
|
||||
import wizard
|
||||
import report
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
|
|
@ -41,13 +41,14 @@
|
|||
* We have the account templates which can be helpful to generate Charts of Accounts.
|
||||
* On that particular wizard,You will be asked to pass the name of the company,the chart template to follow,the no. of digits to generate the code for your account and Bank account,currency to create Journals.
|
||||
Thus,the pure copy of Chart Template is generated.
|
||||
* This is the same wizard that runs from Financial Managament/Configuration/Financial Accounting/Financial Accounts/Generate Chart of Accounts from a Chart Template.
|
||||
* This is the same wizard that runs from Financial Management/Configuration/Financial Accounting/Financial Accounts/Generate Chart of Accounts from a Chart Template.
|
||||
|
||||
* This module installs :
|
||||
The Tax Code chart and taxes for French Accounting.
|
||||
""",
|
||||
"init_xml" : [],
|
||||
"update_xml" : ["types.xml", "plan-99-03_societe.xml", "taxes.xml","fr_wizard.xml"],
|
||||
"init_xml" : ["fr_data.xml"],
|
||||
"update_xml" : ["l10n_fr_view.xml","types.xml", "plan-99-03_societe.xml",
|
||||
"taxes.xml","fr_wizard.xml",],
|
||||
"demo_xml" : [],
|
||||
"installable": True
|
||||
}
|
||||
|
|
|
@ -0,0 +1,930 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<openerp>
|
||||
<data noupdate="1">
|
||||
|
||||
<record id="pcg_bilan" model="l10n.fr.report">
|
||||
<field name="name">Bilan Comptable</field>
|
||||
<field name="code">bilan</field>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdr" model="l10n.fr.report">
|
||||
<field name="name">Compte de Résultat</field>
|
||||
<field name="code">cdr</field>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar1" model="l10n.fr.line">
|
||||
<field name="name">Actif : Capital souscrit - non appelé</field>
|
||||
<field name="definition">{'load':['+:109:S'], 'except':[]}</field>
|
||||
<field name="code">bavar1</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar2" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Frais d'établissement</field>
|
||||
<field name="definition">{'load':['+:201:S'], 'except':[]}</field>
|
||||
<field name="code">bavar2</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar2b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Frais d'établissement (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2801:S'], 'except':[]}</field>
|
||||
<field name="code">bavar2b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar3" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Frais de recherche et de développement</field>
|
||||
<field name="definition">{'load':['+:203:S'], 'except':[]}</field>
|
||||
<field name="code">bavar3</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar3b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Frais de recherche et de développement (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2803:S'], 'except':[]}</field>
|
||||
<field name="code">bavar3b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar4" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Concessions, brevets, licences, marques, droits et valeurs similaires</field>
|
||||
<field name="definition">{'load':['+:205:S'], 'except':[]}</field>
|
||||
<field name="code">bavar4</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar4b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Concessions, brevets, licences, marques, droits et valeurs similaires (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2805:S','+:2905:S'], 'except':[]}</field>
|
||||
<field name="code">bavar4b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar5" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Fonds commercial</field>
|
||||
<field name="definition">{'load':['+:206:S','+:207:S'], 'except':[]}</field>
|
||||
<field name="code">bavar5</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar5b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Fonds commercial (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2807:S','+:2907:S'], 'except':[]}</field>
|
||||
<field name="code">bavar5b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar6" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Autres</field>
|
||||
<field name="definition">{'load':['+:208:S'], 'except':[]}</field>
|
||||
<field name="code">bavar6</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar6b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Autres (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2808:S','+:2908:S'], 'except':[]}</field>
|
||||
<field name="code">bavar6b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar7" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Immobilisations incorporelles en cours</field>
|
||||
<field name="definition">{'load':['+:232:S'], 'except':[]}</field>
|
||||
<field name="code">bavar7</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar7b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Immobilisations incorporelles en cours (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2932:S'], 'except':[]}</field>
|
||||
<field name="code">bavar7b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar8" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations incorporelles : Avances et acomptes</field>
|
||||
<field name="definition">{'load':['+:237:S'], 'except':[]}</field>
|
||||
<field name="code">bavar8</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar9" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Terrains</field>
|
||||
<field name="definition">{'load':['+:211:S','+:212:S'], 'except':[]}</field>
|
||||
<field name="code">bavar9</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar9b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Terrains (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2811:S','+:2812:S','+:2911:S'], 'except':[]}</field>
|
||||
<field name="code">bavar9b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar10" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Constructions</field>
|
||||
<field name="definition">{'load':['+:213:S','+:214:S'], 'except':[]}</field>
|
||||
<field name="code">bavar10</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar10b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Constructions (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2813:S','+:2814:S'], 'except':[]}</field>
|
||||
<field name="code">bavar10b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar11" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Installations techniques,matériel et outillage</field>
|
||||
<field name="definition">{'load':['+:215:S'], 'except':[]}</field>
|
||||
<field name="code">bavar11</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar11b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Installations techniques,matériel et outillage (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2815:S'], 'except':[]}</field>
|
||||
<field name="code">bavar11b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar12" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Autres</field>
|
||||
<field name="definition">{'load':['+:218:S'], 'except':[]}</field>
|
||||
<field name="code">bavar12</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar12b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Autres (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2818:S','+:282:S'], 'except':[]}</field>
|
||||
<field name="code">bavar12b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar13" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Immobilisations corporelles en cours</field>
|
||||
<field name="definition">{'load':['+:231:S'], 'except':[]}</field>
|
||||
<field name="code">bavar13</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar13b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Immobilisations corporelles : Immobilisations corporelles en cours (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2931:S'], 'except':[]}</field>
|
||||
<field name="code">bavar13b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar14" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations corporelles : Avances et acomptes</field>
|
||||
<field name="definition">{'load':['+:238:S'], 'except':[]}</field>
|
||||
<field name="code">bavar14</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar15" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Participations</field>
|
||||
<field name="definition">{'load':['+:261:S','+:262:S','+:266:S'], 'except':[]}</field>
|
||||
<field name="code">bavar15</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar15b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Participations (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2961:S','+:2966:S'], 'except':[]}</field>
|
||||
<field name="code">bavar15b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar16" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Créances rattachées à des participations</field>
|
||||
<field name="definition">{'load':['+:267:S','+:268:S'], 'except':[]}</field>
|
||||
<field name="code">bavar16</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar16b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Créances rattachées à des participations (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2967:S'], 'except':[]}</field>
|
||||
<field name="code">bavar16b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar17" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Titres immobilisés de l'activité de portefeuille</field>
|
||||
<field name="definition">{'load':['+:273:S'], 'except':[]}</field>
|
||||
<field name="code">bavar17</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar17b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Titres immobilisés de l'activité de portefeuille (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2973:S'], 'except':[]}</field>
|
||||
<field name="code">bavar17b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar18" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Autres titres immobilisés</field>
|
||||
<field name="definition">{'load':['+:271:S','+:272:S','+:27682:S'], 'except':[]}</field>
|
||||
<field name="code">bavar18</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar18b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Autres titres immobilisés (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2971:S','+:2972:S'], 'except':[]}</field>
|
||||
<field name="code">bavar18b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar19" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Prêts</field>
|
||||
<field name="definition">{'load':['+:274:S','+:27684:S'], 'except':[]}</field>
|
||||
<field name="code">bavar19</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar19b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Prêts (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2974:S'], 'except':[]}</field>
|
||||
<field name="code">bavar19b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar20" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Autres</field>
|
||||
<field name="definition">{'load':['+:275:S','+:276:S'], 'except':['27682','27684']}</field>
|
||||
<field name="code">bavar20</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar20b" model="l10n.fr.line">
|
||||
<field name="name">Immobilisations financiéres : Autres (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:2975:S','+:2976:S'], 'except':[]}</field>
|
||||
<field name="code">bavar20b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar21" model="l10n.fr.line">
|
||||
<field name="name">Stock en cours : Matières premières et autres approvisionnements</field>
|
||||
<field name="definition">{'load':['+:31:S','+:32:S'], 'except':[]}</field>
|
||||
<field name="code">bavar21</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar21b" model="l10n.fr.line">
|
||||
<field name="name">Stock en cours : Matières premières et autres approvisionnements (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:391:S','+:392:S'], 'except':[]}</field>
|
||||
<field name="code">bavar21b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar22" model="l10n.fr.line">
|
||||
<field name="name">Stock en cours : En-cours de production [biens et services]</field>
|
||||
<field name="definition">{'load':['+:33:S','+:34:S'], 'except':[]}</field>
|
||||
<field name="code">bavar22</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar22b" model="l10n.fr.line">
|
||||
<field name="name">Stock en cours : En-cours de production [biens et services] (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:393:S','+:394:S'], 'except':[]}</field>
|
||||
<field name="code">bavar22b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar23" model="l10n.fr.line">
|
||||
<field name="name">Stock en cours : Produits intermédiaires et finis</field>
|
||||
<field name="definition">{'load':['+:35:S'], 'except':[]}</field>
|
||||
<field name="code">bavar23</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar23b" model="l10n.fr.line">
|
||||
<field name="name">Stock en cours : Produits intermédiaires et finis (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:395:S'], 'except':[]}</field>
|
||||
<field name="code">bavar23b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar24" model="l10n.fr.line">
|
||||
<field name="name">Stock en cours : Marchandises</field>
|
||||
<field name="definition">{'load':['+:37:S'], 'except':[]}</field>
|
||||
<field name="code">bavar24</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar24b" model="l10n.fr.line">
|
||||
<field name="name">Stock en cours : Marchandises (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:397:S'], 'except':[]}</field>
|
||||
<field name="code">bavar24b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar25" model="l10n.fr.line">
|
||||
<field name="name">Stock en cours : Avances et acomptes versés sur commandes</field>
|
||||
<field name="definition">{'load':['+:4091:S'], 'except':[]}</field>
|
||||
<field name="code">bavar25</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar26" model="l10n.fr.line">
|
||||
<field name="name">Créances : Créances clients et comptes rattachés</field>
|
||||
<field name="definition">{'load':['+:411:S','+:413:S','+:416:S','+:418:S'], 'except':[]}</field>
|
||||
<field name="code">bavar26</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar26b" model="l10n.fr.line">
|
||||
<field name="name">Créances : Créances clients et comptes rattachés (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:491:S'], 'except':[]}</field>
|
||||
<field name="code">bavar26b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar27" model="l10n.fr.line">
|
||||
<field name="name">Créances : Autres</field>
|
||||
<field name="definition">{'load':['+:4096:S','+:4097:S','+:4098:S','+:425:S','+:441:S','+:462:S','+:465:S','+:428:D','+:438:D','+:443:D','+:444:D','+:445:D','+:448:D','+:451:D','+:455:D','+:456:D','+:458:D','+:467:D','+:468:D','+:478:D'], 'except':['4562']}</field>
|
||||
<field name="code">bavar27</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar27b" model="l10n.fr.line">
|
||||
<field name="name">Créances : Autres (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:495:S','+:496:S'], 'except':[]}</field>
|
||||
<field name="code">bavar27b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar28" model="l10n.fr.line">
|
||||
<field name="name">Créances : Capital souscrit - appelé , non versé</field>
|
||||
<field name="definition">{'load':['+:4562:S'], 'except':[]}</field>
|
||||
<field name="code">bavar28</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar29" model="l10n.fr.line">
|
||||
<field name="name">Valeurs mobilières de placement : Actions propres</field>
|
||||
<field name="definition">{'load':['+:502:S'], 'except':[]}</field>
|
||||
<field name="code">bavar29</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar29b" model="l10n.fr.line">
|
||||
<field name="name">Valeurs mobilières de placement : Actions propres (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:5903:S'], 'except':[]}</field>
|
||||
<field name="code">bavar29b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar30" model="l10n.fr.line">
|
||||
<field name="name">Valeurs mobilières de placement : Autres titres</field>
|
||||
<field name="definition">{'load':['+:50:S'], 'except':['502','509']}</field>
|
||||
<field name="code">bavar30</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar30b" model="l10n.fr.line">
|
||||
<field name="name">Valeurs mobilières de placement : Autres titres (Amortissements et dépréciations)</field>
|
||||
<field name="definition">{'load':['+:590:S'], 'except':['5903']}</field>
|
||||
<field name="code">bavar30b</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar31" model="l10n.fr.line">
|
||||
<field name="name">Actif circulant : Instruments de trésorerie</field>
|
||||
<field name="definition">{'load':['+:52:S'], 'except':[]}</field>
|
||||
<field name="code">bavar31</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar32" model="l10n.fr.line">
|
||||
<field name="name">Actif circulant : Disponibilités</field>
|
||||
<field name="definition">{'load':['+:51:D','+:53:S','+:54:S'], 'except':['5181','519']}</field>
|
||||
<field name="code">bavar32</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar33" model="l10n.fr.line">
|
||||
<field name="name">Actif circulant : Charges constatés d'avance</field>
|
||||
<field name="definition">{'load':['+:486:S'], 'except':[]}</field>
|
||||
<field name="code">bavar33</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar34" model="l10n.fr.line">
|
||||
<field name="name">Actif : Charges à répartir sur plusieurs exercices</field>
|
||||
<field name="definition">{'load':['+:481:S'], 'except':[]}</field>
|
||||
<field name="code">bavar34</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar35" model="l10n.fr.line">
|
||||
<field name="name">Actif : Primes de remboursement des emprunts</field>
|
||||
<field name="definition">{'load':['+:169:S'], 'except':[]}</field>
|
||||
<field name="code">bavar35</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bavar36" model="l10n.fr.line">
|
||||
<field name="name">Actif : Écarts de conversion actif</field>
|
||||
<field name="definition">{'load':['+:476:S'], 'except':[]}</field>
|
||||
<field name="code">bavar36</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar1" model="l10n.fr.line">
|
||||
<field name="name">Capitaux propres : Capital [dont versé...]</field>
|
||||
<field name="definition">{'load':['-:101:S','-:108:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar1</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar2" model="l10n.fr.line">
|
||||
<field name="name">Capitaux propres : Primes d'émission, de fusion, d'apport</field>
|
||||
<field name="definition">{'load':['-:104:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar2</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar3" model="l10n.fr.line">
|
||||
<field name="name">Capitaux propres : Écarts de réévaluation</field>
|
||||
<field name="definition">{'load':['-:105:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar3</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar4" model="l10n.fr.line">
|
||||
<field name="name">Capitaux propres : Écart d'équivalence</field>
|
||||
<field name="definition">{'load':['-:107:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar4</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar5" model="l10n.fr.line">
|
||||
<field name="name">Réserves : Réserve légale</field>
|
||||
<field name="definition">{'load':['-:1061:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar5</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar6" model="l10n.fr.line">
|
||||
<field name="name">Réserves : Réserves statutaires ou contractuelles</field>
|
||||
<field name="definition">{'load':['-:1063:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar6</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar7" model="l10n.fr.line">
|
||||
<field name="name">Réserves : Réserves réglementées</field>
|
||||
<field name="definition">{'load':['-:1062:S','-:1064:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar7</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar8" model="l10n.fr.line">
|
||||
<field name="name">Réserves : Autres réserves</field>
|
||||
<field name="definition">{'load':['-:1068:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar8</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar9" model="l10n.fr.line">
|
||||
<field name="name">Capitaux propres : Report à nouveau</field>
|
||||
<field name="definition">{'load':['-:110:S','-:119:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar9</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar10" model="l10n.fr.line">
|
||||
<field name="name">Capitaux propres : Résultat de l'exercice</field>
|
||||
<!--
|
||||
<field name="definition">{'load':['-:120:S','-:129:S'], 'except':[]}</field>
|
||||
-->
|
||||
<field name="definition">{'load':['-:7:S','-:6:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar10</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpcheck" model="l10n.fr.line">
|
||||
<field name="name">Capitaux propres : Résultat de l'exercice (Vérification)</field>
|
||||
<field name="definition">{'load':['-:120:S','-:129:S'], 'except':[]}</field>
|
||||
<field name="code">bpcheck</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar11" model="l10n.fr.line">
|
||||
<field name="name">Capitaux propres : Subventions d'investissement</field>
|
||||
<field name="definition">{'load':['-:13:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar11</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar12" model="l10n.fr.line">
|
||||
<field name="name">Capitaux propres : Provisions réglementées</field>
|
||||
<field name="definition">{'load':['-:14:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar12</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar13" model="l10n.fr.line">
|
||||
<field name="name">Provisions : Provisions pour risques</field>
|
||||
<field name="definition">{'load':['-:151:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar13</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar14" model="l10n.fr.line">
|
||||
<field name="name">Provisions : Provisions pour charges</field>
|
||||
<field name="definition">{'load':['-:15:S'], 'except':['151']}</field>
|
||||
<field name="code">bpvar14</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar15" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Emprunts obligataires convertibles</field>
|
||||
<field name="definition">{'load':['-:161:S','-:16881:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar15</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar16" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Autres emprunts obligataires</field>
|
||||
<field name="definition">{'load':['-:163:S','-:16883:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar16</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar17" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Emprunts et dettes auprès des établissements de crédit</field>
|
||||
<field name="definition">{'load':['-:164:S','-:16884:S','-:519:S','-:5181:S','-:512:C','-:514:C','-:517:C'], 'except':[]}</field>
|
||||
<field name="code">bpvar17</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar18" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Emprunts et dettes financières diverses</field>
|
||||
<field name="definition">{'load':['-:165:S','-:166:S','-:1675:S','-:168:S','-:17:S','-:426:S','-:45:C'], 'except':['16881','16883','16884','457']}</field>
|
||||
<field name="code">bpvar18</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar19" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Avances et acomptes reçus sur commandes en cours</field>
|
||||
<field name="definition">{'load':['-:4191:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar19</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar20" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Dettes fournisseurs et comptes rattachés</field>
|
||||
<field name="definition">{'load':['-:401:S','-:403:S','-:4081:S','-:4088:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar20</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar21" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Dettes fiscales et sociales</field>
|
||||
<field name="definition">{'load':['-:421:S','-:422:S','-:424:S','-:427:S','-:4282:S','-:4284:S','-:4286:S','-:43:S','-:442:S','-:4455:S','-:4457:S','-:44584:S','-:44587:S','-:446:S','-:447:S','-:4482:S','-:4486:S','-:457:S','-:443:C','-:444:C'],'except':['4387']}</field>
|
||||
<field name="code">bpvar21</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar22" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Dettes sur immobilisations et comptes rattachés </field>
|
||||
<field name="definition">{'load':['-:269:S','-:279:S','-:404:S','-:405:S','-:4084:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar22</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar23" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Autres dettes</field>
|
||||
<field name="definition">{'load':['-:4196:S','-:4197:S','-:4198:S','-:464:S','-:467:C','-:4686:S','-:478:C','-:509:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar23</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar24" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Instruments de trésorerie</field>
|
||||
<field name="definition">{'load':['-:52:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar24</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar25" model="l10n.fr.line">
|
||||
<field name="name">Dettes : Produits constatés d'avance</field>
|
||||
<field name="definition">{'load':['-:487:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar25</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_bpvar26" model="l10n.fr.line">
|
||||
<field name="name">Passif : Écarts de conversion passif</field>
|
||||
<field name="definition">{'load':['-:477:S'], 'except':[]}</field>
|
||||
<field name="code">bpvar26</field>
|
||||
<field name="report_id" ref="pcg_bilan"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc1" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Achats de Marchandises</field>
|
||||
<field name="definition">{'load':['+:607:S','+:6097:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc1</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc2" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Achats de Marchandises, variation des stocks</field>
|
||||
<field name="definition">{'load':['+:6037:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc2</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc3" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Achats de matières premières et autres approvisionnements</field>
|
||||
<field name="definition">{'load':['+:601:S','+:6091:S','+:602:S','+:6092:S','+:6081:S','+:6082:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc3</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc4" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Achats de matières premières et autres approvisionnements, variation des stocks</field>
|
||||
<field name="definition">{'load':['+:6031:S','+:6032:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc4</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc5" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Autres achats et charges externes</field>
|
||||
<field name="definition">{'load':['+:604:S','+:605:S','+:606:S','+:6094:S','+:6095:S','+:6096:S','+:61:S','+:62:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc5</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc6" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Autres achats et charges externes, redevances de crédit-bail mobilier</field>
|
||||
<field name="definition">{'load':['+:6122:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc6</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc7" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Autres achats et charges externes, redevances de crédit-bail mobilier</field>
|
||||
<field name="definition">{'load':['+:6125:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc7</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc8" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Impôts, taxes et versements assimilés</field>
|
||||
<field name="definition">{'load':['+:63:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc8</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc9" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Salaires et traitements</field>
|
||||
<field name="definition">{'load':['+:641:S','+:644:S','+:648:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc9</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc10" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Charges sociales</field>
|
||||
<field name="definition">{'load':['+:645:S','+:646:S','+:647:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc10</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc11" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Dotation aux amortissements et aux dépréciations, sur immobilisations : dotations aux amortissements</field>
|
||||
<field name="definition">{'load':['+:6811:S','+:6812:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc11</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc12" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Dotation aux amortissements et aux dépréciations, sur immobilisations : dotations aux dépréciations</field>
|
||||
<field name="definition">{'load':['+:6816:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc12</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc13" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Dotation aux amortissements et aux dépréciations, sur actif circulant : dotations aux dépréciations</field>
|
||||
<field name="definition">{'load':['+:6817:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc13</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc14" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Dotations aux provisions</field>
|
||||
<field name="definition">{'load':['+:6815:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc14</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc15" model="l10n.fr.line">
|
||||
<field name="name">Charges d'exploitation : Autres charges</field>
|
||||
<field name="definition">{'load':['+:65:S'], 'except':['655']}</field>
|
||||
<field name="code">cdrc15</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc16" model="l10n.fr.line">
|
||||
<field name="name">Charges : Quotes-parts de résultat sur opérations faites en commun</field>
|
||||
<field name="definition">{'load':['+:655:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc16</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc17" model="l10n.fr.line">
|
||||
<field name="name">Charges financières : Dotations aux amortissements, aux dépréciations et aux provisions</field>
|
||||
<field name="definition">{'load':['+:686:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc17</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc18" model="l10n.fr.line">
|
||||
<field name="name">Charges financières : Intérêts et charges assimilées</field>
|
||||
<field name="definition">{'load':['+:66:S'], 'except':['666','667']}</field>
|
||||
<field name="code">cdrc18</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc19" model="l10n.fr.line">
|
||||
<field name="name">Charges financières : Différences négatives de change</field>
|
||||
<field name="definition">{'load':['+:666:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc19</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc20" model="l10n.fr.line">
|
||||
<field name="name">Charges financières : Charges nettes sur cessions de valeurs mobilières de placement</field>
|
||||
<field name="definition">{'load':['+:667:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc20</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc21" model="l10n.fr.line">
|
||||
<field name="name">Charges exceptionnelles : Sur opérations de gestion</field>
|
||||
<field name="definition">{'load':['+:671:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc21</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc22" model="l10n.fr.line">
|
||||
<field name="name">Charges exceptionnelles : Sur opérations en capital</field>
|
||||
<field name="definition">{'load':['+:675:S','+:678:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc22</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc23" model="l10n.fr.line">
|
||||
<field name="name">Charges exceptionnelles : Dotations aux amortissements, aux dépréciations et aux provisions</field>
|
||||
<field name="definition">{'load':['+:687:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc23</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc24" model="l10n.fr.line">
|
||||
<field name="name">Charges : Participation des salariés aux résultats</field>
|
||||
<field name="definition">{'load':['+:691:S'], 'except':[]}</field>
|
||||
<field name="code">cdrc24</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrc25" model="l10n.fr.line">
|
||||
<field name="name">Charges : Impôts sur les bénéfices</field>
|
||||
<field name="definition">{'load':['+:69:S'], 'except':['691']}</field>
|
||||
<field name="code">cdrc25</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp1" model="l10n.fr.line">
|
||||
<field name="name">Produits d'exploitation : Vente de marchandises</field>
|
||||
<field name="definition">{'load':['-:707:S','-:7097:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp1</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp2" model="l10n.fr.line">
|
||||
<field name="name">Produits d'exploitation : Production vendue [biens et services]</field>
|
||||
<field name="definition">{'load':['-:701:S','-:702:S','-:703:S','-:704:S','-:705:S','-:706:S','-:7091:S','-:7092:S','-:7093:S','-:7094:S','-:7095:S','-:7096:S','-:708:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp2</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp3" model="l10n.fr.line">
|
||||
<field name="name">Produits d'exploitation : Production stockée</field>
|
||||
<field name="definition">{'load':['-:713:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp3</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp4" model="l10n.fr.line">
|
||||
<field name="name">Produits d'exploitation : Production immobilisée</field>
|
||||
<field name="definition">{'load':['-:72:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp4</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp5" model="l10n.fr.line">
|
||||
<field name="name">Produits d'exploitation : Subventions d'exploitation</field>
|
||||
<field name="definition">{'load':['-:74:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp5</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp6" model="l10n.fr.line">
|
||||
<field name="name">Produits d'exploitation : Reprises sur provisions, dépréciations (et amortissements) et transferts de charges</field>
|
||||
<field name="definition">{'load':['-:781:S','-:791:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp6</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp7" model="l10n.fr.line">
|
||||
<field name="name">Produits d'exploitation : Autres produits</field>
|
||||
<field name="definition">{'load':['-:75:S'], 'except':['755']}</field>
|
||||
<field name="code">cdrp7</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp8" model="l10n.fr.line">
|
||||
<field name="name">Produits : Quotes-parts de résultat sur opérations faites en commun</field>
|
||||
<field name="definition">{'load':['-:755:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp8</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp9" model="l10n.fr.line">
|
||||
<field name="name">Produits financiers : De participation</field>
|
||||
<field name="definition">{'load':['-:761:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp9</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp10" model="l10n.fr.line">
|
||||
<field name="name">Produits financiers : D'autres valeurs mobilières et créances de l'actif immobilisé</field>
|
||||
<field name="definition">{'load':['-:762:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp10</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp11" model="l10n.fr.line">
|
||||
<field name="name">Produits financiers : Autres intérêts et produits assimilés</field>
|
||||
<field name="definition">{'load':['-:763:S','-:764:S','-:765:S','-:768:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp11</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp12" model="l10n.fr.line">
|
||||
<field name="name">Produits financiers : Reprises sur provisions, dépréciations et transferts de charges</field>
|
||||
<field name="definition">{'load':['-:786:S','-:796:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp12</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp13" model="l10n.fr.line">
|
||||
<field name="name">Produits financiers : Différences positives de change</field>
|
||||
<field name="definition">{'load':['-:766:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp13</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp14" model="l10n.fr.line">
|
||||
<field name="name">Produits financiers : Produits nets sur cessions de valeurs mobilières de placement</field>
|
||||
<field name="definition">{'load':['-:767:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp14</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp15" model="l10n.fr.line">
|
||||
<field name="name">Produits exceptionnels : Sur opérations de gestion</field>
|
||||
<field name="definition">{'load':['-:771:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp15</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp16" model="l10n.fr.line">
|
||||
<field name="name">Produits exceptionnels : Sur opérations en capital</field>
|
||||
<field name="definition">{'load':['-:775:S','-:777:S','-:778:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp16</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
<record id="pcg_cdrp17" model="l10n.fr.line">
|
||||
<field name="name">Produits exceptionnels : Reprises sur provisions, dépréciations et transferts de charges</field>
|
||||
<field name="definition">{'load':['-:787:S','-:797:S'], 'except':[]}</field>
|
||||
<field name="code">cdrp17</field>
|
||||
<field name="report_id" ref="pcg_cdr"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
@ -7,11 +7,29 @@
|
|||
<menuitem action="wizard_chart_report" id="menu_fr_chart_report" parent="account.menu_finance_reporting" type="wizard"/>
|
||||
|
||||
<record id="config_call_account_template" model="ir.actions.todo">
|
||||
<field name="name">Generate Chart of Accounts from a Chart Template</field>
|
||||
<field name="note">Generate Chart of Accounts from a Chart Template. You will be asked to pass the name of the company, the chart template to follow, the no. of digits to generate the code for your accounts and Bank account, currency to create Journals. Thus,the pure copy of chart Template is generated.
|
||||
This is the same wizard that runs from Financial Management/Configuration/Financial Accounting/Financial Accounts/Generate Chart of Accounts from a Chart Template.</field>
|
||||
<field name="action_id" ref="account.action_wizard_multi_chart"/>
|
||||
</record>
|
||||
<field name="name">Generate Chart of Accounts from a Chart Template</field>
|
||||
<field name="note">Generate Chart of Accounts from a Chart Template. You will be asked to pass the name of the company, the chart template to follow, the no. of digits to generate the code for your accounts and Bank account, currency to create Journals. Thus,the pure copy of chart Template is generated.
|
||||
This is the same wizard that runs from Financial Management/Configuration/Financial Accounting/Financial Accounts/Generate Chart of Accounts from a Chart Template.</field>
|
||||
<field name="action_id" ref="account.action_wizard_multi_chart"/>
|
||||
</record>
|
||||
|
||||
<wizard id="wizard_l10n_fr_cdr_report"
|
||||
string="Compte de resultat"
|
||||
model="account.move.line"
|
||||
name="l10n.fr.cdr.report"
|
||||
keyword="client_print_multi"
|
||||
/>
|
||||
|
||||
<menuitem id="menu_action_cdr" action="wizard_l10n_fr_cdr_report" type="wizard" parent="l10n_fr.menu_synthesis" />
|
||||
|
||||
<wizard id="wizard_l10n_fr_bilan_report"
|
||||
string="Bilan"
|
||||
model="account.move.line"
|
||||
name="l10n.fr.bilan.report"
|
||||
keyword="client_print_multi"
|
||||
/>
|
||||
|
||||
<menuitem id="menu_action_bilan" action="wizard_l10n_fr_bilan_report" type="wizard" parent="l10n_fr.menu_synthesis" />
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
# -*- encoding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2008 Tiny SPRL (<http://tiny.be>). All Rights Reserved
|
||||
# $Id$
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU 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 General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
from mx import DateTime
|
||||
import time
|
||||
|
||||
from osv import fields, osv
|
||||
import pooler
|
||||
|
||||
|
||||
class l10n_fr_report(osv.osv):
|
||||
_name = 'l10n.fr.report'
|
||||
_description = 'Report for l10n_fr'
|
||||
_columns = {
|
||||
'code': fields.char('Code', size=64),
|
||||
'name': fields.char('Name', size=128),
|
||||
'line_ids': fields.one2many('l10n.fr.line', 'report_id', 'Lines'),
|
||||
}
|
||||
_sql_constraints = [
|
||||
('code_uniq', 'unique (code)','The code report must be unique !')
|
||||
]
|
||||
l10n_fr_report()
|
||||
|
||||
class l10n_fr_line(osv.osv):
|
||||
_name = 'l10n.fr.line'
|
||||
_description = 'Report Lines for l10n_fr'
|
||||
_columns = {
|
||||
'code': fields.char('Variable Name', size=64),
|
||||
'definition': fields.char('Definition', size=512),
|
||||
'name': fields.char('Name', size=256),
|
||||
'report_id': fields.many2one('l10n.fr.report', 'Report'),
|
||||
}
|
||||
_sql_constraints = [
|
||||
('code_uniq', 'unique (code)', 'The variable name must be unique !')
|
||||
]
|
||||
l10n_fr_line()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
|
@ -0,0 +1,47 @@
|
|||
<?xml version="1.0"?>
|
||||
<openerp>
|
||||
<data>
|
||||
<menuitem name="Documents de synthèse" id="menu_synthesis" parent="account.menu_finance_reporting" />
|
||||
<menuitem name="Configuration" id="menu_synthesis_config" parent="l10n_fr.menu_synthesis" />
|
||||
|
||||
<record model="ir.actions.act_window" id="action_l10n_fr_report_tree">
|
||||
<field name="name">Rapports</field>
|
||||
<field name="res_model">l10n.fr.report</field>
|
||||
</record>
|
||||
|
||||
<menuitem parent="l10n_fr.menu_synthesis_config" id="menu_l10n_fr_report_tree" action="action_l10n_fr_report_tree"/>
|
||||
|
||||
<record model="ir.actions.act_window" id="action_l10n_fr_line_tree">
|
||||
<field name="name">Entrées</field>
|
||||
<field name="res_model">l10n.fr.line</field>
|
||||
<field name="view_mode">tree</field>
|
||||
</record>
|
||||
<menuitem parent="l10n_fr.menu_synthesis_config" id="menu_l10n_fr_line_tree" action="action_l10n_fr_line_tree"/>
|
||||
|
||||
<record model="ir.ui.view" id="view_l10n_fr_line_tree">
|
||||
<field name="name">l10n.fr.line</field>
|
||||
<field name="model">l10n.fr.line</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Entrées">
|
||||
<field name="name"/>
|
||||
<field name="code"/>
|
||||
<field name="report_id"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_l10n_fr_report_tree">
|
||||
<field name="name">l10n.fr.report</field>
|
||||
<field name="model">l10n.fr.report</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Rapport">
|
||||
<field name="name"/>
|
||||
<field name="code"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
|
@ -0,0 +1,30 @@
|
|||
##############################################################################
|
||||
#
|
||||
# Copyright (c) 2008 JAILLET Simon - CrysaLEAD - www.crysalead.fr
|
||||
#
|
||||
# WARNING: This program as such is intended to be used by professional
|
||||
# programmers who take the whole responsability of assessing all potential
|
||||
# consequences resulting from its eventual inadequacies and bugs
|
||||
# End users who are looking for a ready-to-use solution with commercial
|
||||
# garantees and support are strongly adviced to contract a Free Software
|
||||
# Service Company
|
||||
#
|
||||
# This program is Free Software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# 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 General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
import base_report
|
||||
import report_bilan
|
||||
import report_cdr
|
|
@ -0,0 +1,125 @@
|
|||
##############################################################################
|
||||
#
|
||||
# Copyright (c) 2008 JAILLET Simon - CrysaLEAD - www.crysalead.fr
|
||||
#
|
||||
# WARNING: This program as such is intended to be used by professional
|
||||
# programmers who take the whole responsability of assessing all potential
|
||||
# consequences resulting from its eventual inadequacies and bugs
|
||||
# End users who are looking for a ready-to-use solution with commercial
|
||||
# garantees and support are strongly adviced to contract a Free Software
|
||||
# Service Company
|
||||
#
|
||||
# This program is Free Software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# 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 General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
import time
|
||||
from report import report_sxw
|
||||
|
||||
class base_report(report_sxw.rml_parse):
|
||||
def __init__(self, cr, uid, name, context):
|
||||
super(base_report, self).__init__(cr, uid, name, context)
|
||||
self.localcontext.update( {
|
||||
'time': time,
|
||||
'_load': self._load,
|
||||
'_get_variable': self._get_variable,
|
||||
'_set_variable': self._set_variable,
|
||||
})
|
||||
self.context = context
|
||||
|
||||
def _load(self,name,form):
|
||||
fiscalyear=self.pool.get('account.fiscalyear').browse(self.cr, self.uid, form['fiscalyear'])
|
||||
|
||||
periods=self.pool.get('account.period').search(self.cr, self.uid,[('fiscalyear_id','=',form['fiscalyear'])])
|
||||
period_query_cond=str(tuple(periods))
|
||||
|
||||
query = "SELECT MIN(date_start) AS date_start, MAX(date_stop) AS date_stop FROM account_period WHERE id IN "+str(period_query_cond)
|
||||
self.cr.execute(query)
|
||||
dates =self.cr.dictfetchall()
|
||||
self._set_variable('date_start', dates[0]['date_start'])
|
||||
self._set_variable('date_stop', dates[0]['date_stop'])
|
||||
|
||||
query = "SELECT l10n_fr_line.code,definition FROM l10n_fr_line LEFT JOIN l10n_fr_report ON l10n_fr_report.id=report_id WHERE l10n_fr_report.code='"+name+"'"
|
||||
self.cr.execute(query)
|
||||
datas =self.cr.dictfetchall()
|
||||
|
||||
for line in datas:
|
||||
self._load_accounts(form,line['code'],eval(line['definition']),fiscalyear,period_query_cond)
|
||||
|
||||
def _set_variable(self,variable,valeur):
|
||||
self.localcontext.update({variable:valeur})
|
||||
|
||||
def _get_variable(self,variable):
|
||||
return self.localcontext[variable]
|
||||
|
||||
def _load_accounts(self,form,code,definition,fiscalyear,period_query_cond):
|
||||
|
||||
#self.context.copy()
|
||||
accounts={}
|
||||
for x in definition['load']:
|
||||
p=x.split(":")
|
||||
accounts[p[1]]=[p[0],p[2]]
|
||||
|
||||
sum=0.0
|
||||
|
||||
if fiscalyear.state!='done' or not code.startswith('bpcheck'):
|
||||
|
||||
query_cond="("
|
||||
for account in accounts:
|
||||
query_cond += "aa.code LIKE '"+account+"%' OR "
|
||||
query_cond = query_cond[:-4]+")"
|
||||
|
||||
if len(definition['except'])>0:
|
||||
query_cond = query_cond+" and ("
|
||||
for account in definition['except']:
|
||||
query_cond += "aa.code NOT LIKE '"+account+"%' AND "
|
||||
query_cond = query_cond[:-5]+")"
|
||||
|
||||
closed_cond=""
|
||||
|
||||
if fiscalyear.state=='done':
|
||||
closed_cond=" AND (aml.move_id NOT IN (SELECT account_move.id as move_id FROM account_move WHERE period_id IN "+str(period_query_cond)+" AND journal_id=(SELECT res_id FROM ir_model_data WHERE name='closing_journal' AND module='l10n_fr')) OR (aa.type != 'income' AND aa.type !='expense'))"
|
||||
|
||||
query = "SELECT aa.code AS code, SUM(debit) as debit, SUM(credit) as credit FROM account_move_line aml LEFT JOIN account_account aa ON aa.id=aml.account_id WHERE "+query_cond+closed_cond+" AND aml.state='valid' AND aml.period_id IN "+str(period_query_cond)+" GROUP BY code"
|
||||
|
||||
self.cr.execute(query)
|
||||
|
||||
lines =self.cr.dictfetchall()
|
||||
|
||||
for line in lines:
|
||||
for account in accounts:
|
||||
if(line["code"].startswith(account)):
|
||||
operator=accounts[account][0]
|
||||
type=accounts[account][1]
|
||||
|
||||
value=0.0
|
||||
|
||||
if(type=="S"):
|
||||
value=line["debit"]-line["credit"]
|
||||
elif(type=="D"):
|
||||
value=line["debit"]-line["credit"]
|
||||
if(value<0.001): value=0.0
|
||||
elif(type=="C"):
|
||||
value=line["credit"]-line["debit"]
|
||||
if(value<0.001): value=0.0
|
||||
|
||||
if(operator=='+'):
|
||||
sum+=value
|
||||
else:
|
||||
sum-=value
|
||||
|
||||
break
|
||||
|
||||
self._set_variable(code, sum)
|
|
@ -0,0 +1,36 @@
|
|||
##############################################################################
|
||||
#
|
||||
# Copyright (c) 2008 JAILLET Simon - CrysaLEAD - www.crysalead.fr
|
||||
#
|
||||
# WARNING: This program as such is intended to be used by professional
|
||||
# programmers who take the whole responsability of assessing all potential
|
||||
# consequences resulting from its eventual inadequacies and bugs
|
||||
# End users who are looking for a ready-to-use solution with commercial
|
||||
# garantees and support are strongly adviced to contract a Free Software
|
||||
# Service Company
|
||||
#
|
||||
# This program is Free Software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# 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 General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
import base_report
|
||||
from report import report_sxw
|
||||
|
||||
class bilan(base_report.base_report):
|
||||
def __init__(self, cr, uid, name, context):
|
||||
super(bilan, self).__init__(cr, uid, name, context)
|
||||
|
||||
report_sxw.report_sxw('report.l10n.fr.bilan', 'account.move.line','addons/l10n_fr/report/report_bilan.rml', parser=bilan, header=False)
|
||||
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,36 @@
|
|||
##############################################################################
|
||||
#
|
||||
# Copyright (c) 2008 JAILLET Simon - CrysaLEAD - www.crysalead.fr
|
||||
#
|
||||
# WARNING: This program as such is intended to be used by professional
|
||||
# programmers who take the whole responsability of assessing all potential
|
||||
# consequences resulting from its eventual inadequacies and bugs
|
||||
# End users who are looking for a ready-to-use solution with commercial
|
||||
# garantees and support are strongly adviced to contract a Free Software
|
||||
# Service Company
|
||||
#
|
||||
# This program is Free Software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# 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 General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
import base_report
|
||||
from report import report_sxw
|
||||
|
||||
class cdr(base_report.base_report):
|
||||
def __init__(self, cr, uid, name, context):
|
||||
super(cdr, self).__init__(cr, uid, name, context)
|
||||
|
||||
report_sxw.report_sxw('report.l10n.fr.cdr', 'account.move.line','addons/l10n_fr/report/report_cdr.rml', parser=cdr, header=False)
|
||||
|
|
@ -0,0 +1,655 @@
|
|||
<?xml version="1.0"?>
|
||||
<document filename="test.pdf">
|
||||
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
|
||||
<pageTemplate id="first">
|
||||
<frame id="first" x1="57.0" y1="20.0" width="481" height="802"/>
|
||||
</pageTemplate>
|
||||
</template>
|
||||
<stylesheet>
|
||||
<blockTableStyle id="Standard_Outline">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Tableau">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<blockBackground colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<blockBackground colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<blockBackground colorName="#e6e6e6" start="2,0" stop="2,0"/>
|
||||
<blockBackground colorName="#e6e6e6" start="0,1" stop="0,1"/>
|
||||
<blockBackground colorName="#e6e6e6" start="1,1" stop="1,1"/>
|
||||
<blockBackground colorName="#e6e6e6" start="2,1" stop="2,1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Tableau3">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="GRID" colorName="black"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Tableau1">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="GRID" colorName="black"/>
|
||||
</blockTableStyle>
|
||||
<initialize>
|
||||
<paraStyle name="all" alignment="justify"/>
|
||||
</initialize>
|
||||
<paraStyle name="P1" rightIndent="0.0" leftIndent="0.0" fontName="Times-Roman" fontSize="6.0" leading="8" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P2" rightIndent="0.0" leftIndent="0.0" fontName="Times-Roman" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P3" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P4" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P5" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P6" rightIndent="0.0" leftIndent="0.0" fontName="Times-Roman" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P7" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P8" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P9" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P10" rightIndent="0.0" leftIndent="0.0" fontName="Times-Roman" fontSize="8.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P11" rightIndent="0.0" leftIndent="0.0" fontName="Times-Roman" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P12" rightIndent="0.0" leftIndent="0.0" fontName="Times-Roman" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P13" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P14" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P15" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P16" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="7.0" leading="9" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P17" rightIndent="0.0" leftIndent="0.0" fontName="Times-Roman" fontSize="7.0" leading="9" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P18" rightIndent="0.0" leftIndent="0.0" fontName="Times-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P19" fontName="Times-Roman" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P20" fontName="Times-Roman" fontSize="8.0" leading="10" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P21" fontName="Times-Roman" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P22" fontName="Times-Bold" fontSize="16.0" leading="20" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P23" fontName="Times-Roman" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P24" fontName="Times-Roman"/>
|
||||
<paraStyle name="P25" fontName="Times-Roman"/>
|
||||
<paraStyle name="P26" fontName="Times-Roman" fontSize="8.0" leading="10" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="P27" fontName="Times-Bold" fontSize="12.0" leading="15" alignment="LEFT" spaceBefore="1.0" spaceAfter="1.0"/>
|
||||
<paraStyle name="P28" fontName="Times-Bold" fontSize="12.0" leading="15" spaceBefore="0.0" spaceAfter="3.0"/>
|
||||
<paraStyle name="P29" fontName="Times-Roman" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="Standard" fontName="Times-Roman"/>
|
||||
<paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Table Contents" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Caption" fontName="Times-Italic" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Index" fontName="Times-Roman"/>
|
||||
<paraStyle name="Preformatted Text" fontName="Helvetica" fontSize="10.0" leading="13" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
</stylesheet>
|
||||
<images/>
|
||||
<story>
|
||||
<para style="P19">[[ _load('cdr',data['form'])]]</para>
|
||||
<para style="P19">[[ _set_variable('ct1', cdrc1+cdrc2+cdrc3+cdrc4+cdrc5+cdrc6+cdrc7+cdrc8+cdrc9+cdrc10+cdrc11+cdrc12+cdrc13+cdrc14+cdrc15)]]</para>
|
||||
<para style="P19">[[ _set_variable('ct3', cdrc17+cdrc18+cdrc19+cdrc20)]]</para>
|
||||
<para style="P19">[[ _set_variable('ct4', cdrc21+cdrc22+cdrc23)]]</para>
|
||||
<para style="P19">[[ _set_variable('charges', ct1+cdrc16+ct3+ct4+cdrc24+cdrc25)]]</para>
|
||||
<para style="P19">[[ _set_variable('pta', cdrp1+cdrp2)]]</para>
|
||||
<para style="P19">[[ _set_variable('ptb', cdrp3+cdrp4+cdrp5+cdrp6+cdrp7)]]</para>
|
||||
<para style="P19">[[ _set_variable('pt1', pta+ptb)]]</para>
|
||||
<para style="P19">[[ _set_variable('pt3', cdrp9+cdrp10+cdrp11+cdrp12+cdrp13+cdrp14)]]</para>
|
||||
<para style="P19">[[ _set_variable('pt4', cdrp15+cdrp16+cdrp17)]]</para>
|
||||
<para style="P19">[[ _set_variable('produits', pt1+cdrp8+pt3+pt4)]]</para>
|
||||
<blockTable colWidths="165.0,160.0,156.0" style="Tableau">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P28">[[ company.name ]]</para>
|
||||
<para style="P26">période du [[ time.strftime('%d-%m-%Y',time.strptime(date_start,'%Y-%m-%d'))]] au [[ time.strftime('%d-%m-%Y',time.strptime(date_stop,'%Y-%m-%d'))]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P22">Compte de résultat</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P23">Imprimé le : [[ time.strftime('%d-%m-%Y') ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P20">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P19">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P21">Tenue de Compte : [[ company.currency_id.name ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<para style="P27">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<blockTable colWidths="309.0,173.0" style="Tableau3">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P3">CHARGES ( hors taxes )</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P1">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P4">CHARGES D'EXPLOITATION</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P17">Achat de marchandises</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[ '%.2f' % cdrc1 ]] </para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Variation des stocks</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc2]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Achats de matières premières et autres approvisionnements</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc3]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P17">Variation des stocks</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc4]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Autres achats et charges externes</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc5]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Redevances de crédit-bail mobilier</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc6]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Redevances de crédit-bail immobilier</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc7]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Impôts, taxes et versements assimilés</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc8]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Salaires et traitements</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc9]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P17">Charges sociales</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc10]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P17">Dotation aux amortissements et aux dépréciations</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P12">Sur immobilisations : dotations aux amortissements</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc11]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P12">Sur immobilisations : dotations aux dépréciations</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc12]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P12">Sur actif circulant : dotations aux dépréciations</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc13]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P12">Dotations aux provisions</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc14]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P12">Autres charges</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc15]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P16">TOTAL I</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[ct1]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P5">Quotes-parts de résultat sur opérations faites en commun ( II )</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc16]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P15">CHARGES FINANCIÈRES</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Dotations aux amortissements, aux dépréciations et aux provisions</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc17]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Intérêts et charges assimilées</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc18]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Différences négatives de change</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc19]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Charges nettes sur cessions de valeurs mobilières de placement</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc20]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P16">TOTAL III</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[ct3]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P18">CHARGES EXCEPTIONNELLES</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P1">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P6">Sur opérations de gestion</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc21]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P6">Sur opérations en capital</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc22]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P6">Dotations aux amortissements, aux dépréciations et aux provisions</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc23]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P7">TOTAL IV</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[ct4]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P8">Participation des salariés aux résultats <font face="Times-Roman" size="7.0">( V )</font>
|
||||
</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc24]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P9">Impôts sur les bénéfices <font face="Times-Roman" size="7.0">( VI )</font>
|
||||
</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrc25]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P16">TOTAL CHARGES ( I + II + III <font face="Times-Bold" size="7.0">+ IV+ V+ VI</font> )</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[charges]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<para style="P24">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<pageBreak/>
|
||||
<para style="P25">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<para style="P24">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<blockTable colWidths="309.0,173.0" style="Tableau1">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P3">PRODUITS (hors taxes)</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P1">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P4">PRODUITS D'EXPLOITATION</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P17">Vente de marchandises</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp1]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Production vendue [biens et services]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp2]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P13">Sous-total A - Montant net du chiffre d'affaires</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[pta]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P17">Production stockée</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp3]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Production immobilisée</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp4]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Subventions d'exploitation</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp5]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Reprises sur provisions, dépréciations (et amortissements) et transferts de charges</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp6]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Autres produits</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp7]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P13">Sous-total B</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[ptb]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P14">TOTAL I ( A + B )</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[pt1]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P5">Quotes-parts de résultat sur opérations faites en commun (II)</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp8]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P15">PRODUITS FINANCIERS</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P11">De participation</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp9]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P11">D'autres valeurs mobilières et créances de l'actif immobilisé</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp10]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Autres intérêts et produits assimilés</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp11]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Reprises sur provisions, dépréciations et transferts de charges</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp12]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Différences positives de change</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp13]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P10">Produits nets sur cessions de valeurs mobilières de placement</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp14]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P16">TOTAL III</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[pt3]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P18">PRODUITS EXCEPTIONNELS</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P1">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P6">Sur opérations de gestion</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp15]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P6">Sur opérations en capital</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp16]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P6">Reprises sur provisions, dépréciations et transferts de charges</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[cdrp17]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P7">TOTAL IV</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[pt4]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P16">TOTAL DES PRODUITS ( I + II + III + IV )</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[produits]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P16">PRODUITS - CHARGES</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">[[produits-charges]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<para style="Standard">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</story>
|
||||
</document>
|
||||
|
|
@ -21,6 +21,8 @@
|
|||
##############################################################################
|
||||
|
||||
import wizard_chart_report
|
||||
import wizard_bilan
|
||||
import wizard_cdr
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
##############################################################################
|
||||
#
|
||||
# Copyright (c) 2008 JAILLET Simon - CrysaLEAD - www.crysalead.fr
|
||||
#
|
||||
# WARNING: This program as such is intended to be used by professional
|
||||
# programmers who take the whole responsability of assessing all potential
|
||||
# consequences resulting from its eventual inadequacies and bugs
|
||||
# End users who are looking for a ready-to-use solution with commercial
|
||||
# garantees and support are strongly adviced to contract a Free Software
|
||||
# Service Company
|
||||
#
|
||||
# This program is Free Software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# 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 General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
import wizard
|
||||
import pooler
|
||||
|
||||
dates_form = '''<?xml version="1.0"?>
|
||||
<form string="Select year">
|
||||
<field name="fiscalyear" colspan="4"/>
|
||||
</form>'''
|
||||
|
||||
dates_fields = {
|
||||
'fiscalyear': {'string': 'Fiscal year', 'type': 'many2one', 'relation': 'account.fiscalyear', 'required': True}
|
||||
}
|
||||
|
||||
class wizard_report(wizard.interface):
|
||||
def _get_defaults(self, cr, uid, data, context):
|
||||
fiscalyear_obj = pooler.get_pool(cr.dbname).get('account.fiscalyear')
|
||||
data['form']['fiscalyear'] =fiscalyear_obj.find(cr, uid)
|
||||
return data['form']
|
||||
|
||||
states = {
|
||||
'init': {
|
||||
'actions': [_get_defaults],
|
||||
'result': {'type':'form', 'arch':dates_form, 'fields':dates_fields, 'state':[('end','Cancel'),('report','Print')]}
|
||||
},
|
||||
'report': {
|
||||
'actions': [],
|
||||
'result': {'type':'print', 'report':'l10n.fr.bilan', 'state':'end'}
|
||||
}
|
||||
}
|
||||
wizard_report('l10n.fr.bilan.report')
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
##############################################################################
|
||||
#
|
||||
# Copyright (c) 2008 JAILLET Simon - CrysaLEAD - www.crysalead.fr
|
||||
#
|
||||
# WARNING: This program as such is intended to be used by professional
|
||||
# programmers who take the whole responsability of assessing all potential
|
||||
# consequences resulting from its eventual inadequacies and bugs
|
||||
# End users who are looking for a ready-to-use solution with commercial
|
||||
# garantees and support are strongly adviced to contract a Free Software
|
||||
# Service Company
|
||||
#
|
||||
# This program is Free Software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# 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 General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
import wizard
|
||||
import pooler
|
||||
|
||||
dates_form = '''<?xml version="1.0"?>
|
||||
<form string="Select period">
|
||||
<field name="fiscalyear" colspan="4"/>
|
||||
</form>'''
|
||||
|
||||
dates_fields = {
|
||||
'fiscalyear': {'string': 'Fiscal year', 'type': 'many2one', 'relation': 'account.fiscalyear', 'required': True}
|
||||
}
|
||||
|
||||
class wizard_report(wizard.interface):
|
||||
def _get_defaults(self, cr, uid, data, context):
|
||||
fiscalyear_obj = pooler.get_pool(cr.dbname).get('account.fiscalyear')
|
||||
data['form']['fiscalyear'] = fiscalyear_obj.find(cr, uid)
|
||||
return data['form']
|
||||
|
||||
states = {
|
||||
'init': {
|
||||
'actions': [_get_defaults],
|
||||
'result': {'type':'form', 'arch':dates_form, 'fields':dates_fields, 'state':[('end','Cancel'),('report','Print')]}
|
||||
},
|
||||
'report': {
|
||||
'actions': [],
|
||||
'result': {'type':'print', 'report':'l10n.fr.cdr', 'state':'end'}
|
||||
}
|
||||
}
|
||||
wizard_report('l10n.fr.cdr.report')
|
||||
|
|
@ -43,7 +43,7 @@
|
|||
* Allows to browse Bill of Materials in complete structure
|
||||
that include child and phantom BoMs
|
||||
It supports complete integration and planification of stockable goods,
|
||||
consumable of services. Services are completly integrated with the rest
|
||||
consumable of services. Services are completely integrated with the rest
|
||||
of the software. For instance, you can set up a sub-contracting service
|
||||
in a BoM to automatically purchase on order the assembly of your production.
|
||||
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
This module adds state, date_start,date_stop in production order operation lines
|
||||
(in the "Workcenters" tab)
|
||||
State: draft, confirm, done, cancel
|
||||
When finnishing/confirming,cancelling production orders set all state lines to the according state
|
||||
When finishing/confirming,cancelling production orders set all state lines to the according state
|
||||
Create menus:
|
||||
Production Management > All Operations
|
||||
Production Management > All Operations > Operations To Do (state="confirm")
|
||||
|
@ -48,7 +48,7 @@
|
|||
must become done.
|
||||
|
||||
The field delay is the delay(stop date - start date).
|
||||
So that we can compare the theoric delay and real delay.
|
||||
So that we can compare the theoretic delay and real delay.
|
||||
|
||||
""",
|
||||
"init_xml" : [],
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
* Add/remove products in the reparation
|
||||
* Impact for stocks
|
||||
* Invoicing (products and/or services)
|
||||
* Warrenty concept
|
||||
* Warranty concept
|
||||
* Repair quotation report
|
||||
* Notes for the technician and for the final customer
|
||||
""",
|
||||
|
|
|
@ -32,18 +32,18 @@
|
|||
|
||||
Products support variants, different pricing methods, suppliers
|
||||
information, make to stock/order, different unit of measures,
|
||||
packagins and properties.
|
||||
packagings and properties.
|
||||
|
||||
Pricelists supports:
|
||||
* Multiple-level of discount (by product, category, quantities)
|
||||
* Compute price based on different criterions:
|
||||
* Compute price based on different criteria:
|
||||
* Other pricelist,
|
||||
* Cost price,
|
||||
* List price,
|
||||
* Supplier price, ...
|
||||
Pricelists preferences by product and/or partners.
|
||||
|
||||
Print product labels with barcodes.
|
||||
Print product labels with barcode.
|
||||
""",
|
||||
"update_xml" : [
|
||||
"security/product_security.xml",
|
||||
|
|
|
@ -26,6 +26,7 @@ from osv import fields, osv
|
|||
from _common import rounding
|
||||
import time
|
||||
from tools import config
|
||||
from tools.misc import ustr
|
||||
from tools.translate import _
|
||||
|
||||
class price_type(osv.osv):
|
||||
|
@ -101,7 +102,7 @@ class product_pricelist(osv.osv):
|
|||
|
||||
|
||||
def _get_currency(self, cr, uid, ctx):
|
||||
comp = self.pool.get('res.users').browse(cr,uid,uid).company_id
|
||||
comp = self.pool.get('res.users').browse(cr, uid, uid).company_id
|
||||
if not comp:
|
||||
comp_id = self.pool.get('res.company').search(cr, uid, [])[0]
|
||||
comp = self.pool.get('res.company').browse(cr, uid, comp_id)
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
"category":"Custom",
|
||||
"description": """
|
||||
Adds a reporting menu in products that computes sales, purchases, margins
|
||||
and others interresting indicators based on invoices. The wizard to launch
|
||||
and others interesting indicators based on invoices. The wizard to launch
|
||||
the report has several options to help you get the data you need.
|
||||
""",
|
||||
"depends":["base","product","account"],
|
||||
|
|
|
@ -26,7 +26,8 @@
|
|||
"website" : "http://www.openerp.com",
|
||||
"category" : "Generic Modules/Projects & Services",
|
||||
"depends" : ["product", "account", "hr", "process"],
|
||||
"description": "Project management module that track multi-level projects, tasks, works done on tasks, eso. It is able to render planning, order tasks, eso.",
|
||||
"description": """Project management module that track multi-level projects, tasks, works done on tasks, eso. It is able to render planning,
|
||||
order tasks, delegate task, print gantt chart eso.""",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : ["project_demo.xml"],
|
||||
"update_xml": [
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
"depends" : ["project"],
|
||||
"description": """
|
||||
This module implements all concepts defined by the Getting Things Done
|
||||
methodology. This world-wide used methodology is used for personnal
|
||||
methodology. This world-wide used methodology is used for personal
|
||||
time management improvement.
|
||||
|
||||
Getting Things Done (commonly abbreviated as GTD) is an action management
|
||||
|
|
|
@ -26,7 +26,8 @@
|
|||
"website" : "http://www.openerp.com",
|
||||
"depends" : ["base", "account", "stock", "process"],
|
||||
"category" : "Generic Modules/Sales & Purchases",
|
||||
"description": "Module for purchase management",
|
||||
"description": """Module for purchase management
|
||||
Request for quotation, Create Supplier Invoice, Print Order...""",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : ["purchase_demo.xml",
|
||||
#"purchase_unit_test.xml"
|
||||
|
|
|
@ -26,7 +26,8 @@
|
|||
"website" : "http://www.openerp.com",
|
||||
"depends" : ["crm"],
|
||||
"category" : "Generic Modules/CRM & SRM",
|
||||
"description": "A module that adds new reports based on CRM cases.",
|
||||
"description": """A module that adds new reports based on CRM cases.
|
||||
Case By section, Case By category""",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : [],
|
||||
"update_xml" : [
|
||||
|
|
|
@ -27,8 +27,8 @@
|
|||
"category" : "Generic Modules/Document Management",
|
||||
"description": """
|
||||
Reporting for the Document Management module:
|
||||
* Files by my
|
||||
* Files by all users
|
||||
* My Files
|
||||
* All users Files
|
||||
""",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : [],
|
||||
|
|
|
@ -26,7 +26,8 @@
|
|||
"website": "http://www.openerp.com",
|
||||
"depends": ["mrp"],
|
||||
"category": "Generic Modules/Production",
|
||||
"description": "A module that adds new reports based on MRP cases.",
|
||||
"description": """A module that adds new reports based on MRP cases.
|
||||
Workcenter loads, Weekly Stock value variation""",
|
||||
"init_xml": [],
|
||||
"demo_xml": [],
|
||||
"update_xml": [
|
||||
|
|
|
@ -26,7 +26,8 @@
|
|||
"website" : "http://www.openerp.com",
|
||||
"depends" : ["project", "report_task"],
|
||||
"category" : "Generic Modules/Sales & Purchases",
|
||||
"description": "A module that adds some reports on the sales",
|
||||
"description": """A module that adds some reports on projects.
|
||||
Closed Tasks (By User and By Project), Finished Task (By User and By Project)""",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : [],
|
||||
"update_xml" : [
|
||||
|
|
|
@ -34,9 +34,9 @@ case.
|
|||
The case is then closed and linked to the generated sale order.
|
||||
|
||||
It also add a shortcut on one or several partners.
|
||||
This shorcut allows you to generate a CRM case for the partners.
|
||||
This shortcut allows you to generate a CRM case for the partners.
|
||||
|
||||
We sugest you to install this module if you installed both the sale and the
|
||||
We suggest you to install this module if you installed both the sale and the
|
||||
crm_configuration modules.
|
||||
""",
|
||||
"init_xml" : [],
|
||||
|
|
|
@ -35,9 +35,9 @@
|
|||
"picking_journal_view_report.xml"
|
||||
],
|
||||
"description" : """
|
||||
The sale journal modules allows you to categorize your
|
||||
The sale journal modules allows you to categorise your
|
||||
sales and deliveries (packing lists) between different journals.
|
||||
This module is very helpfull for bigger companies that
|
||||
This module is very helpful for bigger companies that
|
||||
works by departments.
|
||||
|
||||
You can use journal for different purposes, some examples:
|
||||
|
@ -48,7 +48,7 @@
|
|||
* draft, open, cancel, done.
|
||||
|
||||
Batch operations can be processed on the different journals to
|
||||
confirm all sales at once, to validate or invoice packings, ...
|
||||
confirm all sales at once, to validate or invoice packing, ...
|
||||
|
||||
It also supports batch invoicing methods that can be configured by
|
||||
partners and sales orders, examples:
|
||||
|
|
|
@ -35,11 +35,11 @@
|
|||
* Sprint backlog
|
||||
|
||||
It adds some concepts to the project management module:
|
||||
* Mid-term, long-term roadmaps
|
||||
* Customers/functionnal requests, vs technical ones
|
||||
* Mid-term, long-term road-map
|
||||
* Customers/functional requests VS technical ones
|
||||
|
||||
It also create a new reporting:
|
||||
* Burndown chart
|
||||
* Burn-down chart
|
||||
|
||||
The scrum projects and tasks inherits from the real projects and
|
||||
tasks, so you can continue working on normal tasks that will also
|
||||
|
|
|
@ -834,6 +834,7 @@
|
|||
domain="[('product_id','=',product_id)]"
|
||||
on_change="onchange_lot_id(prodlot_id,product_qty, location_id)"/>
|
||||
<field groups="base.group_extended" name="tracking_id" select="1"/>
|
||||
<label/>
|
||||
<button name="%(track_line)d" string="Split in production lots" type="action"/>
|
||||
<separator colspan="4" string="Move State"/>
|
||||
<field name="state" select="1"/>
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
"description":"""
|
||||
Manages product's path in locations.
|
||||
|
||||
This module may be usefull for different purposes:
|
||||
This module may be useful for different purposes:
|
||||
* Manages the product in his whole manufacturing chain
|
||||
* Manages different default locations by products
|
||||
* Define paths within the warehouse to route products based on operations:
|
||||
|
|
Loading…
Reference in New Issue