Overslaan naar inhoud
Odoo Menu
  • Aanmelden
  • Probeer het gratis
  • Apps
    Financiën
    • Boekhouding
    • Facturatie
    • Onkosten
    • Spreadsheet (BI)
    • Documenten
    • Ondertekenen
    Verkoop
    • CRM
    • Verkoop
    • Kassasysteem winkel
    • Kassasysteem Restaurant
    • Abonnementen
    • Verhuur
    Websites
    • Websitebouwer
    • E-commerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Bevoorradingsketen
    • Voorraad
    • Productie
    • PLM
    • Inkoop
    • Onderhoud
    • Kwaliteit
    Personeelsbeheer
    • Werknemers
    • Werving & Selectie
    • Verlof
    • Evaluaties
    • Aanbevelingen
    • Wagenpark
    Marketing
    • Social media Marketing
    • E-mailmarketing
    • SMS Marketing
    • Evenementen
    • Marketingautomatisering
    • Enquêtes
    Diensten
    • Project
    • Urenstaten
    • Buitendienst
    • Helpdesk
    • Planning
    • Afspraken
    Productiviteit
    • Chat
    • Goedkeuringen
    • IoT
    • VoIP
    • Kennis
    • WhatsApp
    Apps van derden Odoo Studio Odoo Cloud Platform
  • Bedrijfstakken
    Detailhandel
    • Boekhandel
    • kledingwinkel
    • Meubelzaak
    • Supermarkt
    • Bouwmarkt
    • Speelgoedwinkel
    Food & Hospitality
    • Bar en Pub
    • Restaurant
    • Fastfood
    • Gastenverblijf
    • Drankenhandelaar
    • Hotel
    Vastgoed
    • Makelaarskantoor
    • Architectenbureau
    • Bouw
    • Vastgoedbeheer
    • Tuinieren
    • Vereniging van eigenaren
    Consulting
    • Accountantskantoor
    • Odoo Partner
    • Marketingbureau
    • Advocatenkantoor
    • Talentenwerving
    • Audit & Certificering
    Productie
    • Textiel
    • Metaal
    • Meubels
    • Eten
    • Brewery
    • Relatiegeschenken
    Gezondheid & Fitness
    • Sportclub
    • Opticien
    • Fitnesscentrum
    • Wellness-medewerkers
    • Apotheek
    • Kapper
    Trades
    • Klusjesman
    • IT-hardware & support
    • Zonne-energiesystemen
    • Schoenmaker
    • Schoonmaakdiensten
    • HVAC-diensten
    Andere
    • Non-profitorganisatie
    • Milieuagentschap
    • Verhuur van Billboards
    • Fotograaf
    • Fietsleasing
    • Softwareverkoper
    Browse all Industries
  • Community
    Leren
    • Tutorials
    • Documentatie
    • Certificeringen
    • Training
    • Blog
    • Podcast
    Versterk het onderwijs
    • Onderwijs- programma
    • Scale Up! Business Game
    • Bezoek Odoo
    Download de Software
    • Downloaden
    • Vergelijk edities
    • Releases
    Werk samen
    • Github
    • Forum
    • Evenementen
    • Vertalingen
    • Word een Partner
    • Services for Partners
    • Registreer je accountantskantoor
    Diensten
    • Vind een partner
    • Vind een boekhouder
    • Een adviseur ontmoeten
    • Implementatiediensten
    • Klantreferenties
    • Ondersteuning
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Vraag een demo aan
  • Prijzen
  • Help

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

  • CRM
  • e-Commerce
  • Boekhouding
  • Voorraad
  • PoS
  • Project
  • MRP
All apps
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Alle posts Personen Badges
Labels (Bekijk alle)
odoo accounting v14 pos v15
Over dit forum
Je moet geregistreerd zijn om te kunnen communiceren met de community.
Alle posts Personen Badges
Labels (Bekijk alle)
odoo accounting v14 pos v15
Over dit forum
Help

Can't override rml report

Inschrijven

Ontvang een bericht wanneer er activiteit is op deze post

Deze vraag is gerapporteerd
invoicermlaccountreportaccount.invoice
3 Antwoorden
11122 Weergaven
Avatar
Tomas Parnarauskas

