diff --git a/addons/account/account.py b/addons/account/account.py index 6ae6968f364..549f257b124 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -349,7 +349,7 @@ class account_account(osv.osv): _sql_constraints = [ ('code_company_uniq', 'unique (code,company_id)', 'The code of the account must be unique per company !') ] - def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): if not args: args = [] if not context: @@ -479,7 +479,7 @@ class account_journal(osv.osv): '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'), 'entry_posted': fields.boolean('Skip \'Draft\' State for Created Entries', help='Check this box if you don\'t want new account moves to pass through the \'draft\' state and instead goes directly to the \'posted state\' without any manual validation.'), - #'company_id': fields.related('default_credit_account_id','company_id',type='many2one', relation="res.company", string="Company"), + #'company_id': fields.related('default_credit_account_id','company_id',type='many2one', relation="res.company", string="Company",store=True), 'company_id': fields.many2one('res.company', 'Company', required=True,select=1), 'invoice_sequence_id': fields.many2one('ir.sequence', 'Invoice Sequence', \ help="The sequence used for invoice numbers in this journal."), @@ -503,7 +503,7 @@ class account_journal(osv.osv): # }) return journal_id - def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): if not args: args=[] if not context: @@ -782,7 +782,7 @@ class account_move(osv.osv): ('journal_pur_voucher','Journal Purchase'), ('journal_voucher','Journal Voucher'), ],'Type', readonly=True, select=True, states={'draft':[('readonly',False)]}), - 'company_id': fields.related('journal_id','company_id',type='many2one',relation='res.company',string='Company'), + 'company_id': fields.related('journal_id','company_id',type='many2one',relation='res.company',string='Company',store=True), } _defaults = { 'name': lambda *a: '/', diff --git a/addons/account/account_move_line.py b/addons/account/account_move_line.py index fcade623b76..c8a02d00ea4 100644 --- a/addons/account/account_move_line.py +++ b/addons/account/account_move_line.py @@ -389,7 +389,7 @@ class account_move_line(osv.osv): 'analytic_account_id' : fields.many2one('account.analytic.account', 'Analytic Account'), #TODO: remove this 'amount_taxed':fields.float("Taxed Amount",digits=(16,int(tools.config['price_accuracy']))), - 'company_id': fields.related('account_id','company_id',type='many2one',object='res.company',string='Company') + 'company_id': fields.related('account_id','company_id',type='many2one',relation='res.company',string='Company',store=True) } diff --git a/addons/account/invoice.py b/addons/account/invoice.py index 2af3bbc8d5b..8ad957e6453 100644 --- a/addons/account/invoice.py +++ b/addons/account/invoice.py @@ -878,7 +878,7 @@ class account_invoice(osv.osv): } return [(r['id'], types[r['type']]+(r['number'] or '')+' '+(r['name'] or '')) for r in self.read(cr, uid, ids, ['type', 'number', 'name'], context, load='_classic_write')] - def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): if not args: args=[] if context is None: @@ -1086,7 +1086,7 @@ class account_invoice_line(osv.osv): 'invoice_line_tax_id': fields.many2many('account.tax', 'account_invoice_line_tax', 'invoice_line_id', 'tax_id', 'Taxes', domain=[('parent_id','=',False)]), 'note': fields.text('Notes'), 'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic Account'), - 'company_id': fields.related('invoice_id','company_id',type='many2one',relation='res.company',string='Company') + 'company_id': fields.related('invoice_id','company_id',type='many2one',relation='res.company',string='Company',store=True) } _defaults = { 'quantity': lambda *a: 1, @@ -1312,7 +1312,7 @@ class account_invoice_tax(osv.osv): 'base_amount': fields.float('Base Code Amount', digits=(16,int(config['price_accuracy']))), 'tax_code_id': fields.many2one('account.tax.code', 'Tax Code', help="The tax basis of the tax declaration."), 'tax_amount': fields.float('Tax Code Amount', digits=(16,int(config['price_accuracy']))), - 'company_id': fields.related('account_id','company_id',type='many2one',relation='res.company',string='Company'), + 'company_id': fields.related('account_id','company_id',type='many2one',relation='res.company',string='Company',store=True), } def base_change(self, cr, uid, ids, base,currency_id=False,company_id=False,date_invoice=False): diff --git a/addons/account/project/project.py b/addons/account/project/project.py index f446b6fdf29..51431ee1be1 100644 --- a/addons/account/project/project.py +++ b/addons/account/project/project.py @@ -248,7 +248,7 @@ class account_analytic_account(osv.osv): res['value']['partner_id'] = partner return res - def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=100): if not args: args=[] if not context: diff --git a/addons/account/project/project_view.xml b/addons/account/project/project_view.xml index c2b8791f52c..00dd4d821fc 100644 --- a/addons/account/project/project_view.xml +++ b/addons/account/project/project_view.xml @@ -17,6 +17,25 @@ + + + account.analytic.account.search + account.analytic.account + search + + + + + + + + + + + + + + account.analytic.account.tree @@ -77,6 +96,7 @@ form tree,graph,form + @@ -368,7 +388,6 @@ - diff --git a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml index 77aba3e7f65..232ba274769 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml +++ b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml @@ -1,30 +1,28 @@ - All Uninvoiced Entries - account.analytic.line form tree,form [('invoice_id','=',False),('to_invoice','!=',False)] + All Analytic Accounts account.analytic.account - form tree,form,graph + [] - - + Overpassed Accounts @@ -32,32 +30,7 @@ form tree,form,graph [('date','<=',time.strftime('%Y-%m-%d')),('state','=','open')] - - - - - Current Analytic Accounts - account.analytic.account - form - - tree,form,graph - - [('state','=','open')] - - - - - Pending Analytic Accounts - - account.analytic.account - form - tree,form,graph - - [('state','=','pending')] - - - diff --git a/addons/account_analytic_analysis/account_analytic_analysis_view.xml b/addons/account_analytic_analysis/account_analytic_analysis_view.xml index 446da0cb2ea..0e9bc494a56 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis_view.xml +++ b/addons/account_analytic_analysis/account_analytic_analysis_view.xml @@ -90,7 +90,6 @@ - diff --git a/addons/account_analytic_plans/account_analytic_plans.py b/addons/account_analytic_plans/account_analytic_plans.py index 6ad98453719..8367adb20b3 100644 --- a/addons/account_analytic_plans/account_analytic_plans.py +++ b/addons/account_analytic_plans/account_analytic_plans.py @@ -122,7 +122,7 @@ class account_analytic_plan_instance(osv.osv): res.append((inst.id, name)) return res - def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=100): args= args or [] if name: ids = self.search(cr, uid, [('code', '=', name)] + args, limit=limit, context=context or {}) diff --git a/addons/account_report/account.py b/addons/account_report/account.py index 665533aef0a..d34eeb620d5 100644 --- a/addons/account_report/account.py +++ b/addons/account_report/account.py @@ -192,7 +192,7 @@ class account_report(osv.osv): 'type': lambda *args: 'indicator', } - def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): if not args: args=[] if not context: diff --git a/addons/account_reporting/account.py b/addons/account_reporting/account.py index 0624ab46cfa..89513923070 100644 --- a/addons/account_reporting/account.py +++ b/addons/account_reporting/account.py @@ -103,7 +103,7 @@ class account_report_bs(osv.osv): 'font_style': lambda *a :'', } - def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): if not args: args=[] if not context: diff --git a/addons/account_voucher/__terp__.py b/addons/account_voucher/__terp__.py index 7265919bb1a..ce5705560f7 100755 --- a/addons/account_voucher/__terp__.py +++ b/addons/account_voucher/__terp__.py @@ -41,8 +41,8 @@ "update_xml" : [ "voucher_sequence.xml", "account_report.xml", - "voucher_wizard.xml", "voucher_view.xml", + "voucher_wizard.xml", "account_view.xml", ], 'certificate': '0037580727101', diff --git a/addons/account_voucher/voucher.py b/addons/account_voucher/voucher.py index 4c550cc11bd..b9c223dcb0a 100755 --- a/addons/account_voucher/voucher.py +++ b/addons/account_voucher/voucher.py @@ -441,7 +441,7 @@ class account_voucher(osv.osv): } return [(r['id'], types[r['type']]+(r['number'] or '')+' '+(r['name'] or '')) for r in self.read(cr, uid, ids, ['type', 'number', 'name'], context, load='_classic_write')] - def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): if not args: args=[] if not context: diff --git a/addons/account_voucher/voucher_view.xml b/addons/account_voucher/voucher_view.xml index e267e07d22c..cc8a4af0dd8 100755 --- a/addons/account_voucher/voucher_view.xml +++ b/addons/account_voucher/voucher_view.xml @@ -77,8 +77,8 @@ tree,form - + @@ -90,8 +90,8 @@ [('type','like','rec_voucher')] {'type':'rec_voucher'} - + Cash Receipt @@ -102,8 +102,8 @@ [('type','=','rec_voucher')] {'type':'rec_voucher'} - + Bank Receipt @@ -114,8 +114,8 @@ [('type','=','bank_rec_voucher')] {'type':'bank_rec_voucher'} - + @@ -130,8 +130,8 @@ [('type','like','pay_voucher')] {'type':'pay_voucher'} - + Payment Vouchers @@ -142,8 +142,8 @@ [('type','=','pay_voucher')] {'type':'pay_voucher'} - + Payment Vouchers @@ -154,8 +154,8 @@ [('type','=','bank_pay_voucher')] {'type':'bank_pay_voucher'} - + @@ -167,53 +167,57 @@ tree,form - + Contra Voucher account.voucher form - form,tree - + tree,form + [('type','=','cont_voucher')] {'type':'cont_voucher'} - + + Journal Sale Voucher account.voucher form - form,tree - + tree,form + [('type','=','journal_sale_vou')] {'type':'journal_sale_vou'} - + + Journal Purchase Voucher account.voucher form - form,tree - + tree,form + [('type','=','journal_pur_voucher')] {'type':'journal_pur_voucher'} - + Journal Voucher account.voucher form - form,tree - + tree,form + [('type','=','journal_voucher')] {'type':'journal_voucher'} + name="Journal Voucher" id="menu_action_view_jour_voucher_form" + action="action_view_jour_voucher_form" parent="menu_action_other_voucher_list"/> diff --git a/addons/account_voucher/voucher_wizard.xml b/addons/account_voucher/voucher_wizard.xml index 5d31cdc3ec3..5e8a3f6ce5d 100644 --- a/addons/account_voucher/voucher_wizard.xml +++ b/addons/account_voucher/voucher_wizard.xml @@ -11,9 +11,10 @@ + type="wizard" + parent="menu_action_voucher_list"/> diff --git a/addons/board_sale/board_sale_view.xml b/addons/board_sale/board_sale_view.xml index 95cb5c289e0..803d294ee27 100644 --- a/addons/board_sale/board_sale_view.xml +++ b/addons/board_sale/board_sale_view.xml @@ -15,12 +15,12 @@ - + - + diff --git a/addons/caldav/calendar.py b/addons/caldav/calendar.py index 60d0a650a79..5163784759f 100644 --- a/addons/caldav/calendar.py +++ b/addons/caldav/calendar.py @@ -69,13 +69,12 @@ class CalDAV(object): for child in parsedCal.getChildren(): for cal_data in child.getChildren(): if cal_data.name.lower() == 'attendee': - # This is possible only if Attendee does not inherit osv_memory - attendee = Attendee() + attendee = self.pool.get('caldav.attendee') attendee.import_ical(cr, uid, cal_data) if cal_data.name.lower() in self.__attribute__: self.ical_set(cal_data.name.lower(), cal_data.value, 'value') return True - + class Calendar(CalDAV, osv.osv_memory): _name = 'caldav.calendar' __attribute__ = { @@ -209,11 +208,11 @@ class Event(CalDAV, osv.osv_memory): startdate = todate(startdate) rset1 = rrulestr(rrulestring, dtstart=startdate, forceset=True) for date in exdate: - datetime_obj = datetime.strptime(date, "%Y-%m-%d %H:%M:%S", timezone=True) + datetime_obj = datetime.strptime(date, "%Y-%m-%d %H:%M:%S") # datetime_obj_utc = datetime_obj.replace(tzinfo=timezone('UTC')) rset1._exdate.append(datetime_obj) re_dates = rset1._iter() - recurrent_dates = map(lambda x:x.strftime('%Y-%m-%d %H:%M:%S', timezone=True), re_dates) + recurrent_dates = map(lambda x:x.strftime('%Y-%m-%d %H:%M:%S'), re_dates) return recurrent_dates def search(self, cr, uid, args, offset=0, limit=None, order=None, @@ -294,8 +293,7 @@ class Alarm(CalDAV): if self.__attribute__.has_key(val.name.lower()): self.__attribute__[val.name] = val.value -class Attendee(CalDAV): -# Also inherit osv_memory +class Attendee(CalDAV, osv.osv_memory): _name = 'caldav.attendee' __attribute__ = { 'cutype' : None, # Use: 0-1 Specify the type of calendar user specified by the property like "INDIVIDUAL"/"GROUP"/"RESOURCE"/"ROOM"/"UNKNOWN". @@ -310,7 +308,7 @@ class Attendee(CalDAV): 'dir' : None, # Use: 0-1 Specify reference to a directory entry associated with the calendar user specified by the property. 'language' : None, # Use: 0-1 Specify the language for text values in a property or property parameter. } - + def import_ical(self, cr, uid, ical_data): if ical_data.value: self.__attribute__['sent-by'] = ical_data.value diff --git a/addons/crm/crm_calendar.py b/addons/crm/crm_calendar.py index a1bad20948c..baeff6a41ce 100644 --- a/addons/crm/crm_calendar.py +++ b/addons/crm/crm_calendar.py @@ -288,9 +288,9 @@ class crm_case(osv.osv): if val['type'] == "text": vevent.add(key).value = str(crm[val['field']]) elif val['type'] == 'datetime' and crm[val['field']]: - vevent.add(key).value = datetime.strptime(crm[val['field']], "%Y-%m-%d %H:%M:%S") + vevent.add(key).value = datetime.datetime.strptime(crm[val['field']], "%Y-%m-%d %H:%M:%S") if crm[self.__attribute__['rrule']['field']]: - startdate = datetime.strptime(crm['date'], "%Y-%m-%d %H:%M:%S") + startdate = datetime.datetime.strptime(crm['date'], "%Y-%m-%d %H:%M:%S") if not startdate: startdate = datetime.now() rset1 = rrulestr(str(crm[self.__attribute__['rrule']['field']]), dtstart=startdate, forceset=True) diff --git a/addons/crm/crm_config.py b/addons/crm/crm_config.py index 04bd451102e..51e84fce759 100644 --- a/addons/crm/crm_config.py +++ b/addons/crm/crm_config.py @@ -121,7 +121,7 @@ class crm_menu_config_wizard(osv.osv_memory): _columns = { 'name': fields.char('Name', size=64), 'meeting': fields.boolean('Calendar of Meetings', help="Manages the calendar of meetings of the users."), - 'lead': fields.boolean('Prospect', help="Allows you to track and manage leads which are pre-sales requests or contacts, the very first contact with a customer request."), + 'lead': fields.boolean('Leads', help="Allows you to track and manage leads which are pre-sales requests or contacts, the very first contact with a customer request."), 'opportunity': fields.boolean('Business Opportunities', help="Tracks identified business opportunities for your sales pipeline."), 'jobs': fields.boolean('Jobs Hiring Process', help="Help you to organise the jobs hiring process: evaluation, meetings, email integration..."), 'document_ics': fields.boolean('Shared Calendar', help=" Will allow you to synchronise your Open ERP calendars with your phone, outlook, Sunbird, ical, ..."), diff --git a/addons/crm/crm_meeting_menu.xml b/addons/crm/crm_meeting_menu.xml index e5663847c72..a7458fa388d 100755 --- a/addons/crm/crm_meeting_menu.xml +++ b/addons/crm/crm_meeting_menu.xml @@ -116,44 +116,6 @@ - - - crm.case - calendar,tree,form,graph,gantt - - - - - - - - - calendar - - - - - - tree - - - - - - form - - - - - - gantt - - - - - diff --git a/addons/crm/crm_meeting_view.xml b/addons/crm/crm_meeting_view.xml index 67ed305e864..207a6b0fe69 100755 --- a/addons/crm/crm_meeting_view.xml +++ b/addons/crm/crm_meeting_view.xml @@ -103,6 +103,7 @@ + diff --git a/addons/crm/crm_report_view.xml b/addons/crm/crm_report_view.xml index 12eaa64ad4c..d33630bcbec 100644 --- a/addons/crm/crm_report_view.xml +++ b/addons/crm/crm_report_view.xml @@ -6,9 +6,6 @@ # - - CRM Report - Sections and Type(Tree) @@ -17,6 +14,7 @@ + @@ -35,6 +33,7 @@
+ @@ -59,20 +58,12 @@ - - report.crm.case.section.categ2 - form - graph,tree - [('name','=',time.strftime('%Y-%m-01'))] - - - report.crm.case.section.categ2 form graph,tree - + # # Cases by section and stage @@ -85,6 +76,7 @@ + @@ -102,6 +94,7 @@ + @@ -125,19 +118,12 @@ - - report.crm.case.section.stage - form - graph,tree - [('name','=',time.strftime('%Y-%m-01'))] - - report.crm.case.section.stage form graph,tree - + # # Cases by section, category and stage @@ -150,7 +136,7 @@ - + @@ -168,7 +154,7 @@ - + @@ -187,9 +173,9 @@ - + - + @@ -199,21 +185,25 @@ - - - report.crm.case.section.categ.stage - form - tree - [('name','=',time.strftime('%Y-%m-01'))] + + CRM Report - Section, Category and Stage(Select) + report.crm.case.section.categ.stage + graph + + + + + + + - report.crm.case.section.categ.stage form - tree + tree,graph - + # # Cases by section, category and category2 @@ -226,7 +216,7 @@ - + @@ -245,7 +235,7 @@ - + @@ -265,9 +255,9 @@ - + - + @@ -275,20 +265,26 @@ - - - report.crm.case.section.categ.categ2 - form - tree - [('name','=',time.strftime('%Y-%m-01'))] - + + + CRM Report - Section, Category and Type(Select) + report.crm.case.section.categ.categ2 + graph + + + + + + + + report.crm.case.section.categ.categ2 form - tree + tree,graph - + diff --git a/addons/crm/crm_view.xml b/addons/crm/crm_view.xml index 6e8a1bdecb5..f14736548d5 100755 --- a/addons/crm/crm_view.xml +++ b/addons/crm/crm_view.xml @@ -467,7 +467,7 @@ - All Cases + Cases crm.case form diff --git a/addons/crm/report/crm_report.py b/addons/crm/report/crm_report.py index 93354f450d7..9adabc09868 100644 --- a/addons/crm/report/crm_report.py +++ b/addons/crm/report/crm_report.py @@ -36,7 +36,9 @@ class report_crm_case_section_categ2(osv.osv): _description = "Cases by section and category2" _auto = False _columns = { - 'name': fields.date('Month', readonly=True), + 'name': fields.char('Year',size=64,required=False, readonly=True), + 'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'), + ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True), 'user_id':fields.many2one('res.users', 'User', readonly=True), 'section_id':fields.many2one('crm.case.section', 'Section', readonly=True), 'category2_id':fields.many2one('crm.case.category2', 'Type', readonly=True), @@ -54,7 +56,8 @@ class report_crm_case_section_categ2(osv.osv): create view report_crm_case_section_categ2 as ( select min(c.id) as id, - to_char(c.create_date,'YYYY-MM')||'-01' as name, + to_char(c.create_date,'YYYY') as name, + to_char(c.create_date, 'MM') as month, c.user_id, c.state, c.category2_id, @@ -66,7 +69,7 @@ class report_crm_case_section_categ2(osv.osv): from crm_case c where c.category2_id is not null - group by to_char(c.create_date,'YYYY-MM'), c.user_id, c.state, c.stage_id, c.category2_id, c.section_id)""") + group by to_char(c.create_date, 'YYYY'), to_char(c.create_date, 'MM'), c.user_id, c.state, c.stage_id, c.category2_id, c.section_id)""") report_crm_case_section_categ2() @@ -75,7 +78,9 @@ class report_crm_case_section_stage(osv.osv): _description = "Cases by section and stage" _auto = False _columns = { - 'name': fields.date('Month', readonly=True), + 'name': fields.char('Year',size=64,required=False, readonly=True), + 'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'), + ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True), 'user_id':fields.many2one('res.users', 'User', readonly=True), 'section_id':fields.many2one('crm.case.section', 'Section', readonly=True), 'categ_id':fields.many2one('crm.case.categ', 'Category', readonly=True), @@ -93,7 +98,8 @@ class report_crm_case_section_stage(osv.osv): create view report_crm_case_section_stage as ( select min(c.id) as id, - to_char(c.create_date,'YYYY-MM')||'-01' as name, + to_char(c.create_date,'YYYY') as name, + to_char(c.create_date, 'MM') as month, c.user_id, c.state, c.stage_id, @@ -104,7 +110,7 @@ class report_crm_case_section_stage(osv.osv): from crm_case c where c.stage_id is not null - group by to_char(c.create_date,'YYYY-MM'), c.user_id, c.state, c.stage_id, c.section_id)""") + group by to_char(c.create_date, 'YYYY'), to_char(c.create_date, 'MM'), c.user_id, c.state, c.stage_id, c.section_id)""") report_crm_case_section_stage() @@ -113,8 +119,9 @@ class report_crm_case_section_categ_stage(osv.osv): _description = "Cases by section, Category and stage" _auto = False _columns = { - 'name': fields.date('Month', readonly=True), - 'year': fields.char('Year',size=64,readonly=True), + 'name': fields.char('Year',size=64,required=False, readonly=True), + 'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'), + ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True), 'user_id':fields.many2one('res.users', 'User', readonly=True), 'categ_id':fields.many2one('crm.case.categ', 'Category', readonly=True), 'section_id':fields.many2one('crm.case.section', 'Section', readonly=True), @@ -131,8 +138,8 @@ class report_crm_case_section_categ_stage(osv.osv): create view report_crm_case_section_categ_stage as ( select min(c.id) as id, - to_char(c.create_date,'YYYY') as year, - to_char(c.create_date,'YYYY-MM')||'-01' as name, + to_char(c.create_date,'YYYY') as name, + to_char(c.create_date, 'MM') as month, c.user_id, c.categ_id, c.state, @@ -143,7 +150,7 @@ class report_crm_case_section_categ_stage(osv.osv): from crm_case c where c.categ_id is not null AND c.stage_id is not null - group by to_char(c.create_date,'YYYY'),to_char(c.create_date,'YYYY-MM'), c.user_id, c.categ_id, c.state, c.stage_id, c.section_id)""") + group by to_char(c.create_date, 'YYYY'), to_char(c.create_date, 'MM'),c.user_id, c.categ_id, c.state, c.stage_id, c.section_id)""") report_crm_case_section_categ_stage() @@ -152,8 +159,9 @@ class report_crm_case_section_categ_categ2(osv.osv): _description = "Cases by section, Category and Category2" _auto = False _columns = { - 'name': fields.date('Month', readonly=True), - 'year': fields.char('Year',size=64,readonly=True), + 'name': fields.char('Year',size=64,required=False, readonly=True), + 'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'), + ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True), 'user_id':fields.many2one('res.users', 'User', readonly=True), 'categ_id':fields.many2one('crm.case.categ', 'Category', readonly=True), 'category2_id':fields.many2one('crm.case.category2', 'Type', readonly=True), @@ -171,8 +179,8 @@ class report_crm_case_section_categ_categ2(osv.osv): create view report_crm_case_section_categ_categ2 as ( select min(c.id) as id, - to_char(c.create_date, 'YYYY') as year, - to_char(c.create_date, 'YYYY-MM')||'-01' as name, + to_char(c.create_date, 'YYYY') as name, + to_char(c.create_date, 'MM') as month, c.user_id, c.categ_id, c.category2_id, @@ -184,7 +192,7 @@ class report_crm_case_section_categ_categ2(osv.osv): from crm_case c where c.categ_id is not null AND c.category2_id is not null - group by to_char(c.create_date, 'YYYY'),to_char(c.create_date,'YYYY-MM'), c.user_id, c.categ_id, c.category2_id, c.state, c.stage_id, c.section_id)""") + group by to_char(c.create_date, 'YYYY'), to_char(c.create_date, 'MM'),c.user_id, c.categ_id, c.category2_id, c.state, c.stage_id, c.section_id)""") report_crm_case_section_categ_categ2() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml index dfb56d8d7c2..2901ea85c1b 100644 --- a/addons/event/event_view.xml +++ b/addons/event/event_view.xml @@ -117,6 +117,25 @@ + + + Events + event.event + search + + + + + + + + + + + + + + @@ -125,6 +144,7 @@ event.event form tree,form + @@ -243,12 +263,33 @@ + + Registrations + event.registration + search + + + + + + + + + + + + + + + + Registrations event.registration form tree,form + + + + idea.idea.search + idea.idea + search + + + + + + + + + + + + + + + idea.comment.tree @@ -182,6 +202,7 @@ idea.idea form tree,form + diff --git a/addons/multi_company/__init__.py b/addons/multi_company/__init__.py index e96ecdf56e6..0d29405d526 100644 --- a/addons/multi_company/__init__.py +++ b/addons/multi_company/__init__.py @@ -19,9 +19,5 @@ # ############################################################################## -import multi_company - - - # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/multi_company/__terp__.py b/addons/multi_company/__terp__.py index c2728db3a61..83d6afa777f 100644 --- a/addons/multi_company/__terp__.py +++ b/addons/multi_company/__terp__.py @@ -24,13 +24,23 @@ 'name': 'Multi Company', 'version': '1.0', 'category': 'Custom', - 'description': " ", - 'author': 'Tiny', - 'depends': ['base','sale','project'], - 'update_xml': [ - 'multi_company_view.xml', + 'description': """This module add the possibility to easily manage + the default value for each object + """, + 'author': 'Tiny,SYLEAM', + 'website': 'http://www.openerp.com/', + 'depends': [ + 'base', + 'sale', + 'project' + ], + 'init_xml': [], + 'update_xml': [ + #'security/ir.model.access.csv', + ], + 'demo_xml': [ + 'multi_company_demo.xml' ], - 'demo_xml': ['multi_company_demo.xml'], 'installable': True, 'active': False, } diff --git a/addons/multi_company/i18n/fr.po b/addons/multi_company/i18n/fr.po new file mode 100644 index 00000000000..4254264e1c6 --- /dev/null +++ b/addons/multi_company/i18n/fr.po @@ -0,0 +1,188 @@ +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# * multi_company +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: support@openerp.com\n" +"POT-Creation-Date: 2009-12-08 11:46:41+0000\n" +"PO-Revision-Date: 2009-12-08 12:48+0100\n" +"Last-Translator: Christophe Chauvet \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Translate Toolkit 1.3.0\n" + +#. module: multi_company +#: help:multi_company.default,object_id:0 +msgid "Object affect by this rules" +msgstr "Objet en relation avec cette règle" + +#. module: multi_company +#: constraint:ir.model:0 +msgid "The Object name must start with x_ and not contain any special character !" +msgstr "" + +#. module: multi_company +#: constraint:product.template:0 +msgid "Error: The default UOM and the purchase UOM must be in the same category." +msgstr "" + +#. module: multi_company +#: constraint:res.partner:0 +msgid "The VAT doesn't seem to be correct." +msgstr "" + +#. module: multi_company +#: constraint:ir.actions.act_window:0 +msgid "Invalid model name in the action definition." +msgstr "" + +#. module: multi_company +#: model:res.company,overdue_msg:multi_company.res_company_odoo +#: model:res.company,overdue_msg:multi_company.res_company_oerp_be +#: model:res.company,overdue_msg:multi_company.res_company_oerp_editor +#: model:res.company,overdue_msg:multi_company.res_company_oerp_in +#: model:res.company,overdue_msg:multi_company.res_company_oerp_us +msgid "Would your payment have been carried out after this mail was sent, please consider the present one as void. Do not hesitate to contact our accounting department" +msgstr "" + +#. module: multi_company +#: field:multi_company.default,company_dest_id:0 +msgid "Default Company" +msgstr "Société par défaut" + +#. module: multi_company +#: field:multi_company.default,object_id:0 +msgid "Object" +msgstr "Objet" + +#. module: multi_company +#: model:ir.module.module,shortdesc:multi_company.module_meta_information +#: view:multi_company.default:0 +msgid "Multi Company" +msgstr "Multi société" + +#. module: multi_company +#: model:ir.module.module,description:multi_company.module_meta_information +msgid "" +"This module add the possibility to easily manage \n" +" the default value for each object\n" +" " +msgstr "" +"Ce module ajoute la possibilité de gérer facilement \n" +" les valeurs par défaut de chaques objets\n" +" " + +#. module: multi_company +#: field:multi_company.default,company_id:0 +msgid "Main Company" +msgstr "Société principale" + +#. module: multi_company +#: view:multi_company.default:0 +msgid "Condition" +msgstr "Condition" + +#. module: multi_company +#: help:multi_company.default,company_dest_id:0 +msgid "Company to store the current record" +msgstr "Société dans lequel l'enregistrement courant sera stocké" + +#. module: multi_company +#: constraint:ir.ui.view:0 +msgid "Invalid XML for View Architecture!" +msgstr "XML invalide pour cette vue!" + +#. module: multi_company +#: field:multi_company.default,name:0 +msgid "Name" +msgstr "Nom" + +#. module: multi_company +#: constraint:product.template:0 +msgid "Error: UOS must be in a different category than the UOM" +msgstr "" + +#. module: multi_company +#: model:product.category,name:multi_company.Odoo1 +msgid "Odoo Offers" +msgstr "Offres Odoo" + +#. module: multi_company +#: constraint:res.company:0 +msgid "Error! You can not create recursive companies." +msgstr "Erreur! Vous ne pouvez pas créer de sociétés récursives." + +#. module: multi_company +#: help:multi_company.default,name:0 +msgid "Name it to easily find a record" +msgstr "La nommer facilement de façon a trouver l'enregistrement" + +#. module: multi_company +#: model:ir.ui.menu,name:multi_company.menu_custom_multicompany +msgid "Multi company" +msgstr "Multi société" + +#. module: multi_company +#: model:ir.model,name:multi_company.model_multi_company_default +msgid "multi_company.default" +msgstr "multi_company.default" + +#. module: multi_company +#: help:multi_company.default,company_id:0 +msgid "Company where the user is connected" +msgstr "Société dans laquelle l'utilisateur est connectée" + +#. module: multi_company +#: model:ir.actions.act_window,name:multi_company.action_inventory_form +msgid "Default Company per Object" +msgstr "Société par défaut par objet" + +#. module: multi_company +#: field:multi_company.default,expression:0 +msgid "Expression" +msgstr "Expression" + +#. module: multi_company +#: model:product.template,name:multi_company.product_product_odoo1_product_template +msgid "Odoo Offer" +msgstr "Offre Odoo" + +#. module: multi_company +#: field:multi_company.default,sequence:0 +msgid "Sequence" +msgstr "Séquence" + +#. module: multi_company +#: constraint:product.category:0 +msgid "Error ! You can not create recursive categories." +msgstr "" + +#. module: multi_company +#: constraint:product.product:0 +msgid "Error: Invalid ean code" +msgstr "Erreur: code EAN invalide" + +#. module: multi_company +#: help:multi_company.default,expression:0 +msgid "Expression, must be True to match" +msgstr "L'expression doit être à True pour correspondre" + +#. module: multi_company +#: model:ir.ui.menu,name:multi_company.menu_action_inventory_form +msgid "Default company per Object" +msgstr "Société par défaut par objet" + +#. module: multi_company +#: code:addons/multi_company/multi_company.py:0 +#, python-format +msgid " (copy)" +msgstr " (copie)" + +#. module: multi_company +#: view:multi_company.default:0 +msgid "Matching" +msgstr "Critère de correspondance" + diff --git a/addons/multi_company/i18n/multi_company.pot b/addons/multi_company/i18n/multi_company.pot new file mode 100644 index 00000000000..8f3048ebafa --- /dev/null +++ b/addons/multi_company/i18n/multi_company.pot @@ -0,0 +1,185 @@ +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# * multi_company +# +msgid "" +msgstr "" +"Project-Id-Version: OpenERP Server 5.0.6\n" +"Report-Msgid-Bugs-To: support@openerp.com\n" +"POT-Creation-Date: 2009-12-08 11:46:41+0000\n" +"PO-Revision-Date: 2009-12-08 11:46:41+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: multi_company +#: help:multi_company.default,object_id:0 +msgid "Object affect by this rules" +msgstr "" + +#. module: multi_company +#: constraint:ir.model:0 +msgid "The Object name must start with x_ and not contain any special character !" +msgstr "" + +#. module: multi_company +#: constraint:product.template:0 +msgid "Error: The default UOM and the purchase UOM must be in the same category." +msgstr "" + +#. module: multi_company +#: constraint:res.partner:0 +msgid "The VAT doesn't seem to be correct." +msgstr "" + +#. module: multi_company +#: constraint:ir.actions.act_window:0 +msgid "Invalid model name in the action definition." +msgstr "" + +#. module: multi_company +#: model:res.company,overdue_msg:multi_company.res_company_odoo +#: model:res.company,overdue_msg:multi_company.res_company_oerp_be +#: model:res.company,overdue_msg:multi_company.res_company_oerp_editor +#: model:res.company,overdue_msg:multi_company.res_company_oerp_in +#: model:res.company,overdue_msg:multi_company.res_company_oerp_us +msgid "Would your payment have been carried out after this mail was sent, please consider the present one as void. Do not hesitate to contact our accounting department" +msgstr "" + +#. module: multi_company +#: field:multi_company.default,company_dest_id:0 +msgid "Default Company" +msgstr "" + +#. module: multi_company +#: field:multi_company.default,object_id:0 +msgid "Object" +msgstr "" + +#. module: multi_company +#: model:ir.module.module,shortdesc:multi_company.module_meta_information +#: view:multi_company.default:0 +msgid "Multi Company" +msgstr "" + +#. module: multi_company +#: model:ir.module.module,description:multi_company.module_meta_information +msgid "This module add the possibility to easily manage \n" +" the default value for each object\n" +" " +msgstr "" + +#. module: multi_company +#: field:multi_company.default,company_id:0 +msgid "Main Company" +msgstr "" + +#. module: multi_company +#: view:multi_company.default:0 +msgid "Condition" +msgstr "" + +#. module: multi_company +#: help:multi_company.default,company_dest_id:0 +msgid "Company to store the current record" +msgstr "" + +#. module: multi_company +#: constraint:ir.ui.view:0 +msgid "Invalid XML for View Architecture!" +msgstr "" + +#. module: multi_company +#: field:multi_company.default,name:0 +msgid "Name" +msgstr "" + +#. module: multi_company +#: constraint:product.template:0 +msgid "Error: UOS must be in a different category than the UOM" +msgstr "" + +#. module: multi_company +#: model:product.category,name:multi_company.Odoo1 +msgid "Odoo Offers" +msgstr "" + +#. module: multi_company +#: constraint:res.company:0 +msgid "Error! You can not create recursive companies." +msgstr "" + +#. module: multi_company +#: help:multi_company.default,name:0 +msgid "Name it to easily find a record" +msgstr "" + +#. module: multi_company +#: model:ir.ui.menu,name:multi_company.menu_custom_multicompany +msgid "Multi company" +msgstr "" + +#. module: multi_company +#: model:ir.model,name:multi_company.model_multi_company_default +msgid "multi_company.default" +msgstr "" + +#. module: multi_company +#: help:multi_company.default,company_id:0 +msgid "Company where the user is connected" +msgstr "" + +#. module: multi_company +#: model:ir.actions.act_window,name:multi_company.action_inventory_form +msgid "Default Company per Object" +msgstr "" + +#. module: multi_company +#: field:multi_company.default,expression:0 +msgid "Expression" +msgstr "" + +#. module: multi_company +#: model:product.template,name:multi_company.product_product_odoo1_product_template +msgid "Odoo Offer" +msgstr "" + +#. module: multi_company +#: field:multi_company.default,sequence:0 +msgid "Sequence" +msgstr "" + +#. module: multi_company +#: constraint:product.category:0 +msgid "Error ! You can not create recursive categories." +msgstr "" + +#. module: multi_company +#: constraint:product.product:0 +msgid "Error: Invalid ean code" +msgstr "" + +#. module: multi_company +#: help:multi_company.default,expression:0 +msgid "Expression, must be True to match" +msgstr "" + +#. module: multi_company +#: model:ir.ui.menu,name:multi_company.menu_action_inventory_form +msgid "Default company per Object" +msgstr "" + +#. module: multi_company +#: code:addons/multi_company/multi_company.py:0 +#, python-format +msgid " (copy)" +msgstr "" + +#. module: multi_company +#: view:multi_company.default:0 +msgid "Matching" +msgstr "" + diff --git a/addons/multi_company/multi_company.py b/addons/multi_company/multi_company.py deleted file mode 100644 index a55e28f51a2..00000000000 --- a/addons/multi_company/multi_company.py +++ /dev/null @@ -1,60 +0,0 @@ -# -*- coding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# Copyright (C) 2004-2009 Tiny SPRL (). -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## -from mx import DateTime -import time -import netsvc -from osv import fields, osv -from tools import config -from tools.translate import _ -import tools - -class multi_company_default(osv.osv): - _name = 'multi_company.default' - _order = 'sequence,id' - _columns = { - 'sequence': fields.integer('Sequence'), - 'name': fields.char('Name', size=32, required=True), - 'company_id': fields.many2one('res.company', 'Main Company', required=True), - 'company_dest_id': fields.many2one('res.company', 'Default Company', required=True), - 'object_id': fields.many2one('ir.model', 'Object', required=True), - 'expression': fields.char('Expression', size=32, required=True), - } - _defaults = { - 'expression': lambda *a: 'True', - 'sequence': lambda *a: 1 - } -multi_company_default() - -class res_company(osv.osv): - _inherit = 'res.company' - - def _company_default_get(self, cr, uid, object=False, context={}): - proxy = self.pool.get('multi_company.default') - ids = proxy.search(cr, uid, [('object_id.model', '=', object)]) - for rule in proxy.browse(cr, uid, ids, context): - user = self.pool.get('res.users').browse(cr, uid, uid) - if eval(rule.expression, {'context': context, 'user': user}): - return rule.company_dest_id.id - return super(res_company, self)._company_default_get(cr, uid, object, context) - -res_company() - -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/multi_company/multi_company_view.xml b/addons/multi_company/multi_company_view.xml deleted file mode 100644 index baac5b322d4..00000000000 --- a/addons/multi_company/multi_company_view.xml +++ /dev/null @@ -1,45 +0,0 @@ - - - - - multi_company.default.tree - multi_company.default - tree - - - - - - - - - - - - - multi_company.default.form - multi_company.default - form - - - - - - - - - - - - - - Multi Company - ir.actions.act_window - multi_company.default - form - - - - - - diff --git a/addons/multi_company/security/ir.model.access.csv b/addons/multi_company/security/ir.model.access.csv new file mode 100644 index 00000000000..0343f29f43a --- /dev/null +++ b/addons/multi_company/security/ir.model.access.csv @@ -0,0 +1 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" diff --git a/addons/product/pricelist.py b/addons/product/pricelist.py index f3131d4fc42..450582edf5d 100644 --- a/addons/product/pricelist.py +++ b/addons/product/pricelist.py @@ -271,7 +271,7 @@ class product_pricelist_version(osv.osv): 'price_version_id', 'Price List Items', required=True), 'date_start': fields.date('Start Date', help="Starting date for this pricelist version to be valid."), 'date_end': fields.date('End Date', help="Ending date for this pricelist version to be valid."), - 'company_id': fields.related('pricelist_id','company_id',type='many2one',relation='res.company',string='Company') + 'company_id': fields.related('pricelist_id','company_id',type='many2one',relation='res.company',string='Company',store=True) } _defaults = { 'active': lambda *a: 1, @@ -368,7 +368,7 @@ class product_pricelist_item(osv.osv): digits=(16, int(config['price_accuracy']))), 'price_max_margin': fields.float('Max. Price Margin', digits=(16, int(config['price_accuracy']))), - 'company_id': fields.related('price_version_id','company_id',type='many2one',relation='res.company',string='Company') + 'company_id': fields.related('price_version_id','company_id',type='many2one',relation='res.company',string='Company',store=True) } _constraints = [ diff --git a/addons/product/product.py b/addons/product/product.py index 50111af60ef..ad2b4ca0330 100644 --- a/addons/product/product.py +++ b/addons/product/product.py @@ -500,7 +500,7 @@ class product_product(osv.osv): result = map(_name_get, self.read(cr, user, ids, ['variants','name','default_code'], context)) return result - def name_search(self, cr, user, name='', args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, user, name='', args=None, operator='ilike', context=None, limit=100): if not args: args=[] if not context: diff --git a/addons/product/security/product_security.xml b/addons/product/security/product_security.xml index e0744f8ba95..cceaef7cdd5 100644 --- a/addons/product/security/product_security.xml +++ b/addons/product/security/product_security.xml @@ -9,12 +9,10 @@ Product / Manager
- - Product multi-company - + diff --git a/addons/project/project.py b/addons/project/project.py index f06041f0396..f4452a5fbf0 100644 --- a/addons/project/project.py +++ b/addons/project/project.py @@ -443,7 +443,7 @@ class project_work(osv.osv): 'task_id': fields.many2one('project.task', 'Task', ondelete='cascade', required=True), 'hours': fields.float('Time Spent'), 'user_id': fields.many2one('res.users', 'Done by', required=True), - 'company_id': fields.related('task_id','company_id',type='many2one',relation='res.company',string='Company') + 'company_id': fields.related('task_id','company_id',type='many2one',relation='res.company',string='Company',store=True) } _defaults = { 'user_id': lambda obj,cr,uid,context: uid, diff --git a/addons/purchase/purchase.py b/addons/purchase/purchase.py index 21d1f9e5660..464421b5be7 100644 --- a/addons/purchase/purchase.py +++ b/addons/purchase/purchase.py @@ -456,7 +456,7 @@ class purchase_order_line(osv.osv): 'notes': fields.text('Notes'), 'order_id': fields.many2one('purchase.order', 'Order Ref', select=True, required=True, ondelete='cascade'), 'account_analytic_id':fields.many2one('account.analytic.account', 'Analytic Account',), - 'company_id': fields.related('order_id','company_id',type='many2one',relation='res.company',string='Company') + 'company_id': fields.related('order_id','company_id',type='many2one',relation='res.company',string='Company',store=True) } _defaults = { 'product_qty': lambda *a: 1.0 diff --git a/addons/report_analytic_planning/report_analytic_planning_view.xml b/addons/report_analytic_planning/report_analytic_planning_view.xml index 28a5b101602..4cb534faf84 100644 --- a/addons/report_analytic_planning/report_analytic_planning_view.xml +++ b/addons/report_analytic_planning/report_analytic_planning_view.xml @@ -154,6 +154,24 @@
+ + + report.account.analytic.planning.search + report_account_analytic.planning + search + + + + + + + + + + + + + @@ -196,6 +214,7 @@ report_account_analytic.planning form tree,form + + + report_account_analytic.planning.stat.search + report_account_analytic.planning.stat + search + + + + + + + + + + + + + @@ -259,6 +295,7 @@ report_account_analytic.planning.stat form graph,tree + diff --git a/addons/report_crm/report_crm_view.xml b/addons/report_crm/report_crm_view.xml index 882c5888e12..8589daa1a9b 100644 --- a/addons/report_crm/report_crm_view.xml +++ b/addons/report_crm/report_crm_view.xml @@ -77,47 +77,27 @@ - - Cases by user and section (this month) - report.crm.case.user - form - tree,graph - [('name','=',time.strftime('%Y-%m-01'))] - - - - - Cases by User and Section report.crm.case.user form - tree + tree,graph - - - - My cases by section (this month) - report.crm.case.user - form - tree - [('user_id','=',uid),('name','=',time.strftime('%Y-%m-01'))] - - + My cases by section report.crm.case.user form - tree + tree,graph [('user_id','=',uid)] - + @@ -179,22 +159,14 @@
- - Cases by categories and section (this month) - report.crm.case.categ - form - tree - [('name','=',time.strftime('%Y-%m-01'))] - - Cases by Categories and Section report.crm.case.categ form - tree + tree,graph - + @@ -322,4 +294,4 @@ - + \ No newline at end of file diff --git a/addons/report_document/report_document_view.xml b/addons/report_document/report_document_view.xml index d2c2c57654f..ce01fb3e7fc 100644 --- a/addons/report_document/report_document_view.xml +++ b/addons/report_document/report_document_view.xml @@ -40,7 +40,9 @@ search - + + + diff --git a/addons/sale/process/sale_process.xml b/addons/sale/process/sale_process.xml index 9cfb0215940..1c131c251ec 100755 --- a/addons/sale/process/sale_process.xml +++ b/addons/sale/process/sale_process.xml @@ -41,7 +41,7 @@ - + @@ -52,7 +52,7 @@ - + diff --git a/addons/sale/sale.py b/addons/sale/sale.py index fd7562144c8..1be4b4a2477 100644 --- a/addons/sale/sale.py +++ b/addons/sale/sale.py @@ -778,7 +778,7 @@ class sale_order_line(osv.osv): 'state': fields.selection([('draft', 'Draft'), ('confirmed', 'Confirmed'), ('done', 'Done'), ('cancel', 'Cancelled'), ('exception', 'Exception')], 'State', required=True, readonly=True), 'order_partner_id': fields.related('order_id', 'partner_id', type='many2one', relation='res.partner', string='Customer'), 'salesman_id':fields.related('order_id','user_id',type='many2one',relation='res.users',string='Salesman'), - 'company_id': fields.related('order_id','company_id',type='many2one',relation='res.company',string='Company'), + 'company_id': fields.related('order_id','company_id',type='many2one',relation='res.company',string='Company',store=True), } _order = 'sequence, id' _defaults = { diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml index 2efe2981156..fc53ddd828a 100644 --- a/addons/sale/sale_view.xml +++ b/addons/sale/sale_view.xml @@ -252,16 +252,6 @@ - - All Sales Order - ir.actions.act_window - sale.order - form - tree,form,calendar,graph - - - - Sales in Exception ir.actions.act_window @@ -328,7 +318,6 @@ - sale.order.line.tree sale.order.line diff --git a/addons/scrum/scrum.py b/addons/scrum/scrum.py index 387c1ce0f00..3e880986038 100644 --- a/addons/scrum/scrum.py +++ b/addons/scrum/scrum.py @@ -119,7 +119,7 @@ class scrum_product_backlog(osv.osv): _name = 'scrum.product.backlog' _description = 'Product Backlog' - def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=100): if not args: args=[] if not context: diff --git a/addons/scrum/scrum_view.xml b/addons/scrum/scrum_view.xml index f867b2b9e5f..2ddb8353fec 100644 --- a/addons/scrum/scrum_view.xml +++ b/addons/scrum/scrum_view.xml @@ -111,10 +111,32 @@
+ + + scrum.product.backlog.search + scrum.product.backlog + search + + + + + + + + + + + + + + + + Backlogs scrum.product.backlog form + @@ -174,12 +196,33 @@ + + scrum.sprint.search + scrum.sprint + search + + + + + + + + + + + + + + + + Sprints scrum.sprint form tree,form + @@ -318,6 +361,18 @@ + + + scrum.task.search + scrum.task + search + + + + + + + All Tasks @@ -325,6 +380,7 @@ form tree,form [('scrum','=',1)] + diff --git a/addons/stock/stock.py b/addons/stock/stock.py index cfb43e300c4..8b5356a8573 100644 --- a/addons/stock/stock.py +++ b/addons/stock/stock.py @@ -349,7 +349,7 @@ class stock_tracking(osv.osv): 'date': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'), } - def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80): + def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): if not args: args = [] if not context: @@ -912,7 +912,7 @@ class stock_production_lot_revision(osv.osv): 'indice': fields.char('Revision', size=16), 'author_id': fields.many2one('res.users', 'Author'), 'lot_id': fields.many2one('stock.production.lot', 'Production lot', select=True, ondelete='cascade'), - 'company_id': fields.related('lot_id','company_id',type='many2one',relation='res.company',string='Company'), + 'company_id': fields.related('lot_id','company_id',type='many2one',relation='res.company',string='Company',store=True), } _defaults = { @@ -1457,7 +1457,7 @@ class stock_inventory_line(osv.osv): 'product_id': fields.many2one('product.product', 'Product', required=True), 'product_uom': fields.many2one('product.uom', 'Product UOM', required=True), 'product_qty': fields.float('Quantity'), - 'company_id': fields.related('inventory_id','company_id',type='many2one',object='res.company',string='Company') + 'company_id': fields.related('inventory_id','company_id',type='many2one',relation='res.company',string='Company',store=True) } def on_change_product_id(self, cr, uid, ids, location_id, product, uom=False): diff --git a/addons/wiki/wiki_view.xml b/addons/wiki/wiki_view.xml index 626de776ffb..1bbd8eeb9b8 100644 --- a/addons/wiki/wiki_view.xml +++ b/addons/wiki/wiki_view.xml @@ -137,15 +137,34 @@ + + wiki.wiki.search + wiki.wiki + search + + + + + + + + + + + + + + - Search a Pages + Search Pages wiki.wiki form tree,form {'section':'1'} + - +