Я написал эту функцию для обновления отдельной таблицы, и она не работает. В режиме отладки он возвращает значения.Openerp - Функция не обновляет поля
мне нужно обновить отдельную таблицу (leave_score_card таблицы) с каждыми сотрудниками накопившихся количества дней, взятыми листьев против того, чтобы оставить тип, как я показал в следующей картине и данные будут взяты из оригинальных hr_holidays таблицы в модуле управления Отпуска
Пожалуйста, помогите мне, чтобы сделать это правильно. Это показывает только последнюю запись и то, что я пытался до сих пор упоминается ниже
def populate_values(self, cr, uid, ids, context={}):
result = {'value': {}}
emps=self.pool.get('hr.employee').search(cr, uid, [('current_status','=','active')], context=context)
if emps:
for r in emps:
print r
result['value']['employee_id'] =r
holiday_obj=self.pool.get('hr.holidays')
holiday_emps=holiday_obj.search(cr, uid, [('employee_id','=',r),('type','=','remove')], context=context)
print holiday_obj
global medi
global annu
global othr
print holiday_emps
if holiday_emps:
casu = 0
annu=0
medi=0
other=0
for n in holiday_obj.browse(cr, uid, holiday_emps):
holiday_status = n.holiday_status_id.id
holiday_days=n.number_of_days_temp
print n
print n.holiday_status_id.id
print "Number of days"
print n.number_of_days_temp
if holiday_status:
if holiday_status==2:
casu=casu+holiday_days
if holiday_status==4:
medi=medi+holiday_days
if holiday_status==10:
annu=annu+holiday_days
else:
other=other+holiday_days
else:
print "Un-identified leave Type"
result['value']['taken_medical'] =medi
result['value']['taken_casual'] =casu
result['value']['taken_anual'] =annu
result['value']['taken_other'] =other
return result
Почему вы возвращаетесь 'false'? – Zety
Извините, что я забыл изменить это, я использовал «результат» в качестве возврата, но он только вернул одну запись. Кстати, я обновил вопрос. –
Что вы пытаетесь обновить здесь? Как называется эта функция? – CZoellner