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
    • Discuss
    • Artificial Intelligence
    • 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
    • Manajemen Properti
    • 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
    • Tanya ahli
    • Layanan Implementasi
    • Referensi Pelanggan
    • Bantuan
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Dapatkan demo
  • Harga
  • Bantuan
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

Expected singleton

Langganan

Dapatkan notifikasi saat terdapat aktivitas pada post ini

Pertanyaan ini telah diberikan tanda
pythonsingletonodoo12
3 Replies
5642 Tampilan
Avatar
BulldogSoft, Pamela Castaneda

I have this function that does its job, but i tried to make the field store=True and when i update it gives me and expected singleton error Expected singleton: project.project(2, 3, 1).

 this is my code.

sum_pre = fields.Float(string="Total Presupuesto Aprobado", required=False, compute='presupuesto_sum')

@api.depends('tasks.sum_total_cost')
def presupuesto_sum(self):
    etapa = self.env['project.task'].search([('project_id', '=', self.id), ('stage_id', '=', 'Presupuesto Aprobado')])
    for data in etapa:
        if data:
            self.sum_pre = round(sum(etapa.mapped('sum_total_cost')), 2)

Someone knows how to resolve it or where i have the error, Thanks!

                  0
                  Avatar
                  Buang
                  Avatar
                  Niyas Raphy (Walnut Software Solutions)
                  Jawaban Terbai

                  Hi,

                  Can you update the function with a for loop like this and see,

                  def presupuesto_sum(self):
                  for rec in self:
                  etapa = self.env['project.task'].search(
                  [('project_id', '=', rec.id), ('stage_id', '=', 'Presupuesto Aprobado')])
                  for data in etapa:
                  if data:
                  rec.sum_pre = round(sum(etapa.mapped('sum_total_cost')), 2)

                  Thanks

                  1
                  Avatar
                  Buang
                  BulldogSoft, Pamela Castaneda
                  Penulis

                  Thanks Niyas Raphy, this works fine

                  Avatar
                  Baiju KS
                  Jawaban Terbai

                  Hi Pamela Castaneda,

                  Now you are using the "sum_pre" field in the form view only, right?

                  In this case without attribute "store=True", it's calculating the value on the fly when you are opening the form. In this case, the self in

                  etapa = self.env['project.task'].search([('project_id', '=', self.id), ('stage_id', '=', 'Presupuesto Aprobado')])

                  will be a single record of the current form. So it will work fine.

                  But when you give the attribute "store=True" and update, it will try to compute and store the value of field "sum_pre" in all the existing records at once, now the self in the above code will be a recordset and it will throw the Expected singleton error as it is expecting a single record in self.

                  To avoid this you have to iterate the self, using the for loop like

                          for project in self:
                  You will get the same error if you use the "sum_pre" field in tree view without attribute "store=True"

                  Hope this helps.
                  2
                  Avatar
                  Buang
                  BulldogSoft, Pamela Castaneda
                  Penulis

                  Thanks for the explanation, it is very useful information for me.

                  Avatar
                  Russ Schneider
                  Jawaban Terbai

                  Somewhere you're pulling in three project ids.  Some variable.  Perhaps sum_total_cost?


                  0
                  Avatar
                  Buang
                  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
                  Create Journal Entries whit code Diselesaikan
                  python odoo12
                  Avatar
                  Avatar
                  Avatar
                  2
                  Agu 25
                  10776
                  Two many2many fields related to each other inside one model Diselesaikan
                  python odoo12
                  Avatar
                  1
                  Jun 22
                  10053
                  how to make invoice date field readonly false for administrator after validating invoice in odoo12?
                  python odoo12
                  Avatar
                  Avatar
                  1
                  Sep 21
                  4666
                  Update tax in invoice line
                  python odoo12
                  Avatar
                  0
                  Agu 21
                  95
                  How do I find Average Cost Function?
                  python odoo12
                  Avatar
                  0
                  Jul 21
                  172
                  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
                  • Karir
                  • 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 Svenska ภาษาไทย 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