Skip ke Konten
Odoo Menu
  • Login
  • Uji coba gratis
  • Aplikasi
    Keuangan
    • Akuntansi
    • Faktur
    • Pengeluaran
    • Spreadsheet (BI)
    • Dokumen
    • Tanda Tangan
    Sales
    • CRM
    • Sales
    • POS Toko
    • POS Restoran
    • Langganan
    • Rental
    Website
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Rantai Pasokan
    • Inventaris
    • Manufaktur
    • PLM
    • Purchase
    • Maintenance
    • Kualitas
    Sumber Daya Manusia
    • Karyawan
    • Rekrutmen
    • Cuti
    • Appraisal
    • Referensi
    • Armada
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Acara
    • Otomatisasi Marketing
    • Survei
    Layanan
    • Project
    • Timesheet
    • Layanan Lapangan
    • Meja Bantuan
    • Planning
    • Appointment
    Produktivitas
    • Diskusi
    • Approval
    • IoT
    • VoIP
    • Pengetahuan
    • WhatsApp
    Aplikasi pihak ketiga Odoo Studio Platform Odoo Cloud
  • Industri-Industri
    Retail
    • Toko Buku
    • Toko Baju
    • Toko Furnitur
    • Toko Kelontong
    • Toko Hardware
    • Toko Mainan
    Makanan & Hospitality
    • Bar dan Pub
    • Restoran
    • Fast Food
    • Rumah Tamu
    • Distributor Minuman
    • Hotel
    Real Estate
    • Agensi Real Estate
    • Firma Arsitektur
    • Konstruksi
    • Estate Management
    • Perkebunan
    • Asosiasi Pemilik Properti
    Konsultansi
    • Firma Akuntansi
    • Mitra Odoo
    • Agensi Marketing
    • Firma huku
    • Talent Acquisition
    • Audit & Sertifikasi
    Manufaktur
    • Tekstil
    • Logam
    • Perabotan
    • Makanan
    • Brewery
    • Corporate Gift
    Kesehatan & Fitness
    • Sports Club
    • Toko Kacamata
    • Fitness Center
    • Wellness Practitioners
    • Farmasi
    • Salon Rambut
    Perdagangan
    • Handyman
    • IT Hardware & Support
    • Sistem-Sistem Energi Surya
    • Pembuat Sepatu
    • Cleaning Service
    • Layanan HVAC
    Lainnya
    • Organisasi Nirlaba
    • Agen Lingkungan
    • Rental Billboard
    • Fotografi
    • Penyewaan Sepeda
    • Reseller Software
    Browse semua Industri
  • Komunitas
    Belajar
    • Tutorial-tutorial
    • Dokumentasi
    • Sertifikasi
    • Pelatihan
    • Blog
    • Podcast
    Empower Education
    • Program Edukasi
    • Game Bisnis 'Scale Up!'
    • Kunjungi Odoo
    Dapatkan Softwarenya
    • Download
    • Bandingkan Edisi
    • Daftar Rilis
    Kolaborasi
    • Github
    • Forum
    • Acara
    • Terjemahan
    • Menjadi Partner
    • Layanan untuk Partner
    • Daftarkan perusahaan Akuntansi Anda.
    Dapatkan Layanan
    • Temukan Mitra
    • Temukan Akuntan
    • Temui penasihat
    • Layanan Implementasi
    • Referensi Pelanggan
    • Bantuan
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Dapatkan demo
  • Harga
  • Bantuan

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

  • CRM
  • e-Commerce
  • Akuntansi
  • Inventaris
  • PoS
  • Project
  • MRP
All apps
Anda harus terdaftar untuk dapat berinteraksi di komunitas.
Semua Post Orang Lencana-Lencana
Label (Lihat semua)
odoo accounting v14 pos v15
Mengenai forum ini
Anda harus terdaftar untuk dapat berinteraksi di komunitas.
Semua Post Orang Lencana-Lencana
Label (Lihat semua)
odoo accounting v14 pos v15
Mengenai forum ini
Help

Custom Fields Value Disappear when perform action & Passing Custom Field Value to Account Invoice Line ?

Langganan

Dapatkan notifikasi saat terdapat aktivitas pada post ini

Pertanyaan ini telah diberikan tanda
fieldscustomsale.order.lineaccount.invoice.lineodoo10
3 Replies
7019 Tampilan
Avatar
Vootipong Limpanitivat

Hi, Everyone

     i have been able to create a custom in sale order line there are two field 1.totalweight and priceperunit i use a help of @api.onchange so when ever the value that it depends on it will change automatically. below is my .py code

class customSaleField(models.Model):
 _inherit = 'sale.order.line'

 TotalWeight = fields.Float(string='Total Weight',readonly=True,store=True)
 PricePerUnit = fields.Float(string='Price Per Unit',readonly=True,store=True)

