Index: AX/Uitgaand/EC/impl/VerplaatsBestanden.cls.xml =================================================================== diff -u -r39484 -r39774 --- AX/Uitgaand/EC/impl/VerplaatsBestanden.cls.xml (.../VerplaatsBestanden.cls.xml) (revision 39484) +++ AX/Uitgaand/EC/impl/VerplaatsBestanden.cls.xml (.../VerplaatsBestanden.cls.xml) (revision 39774) @@ -31,18 +31,34 @@ + + + + + + + AX.Uitgaand.EC.impl.ExportDefaults + +%Date + + ExportDefaults:AX.Uitgaand.EC.impl.ExportDefaults 1 @@ -44,6 +48,7 @@ Set ..PartijAPI = ##class(DOM.DomeinContext).Instance().GeefPartijAPI() Set ..ExportDefaults=ExportDefaults Set ..NoSa="N" + Set ..RefDatum=$H+1 Quit $$$OK ]]> @@ -86,17 +91,24 @@ d ##class(AX.Uitgaand.EC.Prijzen.impl.GenerateKlantPrijzen).%New().GenerateKlant(3042) - - + @@ -116,11 +128,11 @@ Set rs=##class(TECH.ResultSet).%New() Do rs.Prepare("Select DISTINCT Product from AX_Uitgaand_EC_Assortiment_impl.BasisAssortiment where AssortimentGroep=? and GenerationID=? and product not in (Select Product from AX_Uitgaand_EC_Assortiment_impl.KlantAssortiment where Klant=? and GenerationID=? )") Set sc=rs.Execute(..Klant.AssortimentGroep,..ExportDefaults.NewGenerationID,..KLNr,..ExportDefaults.NewGenerationID) - + While rs.%Next() { Set PRNr=rs.Data("Product") Continue:'..CheckUitzKlassificatie(PRNr) - Do ..Generate(PRNr, "A") + Do ..Generate(PRNr, "B") } ]]> @@ -161,15 +173,70 @@ ]]> + +PRNr + + + + +UitzRec:%String +..RefDatum) 0 ; Nog niet gestart + Quit:$P(UitzRec,"\",8)&&($P(UitzRec,"\",8)<..RefDatum) 0 ; Reeds vervallen + Quit 1 +]]> + + PRNr:%String,GeneratedFrom:%String 0 + + +PRNr:%String,PrijsRec:%String,VanafAantal:%Integer,TotAantal:%Integer,GeneratedFrom:%String + d ##class(AX.Uitgaand.EC.Service).%New().GenerateAll() -1 d ##class(AX.Uitgaand.EC.Service).%New().ExportAll() -1 1 - Index: WS/Vhisie4/KlantDocument/dto/DocumentHoofding.cls.xml =================================================================== diff -u -r39315 -r39774 --- WS/Vhisie4/KlantDocument/dto/DocumentHoofding.cls.xml (.../DocumentHoofding.cls.xml) (revision 39315) +++ WS/Vhisie4/KlantDocument/dto/DocumentHoofding.cls.xml (.../DocumentHoofding.cls.xml) (revision 39774) @@ -65,7 +65,7 @@ Do ..arProductGroepen.SetAt(pxProductGroep,SorteerSleutel) } Set pxProductGroep.AantalLijnen=pxProductGroep.AantalLijnen+1 - Set pxProductGroep.AantalStuks=pxProductGroep.AantalStuks+pxLijn.Aantal + Set:pxProductGroep.ProductGroep'=##class(WS.Vhisie4.KlantDocument.enu.ProductGroep).Beslag() pxProductGroep.AantalStuks=pxProductGroep.AantalStuks+pxLijn.Aantal Set pxProductGroep.TotaalPrijs=pxProductGroep.TotaalPrijs+pxLijn.TotaalPrijs Set ..TotaalPrijs=..TotaalPrijs+pxLijn.TotaalPrijs } Index: AX/Uitgaand/EC/Assortiment/impl/pxProduct.cls.xml =================================================================== diff -u -r37151 -r39774 --- AX/Uitgaand/EC/Assortiment/impl/pxProduct.cls.xml (.../pxProduct.cls.xml) (revision 37151) +++ AX/Uitgaand/EC/Assortiment/impl/pxProduct.cls.xml (.../pxProduct.cls.xml) (revision 39774) @@ -96,11 +96,11 @@ If '..Product.StockNietStock { - Set ..AantalIsSuggestieVeelvoud=..Product.Prijs.GrootVerpakking + Set ..AantalIsSuggestieVeelvoud=$S(..Product.Prijs.MinimumBestelhoeveelheid<..Product.Prijs.GrootVerpakking:..Product.Prijs.MinimumBestelhoeveelheid,1:..Product.Prijs.GrootVerpakking) Set ..AantalIsVerplichtVeelvoud=..AantalIsSuggestieVeelvoud Set ..MinBestelhoeveelheid=..Product.Prijs.MinimumBestelhoeveelheid } - If VerkoopPerStuk=1 ; Toegelaten + ElseIf VerkoopPerStuk=1 ; Toegelaten { Set ..AantalIsSuggestieVeelvoud=1 Set ..AantalIsVerplichtVeelvoud=..AantalIsSuggestieVeelvoud @@ -145,10 +145,20 @@ voldoende voorraaad - Set ..GroteVoorraadAfname=.5 ; minder dan 50% is grote afname -> beperkte voorraad - Set ..KleineWeekAfname=.2*..Product.GewogenGemiddeldeWeekVerkoop ; minder dan 20% van de weekverkoop is kleine afname -> voldoende voorraaad - Set ..GroteWeekAfname=.5*..Product.GewogenGemiddeldeWeekVerkoop + Set ..KleineVoorraadAfname=.4 ; minder dan x% is kleine afname -> voldoende voorraaad + Set ..GroteVoorraadAfname=.6 ; minder dan x% is grote afname -> beperkte voorraad + + ; frequentie van verkopen is minimaal om de 2 weken en de GemiddeldeWeekVerkoop is hoog genoeg om een berekening te maken + If ($P(..Product.GemiddeldeWeekVerkoop,"#",3)>25)&&($P(..Product.GewogenGemiddeldeWeekVerkoop,"#")>10) + { + Set ..KleineWeekAfname=+$J(.3*$P(..Product.GewogenGemiddeldeWeekVerkoop,"#"),0,0) ; minder dan y% van de weekverkoop is kleine afname -> voldoende voorraaad + Set ..GroteWeekAfname=+$J(.6*$P(..Product.GewogenGemiddeldeWeekVerkoop,"#"),0,0) + } + Else + { + Set ..KleineWeekAfname=999999 ; de weekafname telt niet mee + Set ..GroteWeekAfname=999999 + } } ]]>