I created module that overrides default invoice and it should use different rml file making it easy to change without changing anything in original account module. But somehow it still used old rml file even though in settings/actions/reports, it shows that report is using my custom rml which is located in my module. When I edit my rml file, nothing changes. When I edit original rml file (that should be overriden and shouldn't affect what will be printed in invoice) it changes my printed invoice, when I edit my rml file nothing changes. Is something went wrong?

My module: print_invoice.py

import time
from openerp.report import report_sxw

class account_invoice(report_sxw.rml_parse):
    def __init__(self, cr, uid, name, context):
        super(account_invoice, self).__init__(cr, uid, name, context=context)
        self.localcontext.update({
            'time': time,
        })

report_sxw.report_sxw(
    'report.custom.account.invoice',
    'account.invoice',
    'addons/report_custom_invoice/report/account_print_invoice_custom.rml',
    parser=account_invoice
)

xml file:

<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
    <report
        auto="False"
        id="account.account_invoices"
        model="account.invoice"
        name="custom.account.invoice"
        rml="report_custom_invoice/report/account_print_invoice_custom.rml"
        string="Invoices"
        attachment="(object.state in ('open','paid')) and ('INV'+(object.number or '').replace('/','')+'.pdf')"
        usage="default"
        multi="True" 
     />
</data>
</openerp>

__openerp__.py:

{
    'name': 'Custom Invoice template',
    'version': '1.0',
    'depends': ['base_registry_code'],
    'author': 'OERP',
    'description': """
Account Print Invoice
==========================================

This module customizes default invoice. It adds company registry code in invoice template.

    """,
    'website': '',
    'category': 'report',
    'demo': [],
    'test': [],
    'data': ['account_invoice_report.xml'
    ],
    'auto_install': False,
    'installable': True,
}
0
Avatar
Annuleer
Sudhir Arya (ERP Harbor Consulting Services)

Make sure you have import py file in __init__.py.

Tomas Parnarauskas
Auteur

I have import py file in report/__init__.py

Sudhir Arya (ERP Harbor Consulting Services)

Did you add xml file in __openerp__.py?

Avatar
herbert6453
Beste antwoord

Did you use OpenERP Version 7 ?

In V7 there are different solutions to print. (A top print button with pulldown list, B below print button eg red) Print Button A maybe disappear if multi="True". The report id is hard coded in the method called if you click on print button B.

I have overwritten the invoice_print method and changed the return value to my report. It works for me, maybe there are better solutions.

invoice.py

from osv import osv, fields
from tools.translate import _

class account_invoice(osv.osv):
    _inherit='account.invoice'
    _name='account.invoice'

    def invoice_print(self, cr, uid, ids, context=None):
        res = super(account_invoice, self).invoice_print( cr, uid, ids,context) #self, cr, uid, ids, context)
        res["report_name"] = "custom.account.invoice"
        return res

account_invoice()

__init__.py

import invoice
1
Avatar
Annuleer
Tomas Parnarauskas
Auteur

Yes I did use OpenERP 7. I used your code and it worked. Just needed a bit of modifications, because newer openerp revisions changed where osv and tools are located. Now it should be: from openerp.osv import osv, fields from openerp.tools.translate import _ .Thanks.

Avatar
Sudhir Arya (ERP Harbor Consulting Services)
Beste antwoord

I tried your code and I have doubt that you didn't add your xml file in __openerp__.py.

There is one more thing you need to change in xml that is you need to remove multi="True". Else everything is ok.

multi="True" is used when you want to remove your report from Print option in form view.

Make this changes, restart server and update your module.


Inherit Custom RML Report this may be help you.

1
Avatar
Annuleer
Tomas Parnarauskas
Auteur

Don't understan't why it does not work. I removed multi="True". I updated my answer with __openerp__.py file data.

Avatar
Borni DHIFI
Beste antwoord

Hi,

see this subject Change report in a custom module?

0
Avatar
Annuleer
Tomas Parnarauskas
Auteur

I looked into this this one. But it seems like its code is the same as mine (just for different report)

Geniet je van het gesprek? Blijf niet alleen lezen, doe ook mee!

Maak vandaag nog een account aan om te profiteren van exclusieve functies en deel uit te maken van onze geweldige community!

Aanmelden
Gerelateerde posts Antwoorden Weergaven Activiteit
how to modify residual in account invoice?
invoice account account.invoice
Avatar
Avatar
1
mei 17
8983
Want to manually edit rml, but which file
invoice rml report
Avatar
Avatar
Avatar
2
aug. 15
10276
Proper way to customize Invoice reports on Odoo 7
invoice rml report
Avatar
Avatar
Avatar
2
mrt. 15
9999
Replace invoice template with my own rml file
invoice rml report template
Avatar
4
dec. 23
15884
How can I create a demo data for account invoice?
invoice account account.invoice demo_data
Avatar
1
apr. 22
1925
Community
  • Tutorials
  • Documentatie
  • Forum
Open Source
  • Downloaden
  • Github
  • Runbot
  • Vertalingen
Diensten
  • Odoo.sh Hosting
  • Ondersteuning
  • Upgrade
  • Gepersonaliseerde ontwikkelingen
  • Onderwijs
  • Vind een boekhouder
  • Vind een partner
  • Word een Partner
Over ons
  • Ons bedrijf
  • Merkelementen
  • Neem contact met ons op
  • Vacatures
  • Evenementen
  • Podcast
  • Blog
  • Klanten
  • Juridisch • Privacy
  • Beveiliging
الْعَرَبيّة 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 is een suite van open source zakelijke apps die aan al je bedrijfsbehoeften voldoet: CRM, E-commerce, boekhouding, inventaris, kassasysteem, projectbeheer, enz.

Odoo's unieke waardepropositie is om tegelijkertijd zeer gebruiksvriendelijk en volledig geïntegreerd te zijn.

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