JBL + 2011-05-30 APPS.common.KlantKost.KlantKostService 0 APPS.common.KlantKost.impl.MaandKostAggregator initvalue:%CacheString 1 1 %Status elke nacht (na backup) moeten de klantkosten van de voorbije kalendermaand herberekend worden Jaar:%Integer,Maand:%Integer Jaar:%Integer,Maand:%Integer Maak factoren éénmalig aan in cache databank voor het berekenen van kosten. Dit moet slechts éénmalig worden uitgevoerd 1 %Status Totale kostprijs vertegenwoordiging per uur Set ContactFactor = ##class(APPS.common.KlantKost.impl.data.MeervoudigeFactor).%New("Contact") Set Status = ContactFactor.%Save() If ($$$ISERR(Status)) w $$ParseStatus^vhLib(Status) /// KostprijsRestTijdFactor => ( Totale kostprijs v d vertegenwoordiging x (resterende tijd / totale werktijd ) ) / totaal aantal bezoeken in referentieperiode Set KostprijsRestTijdFactor = ##class(APPS.common.KlantKost.impl.data.MeervoudigeFactor).%New("KostprijsResterendeTijd") Set Status = KostprijsRestTijdFactor.%Save() If ($$$ISERR(Status)) w $$ParseStatus^vhLib(Status) /// IP For Regio = 2,3 { Set Factor = ##class(APPS.common.KlantKost.impl.data.Factor).%New(ContactFactor,"Regio"_Regio,53.05,GeldigVanaf) Do Factor.%Save() Set Factor = ##class(APPS.common.KlantKost.impl.data.Factor).%New(KostprijsRestTijdFactor,"Regio"_Regio,133.7315328791,GeldigVanaf) Do Factor.%Save() } /// KS BE For Regio = 11,12,14,15,16,17 { Set Factor = ##class(APPS.common.KlantKost.impl.data.Factor).%New(ContactFactor,"Regio"_Regio,36.52,GeldigVanaf) Do Factor.%Save() Set Factor = ##class(APPS.common.KlantKost.impl.data.Factor).%New(KostprijsRestTijdFactor,"Regio"_Regio,57.6405793977,GeldigVanaf) Do Factor.%Save() } /// KS NL For Regio = 21,22,23,24,25,26,27 { Set Factor = ##class(APPS.common.KlantKost.impl.data.Factor).%New(ContactFactor,"Regio"_Regio,32.38,GeldigVanaf) Do Factor.%Save() Set Factor = ##class(APPS.common.KlantKost.impl.data.Factor).%New(KostprijsRestTijdFactor,"Regio"_Regio,43.3604735424,GeldigVanaf) Do Factor.%Save() } /// ARCH For Regio = 30,31 { Set Factor = ##class(APPS.common.KlantKost.impl.data.Factor).%New(ContactFactor,"Regio"_Regio,39.88,GeldigVanaf) Do Factor.%Save() Set Factor = ##class(APPS.common.KlantKost.impl.data.Factor).%New(KostprijsRestTijdFactor,"Regio"_Regio,255.7984623719,GeldigVanaf) Do Factor.%Save() } Quit $$$OK ]]> Maakt de task aan voor de scheduler van caché Dit moet slechts éénmalig worden uitgevoerd w ##class(APPS.common.KlantKost.impl.KlantKostService).InitTask() 1 %Status