Index: KPRIJSADMIN.mac.rou =================================================================== diff -u -r48147 -r48610 --- KPRIJSADMIN.mac.rou (.../KPRIJSADMIN.mac.rou) (revision 48147) +++ KPRIJSADMIN.mac.rou (.../KPRIJSADMIN.mac.rou) (revision 48610) @@ -90,30 +90,52 @@ Set KlantID = ##class(DOM.DomeinContext).Instance().GeefLegacyPartijAPI().GeefKlantPartijID(KLNr) Set Klant = ##class(DOM.DomeinContext).Instance().GeefVerkoopAPI().GeefKlant(KlantID) Set BusinessType = Klant.GeefBusinessType() - Do KKORTING, CALC + Do KKORTING,CALC // VHIP907: Verkoopprijzen // VHIP907->MVI: voorlopig laat ik alles invullen in fase 2a en overschrijf ik enkel de waarden die ax teruggeeft - New SalesPriceService, Result If $$IsAX(KLNr,PRNr) { + New SalesPriceService, Result,PriceUnit Set SalesPriceService = ##class(AXimpl.Admin.VKP.SalesPriceService).%New() #Dim Result as AXif.Dynamics.SalesPriceIn.MessageParts.ADUSalesPriceLineOutputDC Set Result = SalesPriceService.GeefPrijs(KLNr, PRNr, $S($G(SimPPL):SimPPL,1:"")) - Set VkpEUR = Result.Price - Set VkpPr = VkpEUR Set LijstEUR = Result.GrossPrice - Set LijstPr = LijstEUR + Set PriceUnit=Result.PriceUnit + + If SalesPriceService.PrijzenInclBTW() + { + Set VkpEUR=VkpEUR/1.21 + Set LijstEUR=LijstEUR/1.21 + } + Set VkpPr = $J(VkpEUR,0,2) + Set LijstPr = $J(LijstEUR,0,2) + If Result.PriceUnit>1 + { + Set VkpEUR=VkpEUR/PriceUnit + Set LijstEUR=LijstEUR/PriceUnit + + } + Set GrOrde=$Case(+Result.PriceUnit,100:"H",:"E") + Set GrOrdNum=$Case(GrOrde,"H":100,:1) + Set Korting2=0 - Set Korting1=(1-(VkpEUR/LijstEUR))*100 + if +LijstEUR=0 { + Set Korting1=0 + } else { + Set Korting1=(1-(VkpEUR/LijstEUR))*100 + } } Quit $$BUILD ; Build = VkpPr_D_Munt_D_GrOrde_D_LijstPr_D_Korting1_D_Korting2_D_$G(PrijsKl)_D_$G(KortNiv)_D_+$J(1/MuntPar,0,8)_D_GrOrde_1_D_GrOrdNum_D_1_D_AkpEUR_D_VkpEUR_D_LijstEUR ; 1:prijs,2:munt,3:eenheid,4:lijstprijs,5:korting1,6:korting2,7:codex,8:katprijs,9:pariteit,10:afrondingsregel,11:eenheid(numeriek),12:round,13:aankpr(EUR),14:prijs(EUR),15:lijstprijs(EUR) - +PrijzenViaAdmin(KLNr) +{ + Quit $$$MaatwerkKlantenMetWildcardUitz[(";"&KLNr&";") +} // Set twee kortingen om van in % (*100) naar ��n korting in % @@ -125,7 +147,7 @@ Set IsAX=0 If ($$$CheckAXFase) { Set IsAX=1 - If $$$MaatwerkKlantenMetWildcardUitz[(";"&KLNr&";") { + If $$PrijzenViaAdmin(KLNr) { If PRNr,$$$PRGet($$$LeveranciersNr)=$$$LevHalux { Set IsAX=0 } @@ -143,6 +165,8 @@ ProdViaCodex(PRNr,Codex) New KLNr Set KLNr=$Case(Codex,"L":$$$KlantLVanHoecke,"R":$$$KlantRVanHoecke,"S":$$$KlantSVanHoecke,"B":$$$KlantBVanHoecke,"G":$$$KlantGVanHoecke,"P":$$$KlantPVanHoecke,"C":$$$KlantCVanHoecke) + + Set KLNr=$$$KlantLVanHoecke Quit:'$D(^KK1(KLNr)) "" Quit $$KLANTPR(KLNr,PRNr)