Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FW][FIX] crm: resolve NewId error linking opportunity to contact via studio #159565

Conversation

fw-bot
Copy link
Contributor

@fw-bot fw-bot commented Mar 27, 2024

Issue:

  • When adding opportunity/lead to a contact using Studio and attempt to add a line, we encounter the following error:"TypeError: 'NewId' object is not iterable."

Steps To Reproduce:

  • In a contact form open Studio and add a O2M field Customer (Lead/Opportunity)
  • Try to add a line
  • Notice Traceback Error "TypeError: 'NewId' object is not iterable"

Solution:

  • The issue arises in the search domain of return_if_relevant , exactly in ("partner_id", "child_of", lead.partner_id.commercial_partner_id.id) where the type of lead.partner_id.commercial_partner_id.id is NewId since the partner is being edited to add a task. This action triggers the parse and to_ids methods with a value type of NewId. thus the error.
  • The operator child_of expects a list of IDs, and the ids property refer to the record's origin ids. to resolve this, replace commercial_partner_id.id with commercial_partner_id.ids.

opw-3760372


I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr

Forward-Port-Of: #159296

Issue:
    - When adding opportunity/lead to a contact using Studio
     and attempt to add a line, we encounter the following error:
     "TypeError: 'NewId' object is not iterable."

Steps To Reproduce (in 17.0):
    - In a contact form open Studio and add a O2M field
     Customer (Lead/Opportunity)
    - Try to add a line
    - Notice Traceback Error "TypeError: 'NewId' object is not iterable"

Solution:
    - The issue arises in the search domain of
    `return_if_relevant` , exactly in
    ("partner_id", "child_of", lead.partner_id.commercial_partner_id.id)
    where the type of `lead.partner_id.commercial_partner_id.id`
    is NewId since the partner is being edited to add a task.
    This action triggers the `parse` and `to_ids` methods with
    a value type of NewId. thus the error.

    - The operator child_of expects a list of IDs, and the ids
    property refer to the record's origin ids. to resolve this,
    replace `commercial_partner_id.id` with `commercial_partner_id.ids`.

opw-3760372

X-original-commit: 03743a7
@C3POdoo C3POdoo added the OE the report is linked to a support ticket (opw-...) label Mar 27, 2024
@robodoo
Copy link
Contributor

robodoo commented Mar 27, 2024

@fw-bot
Copy link
Contributor Author

fw-bot commented Mar 27, 2024

This PR targets saas-17.2 and is part of the forward-port chain. Further PRs will be created up to master.

More info at https://github.com/odoo/odoo/wiki/Mergebot#forward-port

@robodoo robodoo added the forwardport This PR was created by @fw-bot label Mar 27, 2024
robodoo pushed a commit that referenced this pull request Mar 28, 2024
Issue:
    - When adding opportunity/lead to a contact using Studio
     and attempt to add a line, we encounter the following error:
     "TypeError: 'NewId' object is not iterable."

Steps To Reproduce (in 17.0):
    - In a contact form open Studio and add a O2M field
     Customer (Lead/Opportunity)
    - Try to add a line
    - Notice Traceback Error "TypeError: 'NewId' object is not iterable"

Solution:
    - The issue arises in the search domain of
    `return_if_relevant` , exactly in
    ("partner_id", "child_of", lead.partner_id.commercial_partner_id.id)
    where the type of `lead.partner_id.commercial_partner_id.id`
    is NewId since the partner is being edited to add a task.
    This action triggers the `parse` and `to_ids` methods with
    a value type of NewId. thus the error.

    - The operator child_of expects a list of IDs, and the ids
    property refer to the record's origin ids. to resolve this,
    replace `commercial_partner_id.id` with `commercial_partner_id.ids`.

opw-3760372

closes #159565

X-original-commit: 03743a7
Signed-off-by: Kawtar Drissi El Bouzaidi (kdeb) <kdeb@odoo.com>
@robodoo robodoo closed this Mar 28, 2024
@fw-bot fw-bot deleted the saas-17.2-17.0-OPW-3760372-crm_child_of_search_error-kdeb-rlce-fw branch April 11, 2024 12:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
forwardport This PR was created by @fw-bot OE the report is linked to a support ticket (opw-...)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants