Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
2 Odpovědi
3990 Zobrazení

Hi, Odoo cannot generate a CRM opportunity automatically when a sales quotation is generate?  I saw a thread here about developer mode (which we activated) but I cannot see how to do this.  Thank you.  


Thank you.  

Avatar
Zrušit
Nejlepší odpověď

Hi,


In Odoo, you can generate a CRM opportunity automatically when a sales quotation is created by using the 'sale.order' model's 'create' method and the 'crm.lead' model.Here is an example of a new function that creates a CRM opportunity when a sales quotation is created:


class SaleOrder(models.Model):

    _inherit = 'sale.order'


    @api.model

    def create(self, vals):

        # Create a new opportunity

        opportunity = self.env['crm.lead'].create({

            'name': vals.get('name', ''),

            'partner_id': vals.get('partner_id', False),

        })

        # Link the opportunity to the quotation

        vals['opportunity_id'] = opportunity.id

        quotation = super(SaleOrder, self).create(vals)

        return quotation

In this example, when a new quotation is created, a new opportunity is created with the name of the quotation and the customer of the quotation. The opportunity is linked to the quotation using the opportunity_id field.



Hope it helps

Avatar
Zrušit
Nejlepší odpověď

Hello Premier Property Management Co. Ltd.

Please find code in comment. 

I hope this will help you.

Thanks & Regards,
Email: odoo@aktivsoftware.com
Skype: kalpeshmaheshwari

Avatar
Zrušit

When you can create a sale order create an opportunity in the order
from "Other Info --> Opportunity" so you can be added exiting lead to link this order,
or create a new one for this sale order.

Or, you can create an automatic opportunity so add the below example.

class SaleOrderInherit(models.Model):
_inherit = 'sale.order'

def create(self, vals)
""" Generate opportunity automatically when order is saved """
res = super(SaleOrderInherit, self).create(vals)
if res.partner_id:
opportunity_id = self.env['crm.lead'].create({
'name': res.name + "Opportunity",
'partner_id': res.partner_id,
})
res.opportunity_id = opportunity_id.id
return res

Autor

Thank you. Is this custom code or standard functionality? We are using Odoo online, and do not want to custom code anything because then we lose support. Thanks. I am in the "Other info" tab of the quote screen, but I cannot see where to link this quote or to create an opportunity.

Related Posts Odpovědi Zobrazení Aktivita
1
čvc 23
2139
1
čvn 23
1775
3
bře 15
10074
0
bře 15
3591
1
bře 15
6733