Skip to Content
  • Single product description for sales, purchases, pickings...

    Hello Contributors!

     

    I’ve opened an issue to propose a new module to support single product description:

     

     

    If you are interested or you have solved before (I guess it! This is common!) please participate in https://github.com/OCA/stock-logistics-workflow/issues/1067

     

    Thank you

    Regards,

    Rafael

     


    by Rafael Blasco (Moduon) - 06:25 - 16 Aug 2022
  • How do you solve invoicing period?

    Hello Contributors!

     

    I write because I don’t see a common straight solution (and user friendly) for this general use case.

     

    1.  

     

    Usually, I have been using the OCA module sale_order_type when a client have the need of defining invoicing periods like:

     

    • Monthly
    • B-weekly
    • Weekly
    • Daily

     

    With sale_order_type +plus+ sale_order_invoicing_grouping_criteria you can group by. This module allow multiple criterias.

     

    1.  

     

    In the other hand there is the OCA module “account_invoice_base_invoicing_mode”, this looks like more specific but it has a huge dependency (I don’t know why): depends: account, queue_job, sale

     

    With account_invoice_base_invoicing_mode +plus+ account_invoice_mode_monthly and other modules becomes the logic, but the customer cannot create their invoicing modes themselves, and need from us a new module each time.

     

     

    The usability (UX) in my mind looks like clients (users) have a field like “invoicing period” (like invoicing mode) where they can create monthly, weekly, etc. (like payment terms) and after that they can set it in the partners form (customers or supplier). And after that improve with more modules automatism.

     

    What do you think?

     

    I write here before opening an issue in GitHub (maybe sale-workflow, maybe account-invoicing).

     

     

    Thank you in advance

    Best regards

    Rafael

     


    by Rafael Blasco (Moduon) - 05:31 - 16 Aug 2022
  • Call for Speakers - OCA Days 2022 - Deadline 31st August
    Hello OCA Contributors.

    We are so excited to see so many of you heading to the OCA Days in October. We are almost at capacity!
    I wanted to make sure you were aware that our "Call for Speakers" deadline is 31st of August.

    We have some great proposals that have been sent through already and we would love to have more! We want to hear about what you have been up to, have you got a new module to share, an update, a tutorial, a workshop, a great discussion topic.....?

    We want to know about it. Share your talk proposals here.

    We look forward to hearing from you.
    Rebecca

    --
    Rebecca Gellatly
    General Secretary
    Odoo Community Association

    by Rebecca Gellatly - 03:31 - 16 Aug 2022
  • OCA Days 2022 - Info Blog Post
    Hello Dear OCA Contributors.

    I hope this email finds you all well.

    I wanted to draw your attention to our latest blog post with a few more details about the OCA Days. Please have a read here.

    Please note, that we only have 200 spaces (in past years we've only been able to sit around 150 in person, we are excited to be able to increase this), but we need to know who is coming and spaces are starting to fill up! Register here.

    We are so excited to hear your talk proposals too - the deadline is 31st August.

    We can't wait to see you in Liège!

    Warmest regards,
    Rebecca

    --
    Rebecca Gellatly
    General Secretary
    Odoo Community Association

    by Rebecca Gellatly - 10:46 - 10 Aug 2022
  • Firebase integration with Odoo
    Hello everybody,
    
    for a potential project, we need to integrate Odoo with Firebase DB and 
    create a lot of Endpoint to exchange data like customer, product, sale 
    order and so on.
    
    Has anyone done something similar?
    
    Thanks
    
    
    -- 
    
    Stefano Sforzi
    Tel (CH): +41 91 210 23 40
    Tel (IT): +39 0331 158 7090
    https://www.agilebg.com
    
    

    by stefano sforzi - 04:20 - 8 Aug 2022
  • Migrating custom modules of Point of Sale from v13 to v15
    Hi,

    We're trying to upgrade a custom module from v13 to v15. post_statement_id field which is included in class AccountBankStatementLine model via inheritance in point_of_sale module in Odoo Community addons v13 but it doesn't exist in v15 and this field is used in our custom module.

    What is replaced with pos_statement_id field of AccountBankStatementLine in v15?


    v13:
    in point_of_sale module:

    class AccountBankStatementLine(models.Model):
        _inherit = 'account.bank.statement.line'

        pos_statement_id = fields.Many2one('pos.order', string="POS statement", ondelete='cascade')



    custom module in v13:
    class POSOrder(models.Model):
        _inherit = 'pos.order'

        statement_ids = fields.One2many(
            'account.bank.statement.line',
            'pos_statement_id',
            string='Bank Payments',
            states={'draft': [('readonly', False)]},
            readonly=True)

    v15:
    No inherited account.bank.statement.line class and no pos_statement_id field
       
    I need a detailed description of how module designs changed from v13 to v15. There are several similar issues in our custom module. Could you please give some suggestions? Is there any descriptive document that explains how module structures changed to take into account for developers?


    Regards

    by duygutuncay - 10:50 - 22 Jul 2022
  • Procedure to create 16.0 branches
    Dear contributors,

    I'm starting to think about the process to create the 16.0 branches. And the more I think about it, the more I'm convinced we should do it by adding "installable": False in the module manifests, instead of creating empty branches.

    This would have several benefits:
    • Improve security. Indeed, currently migration PRs have a lot of commits and reviewers only look at the last 2 commits. By accident or malice, it would be easy for a contributor to sneak bad code in older commits, that would go unnoticed. As the community grows, I think this a very important topic.
    • Avoid CLA bot issues: currently, the CLA bot is flagging old commits that were ok at the time they were created, but may not be valid today as contributors may have changed email, or revoked their CLA.
    • Reduce oca-github-bot complexity: work has to be done to make the bot aware of other branches in migration PRs (notably to look-up maintainers). This would be unnecessary if a migration PR is a normal PR to an existing addon directory. On the contrary, the bot could even detect migration PRs automatically by noticing the change to the installable flag, so this could simplify some processes.
    • Slow git repo growth: by avoiding the recreation of identical commits in several branches we would slow down the git repo size increase.
    About the possible drawbacks, I am under the impression that all the reasons we had back then to create empty branches have faded away:
    • Today, Odoo and all the OCA tooling work perfectly well when there are addons marked as uninstallable. They are correctly ignored by linters, tests, and Odoo does not attempt to import the code.
    • Regarding discoverability, the addons table in the README shows a clear view of what is not migrated.
    The migration procedure and tools should continue to work as today, to pick up commits that would have been added after branching (basically the git-am process would simply work as it does today)

    All we'd need maybe is to agree on a process to remove modules that have not been migrated for several versions. But in a first approach, regular PRs to remove now useless modules would probably be sufficient.

    Are there any other arguments (pro or con) that I would have missed ?

    Looking forward to reading your feedback on this proposal.

    -Stéphane


    by Stéphane Bidoul - 12:45 - 20 Jul 2022
  • One stop shop (OSS) Tax with foreign fixed establishment
    Hi all,

    Has anymore already faced or/and solved the case where you need to apply the tax based on your fixed establishment providing the goods.
    My company is in country C only (no multi-company) and I have a warehouse in country C and D. So accounting is declared in country C, taxes are declared in country C and D according to their respective shipments.
    When the SO is placed, the shipping country is not known yet.
    If country D is shipping goods to a customer address in country D, this is a national delivery with the VAT of the delivery address country.
    If country D is shipping goods to a B2B EU customer address not in country D, this is an intracom delivery without VAT.
    Worst use case is if for one SO line of 10 units, you ship 4 from country C to country C (national delivery) and 6 from country D to country C (intracom delivery). You need an invoice for each delivering country and apply different tax while it's related to the same SO line.
    For B2C, the tax rate is always the one based on the customer delivery address but the declaration is done to the tax department of the delivering country.

    The 2 possible approaches I see are:
    - change the SO line at delivery to put the correct tax. But this could lead to SO line splitting and the SO does not reflect the original SO confirmation anymore. This can cause issues in the connections to e-commerce platforms. So I'm not in favor of it
    - change the tax set on the invoice at invoice generation. This will need to know what tax to apply, meaning we need to refine the qty_to_invoice to have one qty_to_invoice per delivering country.
    Of course, this should also work with returns and credit notes and the goods can be returned to a different country than the one that initially shipped the goods.

    Any input is welcome. I created this discussion here:

    Kind regards,
    Jacques-Etienne Baudoux

    by Jacques-Etienne Baudoux - 11:56 - 18 Jul 2022
  • Proposing myself as l10n-spain PSC
    Hi all,

    I would like to apply as PSC for https://github.com/OCA/l10n-spain

    At Studio73 we are working with Odoo since OpenERP 6.0 and we have contributed to some of the l10n-spain core modules.
    We are an experience team with the Spanish fiscal demands and we would like to help to our localization at the migration for next Odoo's release.

    My github account is
    https://github.com/fuentes73


    Best Regards,


    Pablo Fuentes
    Gerente - Ing. Informático
    pablo@studio73.es

    Consultoría Informática Studio 73 S.L.
    C/ Camí vell de l'estació, 6 Bajo Izquierda
    46870 - Ontinyent (Valencia)
    www.studio73.es - 96 191 12 79


    by Pablo Fuentes Rodríguez - 11:01 - 13 Jul 2022
  • Proposing myself as l10n-spain PSC
    Hi all,

    I would like to apply as PSC for https://github.com/OCA/l10n-spain

    Main reason is I am an experienced developer and consultant in Spain, we are working with Odoo from 5.0 version (13 years of my life), first at Pexego with a lot of contributions in the early years of  the community and localization, and for the last 6 years at Comunitea.
    In the early years of OCA I belonged to core-commmiters github's group, I would like apporting to evolve more quickly our localization for next Odoo's version and contribute in the future fiscal demands.

    My github account is
    https://github.com/omar7r


    Thanks for considering my request and regards.

    Omar Castiñeira
    Comunitea Servicios Tecnológicos S.L.



    by Omar Castiñeira Saavedra - 10:01 - 13 Jul 2022
  • Proposing myself as l10n-spain PSC
    Hi all,

    I would like to apply as PSC for https://github.com/OCA/l10n-spain

    Main reason is the big development we are doing from last year to cover Basque Country requirements (Fiscal Ticketbai and Batuz project).
    This task is not fully finished and we need a big push in next weeks.
    Also in next months we have a team working in localization for Canary Islands, with also specific fiscal rules.
    And in near future we expect to have important changes in rest of spanish fiscal rules.

    I have contributed in this repository by migrating different modules (mainly TicketBAI modules) for last two years and I have a developer profile.

    I have also been teaching other contributors how to correctly migrate different Spanish Localization modules to V15 in an event that was organized by the community a few months ago.

    My github account is https://github.com/ao-landoo

    Thanks for considering my request and regards.

    --
    Aritz Olea

    LANDOO - Sistemas de Información con Odoo
    Tel.: +34 943 568 663
    Zubiberri  bidea 31, pl. 2, ofic. 3
    Parque Empresarial Zuatzu, Edif. Urumea
    20018 Donostia, Gipuzkoa, Spain
    PARTNER OFICIAL ODOO "GOLD"
    (En junio-2021, #1 del ranking entre los 60 partners de España, ver en www.odoo.com/partners)
    CERTIFICADO ODOO V15, V14, V13, V12 y V11
    Entrevista en Odoo Experience 2019: https://www.youtube.com/watch?v=XMtCe8F7JUc

    by Aritz Olea - 09:11 - 13 Jul 2022
  • Proposing myself as l10n-spain PSC
    Hi all,
    
    I would like to apply as PSC for https://github.com/OCA/l10n-spain
    
    Main reason is the big development we are doing from last year to cover
    Basque Country requirements (Fiscal Ticketbai and Batuz project).
    This task is not fully finished and we need a big push in next weeks.
    Also in next months we have a team working in localization for Canary
    Islands, with also specific fiscal rules.
    And in near future we expect to have important changes in rest of
    spanish fiscal rules.
    
    I have contributed in this repository for last years and I have a
    developer and functional profile.
    
    
    My github account is https://github.com/cubells
    
    Thanks for considering my request and regards.
    
    Vicent Cubells
    Trey, kilobytes de soluciones
    
    
    
    -- 
    Atentament, cubells.
    --
    

    by Vicent Cubells Peña - 09:01 - 13 Jul 2022
  • prior price before promotion
    Hi all,

    Does anyone have worked on the subject of a "base price" or "prior price" ?
    There is a EU Directive 2019/2161 about for it:

    > 2.   The prior price means the lowest price applied by the trader during a period of time not shorter than 30 days prior to the application of the price reduction.


    Regards,


    --
    Raphaël Reverdy
    Mobile +33 6 38 02 03 93
    Fixe +33 4 82 53 84 60

    by Raphaël Reverdy - 11:15 - 11 Jul 2022
  • Tax and account mapping depending of the product/category

    Hi all I have created a discussion on github here (maybe easier to discuss and to keep an history)

    https://github.com/OCA/account-fiscal-rule/discussions/298


    I copy/paste the description of the discussion


    Issue

    When selling in Europe (or only in France but with some special dom-tom case), you need to apply local tax when reaching a certain amount. And sometime you need to map the tax (and also the account) depending of the product.

    For example you sell products A and B with the tax 20% in France
    But you need to sell it with a tax 13% for product A and 16% for product B in some fiscal position.

    Right now it's impossible to do it



    Solution

    I would like to introduce a new module account_fiscal_product_rule

    That will have the following data models

    
    class AccountFiscalPositionProductRule():
    
        name = fields.Char()
        fiscal_position_id = fields.Many2one("account.fiscal.position")
        product_tmpl_ids = fields.Many2many("product.template")
        category_ids = fields.Many2many("product.category")
        account_income_id = fields.Many2one("account.account")
        account_expense_id = fields.Many2one("account.account")
        seller_tax_ids = fields.Many2Many("account.tax")
        supplier_tax_ids = fields.Many2Many("account.tax")
    
    
    class ProductCategory():
    
        fiscal_position_product_rule_ids = fields.Many2many("account.fiscal.position.product.rule")
    
    
    class ProductTemplate():
    
        fiscal_position_product_rule_ids = fields.Many2many("account.fiscal.position.product.rule")
    
    
    

    Then we can inherit the mapping logic (tax and account) to apply first this "specific rule" and if not rule match apply native rules

    Describe alternatives you've considered

    I had thinking about adding product_ids and category_ids on "account.fiscal.position.account" and "account.fiscal.position.tax". But the UI not really good for end user (too much configuration), and code will be not so easy to inherit.



    Thanks for your feedback (please put it in github)


    by Sébastien Beau - 09:45 - 11 Jul 2022
  • Review tags
    Hi, 

    regarding the mass mailing happening here: https://github.com/OCA/timesheet/pull/473 I don't know if there's some way to avoid that from happening (but being not very github savvy I don't even know what's the purpose of the oca-contributors team).

    On the other hand, I've seen many devs requesting reviews but not knowing who to ask; could it be an idea to create a team to be used for requesting reviews? Signup would be voluntary, of course, and those requests could be easily filtered in the inbox. What do you think?

    Thanks, 

    --

    Francesco Foresti
    Sicurpharma Srl


    by Francesco Foresti - 03:36 - 8 Jul 2022
  • OpenUpgrade Survey - closes Wednesday 6th July - you still have time to have your say..
    Hello OCA Contributors,

    I hope you are all doing well. 

    Just a quick reminder that our OpenUpgrade survey closes after Wednesday 6th July. Make sure you have your say.

    To find out more details in case you missed it, please check out the blog.

    Also, the planning is underway for OCA Days, please register now if you haven't so we know what sort of numbers to plan for.

    We are taking talk proposals - if you have a presentation, tutorial, workshop, discussion topic to lead, module update etc, we would love to hear from you - just fill in this form.

    As always, thanks for your input - this helps the community stay connected and dynamic.

    Take care,
    Rebecca

    --
    Rebecca Gellatly
    General Secretary
    Odoo Community Association

    by Rebecca Gellatly - 02:06 - 6 Jul 2022
  • test mail
    Somebody gets this message?

    by Jairo Llopis - 05:30 - 1 Jul 2022
  • Tip: Always call `clean_action` when returning an `ir.actions.act_window`
    Hi,

    Simple tip after losing my afternoon on this:
    If you add a python `action_open_view_xxx` code that returns an `ir.actions.act_window` dict, you should always use the built-in `clean_action` that will convert any `tree` to `list`, otherwise the list view will be missing from the web client.
    Note that this fix is always done internally by the webclient.

    from odoo.addons.web.controllers.main import clean_action

    class ProjectProject(models.Model):
        _inherit = 'project.project'

        def action_open_all_tasks(self, view_domain=False, view_type=False):
            act = clean_action(self.env.ref("project.action_view_task").read()[0])         return act


    --
    Yann PAPOUIN, Ingénieur R&D | DEC

    by Yann Papouin - 04:55 - 30 Jun 2022
  • New repository oca/odoo-pre-commit-hooks and pylint-odoo deep refactoring
    Currently, we are using pylint-odoo project as pre-commit hooks for other kind of files

    Now, we are using pre-commit for new projects.

    So we can remove all the checks unrelated with python from pylint-odoo
    e.g. eslint (javascript lints), XML checks, PO (translations) checks and so on

    Then they could be replaced in the pre-commit configuration file with the id of the related check


    There are other custom checks in pylint-odoo as unnecessary-utf8-coding-comment
    But it is duplicated with the following hook id fix-encoding-pragma from:

    It even has the option to auto-fix it

    Similar case for pylint-odoo check incoherent-interpreter-exec-perm:

    Similar case for pylint-odoo check wrong-tabs-instead-of-spaces

    They are duplicated from pylint-odoo and they are better since they have the option to auto-fix if you want.

    But there are other kinds of custom checks in pylint-odoo unrelated with python files that could be good to create a new pre-commit-hook custom for Odoo modules

    In order to check XMLs, PO, CSS, CSV, and so on in the context of Odoo modules.

    Currently, pylint-odoo is overloaded trying to do checks for non-python code since the core is not supporting check non-python files
    And pylint-odoo doesn't have the auto-fix option

    e.g. for XML files: 
     - dangerous-filter-wo-user
     - duplicate-xml-record-id
     - deprecated-openerp-xml-node
     - create-user-wo-reset-password
     - duplicate-xml-fields
     - redundant-modulename-xml
     - deprecated-data-xml-node

    e.g. for CSV files:
     - duplicate-id-csv

    e.g. for PO files (Maybe, If we look for if exists hooks related to PO files they could be already developed from another hook project, so use it instead):
     - duplicate-po-message-definition
     - po-msgstr-variables

    So, IMHO in OCA we need to create a new project to push all these custom pre-commit hooks and add documentation of the useful projects replacing pylint-odoo checks.

    The name proposal is oca/odoo-pre-commit-hooks similar to main hooks repository:

    And we can (or not) enable the option to auto fix (we can even push checks without auto fix)

    Check the following discussion about creating custom repository to detect and autofix:

    Check the following discussion about deprecating duplicated checks if pre-commit supports:

    Check the following plan to create a freeze branch in pylint-odoo with the current behavior in pro to create a new version with new focus and clean code, delete old unused checks, deprecate py2 and so on:

    If you agree, Could you help us to create the repository in OCA, please?

    --
    Moisés López Calderón
    Mobile: (+521) 477-752-22-30
    Twitter: @moylop260
    hangout: moylop260@vauxoo.com
    http://www.vauxoo.com - Odoo Gold Partner
    Twitter: @vauxoo

    by Moisés López Calderón - 10:11 - 27 Jun 2022
  • Re: l10n-estonia status and proposing myself as PSC
    What next steps do I need to take?

    by "Alexey Pelykh" <alexey.pelykh@corphub.eu> - 09:25 - 23 Jun 2022