diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index e59761c3414..c0bd50eb7bc 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -122,16 +122,16 @@
-
+
-
-
+
+
-
+
@@ -338,7 +338,7 @@
-
+
@@ -382,7 +382,7 @@
-
+
@@ -599,14 +599,14 @@
-
+
-
+
@@ -701,23 +701,23 @@
-
-
+
+
-
-
+
+
-
+
-
-
+
+
@@ -728,11 +728,11 @@
-
+
-
+
@@ -754,14 +754,14 @@
-
+
-
+
-
+
-
-
+
+
@@ -780,7 +780,7 @@
-
+
@@ -861,13 +861,13 @@
-
+
@@ -1315,7 +1315,7 @@
-
+
@@ -1328,7 +1328,7 @@
-
+
@@ -1485,6 +1485,7 @@
+ onskip
@@ -1534,7 +1535,7 @@
-
+
@@ -1627,13 +1628,13 @@
-
-
+
+
-
+
diff --git a/addons/account/i18n/bg.po b/addons/account/i18n/bg.po
index 4ce6d517320..11d92443f73 100644
--- a/addons/account/i18n/bg.po
+++ b/addons/account/i18n/bg.po
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
-"PO-Revision-Date: 2009-12-17 23:18+0000\n"
-"Last-Translator: Sianna \n"
+"PO-Revision-Date: 2010-04-17 18:26+0000\n"
+"Last-Translator: Boris \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2010-04-17 04:05+0000\n"
+"X-Launchpad-Export-Date: 2010-04-19 03:45+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
@@ -55,7 +55,7 @@ msgstr "Актив"
#. module: account
#: constraint:ir.actions.act_window:0
msgid "Invalid model name in the action definition."
-msgstr ""
+msgstr "Невалидно име на модел при задаването на действие."
#. module: account
#: help:account.journal,currency:0
@@ -257,7 +257,7 @@ msgstr "Данъци за доставчици"
#. module: account
#: view:account.move:0
msgid "Total Debit"
-msgstr ""
+msgstr "Общ дебит"
#. module: account
#: rml:account.tax.code.entries:0
@@ -370,7 +370,7 @@ msgstr "Аналитична сметка"
#: field:account.tax,child_depend:0
#: field:account.tax.template,child_depend:0
msgid "Tax on Children"
-msgstr ""
+msgstr "Данък върху подчинени"
#. module: account
#: rml:account.central.journal:0
@@ -387,7 +387,7 @@ msgstr "Описание на фактура"
#. module: account
#: constraint:account.analytic.account:0
msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
+msgstr "Грешка! Не можете да създадете рекурсивни аналитични сметки."
#. module: account
#: field:account.bank.statement.reconcile,total_entry:0
@@ -398,7 +398,7 @@ msgstr "Общо записи"
#: field:account.fiscal.position.account,account_src_id:0
#: field:account.fiscal.position.account.template,account_src_id:0
msgid "Account Source"
-msgstr ""
+msgstr "Счетоводен източник"
#. module: account
#: field:account.journal,update_posted:0
@@ -537,7 +537,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_account_tax_template_form
#: model:ir.ui.menu,name:account.menu_action_account_tax_template_form
msgid "Tax Templates"
-msgstr ""
+msgstr "Шаблони на данъци"
#. module: account
#: field:account.invoice,reconciled:0
@@ -552,13 +552,13 @@ msgstr "Отложен метод"
#. module: account
#: field:account.tax.template,include_base_amount:0
msgid "Include in Base Amount"
-msgstr ""
+msgstr "Включване в основната сума"
#. module: account
#: field:account.tax,ref_base_code_id:0
#: field:account.tax.template,ref_base_code_id:0
msgid "Refund Base Code"
-msgstr ""
+msgstr "Базов код на обезщетение"
#. module: account
#: view:account.invoice.line:0
@@ -591,7 +591,7 @@ msgstr "account.tax"
#. module: account
#: rml:account.central.journal:0
msgid "Printing Date"
-msgstr ""
+msgstr "Дата на отпечатване"
#. module: account
#: rml:account.general.ledger:0
diff --git a/addons/account/i18n/ca.po b/addons/account/i18n/ca.po
index 80379fedc09..6ff1b7a22e7 100644
--- a/addons/account/i18n/ca.po
+++ b/addons/account/i18n/ca.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
-"PO-Revision-Date: 2009-12-31 12:45+0000\n"
+"PO-Revision-Date: 2010-04-18 09:39+0000\n"
"Last-Translator: Albert Cervera i Areny - http://www.NaN-tic.com \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2010-04-17 04:05+0000\n"
+"X-Launchpad-Export-Date: 2010-04-19 03:46+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
@@ -41,7 +41,7 @@ msgstr "Codificació assentaments"
#. module: account
#: model:ir.actions.todo,note:account.config_wizard_account_base_setup_form
msgid "Specify The Message for the Overdue Payment Report."
-msgstr ""
+msgstr "Especifiquel el missage per als pagaments fora de termini."
#. module: account
#: model:process.transition,name:account.process_transition_confirmstatementfromdraft0
@@ -326,7 +326,7 @@ msgstr "Origen"
#. module: account
#: rml:account.analytic.account.journal:0
msgid "Move Name"
-msgstr ""
+msgstr "Nom de l'assentament"
#. module: account
#: xsl:account.transfer:0
@@ -436,7 +436,7 @@ msgstr "Negatiu"
#. module: account
#: rml:account.partner.balance:0
msgid "(Account/Partner) Name"
-msgstr ""
+msgstr "(Compte/Empresa) Nom"
#. module: account
#: selection:account.move,type:0
@@ -482,7 +482,7 @@ msgstr "Conciliació bancària"
#. module: account
#: rml:account.invoice:0
msgid "Disc.(%)"
-msgstr ""
+msgstr "Desc.(%)"
#. module: account
#: rml:account.general.ledger:0
@@ -1160,7 +1160,7 @@ msgstr "Preu un."
#. module: account
#: rml:account.analytic.account.journal:0
msgid "Period from :"
-msgstr ""
+msgstr "Període des de:"
#. module: account
#: model:ir.model,name:account.model_wizard_multi_charts_accounts
@@ -1353,7 +1353,7 @@ msgstr "Homòleg centralitzat"
#. module: account
#: view:wizard.company.setup:0
msgid "Message"
-msgstr ""
+msgstr "Missatge"
#. module: account
#: model:process.node,note:account.process_node_supplierpaymentorder0
@@ -1516,7 +1516,7 @@ msgstr "Tanca estats"
#. module: account
#: model:ir.model,name:account.model_wizard_company_setup
msgid "wizard.company.setup"
-msgstr ""
+msgstr "wizard.company.setup"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_analytic_account_line_extended_form
@@ -1854,7 +1854,7 @@ msgstr "Compte director"
#. module: account
#: rml:account.analytic.account.journal:0
msgid "to :"
-msgstr ""
+msgstr "a:"
#. module: account
#: wizard_field:account.move.line.reconcile,init_full,debit:0
@@ -2186,7 +2186,7 @@ msgstr "Assentament analític"
#. module: account
#: view:res.company:0 field:res.company,overdue_msg:0
msgid "Overdue Payments Message"
-msgstr ""
+msgstr "Missatge de pagaments fora de termini"
#. module: account
#: model:ir.actions.act_window,name:account.action_tax_code_tree
@@ -2488,7 +2488,7 @@ msgstr "Obre diari"
#. module: account
#: rml:account.analytic.account.journal:0
msgid "KI"
-msgstr ""
+msgstr "KI"
#. module: account
#: model:ir.actions.wizard,name:account.action_account_analytic_line
@@ -2681,7 +2681,7 @@ msgstr "Patrimoni"
#. module: account
#: field:wizard.company.setup,overdue_msg:0
msgid "Overdue Payment Message"
-msgstr ""
+msgstr "Missage dels pagaments fora de termini"
#. module: account
#: model:ir.model,name:account.model_account_tax_code_template
@@ -2743,7 +2743,7 @@ msgstr "-"
#. module: account
#: rml:account.analytic.account.journal:0
msgid "asgfas"
-msgstr ""
+msgstr "asgfas"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_analytic_account_tree2
@@ -3898,7 +3898,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account.action_wizard_company_setup_form
#: view:wizard.company.setup:0
msgid "Overdue Payment Report Message"
-msgstr ""
+msgstr "Missatge de l'informe dels pagaments fora de termini"
#. module: account
#: selection:account.tax,tax_group:0
diff --git a/addons/account/i18n/de.po b/addons/account/i18n/de.po
index f6d352c5e1d..b1186085eb9 100644
--- a/addons/account/i18n/de.po
+++ b/addons/account/i18n/de.po
@@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2010-04-17 04:06+0000\n"
+"X-Launchpad-Export-Date: 2010-04-18 03:49+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
diff --git a/addons/account/partner_view.xml b/addons/account/partner_view.xml
index 8af1b79c7cf..494c0f71a48 100644
--- a/addons/account/partner_view.xml
+++ b/addons/account/partner_view.xml
@@ -84,23 +84,23 @@
-
-
+
+
-
+
-
+
diff --git a/addons/account_analytic_plans/i18n/ko.po b/addons/account_analytic_plans/i18n/ko.po
index 2a22a84bee6..4695d7c6f35 100644
--- a/addons/account_analytic_plans/i18n/ko.po
+++ b/addons/account_analytic_plans/i18n/ko.po
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2010-04-17 04:11+0000\n"
+"X-Launchpad-Export-Date: 2010-04-18 03:49+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account_analytic_plans
diff --git a/addons/account_anglo_saxon/i18n/es.po b/addons/account_anglo_saxon/i18n/es.po
index b34db9df7be..e5e324757a8 100644
--- a/addons/account_anglo_saxon/i18n/es.po
+++ b/addons/account_anglo_saxon/i18n/es.po
@@ -8,13 +8,13 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2009-11-24 12:50+0000\n"
-"PO-Revision-Date: 2010-03-24 17:25+0000\n"
-"Last-Translator: relojero \n"
+"PO-Revision-Date: 2010-04-17 21:08+0000\n"
+"Last-Translator: Rodrigo Machado Laprebendere \n"
"Language-Team: Spanish \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2010-04-17 04:21+0000\n"
+"X-Launchpad-Export-Date: 2010-04-19 03:46+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account_anglo_saxon
@@ -38,16 +38,29 @@ msgid ""
" when the invoice is created to transfer this amount to the debtor or "
"creditor account."
msgstr ""
+"Éste módulo soportará la metodología de contabilización Anglosajona \n"
+" cambiando la lógica de contabilización con transacciones de acciones. La "
+"diferencia entre los países de contabilización Anglosajona \n"
+" y el Rin o también llamados países de contabilización Continental es el "
+"momento de tomar el Costo de Bienes Vendidos contra el Costo de Ventas. \n"
+" La contabilización Anglosajona toma el costo cuando la factura de ventas "
+"es creada, la contabilización Continental tomará el costo en el momento en "
+"que los bienes son enviados.\n"
+" Éste módulo agregará esta funcionalidad usando una cuenta provisional, "
+"para almacenar el valor de los bienes enviados y devolverá esta cuenta "
+"provisional \n"
+" cuando la factura sea creada para transferir esta cantidad al deudor o "
+"acreedor de la cuenta."
#. module: account_anglo_saxon
#: model:ir.module.module,shortdesc:account_anglo_saxon.module_meta_information
msgid "Stock Account"
-msgstr ""
+msgstr "Cuenta de Valores"
#. module: account_anglo_saxon
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
-msgstr ""
+msgstr "¡XML Inválido para la Arquitectura de la Vista!"
#. module: account_anglo_saxon
#: field:product.category,property_account_creditor_price_difference_categ:0
diff --git a/addons/account_balance/i18n/oc.po b/addons/account_balance/i18n/oc.po
index b1a85b1ca9a..353d32d50de 100644
--- a/addons/account_balance/i18n/oc.po
+++ b/addons/account_balance/i18n/oc.po
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2010-04-17 04:09+0000\n"
+"X-Launchpad-Export-Date: 2010-04-18 03:49+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account_balance
diff --git a/addons/account_budget/crossovered_budget_view.xml b/addons/account_budget/crossovered_budget_view.xml
index ed5be32a2c1..56008013075 100644
--- a/addons/account_budget/crossovered_budget_view.xml
+++ b/addons/account_budget/crossovered_budget_view.xml
@@ -296,7 +296,7 @@
-
+
@@ -177,6 +177,7 @@
states="draft,open" type="object"
icon="gtk-media-pause" />
-
+
diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py
index 9b034890fed..546431ac7c7 100644
--- a/addons/crm/crm_lead.py
+++ b/addons/crm/crm_lead.py
@@ -81,7 +81,8 @@ class crm_lead(osv.osv):
resource_id = False
if lead.user_id:
resource_ids = res_obj.search(cr, uid, [('user_id','=',lead.user_id.id)])
- resource_id = len(resource_ids) or resource_ids[0]
+ if len(resource_ids):
+ resource_id = resource_ids[0]
duration = float(ans.days)
if lead.section_id.resource_calendar_id:
@@ -122,7 +123,7 @@ class crm_lead(osv.osv):
'opportunity_id': fields.many2one('crm.opportunity', 'Opportunity'),
'user_id': fields.many2one('res.users', 'Salesman'),
- 'referred': fields.char('Referred By', size=32),
+ 'referred': fields.char('Referred By', size=64),
'date_open': fields.datetime('Opened', readonly=True),
'day_open': fields.function(_compute_day, string='Days to Open', \
method=True, multi='day_open', type="integer", store=True),
diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml
index 8e34bca3118..d9424b77fc4 100644
--- a/addons/crm/crm_lead_menu.xml
+++ b/addons/crm/crm_lead_menu.xml
@@ -25,10 +25,11 @@
+ parent="base.menu_base_partner" sequence="1" />
+ groups="base.group_extended"
+ id="menu_crm_case_categ0_act_leads"
+ action="crm_case_category_act_leads_all" sequence="1" />
diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml
index 9dad22dba81..829372fb30b 100644
--- a/addons/crm/crm_lead_view.xml
+++ b/addons/crm/crm_lead_view.xml
@@ -13,6 +13,7 @@
{'object_id':'crm.lead'}
@@ -27,6 +28,7 @@
@@ -42,18 +44,17 @@
+ name="convert_opportunity"
+ string="Convert"
+ help="Convert to Opportunity"
+ icon="gtk-index"
+ type="object"
+ attrs="{'invisible':[('opportunity_id','!=',False)]}"/>
-
+
@@ -117,6 +118,7 @@
icon="gtk-media-pause" />
@@ -223,9 +225,9 @@
states="open,draft,pending" type="object"
icon="gtk-close" />
+ type="object" />
diff --git a/addons/crm/crm_meeting.py b/addons/crm/crm_meeting.py
index d76a31136ae..e0b968a1808 100644
--- a/addons/crm/crm_meeting.py
+++ b/addons/crm/crm_meeting.py
@@ -33,9 +33,7 @@ crm_opportunity()
class crm_phonecall(osv.osv):
""" CRM Phonecall """
-
_name = 'crm.phonecall'
-
crm_phonecall()
diff --git a/addons/crm/crm_meeting_view.xml b/addons/crm/crm_meeting_view.xml
index 766a0fdf6aa..35415a9d028 100644
--- a/addons/crm/crm_meeting_view.xml
+++ b/addons/crm/crm_meeting_view.xml
@@ -29,7 +29,9 @@
colspan="4" />
+
-
+
-
+
-
-
+
+
-
+
@@ -155,7 +158,7 @@
-
+
diff --git a/addons/crm/crm_opportunity.py b/addons/crm/crm_opportunity.py
index ad38f746c51..3e1fc24a803 100644
--- a/addons/crm/crm_opportunity.py
+++ b/addons/crm/crm_opportunity.py
@@ -39,7 +39,7 @@ class crm_opportunity(osv.osv):
_name = "crm.opportunity"
_description = "Opportunity Cases"
- _order = "priority,id desc"
+ _order = "priority,date_action,id desc"
_inherit = 'crm.case'
def case_open(self, cr, uid, ids, *args):
@@ -88,7 +88,8 @@ class crm_opportunity(osv.osv):
resource_id = False
if opportunity.user_id:
resource_ids = res_obj.search(cr, uid, [('user_id','=',opportunity.user_id.id)])
- resource_id = len(resource_ids) and resource_ids[0] or False
+ if resource_ids and len(resource_ids):
+ resource_id = resource_ids[0]
duration = float(ans.days)
if opportunity.section_id.resource_calendar_id:
@@ -118,9 +119,8 @@ class crm_opportunity(osv.osv):
'categ_id': fields.many2one('crm.case.categ', 'Category', \
domain="[('section_id','=',section_id), \
('object_id.model', '=', 'crm.opportunity')]"),
- 'type_id': fields.many2one('crm.case.resource.type', 'Resource Type',\
- domain="[('section_id','=',section_id),('object_id.model', '=', 'crm.opportunity')]"),
'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),
+ 'referred': fields.char('Referred By', size=64),
'probability': fields.float('Probability (%)'),
'planned_revenue': fields.float('Expected Revenue'),
'ref': fields.reference('Reference', selection=crm._links_get, size=128),
@@ -129,6 +129,7 @@ class crm_opportunity(osv.osv):
'user_id': fields.many2one('res.users', 'Salesman'),
'phone': fields.char("Phone", size=64),
'date_deadline': fields.date('Expected Closing'),
+ 'date_action': fields.date('Next Action'),
'state': fields.selection(AVAILABLE_STATES, 'State', size=16, readonly=True,
help='The state is set to \'Draft\', when a case is created.\
\nIf the case is in progress the state is set to \'Open\'.\
diff --git a/addons/crm/crm_opportunity_demo.xml b/addons/crm/crm_opportunity_demo.xml
index e88e0f1ec8e..b893d536e44 100644
--- a/addons/crm/crm_opportunity_demo.xml
+++ b/addons/crm/crm_opportunity_demo.xml
@@ -18,7 +18,6 @@
-
@@ -34,7 +33,6 @@
-
@@ -51,7 +49,6 @@
-
@@ -68,7 +65,6 @@
-
@@ -84,7 +80,6 @@
-
diff --git a/addons/crm/crm_opportunity_view.xml b/addons/crm/crm_opportunity_view.xml
index 92b09919791..b7019885a4a 100644
--- a/addons/crm/crm_opportunity_view.xml
+++ b/addons/crm/crm_opportunity_view.xml
@@ -79,6 +79,10 @@
+
+
+
+
@@ -94,9 +98,7 @@
-
-
@@ -107,12 +109,13 @@
-
+
+
@@ -207,7 +211,6 @@
-
-
+
@@ -304,8 +307,6 @@
-
diff --git a/addons/crm/crm_phonecall_menu.xml b/addons/crm/crm_phonecall_menu.xml
index 9e6678c0834..8f5e66564f8 100644
--- a/addons/crm/crm_phonecall_menu.xml
+++ b/addons/crm/crm_phonecall_menu.xml
@@ -46,7 +46,8 @@
+ groups="base.group_extended"
+ parent="base.menu_base_partner" sequence="5" />
Inbound
@@ -81,8 +82,8 @@
+ parent="crm.menu_crm_case_phone"
+ action="crm_case_categ_phone_incoming0" />
Outbound
@@ -117,8 +118,8 @@
+ parent="crm.menu_crm_case_phone"
+ action="crm_case_categ_phone_outgoing0" />
diff --git a/addons/crm/crm_phonecall_view.xml b/addons/crm/crm_phonecall_view.xml
index 064d3569d03..dfa949ad0b7 100644
--- a/addons/crm/crm_phonecall_view.xml
+++ b/addons/crm/crm_phonecall_view.xml
@@ -184,7 +184,7 @@
help="Unassigned Phonecalls" />
+ select="1" widget="selection" string="Sales Team">
diff --git a/addons/crm/crm_report_view.xml b/addons/crm/crm_report_view.xml
index 33a2cdad479..9535992ab6a 100644
--- a/addons/crm/crm_report_view.xml
+++ b/addons/crm/crm_report_view.xml
@@ -5,7 +5,7 @@
- CRM Report - Sections and Type(Tree)
+ CRM Report - Teams and Type(Tree)report.crm.case.section.categ2tree
@@ -27,7 +27,7 @@
- CRM Report - Sections and Type(Form)
+ CRM Report - Teams and Type(Form)report.crm.case.section.categ2form
diff --git a/addons/crm/crm_view.xml b/addons/crm/crm_view.xml
index 356597fe10e..0d4bb763556 100644
--- a/addons/crm/crm_view.xml
+++ b/addons/crm/crm_view.xml
@@ -1,7 +1,8 @@
-
+
@@ -295,6 +296,7 @@
icon="gtk-media-pause" />
-
+
@@ -326,10 +328,10 @@
+ />
+ />
@@ -569,9 +572,9 @@
@@ -678,7 +682,7 @@
-
+
@@ -693,7 +697,8 @@
-
+
@@ -706,7 +711,8 @@
-
+
@@ -719,7 +725,8 @@
-
+
diff --git a/addons/crm/report/crm_claim_report_view.xml b/addons/crm/report/crm_claim_report_view.xml
index 465fab740a6..4d544c97711 100644
--- a/addons/crm/report/crm_claim_report_view.xml
+++ b/addons/crm/report/crm_claim_report_view.xml
@@ -10,17 +10,17 @@
tree
-
-
-
+
+
+
-
-
-
-
-
+
+
+
+
+
@@ -34,7 +34,7 @@
form
-
+
@@ -67,10 +67,10 @@
search
-
+ expr='//search[@string="Search"]/group[@string="Group By..."]/filter[@string="State"]'
+ position='after'>
+
@@ -81,29 +81,30 @@
Claimscrm.claim.reportform
- tree,graph
+ tree,graph{"search_default_section_id":section_id,"search_default_this_year":1,"search_default_this_month":1,"search_default_by_user":1}
-
-
- tree
-
-
-
+
+
+ tree
+
+
+
-
-
- graph
-
-
-
+
+
+ graph
+
+
+
-
+
diff --git a/addons/crm/report/crm_fundraising_report_view.xml b/addons/crm/report/crm_fundraising_report_view.xml
index fbc56e6202e..c051ab8dcb8 100644
--- a/addons/crm/report/crm_fundraising_report_view.xml
+++ b/addons/crm/report/crm_fundraising_report_view.xml
@@ -9,14 +9,14 @@
crm.fundraising.reporttree
-
-
-
-
+
+
+
+
-
+
-
+
@@ -36,7 +36,7 @@
form
-
+
@@ -85,23 +85,24 @@
-
-
- tree
-
-
-
+
+
+ tree
+
+
+
-
- graph
-
-
-
+
+ graph
+
+
+
+ action="action_report_crm_fundraising"
+ groups="base.group_extended"
+ id="menu_report_crm_fundraising_tree" parent="base.next_id_64" />
diff --git a/addons/crm/report/crm_helpdesk_report_view.xml b/addons/crm/report/crm_helpdesk_report_view.xml
index ba4e3be7ed2..0852d343c95 100644
--- a/addons/crm/report/crm_helpdesk_report_view.xml
+++ b/addons/crm/report/crm_helpdesk_report_view.xml
@@ -10,18 +10,18 @@
tree
-
-
-
+
+
+
-
-
+
+
-
+
@@ -34,7 +34,7 @@
form
-
+
@@ -59,46 +59,46 @@
-
+ crm.helpdesk.report.selectcrm.helpdesk.reportsearch
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
-
+
+
-
+
-
-
+
+
+ string="Lowest"
+ domain="[('priority','=','5')]"/>
-
+
-
+
-
+
-
+
@@ -137,30 +137,30 @@
+ domain="[]" context="{'group_by':'user_id'}" />
+ domain="[]"
+ context="{'group_by':'company_id'}" />
+ domain="[]"
+ context="{'group_by':'section_id'}" />
+ domain="[]" context="{'group_by':'state'}" />
+ domain="[]"
+ context="{'group_by':'partner_id'}" />
+ domain="[]" context="{'group_by':'month'}" />
+ domain="[]" context="{'group_by':'name'}" />
@@ -179,22 +179,23 @@
-
-
- tree
-
-
-
+
+
+ tree
+
+
+
-
- graph
-
-
-
+
+ graph
+
+
+
+ groups="base.group_extended"
+ id="menu_report_crm_helpdesks_tree" parent="base.next_id_64" />
diff --git a/addons/crm/report/crm_lead_report_view.xml b/addons/crm/report/crm_lead_report_view.xml
index 58d69699404..30c1ab2135c 100644
--- a/addons/crm/report/crm_lead_report_view.xml
+++ b/addons/crm/report/crm_lead_report_view.xml
@@ -10,16 +10,16 @@
tree
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
@@ -34,8 +34,8 @@
form
-
-
+
+
@@ -63,12 +63,12 @@
search
-
-
-
+
+
+
@@ -84,22 +84,23 @@
-
-
- tree
-
-
-
+
+
+ tree
+
+
+
-
-
- graph
-
-
-
+
+
+ graph
+
+
+
-
+
diff --git a/addons/crm/report/crm_opportunity_report.py b/addons/crm/report/crm_opportunity_report.py
index 560cfe17fd9..36dec45ddf7 100644
--- a/addons/crm/report/crm_opportunity_report.py
+++ b/addons/crm/report/crm_opportunity_report.py
@@ -32,7 +32,8 @@ class crm_opportunity_report(osv.osv):
'probability': fields.float('Avg. Probability', readonly=True, group_operator="avg"),
'amount_revenue': fields.float('Est.Revenue', readonly=True),
'amount_revenue_prob': fields.float('Est. Rev*Prob.', readonly=True),
- 'delay_close': fields.float('Delay to close', digits=(16,2), readonly=True, group_operator="avg"),
+ 'delay_close': fields.float('Days to Close', digits=(16,2), readonly=True, group_operator="avg",
+ help="Number of Days to close the opportunities"),
'categ_id': fields.many2one('crm.case.categ', 'Category',\
domain="[('section_id','=',section_id),\
('object_id.model', '=', 'crm.opportunity')]", readonly=True),
@@ -70,7 +71,7 @@ class crm_opportunity_report(osv.osv):
sum(planned_revenue) as amount_revenue,
sum((planned_revenue*probability)/100.0)::decimal(16,2) as amount_revenue_prob,
avg(probability)::decimal(16,2) as probability,
- avg(extract('epoch' from (date_closed-c.create_date)))/3600 as delay_close
+ avg(extract('epoch' from (date_closed-c.create_date)))/(3600*24) as delay_close
from
crm_opportunity c
group by
diff --git a/addons/crm/report/crm_opportunity_report_view.xml b/addons/crm/report/crm_opportunity_report_view.xml
index 8cd174843a7..58768ebceef 100644
--- a/addons/crm/report/crm_opportunity_report_view.xml
+++ b/addons/crm/report/crm_opportunity_report_view.xml
@@ -20,7 +20,7 @@
-
+
diff --git a/addons/crm/report/crm_phonecall_report_view.xml b/addons/crm/report/crm_phonecall_report_view.xml
index a78d94977f8..e937ef6bd22 100644
--- a/addons/crm/report/crm_phonecall_report_view.xml
+++ b/addons/crm/report/crm_phonecall_report_view.xml
@@ -10,17 +10,17 @@
tree
-
-
-
+
+
+
-
-
+
+
-
+
@@ -33,7 +33,7 @@
form
-
+
@@ -81,23 +81,24 @@
-
-
- tree
-
-
-
+
+
+ tree
+
+
+
-
- graph
-
-
-
+
+ graph
+
+
+
+ action="action_report_crm_phonecall"
+ groups="base.group_extended"
+ id="menu_report_crm_phonecalls_tree" parent="base.next_id_64" />
diff --git a/addons/crm/wizard/crm_lead_to_opportunity.py b/addons/crm/wizard/crm_lead_to_opportunity.py
index 6d96016b8ae..f4b97ad2f14 100644
--- a/addons/crm/wizard/crm_lead_to_opportunity.py
+++ b/addons/crm/wizard/crm_lead_to_opportunity.py
@@ -77,6 +77,7 @@ class crm_lead2opportunity(osv.osv_memory):
for this in self.browse(cr, uid, ids, context=context):
new_opportunity_id = opp_obj.create(cr, uid, {
'name': this.name,
+ 'referred': this.referred,
'planned_revenue': this.planned_revenue,
'probability': this.probability,
'partner_id': lead.partner_id and lead.partner_id.id or False ,
@@ -89,7 +90,6 @@ class crm_lead2opportunity(osv.osv_memory):
'phone': lead.phone,
'email_from': lead.email_from
})
-
new_opportunity = opp_obj.browse(cr, uid, new_opportunity_id)
vals = {
'partner_id': this.partner_id and this.partner_id.id or False,
diff --git a/addons/crm/wizard/crm_lead_to_opportunity_view.xml b/addons/crm/wizard/crm_lead_to_opportunity_view.xml
index eefd438c368..229b54e09fe 100644
--- a/addons/crm/wizard/crm_lead_to_opportunity_view.xml
+++ b/addons/crm/wizard/crm_lead_to_opportunity_view.xml
@@ -1,61 +1,63 @@
-
+
-
+
-
- crm.lead2opportunity.create
- crm.lead2opportunity
- form
-
-
-
-
-
-
-
-
- Create Opportunity
- ir.actions.act_window
- crm.lead2opportunity
- form
- form
- new
-
+
+ crm.lead2opportunity.create
+ crm.lead2opportunity
+ form
+
+
+
+
+
+
+
+
+ Create Opportunity
+ ir.actions.act_window
+ crm.lead2opportunity
+ form
+ form
+ new
+
- crm.lead2opportunity.partner.form
- crm.lead2opportunity.partner
- form
-
-
+
+
-
+
diff --git a/addons/crm/wizard/crm_lead_to_partner.py b/addons/crm/wizard/crm_lead_to_partner.py
index 2cd0ab541fe..267c3296844 100644
--- a/addons/crm/wizard/crm_lead_to_partner.py
+++ b/addons/crm/wizard/crm_lead_to_partner.py
@@ -53,42 +53,41 @@ class crm_lead2partner(osv.osv_memory):
raise osv.except_osv(_('Warning !'),
_('A partner is already defined on this lead.'))
- def _select_partner(self, cr, uid, context=None):
+ def default_get(self, cr, uid, fields, context=None):
"""
- This function Searches for Partner from selected lead.
+ This function gets default values
@param self: The object pointer
@param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param fields: List of fields for default value
@param context: A standard dictionary for contextual values
- @return : Partner id if any for selected lead.
+ @return : default values of fields.
"""
- if not context:
- context = {}
-
lead_obj = self.pool.get('crm.lead')
partner_obj = self.pool.get('res.partner')
contact_obj = self.pool.get('res.partner.address')
rec_ids = context and context.get('active_ids', [])
partner_id = False
- for lead in lead_obj.browse(cr, uid, rec_ids, context=context):
+ data = context and context.get('active_ids', []) or []
+ res = super(crm_lead2partner, self).default_get(cr, uid, fields, context=context)
+
+ for lead in lead_obj.browse(cr, uid, data, context=context):
partner_ids = partner_obj.search(cr, uid, [('name', '=', lead.partner_name or lead.name)])
if not partner_ids and lead.email_from:
address_ids = contact_obj.search(cr, uid, [('email', '=', lead.email_from)])
if address_ids:
addresses = contact_obj.browse(cr, uid, address_ids)
partner_ids = addresses and [addresses[0].partner_id.id] or False
-
partner_id = partner_ids and partner_ids[0] or False
- return partner_id
-
- _defaults = {
- 'action': lambda *a:'exist',
- 'partner_id': _select_partner
- }
+ if 'partner_id' in fields:
+ res.update({'partner_id': partner_id})
+ if 'action' in fields:
+ res.update({'action': partner_id and 'exist' or 'create'})
+ return res
+
def open_create_partner(self, cr, uid, ids, context=None):
"""
This function Opens form of create partner.
diff --git a/addons/crm/wizard/crm_send_email.py b/addons/crm/wizard/crm_send_email.py
index be53b457c12..434035cd2df 100644
--- a/addons/crm/wizard/crm_send_email.py
+++ b/addons/crm/wizard/crm_send_email.py
@@ -70,8 +70,8 @@ class crm_send_new_email(osv.osv_memory):
for data in self.read(cr, uid, ids, context=context):
attach = filter(lambda x: x, [data['doc1'], data['doc2'], data['doc3']])
- attach = map(lambda x: x and ('Attachment'+str(attach.index(x)+1), base64.decodestring(x)), attach)
-
+ attach = map(lambda x: (data['doc' + str(attach.index(x) + 1) \
+ + '_fname'], base64.decodestring(x)), attach)
message_id = None
case = case_pool.browse(cr, uid, res_id)
@@ -177,6 +177,8 @@ class crm_send_new_email(osv.osv_memory):
"""
hist_obj = self.pool.get('crm.case.history')
res_ids = context and context.get('active_ids', []) or []
+
+ include_original = context and context.get('include_original', False) or False
res = {}
for hist in hist_obj.browse(cr, uid, res_ids):
model = hist.log_id.model_id.model
@@ -188,7 +190,8 @@ class crm_send_new_email(osv.osv_memory):
res.update({'email_from': (case.section_id and case.section_id.reply_to) or \
(case.user_id and case.user_id.address_id and \
case.user_id.address_id.email) or hist.email_to or tools.config.get('email_from',False)})
- if 'text' in fields:
+
+ if include_original == True and 'text' in fields:
header = '-------- Original Message --------'
sender = 'From: %s' %(hist.email_from or '')
to = 'To: %s' % (hist.email_to or '')
diff --git a/addons/crm_caldav/__terp__.py b/addons/crm_caldav/__openerp__.py
similarity index 100%
rename from addons/crm_caldav/__terp__.py
rename to addons/crm_caldav/__openerp__.py
diff --git a/addons/crm_profiling/__terp__.py b/addons/crm_profiling/__openerp__.py
similarity index 100%
rename from addons/crm_profiling/__terp__.py
rename to addons/crm_profiling/__openerp__.py
diff --git a/addons/crm_profiling/crm_profiling_view.xml b/addons/crm_profiling/crm_profiling_view.xml
index 9100aa1fd7f..da91dcd7107 100644
--- a/addons/crm_profiling/crm_profiling_view.xml
+++ b/addons/crm_profiling/crm_profiling_view.xml
@@ -161,9 +161,9 @@
-
+
-
+
-
+
-
+
diff --git a/addons/document/__terp__.py b/addons/document/__openerp__.py
similarity index 100%
rename from addons/document/__terp__.py
rename to addons/document/__openerp__.py
diff --git a/addons/document/document.py b/addons/document/document.py
index f6cbddebae7..2b2ac2f7587 100644
--- a/addons/document/document.py
+++ b/addons/document/document.py
@@ -73,7 +73,7 @@ class document_file(osv.osv):
_columns = {
'user_id': fields.many2one('res.users', 'Owner', select=1),
- 'group_ids': fields.many2many('res.groups', 'document_directory_group_rel', 'item_id', 'group_id', 'Groups'),
+ 'group_ids': fields.many2many('res.groups', 'document_group_rel', 'item_id', 'group_id', 'Groups'),
# the directory id now is mandatory. It can still be computed automatically.
'parent_id': fields.many2one('document.directory', 'Directory', select=1, required=True),
'file_size': fields.integer('File Size', required=True),
diff --git a/addons/document/document_directory.py b/addons/document/document_directory.py
index 270f2d9353f..c9c124cdfe0 100644
--- a/addons/document/document_directory.py
+++ b/addons/document/document_directory.py
@@ -52,7 +52,7 @@ class document_directory(osv.osv):
'ressource_type_id': fields.many2one('ir.model', 'Directories Mapped to Objects',
help="Select an object here and Open ERP will create a mapping for each of these " \
"objects, using the given domain, when browsing through FTP."),
- 'resource_field': fields.char('Name field',size=32,help='Field to be used as name on resource directories. If empty, the "name" will be used.'),
+ 'resource_field': fields.many2one('ir.model.fields', 'Name field', help='Field to be used as name on resource directories. If empty, the "name" will be used.'),
'ressource_parent_type_id': fields.many2one('ir.model', 'Parent Model',
help="If you put an object here, this directory template will appear bellow all of these objects. " \
"Don't put a parent directory if you select a parent model."),
@@ -61,10 +61,12 @@ class document_directory(osv.osv):
help="Check this if you want to use the same tree structure as the object selected in the system."),
'dctx_ids': fields.one2many('document.directory.dctx', 'dir_id', 'Context fields'),
}
+
+
def _get_root_directory(self, cr,uid, context=None):
objid=self.pool.get('ir.model.data')
try:
- mid = objid._get_id(cr, uid, 'document', 'dir_root')
+ mid = objid._get_id(cr, uid, 'document', 'dir_root')
if not mid:
return False
root_id = objid.read(cr, uid, mid, ['res_id'])['res_id']
diff --git a/addons/document/document_storage.py b/addons/document/document_storage.py
index bea11d6d12e..421c423b900 100644
--- a/addons/document/document_storage.py
+++ b/addons/document/document_storage.py
@@ -103,7 +103,7 @@ class document_storage(osv.osv):
'create_date': fields.datetime('Date Created', readonly=True),
'create_uid': fields.many2one('res.users', 'Creator', readonly=True),
'user_id': fields.many2one('res.users', 'Owner'),
- 'group_ids': fields.many2many('res.groups', 'document_directory_group_rel', 'item_id', 'group_id', 'Groups'),
+ 'group_ids': fields.many2many('res.groups', 'document_storage_group_rel', 'item_id', 'group_id', 'Groups'),
'dir_ids': fields.one2many('document.directory', 'parent_id', 'Directories'),
'type': fields.selection([('db', 'Database'), ('filestore', 'Internal File storage'),
('realstore', 'External file storage'), ('virtual', 'Virtual storage')], 'Type', required=True),
diff --git a/addons/document/document_view.xml b/addons/document/document_view.xml
index 27297d3b2a8..0185f9fe444 100644
--- a/addons/document/document_view.xml
+++ b/addons/document/document_view.xml
@@ -13,12 +13,16 @@
form
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
@@ -67,13 +71,13 @@
-
+
-
+
@@ -179,7 +183,7 @@
-
+
@@ -190,7 +194,7 @@
-
+
diff --git a/addons/document/nodes.py b/addons/document/nodes.py
index c7eb80c0a45..f0342fcb885 100644
--- a/addons/document/nodes.py
+++ b/addons/document/nodes.py
@@ -320,7 +320,7 @@ class node_res_dir(node_class):
self.content_length = 0
self.res_model = dirr.ressource_type_id and dirr.ressource_type_id.model or False
self.resm_id = dirr.ressource_id
- self.namefield = dirr.resource_field or 'name'
+ self.namefield = dirr.resource_field.name or 'name'
self.displayname = dirr.name
# Important: the domain is evaluated using the *parent* dctx!
self.domain = dirr.domain
@@ -508,7 +508,7 @@ class node_res_obj(node_class):
where1 = where + [(obj._parent_name, '=', self.res_id)]
resids = obj.search(cr,uid, where1, context=ctx)
for bo in obj.browse(cr,uid,resids,context=ctx):
- namefield = directory.resource_field or 'name'
+ namefield = directory.resource_field.name or 'name'
if not bo:
continue
res_name = getattr(bo, namefield)
diff --git a/addons/document/std_index.py b/addons/document/std_index.py
index d44694361b6..4979c05a17d 100644
--- a/addons/document/std_index.py
+++ b/addons/document/std_index.py
@@ -23,7 +23,6 @@ import StringIO
import odt2txt
from subprocess import Popen, PIPE
from content_index import indexer, cntIndex
-from subprocess import Popen, PIPE
def _to_unicode(s):
try:
diff --git a/addons/document_ftp/__terp__.py b/addons/document_ftp/__openerp__.py
similarity index 100%
rename from addons/document_ftp/__terp__.py
rename to addons/document_ftp/__openerp__.py
diff --git a/addons/document_ics/__terp__.py b/addons/document_ics/__openerp__.py
similarity index 100%
rename from addons/document_ics/__terp__.py
rename to addons/document_ics/__openerp__.py
diff --git a/addons/document_webdav/__terp__.py b/addons/document_webdav/__openerp__.py
similarity index 100%
rename from addons/document_webdav/__terp__.py
rename to addons/document_webdav/__openerp__.py
diff --git a/addons/fetchmail/__terp__.py b/addons/fetchmail/__openerp__.py
similarity index 100%
rename from addons/fetchmail/__terp__.py
rename to addons/fetchmail/__openerp__.py
diff --git a/addons/google_map/__terp__.py b/addons/google_map/__openerp__.py
similarity index 100%
rename from addons/google_map/__terp__.py
rename to addons/google_map/__openerp__.py
diff --git a/addons/hr/i18n/ko.po b/addons/hr/i18n/ko.po
index 813d9d83fa4..6c33f3fe258 100644
--- a/addons/hr/i18n/ko.po
+++ b/addons/hr/i18n/ko.po
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2010-04-17 04:16+0000\n"
+"X-Launchpad-Export-Date: 2010-04-18 03:49+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: hr
diff --git a/addons/hr_evaluation/hr_evaluation.py b/addons/hr_evaluation/hr_evaluation.py
index 7f16f55dce8..1d0be1f288e 100644
--- a/addons/hr_evaluation/hr_evaluation.py
+++ b/addons/hr_evaluation/hr_evaluation.py
@@ -313,11 +313,13 @@ class hr_evaluation_interview(osv.osv):
"""
if not context:
context = {}
+
record = self.browse(cr, uid, ids, context)
record = record and record[0]
context.update({'survey_id': record.survey_id.id, 'response_id' : [record.response.id], 'response_no':0,})
value = self.pool.get("survey").action_print_survey(cr, uid, ids, context)
return value
+
hr_evaluation_interview()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:1
diff --git a/addons/hr_expense/hr_expense.py b/addons/hr_expense/hr_expense.py
index 11348ccd1f3..4e1e3033a92 100644
--- a/addons/hr_expense/hr_expense.py
+++ b/addons/hr_expense/hr_expense.py
@@ -175,9 +175,8 @@ hr_expense_expense()
class product_product(osv.osv):
_inherit = "product.product"
-
_columns = {
- 'hr_expense_ok': fields.boolean('Can constitute an Expense', help="Determines if the product can be visible in the list of product within a selection from an HR expense sheet line."),
+ 'hr_expense_ok': fields.boolean('Can Constitute an Expense', help="Determines if the product can be visible in the list of product within a selection from an HR expense sheet line."),
}
product_product()
@@ -234,4 +233,4 @@ class hr_expense_line(osv.osv):
hr_expense_line()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/hr_holidays/hr_holidays_view.xml b/addons/hr_holidays/hr_holidays_view.xml
index cd07d8d4fe8..92e4acd7f63 100644
--- a/addons/hr_holidays/hr_holidays_view.xml
+++ b/addons/hr_holidays/hr_holidays_view.xml
@@ -282,10 +282,10 @@
-
-
+
+
-
+
diff --git a/addons/hr_holidays/hr_holidays_wizard.xml b/addons/hr_holidays/hr_holidays_wizard.xml
index a32e3027bba..244668ec719 100644
--- a/addons/hr_holidays/hr_holidays_wizard.xml
+++ b/addons/hr_holidays/hr_holidays_wizard.xml
@@ -19,11 +19,10 @@
action="holidays_summary"
type="wizard"
id="menu_holidays_summary" sequence="20"/>
--->
-
+-->
-
-
+
+
Bill of Materials Structure
@@ -1034,7 +1037,10 @@
-
+
+
diff --git a/addons/mrp/report/mrp_report_view.xml b/addons/mrp/report/mrp_report_view.xml
index 5de7c7be34b..cf66f93f0e4 100644
--- a/addons/mrp/report/mrp_report_view.xml
+++ b/addons/mrp/report/mrp_report_view.xml
@@ -50,8 +50,11 @@
formgraph,tree
-
-
+
+
diff --git a/addons/mrp_jit/__terp__.py b/addons/mrp_jit/__openerp__.py
similarity index 100%
rename from addons/mrp_jit/__terp__.py
rename to addons/mrp_jit/__openerp__.py
diff --git a/addons/mrp_operations/__terp__.py b/addons/mrp_operations/__openerp__.py
similarity index 100%
rename from addons/mrp_operations/__terp__.py
rename to addons/mrp_operations/__openerp__.py
diff --git a/addons/mrp_operations/mrp_operations_view.xml b/addons/mrp_operations/mrp_operations_view.xml
index bf903bbf5e1..fccc62edab7 100644
--- a/addons/mrp_operations/mrp_operations_view.xml
+++ b/addons/mrp_operations/mrp_operations_view.xml
@@ -70,7 +70,7 @@
-
+
diff --git a/addons/mrp_repair/__terp__.py b/addons/mrp_repair/__openerp__.py
similarity index 100%
rename from addons/mrp_repair/__terp__.py
rename to addons/mrp_repair/__openerp__.py
diff --git a/addons/mrp_repair/mrp_repair_view.xml b/addons/mrp_repair/mrp_repair_view.xml
index e532341d922..9f629ad8a46 100644
--- a/addons/mrp_repair/mrp_repair_view.xml
+++ b/addons/mrp_repair/mrp_repair_view.xml
@@ -13,11 +13,11 @@
-
+
-
+
@@ -78,7 +78,7 @@
-
+
@@ -158,11 +158,11 @@
-
-
+
+
-
+
diff --git a/addons/mrp_subproduct/__terp__.py b/addons/mrp_subproduct/__openerp__.py
similarity index 100%
rename from addons/mrp_subproduct/__terp__.py
rename to addons/mrp_subproduct/__openerp__.py
diff --git a/addons/multi_company/__terp__.py b/addons/multi_company/__openerp__.py
similarity index 100%
rename from addons/multi_company/__terp__.py
rename to addons/multi_company/__openerp__.py
diff --git a/addons/olap/__terp__.py b/addons/olap/__openerp__.py
similarity index 100%
rename from addons/olap/__terp__.py
rename to addons/olap/__openerp__.py
diff --git a/addons/olap/data/olap_cube_view.xml b/addons/olap/data/olap_cube_view.xml
index 05be10fd8a5..c3f43b89740 100644
--- a/addons/olap/data/olap_cube_view.xml
+++ b/addons/olap/data/olap_cube_view.xml
@@ -1,642 +1,676 @@
-
+
-
-
-
- bi.load.db.form
- bi.load.db.wizard
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Load database Structure
- bi.load.db.wizard
- olap.schema
- ir.actions.act_window
- form
- form
-
- new
-
-
-
-
-
-
- Olap Warehouse
- olap.warehouse.wizard
- form
-
-
-
-
-
-
-
-
-
-
-
- Olap Warehouse
- ir.actions.act_window
- olap.warehouse.wizard
- form
- form
- new
-
-
-
-
-
-
- Parameters Configuration
- olap.parameters.config.wizard
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Parameters Configuration
- ir.actions.act_window
- olap.parameters.config.wizard
- form
- form
- new
-
-
-
- Server Parameters Configuration
- This wizard will configure the URL of the web client
-
-
-
-
-
-
-
- bi.auto.configure.form
- bi.auto.configure.wizard
- form
-
-
-
-
-
-
-
-
-
-
-
- Auto Configuration
- bi.auto.configure.wizard
- olap.schema
- ir.actions.act_window
- form
- form
-
- new
-
-
-
-
- # ------------------------------------------------------------------
- # Olap Schema
- # ------------------------------------------------------------------
-
-
- olap.schema.tree
- olap.schema
- tree
-
-
-
-
-
-
-
-
-
- olap.schema.form
- olap.schema
- form
-
-
+
+
+
+
+ Load database Structure
+ bi.load.db.wizard
+ olap.schema
+ ir.actions.act_window
+ form
+ form
+
+ new
+
+
+
+
+
+
+ Olap Warehouse
+ olap.warehouse.wizard
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+ Olap Warehouse
+ ir.actions.act_window
+ olap.warehouse.wizard
+ form
+ form
+ new
+
+
+
+
+
+
+
+ Parameters Configuration
+ olap.parameters.config.wizard
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Parameters Configuration
+ ir.actions.act_window
+ olap.parameters.config.wizard
+ form
+ form
+ new
+
+
+
+
+
+ Server Parameters Configuration
+ This wizard will configure the URL of the web client
+
+
+
+
+
+
+
+ bi.auto.configure.form
+ bi.auto.configure.wizard
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+ Auto Configuration
+ bi.auto.configure.wizard
+ olap.schema
+ ir.actions.act_window
+ form
+ form
+
+ new
+
+
+
+
+ # ------------------------------------------------------------------
+ # Olap Schema
+ # ------------------------------------------------------------------
+
+
+ olap.schema.tree
+ olap.schema
+ tree
+
+
+
+
+
+
+
+
+
+ olap.schema.form
+ olap.schema
+ form
+
+
@@ -320,9 +322,10 @@
+
-
+
diff --git a/addons/olap/olap.py b/addons/olap/olap.py
index 5081619ce71..338d61f81fa 100644
--- a/addons/olap/olap.py
+++ b/addons/olap/olap.py
@@ -40,15 +40,17 @@ class olap_fact_database(osv.osv):
_description = "Olap Fact Database"
def _connection_get(self, cr, uid, ids, field_name, arg, context = {}):
- """
- Return a connection string url needed by SQL Alchemy. Exemple:
+ """ Return a connection string url needed by SQL Alchemy. Exemple:
'postgres://scott:tiger@localhost:5432/mydatabase'
+
+ @param self: The object pointer
@param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of connection’s IDs
+ @param arg: list of tuples of form [(‘name_of_the_field’, ‘operator’, value), ...].
@param context: A standard dictionary for contextual values
-
"""
+
res = {}
for obj in self.browse(cr, uid, ids, context):
res[obj.id] = '%s://%s:%s@%s:%d/%s' % (obj.type, obj.db_login, \
@@ -56,14 +58,13 @@ class olap_fact_database(osv.osv):
return res
def test_connection(self, cr, uid, ids, context = {}):
-
""" Test connection for postgres Or ,MySql Or ,Oracle
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Test Connection’s IDs
- @param context: A standard dictionary for contextual values
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Test Connection’s IDs
+ @param context: A standard dictionary for contextual values
"""
-
try:
self_obj = self.browse(cr, uid, ids, context)
for obj in self_obj:
@@ -140,16 +141,16 @@ class olap_schema(osv.osv ):
_description = "Olap Schema"
def _app_detect(self, cr, uid, ids, field_name, arg, context = {}):
-
"""
Return a Application type
+ @param self: The object pointer
@param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of Detected Application’s IDs
@param context: A standard dictionary for contextual values
"""
- res = {}
+ res = {}
app_objs = self.pool.get('olap.application')
app_ids = app_objs.search(cr, uid, [])
app_res = app_objs.browse(cr, uid, app_ids)
@@ -202,13 +203,13 @@ class olap_schema(osv.osv ):
}
def action_dbconnect(self, cr, uid, ids, context = {}):
-
- """ Connect DB with postgres ,Or MySql , Or Orcale
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Database Connection action’s IDs
- @param context: A standard dictionary for contextual values
- """
+ """ Connect DB with postgres ,Or MySql,Or Orcale
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Database Connection action’s IDs
+ @param context: A standard dictionary for contextual values
+ """
schema = self.browse(cr, uid, ids, context)[0]
type = schema.database_id.type
@@ -255,12 +256,12 @@ class olap_schema(osv.osv ):
return True
def action_dbload(self, cr, uid, ids, context = {}):
-
- """ Load DB
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Database Load Action’s IDs
- @param context: A standard dictionary for contextual values
+ """ Load DB
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Database Load Action’s IDs
+ @param context: A standard dictionary for contextual values
"""
for id in ids:
@@ -271,12 +272,12 @@ class olap_schema(osv.osv ):
def action_dbconfigure(self, cr, uid, ids, context = {}):
-
- """ Configure with Database
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Database Configuraion Action’s IDs
- @param context: A standard dictionary for contextual values
+ """ Configure with Database
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Database Configuraion Action’s IDs
+ @param context: A standard dictionary for contextual values
"""
for id in ids:
@@ -288,11 +289,12 @@ class olap_schema(osv.osv ):
return True
def action_dbready(self, cr, uid, ids, context = {}):
-
- """ @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Database Action’s IDs
- @param context: A standard dictionary for contextual values """
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Database Action’s IDs
+ @param context: A standard dictionary for contextual values """
for id in ids:
self.write(cr, uid, id, {'ready': True})
@@ -300,11 +302,12 @@ class olap_schema(osv.osv ):
return True
def action_done(self, cr, uid, ids, context = {}):
-
- """ @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Action’s IDs
- @param context: A standard dictionary for contextual values """
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Action’s IDs
+ @param context: A standard dictionary for contextual values """
for id in ids:
self.write(cr, uid, id, {'state': 'done'})
@@ -343,12 +346,12 @@ class olap_schema(osv.osv ):
raise 'Not implemented !'
def request(self, cr, uid, name, request, context = {}):
-
"""
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Request’s IDs
- @param context: A standard dictionary for contextual values
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Request’s IDs
+ @param context: A standard dictionary for contextual values
"""
ids = self.search(cr, uid, [('name', '=', name)])
@@ -387,7 +390,7 @@ olap_schema()
class olap_database_tables(osv.osv):
- """ Database Tables """
+ """Database Tables"""
_name = "olap.database.tables"
_description = "Olap Database Tables"
@@ -408,15 +411,15 @@ class olap_database_tables(osv.osv):
}
def name_get(self, cr, uid, ids, context = {}):
-
""" Get Database Name
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Name’s IDs
- @param context: A standard dictionary for contextual values """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Name’s IDs
+ @param context: A standard dictionary for contextual values
+ """
result = []
-
for t in self.browse(cr, uid, ids, context):
if t.name <> t.table_db_name:
@@ -427,10 +430,12 @@ class olap_database_tables(osv.osv):
def show_col_view(self, cr, uid, ids, context = {}):
""" Open Tree View of Database Columns
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Column’s IDs
- @param context: A standard dictionary for contextual values """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Column’s IDs
+ @param context: A standard dictionary for contextual values
+ """
ids_cols = self.pool.get('olap.database.columns').search(cr, uid, ([('table_id', '=', ids[0])]))
id = self.pool.get('ir.ui.view').search(cr, uid, \
@@ -448,16 +453,30 @@ class olap_database_tables(osv.osv):
def hide_col(self, cr, uid, ids, context = {}):
# To hide all the related columns also
+ """ Hide all the related columns
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Hide Column’s IDs
+ @param context: A standard dictionary for contextual values
+ """
+
for id in ids:
- self.write(cr, uid, id, {'hide':True})
+ self.write(cr, uid, id, {'hide': True})
return {}
def show_col(self, cr, uid, ids, context = {}):
# To show or unhide all the columns also
- for id in ids:
- self.write(cr, uid, id, {'hide':False})
- return {}
+ """ show all the related columns
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Column’s IDs
+ @param context: A standard dictionary for contextual values """
+ for id in ids:
+ self.write(cr, uid, id, {'hide': False})
+ return {}
olap_database_tables()
@@ -476,20 +495,22 @@ class olap_database_columns(osv.osv):
'float8': 'Double Precesion',
'varchar': 'Character Varying',
'bool': 'Boolean',
- 'bytea':'Byte A',
- 'int2':'Small Integer',
- 'int4':'Integer',
- 'int8':'Big Integer',
- 'text':'Text',
- 'date':'Date',
+ 'bytea': 'Byte A',
+ 'int2': 'Small Integer',
+ 'int4': 'Integer',
+ 'int8': 'Big Integer',
+ 'text': 'Text',
+ 'date': 'Date',
'time': 'TimeStamp without Time Zone',
- 'number':'NUMBER',
+ 'number': 'NUMBER',
}
def _datatypes_get(self, *args, **argv):
-
- """ @param *args: For Positional Argument
- @param **args: For Keyword Argument """
+ """
+ @param self: The object pointer
+ @param *args: For Positional Argument
+ @param **args: For Keyword Argument
+ """
return self.datatypes.items()
@@ -512,15 +533,15 @@ class olap_database_columns(osv.osv):
}
def name_get(self, cr, uid, ids, context = {}):
-
""" Get Database Column
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Name’s IDs
- @param context: A standard dictionary for contextual values """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of Name’s IDs
+ @param context: A standard dictionary for contextual values
+ """
result = []
-
for t in self.browse(cr, uid, ids, context):
if t.name <> t.column_db_name:
@@ -532,6 +553,15 @@ class olap_database_columns(osv.osv):
def search(self, cr, uid, args, offset = 0, limit = None, order = None,
context = None, count = False):
+ """ olap search method.
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param user: the current user’s ID for security checks,
+ @param args: list of tuples of form [(‘name_of_the_field’, ‘operator’, value), ...].
+ @param offset: The Number of Results to Pass
+ @param limit: The Number of Results to Return
+ @param context: A standard dictionary for contextual values
+ """
if not context:
return super(olap_database_columns, self).search(cr, uid, args, offset, limit,
@@ -594,7 +624,7 @@ class olap_database_columns(osv.osv):
for lines in cube_obj.table_id.line_ids:
make_ids.append(lines.table_id.id)
- if make_ids:
+ if make_ids and cube_obj.table_id.line_ids:
make_ids.append(cube_obj.table_id.line_ids[len(cube_obj.table_id.line_ids) - 1].field_id.related_to.id)
args = [('table_id', 'in', make_ids), ('related_to', '=', False), \
('primary_key', '<>', True), \
@@ -647,33 +677,39 @@ class olap_database_columns(osv.osv):
def hide_col(self, cr, uid, ids, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """ Hide all the related columns
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of Hide Column’s IDs
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
for id in ids:
self.write(cr, uid, id, {'hide':True})
return {}
def show_col(self, cr, uid, ids, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """ show all the related columns
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of column’s IDs
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
for id in ids:
self.write(cr, uid, id, {'hide': True})
return {}
def field_add(self, cr, uid, ids, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """ Add all the Related Field
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of Field’s IDs
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
col_data = self.pool.get('olap.database.columns').read(cr, uid, ids, [], context)[0]
ctx_list = []
@@ -687,9 +723,9 @@ class olap_database_columns(osv.osv):
if context['parent_id']:
parent_id = context['parent_id']
val = {
- 'cube_table_id':parent_id,
- 'table_id':table_id,
- 'field_id':ids[0]
+ 'cube_table_id': parent_id,
+ 'table_id': table_id,
+ 'field_id': ids[0]
}
id = self.pool.get('olap.cube.table.line').create(cr, uid, val, context)
@@ -701,11 +737,13 @@ class olap_database_columns(osv.osv):
return ctx_list
def make_hierarchy(self, cr, uid, ids, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """ Make Hierarchy on the cube
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of Hierarchy’s IDs
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
col_data = self.pool.get('olap.database.columns').read(cr, uid, ids, [], context)[0]
ctx_list = []
@@ -719,9 +757,9 @@ class olap_database_columns(osv.osv):
pk_table = cube_table_obj.name
val = {
- 'field_name':col_data['name'],
- 'name':col_data['name'],
- 'primary_key_table':pk_table
+ 'field_name': col_data['name'],
+ 'name': col_data['name'],
+ 'primary_key_table': pk_table
}
if context['hier_parent_id']:
@@ -751,11 +789,14 @@ class olap_cube_table(osv.osv):
_description = "Olap cube table"
def write(self, cr, uid, ids, vals, context = None):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of Cube Table’s IDs
- @param context: A standard dictionary for contextual values """
+ @param vals: Get the Value's of cube table
+ @param context: A standard dictionary for contextual values
+ """
if vals and vals.get('available_table_ids', 0) and context and \
(context.has_key('master_dim') or context.has_key('d_id') or \
@@ -816,10 +857,13 @@ class olap_cube_table(osv.osv):
return super(olap_cube_table, self).write(cr, uid, ids, vals, context)
def create(self, cr, uid, vals, context = None):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param vals: Get the Value's of cube table
+ @param context: A standard dictionary for contextual values
+ """
cube_table_id = super(olap_cube_table, self).create(cr, uid, vals, context)
@@ -839,22 +883,35 @@ class olap_cube_table(osv.osv):
def search(self, cr, uid, args, offset = 0, limit = None, order = None,
context = None, count = False):
+ """ olap search method.
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param user: the current user’s ID for security checks,
+ @param args: list of tuples of form [(‘name_of_the_field’, ‘operator’, value), ...].
+ @param offset: The Number of Results to Pass
+ @param limit: The Number of Results to Return
+ @param context: A standard dictionary for contextual values
+ """
+
if context and context.has_key('parent_schema_id'):
args = [('schema_id', '=', context['parent_schema_id'])]
if context and context.has_key('d_id'):
- dim_obj = self.pool.get('olap.dimension').browse(cr, uid, int(['d_id']))
+ dim_obj = self.pool.get('olap.dimension').browse(cr, uid, int(context['d_id']))
args = [('schema_id', '=', dim_obj.cube_id.schema_id.id)]
return super(olap_cube_table, self).search(cr, uid, args, offset, limit, \
order, context = context, count = count)
def _available_table_get(self, cr, uid, ids, name, arg, context = None):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of Available Table’s IDs
- @param context: A standard dictionary for contextual values """
+ @param arg: list of tuples of form [(‘name_of_the_field’, ‘operator’, value), ...]
+ @param context: A standard dictionary for contextual values
+ """
result = {}
parent_table_id = []
@@ -871,10 +928,12 @@ class olap_cube_table(osv.osv):
return result
def _set_schema(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """ Set Schema for cube table
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
if context and context.has_key('d_id'):
dim_obj = self.pool.get('olap.dimension').browse(cr, uid, int(context['d_id']))
@@ -884,20 +943,24 @@ class olap_cube_table(osv.osv):
return context['parent_schema_id']
def _set_name(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """ set name for cube table
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
if context and context.has_key('d_id'):
dim_obj = self.pool.get('olap.dimension').browse(cr, uid, int(context['d_id']))
return dim_obj.cubeAid.table_id.name
def _get_id(self, cr, uid, ids, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
if context and context.has_key('d_id'):
dim_obj = self.pool.get('olap.dimension').browse(cr, uid, int(context['d_id']))
@@ -914,10 +977,12 @@ class olap_cube_table(osv.osv):
return col_ids
def _def_set(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
return []
@@ -925,8 +990,8 @@ class olap_cube_table(osv.osv):
'name': fields.char('Table name', size = 64, required = True),
'line_ids': fields.one2many('olap.cube.table.line', 'cube_table_id',\
'Database Tables', required = True),
- 'schema_id':fields.many2one('olap.schema', 'Schema id', ondelete = 'cascade'),
- 'column_link_id':fields.many2one('olap.database.columns', 'Relational Column' , required = True),
+ 'schema_id': fields.many2one('olap.schema', 'Schema id', ondelete = 'cascade'),
+ 'column_link_id': fields.many2one('olap.database.columns', 'Relational Column' , required = True),
'available_table_ids': fields.function(
_available_table_get,
method = True,
@@ -937,13 +1002,16 @@ class olap_cube_table(osv.osv):
}
_defaults = {
- 'schema_id':_set_schema,
+ 'schema_id': _set_schema,
}
def field_add(self, cr, uid, ids, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """ Add the Field for the cube table
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param ids: List of cube table’s IDs
+ @param context: A standard dictionary for contextual values
+ """
return {}
@@ -966,10 +1034,11 @@ class olap_cube_table_line(osv.osv):
}
# Set the Table when changing field_id
def onchange_field_id(self, *args, **argv):
-
- """ @param *args: For Positional Argument
- @param **args: For Keyword Argument """
-
+ """
+ @param self: The object pointer
+ @param *args: For Positional Argument
+ @param **argv: For Keyword Argument
+ """
pass
olap_cube_table_line()
@@ -982,10 +1051,11 @@ class olap_cube(osv.osv):
_description = "Olap cube"
def _set_schema(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values
+ """ set schema for olap cube
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param context: A standard dictionary for contextual values
"""
if context and context.has_key('schema_id'):
@@ -1038,10 +1108,11 @@ class olap_dimension(osv.osv):
_description = "Olap dimension"
def _set_cube(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values
+ """ set cube for Olap Dimension
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param context: A standard dictionary for contextual values
"""
if context and context.has_key('cube_id'):
@@ -1076,10 +1147,11 @@ class olap_hierarchy(osv.osv):
}
def _set_dimension(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values
+ """ set Dimension for Olap Hierarchy
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param context: A standard dictionary for contextual values
"""
if context and context.has_key('dimension_id'):
@@ -1087,10 +1159,11 @@ class olap_hierarchy(osv.osv):
return False
def _set_name(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values
+ """ set name for Olap Hierarchy
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param context: A standard dictionary for contextual values
"""
if context and context.has_key('dimension_id'):
@@ -1099,10 +1172,11 @@ class olap_hierarchy(osv.osv):
return False
def _hierarchy_get(self, *args, **argv):
-
- """ @param *args: For Positional Argument
- @param **args: For Keyword Argument """
-
+ """
+ @param self: The object pointer
+ @param *args: For Positional Argument
+ @param **args: For Keyword Argument
+ """
return self.hierarchy_type.items()
_columns = {
@@ -1140,30 +1214,37 @@ class olap_level(osv.osv):
}
def _set_hierarchy(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ """ set Hierarchy for Olap Level
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param context: A standard dictionary for contextual values
+ """
if context and context.has_key('hierarchy_id'):
return context['hierarchy_id']
return False
def _set_name(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """ set name for Olap Level
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
if context and context.has_key('hierarchy_id'):
hier_obj = self.pool.get('olap.hierarchy').browse(cr, uid, int(context['hierarchy_id']))
return hier_obj.name
def onchange_column_name(self, cr, uid, ids, column, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param ids: List of Olap Level’s IDs
+ @param context: A standard dictionary for contextual values
+ """
if not column:
return {}
@@ -1173,21 +1254,23 @@ class olap_level(osv.osv):
val['column_id_name'] = col.column_db_name
if (col.type == 'date'):
val['type'] = 'date_year'
- return {'value':val}
+ return {'value': val}
def _type_get(self, cr, uid, *args, **argv):
-
- """ @param *args: For Positional Argument
- @param **args: For Keyword Argument
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param *args: For Positional Argument
+ @param **args: For Keyword Argument
"""
keys = self._types.keys()
return map(lambda x: (x,x),keys)
-
_columns = {
'name': fields.char('Level name', size = 64, required = True),
- 'column_name':fields.many2one('olap.database.columns', 'Columns Name', required = True),
+ 'column_name': fields.many2one('olap.database.columns', 'Columns Name', required = True),
'column_id_name': fields.char('Column ID', size = 64, required = True),
'type': fields.selection(selection = _type_get, string = 'Level class', size = 64, required = True),
'table_name': fields.char('Table name', size = 64, required = True, \
@@ -1199,8 +1282,8 @@ class olap_level(osv.osv):
_defaults = {
'column_id_name': lambda * args: 'name',
- 'sequence':lambda * args: '1',
- 'type':lambda * args:'normal',
+ 'sequence': lambda * args: '1',
+ 'type': lambda * args:'normal',
'hierarchy_id': _set_hierarchy,
'name': _set_name
}
@@ -1214,20 +1297,25 @@ class olap_measure(osv.osv):
_description = "Olap measure"
def _set_cube(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """ set cube for Olap Measure
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
if context and context.has_key('cube_id'):
return context['cube_id']
return False
def onchange_measure_name(self, cr, uid, ids, column, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param ids: List of Olap Measure’s IDs
+ @param context: A standard dictionary for contextual values
+ """
val = {}
if not column:
@@ -1236,7 +1324,7 @@ class olap_measure(osv.osv):
val['table_name'] = col.table_id.table_db_name
val['value_column_id_name'] = col.column_db_name
val['name'] = col.column_db_name
- return {'value':val}
+ return {'value': val}
_columns = {
'name': fields.char('Measure name', size = 64, required = True),
@@ -1249,7 +1337,7 @@ class olap_measure(osv.osv):
('sql_expr', 'SQL Expression')],\
'Measure Type', required = True,\
help = "Select between auto column or sql expression for the measures"),
- 'value_sql': fields.char('SQL Expression', size = 200, help = "You can \
+ 'value_sql': fields.text('SQL Expression', help = "You can \
provide valid sql expression. Make sure it have \
function with fully qualified column name like \
(sum,avg ...)(tablename.columnname (+,- ...) tablename.columnname)"),
@@ -1271,7 +1359,7 @@ class olap_measure(osv.osv):
'datatype': lambda * args: 'float',
'formatstring': lambda * args: 'none',
'cube_id': _set_cube,
- 'measure_type':lambda * args:'fact_column',
+ 'measure_type': lambda * args:'fact_column',
}
olap_measure()
@@ -1316,7 +1404,7 @@ class olap_application_field(osv.osv):
_columns = {
'name': fields.char('Application field name', size = 64, required = True),
'table_name': fields.char('Application table name', size = 64),
- 'field_name':fields.char('Field name', size = 64),
+ 'field_name': fields.char('Field name', size = 64),
'is_hidden': fields.boolean('Hidden'),
'application_id': fields.many2one('olap.application', 'Application Id', required = True),
}
@@ -1348,10 +1436,12 @@ class bi_load_db_wizard(osv.osv_memory):
_name = 'bi.load.db.wizard'
def _get_fact_table(self, cr, uid, ctx):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param ctx: A standard dictionary for contextual values """
+ @param ctx: A standard dictionary for contextual values
+ """
if ctx and ctx.has_key('active_id'):
schema_obj = self.pool.get('olap.schema').browse(cr, uid, ctx['active_id'])
@@ -1359,10 +1449,12 @@ class bi_load_db_wizard(osv.osv_memory):
return False
def _get_db_name(self, cr, uid, ctx):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param ctx: A standard dictionary for contextual values """
+ @param ctx: A standard dictionary for contextual values
+ """
if ctx and ctx.has_key('active_id'):
schema_obj = self.pool.get('olap.schema').browse(cr, uid, ctx['active_id'])
@@ -1370,8 +1462,8 @@ class bi_load_db_wizard(osv.osv_memory):
return False
_columns = {
- 'fact_table':fields.char('Fact Name' , size = 64, readonly = True),
- 'db_name':fields.char('Database Name', size = 64, readonly = True)
+ 'fact_table': fields.char('Fact Name' , size = 64, readonly = True),
+ 'db_name': fields.char('Database Name', size = 64, readonly = True)
}
_defaults = {
@@ -1380,11 +1472,13 @@ class bi_load_db_wizard(osv.osv_memory):
}
def action_load(self, cr, uid, ids, context = None):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: Load Action’s IDs
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
data = context and context.get('active_id', False) or False
if context and context.has_key('active_id'):
@@ -1413,8 +1507,8 @@ class bi_load_db_wizard(osv.osv_memory):
INFORMATION_SCHEMA.tables as a where a.table_schema = 'public'")
for table in cr_db.fetchall():
val = {
- 'fact_database_id':id_db,
- 'table_db_name':table[0]
+ 'fact_database_id': id_db,
+ 'table_db_name': table[0]
}
if table[0] in tables.keys():
table_id = tobj.write(cr, uid, [tables[table[0]]], val, context)
@@ -1480,7 +1574,7 @@ class bi_load_db_wizard(osv.osv_memory):
print "Updating the Primary Key Constraint"
for constraint in cr_db.fetchall():
val = {
- 'primary_key':True
+ 'primary_key': True
}
id_to_write = filter(lambda x:(int(cols[x][1]) == int(tables[constraint[0]])and(constraint[1] == cols[x][0])), cols)
@@ -1510,7 +1604,7 @@ class bi_load_db_wizard(osv.osv_memory):
for constraint in cr_db.fetchall():
val = {
- 'related_to':tables[for_key[constraint[2]]]
+ 'related_to': tables[for_key[constraint[2]]]
}
id_to_write = filter(lambda x:(int(cols[x][1]) == int(tables[constraint[0]])\
and (constraint[1] == cols[x][0])), cols)
@@ -1550,8 +1644,8 @@ class bi_load_db_wizard(osv.osv_memory):
for table in cr_db.fetchall():
val = {
- 'fact_database_id':id_db,
- 'table_db_name':table[0]
+ 'fact_database_id': id_db,
+ 'table_db_name': table[0]
}
if table[0] in tables.keys():
@@ -1596,12 +1690,12 @@ class bi_load_db_wizard(osv.osv_memory):
if constraint[0]:
val = {
- 'related_to':tables[constraint[1]]
+ 'related_to': tables[constraint[1]]
}
else:
val = {
- 'primary_key':True
+ 'primary_key': True
}
id_to_write = filter(lambda x:(int(cols[x][1]) == int(tables[constraint[3]])and \
(constraint[2] == cols[x][0])), cols)
@@ -1639,8 +1733,8 @@ class bi_load_db_wizard(osv.osv_memory):
temp = cr_db.fetchall()
for table in temp:
val = {
- 'fact_database_id':id_db,
- 'table_db_name':table[0]
+ 'fact_database_id': id_db,
+ 'table_db_name': table[0]
}
if table[0] in tables.keys():
@@ -1742,16 +1836,17 @@ class bi_load_db_wizard(osv.osv_memory):
resource_id = self.pool.get('ir.model.data').read(cr, uid, \
model_data_ids, fields = ['res_id'])[0]['res_id']
- return {'type':'ir.actions.act_window_close' }
+ return {'type': 'ir.actions.act_window_close' }
def action_cancel(self, cr, uid, ids, context = None):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of create menu’s IDs
- @param context: A standard dictionary for contextual values """
-
- return {'type':'ir.actions.act_window_close' }
+ @param context: A standard dictionary for contextual values
+ """
+ return {'type': 'ir.actions.act_window_close' }
bi_load_db_wizard()
# Wizard for the Automatic Application Configuration
@@ -1760,10 +1855,12 @@ class bi_auto_configure_wizard(osv.osv_memory):
_name = 'bi.auto.configure.wizard'
def _get_name(self, cr, uid, context):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
data = context and context.get('active_id', False) or False
if context and context.has_key('active_id'):
@@ -1772,20 +1869,21 @@ class bi_auto_configure_wizard(osv.osv_memory):
return False
_columns = {
- 'name':fields.char('Fact Name' , size = 64, readonly = True),
-
+ 'name': fields.char('Fact Name' , size = 64, readonly = True),
}
_defaults = {
- 'name':_get_name,
+ 'name': _get_name,
}
def action_load(self, cr, uid, ids, context = None):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of create menu’s IDs
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
vals = {}
apptabnew_vals = {}
@@ -1931,11 +2029,18 @@ class bi_auto_configure_wizard(osv.osv_memory):
resource_id = self.pool.get('ir.model.data').read(cr, uid, \
model_data_ids, fields = ['res_id'])[0]['res_id']
- return {'type':'ir.actions.act_window_close' }
+ return {'type': 'ir.actions.act_window_close' }
def action_cancel(self, cr, uid, ids, context = None):
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
+ @param uid: the current user’s ID for security checks,
+ @param ids: List of create menu’s IDs
+ @param context: A standard dictionary for contextual values
+ """
- return {'type':'ir.actions.act_window_close' }
+ return {'type': 'ir.actions.act_window_close' }
bi_auto_configure_wizard()
@@ -1947,10 +2052,12 @@ class olap_warehouse_wizard(osv.osv_memory):
_description = "Olap Warehouse"
def _get_queries(self, cr, uid, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
query_obj = self.pool.get('olap.query.logs')
qry_ids = query_obj.search(cr, uid, [('user_id', '=', uid), ('count', '>=', 3)])
@@ -1967,20 +2074,23 @@ class olap_warehouse_wizard(osv.osv_memory):
else:
return ''
def action_ok(self, cr, uid, ids, context = {}):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of Action’s IDs
- @param context: A standard dictionary for contextual values """
- return {'type':'ir.actions.act_window_close' }
+ @param context: A standard dictionary for contextual values
+ """
+ return {'type': 'ir.actions.act_window_close' }
_columns = {
- 'query':fields.text('Query', readonly=True),
+ 'query': fields.text('Query', readonly=True),
}
_defaults = {
'query': _get_queries,
}
+
olap_warehouse_wizard()
@@ -1990,11 +2100,12 @@ class olap_parameters_config_wizard(osv.osv_memory):
_description = "Olap Server Parameters"
def _get_host(self, cr, uid, context = None):
-
""" Get Host ID
+ @param self: The object pointer
@param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
obj = self.pool.get('olap')
objid = self.pool.get('ir.model.data')
@@ -2008,11 +2119,12 @@ class olap_parameters_config_wizard(osv.osv_memory):
return s_p.parseString(aid.url)[0]
def _get_port(self, cr, uid, context = None):
-
""" Get Port
+ @param self: The object pointer
@param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
obj = self.pool.get('olap')
objid = self.pool.get('ir.model.data')
@@ -2026,9 +2138,9 @@ class olap_parameters_config_wizard(osv.osv_memory):
return s_p.parseString(aid.url)[1]
_columns = {
- 'host_name' : fields.char('Server Name', size = 64, help = "Put here the server address or IP \
+ 'host_name': fields.char('Server Name', size = 64, help = "Put here the server address or IP \
Put localhost if its not clear.", required = True),
- 'host_port' : fields.char('Port', size = 4, help = "Put the port for the server. Put 8080 if \
+ 'host_port': fields.char('Port', size = 4, help = "Put the port for the server. Put 8080 if \
its not clear.", required = True),
}
@@ -2038,11 +2150,13 @@ class olap_parameters_config_wizard(osv.osv_memory):
}
def action_cancel(self, cr, uid, ids, conect = None):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
- @param ids: List of create menu’s IDs
- @param context: A standard dictionary for contextual values """
+ @param ids: List of olap parameter’s IDs
+ @param context: A standard dictionary for contextual values
+ """
return {
'view_type': 'form',
@@ -2053,11 +2167,13 @@ class olap_parameters_config_wizard(osv.osv_memory):
}
def action_config(self, cr, uid, ids, context = None):
-
- """ @param cr: the current row, from the database cursor,
+ """
+ @param self: The object pointer
+ @param cr: the current row, from the database cursor,
@param uid: the current user’s ID for security checks,
@param ids: List of create menu’s IDs
- @param context: A standard dictionary for contextual values """
+ @param context: A standard dictionary for contextual values
+ """
conf = self.browse(cr, uid, ids[0], context)
obj = self.pool.get('olap')
diff --git a/addons/olap_crm/__terp__.py b/addons/olap_crm/__openerp__.py
similarity index 100%
rename from addons/olap_crm/__terp__.py
rename to addons/olap_crm/__openerp__.py
diff --git a/addons/olap_extract/__terp__.py b/addons/olap_extract/__openerp__.py
similarity index 100%
rename from addons/olap_extract/__terp__.py
rename to addons/olap_extract/__openerp__.py
diff --git a/addons/olap_sale/__terp__.py b/addons/olap_sale/__openerp__.py
similarity index 100%
rename from addons/olap_sale/__terp__.py
rename to addons/olap_sale/__openerp__.py
diff --git a/addons/olap_sale/i18n/de.po b/addons/olap_sale/i18n/de.po
new file mode 100644
index 00000000000..0abfadcba34
--- /dev/null
+++ b/addons/olap_sale/i18n/de.po
@@ -0,0 +1,31 @@
+# German translation for openobject-addons
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2009-11-26 05:29+0000\n"
+"PO-Revision-Date: 2010-04-17 19:45+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: German \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2010-04-19 03:46+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
+
+#. module: olap_sale
+#: model:ir.module.module,description:olap_sale.module_meta_information
+msgid ""
+"\n"
+" Sale module will load the data in olap tables\n"
+" "
+msgstr ""
+
+#. module: olap_sale
+#: model:ir.module.module,shortdesc:olap_sale.module_meta_information
+msgid "olap_sale"
+msgstr ""
diff --git a/addons/olap_sale/i18n/ro.po b/addons/olap_sale/i18n/ro.po
index a3d1fabb45d..b1d8ecc3b86 100644
--- a/addons/olap_sale/i18n/ro.po
+++ b/addons/olap_sale/i18n/ro.po
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2010-04-17 04:21+0000\n"
+"X-Launchpad-Export-Date: 2010-04-18 03:49+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: olap_sale
diff --git a/addons/partner_crm/__terp__.py b/addons/partner_crm/__openerp__.py
similarity index 100%
rename from addons/partner_crm/__terp__.py
rename to addons/partner_crm/__openerp__.py
diff --git a/addons/point_of_sale/__terp__.py b/addons/point_of_sale/__openerp__.py
similarity index 100%
rename from addons/point_of_sale/__terp__.py
rename to addons/point_of_sale/__openerp__.py
diff --git a/addons/point_of_sale/pos_view.xml b/addons/point_of_sale/pos_view.xml
index 4dfa959caf9..c0fc20de128 100644
--- a/addons/point_of_sale/pos_view.xml
+++ b/addons/point_of_sale/pos_view.xml
@@ -50,7 +50,7 @@
-
+
@@ -306,9 +306,9 @@ invoiced
-
-
-
+
+
+
@@ -394,9 +394,9 @@ invoiced
+
@@ -234,7 +234,7 @@
-
+
diff --git a/addons/product/__terp__.py b/addons/product/__openerp__.py
similarity index 100%
rename from addons/product/__terp__.py
rename to addons/product/__openerp__.py
diff --git a/addons/product/pricelist_view.xml b/addons/product/pricelist_view.xml
index 1864c3e9166..0d4685593c3 100644
--- a/addons/product/pricelist_view.xml
+++ b/addons/product/pricelist_view.xml
@@ -14,7 +14,7 @@
-
+
@@ -127,7 +127,7 @@
-
+
diff --git a/addons/product/product.py b/addons/product/product.py
index 6c3d7ef17b5..b21ebe5ee3a 100644
--- a/addons/product/product.py
+++ b/addons/product/product.py
@@ -271,7 +271,7 @@ class product_template(osv.osv):
'cost_method': fields.selection([('standard','Standard Price'), ('average','Average Price')], 'Costing Method', required=True,
help="Standard Price: the cost price is fixed and recomputed periodically (usually at the end of the year), Average Price: the cost price is recomputed at each reception of products."),
'warranty': fields.float('Warranty (months)'),
- 'sale_ok': fields.boolean('Can be sold', help="Determines if the product can be visible in the list of product within a selection from a sale order line."),
+ 'sale_ok': fields.boolean('Can be Sold', help="Determines if the product can be visible in the list of product within a selection from a sale order line."),
'purchase_ok': fields.boolean('Can be Purchased', help="Determine if the product is visible in the list of products within a selection from a purchase order line."),
'state': fields.selection([('',''),('draft', 'In Development'),('sellable','In Production'),('end','End of Lifecycle'),('obsolete','Obsolete')], 'State', help="Tells the user if he can use the product or not."),
'uom_id': fields.many2one('product.uom', 'Default UoM', required=True, help="Default Unit of Measure used for all stock operation."),
@@ -648,7 +648,7 @@ class product_supplierinfo(osv.osv):
'name' : fields.many2one('res.partner', 'Partner', required=True, ondelete='cascade', help="Supplier of this product"),
'product_name': fields.char('Partner Product Name', size=128, help="This partner's product name will be used when printing a request for quotation. Keep empty to use the internal one."),
'product_code': fields.char('Partner Product Code', size=64, help="This partner's product code will be used when printing a request for quotation. Keep empty to use the internal one."),
- 'sequence' : fields.integer('Priority', help="Assigns the priority to the list of product supplier."),
+ 'sequence' : fields.integer('Sequence', help="Assigns the priority to the list of product supplier."),
'qty' : fields.float('Minimal Quantity', required=True, help="The minimal quantity to purchase to this supplier, expressed in the default unit of measure."),
'product_id' : fields.many2one('product.template', 'Product', required=True, ondelete='cascade', select=True),
'delay' : fields.integer('Delivery Lead Time', required=True, help="Lead time in days between the confirmation of the purchase order and the reception of the products in your warehouse. Used by the scheduler for automatic computation of the purchase order planning."),
diff --git a/addons/product/product_view.xml b/addons/product/product_view.xml
index d64d192b148..131b88f24a1 100644
--- a/addons/product/product_view.xml
+++ b/addons/product/product_view.xml
@@ -42,7 +42,7 @@
-
+
@@ -66,18 +66,18 @@
-
+
-
+
-
-
-
+
+
+
+
+
+
+
+
+
+ Difference
+ ir.actions.act_window
+ wizard.wiki.history.show_diff
+ form
+ form
+ new
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/wiki/wizard/wiki_wiki_help_open_view.xml b/addons/wiki/wizard/wiki_wiki_help_open_view.xml
deleted file mode 100644
index 226ceab271f..00000000000
--- a/addons/wiki/wizard/wiki_wiki_help_open_view.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-
-
-
-
- Basic Wiki Editing
- wiki.wiki.help.open
- form
-
-
-
-
-
-
-
-
-
-
-
-
- Basic Wiki Editing
- ir.actions.act_window
- wiki.wiki.help.open
- form
- form
- new
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/wiki/wizard/wiki_wiki_page_open.py b/addons/wiki/wizard/wiki_wiki_page_open.py
index d65748f989a..d6b8f4f0285 100644
--- a/addons/wiki/wizard/wiki_wiki_page_open.py
+++ b/addons/wiki/wizard/wiki_wiki_page_open.py
@@ -35,18 +35,17 @@ class wiki_wiki_page_open(osv.osv_memory):
@param ids: List of open wiki page’s IDs
@return: dictionay of open wiki window on give group id
"""
-
- for group in self.pool.get('wiki.groups').browse(cr, uid, ids):
-
+ group_ids = context.get('active_ids', [])
+ for group in self.pool.get('wiki.groups').browse(cr, uid, group_ids):
value = {
- 'domain': "[('group_id','=',%d)]" % (group.id),
- 'name': 'Wiki Page',
- 'view_type': 'form',
- 'view_mode': 'form,tree',
- 'res_model': 'wiki.wiki',
- 'view_id': False,
- 'type': 'ir.actions.act_window',
- }
+ 'domain': "[('group_id','=',%d)]" % (group.id),
+ 'name': 'Wiki Page',
+ 'view_type': 'form',
+ 'view_mode': 'form,tree',
+ 'res_model': 'wiki.wiki',
+ 'view_id': False,
+ 'type': 'ir.actions.act_window',
+ }
if group.method == 'page':
value['res_id'] = group.home.id
elif group.method == 'list':
diff --git a/addons/wiki/wizard/wiki_wiki_page_open_view.xml b/addons/wiki/wizard/wiki_wiki_page_open_view.xml
index d0c41d0d37f..507f3d5cdac 100644
--- a/addons/wiki/wizard/wiki_wiki_page_open_view.xml
+++ b/addons/wiki/wizard/wiki_wiki_page_open_view.xml
@@ -11,8 +11,13 @@
-
-
+
+
+
+
+
+
+
diff --git a/addons/wiki_faq/__terp__.py b/addons/wiki_faq/__openerp__.py
similarity index 100%
rename from addons/wiki_faq/__terp__.py
rename to addons/wiki_faq/__openerp__.py
diff --git a/addons/wiki_quality_manual/__terp__.py b/addons/wiki_quality_manual/__openerp__.py
similarity index 100%
rename from addons/wiki_quality_manual/__terp__.py
rename to addons/wiki_quality_manual/__openerp__.py