Skip to content
Snippets Groups Projects
  1. Jul 26, 2021
    • Xavier-Do's avatar
      [FIX] *: add explicit license to all manifest · 4f683968
      Xavier-Do authored
      
      The license is missing in most enterprise manifest so
      the decision was taken to make it explicit in all cases.
      When not defined, a warning will be triggered starting from
      14.0 when falling back on the default LGPL-3.
      
      closes odoo/odoo#74231
      
      Related: odoo/enterprise#19850
      Related: odoo/design-themes#43
      Signed-off-by: default avatarXavier Dollé (xdo) <xdo@odoo.com>
      4f683968
  2. Aug 07, 2020
    • william's avatar
      [IMP] l10n_*: update the module categories · eaa7f93c
      william authored
      
      Task 2309613
      
      We have a new hierarchy:
      * Accounting
        * [Generic, not changed]
        * Localization
          * Account Chart
          * Check
          * EDI
          * Point of Sale
          * Purchase
          * Reporting
          * Sale
      
      This helps in displaying only the chart of accounts when clicking on
      "Install more Packages" from the accounting settings in the Fiscal
      Localization section.
      We can also refine the search in the _auto_install_l10n post init hook
      of account.
      
      closes odoo/odoo#55384
      
      Related: odoo/enterprise#12179
      Related: odoo/upgrade#1568
      Signed-off-by: default avatarCedric Snauwaert (csn) <csn@openerp.com>
      eaa7f93c
  3. Jun 18, 2020
  4. Mar 31, 2020
    • william's avatar
      [IMP] l10n_*: add demo company · d2851b20
      william authored
      
      Task 2198388
      
      When testing and demoing localization, it can but cumbersome to create a
      Company with the right credentials and install the chart of account on
      it.
      This commit aims to shorten the process. The first version only contains
      a valid vat (or similar) number, but we should add fields specific to
      localization in the future so that we have a working environment as soon
      as we install the localization.
      change manifest
      
      closes odoo/odoo#48102
      
      Signed-off-by: default avatarJosse Colpaert <jco@openerp.com>
      d2851b20
  5. Mar 05, 2020
  6. Feb 19, 2020
  7. Jan 22, 2020
    • wan's avatar
      [IMP] account: add a readonly group · d8c5cc13
      wan authored
      
      Task 2092079
      Accounting firms that want to give access to their customers avoiding
      mistakes and risks will love this profile that can't do anything
      wrong... Maybe as well as companies auditors..?
      
      closes odoo/odoo#39860
      
      Related: odoo/enterprise#6576
      Signed-off-by: default avatarQuentin De Paoli (qdp) <qdp@openerp.com>
      d8c5cc13
  8. Nov 29, 2019
    • oco-odoo's avatar
      [IMP] account: support multiple tax reports per country · ef0488ef
      oco-odoo authored
      
      - Introduce a new account.tax.report object
      	> Tax report lines now refer to a tax report, and the tax report to a country
      
      - Tax report lines can share tags accross reports within the same country
      	> To support the cases where some report is a simplified version of another one: some of its lines can be computed in the same way as the 'bigger' report.
      	> This is done by giving the same tag_name to the tax report lines, and the same country_id to their parent report.
      	> Full support for tag name modification, and the way it impacts the shared tags (sometimes, we can overwrite them all, sometimes we must delete them, sometimes, we create new tags to replace them on some report lines).
      
      - Support copying tax report (and the lines/tags linked to it), so that it is possible to duplicate them and change the country set on the duplicate for use in another country (coopying is way better as replacing in place, as we don't keep any link to an xmlid, and still allow using the original report in the original country it was created for).
      
      - Make all l10n* modules compatible with those changes
      
      closes odoo/odoo#38964
      
      Related: odoo/enterprise#6217
      Signed-off-by: default avataroco-odoo <oco-odoo@users.noreply.github.com>
      ef0488ef
  9. Sep 06, 2019
  10. Sep 04, 2019
  11. Aug 12, 2019
  12. Aug 01, 2019
    • wan's avatar
      [IMP] account: misc improvement post accountappocalypse · 81905658
      wan authored
      * remove _onchange_invoice_date_due as it is superseeded by _onchange_recompute_dynamic_lines
      * change invoice_date_due only if not set and if there is no payment term, it was erased and set to invoice_date_due if we did not set invoice_date_due before posting
      * raise a warning if we validate an empty move/invoice
      * correct the renaming of user_id -> invoice_user_id in invoice template
      * correct the renaming of date_invoice -> invoice_date
      * the data on purchase journals was not displayed correctly as the sign
      of the amount in the graphs was not signed correctly
      * the methods for computed invoice reference were not correctly renamed in l10n_be for (account.move)._get_invoice_computed_reference
      * the default reconciliation model was only installed in the first company, we make it now install along with the chart of account
      * the partner of invoices and the label of invoice lines should be required
      * the widget one2many_list doesn't exist
      
      closes odoo/odoo#34786
      
      Signed-off-by: default avatarCedric Snauwaert (csn) <csn@openerp.com>
      81905658
  13. Aug 14, 2019
    • Josse Colpaert's avatar
      [IMP] account, l10n_xx: change CoA loading methods · f8d4bf44
      Josse Colpaert authored
      
      Before, we only had a public method that installed
      the CoA for the current active company.
      
      With the multi-company changes, it was not
      possible anymore to install a module with a
      demo company and then have the CoA installed
      in that demo company correctly.
      
      We changed that public method to be able to
      put an extra optional parameter and shortened
      its name to try_loading instead of
      try_loading_for_current_company.  The method that
      it calls when there is no chart installed
      is made private and renamed to _load.
      
      closes odoo/odoo#35703
      
      Signed-off-by: default avatarQuentin De Paoli (qdp) <qdp@openerp.com>
      f8d4bf44
  14. Aug 09, 2019
    • Joseph Caburnay's avatar
      [IMP] l10n_*: add new receivable account for pos · 536560bb
      Joseph Caburnay authored
      A new feature[*] in point_of_sale (PoS) which minimizes the
      creation of account.move records in closing a pos.session relies
      on a receivable account made specifically for PoS.
      
      This commit addresses this feature's requirement by adding a
      new receivable account to each localization.
      
      [*] point_of_sale: single AE for a pos.session
      
      TASK-ID: 1862388
      536560bb
  15. Aug 06, 2019
    • Goffin Simon's avatar
      [FIX] l10n_ae: Reverse charge with Vendor Bill · 83b8e2d9
      Goffin Simon authored
      
      The reverse charge was counted twice in the VAT Return Summary Report
      
      A reverse charge tax is a group of taxes with:
      - Reverse Charge TVA +5%(Purchase)
      - Reverse Charge TVA -5%(Purchase)
      
      When buying a product P with a reverse charge tax on it.
      The only tax that must appear in the VAT Return Summary Report is
      the Reverse Charge TVA -5%(Purchase)
      
      opw:2041877
      
      closes odoo/odoo#35499
      
      Signed-off-by: default avatarSimon Goffin (sig) <sig@openerp.com>
      83b8e2d9
  16. Jul 29, 2019
  17. Aug 03, 2019
  18. Jun 28, 2019
    • Laurent Smet's avatar
      [IMP/REF] accounting-pocalypse yeaaahh · beaa30a3
      Laurent Smet authored
      This commit merges the following models
       * account.invoice and account.move
       * account.invoice.line and account.move.line
       * account.voucher and account.move
       * account.voucher.line and account.move.line
      
      It was the opportunity for a big cleanup of the code, so it also restructures the whole account module, its different models/fields, the tests etc. for a better world and a better code readability.
      
      ==== Rationale ====
      The rationale of this huge change is that we want journal entries / invoices to be easily edited, and changes reflected in the other model. It's a HUGE feature and very strategic for the fiduciary companies. For example, changing the account of a journal entry needs to be automatically reflected on the related invoice.
      
      The same reasoning applies to sale/purchase vouchers.
      
      ==== Changes made in features =====
      When creating an invoice, you are now creating a journal entry directly.
      --> The object account.invoice no longer exists.
      In the same fashion when creating an invoice line, you're now adding journal items directly in the journal entry representing the invoice. If this invoice line has some tax, it may create additional journal items as well.
      --> The models account.invoice.line & account.invoice.tax no longer exist
      
      Identically, when creating a sale/purchase receipt with its lines, you are now creating a journal entry directly and there's no more usability difference between encoding a receipt or an invoice.
      --> The object account.voucher no longer exists.
      --> The object account.voucher.line no longer exists.
      --> The whole account_voucher module no longer exists.
      
      Positive side-effects coming from these changes are
      * draft invoices/bills/sale or purchase receipts now create a draft accounting entry. Validate these objects now simply post its journal entry. That means that draft invoices/bills/sale or purchase receipt can straightforwardly be included in reporting or budgets.
      * opening a journal entry in form view will now always open the correct view: if it's a sale/purchase journal entry we will have a customer invoice/vendor bill view or a sale/purchase receipt view, whatever the menu we're coming from.
      * code & business logic simplification. It is also condensed in a single place instead of being partially duplicated on invoices, vouchers and journal entries.
      
      There should be no feature loss, except the one allowing to group multiple journal items together based on the same product during the invoice validation.
      
      ==== Changes made in models =====
      * account.invoice: model removed. Instead, now use account.move with following mapping
      
      field (account.invoice) 		field (account.move)
      -----------------------			--------------------
      name 					invoice_payment_ref
      number 					name
      reference 				ref
      comment 				narration
      user_id 				invoice_user_id
      amount_					total_company_signed amount_total_signed
      residual 				amount_residual
      state 					state + invoice_payment_state 		/!\ selection changed
      date_invoice 				invoice_date
      date_due 				invoice_date_due
      sent 					invoice_sent
      origin 					invoice_origin
      payment_term_id 			invoice_payment_term_id
      partner_bank_id 			invoice_partner_bank_id
      incoterm_id 				invoice_incoterm_id
      vendor_bill_id 				invoice_vendor_bill_id
      source_email 				invoice_source_email
      vendor_display_name 			invoice_vendor_display_name
      invoice_icon 				invoice_vendor_icon
      cash_rounding_id 			invoice_cash_rounding_id
      sequence_number_next 			invoice_sequence_number_next
      sequence_number_next_prefix 		invoice_sequence_number_next_prefix
      
      'invoices' subset of account.move can be accessed by using the selection field 'type' or one of the many helpers like is_invoice()
      
      * account.move: now has a valid state 'cancel' that has to be excluded from all business logic
      * account.move: field 'amount' renamed into 'amount_total'
      * account.move: field 'reverse_entry_id' renamed into 'reversed_entry_id'
      * account.move.line: now has a field 'display_type' that has to be excluded from all business logic, in order to support invoice layouting
      * account.invoice.line: model removed. Instead, now use account.move.line with following mapping
      
      field (account.invoice.line) 		field (account.move.line)
      ----------------------------		-------------------------
      invoice_id 				move_id
      uom_id 					product_uom_id
      invoice_line_tax_ids 			tax_ids
      account_analytic_id 			analytic_account_id
      
      'invoice lines' subset of all account.move.line from a journal entry can be accessed by using the boolean field 'exclude_from_invoice_tab'
      
      * account.invoice.tax: model removed. Instead, now use account.move.line with following mapping
      
      field (account.invoice.tax) 		field (account.move.line)
      ---------------------------		-------------------------
      invoice_id 				move_id
      account_analytic_id 			analytic_account_id
      amount 					price_unit
      base 					tax_base_amount
      
      'tax lines' subset of all account.move.line from a journal entry can be accessed by using the relational field 'tax_line_id'
      
      * account.invoice.confirm: model removed. Instead, now use the 'post()' function of account.move
      * account.invoice.refund: model removed. Instead, now use account.move.reversal to reverse the entries with the same options as we had for invoices
      * account.voucher: model removed. Instead, now use account.move of type in ['out_receipt', 'in_receipt]
      * account.voucher.line: model removed. Instead, now use account.move.line
      
      ==== Changes made in functions ====
      * on account.move, method _run_post_draft_to_post() renamed into _autopost_draft_entries()
      * on account.move, method action_account_invoice_payment() renamed into action_invoice_register_payment()
      * on account.move, method action_invoice_reconcile_to_check() renamed into action_open_matching_suspense_moves()
      * on account.move, method _get_domain_edition_mode_available() renamed into _get_domain_matching_supsense_moves()
      * on account.move, method _get_intrastat_country_id() renamed into _get_invoice_intrastat_country_id()
      * on account.move.line, method _get_domain_for_edition_mode() renamed into _get_suspense_moves_domain()
      * in account.bank.statement, contextual key 'edition_mode' renamed into 'suspense_moves_mode'
      
      Was task 1917430
      beaa30a3
  19. Jun 18, 2019
    • Olivier Colson's avatar
      [IMP] l10n_ae: add tax templates for consistency with 12.3 · 06d305b0
      Olivier Colson authored
      
      Some taxes were declared as groups with some children having 'type_tax_use' different from 'none'. While this is totally correct from a technical point of view, this meant that the group actually had to stay a group in the new model introduced in 12.3. However, functionally speaking, it was not what was intended. We change that here for consistency with 12.3, and to ease the migration. Databases having installed l10n_ae's chart template before this commit will not be affected, and their groups will stay groups in the future (which makes no problem, they simply will be less easy to configure).
      
      closes odoo/odoo#34189
      
      Signed-off-by: default avatarJosse Colpaert <jco@openerp.com>
      06d305b0
  20. May 22, 2019
    • Hardik Prajapati's avatar
      [IMP] l10n_ae: Added taxes, COA and Fiscal position · 97a21aee
      Hardik Prajapati authored
      
      - On the invoice pdf, if the invoice is in USD, we
      need to specify conversion rate and amounts in AED.
      Also, if it is between certain Gulf states, you need
      to mention this on the invoice.   'Invoice' also
      needs to replaced with 'Tax Invoice'.
      - Taxes changed to 0% and 5% / AED symbol on currency
      adapted to the real situation of UAE.
      - A tax by state automatically adapted with the fiscal
      positions in order to have the tax amounts correctly
      split by state in the tax report.
      
      opw-1931322
      updated to 12.3 taxes (and l10n_ae_reports removed in
      enterprise)
      
      closes odoo/odoo#33474
      
      Signed-off-by: default avatarCedric Snauwaert (csn) <csn@openerp.com>
      97a21aee
  21. May 10, 2019
    • Olivier Colson's avatar
      [IMP] account, l10n_*: v13 taxes · 3936d655
      Olivier Colson authored
      
      - Add repartition lines on taxes
      
      - Link account tags directly to account.move.line; remove the tag_ids field from account.tag
      
      - Add a new report engine dedicated to tax reports, directly generating account tags. It is called as an alternate mode of generic tax report, with a dedicated "Use tax grids" toggle.
      
      >> The biggest change lies in the way the new tax report computes its values.
      Everything is now aggregated directly using the tags set on the account move lines. Thanks to that,
      modifying the configuration of a tax today will not impact the report for the previous periods anymore.
      This is a big improvement, as it means the report will keep on reflecting the values that were submitted
      to the state before, whatever the configuration change.
      
      - Add an audit char field to account.move.line telling with tax grids are impacted by the line, with the corresponding amount
      
      - Modify the behavior of cash basis taxes: the cash basis account is now used as the transition account, while the regular account given in tax declaration is used to store the final entry (it was the opposite before)
      
      - Modify every l10n_* module in order to keep them consistent with these changes
      
      closes odoo/odoo#32833
      
      Signed-off-by: default avatarQuentin De Paoli (qdp) <qdp@openerp.com>
      3936d655
  22. Jul 01, 2019
    • Laurent Smet's avatar
      [MERGE] manual forward port of accounting-pocalypse (beaa30a3) · bc131c0c
      Laurent Smet authored
      This commit merges the following models
       * account.invoice and account.move
       * account.invoice.line and account.move.line
       * account.voucher and account.move
       * account.voucher.line and account.move.line
      
      It was the opportunity for a big cleanup of the code, so it also restructures the whole account module, its different models/fields, the tests etc. for a better world and a better code readability.
      
      ==== Rationale ====
      The rationale of this huge change is that we want journal entries / invoices to be easily edited, and changes reflected in the other model. It's a HUGE feature and very strategic for the fiduciary companies. For example, changing the account of a journal entry needs to be automatically reflected on the related invoice.
      
      The same reasoning applies to sale/purchase vouchers.
      
      ==== Changes made in features =====
      When creating an invoice, you are now creating a journal entry directly.
      --> The object account.invoice no longer exists.
      In the same fashion when creating an invoice line, you're now adding journal items directly in the journal entry representing the invoice. If this invoice line has some tax, it may create additional journal items as well.
      --> The models account.invoice.line & account.invoice.tax no longer exist
      
      Identically, when creating a sale/purchase receipt with its lines, you are now creating a journal entry directly and there's no more usability difference between encoding a receipt or an invoice.
      --> The object account.voucher no longer exists.
      --> The object account.voucher.line no longer exists.
      --> The whole account_voucher module no longer exists.
      
      Positive side-effects coming from these changes are
      * draft invoices/bills/sale or purchase receipts now create a draft accounting entry. Validate these objects now simply post its journal entry. That means that draft invoices/bills/sale or purchase receipt can straightforwardly be included in reporting or budgets.
      * opening a journal entry in form view will now always open the correct view: if it's a sale/purchase journal entry we will have a customer invoice/vendor bill view or a sale/purchase receipt view, whatever the menu we're coming from.
      * code & business logic simplification. It is also condensed in a single place instead of being partially duplicated on invoices, vouchers and journal entries.
      
      There should be no feature loss, except the one allowing to group multiple journal items together based on the same product during the invoice validation.
      
      ==== Changes made in models =====
      * account.invoice: model removed. Instead, now use account.move with following mapping
      
      field (account.invoice) 		field (account.move)
      -----------------------			--------------------
      name 					invoice_payment_ref
      number 					name
      reference 				ref
      comment 				narration
      user_id 				invoice_user_id
      amount_					total_company_signed amount_total_signed
      residual 				amount_residual
      state 					state + invoice_payment_state 		/!\ selection changed
      date_invoice 				invoice_date
      date_due 				invoice_date_due
      sent 					invoice_sent
      origin 					invoice_origin
      payment_term_id 			invoice_payment_term_id
      partner_bank_id 			invoice_partner_bank_id
      incoterm_id 				invoice_incoterm_id
      vendor_bill_id 				invoice_vendor_bill_id
      source_email 				invoice_source_email
      vendor_display_name 			invoice_vendor_display_name
      invoice_icon 				invoice_vendor_icon
      cash_rounding_id 			invoice_cash_rounding_id
      sequence_number_next 			invoice_sequence_number_next
      sequence_number_next_prefix 		invoice_sequence_number_next_prefix
      
      'invoices' subset of account.move can be accessed by using the selection field 'type' or one of the many helpers like is_invoice()
      
      * account.move: now has a valid state 'cancel' that has to be excluded from all business logic
      * account.move: field 'amount' renamed into 'amount_total'
      * account.move: field 'reverse_entry_id' renamed into 'reversed_entry_id'
      * account.move.line: now has a field 'display_type' that has to be excluded from all business logic, in order to support invoice layouting
      * account.invoice.line: model removed. Instead, now use account.move.line with following mapping
      
      field (account.invoice.line) 		field (account.move.line)
      ----------------------------		-------------------------
      invoice_id 				move_id
      uom_id 					product_uom_id
      invoice_line_tax_ids 			tax_ids
      account_analytic_id 			analytic_account_id
      
      'invoice lines' subset of all account.move.line from a journal entry can be accessed by using the boolean field 'exclude_from_invoice_tab'
      
      * account.invoice.tax: model removed. Instead, now use account.move.line with following mapping
      
      field (account.invoice.tax) 		field (account.move.line)
      ---------------------------		-------------------------
      invoice_id 				move_id
      account_analytic_id 			analytic_account_id
      amount 					price_unit
      base 					tax_base_amount
      
      'tax lines' subset of all account.move.line from a journal entry can be accessed by using the relational field 'tax_line_id'
      
      * account.invoice.confirm: model removed. Instead, now use the 'post()' function of account.move
      * account.invoice.refund: model removed. Instead, now use account.move.reversal to reverse the entries with the same options as we had for invoices
      * account.voucher: model removed. Instead, now use account.move of type in ['out_receipt', 'in_receipt]
      * account.voucher.line: model removed. Instead, now use account.move.line
      
      ==== Changes made in functions ====
      * on account.move, method _run_post_draft_to_post() renamed into _autopost_draft_entries()
      * on account.move, method action_account_invoice_payment() renamed into action_invoice_register_payment()
      * on account.move, method action_invoice_reconcile_to_check() renamed into action_open_matching_suspense_moves()
      * on account.move, method _get_domain_edition_mode_available() renamed into _get_domain_matching_supsense_moves()
      * on account.move, method _get_intrastat_country_id() renamed into _get_invoice_intrastat_country_id()
      * on account.move.line, method _get_domain_for_edition_mode() renamed into _get_suspense_moves_domain()
      * in account.bank.statement, contextual key 'edition_mode' renamed into 'suspense_moves_mode'
      
      Was task 1917430
      bc131c0c
  23. May 22, 2019
    • Hardik Prajapati's avatar
      [IMP] l10n_ae: Added taxes, COA and Fiscal position · 086b9ad8
      Hardik Prajapati authored
      
      - On the invoice pdf, if the invoice is in USD, we
      need to specify conversion rate and amounts in AED.
      Also, if it is between certain Gulf states, you need
      to mention this on the invoice.   'Invoice' also
      needs to replaced with 'Tax Invoice'.
      - Taxes changed to 0% and 5% / AED symbol on currency
      adapted to the real situation of UAE.
      - A tax by state automatically adapted with the fiscal
      positions in order to have the tax amounts correctly
      split by state in the tax report.
      
      opw-1931322
      
      closes odoo/odoo#33385
      
      Signed-off-by: default avatarCedric Snauwaert (csn) <csn@openerp.com>
      086b9ad8
  24. Feb 28, 2019
  25. Feb 08, 2019
  26. Sep 18, 2018
  27. Aug 16, 2018
  28. Aug 06, 2018
  29. May 23, 2018
  30. Feb 14, 2018
  31. Jan 09, 2018
  32. Dec 19, 2017
    • Martin Trigaux's avatar
      [I18N] es_ cleaning translations · 4af12acc
      Martin Trigaux authored
      The regional variations are not published on Transifex and hsould be translated
      manually.
      
      The translations are mainly from previous versions or contains buggy fuzzy
      translations (not matching the real source string).
      
      Clean based on the .pot and delete the empty files
      
      Fixes #21733
      4af12acc
  33. Nov 07, 2017
  34. Sep 24, 2017
  35. Aug 28, 2017
  36. Aug 14, 2017
    • ODOO's avatar
      [I18N] remove es_DO translations · aaa70fb4
      ODOO authored
      Dominican team is focused on Transifex traductions using es.po,
      as es_DO.po has a lot of issues in the website and reviewed strings
      with wrong wording and mixing english and spanish. From now on
      Dominican Republic will inherit es.po and just make specific changes
      on github just in the needed words or setences that change base on
      region.
      
      Closes #18834
      aaa70fb4
  37. Jun 26, 2017
  38. Mar 12, 2017
  39. Jan 22, 2017
Loading