2013-04-09 2 views
0

공급 업체 인보이스 생성에 성공했습니다. 내가 지금 가지고있는 문제는 나는 (코드에 의해) 내가 만든 송장을 지불 할 수 없다는 것입니다. 결제에 잘못된 계좌가 사용 된 것으로 보입니다.공급 업체 인보이스 및 계정 유형

오류는 : 아무 일도 일어나지 않고 상태가 개방에서 유료로 변경되지 않지만 내가 수동으로 계정을 'X111111 채권자 (테스트)'로 변경하면 데모 데이터에서 문제없이 지불됩니다.

for commission in self.browse(cr, uid, ids, context=context): 
     if commission.supplier_invoice.id: 
      continue 
     journal_ids = self.pool.get('account.journal').search(cr, uid, 
                   [('type', '=', 'purchase'), 
                   ('company_id', '=', 
                   commission.invoice.company_id.id)], 
                   limit=1) 
     if not journal_ids: 
      raise osv.except_osv(_('Error!'), # TODO change text message 
           _('Please define sales journal for this company: "%s" (id:%d).') % (
            'dummy', 'dummy')) 
     invoice_line = { 
      'name': 'commission', 
      'sequence': 5, 
      'invoice_id': False, 
      'account_id': commission.salesperson.partner_id.property_account_receivable.id, 
      'price_unit': commission.commission_total, 
      'quantity': 1.0, 
     } 

     invoice_line_id = self.pool.get('account.invoice.line').create(cr, uid, invoice_line, context=context) 
     new_invoice = { 
      'name': 'commission on sale', 
      'type': 'in_invoice', 
      'reference': '', 
      'account_id': commission.salesperson.partner_id.property_account_receivable.id, 
      'partner_id': commission.salesperson.partner_id.id, 
      'journal_id': journal_ids[0], 
      'invoice_line': [(6, 0, [invoice_line_id])], 
      'currency_id': commission.invoice.currency_id.id, 
      'comment': 'test', 
      'fiscal_position': commission.salesperson.partner_id.property_account_position.id, 
      'company_id': commission.invoice.company_id.id, 
      'user_id': uid 
     } 
     invoice_id = self.pool.get('account.invoice').create(cr, uid, new_invoice, context=context) 

     self.write(cr, 
        uid, 
        [commission.id], 
        {'supplier_invoice': invoice_id}, 
        context=context) 
+0

무엇이 문제입니까? 무슨 일이 일어나기를 기대합니까? – YXD

+0

질문이 업데이트 됨 – maazza

답변

1

송장 작성과 관련하여,

'account_id': commission.salesperson.partner_id.property_account_receivable.id 

다음은 공급 업체 송장을 만들려고하고 당신이 대신 채권 계정의 지급 계정을 사용해야합니다

여기 내 코드입니다. 그래서 코드는 다음과 같이해야합니다 : 당신은 제품 또는 제품 카테고리의 비용 계정을 사용할 필요가

송장 라인 작성에 관한
'account_id': commission.salesperson.partner_id.property_account_payable.id 

, 여기

'account_id': commission.salesperson.partner_id.property_account_receivable.id, 

.

+0

더 많은 일반 인보이스 템플릿이이 프로젝트에 추가 된 것을보고 싶습니다 : https://github.com/radzhome/fedex-commercial-invoice – radtek