コンテンツへスキップ
メニュー
この質問にフラグが付けられました
3 返信
4588 ビュー

Hello Odoo Community,
I got a issue i was trying to return the results, the strange thing is on the log i can see corrent value Result 58.77 but if i add return the same value it get

new_values = dict(values)

ValueError: dictionary update sequence element #0 has length 1; 2 is required

If i add        

return {'distance':("%.2f" % round(distance,2))}

I get error:

vals[f] = res2[vals['id']]

KeyError: 276


My code:

class launch_map(osv.osv):

_inherit = "res.partner" 

def open_map2(self, cr, uid, ids, R, lat1, lon1, context=None):

R = 3961.0

partner = self.browse(cr, uid, ids[0], context=context)

lat2 = radians(partner.partner_latitude)

lon2 = radians(partner.partner_longitude)

lat1 = radians(51.749204)

lon1 = radians(-1.258504)

dlon = lon2 - lon1

dlat = lat2 - lat1

a = (sin(dlat/2))**2 + cos(lat1) * cos(lat2) * (sin(dlon/2))**2

c = 2 * atan2(sqrt(a), sqrt(1-a))

distance = R * c

print partner.partner_latitude

print partner.partner_longitude

print "Result", distance

print ("%.2f" % round(distance,2))

return ("%.2f" % round(distance,2))


Any examples and assistance would be appreaciated

Thank you,

アバター
破棄

could you please provide the field defined also?

I think the call to the method you have defined is coming from the functional field. If yes, then from your functional field, please remove the attribute 'multi'.

著作者 最善の回答

Nvm Solved it

アバター
破棄
関連投稿 返信 ビュー 活動
2
4月 23
9922
0
8月 16
4153
2
8月 16
2882
1
7月 25
363
0
7月 25
401