Skip to content
Snippets Groups Projects
  1. Aug 26, 2021
    • Tiffany Chang (tic)'s avatar
      [IMP] mrp(_account): include byproduct cost share in BoM/MO · fd527602
      Tiffany Chang (tic) authored
      For improved cost analysis, byproducts can now have a "cost share" (out
      of 100%) indicated. This cost share will by multiplied by the total BoM
      cost (i.e. components + operations costs) and reflected in the stock
      valuation. The final product will also have the byproducts cost
      subtracted from its final stock valuation. This is of course only
      applies when costing methods are appropriate (i.e. non-standard price).
      
      Additionally, we can now "Compute Price from BoM" for byproducts (via
      its product form) and the BoMs that it is a byproduct of are now counted
      towards its # BoMs smart button (we will now also see these BoMs when
      clicking on the smart button). Of course when there is no cost share for
      byproducts then clicking on "Compute Price for BoM" will not change the
      a byproduct's cost and if there are multiple BoMs the prodcut is a
      byproduct of, the calculation will only be based on the first BoM it
      finds (i.e. same as current logic for manufactured products).
      
      BoM Cost report has been updated to include byproducts with cost shares
      (byproducts with cost share = 0 will not show up in report).
      Additionally we update the report to display operations only costs now
      that BoMs are allowed to have no components in them.
      
      Part 1 of Task: 2440068
      Upgrade PR: odoo/upgrade#2727
      Related ENT PR: odoo/enterprise#20169
      
      Part-of: odoo/odoo#74951
      fd527602
    • Tiffany Chang (tic)'s avatar
      [IMP] mrp: store wo hourly cost · 85817009
      Tiffany Chang (tic) authored
      This commit adds a new field to work orders to store the hourly cost of
      its work center at the time of its completion. This is to avoid
      inconsistent cost calculations when a work center's hourly cost is
      changed after the WO is completed.
      
      Part 2 (fix) of task: 2440068
      Enterprise PR: odoo/enterprise#20169
      Upgrade PR: odoo/upgrade#2727
      
      Part-of: odoo/odoo#74951
      85817009
    • Tiffany Chang (tic)'s avatar
      [IMP] mrp(_account): customize measures for MO graph/pivot · b2548814
      Tiffany Chang (tic) authored
      Hide useless measures:
      - "Backorder Sequence"
      - "Extra Cost"
      - "Quantity to Produce" (same as "Total Quantity", but not standardized
        to product's UoM)
      
      Renames confusingly named measures:
      - "Quantity Producing" => "Quantity Produced" (i.e. amount actually
        produced)
      - "Total Quantity" => "Product Quantity" (i.e. amount scheduled to be
        produced in product's UoM)
      
      Part 3.1 of task: 2440068
      Related ENT PR: odoo/enterprise#20169
      
      Part-of: odoo/odoo#74951
      b2548814
    • jbw's avatar
      [IMP] account, sale, purchase: accrued entries from purchase & sales orders. · 064edb22
      jbw authored
      
      Accrued liabilities, or accrued expenses, occur when you incur an expense that you haven’t been billed for (aka a debt).
      For example, you receive a good now and pay for it later (e.g., when you receive the invoice). The same opposite approach for sales.
      
      Why do accountants need such entries ?
      - Accounting must give a fair view of the financial situation of a company. The loss/profit must be booked regarding the effective deliveries of goods/services, not on the paperwork only.
      - On a fiscal point of view, if you want to be allowed to deduct a loss from your taxable basis, it has to be in the right period. If you didn't announce it on time, the loss might be rejected by fiscal authorities. Same goes for the augmentation of the taxable basis, it has to reflect real deliveries and not only paperwork.
      
      was Task: 2555642
      was PR #73707
      
      Signed-off-by: default avatarQuentin De Paoli (qdp) <qdp@openerp.com>
      064edb22
    • William Henrotin's avatar
      [FIX] purchase_stock: check if picking_type has a warehouse · 19673b5c
      William Henrotin authored
      
      Commit 643e093a adds a security on
      orderpoints triggering purchase orders. But this new check fails in case
      the picking type on the purchase order is not linked to a warehouse (e.g
      in a subcontracting flow).
      
      This commit ensure the check is done only if we have a warehouse linked
      to the purchase order.
      
      closes odoo/odoo#75619
      
      Opw: 2631979
      X-original-commit: 8343ce44
      Signed-off-by: default avatarWilliam Henrotin <Whenrow@users.noreply.github.com>
      19673b5c
    • Sébastien Mottet (oms)'s avatar
      [IMP] website: add saas version in calls to website.api.odoo.com · 23915c71
      Sébastien Mottet (oms) authored
      
      The saas version of the client is added in each call to
      website.api.odoo.com. This allows the server to return
      different results based on the client's saas version
      
      task-2602521
      
      closes odoo/odoo#75617
      
      X-original-commit: 6e1ae856584048912cb5eaf53c0aa027b2342b5c
      Signed-off-by: default avatarSébastien Mottet <smottet@users.noreply.github.com>
      Signed-off-by: default avatarJérémy Kersten (jke) <jke@openerp.com>
      23915c71
    • qsm-odoo's avatar
      [FIX] web_editor: review snippet drag and drop technical flow · ea108e39
      qsm-odoo authored
      This commit completes [1] by further reviewing the drag and drop
      technical flow order:
      
      - The content_changed event should be triggered before starting snippets
        as well as it is only useful to signal the snippet modifications made
        by onBuilt.
      
      - The undroppable snippets update which was done first could probably be
        done anywhere -> best to put it at the end when everything in the DOM
        is done, and it is also the last thing the user expects to be done.
      
      Note: in the new editor the role of 'content_changed' became however
      unclear and should be further reviewed. This commit fixes problems with
      the old flow in master though (problems around removing items in a
      snippet during its onBuilt call).
      
      [1]: https://github.com/odoo/odoo/commit/60d7bf6d7daea83db9332b4fc47a4ac6892d21d7
      
      
      
      closes odoo/odoo#75596
      
      X-original-commit: efdfe261afd933972869305fd3358c764f7c18c3
      Signed-off-by: default avatarQuentin Smetz (qsm) <qsm@odoo.com>
      ea108e39
    • Romain Derie's avatar
      [REM] base: remove dead code · 5afd3b99
      Romain Derie authored
      
      This code was no more called, as there is the same-ish condition a few lines
      above:
      ```
      if (tools.config['test_enable'] or tools.config['test_file']) ...:
      ```
      
      Moreover, that code was wrong and was crashing if you remove the first if
      condition to test that code, as the method is expected to return a tuple.
      It would just raise a traceback
      ```
      too many values to unpack (expected 2)
      ```
      
      Part of #75377
      
      Related: odoo/enterprise#20449
      Signed-off-by: default avatarRomain Derie <rdeodoo@users.noreply.github.com>
      5afd3b99
    • Romain Derie's avatar
      [FIX] base, mail: `_render_qweb_pdf` should return a bytes-like object · 88b19cfa
      Romain Derie authored
      `result` might be a Markup object (eg during tests) or a bytes-like object.
      
      Step to reproduce: click on "Send by Mail" on a SO -> Traceback
      
      Step to reproduce (2):
      - Install website_sale
      - Add something to the cart
      - Go through checkout and click on Pay Now
      - Crash, 500 error page, as this step is trying to generate the SO PDF to send
        by mail to the customer, which tries to encode a bytes-like object.
      
      ```
      AttributeError: 'bytes' object has no attribute 'encode'
      ```
      
      But if you do that flow during a test, eg
      ```
      ./odoo-bin -d mydb --test-tags=.test_02_admin_checkout
      ```
      You have a Markup object, thus you had to encode it.
      
      Now, even during test, we return a bytes-like object.
      
      Related to #68299
      
      Community: https://github.com/odoo/odoo/pull/75377
      Enterprise: https://github.com/odoo/enterprise/pull/20449
      Part-of: odoo/odoo#75377
      88b19cfa
    • Jeremy Kersten's avatar
      [FIX] website_sale_delivery_mondialrelay: avoid crash when wrong zip · f868299d
      Jeremy Kersten authored
      
      Actual widget is bugged in case your type a wrong zip code.
      This commit avoid (by ugly way) the exception to be raised to the end user.
      It is temporary and should be reverted once Mondial Relay fixes his bug.
      It is why we merge it in a second commit to be easily reverted.
      
      closes odoo/odoo#75281
      
      Signed-off-by: default avatarRomain Derie <rdeodoo@users.noreply.github.com>
      f868299d
    • Jeremy Kersten's avatar
      [ADD] (website_sale_)delivery_mondialrelay: allow to use MondialRelay · e9a33a43
      Jeremy Kersten authored
      This commit let you choose a Point Relais® as your shipping address.
      It instantiates the Widget only.
      It will not handle the print label.
      
      Part-of: odoo/odoo#75281
      e9a33a43
    • Xavier-Do's avatar
      [FIX] base: add missing nodeattr in ormcache keys · bd851a24
      Xavier-Do authored
      
      No real bug was found regarding this issue but it looks
      like `nodeAttrs and nodeAttrs.get("media")` was missing from
      `ormcache_context` since it is used to generate the output.
      
      closes odoo/odoo#75248
      
      Signed-off-by: default avatarXavier Dollé (xdo) <xdo@odoo.com>
      bd851a24
    • Xavier-Do's avatar
      [FIX] base: remove options parameters · fdaee845
      Xavier-Do authored
      Regarding previous commit, the option parameter can be removed
      from _get_asset_content api, followed by a nice snowball effect.
      
      Part-of: odoo/odoo#75248
      fdaee845
    • Xavier-Do's avatar
      [IMP] base: remove dead code · 2921f600
      Xavier-Do authored
      options are not used anymore since 8cc06617
      
      This was discovered by @d-fence
      
      Part-of: odoo/odoo#75248
      2921f600
    • Arnaud Joset's avatar
      [IMP] calendar,google_calendar,microsoft_calendar: allow to create events with... · b19dc634
      Arnaud Joset authored
      [IMP] calendar,google_calendar,microsoft_calendar: allow to create events with non-default attendee state
      
      Before this commit, it was not possible to create events with defined attendee state. The default value was always set.
      This was a limitation when the events were part of a recurrence and all events attendee needed to be created with a known state.
      
      To reproduce, one would create a recurrent event, sync it with Google and in Google, 'decline' this event and the following.
      The attendee state was not properly set.
      
      closes odoo/odoo#68700
      
      Taskid: 2484335
      Related: odoo/upgrade#2537
      Signed-off-by: default avatarYannick Tivisse (yti) <yti@odoo.com>
      b19dc634
    • Arnaud Joset's avatar
      [IMP] microsoft_calendar: apply the google_calendar improvements into this module · f7d16b45
      Arnaud Joset authored
      Several imrovements have been made in google_calendar that affets the efficiency of the sync and the validity of the synched data
      This commit apply the more relevant modifications to this module.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      f7d16b45
    • Arnaud Joset's avatar
      [IMP] calendar,google_calendar,microsoft_calendar: Improve UI · 40fd44f6
      Arnaud Joset authored
      Before this commit, the calendar UX was not good enough. The look and feel was not modern.
      This commit improves a lot of small details, remove unneeded or not mature features (like the videocall location url).
      
      Counted recurrence now brings a better experience. When weekly or montly recurrences are created, occurences in the past are dismissed but before this commit their number was not adapted.
      User would end up with less occurences than the provided number without explanations.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      40fd44f6
    • Arnaud Joset's avatar
      [IMP] google_calendar: move credentials from res_user table to a dedicated table · 24c2d7e9
      Arnaud Joset authored
      Before this commit, several token related data were stored on the res_users table. During event sync, the table could be locked and this commit aims to move these data to a dedicated table to avoid bottleneck effets.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      24c2d7e9
    • Arnaud Joset's avatar
      [FIX] calendar: allow to copy event without messing with attendees · 415d49f3
      Arnaud Joset authored
      Before this commit, when an event was duplicated, the attendee records were shared between copies. Accepting an event in one event would set the same answer on the other.
      After this commit, the attendee records are recreated based on the partner and attendee status are reset.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      415d49f3
    • Arnaud Joset's avatar
      [IMP] calendar,google_calendar,microsoft_calendar: change sync button and attendee status · 966d0fae
      Arnaud Joset authored
      UI changes:
       * Improve the sync buttons. Before this commit, the buttons would be defined in JS and take more place.
       * Improve the FieldMany2ManyTagsAvatar widget.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      966d0fae
    • Arnaud Joset's avatar
      [IMP] web: improve calendar view · 57dbfff2
      Arnaud Joset authored
      Before this commit, the calendar filter was a little bit limited: you could add filters to only display events related to these filtered records or display all events.
      If you wanted to select all active filters, we had to check all these individual filter.
      This commit introduce the possibility to select all existing filter at once or to unselect them. It is quite convenient when a lot of filter are displayed but unchecked.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      57dbfff2
    • Arnaud Joset's avatar
      [IMP] calendar,google_calendar,google_calendar: allow modifying all event in recurrence · bb9f21d9
      Arnaud Joset authored
      Before this commit, it was not possible to reapply all events in recurrence, delete all events of a recurrence or archive them.
      This commit remove that limitation by reapplying the recurrence and remove all the existing events. When the events are synched, the action_mass_archive is used and it must ensure that only a request for the recurrency should be sent.
      Individual request for each event are not sent.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      bb9f21d9
    • Arnaud Joset's avatar
      [IMP] calendar: allow to display all fields of private events for attendees · 3466ccfe
      Arnaud Joset authored
      Before this commit, attendees were not able to see private event information.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      3466ccfe
    • Arnaud Joset's avatar
      [IMP] calendar: prevent usererror when grouping by private fields. · 9f53946c
      Arnaud Joset authored
      Before this commit, read_group with private fields would automatically raise an user error, preventing the action.
      This commit filter out the private records that the user should not access and display the public ones according to the current user.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      9f53946c
    • Arnaud Joset's avatar
      [IMP] calendar: rename calendar.contacts model · 24a36c6c
      Arnaud Joset authored
      Before this commit, the 'magic' model calendar.contacts name was misleading. This model is only used to save calendar view preferences in the calendar app.
      As the calendar events are already mentionning attendees, partners, users, the 'contact' name for a technical field was confusing.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      24a36c6c
    • Arnaud Joset's avatar
      [MOV] calendar: rename calendar_contact to calendar_filter · 8cb96696
      Arnaud Joset authored
      Before this commit, the model calendar.contacts was only used for UI purpose and could easily be confused with calendar.attendee or partner_ids.
      
      Taskid: 2484335
      Part-of: odoo/odoo#68700
      8cb96696
  2. Aug 25, 2021
    • Odoo's Mergebot's avatar
      [MERGE] crm_iap_*: rename and reorder modules · 74101efa
      Odoo's Mergebot authored
      
      PURPOSE
      
      Perform a global renaming / cleaning of IAP features often added or merged
      with minimal review. Time to cleanup !
      
      SPECIFICATIONS
      
      Rename ``crm_iap_lead_enrich`` to ``crm_iap_enrich`` . Lead naming is not
      really required as it is a bridge build on ``crm``.
      
      Rename ``crm_iap_lead_website`` to ``website_crm_iap_reveal``. This module
      is an addition to ``website_crm``, notably using visitor based information
      to generate leads based on rules.
      
      Rename ``crm_iap_lead`` to ``crm_iap_mine`` . Indeed it adds lead mining
      feature on top of crm.
      
      Reorganize addons according to guidelines, notably: split python, views and
      data files, rename them according to their content. Globally rename and lint
      main code bits.
      
      Add some tests for lead mining and reveal. Provide some light fixes spotted
      during code reading.
      
      No functional change should occur with this merge. It contains only code
      move and renaming.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      
      closes odoo/odoo#75514
      
      Related: odoo/enterprise#20424
      Related: odoo/upgrade#2770
      Signed-off-by: default avatarThibault Delavallee (tde) <tde@openerp.com>
      74101efa
    • Qiuyu (QHO)'s avatar
      [IMP] mail, im_livechat: improve Discuss sidebar · 463af6f6
      Qiuyu (QHO) authored
      
      The commit is to refactor the discuss sidebar
      
       - threads are now organized in categories based on the thread type e.g. chat, channel
       - categories can be folded or unfolded by clicking the category title
       - for active thread, even if the category is folded, it remains under the category title
       - for channel category, a new cog button is added to view all channels
       - the active indicator bar is removed. The active item now is highlighted with a different background color
       - thread avatar is used for livechat, chat and channel
       - for livechat and chat, threads are now sorted by last activity time (pin or message exchange)
      
      closes odoo/odoo#70986
      
      Task-id: 2440073
      Signed-off-by: default avatarSébastien Theys (seb) <seb@odoo.com>
      463af6f6
    • Thibault Delavallée's avatar
      [FIX] crm_iap_mine: stop refining builtins · 1644c3d8
      Thibault Delavallée authored
      Help is a keyword. We may use something else.
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      1644c3d8
    • Thibault Delavallée's avatar
      [FIX] website_crm_iap_reveal: fix potential loops if iap result is broken · 5f24dccd
      Thibault Delavallée authored
      Currently if output from IAP does not hold 'no_result' for each failed
      IP address we may end up with a loop. This commit ensures that a void
      result for an ip correctly set its views as no_result to avoid endless
      loops.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      5f24dccd
    • Thibault Delavallée's avatar
      [IMP] website_crm_iap_reveal: add tests for reveal · f66d4872
      Thibault Delavallée authored
      Purpose of this commit is to add some tests related to lead generation through
      reveal and website. We add tests checking IAP response management and lead
      creation. We introduce a mock for IAP reveal calls, as well as some tool data
      generation methods in base IAP mock class available in iap_crm.
      
      We also add some tests for corner cases (credit issue, no result, exception
      during call) in order to improve coverage.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      ENT PR odoo/enterprise#20424
      UPG PR odoo/upgrade#2770
      f66d4872
    • Thibault Delavallée's avatar
      [IMP] iap, crm_iap_mine: add tests for mine · 5f07a52a
      Thibault Delavallée authored
      Purpose of this commit is to add some tests related to mine request. We add
      tests checking IAP response management and lead creation. We introduce a
      mock for IAP mine calls, as well as some tool data generation methods in
      base IAP mock class available in iap_crm.
      
      We also add some tests for corner cases (credit issue, no result, exception
      during call) in order to improve coverage.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      ENT PR odoo/enterprise#20424
      UPG PR odoo/upgrade#2770
      5f07a52a
    • Thibault Delavallée's avatar
      [MOV] website_crm: reorganize and guidelinize addon · df824e0a
      Thibault Delavallée authored
      PURPOSE
      
      Perform a global renaming / cleaning of IAP features often added or merged
      with minimal review. Time to cleanup !
      
      SPECIFICATIONS
      
      Reorganize module according to guidelines. Notably correctly name files,
      split python fiels and views according to their model, split some data
      to ease module organization and understanding.
      
      Perform some code re-ordering in some big files in order to have code clearly
      separated by main usage and ease future changes.
      
      Quickly lint or update some view names.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      ENT PR odoo/enterprise#20424
      UPG PR odoo/upgrade#2770
      df824e0a
    • Thibault Delavallée's avatar
      [MOV] website_crm_iap_reveal: reorganize and guidelinize addon · fd86521e
      Thibault Delavallée authored
      PURPOSE
      
      Perform a global renaming / cleaning of IAP features often added or merged
      with minimal review. Time to cleanup !
      
      SPECIFICATIONS
      
      Reorganize module according to guidelines. Notably correctly name files,
      split python fiels and views according to their model, split some data
      to ease module organization and understanding.
      
      Perform some code re-ordering in some big files in order to have code clearly
      separated by main usage and ease future changes.
      
      Quickly lint or update some view names.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      ENT PR odoo/enterprise#20424
      UPG PR odoo/upgrade#2770
      fd86521e
    • Thibault Delavallée's avatar
      [MOV] crm_iap_mine: reorganize and guidelinize addon · 7951870b
      Thibault Delavallée authored
      PURPOSE
      
      Perform a global renaming / cleaning of IAP features often added or merged
      with minimal review. Time to cleanup !
      
      SPECIFICATIONS
      
      Reorganize module according to guidelines. Notably correctly name files,
      split python fiels and views according to their model, split some data
      to ease module organization and understanding.
      
      Perform some code re-ordering in some big files in order to have code clearly
      separated by main usage and ease future changes.
      
      Quickly lint or update some view or record names.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      ENT PR odoo/enterprise#20424
      UPG PR odoo/upgrade#2770
      7951870b
    • Thibault Delavallée's avatar
      [MOV] website_crm_iap_reveal: rename ``crm_iap_lead_website`` module · 528880aa
      Thibault Delavallée authored
      PURPOSE
      
      Perform a global renaming / cleaning of IAP features often added or merged
      with minimal review. Time to cleanup !
      
      SPECIFICATIONS
      
      Rename ``crm_iap_lead_website`` to ``website_crm_iap_reveal``. This module
      is an addition to ``website_crm``, notably using visitor based information
      to generate leads based on rules.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      ENT PR odoo/enterprise#20424
      UPG PR odoo/upgrade#2770
      528880aa
    • Thibault Delavallée's avatar
      [MOV] crm_iap_mine: rename ``crm_iap_lead`` module · 8eacdca9
      Thibault Delavallée authored
      PURPOSE
      
      Perform a global renaming / cleaning of IAP features often added or merged
      with minimal review. Time to cleanup !
      
      SPECIFICATIONS
      
      Rename ``crm_iap_lead`` to ``crm_iap_mine`` . Indeed it adds lead mining
      feature on top of crm.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      ENT PR odoo/enterprise#20424
      UPG PR odoo/upgrade#2770
      8eacdca9
    • Thibault Delavallée's avatar
      [MOV] crm_iap_enrich: rename ``crm_iap_lead_enrich`` module · 98d2f445
      Thibault Delavallée authored
      PURPOSE
      
      Perform a global renaming / cleaning of IAP features often added or merged
      with minimal review. Time to cleanup !
      
      SPECIFICATIONS
      
      Rename ``crm_iap_lead_enrich`` to ``crm_iap_enrich`` . Lead naming is not
      really required as it is a bridge build on ``crm``.
      
      LINKS
      
      Task-2630969
      Prepares Task-2600047 (code improvements and cleaning)
      COM PR odoo/odoo#75514
      ENT PR odoo/enterprise#20424
      UPG PR odoo/upgrade#2770
      98d2f445
  3. Jul 29, 2021
  4. Aug 25, 2021
Loading