diff --git a/addons/account/account.py b/addons/account/account.py
index 314e192e186..73e1fdd0b7e 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -623,7 +623,7 @@ class account_journal(osv.osv):
'centralisation': fields.boolean('Centralised counterpart', help="Check this box to determine that each entry of this journal won't create a new counterpart but will share the same counterpart. This is used in fiscal year closing."),
'update_posted': fields.boolean('Allow Cancelling Entries', help="Check this box if you want to allow the cancellation the entries related to this journal or of the invoice related to this journal"),
'group_invoice_lines': fields.boolean('Group invoice lines', help="If this box is checked, the system will try to group the accounting lines when generating them from invoices."),
- 'sequence_id': fields.many2one('ir.sequence', 'Entry Sequence', help="The sequence gives the display order for a list of journals", required=True),
+ 'sequence_id': fields.many2one('ir.sequence', 'Entry Sequence', help="The sequence gives the display order for a list of journals", required=False),
'user_id': fields.many2one('res.users', 'User', help="The user responsible for this journal"),
'groups_id': fields.many2many('res.groups', 'account_journal_group_rel', 'journal_id', 'group_id', 'Groups'),
'currency': fields.many2one('res.currency', 'Currency', help='The currency used to enter statement'),
@@ -638,6 +638,7 @@ class account_journal(osv.osv):
'user_id': lambda self,cr,uid,context: uid,
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
+
def write(self, cr, uid, ids, vals, context=None):
obj=[]
if 'company_id' in vals:
@@ -646,8 +647,58 @@ class account_journal(osv.osv):
raise osv.except_osv(_('Warning !'), _('You cannot modify company of this journal as its related record exist in Entry Lines'))
return super(account_journal, self).write(cr, uid, ids, vals, context=context)
+ def create_sequence(self, cr, uid, ids, context={}):
+ """
+ Create new entry sequence for every new Joural
+ @param cr: cursor to database
+ @param user: id of current user
+ @param ids: list of record ids to be process
+ @param context: context arguments, like lang, time zone
+ @return: return a result
+ """
+
+ seq_pool = self.pool.get('ir.sequence')
+ seq_typ_pool = self.pool.get('ir.sequence.type')
+
+ result = True
+
+ journal = self.browse(cr, uid, ids[0], context)
+ code = journal.code.lower()
+ types = {
+ 'name':journal.name,
+ 'code':code
+ }
+ type_id = seq_typ_pool.create(cr, uid, types)
+
+ seq = {
+ 'name':journal.name,
+ 'code':code,
+ 'active':True,
+ 'prefix':journal.code + "/%(year)s/",
+ 'padding':4,
+ 'number_increment':1
+ }
+ seq_id = seq_pool.create(cr, uid, seq)
+
+ res = {}
+ if not journal.sequence_id:
+ res.update({
+ 'sequence_id':seq_id
+ })
+
+ if not journal.invoice_sequence_id:
+ res.update({
+ 'invoice_sequence_id':seq_id
+ })
+
+ result = self.write(cr, uid, [journal.id], res)
+
+ return result
+
def create(self, cr, uid, vals, context={}):
journal_id = super(account_journal, self).create(cr, uid, vals, context)
+ self.create_sequence(cr, uid, [journal_id], context)
+
# journal_name = self.browse(cr, uid, [journal_id])[0].code
# periods = self.pool.get('account.period')
# ids = periods.search(cr, uid, [('date_stop','>=',time.strftime('%Y-%m-%d'))])
@@ -669,14 +720,41 @@ class account_journal(osv.osv):
ids = self.search(cr, user, [('name',operator,name)]+ args, limit=limit, context=context)
return self.name_get(cr, user, ids, context=context)
- def onchange_type(self, cr, uid, ids, type):
- res={}
- for line in self.browse(cr, uid, ids):
- if type == 'situation':
- res= {'value':{'centralisation': True}}
- else:
- res= {'value':{'centralisation': False}}
- return res
+ def onchange_type(self, cr, uid, ids, type, currency):
+ data_pool = self.pool.get('ir.model.data')
+ user_pool = self.pool.get('res.users')
+
+ type_map = {
+ 'sale':'account_sp_journal_view',
+ 'sale_refund':'account_sp_refund_journal_view',
+ 'purchase':'account_sp_journal_view',
+ 'purchase_refund':'account_sp_refund_journal_view',
+ 'expense':'account_sp_journal_view',
+ 'cash':'account_journal_bank_view',
+ 'bank':'account_journal_bank_view',
+ 'general':'account_journal_view',
+ 'situation':'account_journal_view'
+ }
+
+ res = {}
+
+ view_id = type_map.get(type, 'general')
+
+ user = user_pool.browse(cr, uid, uid)
+ if type in ('cash', 'bank') and currency and user.company_id.currency_id.id != currency:
+ view_id = 'account_journal_bank_view_multi'
+
+ data_id = data_pool.search(cr, uid, [('model','=','account.journal.view'), ('name','=',view_id)])
+ data = data_pool.browse(cr, uid, data_id[0])
+
+ res.update({
+ 'centralisation':type == 'situation',
+ 'view_id':data.res_id,
+ })
+
+ return {
+ 'value':res
+ }
account_journal()
@@ -2335,6 +2413,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
obj_acc_template = self.pool.get('account.account.template')
obj_fiscal_position_template = self.pool.get('account.fiscal.position.template')
obj_fiscal_position = self.pool.get('account.fiscal.position')
+ data_pool = self.pool.get('ir.model.data')
# Creating Account
obj_acc_root = obj_multi.chart_template_id.account_root_id
@@ -2445,7 +2524,10 @@ class wizard_multi_charts_accounts(osv.osv_memory):
# Creating Journals
vals_journal={}
- view_id = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Journal View')])[0]
+ data_id = data_pool.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_view')])
+ data = data_pool.browse(cr, uid, data_id[0])
+ view_id = data.res_id
+
seq_id = obj_sequence.search(cr, uid, [('name','=','Account Journal')])[0]
if obj_multi.seq_journal:
@@ -2482,8 +2564,15 @@ class wizard_multi_charts_accounts(osv.osv_memory):
obj_journal.create(cr,uid,vals_journal)
# Bank Journals
- view_id_cash = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Cash Journal View')])[0]
- view_id_cur = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Multi-Currency Cash Journal View')])[0]
+ data_id = data_pool.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_bank_view')])
+ data = data_pool.browse(cr, uid, data_id[0])
+ view_id_cash = data.res_id
+ #view_id_cash = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Bank/Cash Journal View')])[0] #TOFIX: why put fix name
+
+ data_id = data_pool.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_bank_view_multi')])
+ data = data_pool.browse(cr, uid, data_id[0])
+ ref_acc_bank = data.res_id
+ #ref_acc_bank = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Bank/Cash Journal (Multi-Currency) View')])[0] #TOFIX: why put fix name
ref_acc_bank = obj_multi.chart_template_id.bank_account_view_id
current_num = 1
diff --git a/addons/account/account_demo.xml b/addons/account/account_demo.xml
index 0b4ee8f097d..a8a1d1405cd 100644
--- a/addons/account/account_demo.xml
+++ b/addons/account/account_demo.xml
@@ -3,8 +3,8 @@
+ Fiscal year
+ -->
@@ -15,8 +15,8 @@
+ Fiscal Periods
+ -->
diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml
index 7394fc54b7e..99d1181fb7b 100644
--- a/addons/account/account_invoice_view.xml
+++ b/addons/account/account_invoice_view.xml
@@ -257,7 +257,7 @@
-
+
@@ -490,7 +490,7 @@
-
+
diff --git a/addons/account/account_menuitem.xml b/addons/account/account_menuitem.xml
index 56d83debe4c..e0ac10abb50 100644
--- a/addons/account/account_menuitem.xml
+++ b/addons/account/account_menuitem.xml
@@ -8,7 +8,7 @@
-
+
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index c96fb9fe8c7..80fb20e1fad 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -330,53 +330,47 @@
diff --git a/addons/auction/i18n/ru.po b/addons/auction/i18n/ru.po
index 33407209b74..cc184cac539 100644
--- a/addons/auction/i18n/ru.po
+++ b/addons/auction/i18n/ru.po
@@ -1,19 +1,19 @@
# Translation of OpenERP Server.
# This file contains the translation of the following modules:
-# * auction
+# * auction
#
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
-"PO-Revision-Date: 2009-02-03 11:07+0000\n"
-"Last-Translator: Fabien (Open ERP) \n"
+"PO-Revision-Date: 2010-07-08 17:06+0000\n"
+"Last-Translator: Pomazan Bogdan \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-06-22 04:13+0000\n"
+"X-Launchpad-Export-Date: 2010-07-09 03:56+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: auction
@@ -32,16 +32,19 @@ msgid "Set to draft"
msgstr "Установить в 'Черновик'"
#. module: auction
-#: field:auction.deposit,partner_id:0 view:auction.lots:0
-#: xsl:report.auction.seller.list:0 field:report.deposit.border,seller:0
-#: field:report.seller.auction,seller:0 field:report.seller.auction2,seller:0
+#: field:auction.deposit,partner_id:0
+#: view:auction.lots:0
+#: xsl:report.auction.seller.list:0
+#: field:report.deposit.border,seller:0
+#: field:report.seller.auction,seller:0
+#: field:report.seller.auction2,seller:0
msgid "Seller"
msgstr "Продавец"
#. module: auction
#: constraint:ir.actions.act_window:0
msgid "Invalid model name in the action definition."
-msgstr ""
+msgstr "Недопустимое имя модели в определении действия."
#. module: auction
#: selection:auction.lots.send.aie,date_ask,numerotation:0
@@ -87,18 +90,23 @@ msgid "Deposit Form"
msgstr "Форма депозита"
#. module: auction
-#: rml:auction.bids:0 view:auction.lots:0 field:auction.lots,ach_uid:0
+#: rml:auction.bids:0
+#: view:auction.lots:0
+#: field:auction.lots,ach_uid:0
#: wizard_field:auction.lots.buyer_map,check,ach_uid:0
#: wizard_field:auction.lots.make_invoice_buyer,init,buyer_id:0
-#: wizard_field:auction.pay.buy,init,buyer_id:0 rml:buyer.list:0
+#: wizard_field:auction.pay.buy,init,buyer_id:0
+#: rml:buyer.list:0
#: model:ir.ui.menu,name:auction.auction_report_buyer_menu
-#: rml:report.auction.buyer.result:0 field:report.buyer.auction,buyer:0
+#: rml:report.auction.buyer.result:0
+#: field:report.buyer.auction,buyer:0
#: field:report.buyer.auction2,buyer:0
msgid "Buyer"
msgstr "Покупатель"
#. module: auction
-#: field:report.auction.view,nobjects:0 field:report.buyer.auction,object:0
+#: field:report.auction.view,nobjects:0
+#: field:report.buyer.auction,object:0
msgid "No of objects"
msgstr "Кол-во объектов"
@@ -123,7 +131,8 @@ msgid "Antique/Books, manuscripts, eso."
msgstr "Антиквариат/ книги, манускрипты, и т.д"
#. module: auction
-#: view:auction.deposit:0 model:ir.model,name:auction.model_auction_deposit
+#: view:auction.deposit:0
+#: model:ir.model,name:auction.model_auction_deposit
msgid "Deposit Border"
msgstr "Граница депозита"
@@ -195,7 +204,8 @@ msgid "Objects by Auction"
msgstr ""
#. module: auction
-#: field:auction.lots,lot_num:0 field:report.unclassified.objects,lot_num:0
+#: field:auction.lots,lot_num:0
+#: field:report.unclassified.objects,lot_num:0
msgid "List Number"
msgstr "Номер списка"
@@ -230,7 +240,8 @@ msgid "Contemporary Art"
msgstr "Современное искусство"
#. module: auction
-#: view:auction.lots:0 view:report.unclassified.objects:0
+#: view:auction.lots:0
+#: view:report.unclassified.objects:0
msgid "Ref"
msgstr "Ссылка"
@@ -250,7 +261,8 @@ msgid "Error: Sign in (resp. Sign out) must follow Sign out (resp. Sign in)"
msgstr ""
#. module: auction
-#: view:auction.lots:0 field:report.buyer.auction,total_price:0
+#: view:auction.lots:0
+#: field:report.buyer.auction,total_price:0
msgid "Total Adj."
msgstr "Общий рез-т"
@@ -260,7 +272,8 @@ msgid "Net margin (%)"
msgstr "Чистая маржа (%)"
#. module: auction
-#: selection:auction.lots,state:0 selection:report.object.encoded,state:0
+#: selection:auction.lots,state:0
+#: selection:report.object.encoded,state:0
#: selection:report.seller.auction,state:0
#: selection:report.unclassified.objects,state:0
msgid "Unsold"
@@ -288,7 +301,9 @@ msgid "Seller Costs"
msgstr "Стоимости продавца"
#. module: auction
-#: view:auction.bid:0 view:auction.bid_line:0 view:auction.lots:0
+#: view:auction.bid:0
+#: view:auction.bid_line:0
+#: view:auction.lots:0
#: field:auction.lots,bid_lines:0
#: model:ir.actions.report.xml,name:auction.bid_auction
#: model:ir.ui.menu,name:auction.menu_action_bid_open
@@ -311,7 +326,8 @@ msgid "Contact"
msgstr "Контакт"
#. module: auction
-#: field:report.auction.view,obj_ret:0 field:report.object.encoded,obj_ret:0
+#: field:report.auction.view,obj_ret:0
+#: field:report.object.encoded,obj_ret:0
#: field:report.object.encoded.manager,obj_ret:0
msgid "# obj ret"
msgstr ""
@@ -352,7 +368,8 @@ msgid "Sold Objects"
msgstr "Проданные объекты"
#. module: auction
-#: view:report.buyer.auction2:0 view:report.seller.auction2:0
+#: view:report.buyer.auction2:0
+#: view:report.seller.auction2:0
msgid "Sum net margin"
msgstr "Суммарная чистая маржа"
@@ -362,7 +379,9 @@ msgid "Deposit Border Form"
msgstr "Форма границы депозита"
#. module: auction
-#: field:auction.bid,bid_lines:0 rml:auction.bids:0 rml:bids.lots:0
+#: field:auction.bid,bid_lines:0
+#: rml:auction.bids:0
+#: rml:bids.lots:0
#: model:ir.model,name:auction.model_auction_bid_line
msgid "Bid"
msgstr "Заявка"
@@ -373,8 +392,10 @@ msgid "Langage"
msgstr "Язык"
#. module: auction
-#: field:auction.bid_line,lot_id:0 field:auction.lot.history,lot_id:0
-#: view:auction.lots:0 model:ir.model,name:auction.model_auction_lots
+#: field:auction.bid_line,lot_id:0
+#: field:auction.lot.history,lot_id:0
+#: view:auction.lots:0
+#: model:ir.model,name:auction.model_auction_lots
msgid "Object"
msgstr "Объект"
@@ -407,9 +428,11 @@ msgid "Auction buyer reporting form view"
msgstr "Вид вормы отчета покупателя аукцциона"
#. module: auction
-#: field:auction.dates,state:0 field:auction.lots,state:0
+#: field:auction.dates,state:0
+#: field:auction.lots,state:0
#: field:report.auction.adjudication,state:0
-#: field:report.object.encoded,state:0 field:report.seller.auction,state:0
+#: field:report.object.encoded,state:0
+#: field:report.seller.auction,state:0
#: field:report.unclassified.objects,state:0
msgid "Status"
msgstr "Статус"
@@ -425,7 +448,8 @@ msgid "Antique/Cartoons"
msgstr "Antique/ Эскизы"
#. module: auction
-#: view:auction.lots:0 selection:auction.lots,state:0
+#: view:auction.lots:0
+#: selection:auction.lots,state:0
#: selection:report.seller.auction,state:0
#: selection:report.unclassified.objects,state:0
msgid "Sold"
@@ -510,7 +534,8 @@ msgid "auction.dates"
msgstr ""
#. module: auction
-#: rml:auction.total.rml:0 model:ir.ui.menu,name:auction.auction_buyers_menu
+#: rml:auction.total.rml:0
+#: model:ir.ui.menu,name:auction.auction_buyers_menu
msgid "Buyers"
msgstr "Покупатели"
@@ -732,7 +757,8 @@ msgid "Antique/Toys"
msgstr "Антиквариат/ Игрушки"
#. module: auction
-#: field:auction.deposit,create_uid:0 field:auction.lots,create_uid:0
+#: field:auction.deposit,create_uid:0
+#: field:auction.lots,create_uid:0
msgid "Created by"
msgstr "Создано"
@@ -860,7 +886,8 @@ msgid "Gestion emporte"
msgstr ""
#. module: auction
-#: xsl:report.auction.lots.list.landscape:0 xsl:report.auction.vnd_bordereau:0
+#: xsl:report.auction.lots.list.landscape:0
+#: xsl:report.auction.vnd_bordereau:0
msgid "Cat. N."
msgstr ""
@@ -895,7 +922,8 @@ msgid "API ID"
msgstr "API ID"
#. module: auction
-#: field:auction.bid,name:0 field:auction.bid_line,bid_id:0
+#: field:auction.bid,name:0
+#: field:auction.bid_line,bid_id:0
msgid "Bid ID"
msgstr "ID заявки"
@@ -948,13 +976,16 @@ msgid "Antique/Carpet and textilles"
msgstr "Антиквариат/ ковры и текстиль"
#. module: auction
-#: xsl:report.auction.seller.list:0 field:report.object.encoded.manager,adj:0
+#: xsl:report.auction.seller.list:0
+#: field:report.object.encoded.manager,adj:0
msgid "Adj."
msgstr "Рез-т"
#. module: auction
-#: field:auction.lot.history,name:0 field:report.attendance,name:0
-#: field:report.auction.adjudication,date:0 xsl:report.auction.deposit:0
+#: field:auction.lot.history,name:0
+#: field:report.attendance,name:0
+#: field:report.auction.adjudication,date:0
+#: xsl:report.auction.deposit:0
#: field:report.auction.estimation.adj.category,date:0
msgid "Date"
msgstr "Дата"
@@ -995,12 +1026,14 @@ msgid "Specific Costs"
msgstr ""
#. module: auction
-#: view:report.buyer.auction2:0 view:report.seller.auction2:0
+#: view:report.buyer.auction2:0
+#: view:report.seller.auction2:0
msgid "Sum adj"
msgstr ""
#. module: auction
-#: view:auction.dates:0 view:report.auction.view2:0
+#: view:auction.dates:0
+#: view:report.auction.view2:0
msgid "Auctions"
msgstr "Аукционы"
@@ -1035,7 +1068,8 @@ msgid "Aie Category"
msgstr ""
#. module: auction
-#: xsl:flagey.huissier:0 rml:report.auction.buyer.result:0
+#: xsl:flagey.huissier:0
+#: rml:report.auction.buyer.result:0
#: xsl:report.auction.deposit:0
msgid "Num"
msgstr ""
@@ -1083,7 +1117,8 @@ msgid "Detailed lots"
msgstr "Подробные лоты"
#. module: auction
-#: view:report.object.encoded:0 view:report.object.encoded.manager:0
+#: view:report.object.encoded:0
+#: view:report.object.encoded.manager:0
msgid "Objects statistics"
msgstr "Статистика объектов"
@@ -1098,7 +1133,8 @@ msgid "Send results to Auction-in-europe.com"
msgstr "Отправить результаты на Auction-in-europe.com"
#. module: auction
-#: rml:bids.lots:0 rml:bids.phones.details:0
+#: rml:bids.lots:0
+#: rml:bids.phones.details:0
msgid "Cat.N"
msgstr "№ по кат."
@@ -1142,7 +1178,8 @@ msgid "-"
msgstr "-"
#. module: auction
-#: xsl:report.auction.ach_bordereau:0 xsl:report.auction.vnd_bordereau:0
+#: xsl:report.auction.ach_bordereau:0
+#: xsl:report.auction.vnd_bordereau:0
msgid "Subtotal:"
msgstr "Подитог"
@@ -1158,7 +1195,8 @@ msgid "Invoice Number"
msgstr "Номер счета"
#. module: auction
-#: field:report.buyer.auction,date:0 field:report.buyer.auction2,date:0
+#: field:report.buyer.auction,date:0
+#: field:report.buyer.auction2,date:0
#: field:report.object.encoded,date:0
#: field:report.object.encoded.manager,date:0
#: field:report.seller.auction,date:0
@@ -1181,7 +1219,8 @@ msgid "Name"
msgstr "Название"
#. module: auction
-#: field:auction.deposit,name:0 field:auction.lots,bord_vnd_id:0
+#: field:auction.deposit,name:0
+#: field:auction.lots,bord_vnd_id:0
#: wizard_field:auction.lots.numerotate,init,bord_vnd_id:0
#: field:report.deposit.border,bord:0
#: field:report.unclassified.objects,bord_vnd_id:0
@@ -1209,7 +1248,8 @@ msgid "Login"
msgstr "Учетная запись"
#. module: auction
-#: rml:buyer.list:0 xsl:report.auction.seller.list:0
+#: rml:buyer.list:0
+#: xsl:report.auction.seller.list:0
msgid "To pay"
msgstr "К оплате"
@@ -1229,7 +1269,8 @@ msgid "Seller Form"
msgstr "Форма продавца"
#. module: auction
-#: field:auction.lots,lot_type:0 field:report.unclassified.objects,lot_type:0
+#: field:auction.lots,lot_type:0
+#: field:report.unclassified.objects,lot_type:0
msgid "Object category"
msgstr "Категория объекта"
@@ -1298,7 +1339,8 @@ msgid "Payment's history"
msgstr "Журнал платежей"
#. module: auction
-#: xsl:report.auction.ach_bordereau:0 xsl:report.auction.vnd_bordereau:0
+#: xsl:report.auction.ach_bordereau:0
+#: xsl:report.auction.vnd_bordereau:0
msgid "Document"
msgstr "Документ"
@@ -1370,7 +1412,8 @@ msgid "Cont. Art/Curiosa"
msgstr "Совр. искусство/ Редкости"
#. module: auction
-#: field:auction.bid,auction_id:0 field:auction.lots,auction_id:0
+#: field:auction.bid,auction_id:0
+#: field:auction.lots,auction_id:0
#: wizard_field:auction.lots.auction_move,init,auction_id:0
#: wizard_field:auction.lots.send.aie,date_ask,dates:0
#: wizard_field:auction.lots.send.aie,init,dates:0
@@ -1418,7 +1461,8 @@ msgid "Cont. Art/Jewelry"
msgstr "Совр. искусство/ Ювелирные изделия"
#. module: auction
-#: xsl:report.auction.deposit:0 xsl:report.auction.vnd_bordereau:0
+#: xsl:report.auction.deposit:0
+#: xsl:report.auction.vnd_bordereau:0
msgid "Inventory"
msgstr ""
@@ -1428,7 +1472,8 @@ msgid "Next Auctions"
msgstr "След. аукционы"
#. module: auction
-#: rml:buyer.list:0 xsl:report.auction.seller.list:0
+#: rml:buyer.list:0
+#: xsl:report.auction.seller.list:0
msgid "#"
msgstr "№"
@@ -1558,14 +1603,16 @@ msgid "Buyer Journal"
msgstr "Книга покупателя"
#. module: auction
-#: selection:auction.lots,state:0 xsl:report.auction.ach_bordereau:0
+#: selection:auction.lots,state:0
+#: xsl:report.auction.ach_bordereau:0
#: selection:report.object.encoded,state:0
#: selection:report.unclassified.objects,state:0
msgid "Paid"
msgstr "Оплачено"
#. module: auction
-#: rml:bids.lots:0 rml:bids.phones.details:0
+#: rml:bids.lots:0
+#: rml:bids.phones.details:0
msgid "Phone"
msgstr "Телефон"
@@ -1596,8 +1643,10 @@ msgid "Antique/Sculpture, bronze, eso."
msgstr "Антиквариат/ Скульптура, бронза и т.п."
#. module: auction
-#: rml:buyer.list:0 xsl:report.auction.ach_bordereau:0
-#: xsl:report.auction.seller.list:0 xsl:report.auction.vnd_bordereau:0
+#: rml:buyer.list:0
+#: xsl:report.auction.ach_bordereau:0
+#: xsl:report.auction.seller.list:0
+#: xsl:report.auction.vnd_bordereau:0
msgid "Total:"
msgstr "Итого:"
@@ -1743,7 +1792,8 @@ msgid "Plate Number:"
msgstr ""
#. module: auction
-#: view:auction.deposit:0 field:auction.deposit,lot_id:0
+#: view:auction.deposit:0
+#: field:auction.deposit,lot_id:0
#: model:ir.ui.menu,name:auction.auction_objects_menu
msgid "Objects"
msgstr "Объекты"
@@ -1765,9 +1815,12 @@ msgid "Allow Negative Amount"
msgstr "Разрешить отрицательные суммы"
#. module: auction
-#: rml:auction.bids:0 view:auction.lots:0 rml:auction.total.rml:0
+#: rml:auction.bids:0
+#: view:auction.lots:0
+#: rml:auction.total.rml:0
#: model:ir.ui.menu,name:auction.auction_report_auction_menu
-#: xsl:report.auction.ach_bordereau:0 xsl:report.auction.deposit:0
+#: xsl:report.auction.ach_bordereau:0
+#: xsl:report.auction.deposit:0
msgid "Auction"
msgstr "Аукцион"
@@ -1777,12 +1830,17 @@ msgid "Cont. Art/Shows"
msgstr "Совр. искусство/ Выставки"
#. module: auction
-#: field:auction.dates,name:0 field:auction.lot.history,auction_id:0
+#: field:auction.dates,name:0
+#: field:auction.lot.history,auction_id:0
#: field:report.auction.adjudication,name:0
-#: field:report.auction.view,auction_id:0 field:report.auction.view2,auction:0
-#: field:report.auction.view2,date:0 field:report.buyer.auction,auction:0
-#: field:report.buyer.auction2,auction:0 field:report.seller.auction,auction:0
-#: field:report.seller.auction2,auction:0 field:report.seller.auction2,date:0
+#: field:report.auction.view,auction_id:0
+#: field:report.auction.view2,auction:0
+#: field:report.auction.view2,date:0
+#: field:report.buyer.auction,auction:0
+#: field:report.buyer.auction2,auction:0
+#: field:report.seller.auction,auction:0
+#: field:report.seller.auction2,auction:0
+#: field:report.seller.auction2,date:0
#: field:report.unclassified.objects,auction:0
msgid "Auction date"
msgstr "Дата аукциона"
@@ -1934,7 +1992,8 @@ msgstr "Первый день экпозиции"
#. module: auction
#: wizard_view:auction.lots.auction_move,init:0
-msgid "Warning, this will erase the object adjudication price and its buyer !"
+msgid ""
+"Warning, this will erase the object adjudication price and its buyer !"
msgstr "Внимание, это удалит результат цены объекта и покупателя!"
#. module: auction
@@ -1958,14 +2017,16 @@ msgid "Income Account"
msgstr ""
#. module: auction
-#: field:auction.lots,net_revenue:0 field:report.auction.view2,net_revenue:0
+#: field:auction.lots,net_revenue:0
+#: field:report.auction.view2,net_revenue:0
#: field:report.object.encoded.manager,net_revenue:0
#: field:report.seller.auction2,net_revenue:0
msgid "Net revenue"
msgstr "Чистая выручка"
#. module: auction
-#: xsl:report.auction.deposit:0 xsl:report.auction.lots.list.landscape:0
+#: xsl:report.auction.deposit:0
+#: xsl:report.auction.lots.list.landscape:0
msgid "Limit"
msgstr "Лимит"
@@ -2037,7 +2098,8 @@ msgid "Closed"
msgstr "Закрыто"
#. module: auction
-#: field:auction.lots,obj_comm:0 field:report.unclassified.objects,obj_comm:0
+#: field:auction.lots,obj_comm:0
+#: field:report.unclassified.objects,obj_comm:0
msgid "Commission"
msgstr "Комиссия"
@@ -2057,7 +2119,8 @@ msgid "Employee"
msgstr "Сотрудник"
#. module: auction
-#: xsl:report.auction.ach_bordereau:0 xsl:report.auction.vnd_bordereau:0
+#: xsl:report.auction.ach_bordereau:0
+#: xsl:report.auction.vnd_bordereau:0
msgid "Adj.(EUR)"
msgstr "Рез-т(EUR)"
@@ -2134,7 +2197,8 @@ msgid "Invoiced"
msgstr "Выставлен счет"
#. module: auction
-#: view:auction.lots:0 selection:auction.lots,state:0
+#: view:auction.lots:0
+#: selection:auction.lots,state:0
msgid "Taken away"
msgstr "Забрано"
@@ -2171,7 +2235,8 @@ msgid "Error ! You can not create recursive associated members."
msgstr ""
#. module: auction
-#: selection:auction.dates,state:0 selection:auction.lots,state:0
+#: selection:auction.dates,state:0
+#: selection:auction.lots,state:0
#: selection:report.auction.adjudication,state:0
#: selection:report.object.encoded,state:0
#: selection:report.seller.auction,state:0
@@ -2200,7 +2265,8 @@ msgid "Adj"
msgstr "Рез-т"
#. module: auction
-#: view:auction.dates:0 model:ir.ui.menu,name:auction.auction_date_menu
+#: view:auction.dates:0
+#: model:ir.ui.menu,name:auction.auction_date_menu
msgid "Auction Dates"
msgstr "Даты аукциона"
@@ -2346,11 +2412,16 @@ msgid "Report Sign In/Out"
msgstr ""
#. module: auction
-#: view:auction.deposit:0 field:auction.deposit,info:0 view:auction.lots:0
+#: view:auction.deposit:0
+#: field:auction.deposit,info:0
+#: view:auction.lots:0
#: wizard_field:auction.lots.numerotate,search,obj_desc:0
-#: rml:bids.phones.details:0 xsl:flagey.huissier:0
-#: xsl:report.auction.ach_bordereau:0 xsl:report.auction.deposit:0
-#: xsl:report.auction.lots.list.landscape:0 xsl:report.auction.vnd_bordereau:0
+#: rml:bids.phones.details:0
+#: xsl:flagey.huissier:0
+#: xsl:report.auction.ach_bordereau:0
+#: xsl:report.auction.deposit:0
+#: xsl:report.auction.lots.list.landscape:0
+#: xsl:report.auction.vnd_bordereau:0
msgid "Description"
msgstr "Описание"
@@ -2360,7 +2431,8 @@ msgid "Cont. Art/Arts"
msgstr "Совр. искусство/ Ремесла"
#. module: auction
-#: field:auction.lots,obj_price:0 field:report.auction.view,adj_price:0
+#: field:auction.lots,obj_price:0
+#: field:report.auction.view,adj_price:0
#: field:report.unclassified.objects,obj_price:0
msgid "Adjudication price"
msgstr "Цена результата"
@@ -2422,7 +2494,8 @@ msgid "Pay objects"
msgstr ""
#. module: auction
-#: view:report.object.encoded:0 view:report.object.encoded.manager:0
+#: view:report.object.encoded:0
+#: view:report.object.encoded.manager:0
msgid "# objects"
msgstr "Кол-во объектов"
@@ -2490,12 +2563,12 @@ msgstr "Заказы"
#. module: auction
#: view:board.board:0
msgid "Objects by day"
-msgstr "Объекты по дням"
+msgstr ""
#. module: auction
#: model:ir.ui.menu,name:auction.menu_board_auction_manager
msgid "Auction Manager"
-msgstr "Менеджер аукциона"
+msgstr ""
#. module: auction
#: view:board.board:0
@@ -2505,7 +2578,7 @@ msgstr ""
#. module: auction
#: model:ir.ui.menu,name:auction.menu_board_auction
msgid "Auction Member"
-msgstr "Участник аукциона"
+msgstr ""
#. module: auction
#: model:ir.actions.act_window,name:auction.open_board_auction
@@ -2515,7 +2588,7 @@ msgstr ""
#. module: auction
#: view:board.board:0
msgid "Auction manager "
-msgstr "Менелжер аукциона "
+msgstr ""
#. module: auction
#: model:ir.module.module,shortdesc:auction.module_meta_information
@@ -2525,49 +2598,49 @@ msgstr ""
#. module: auction
#: view:board.board:0
msgid "Estimations/Adjudication"
-msgstr "Оценка / Результат"
+msgstr ""
#. module: auction
#: view:board.board:0
msgid "Total Adjudications"
-msgstr "Итоговые результаты"
+msgstr ""
#. module: auction
#: view:board.board:0
msgid "Latest objects"
-msgstr "Новейшие объекты"
+msgstr ""
#. module: auction
#: view:board.board:0
msgid "Latest deposits"
-msgstr "Новейшие депозиты"
+msgstr ""
#. module: auction
#: view:board.board:0
msgid "Menu"
-msgstr "Меню"
+msgstr ""
#. module: auction
#: view:board.board:0
msgid "My objects By Day"
-msgstr "Мои объекты по дням"
+msgstr ""
#. module: auction
#: view:board.board:0
msgid "My board"
-msgstr "Моя панель"
+msgstr ""
#. module: auction
#: model:ir.actions.act_window,name:auction.open_board_auction_manager
msgid "Auction manager board"
-msgstr "Панель менеджера аукциона"
+msgstr ""
#. module: auction
#: view:board.board:0
msgid "Min/Adj/Max"
-msgstr "Ми/Рез-т/Макс"
+msgstr ""
#. module: auction
#: view:board.board:0
msgid "My Latest Objects"
-msgstr "Мои новейшие объекты"
+msgstr ""
diff --git a/addons/base_calendar/base_calendar.py b/addons/base_calendar/base_calendar.py
index f9f6567747f..df046e98c3b 100644
--- a/addons/base_calendar/base_calendar.py
+++ b/addons/base_calendar/base_calendar.py
@@ -317,7 +317,7 @@ class calendar_attendee(osv.osv):
obj = self.pool.get('res.lang')
ids = obj.search(cr, uid, [])
res = obj.read(cr, uid, ids, ['code', 'name'], context=context)
- res = [((r['code']).replace('_', '-'), r['name']) for r in res]
+ res = [((r['code']).replace('_', '-').lower(), r['name']) for r in res]
return res
_columns = {
@@ -793,6 +793,7 @@ class calendar_alarm(osv.osv):
@param use_new_cursor: False or the dbname
@param context: A standard dictionary for contextual values
"""
+ return True # XXX FIXME REMOVE THIS AFTER FIXING get_recurrent_dates!!
if not context:
context = {}
current_datetime = datetime.now()
diff --git a/addons/base_contact/i18n/ru.po b/addons/base_contact/i18n/ru.po
index f63312c6cb9..426fb570629 100644
--- a/addons/base_contact/i18n/ru.po
+++ b/addons/base_contact/i18n/ru.po
@@ -7,24 +7,24 @@ 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: 2010-04-13 07:22+0000\n"
-"Last-Translator: grisha \n"
+"PO-Revision-Date: 2010-07-08 15:37+0000\n"
+"Last-Translator: Pomazan Bogdan \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-06-22 04:01+0000\n"
+"X-Launchpad-Export-Date: 2010-07-09 03:56+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: base_contact
#: field:res.partner.job,sequence_contact:0
msgid "Contact Seq."
-msgstr ""
+msgstr "Последовательность контакта"
#. module: base_contact
#: model:ir.model,name:base_contact.model_res_partner_contact
msgid "res.partner.contact"
-msgstr ""
+msgstr "Контакт партнера"
#. module: base_contact
#: constraint:ir.model:0
@@ -37,7 +37,7 @@ msgstr ""
#. module: base_contact
#: field:res.partner.job,function_id:0
msgid "Partner Function"
-msgstr ""
+msgstr "Функции партнера"
#. module: base_contact
#: model:ir.actions.act_window,name:base_contact.action_partner_contact_form
@@ -52,12 +52,12 @@ msgstr "Контакты"
#. module: base_contact
#: field:res.partner.job,sequence_partner:0
msgid "Partner Seq."
-msgstr ""
+msgstr "Последовательность партнеров"
#. module: base_contact
#: selection:res.partner.job,state:0
msgid "Current"
-msgstr ""
+msgstr "Текущий"
#. module: base_contact
#: field:res.partner.contact,first_name:0
@@ -72,32 +72,32 @@ msgstr ""
#. module: base_contact
#: field:res.partner.job,other:0
msgid "Other"
-msgstr ""
+msgstr "Другое"
#. module: base_contact
#: model:process.transition,name:base_contact.process_transition_contacttofunction0
msgid "Contact to function"
-msgstr ""
+msgstr "Функции контакта"
#. module: base_contact
#: constraint:ir.actions.act_window:0
msgid "Invalid model name in the action definition."
-msgstr ""
+msgstr "Недопустимое имя модели в определении действия."
#. module: base_contact
#: model:process.transition,name:base_contact.process_transition_partnertoaddress0
msgid "Partner to address"
-msgstr ""
+msgstr "Адрес партнера"
#. module: base_contact
#: view:res.partner.address:0
msgid "# of Contacts"
-msgstr ""
+msgstr "Кол-во контактных лиц"
#. module: base_contact
#: help:res.partner.job,other:0
msgid "Additional phone field"
-msgstr ""
+msgstr "Дополнительное поле телефона"
#. module: base_contact
#: model:process.node,name:base_contact.process_node_function0
@@ -107,7 +107,7 @@ msgstr "Функция"
#. module: base_contact
#: field:res.partner.job,fax:0
msgid "Fax"
-msgstr ""
+msgstr "Факс"
#. module: base_contact
#: field:res.partner.contact,lang_id:0
@@ -137,7 +137,7 @@ msgstr "Функции контакта"
#. module: base_contact
#: model:ir.module.module,shortdesc:base_contact.module_meta_information
msgid "Base Contact"
-msgstr ""
+msgstr "Основной контакт"
#. module: base_contact
#: help:res.partner.job,sequence_partner:0
@@ -145,6 +145,7 @@ msgid ""
"Order of importance of this job title in the list of job title of the linked "
"partner"
msgstr ""
+"С учетом важности этой работы названия в списке Должность связанного партнера"
#. module: base_contact
#: field:res.partner.contact,email:0
@@ -155,7 +156,7 @@ msgstr "Эл. почта"
#. module: base_contact
#: field:res.partner.job,date_stop:0
msgid "Date Stop"
-msgstr ""
+msgstr "Дата Остановки"
#. module: base_contact
#: view:res.partner:0
@@ -167,7 +168,7 @@ msgstr "Адрес"
#: model:ir.actions.act_window,name:base_contact.action_res_partner_job
#: model:ir.ui.menu,name:base_contact.menu_action_res_partner_job
msgid "Contact's Jobs"
-msgstr ""
+msgstr "Должность контакта"
#. module: base_contact
#: field:res.partner.contact,country_id:0
@@ -185,7 +186,7 @@ msgstr ""
#: field:res.partner.address,job_id:0
#: field:res.partner.contact,job_id:0
msgid "Main Job"
-msgstr ""
+msgstr "Основная должность"
#. module: base_contact
#: view:res.partner:0
@@ -200,7 +201,7 @@ msgstr ""
#. module: base_contact
#: model:process.transition,note:base_contact.process_transition_partnertoaddress0
msgid "Define partners and their addresses."
-msgstr ""
+msgstr "Определить партнеров и их адреса."
#. module: base_contact
#: constraint:ir.ui.view:0
@@ -220,7 +221,7 @@ msgstr ""
#. module: base_contact
#: field:res.partner.job,extension:0
msgid "Extension"
-msgstr ""
+msgstr "Расширение"
#. module: base_contact
#: field:res.partner.contact,mobile:0
@@ -230,12 +231,12 @@ msgstr "Моб. тел."
#. module: base_contact
#: help:res.partner.job,extension:0
msgid "Internal/External extension phone number"
-msgstr ""
+msgstr "Внутренний / внешний расширение телефонного номера"
#. module: base_contact
#: model:process.node,note:base_contact.process_node_contacts0
msgid "People you work with."
-msgstr ""
+msgstr "Люди с которыми вы работает"
#. module: base_contact
#: view:res.partner.contact:0
@@ -246,7 +247,7 @@ msgstr "Доп. информация"
#: view:res.partner.contact:0
#: field:res.partner.contact,job_ids:0
msgid "Functions and Addresses"
-msgstr ""
+msgstr "Функции и Адреса"
#. module: base_contact
#: field:res.partner.contact,active:0
@@ -261,7 +262,7 @@ msgstr "Контакт"
#. module: base_contact
#: model:process.node,note:base_contact.process_node_partners0
msgid "Companies you work with."
-msgstr ""
+msgstr "Организации с которыми вы работаете"
#. module: base_contact
#: field:res.partner.contact,partner_id:0
@@ -276,7 +277,7 @@ msgstr ""
#. module: base_contact
#: model:ir.actions.act_window,name:base_contact.act_res_partner_jobs
msgid "Partner Contacts"
-msgstr ""
+msgstr "Контакты партнера"
#. module: base_contact
#: view:res.partner.contact:0
@@ -297,7 +298,7 @@ msgstr "Адреса"
#. module: base_contact
#: model:process.node,note:base_contact.process_node_addresses0
msgid "Working and private addresses."
-msgstr ""
+msgstr "Рабочие и дополнительные адреса."
#. module: base_contact
#: field:res.partner.contact,name:0
@@ -307,18 +308,18 @@ msgstr "Фамилия"
#. module: base_contact
#: field:res.partner.job,state:0
msgid "State"
-msgstr ""
+msgstr "Состояние"
#. module: base_contact
#: view:res.partner.contact:0
#: view:res.partner.job:0
msgid "General"
-msgstr ""
+msgstr "Основной"
#. module: base_contact
#: selection:res.partner.job,state:0
msgid "Past"
-msgstr ""
+msgstr "Прошлые"
#. module: base_contact
#: view:res.partner.contact:0
@@ -338,12 +339,12 @@ msgstr "Партнер"
#. module: base_contact
#: field:res.partner.job,date_start:0
msgid "Date Start"
-msgstr ""
+msgstr "Дата начала"
#. module: base_contact
#: model:process.transition,note:base_contact.process_transition_functiontoaddress0
msgid "Define functions and address."
-msgstr ""
+msgstr "Определить функции и адреса"
#. module: base_contact
#: field:res.partner.contact,website:0
diff --git a/addons/base_iban/i18n/ru.po b/addons/base_iban/i18n/ru.po
index 7b75130d154..fa5a414fe57 100644
--- a/addons/base_iban/i18n/ru.po
+++ b/addons/base_iban/i18n/ru.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-07-08 03:49+0000\n"
+"X-Launchpad-Export-Date: 2010-07-09 03:55+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: base_iban
diff --git a/addons/base_setup/base_setup_installer.xml b/addons/base_setup/base_setup_installer.xml
index bb9f8d23bf7..009af3ffd55 100644
--- a/addons/base_setup/base_setup_installer.xml
+++ b/addons/base_setup/base_setup_installer.xml
@@ -28,7 +28,7 @@
-
+
diff --git a/addons/caldav/calendar.py b/addons/caldav/calendar.py
index c9f40e418a1..6dc1e23ea66 100644
--- a/addons/caldav/calendar.py
+++ b/addons/caldav/calendar.py
@@ -528,6 +528,7 @@ class Calendar(CalDAV, osv.osv):
})
self.__attribute__ = get_attribute_mapping(cr, uid, child.name.lower(), context=context)
val = self.parse_ics(cr, uid, child, cal_children=cal_children, context=context)
+ val.update({'user_id': uid})
vals.append(val)
obj = self.pool.get(cal_children[child.name.lower()])
if hasattr(obj, 'check_import'):
@@ -1052,7 +1053,8 @@ class Attendee(CalDAV, osv.osv_memory):
if cn_val:
attendee_add.params['CN'] = cn_val
if not attendee['email']:
- raise osv.except_osv(_('Error !'), _('Attendee must have an Email Id'))
+ attendee_add.value = 'MAILTO:'
+ #raise osv.except_osv(_('Error !'), _('Attendee must have an Email Id'))
elif attendee['email']:
attendee_add.value = 'MAILTO:' + attendee['email']
return vevent
diff --git a/addons/claim_from_delivery/__init__.py b/addons/claim_from_delivery/__init__.py
index b10828031a8..801c814fdf9 100644
--- a/addons/claim_from_delivery/__init__.py
+++ b/addons/claim_from_delivery/__init__.py
@@ -18,5 +18,6 @@
#
##############################################################################
import claim_delivery
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/claim_from_delivery/__openerp__.py b/addons/claim_from_delivery/__openerp__.py
index 86d357834ff..c530a5605fb 100644
--- a/addons/claim_from_delivery/__openerp__.py
+++ b/addons/claim_from_delivery/__openerp__.py
@@ -21,7 +21,7 @@
"name" : "Claim from delivery",
"version" : "1.0",
"author" : "Tiny",
- "category" : "Enterprise Specific Modules/Food Industries",
+ "category" : "Generic Modules/Inventory Control",
"depends" : ["base", "crm_claim", "stock"],
"init_xml" : [],
"demo_xml" : [],
@@ -31,5 +31,6 @@
"active": False,
"installable": True
}
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/claim_from_delivery/claim_delivery.py b/addons/claim_from_delivery/claim_delivery.py
index 4e81a0a3067..67e6f0baae2 100644
--- a/addons/claim_from_delivery/claim_delivery.py
+++ b/addons/claim_from_delivery/claim_delivery.py
@@ -24,6 +24,10 @@ from osv import fields, osv
class stock_picking(osv.osv):
_inherit = "stock.picking"
_columns = {
- 'partner_id': fields.related('address_id','partner_id',type='many2one', relation="res.partner", string="Partner"),
+ 'partner_id': fields.related('address_id', 'partner_id', type='many2one', relation="res.partner", string="Partner"),
}
+
stock_picking()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+
diff --git a/addons/claim_from_delivery/claim_delivery_view.xml b/addons/claim_from_delivery/claim_delivery_view.xml
index 7fb68cc6348..d2fe510460d 100644
--- a/addons/claim_from_delivery/claim_delivery_view.xml
+++ b/addons/claim_from_delivery/claim_delivery_view.xml
@@ -14,19 +14,11 @@
-
-
-
-
- {'default_partner_address_id': address_id, 'default_partner_id': partner_id}
-
+
diff --git a/addons/crm/__openerp__.py b/addons/crm/__openerp__.py
index 973bb12dc5c..a490a800beb 100644
--- a/addons/crm/__openerp__.py
+++ b/addons/crm/__openerp__.py
@@ -121,7 +121,7 @@ Create dashboard for CRM that includes:
],
'test': [
'test/test_crm_lead.yml',
- 'test/test_crm_meeting.yml',
+ #'test/test_crm_meeting.yml',
'test/test_crm_opportunity.yml',
'test/test_crm_phonecall.yml',
],
diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py
index 6708f3e8f0e..01c597fcb97 100644
--- a/addons/crm/crm_lead.py
+++ b/addons/crm/crm_lead.py
@@ -31,6 +31,13 @@ import collections
import binascii
import tools
+
+CRM_LEAD_PENDING_STATES = (
+ crm.AVAILABLE_STATES[2][0], # Cancelled
+ crm.AVAILABLE_STATES[3][0], # Done
+ crm.AVAILABLE_STATES[4][0], # Pending
+)
+
class crm_lead(osv.osv, crm_case):
""" CRM Lead Case """
_name = "crm.lead"
@@ -95,6 +102,10 @@ class crm_lead(osv.osv, crm_case):
return res
_columns = {
+ # Overridden from res.partner.address:
+ 'partner_id': fields.many2one('res.partner', 'Partner', ondelete='set null',
+ select=True, help="Optional linked partner, usually after conversion of the lead"),
+
# From crm.case
'name': fields.char('Name', size=64),
'active': fields.boolean('Active', required=False),
@@ -334,8 +345,8 @@ and users"),
# previous state, so we have to loop:
for case in self.browse(cr, uid, ids, context=context):
values = dict(vals)
- if case.state == crm.AVAILABLE_STATES[4][0]: #pending
- values.update(state=crm.AVAILABLE_STATES[1][0]) #open
+ if case.state in CRM_LEAD_PENDING_STATES:
+ values.update(state=crm.AVAILABLE_STATES[1][0]) #re-open
res = self.write(cr, uid, [case.id], values, context=context)
return res
diff --git a/addons/crm/crm_lead_data.xml b/addons/crm/crm_lead_data.xml
index 2b47140e396..41eeb529154 100644
--- a/addons/crm/crm_lead_data.xml
+++ b/addons/crm/crm_lead_data.xml
@@ -1,81 +1,105 @@
-
+
-
-
- New
-
-
-
-
- Assigned
-
-
-
-
- In Process
-
-
-
-
- Converted
-
-
-
-
- Recycled
-
-
-
-
- Dead
-
-
-
+
+
+ New
+
+
+
+
+
-
-
- Telesales
-
-
-
-
- Mail
-
-
-
-
- Email
-
-
-
-
- Print
-
-
-
-
- Web
-
-
-
-
- Radio
-
-
-
-
- Television
-
-
-
-
- Newsletter
-
-
-
+
+ Qualification
+
+
+
+
+
-
+
+ Proposition
+
+
+
+
+
+
+
+ Negotiation
+
+
+
+
+
+
+
+ Win
+
+
+
+
+
+
+
+ Lost
+
+
+
+
+
+
+
+
+ Telesales
+
+
+
+
+
+ Mail
+
+
+
+
+
+ Email
+
+
+
+
+
+ Print
+
+
+
+
+
+ Web
+
+
+
+
+
+ Radio
+
+
+
+
+
+ Television
+
+
+
+
+
+ Newsletter
+
+
+
+
+
diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml
index c429810e31f..ada4f7d29fe 100644
--- a/addons/crm/crm_lead_view.xml
+++ b/addons/crm/crm_lead_view.xml
@@ -43,16 +43,15 @@
-
-
+
diff --git a/addons/crm/crm_opportunity_data.xml b/addons/crm/crm_opportunity_data.xml
index a7cfd2d46ca..fd4d76d5865 100644
--- a/addons/crm/crm_opportunity_data.xml
+++ b/addons/crm/crm_opportunity_data.xml
@@ -1,6 +1,6 @@
-
+
Existing Customer
@@ -42,43 +42,6 @@
-
-
- Prospecting
-
-
-
-
- Needs Analysis
-
-
-
-
- Value Proposition
-
-
-
-
- Proposal/Price Quote
-
-
-
-
- Negotiation/Review
-
-
-
-
- Closed Won
-
-
-
-
- Closed Lost
-
-
-
-
Existing Business
diff --git a/addons/crm/crm_opportunity_demo.xml b/addons/crm/crm_opportunity_demo.xml
index 3c06d16dc19..48812b17cf0 100644
--- a/addons/crm/crm_opportunity_demo.xml
+++ b/addons/crm/crm_opportunity_demo.xml
@@ -20,7 +20,7 @@
-
+
@@ -36,7 +36,7 @@
-
+
@@ -53,7 +53,7 @@
-
+
@@ -70,7 +70,7 @@
-
+
@@ -86,7 +86,7 @@
-
+
diff --git a/addons/crm/crm_opportunity_view.xml b/addons/crm/crm_opportunity_view.xml
index ea959f7bd1a..b08ceaf898e 100644
--- a/addons/crm/crm_opportunity_view.xml
+++ b/addons/crm/crm_opportunity_view.xml
@@ -200,7 +200,7 @@
crm.lead
tree
-
+
diff --git a/addons/crm/crm_phonecall_view.xml b/addons/crm/crm_phonecall_view.xml
index 479e73fe8fb..c61ec1ff0b5 100644
--- a/addons/crm/crm_phonecall_view.xml
+++ b/addons/crm/crm_phonecall_view.xml
@@ -69,17 +69,14 @@
form
diff --git a/addons/event/security/ir.model.access.csv b/addons/event/security/ir.model.access.csv
index c30a8b6aa3d..a59748aa534 100644
--- a/addons/event/security/ir.model.access.csv
+++ b/addons/event/security/ir.model.access.csv
@@ -1,6 +1,11 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_event_type","event.type","model_event_type","event.group_event_subscriber",1,0,0,0
"access_event_type_manager","event.type manager","model_event_type","event.group_event_manager",1,1,1,1
-"access_event_event","event.event","model_event_event","event.group_event_subscriber",1,1,1,1
-"access_event_registration","event.registration","model_event_registration","event.group_event_subscriber",1,1,1,1
+"access_event_event","event.event","model_event_event","event.group_event_subscriber",1,1,1,0
+"access_event_registration","event.registration","model_event_registration","event.group_event_subscriber",1,1,1,0
"access_report_event_registration","report.event.registration","model_report_event_registration","event.group_event_subscriber",1,0,0,0
+"access_event_event_manager","event.event manager","model_event_event","event.group_event_manager",1,1,1,1
+"access_event_registration_manager","event.registration manager","model_event_registration","event.group_event_manager",1,1,1,1
+"access_crm_case_section_manager","crm.case.section manager","crm.model_crm_case_section","event.group_event_manager",1,1,1,1
+"access_product_product","product.product.product manager","product.model_product_product","event.group_event_manager",1,1,1,1
+"access_report_event_registration","report.event.registration","model_report_event_registration","event.group_event_manager",1,1,1,1
diff --git a/addons/l10n_ch/demo/vaudtax_data_demo.xml b/addons/l10n_ch/demo/vaudtax_data_demo.xml
index 1da57c59ff4..cf00001a81b 100644
--- a/addons/l10n_ch/demo/vaudtax_data_demo.xml
+++ b/addons/l10n_ch/demo/vaudtax_data_demo.xml
@@ -1,88 +1,84 @@
-
- My bank !
- banq
- Banque
-
-
-
- +41 31 622 13 00
- Marc Dufour
- 1015
- Lausanne
-
-
- M.
- tinyerp@bank.com
- +41 24 620 10 12
- PSE-C
- 1
- default
-
+
+ My bank !
+ banq
+ Banque
+
+
+
+ +41 31 622 13 00
+ Marc Dufour
+ 1015
+ Lausanne
+
+
+ tinyerp@bank.com
+ +41 24 620 10 12
+ PSE-C
+ 1
+ default
+
-
- Very good company!
- They provides a very high quality service.
- ProL
- http://camptocamp.com
- ProLibre
-
-
+
+ Very good company!
+ They provides a very high quality service.
+ ProL
+ http://camptocamp.com
+ ProLibre
+
+
-
- Very good company!
- They provides a very high quality service.
- c2c
- http://camptocamp.com
- camptocamp SA
-
-
-
+
+ Very good company!
+ They provides a very high quality service.
+ c2c
+ http://camptocamp.com
+ camptocamp SA
+
+
+
-
- +41 21 619 10 00
- Luc Maurer
- 1015
- Lausanne
-
-
- M.
- tinyerp@camptocamp.com
- +41 21 619 10 12
- PSE-A, EPFL
- 1
- default
-
-
- Gilbert Robert
- 1227
- Carouge
-
-
- M.
- info@prolibre.com
- +41 22 3015383
- 18, rue des Moraines
- 1
- default
-
-
- +41 21 619 10 00
- Claude Philipona
- 1015
- Lausanne
-
-
- M.
- tinyerp@camptocamp.com
- +41 21 619 10 12
- PSE-A, EPFL
- 1
- default
-
-
+
+ +41 21 619 10 00
+ Luc Maurer
+ 1015
+ Lausanne
+
+
+ tinyerp@camptocamp.com
+ +41 21 619 10 12
+ PSE-A, EPFL
+ 1
+ default
+
+
+ Gilbert Robert
+ 1227
+ Carouge
+
+
+ info@prolibre.com
+ +41 22 3015383
+ 18, rue des Moraines
+ 1
+ default
+
+
+ +41 21 619 10 00
+ Claude Philipona
+ 1015
+ Lausanne
+
+
+ tinyerp@camptocamp.com
+ +41 21 619 10 12
+ PSE-A, EPFL
+ 1
+ default
+
+
diff --git a/addons/l10n_ch/vaudtax_data.xml b/addons/l10n_ch/vaudtax_data.xml
index fd2b7bfe9c8..a10693b0ec2 100644
--- a/addons/l10n_ch/vaudtax_data.xml
+++ b/addons/l10n_ch/vaudtax_data.xml
@@ -71,7 +71,6 @@
Journal d'extourne
JVE
sale
- True
@@ -101,4 +100,4 @@
-
\ No newline at end of file
+
diff --git a/addons/membership/i18n/ru.po b/addons/membership/i18n/ru.po
index c1bd706724c..9806d77140a 100644
--- a/addons/membership/i18n/ru.po
+++ b/addons/membership/i18n/ru.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-07-08 03:50+0000\n"
+"X-Launchpad-Export-Date: 2010-07-09 03:55+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: membership
diff --git a/addons/mrp/test/mrp_packs.yml b/addons/mrp/test/mrp_packs.yml
index 309e3d2b200..ca3453f94e6 100644
--- a/addons/mrp/test/mrp_packs.yml
+++ b/addons/mrp/test/mrp_packs.yml
@@ -69,7 +69,7 @@
location_dest_id: stock.stock_location_customers
location_id: stock.stock_location_stock
name: Pack of 24 Beers
- product_id: mrp_bom_packofbeers0
+ product_id: product_product_packofbeers0
product_qty: 2.0
product_uom: product.product_uom_unit
move_type: direct
@@ -83,12 +83,12 @@
"active_id": ref("stock.menu_action_picking_tree"), }
)
- |
- I check that my Picking of a "PAck of 24 beers" as been automatically
+ I check that my Picking of a "Pack of 24 beers" has been automatically
converted to a picking of 24 beers and a pack of beer, so that my
stock of beers remains exact.
-
!assert {model: stock.picking, id: picking_out}:
- - len(move_ids) == 2
- - move_ids[0].product_id.id <> move_ids[1].product_id.id
- - move_ids[0].product_id.id in (ref('product_product_beers0'), ref('product_product_beerspack0'))
- - move_ids[1].product_id.id in (ref('product_product_beers0'), ref('product_product_beerspack0'))
+ - len(move_lines) == 2
+ - move_lines[0].product_id.id <> move_lines[1].product_id.id
+ - move_lines[0].product_id.id in (ref('product_product_beers0'), ref('product_product_beerspack0'))
+ - move_lines[1].product_id.id in (ref('product_product_beers0'), ref('product_product_beerspack0'))
diff --git a/addons/mrp_repair/mrp_repair.py b/addons/mrp_repair/mrp_repair.py
index a3eac181231..819acffd4ae 100644
--- a/addons/mrp_repair/mrp_repair.py
+++ b/addons/mrp_repair/mrp_repair.py
@@ -372,7 +372,7 @@ class mrp_repair(osv.osv):
name = operation.name
if operation.product_id.property_account_income:
- account_id = operation.product_id.property_account_income
+ account_id = operation.product_id.property_account_income.id
elif operation.product_id.categ_id.property_account_income_categ:
account_id = operation.product_id.categ_id.property_account_income_categ.id
else:
diff --git a/addons/multi_company/i18n/ru.po b/addons/multi_company/i18n/ru.po
index cb7d582f540..8b9ce974399 100644
--- a/addons/multi_company/i18n/ru.po
+++ b/addons/multi_company/i18n/ru.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-07-08 03:50+0000\n"
+"X-Launchpad-Export-Date: 2010-07-09 03:56+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: multi_company
diff --git a/addons/point_of_sale/test/pos_test.yml b/addons/point_of_sale/test/pos_test.yml
index a96a792c711..360c25b53a5 100644
--- a/addons/point_of_sale/test/pos_test.yml
+++ b/addons/point_of_sale/test/pos_test.yml
@@ -250,7 +250,7 @@
country_id: base.in
partner_id: res_partner_microlinktechnologies0
street: Ash House, Ash Road
- title: Ms.
+ title: base.res_partner_title_miss
-
I create product category .
-
diff --git a/addons/procurement/process/procurement_process.xml b/addons/procurement/process/procurement_process.xml
index e5b94bb225d..e12c97b2070 100644
--- a/addons/procurement/process/procurement_process.xml
+++ b/addons/procurement/process/procurement_process.xml
@@ -3,7 +3,7 @@
@@ -11,11 +11,6 @@
-
-
-
diff --git a/addons/product/i18n/ru.po b/addons/product/i18n/ru.po
index 5d6ae3dee46..6c87d0f6fa1 100644
--- a/addons/product/i18n/ru.po
+++ b/addons/product/i18n/ru.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-07-08 03:50+0000\n"
+"X-Launchpad-Export-Date: 2010-07-09 03:56+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: product
diff --git a/addons/product/product_view.xml b/addons/product/product_view.xml
index b5f48efd90a..e58987cf2c8 100644
--- a/addons/product/product_view.xml
+++ b/addons/product/product_view.xml
@@ -127,9 +127,9 @@
-
-
-
+
+
+
diff --git a/addons/product_visible_discount/i18n/et.po b/addons/product_visible_discount/i18n/et.po
new file mode 100644
index 00000000000..70b8597c8c6
--- /dev/null
+++ b/addons/product_visible_discount/i18n/et.po
@@ -0,0 +1,47 @@
+# Estonian 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-03-25 12:11+0000\n"
+"PO-Revision-Date: 2010-07-08 08:45+0000\n"
+"Last-Translator: lyyser \n"
+"Language-Team: Estonian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2010-07-09 03:56+0000\n"
+"X-Generator: Launchpad (build Unknown)\n"
+
+#. module: product_visible_discount
+#: constraint:ir.ui.view:0
+msgid "Invalid XML for View Architecture!"
+msgstr "Vigane XML vaate arhitektuurile!"
+
+#. module: product_visible_discount
+#: model:ir.module.module,description:product_visible_discount.module_name_translation
+msgid ""
+"\n"
+" This module lets you calculate discounts on Sale Order lines and Invoice "
+"lines base on the partner's pricelist.\n"
+" To this end, a new check box named \"Visible Discount\" is added to the "
+"pricelist form.\n"
+" Example:\n"
+" For the product PC1 and the partner \"Asustek\": if listprice=450, "
+"and the price calculated using Asustek's pricelist is 225\n"
+" If the check box is checked, we will have on the sale order line: "
+"Unit price=450, Discount=50,00, Net price=225\n"
+" If the check box is unchecked, we will have on Sale Order and "
+"Invoice lines: Unit price=225, Discount=0,00, Net price=225\n"
+" "
+msgstr ""
+
+#. module: product_visible_discount
+#: model:ir.module.module,shortdesc:product_visible_discount.module_name_translation
+#: field:product.pricelist,visible_discount:0
+msgid "Visible Discount"
+msgstr "Nähtavad soodus"
diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml
index 1d5ade40e69..006d32b8b68 100644
--- a/addons/project/project_view.xml
+++ b/addons/project/project_view.xml
@@ -142,8 +142,9 @@
tree
child_ids
-
+
+
diff --git a/addons/project_long_term/project_long_term.py b/addons/project_long_term/project_long_term.py
index a6fbcb22ab7..6cba9bc55d0 100644
--- a/addons/project_long_term/project_long_term.py
+++ b/addons/project_long_term/project_long_term.py
@@ -86,6 +86,11 @@ class project_phase(osv.osv):
return False
return True
+ def _get_default_uom_id(self, cr, uid):
+ model_data_obj = self.pool.get('ir.model.data')
+ model_data_id = model_data_obj._get_id(cr, uid, 'product', 'uom_hour')
+ return model_data_obj.read(cr, uid, [model_data_id], ['res_id'])[0]['res_id']
+
_columns = {
'name': fields.char("Name", size=64, required=True),
'date_start': fields.datetime('Start Date', help="Starting Date of the phase"),
@@ -137,7 +142,6 @@ class project_phase(osv.osv):
"""
uom_obj = self.pool.get('product.uom')
resource_obj = self.pool.get('resource.resource')
- model_data_obj = self.pool.get('ir.model.data')
cal_obj = self.pool.get('resource.calendar')
calendar_id = phase.project_id.resource_calendar_id and phase.project_id.resource_calendar_id.id or False
resource_id = resource_obj.search(cr, uid, [('user_id', '=', phase.responsible_id.id)])
@@ -147,7 +151,7 @@ class project_phase(osv.osv):
cal_id = res.get('calendar_id', False) and res.get('calendar_id')[0] or False
if cal_id:
calendar_id = cal_id
- default_uom_id = model_data_obj._get_id(cr, uid, 'product', 'uom_hour')
+ default_uom_id = self._get_default_uom_id(cr, uid)
avg_hours = uom_obj._compute_qty(cr, uid, phase.product_uom.id, phase.duration, default_uom_id)
work_times = cal_obj.interval_min_get(cr, uid, calendar_id, date_end, avg_hours or 0.0, resource_id and resource_id[0] or False)
dt_start = work_times[0][0].strftime('%Y-%m-%d %H:%M:%S')
@@ -160,7 +164,6 @@ class project_phase(osv.osv):
Check And Compute date_end of phase if change in date_end > older time.
"""
uom_obj = self.pool.get('product.uom')
- model_data_obj = self.pool.get('ir.model.data')
resource_obj = self.pool.get('resource.resource')
cal_obj = self.pool.get('resource.calendar')
calendar_id = phase.project_id.resource_calendar_id and phase.project_id.resource_calendar_id.id or False
@@ -171,7 +174,7 @@ class project_phase(osv.osv):
cal_id = res.get('calendar_id', False) and res.get('calendar_id')[0] or False
if cal_id:
calendar_id = cal_id
- default_uom_id = model_data_obj._get_id(cr, uid, 'product', 'uom_hour')
+ default_uom_id = self._get_default_uom_id(cr, uid)
avg_hours = uom_obj._compute_qty(cr, uid, phase.product_uom.id, phase.duration, default_uom_id)
work_times = cal_obj.interval_get(cr, uid, calendar_id, date_start, avg_hours or 0.0, resource_id and resource_id[0] or False)
dt_end = work_times[-1][1].strftime('%Y-%m-%d %H:%M:%S')
@@ -181,7 +184,6 @@ class project_phase(osv.osv):
resource_calendar_obj = self.pool.get('resource.calendar')
resource_obj = self.pool.get('resource.resource')
uom_obj = self.pool.get('product.uom')
- model_data_obj = self.pool.get('ir.model.data')
if context is None:
context = {}
if context.get('scheduler',False):
@@ -195,7 +197,7 @@ class project_phase(osv.osv):
cal_id = resource_obj.browse(cr, uid, resource_id[0], context=context).calendar_id.id
if cal_id:
calendar_id = cal_id
- default_uom_id = model_data_obj._get_id(cr, uid, 'product', 'uom_hour')
+ default_uom_id = self._get_default_uom_id(cr, uid)
avg_hours = uom_obj._compute_qty(cr, uid, phase.product_uom.id, phase.duration, default_uom_id)
# Change the date_start and date_end
diff --git a/addons/project_long_term/wizard/project_compute_phases.py b/addons/project_long_term/wizard/project_compute_phases.py
index 3ee15bc6c5a..f4c5fbae443 100644
--- a/addons/project_long_term/wizard/project_compute_phases.py
+++ b/addons/project_long_term/wizard/project_compute_phases.py
@@ -60,7 +60,6 @@ class project_compute_phases(osv.osv_memory):
phase_obj = self.pool.get('project.phase')
resource_obj = self.pool.get('resource.resource')
uom_obj = self.pool.get('product.uom')
- model_data_obj = self.pool.get('ir.model.data')
phase_resource_obj = False
if context is None:
@@ -82,7 +81,7 @@ class project_compute_phases(osv.osv_memory):
'vacation': tuple(leaves),
'efficiency': time_efficiency
})
- default_uom_id = model_data_obj._get_id(cr, uid, 'product', 'uom_hour')
+ default_uom_id = phase_obj._get_default_uom_id(cr, uid)
avg_hours = uom_obj._compute_qty(cr, uid, phase.product_uom.id, phase.duration, default_uom_id)
duration = str(avg_hours) + 'H'
# Create a new project for each phase
diff --git a/addons/project_mrp/__openerp__.py b/addons/project_mrp/__openerp__.py
index a51a95c5d16..2ac983e67e4 100644
--- a/addons/project_mrp/__openerp__.py
+++ b/addons/project_mrp/__openerp__.py
@@ -51,6 +51,7 @@ automatically created via sale orders.
'init_xml': [],
'update_xml': ['project_mrp_workflow.xml',
#'process/project_mrp_process.xml',
+ 'project_mrp_view.xml'
],
'demo_xml': [],
'test': ['test/project_task_procurement.yml'],
diff --git a/addons/project_mrp/mrp.py b/addons/project_mrp/mrp.py
index dc5d52e241d..b8eff3c8fa8 100644
--- a/addons/project_mrp/mrp.py
+++ b/addons/project_mrp/mrp.py
@@ -26,12 +26,16 @@ import tools
class procurement_order(osv.osv):
_name = "procurement.order"
_inherit = "procurement.order"
+ _columns = {
+ 'task_id': fields.many2one('project.task', 'Task')
+ }
def action_produce_assign_service(self, cr, uid, ids, context=None):
if context is None:
context = {}
for procurement in self.browse(cr, uid, ids):
sline = self.pool.get('sale.order.line')
+ product_obj=self.pool.get('product.product')
content = ''
sale_order = self.pool.get('sale.order')
so_ref = procurement.name.split(':')[0]
@@ -69,6 +73,7 @@ class procurement_order(osv.osv):
self.write(cr, uid, [procurement.id], {'state': 'running'})
name_task = ('','')
+ planned_hours=0.0
if procurement.product_id.type == 'service':
proc_name = procurement.name
if procurement.origin == proc_name:
@@ -77,12 +82,12 @@ class procurement_order(osv.osv):
name_task = (procurement.origin, proc_name or '')
else:
name_task = (procurement.product_id.name or procurement.origin, procurement.name or '')
-
+ planned_hours= procurement.product_id.sale_delay +procurement.product_id. produce_delay
task_id = self.pool.get('project.task').create(cr, uid, {
'name': '%s:%s' % name_task,
'date_deadline': procurement.date_planned,
- 'planned_hours': procurement.product_qty,
- 'remaining_hours': procurement.product_qty,
+ 'planned_hours':planned_hours,
+ 'remaining_hours': planned_hours,
'user_id': procurement.product_id.product_manager.id,
'notes': "b"+(l and l.order_id.note or ''),
'procurement_id': procurement.id,
@@ -93,7 +98,8 @@ class procurement_order(osv.osv):
'company_id': procurement.company_id.id,
'project_id': project_id,
},context=context)
-
+ self.write(cr, uid, [procurement.id],{'task_id':task_id})
+ product_obj.write(cr,uid,[procurement.product_id.id],{'user_id':uid,'project_id':project_id})
return task_id
procurement_order()
diff --git a/addons/project_mrp/project_mrp.py b/addons/project_mrp/project_mrp.py
index 09820d44c71..d946e2c2fd6 100644
--- a/addons/project_mrp/project_mrp.py
+++ b/addons/project_mrp/project_mrp.py
@@ -48,5 +48,13 @@ class project_task(osv.osv):
return True
project_task()
+class product_product(osv.osv):
+ _inherit = "product.product"
+ _columns = {
+ 'user_id': fields.many2one('res.users', 'Responsible', ondelete='set null',help='Project Manager'),
+ 'project_id': fields.many2one('project.project', 'Project', ondelete='set null',)
+ }
+product_product()
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/project_mrp/project_mrp_view.xml b/addons/project_mrp/project_mrp_view.xml
new file mode 100644
index 00000000000..5d0c1d71381
--- /dev/null
+++ b/addons/project_mrp/project_mrp_view.xml
@@ -0,0 +1,31 @@
+
+
+
+
+ procurement.procurement.form.view.inherit
+ procurement.order
+ form
+
+
+
+
+
+
+
+
+
+ product.form.view.inherit
+ product.product
+ form
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/purchase/purchase_workflow.xml b/addons/purchase/purchase_workflow.xml
index d14530e5f48..a194cd16713 100644
--- a/addons/purchase/purchase_workflow.xml
+++ b/addons/purchase/purchase_workflow.xml
@@ -103,7 +103,6 @@
- purchase_approve
diff --git a/addons/purchase/security/ir.model.access.csv b/addons/purchase/security/ir.model.access.csv
index 674b01f66e7..7a3b35725d4 100644
--- a/addons/purchase/security/ir.model.access.csv
+++ b/addons/purchase/security/ir.model.access.csv
@@ -26,3 +26,9 @@
"access_res_partner_address_purchase_user","res.partner.address purchase","base.model_res_partner_address","group_purchase_user",1,0,0,0
"access_account_journal","account.journal","account.model_account_journal","purchase.group_purchase_user",1,1,1,0
"access_account_journal_manager","account.journal","account.model_account_journal","purchase.group_purchase_manager",1,1,1,1
+"access_account_period","account.period","account.model_account_period","purchase.group_purchase_user",1,0,0,0
+"access_account_fiscalyear","account.fiscalyear","account.model_account_fiscalyear","purchase.group_purchase_user",1,0,0,0
+"access_account_move","account.move","account.model_account_move","purchase.group_purchase_user",1,1,1,1
+"access_account_move_line","account.move.line","account.model_account_move_line","purchase.group_purchase_user",1,1,1,1
+"access_account_analytic_line","account.analytic.line","account.model_account_analytic_line","purchase.group_purchase_user",1,1,1,1
+"access_account_move_reconcile","account.move.reconcile","account.model_account_move_reconcile","purchase.group_purchase_user",1,1,1,1
diff --git a/addons/purchase_requisition/purchase_requisition.py b/addons/purchase_requisition/purchase_requisition.py
index 3bdc461917b..db05650354b 100644
--- a/addons/purchase_requisition/purchase_requisition.py
+++ b/addons/purchase_requisition/purchase_requisition.py
@@ -39,7 +39,7 @@ class purchase_requisition(osv.osv):
'exclusive': fields.selection([('exclusive','Purchase Tender (exclusive)'),('multiple','Multiple Requisitions')],'Requisition Type', required=True, help="Purchase Tender (exclusive):On the confirmation of a purchase order, it cancels the remaining purchase order.Multiple Requisitions:It allows to have multiple purchase orders.On confirmation of a purchase order it does not cancel the remaining orders"""),
'description': fields.text('Description'),
'company_id': fields.many2one('res.company', 'Company', required=True),
- 'purchase_ids' : fields.one2many('purchase.order','requisition_id','Purchase Orders'),
+ 'purchase_ids' : fields.one2many('purchase.order','requisition_id','Purchase Orders',states={'done': [('readonly', True)]}),
'line_ids' : fields.one2many('purchase.requisition.line','requisition_id','Products to Purchase',states={'done': [('readonly', True)]}),
'state': fields.selection([('draft','Draft'),('in_progress','In Progress'),('cancel','Cancelled'),('done','Done')], 'State', required=True)
}
diff --git a/addons/purchase_requisition/purchase_requisition_view.xml b/addons/purchase_requisition/purchase_requisition_view.xml
index 93f4f111da0..76aa70aaf42 100644
--- a/addons/purchase_requisition/purchase_requisition_view.xml
+++ b/addons/purchase_requisition/purchase_requisition_view.xml
@@ -41,7 +41,6 @@
-
@@ -83,7 +82,8 @@
-
+
diff --git a/addons/purchase_requisition/test/purchase_requisition.yml b/addons/purchase_requisition/test/purchase_requisition.yml
index 0ace2312034..ce5f9635574 100644
--- a/addons/purchase_requisition/test/purchase_requisition.yml
+++ b/addons/purchase_requisition/test/purchase_requisition.yml
@@ -63,7 +63,7 @@
proc_obj = self.pool.get('procurement.order')
proc_obj._procure_confirm(cr,uid)
-
- On the purchase tender, I create a new purchase order for the supplier 'DistriPC' by clicking on
+ On the purchase requisition, I create a new purchase order for the supplier 'DistriPC' by clicking on
the button 'New RfQ'. This opens a window to ask me the supplier and I set DistriPC .
-
!record {model: purchase.requisition.partner, id: purchase_requisition_partner_0}:
@@ -74,23 +74,25 @@
-
!python {model: purchase.requisition.partner}: |
req_obj = self.pool.get('purchase.requisition')
- ids =req_obj.search(cr, uid, [('origin','=','TEST/TENDER/0001')])
+ ids =req_obj.search(cr, uid, [('origin','=','Laptop ACER')])
self.create_order(cr, uid, [ref("purchase_requisition_partner_0")], {"lang":
'en_US', "active_model": "purchase.requisition", "tz": False, "record_id":
1, "active_ids": ids, "active_id": ids[0], })
-
- I check that I have two purchase orders on the purchase tender.
+ I check that I have two purchase orders on the purchase requisition.
-
!python {model: purchase.order}: |
+ from tools.translate import _
order_ids =self.search(cr, uid, [('origin','=','TEST/TENDER/0001')])
ids=len(order_ids)
- assert (ids==2), "Purchase order hasn't Created"
+ assert(ids == 2), _('Purchase Order not Created')
+
-
I set the purchase requisition as 'Not Exclusive'.
-
!python {model: purchase.requisition}: |
- ids =self.search(cr, uid, [('origin','=','TEST/TENDER/0001')])
+ ids =self.search(cr, uid, [('origin','=','Laptop ACER')])
self.write(cr,uid,ids[0],{'exclusive': 'multiple' })
-
I change the quantities so that the purchase order for DistriPC includes 3 pieces and the
@@ -100,7 +102,7 @@
line_obj=self.pool.get('purchase.order.line')
partner_obj=self.pool.get('res.partner')
requistion_obj=self.pool.get('purchase.requisition')
- requistion_ids =requistion_obj.search(cr, uid, [('origin','=','TEST/TENDER/0001')])
+ requistion_ids =requistion_obj.search(cr, uid, [('origin','=','Laptop ACER')])
partner_id1=partner_obj.search(cr,uid,[('name','=','ASUStek')])[0]
partner_id2=partner_obj.search(cr,uid,[('name','=','Distrib PC')])[0]
purchase_id1= self.search(cr, uid, [('partner_id','=',partner_id1),('requisition_id','in',requistion_ids)])
@@ -123,11 +125,13 @@
I check that the delivery order of the customer is in state 'Waiting Goods'.
-
!python {model: stock.picking }: |
+ from tools.translate import _
picking_id = self.search(cr, uid, [('origin','=','TEST/TENDER/0001'),('type','=','delivery')])
if picking_id:
pick=self.browse(cr,uid,picking_id[0])
- assert (pick.state) =='confirmed'," Order is not confirm"
- assert(pick.move_lines[0].state=='wating'),'Order is not wating"'
+ assert (pick.state =='confirmed'),_('Picking is not in confirm state.')
+ assert (pick.move_lines[0].state == 'waiting'), _('Stock Move is not Waiting state.')
+
-
I receive the order of the supplier Asustek from the Incoming Products menu.
-
@@ -176,8 +180,10 @@
I check that the delivery order of the customer is in the state Available.
-
!python {model: stock.picking }: |
+ from tools.translate import _
picking_id = self.search(cr, uid, [('origin','=','TEST/TENDER/0001'),('type','=','out')])
if picking_id:
pick=self.browse(cr,uid,picking_id[0])
- assert (pick.state) =='available'," Order is not available"
+ print pick.state
+ assert(pick.state == 'assigned'), _('Picking is not in available state')
diff --git a/addons/purchase_requisition/test/purchase_requisition_exclusive.yml b/addons/purchase_requisition/test/purchase_requisition_exclusive.yml
index 641fd740de3..84a6bb0d68f 100644
--- a/addons/purchase_requisition/test/purchase_requisition_exclusive.yml
+++ b/addons/purchase_requisition/test/purchase_requisition_exclusive.yml
@@ -60,11 +60,11 @@
5 Laptop ACER, and a purchase order on the default supplier for this product.
-
!python {model: purchase.requisition}: |
- requisition_ids =self.search(cr, uid, [('origin','=','TEST/TENDER/0002')])
+ requisition_ids =self.search(cr, uid, [('origin','=','Laptop ACER1')])
ids=len(requisition_ids)
assert len(requisition_ids), "Purchase requisition hasn't Created"
-
- On the purchase tender, I create a new purchase order for the supplier 'DistriPC' by clicking on
+ On the purchase requisition, I create a new purchase order for the supplier 'DistriPC' by clicking on
the button 'New Request for Quotation'. This opens a window to ask me the supplier and I set DistriPC .
-
I Create purchase.requisition.partner .
@@ -77,15 +77,15 @@
-
!python {model: purchase.requisition.partner}: |
req_obj = self.pool.get('purchase.requisition')
- ids =req_obj.search(cr, uid, [('origin','=','TEST/TENDER/0002')])
+ ids =req_obj.search(cr, uid, [('origin','=','Laptop ACER1')])
self.create_order(cr, uid, [ref("purchase_requisition_partner_0")], {"lang":
'en_US', "active_model": "purchase.requisition", "tz": False, "record_id":
1, "active_ids": ids, "active_id": ids[0], })
-
- I set the purchase tender as 'Exclusive'
+ I set the purchase requisition as 'Exclusive'
-
!python {model: purchase.requisition}: |
- ids =self.search(cr, uid, [('origin','=','TEST/TENDER/0002')])
+ ids =self.search(cr, uid, [('origin','=','Laptop ACER1')])
self.write(cr,uid,ids[0],{'exclusive': 'exclusive' })
-
I confirm and validate the Request for Quotation of ASUStek.
@@ -93,7 +93,7 @@
!python {model: purchase.order}: |
partner_id=self.pool.get('res.partner').search(cr,uid,[('name','=','ASUStek')])[0]
req_obj = self.pool.get('purchase.requisition')
- ids =req_obj.search(cr, uid, [('origin','=','TEST/TENDER/0002')])
+ ids =req_obj.search(cr, uid, [('origin','=','Laptop ACER1')])
purchase_id= self.search(cr, uid, [('partner_id','=',partner_id),('requisition_id','in',ids)])[0]
import netsvc
wf_service = netsvc.LocalService("workflow")
@@ -106,7 +106,7 @@
!python {model: purchase.order}: |
partner_id=self.pool.get('res.partner').search(cr,uid,[('name','=','Distrib PC')])[0]
req_obj = self.pool.get('purchase.requisition')
- ids =req_obj.search(cr, uid, [('origin','=','TEST/TENDER/0002')])
+ ids =req_obj.search(cr, uid, [('origin','=','Laptop ACER1')])
purchase_id= self.search(cr, uid, [('partner_id','=',partner_id),('requisition_id','in',ids)])[0]
state=self.browse(cr,uid,purchase_id).state
assert (state=='cancel')
\ No newline at end of file
diff --git a/addons/sale/i18n/ru.po b/addons/sale/i18n/ru.po
index 899e627982c..e64f33b58f8 100644
--- a/addons/sale/i18n/ru.po
+++ b/addons/sale/i18n/ru.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-07-08 03:50+0000\n"
+"X-Launchpad-Export-Date: 2010-07-09 03:56+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: sale
diff --git a/addons/stock/product_view.xml b/addons/stock/product_view.xml
index 1d8db4f0228..01214bad6a4 100644
--- a/addons/stock/product_view.xml
+++ b/addons/stock/product_view.xml
@@ -116,9 +116,9 @@
-
-
-
+
+
+
diff --git a/addons/wiki/i18n/ru.po b/addons/wiki/i18n/ru.po
index 10329e8d4b9..ff219776722 100644
--- a/addons/wiki/i18n/ru.po
+++ b/addons/wiki/i18n/ru.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-07-08 03:50+0000\n"
+"X-Launchpad-Export-Date: 2010-07-09 03:56+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: wiki