콘텐츠로 건너뛰기
메뉴
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
신고된 질문입니다

Hi, I tried to put the employee_id from hr.payslip model in the account_analytic_line in a new field called employee_test.

This is my code


# -*- coding: utf-8 -*-

from openerp import models, fields, api, osv

from openerp.http import request

from openerp import SUPERUSER_ID

class account_analytic_line(models.Model):

_inherit = ['account.analytic.line']

employee_id = fields.Char('test')

employee_test = fields.Integer(compute="employee")

@api.multi

def employee(self, ref):

cr, uid, context, pool = request.cr, request.uid, request.context,

objpayslip = self.pool.get('hr.payslip')

result = objpayslip.search_read(cr, SUPERUSER_ID, [('number', '=', ref)], [])

print result

return result.id


But I get error.

How can I fix this?

I tried this with the self.pool method too.


I have in 'account.analytic.line' a ref field, in 'hr.payslip' I have the number field.

The inside of these two fields is the same. I need to filter that and give the employee_id from 'hr.payslip' to the model 'account.analytic.line' model.

How can I make that work?


아바타
취소

Sorry, Pls use the api as per the function.

eg:

@api.one

작성자

with your function you have write down I get this error:

TypeError: search() takes at least 4 arguments (2 given)

작성자

with my code I get this:

cr, uid, context, pool = request.cr, request.uid, request.context,

ValueError: need more than 3 values to unpack

베스트 답변

Hi wizardz

can you show me the error message.


Hi wizardz:

can you try this .

def employee(self):

     objpayslip = self.pool.get('hr.payslip')

     if self.ref:

         result = objpayslip.search([('number', '=', self.ref)]) # i hope it should return one record   

       for record in objpayslip.browse(result):         

            return record.id

아바타
취소
작성자

only 1 argument given. is the error.

I need to get the ref from 'account.analytic.line' and then look at 'hr.payslip' - number to get the employee_id there. Then I need to put the employee_id in a new field in 'account.analytic.line'

작성자

I tried youre code, I get this error:

TypeError: search() takes at least 4 arguments (2 given)

관련 게시물 답글 화면 활동
1
9월 16
4198
1
8월 25
1100
1
7월 25
1309
0
5월 25
1051
1
4월 25
2300