콘텐츠로 건너뛰기
Odoo 메뉴
  • 로그인
  • 무료 체험하기
  • 앱
    재무 관리
    • 회계
    • 청구서 관리
    • 비용 관리
    • 스프레드시트 (BI)
    • 문서
    • 전자 서명
    판매
    • CRM
    • 판매
    • POS 스토어
    • POS 레스토랑
    • 구독
    • 렌탈
    웹사이트
    • 웹사이트 빌더
    • 이커머스
    • 블로그
    • 포럼
    • 실시간 채팅
    • 온라인 학습 관리
    공급망
    • 재고 관리
    • 제조 관리
    • 제품 수명주기 관리 (PLM)
    • 매입
    • 유지관리
    • 품질
    인적자원 관리
    • 직원
    • 채용
    • 휴가 관리
    • 인사 평가
    • 인재 추천
    • 차량 관리
    마케팅
    • 소셜 마케팅
    • 이메일 마케팅
    • SMS 마케팅
    • 행사
    • 마케팅 자동화
    • 설문 조사
    서비스
    • 프로젝트
    • 작업 기록
    • 현장 서비스
    • 헬프데스크
    • 일정 관리
    • 일정 예약
    생산성
    • 메일 및 채팅
    • 전자 결재
    • IoT
    • VoIP
    • 지식 센터
    • WhatsApp
    타사 앱 Odoo 스튜디오 Odoo 클라우드 플랫폼
  • 인더스트리
    리테일
    • 서점
    • 의류 매장
    • 가구점
    • 식료품점
    • 철물점
    • 장난감 가게
    식음료 & 숙박업
    • 바 & 펍
    • 레스토랑
    • 패스트푸드
    • 게스트 하우스
    • 음료 유통업체
    • 호텔
    부동산
    • 부동산 중개업체
    • 건축 회사
    • 건설
    • 부동산 관리
    • 가드닝
    • 부동산 소유자 협회
    컨설팅
    • 회계 법인
    • Odoo 파트너
    • 마케팅 대행사
    • 법률 사무소
    • 인재 영입
    • 감사 및 인증
    제조 관리
    • 텍스타일
    • 메탈
    • 가구
    • 푸드
    • 양조장
    • 기업용 선물
    건강 & 피트니스
    • 스포츠 클럽
    • 안경점
    • 피트니스 센터
    • 웰니스 전문가
    • 약국
    • 미용실
    사업
    • 핸디맨
    • IT 하드웨어 및 지원 서비스
    • 태양 에너지 시스템
    • 제화업체
    • 클리닝 서비스
    • HVAC 서비스
    기타
    • 비영리 단체
    • 환경 에이전시
    • 광고판 임대
    • 사진
    • 자전거 임대
    • 소프트웨어 리셀러
    전체 인더스트리 찾아보기
  • 커뮤니티
    학습
    • 튜토리얼
    • 문서
    • 인증
    • 훈련
    • 블로그
    • 팟캐스트
    교육 역량 강화
    • 교육 프로그램
    • Scale-Up! 경영관리 게임
    • Odoo에 방문해보세요
    소프트웨어 신청
    • 다운로드
    • 버전 살펴보기
    • 릴리즈 내역
    협업
    • Github
    • 포럼
    • 행사
    • 번역
    • 파트너 등록
    • 파트너 대상 서비스
    • 회계 법인 정보 등록
    서비스 신청
    • 파트너 검색
    • 회계사 검색
    • 전문 상담 예약
    • 구현 서비스
    • 고객 정보
    • 고객 지원
    • 업그레이드
    Github 유튜브 트위터 링크드인 인스타그램 페이스북 스포티파이
    +1 (650) 691-3277
    데모 예약하기
  • 요금제
  • 고객 지원

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • 회계
  • 재고 관리
  • PoS
  • 프로젝트
  • MRP
All apps
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
모든 게시물 사용자 배지
태그 (모두 보기)
odoo accounting v14 pos v15
게시판 정보
커뮤니티에 참여하려면 회원 가입을 하시기 바랍니다.
모든 게시물 사용자 배지
태그 (모두 보기)
odoo accounting v14 pos v15
게시판 정보
도움말

[SOLVED] Get and Set default tax by Python command line

구독

이 게시물에 활동이 있으면 알림 받기

신고된 질문입니다
taxtax_id
4 답글
11190 화면
아바타
Selverine

Hi,

First, thank you for your time.

I would like to get and set the default tax for my product.

The creation is little different than usual. I create automatically two product for each order.

I would like to get and set the tax_id for this two products. But I have not a clue...


My code:

    def create(self, cr, uid, vals, context=None):
context = context or {}
sol = self.pool.get('sale.order.line') 
if vals.get('name','/')=='/':
vals['name'] = self.pool.get('ir.sequence').get(cr, uid, 'sale.order') or '/'
res = super(sale_order, self).create(cr, uid, vals, context=context)
# res is the id of the created sale order, and we create 2 lines with product_1 and product_2. Here I would like ti add tax_id: 
self.write(cr, uid, [res], {'order_line': [[0, 0, {'product_id': 1,'name': 'Service','price_unit': 50}], [0, 0, {'product_id': 4,'name': 'transport','price_unit': 15}]]})
 return res

