2017-09-30 4 views
1

Um ein Modul "hr_payroll_from_timesheet" zu erstellen, habe ich versucht, ein Feld hinzuzufügen, so dass ich die Anzahl der Stunden zählen kann, wenn ein Mitarbeiter am Samstag oder Freitag arbeitet.Funktionsfeld, maximale Rekursionstiefe überschritten

class hr_timsheet_sheet(osv.osv) 
_inherit = 'hr_timsheet_sheet.sheet' 

def _woked_days(self,cr,uid,ids,field_name,args=None,context=None) 
    sheet = self.browse(cr,uid,ids) 
    for record in sheet: 
     hr_sup= ["Saturday","Friday"] 
     count = 0.0 
     for line in record.period_ids: 
      day = line.name 
      year, month, day = (int(x) for x in day.split('-')) 
      days = datetime.date(year,month,day) 
      if days.strftime("%A") in hr_sup: 
        count += line.total_attendance 
        self.write(cr,uid,ids,{ 
          'weekend' : count, 
          }) 
    return True 

_columns = { 
    'weekend' : fields.function(_worked_days,method=True,type='float',store=True) 
} 

Ich habe versucht, diese Methode zu implementieren, indem eine neue Schaltfläche Hinzufügen und Ändern von meinem Feld in 'weekend' : float(), und es ist sehr gut funktionierte, eigentlich das, was ich will, ist nur all diese Berechnung zu machen, wenn ich Speicher klicken auf ... dank im Voraus

Antwort

2

ich diese Idee wie Sie tun binden, payslip von timsheet try this:

class hr_timsheet_sheet(osv.osv) 
    _inherit = 'hr_timsheet_sheet.sheet' 

    def _woked_days(self,cr,uid,ids,weekend,args=None,context=None) 
     sheet = self.browse(cr,uid,ids) 
     for record in sheet: 
      hr_sup= ["Saturday","Friday"] 
      count = 0.0 
      for line in record.period_ids: 
       day = line.name 
       year, month, day = (int(x) for x in day.split('-')) 
       days = datetime.date(year,month,day) 
       if days.strftime("%A") in hr_sup: 
         count += line.total_attendance 
       res[record.id] = count 
     return True 

es funktioniert auch wenn sie das arg halten field_name

+0

vielen Dank, Sie haben gerade mein Leben gerettet – imad

+0

Sie sind herzlich willkommen – user3676872

Verwandte Themen