Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
1 Odpowiedz
4992 Widoki

I am trying to calculate comission for salesperson.
Calculation:
If current sales amount is greater than the previous sales amount for the same customer:
then comission=0.50*amount_total
else:
comission = 0.0

But i am missing something, not getting exact results. please guide.

def _calculate_comission(self, cr, uid, ids, field_names, args, context=None):
    res={}
    comission=0.00

    for order in self.browse(cr, uid, ids):
        for record in self.browse(cr, uid, self.search(cr, uid, [('user_id','=',order.user_id.id)], limit=1)):
            if order.amount_total > record.amount_total:
                comission = 0.50*order.amount_total
Awatar
Odrzuć
Najlepsza odpowiedź

Hi, Try this...

def _comission_calculate(self, cr, uid, ids, context=None):
        if ids[0]==1:
            return False
        else:
            comission=0.00
            result= cr.execute('select id from dbname where id<%s order by id desc limit 1', (ids[0],))
            result = cr.dictfetchall()
            previous_id = result[0]['id']
            previous = self.browse(cr, uid, previous_id)
            previous_amount = previous.total
            for current in self.browse(cr, uid, ids):
                current_amount = current.total
            if current_amount > previous_amount:
                comission = 0.50 * current_amount
        return comission
Awatar
Odrzuć
Powiązane posty Odpowiedzi Widoki Czynność
2
lip 20
11301
0
sie 16
3111
4
sie 24
1201
1
kwi 24
3613
0
sty 24
69