1
아바타
취소
아바타
Cyril Gaspard (GEM)
베스트 답변

Hi,

call the onchange product with good order pricelist, fiscal position, date order, partner_id order .... and you will have all good values like if you will do this manually in the view.

UPDATE : code written without testing

1) just do operation in create sale.order :

def create(self, cr, uid, vals, context=None):

    context = context or {}

    sol = self.pool.get('sale.order.line')

    if vals.get('name','/')=='/':

    vals['name'] = self.pool.get('ir.sequence').get(cr, uid, 'sale.order') or '/'

    pricelist_id = vals.get('pricelist_id') or False

    fiscal_position_id = vals.get('fiscal_position') or False

    partner_id = vals.get('partner_id') or False

    date_order = vals.get('date_order') or False

    order_line = False

   # In onchange, I put quantity = 1 because not specified, important to calculate correctly pricelist sometimes give different price_unit depending of quantity ... (specify you real quantity by product). You can loop directly on onchange I think ...

    for product_id, qty in [(1, 1), (4, 1)]:

        onchange = sol.product_id_change(cr, uid, [], pricelist_id, product_id, qty=qty, uom=False, qty_uos=qty, uos=False, name='', partner_id=partner_id, lang=False, update_tax=True, date_order=date_order, packaging=False, fiscal_position=fiscal_position_id , flag=False, context=context)

        onchange = onchange.get('value') or False

        if onchange:

            tax_id = onchange.get('tax_id') or []

            if tax_id:

                tax_id = [[6, 0, tax_id]]

            onchange['tax_id'] = tax_id

            onchange['product_id'] = product_id

            onchange['qty'] = qty

            order_line += [(0, 0, onchange)]

    if order_line:

        vals['order_line'] += order_line

    res = super(sale_order, self).create(cr, uid, vals, context=context) 



2) to get tax (see in sol function product_id_change):

context = context or {}

lang = lang or context.get('lang', False)

if not partner_id:

     raise osv.except_osv(_('No Customer Defined!'), _('Before choosing a product,\n select a customer in the sales form.'))

partner_obj = self.pool.get('res.partner')

product_obj = self.pool.get('product.product')

context = {'lang': lang, 'partner_id': partner_id}

partner = partner_obj.browse(cr, uid, partner_id)

lang = partner.lang

context_partner = {'lang': lang, 'partner_id': partner_id}

fpos = False

if not fiscal_position:

     fpos = partner.property_account_position or False

else:

     fpos = self.pool.get('account.fiscal.position').browse(cr, uid, fiscal_position)

if update_tax: #The quantity only have changed

     result['tax_id'] = self.pool.get('account.fiscal.position').map_tax(cr, uid, fpos, product_obj.taxes_id)

Bye

3
아바타
취소
Selverine
작성자

Hi Cyril. Thank you for your help. Is it possible to call the onchange product from create? Because one is on sale.order ( create function) the other one is in sale.order.line (onchange product). So how can I find the parameters ids for onchange product? Or need I to do it in order function? Thank you. Selverine

아바타
Selverine
작성자 베스트 답변

Hi Cyril.

Thank you again a lot for your help.

I try the first solution but even if I don't have any erros, nothing happen.

pricelist_id,partner_id and date_order are correct.
fiscal_position_id is egual to False  (fiscal_position_id = vals.get('fiscal_position') or False)

            onchange = sol.product_id_change(cr, uid, [], pricelist_id, product_id, qty=qty, uom=False, qty_uos=5, uos=False, name='', partner_id=partner_id, lang=False, update_tax=True, date_order=date_order, packaging=False, fiscal_position=fiscal_position_id , flag=False, context=context)

            onchange = onchange.get('value') and onchange['value'].get('result') or False

            if onchange:
                tax_id = onchange.get('tax_id') or []
I have nothing for tax_id so I suppose that onchange didn't works.

Do you have any idea please?

Update3:

The output:


