تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
1 الرد
3088 أدوات العرض

Hi everyone.


I'm trying to do a server action that call another server action but with different model.


The model of my first action is purchase.order, which contains the lines of code 


    stock_landed_cost_line = record.env['stock.landed.cost.lines'].create(
    {
    'cost_id': stock_landed_cost_id.id,
    'product_id': 7,
    'account_id': 366,
    'split_method': 'by_current_cost_price',
    'price_unit': abs(price_landed_cost)
    })

    action = { "type": "ir.actions.server", "id": 640, "model_id": 426, }


My second server action has the id = 640 and the model of this one is stock.landed.cost, it's simple and the line of code is


record.compute_landed_cost()


At the moment that I trigger the first action, the next error appears:


AttributeError: 'NoneType' object has no attribute 'compute_landed_cost'


Am I doing something wrong? What is the appropriate way to trigger one server action from another server action?


Thanks for your help!

الصورة الرمزية
إهمال
أفضل إجابة

Hi,

Instead of calling another server action, if it has only single line of code, can you directly call it here.

Instead of this line:   action = { "type": "ir.actions.server", "id": 640, "model_id": 426, }  , you can make a call like this:   stock_landed_cost_id.compute_landed_cost()


Thanks

الصورة الرمزية
إهمال
الكاتب

It works! Thank you!

المنشورات ذات الصلة الردود أدوات العرض النشاط
0
سبتمبر 24
634
0
مايو 24
26
1
أبريل 24
3878
0
مارس 24
1031
0
مارس 24
1202