跳至内容
菜单
此问题已终结
11 回复
9402 查看

Hi,

I want create menu that show list of employee birthday in current month. I have pass domain in action but getting issue .

Domain:

  <field name="domain" eval="['&amp;', ('birthday','&gt;=', time.strftime('%%m-%%d')),('birthday','&lt;=', time.strftime('%%m-%%d'))]"/>
  <field name="domain" eval="['&amp;', ('birthday','&gt;=', time.strftime('%Y-%m-%d')),('birthday','&lt;=', time.strftime('%Y-%m-%d')))]"/>

help please

形象
丢弃

can u post your domain condition code?..

编写者

@prakash: I have update my que. I have try both this domain but facing issue

最佳答案

Please see the link  http://stackoverflow.com/questions/14537302/want-to-show-data-group-by-year-month-week-in-openerp-7

Try the below code:-

filter icon="terp-go-month" string="Month" name="month" domain="[('birthday','&lt;=',(context_today()+relativedelta(day=31)).strftime('%%Y-%%m-%%d')),('birthday','&gt;=',(context_today()-relativedelta(day=1)).strftime('%%Y-%%m-%%d'))]" help="Current Month" context="{'group_by':'birthday'}"/>

形象
丢弃
编写者

Prakash i have try this code but getting " name 'context_today' is not defined" error I want pass this domain in action.

编写者
This domain is work but it check like birthday between 01-07-2014 to 31-07-2014 there is no employee birthday between this date

oh.. yes i think need to change domain condition..

编写者

have update answer with new domain ?

最佳答案

Hi,

Refer the following link it may help you:
http://stackoverflow.com/questions/16535704/openerp-7-many2one-with-current-month-filter
 

形象
丢弃
编写者 最佳答案

Hi,

Prakash and nehal thanx for the answer i have found solution. Create one function field that get month and date from employee birthday. I have use this field with domain [('month','&lt;=',(context_today()+relativedelta(day=31)).strftime('%%Y-%%m-%%d')),('month','&gt;=',(context_today()-relativedelta(day=1)).strftime('%%Y-%%m-%%d'))] its work fine.

形象
丢弃
最佳答案

Hi

I have created a sql view for employee Birthday and show in calendar. 


Sql View:
select h.id,concat(concat(date_part('Year',current_date),'-'),to_char(h.birthday, 'mm-dd')),r.name from hr_employee as h join resource_resource as r on h.resource_id=r.id where r.active='t';


employee_birthday.py


from openerp import tools

from openerp.osv import fields,osv

class birthday_report(osv.osv):

_name = "birthday.report"

_auto = False

_columns = {

'name': fields.many2one('hr.employee','Employee'),

'dob' : fields.date('Birthday'),

}

def init(self, cr):

tools.drop_view_if_exists(cr, 'birthday_report')

cr.execute("""

create or replace view birthday_report as (

select

h.id as id,

h.id as name,

concat(concat(date_part('Year',current_date),'-'),to_char(h.birthday, 'mm-dd')) as dob

from

hr_employee as h

join

resource_resource as r

on

h.resource_id=r.id

where 
r.active ='t'

)

""")

birthday_report()



employee_birthday_view.xml



<record id="view_birthday_report_calendar" model="ir.ui.view">

<field name="name">Employee Birthday</field>

<field name="model">birthday.report</field>

<field name="arch" type="xml">

<calendar string="Birthday" color="name"

date_start="dob"

quick_add="False" avatar_model="hr.employee">

<field name="name"/>

</calendar>

</field>

</record>


 

形象
丢弃
最佳答案

Hi,

Maybe, you'll need to display other dates on event, you can user super_calendar module to unify in one calendar view

形象
丢弃
相关帖文 回复 查看 活动
7
11月 20
24275
1
6月 24
951
1
12月 22
3399
14
8月 20
31041
3
2月 19
9456