@api.onchange('product_uom_qty')
 def on_change_weight(self):
  weight = self.product_uom_qty * self.product_id.weight
  value = {
   'value' : {
    'TotalWeight' : weight
   }
  }
  return value
  
 @api.onchange('price_subtotal','TotalWeight')
 def on_change_PricePerUnit(self):

  try:
   PricePerUnit = self.price_subtotal / self.TotalWeight
  except ZeroDivisionError:
   PricePerUnit = 0
   
  value = {
   'value' : {
    'PricePerUnit' : PricePerUnit
   }
  }
  return value

however,when i press "confirm sale" or "save" or perform any action the value in custom fields are disappear

Secondly, how do i actually pass these values,field to account ?? after the user press click on "create invoice"


0
Avatar
Buang
Avatar
Jignesh Mehta
Jawaban Terbai

Hello Vootipong Limpanitivat,


Try to remove readonly attribute from field.

May be because of readonly attribute, method is not affected. I faced many time in the past.


@api.onchange('product_uom_qty')
def on_change_weight(self):
    if self.product_uom_qty:
        self.TotalWeight = self.product_uom_qty * self.product_id.weight

@api.onchange('price_subtotal','TotalWeight')
def on_change_PricePerUnit(self):
    if self.price_subtotal:
        self.PricePerUnit = self.price_subtotal / self.TotalWeight


For Passing values to account, refer this method under sale module which is def create_invoices


Hope it will helps you.

Thanks,

0
Avatar
Buang
Vootipong Limpanitivat
Penulis

Sir, it works !! it really works !

So i have to inherited and override those function ?

Jignesh Mehta

Yes. For passing values you need to override those function called as def create_invoices. If any sale order line id passes in the invoice line then you will pass it easily. Check that method and override it.

Vootipong Limpanitivat
Penulis

hi , i have found the answer relate to this here is the link

https://www.odoo.com/forum/help-1/question/how-to-transfer-data-from-sale-order-to-invoice-when-clicking-on-create-invoice-85740

the answer were posted by Peter Alabaster

so i manage to change to odoo 10

the out come are like this

def _prepare_invoice(self):

res = super(customSaleField,self)._prepare_invoice(self)

if line.product_id:

if line.TotalWeight:

res['TotalWeight'] = line.TotalWeight

if line.PricePerUnit

res['PricePerUnit'] = line.PricePerUnit

return res

??

Vootipong Limpanitivat
Penulis

i dont know am on the right way or not please she some light please

Avatar
Mohammed Amal N
Jawaban Terbai

Hi,

I think store is used to store computed field to db.

If you need to save it from an onchange function try writing it from onchange

example

self.weight = self.product_uom_qty * self.product_id.weight


0
Avatar
Buang
Vootipong Limpanitivat
Penulis

still not working

@api.onchange('product_uom_qty')

def on_change_weight(self):

self.TotalWeight = self.product_uom_qty * self.product_id.weight

weight= self.product_uom_qty * self.product_id.weight

value = {

'value' : {

'TotalWeight' : weight

}

}

return value

@api.onchange('price_subtotal','TotalWeight')

def on_change_PricePerUnit(self):

try:

self.PricePerUnit = self.price_subtotal / self.TotalWeight

PPU = self.price_subtotal / self.TotalWeight

except ZeroDivisionError:

self.PricePerUnit = 0

PPU = 0

value = {

'value' : {

'PricePerUnit' : PPU

}

}

return value

Menikmati diskusi? Jangan hanya membaca, ikuti!

Buat akun sekarang untuk menikmati fitur eksklufi dan agar terlibat dengan komunitas kami!

Daftar
Post Terkait Replies Tampilan Aktivitas
[Odoo 10]Passing Custom FIeld Value from Sale Order Line to Account Invoice Line Diselesaikan
fields sale.order.line account.invoice.line odoo10
Avatar
Avatar
3
Sep 24
13386
[odoo10] how to remove unnecessary columns Diselesaikan
fields odoo10
Avatar
Avatar
2
Sep 18
6792
Remove Calendar from Date field
fields odoo10
Avatar
Avatar
1
Apr 18
4064
How to trigger "onclick" event while clicking on mobile/phone number in Odoo 10
fields odoo10
Avatar
0
Jan 18
4876
Odoo 10 use compute field with another field data
fields odoo10
Avatar
0
Sep 17
3873
Komunitas
  • Tutorial-tutorial
  • Dokumentasi
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Terjemahan
Layanan
  • Odoo.sh Hosting
  • Bantuan
  • Peningkatan
  • Custom Development
  • Pendidikan
  • Temukan Akuntan
  • Temukan Mitra
  • Menjadi Partner
Tentang Kami
  • Perusahaan kami
  • Aset Merek
  • Hubungi kami
  • Tugas
  • Acara
  • Podcast
  • Blog
  • Pelanggan
  • Hukum • Privasi
  • Keamanan
الْعَرَبيّة 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 adalah rangkaian aplikasi bisnis open source yang mencakup semua kebutuhan perusahaan Anda: CRM, eCommerce, akuntansi, inventaris, point of sale, manajemen project, dan seterusnya.

Mudah digunakan dan terintegrasi penuh pada saat yang sama adalah value proposition unik Odoo.

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