跳至內容
選單
此問題已被標幟
1 回覆
2134 瀏覽次數

I have the following code:


def action_adjust_amount_currency(self):
for rec in self:
if rec.manual_currency_rate_active==True:
rec.line_ids.debit=rec.line_ids.debit*rec.manual_currency_rate
rec.line_ids.credit=rec.line_ids.credit*rec.manual_currency_rate

else:
return False

I am having this error: 


ValueError: Expected singleton: account.move.line(111717, 111718, 111719)


How can I fix it?


頭像
捨棄
最佳答案

Hi,

The error you are seeing occurs when you try to access an attribute of a collection of objects (in this case rec.line_ids) as if it were a single object.

To fix this error, you need to iterate over the line_ids collection and set the debit and credit attributes for each object in the collection.

Here's an example of how you could modify your code to do this:

def action_adjust_amount_currency(self):
for rec in self:
if rec.manual_currency_rate_active==True:
for line in rec.line_ids:
line.debit = line.debit * rec.manual_currency_rate
line.credit = line.credit * rec.manual_currency_rate
else:
return False

Regards

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
4
2月 24
4688
1
11月 22
2186
2
6月 25
2104
1
3月 25
1773
0
12月 24
1055