From bd0304b4095d8163b26fe9fbcd134883729d596d Mon Sep 17 00:00:00 2001 From: bcomsugi Date: Mon, 13 Nov 2023 01:07:45 +0700 Subject: [PATCH] update disc dict --- SO_to_Inv/readSO.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/SO_to_Inv/readSO.py b/SO_to_Inv/readSO.py index eec1c68..336e899 100644 --- a/SO_to_Inv/readSO.py +++ b/SO_to_Inv/readSO.py @@ -288,7 +288,8 @@ class SalesOrderQuery: if len(SalesOrderLineRet) > 0: disc_amount=0 for SalesOrderLineRet in SalesOrderLineRet: - disc = 0 + discPerItem = 0 + discPerPcs = 0 TxnLineID = SalesOrderLineRet.find('TxnLineID').text ItemFullName = SalesOrderLineRet.find('ItemRef/FullName') if ItemFullName is None: @@ -312,11 +313,13 @@ class SalesOrderQuery: BackOrdered = float(Quantity) - float(Invoiced) if BackOrdered and LineIsManuallyClosed.lower() == 'false' : if self.Customer[2]: - disc = Rate-self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.Customer[2])].values.tolist()[0][2] + discPerPcs = Rate-self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.Customer[2])].values.tolist()[0][2] # ic(Rate, disc, (Rate - self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.SPPriceLevelName)].values.tolist()[0][2])) - if disc > 0: + if discPerPcs > 0: ic(Quantity, BackOrdered, Rate, (Rate - self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.Customer[2])].values.tolist()[0][2])) - disc_amount += BackOrdered * disc # (Rate-self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.Customer[2])].values.tolist()[0][2]) + discPerItem = BackOrdered * discPerPcs + disc_amount += discPerItem + # disc_amount += BackOrdered * discPerPcs # (Rate-self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.Customer[2])].values.tolist()[0][2]) # disc_amount += BackOrdered * 2500#(Rate-self._df_price_level.loc[(self._df_price_level['FullName']==ItemFullName) & (self._df_price_level['PriceLevelName']==self.Customer[2])].values.tolist()[0][2]) SalesOrderLinedict = {'TxnLineID':TxnLineID, @@ -328,7 +331,7 @@ class SalesOrderQuery: 'BackOrdered':BackOrdered, 'Invoiced':Invoiced, 'LineIsManuallyClosed':LineIsManuallyClosed, - 'disc':disc, + 'disc':discPerItem, # backorder qty * disc per pcs } SalesOrderdict['SalesOrderLineRet'].append(SalesOrderLinedict) SalesOrderdict['Disc_Amount']=disc_amount