-> res = super(sale_order, self).create(cr, uid, vals, context=context)
(Pdb) n
IndexError: 'list index out of range'
> /opt/OpenERP/openerp/HorizonGroup/openerp/addons/sale/sale.py(519)create()
-> res = super(sale_order, self).create(cr, uid, vals, context=context)
(Pdb) print vals
{'origin': False, 'message_follower_ids': False, 'bat_sent_to_Ed': False, 'categ_ids': [[6, False, []]], 'order_line': [(0, 0, {'product_uos_qty': 1, 'name': u'Service', 'product_uom': 5, 'order_id': 168L, 'price_unit': 75.0, 'price_list': u'Service', 'delay': 7.0, 'product_packaging': False, 'product_id': 1, 'th_weight': 0.0, 'product_uos': False, 'type': u'make_to_order', 'purchase_price': 30.0, 'condition': u' ', 'tax_id': [6, 0, [2]]}), (0, 0, {'product_uos_qty': 1, 'name': u'Transport', 'product_uom': 1, 'price_unit': 1.0, 'price_list': u'Transport', 'delay': 7.0, 'product_packaging': False, 'product_id': 4, 'th_weight': 0.0, 'product_uos': False, 'type': u'make_to_order', 'purchase_price': 0.0, 'condition': u' ', 'tax_id': [6, 0, [2]]})], 'picking_policy': 'direct', 'order_policy': 'manual', 'image': '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', 'order_line4': [], 'shop_id': 1, 'client_order_ref': False, 'order_line5': [], 'date_order': '2015-04-04', 'partner_id': 27, 'message_ids': False, 'fiscal_position': False, 'user_id': 1, 'sale_BAT3': [], 'payment_term': 4, 'company_id': 8, 'texte_bat': 1, 'pricelist_id': 1, 'project_id': False, 'incoterm': False, 'ecart': 0, 'section_id': False, 'link_purchase': False, 'partner_invoice_id': 27, 'description_BAT': False, 'order_line3': [], 'name': u'SO182', 'partner_shipping_id': 27, 'description_Quotation': False, 'invoice_quantity': 'order', 'devis_accept_by_client': False}
(Pdb) print order_line
[(0, 0, {'product_uos_qty': 1, 'name': u'Service', 'product_uom': 5, 'order_id': 168L, 'price_unit': 75.0, 'price_list': u'Service', 'delay': 7.0, 'product_packaging': False, 'product_id': 1, 'th_weight': 0.0, 'product_uos': False, 'type': u'make_to_order', 'purchase_price': 30.0, 'condition': u' ', 'tax_id': [6, 0, [2]]}), (0, 0, {'product_uos_qty': 1, 'name': u'Transport', 'product_uom': 1, 'price_unit': 1.0, 'price_list': u'Transport', 'delay': 7.0, 'product_packaging': False, 'product_id': 4, 'th_weight': 0.0, 'product_uos': False, 'type': u'make_to_order', 'purchase_price': 0.0, 'condition': u' ', 'tax_id': [6, 0, [2]]})]

Best regards,


Selverine


PS: name_BAT was a text field. I changed my code and now it is working better ;-)

0
아바타
취소
Selverine
작성자

Hi Cyril. I updated my answer. Than you !

Cyril Gaspard (GEM)

hi, sorry for delay, alot of work, I updated my code, you should now enter in the condition if onchange, but in the dict 'value' you returned with pdb, what is the field 'name_BAT': u'ServiceBAT[]1' ? Type of field and value ? I think the value will give an error, stand answer. bye

Selverine
작성자

Hi Cyril. I am really sorry to answer just now...some problems too :-(. I updated my answer with the new output. Thank you a lot, for your time. It is really nice ! Selverine

Cyril Gaspard (GEM)

Hi, oups, I forgot to set calculated value in vals for field order line, just add after the loop for => if order_line: vals['order_line'] = order_line, I updated my answer with this, should work now (if no tax displayed, save the sale order, and verify if taxes are displayed), bye

Selverine
작성자

I updated my answer to ;-). Now I have an error: IndexError: 'list index out of range'. Selverine

Cyril Gaspard (GEM)

oups 2, tax_id should be a list of list : tax_id = [[6, 0, tax_id]], code updated.

Selverine
작성자

You are my god, It works! Thank you a lot! I just changed this: vals['order_line'] = order_line to vals['order_line'] += order_line in order keep the others order_line.

Cyril Gaspard (GEM)

Hi, right for +=, good news now it works, good continuation, bye

토론이 재미있으신가요? 직접 참여해보세요!

지금 바로 가입하여 독점 서비스를 이용해보고 특별한 커뮤니티와 소통하세요!

가입
관련 게시물 답글 화면 활동
Create custom Group Tax with custom module 해결 완료
tax tax_id account.tax
아바타
아바타
1
5월 18
6874
Advance customer payment and its VAT reflection
tax
아바타
아바타
1
7월 25
3041
POS Tax
tax
아바타
아바타
1
7월 25
8291
Federal Unemployment Tax (FUTA) calculates at 10X in Payroll App
tax
아바타
1
3월 25
2303
Tax rate on shipping cost Germany/ Austria
tax
아바타
아바타
2
8월 24
2947
커뮤니티
  • 튜토리얼
  • 문서
  • 포럼
오픈 소스
  • 다운로드
  • Github
  • Runbot
  • 번역
서비스
  • Odoo.sh 호스팅
  • 고객 지원
  • 업그레이드
  • 맞춤 개발
  • 학습
  • 회계사 검색
  • 파트너 검색
  • 파트너 등록
회사 소개
  • 회사 소개
  • 브랜드 자산
  • 상담 문의
  • 인재 채용
  • 행사
  • 팟캐스트
  • 블로그
  • 고객 사례
  • 법적고지 • 개인정보
  • 보안
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo는 CRM, 이커머스, 회계, 재고, POS, 프로젝트 관리 등 기업의 모든 요구 사항을 충족하도록 설계된 오픈 소스 기반의 통합 비즈니스 앱 제품군입니다.

Odoo의 간편한 UI와 완벽하게 통합된 기능을 직접 확인해 보세요.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now