Se rendre au contenu
Menu
Cette question a été signalée

I'm trying to create invoice lines without any luck.

I can correctly create an invoice using the following code with dummy data:

line_id3 = models.execute_kw(db, uid, password,

     'account.move', 'create',

     [{

         "name":"test",

      "date":"2020-09-08",

      "ref":"test",

      "state":"draft",

      "type":"out_invoice",

      "type_name":"Invoice",

      "user_id":2,

      "invoice_payment_state":"paid",

      "invoice_date":"2020-09-08",

      "invoice_date_due":"2020-09-08",

      "partner_id":5072,

      "commercial_partner_id":5072,

}])


From what i understand looking at the database i need to create 3 different Lines, each with different data in it but i don't really understand how it works.

If i try to create it using something like:

line_id1 = models.execute_kw(db, uid, password,

     'account.move.line', 'create',

     [{

         'name': 'test',

        'debit': 1,

        'credit': 0.0,

        'account_id': 27,

         'move_id':14

    }])

I get the following error:

Cannot create unbalanced journal entry. Ids: [14]\nDifferences debit - credit: [1.0]


Has anyone tried creating invoices using xmlrpc and python and can point me in the right direction?

Avatar
Ignorer
Meilleure réponse

You are almost doing it right accept you are using wrong field to pass the price. Since you are creating invoice lines, you should use "price_unit" field instead of credit/debit field.

[{
    'name': 'test',
    'price_unit': 1,
    'account_id': 27,
    'move_id':14
}])



Avatar
Ignorer
Meilleure réponse

Hi,

Pass check_move_validity=False in the context and try.

sample code:

api.execute_kw(db, uid, pwd, 'res.country', 'search_read', [[]], {'fields': ['id', 'name'], 'context' :{'check_move_validity': False}})


Thanks

Avatar
Ignorer
Publications associées Réponses Vues Activité
1
nov. 22
2934
1
oct. 22
2924
1
sept. 15
4354
2
juin 25
284
3
févr. 24
3166