Index: APPS/common/KlantKost/impl/BezoekKostCalculator.cls.xml =================================================================== diff -u -r1974 -r2707 --- APPS/common/KlantKost/impl/BezoekKostCalculator.cls.xml (.../BezoekKostCalculator.cls.xml) (revision 1974) +++ APPS/common/KlantKost/impl/BezoekKostCalculator.cls.xml (.../BezoekKostCalculator.cls.xml) (revision 2707) @@ -2,7 +2,8 @@ -JBL + 2011-05-30 +JBL + 2011-05-30 +Do ##class(APPS.common.KlantKost.impl.BezoekKostCalculator).%New().BerekenKostenPerKlant(2011,8) 1 APPS.common.KlantKost.impl.KostCalculator 0 @@ -34,6 +35,30 @@ Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.SaveFailedException).%New(Bericht,Status)) } } + + /// Architecten + Set rset = ##class(%ResultSet).%New() + Do rset.Prepare("SELECT Agenda.ID As ID, "_ + "Klant.Nummer As KlantNr, "_ + "Klant.Sektor As Regio, "_ + "Klant.Naam As KlantNaam,"_ + "Agenda.Type,"_ + "Agenda.Datum As Datum,"_ + "Agenda.DuurTijd As DuurTijd,"_ + "(( APPS_common_KlantKost_impl.BezoekKostCalculator_ZoekFactorWaarde('Contact',Klant.Sektor,Agenda.Datum) * Agenda.DuurTijd)+ APPS_common_KlantKost_impl.BezoekKostCalculator_ZoekFactorWaarde('KostprijsResterendeTijd',Klant.Sektor,Agenda.Datum)) As Kost "_ + "FROM Derde_Klant.Klant Klant JOIN Derde_Agenda.Agenda Agenda ON Klant.Nummer = Agenda.Architect "_ + "Where Jaar = ? AND Maand = ? and Agenda.Type='B'") + Set sc = rset.Execute(Jaar, Maand) + + While (rset.Next(.sc)){ + Set KostItem = ##class(APPS.common.KlantKost.impl.data.BezoekKostItem).%New(rset.Data("Datum"),rset.Data("KlantNr"),rset.Data("Kost"),rset.Data("ID")) + Set Status = KostItem.%Save() + If ($SYSTEM.Status.IsError(Status)){ + Set Bericht = "Failed to save "_KostItem.%ClassName(1)_": " + Set Bericht = Bericht_": "_rset.Data("Datum")_","_rset.Data("KlantNr")_","_rset.Data("Kost")_","_rset.Data("ID") + Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.SaveFailedException).%New(Bericht,Status)) + } + } ]]> Index: BL/Derde/Agenda/Agenda.cls.xml =================================================================== diff -u -r2692 -r2707 --- BL/Derde/Agenda/Agenda.cls.xml (.../Agenda.cls.xml) (revision 2692) +++ BL/Derde/Agenda/Agenda.cls.xml (.../Agenda.cls.xml) (revision 2707) @@ -6,6 +6,7 @@ BL.EC.Common 1 %RegisteredObject +0 Derde.Agenda.Agenda @@ -1061,7 +1062,7 @@ KLNr,VanDatum,TotDatum =:VanDatum and Datum<=:TotDatum ) Quit $G(Aantal) @@ -1075,7 +1076,7 @@ KLNr @@ -1091,7 +1092,7 @@ SELECT ID INTO :AgendaID FROM Derde_Agenda.Agenda - WHERE Klant=:VanKLNr) + WHERE (Klant=:VanKLNr OR Architect=:VanKLNr)) &sql(OPEN CommOverdr) For &sql(FETCH CommOverdr) Quit:SQLCODE Do @@ -1113,7 +1114,7 @@ SELECT ID INTO :AgendaID FROM Derde_Agenda.Agenda - WHERE Klant=:KLNr) + WHERE (Klant=:KLNr OR Architect=:KLNr)) &sql(OPEN DelKlant) For &sql(FETCH DelKlant) Quit:SQLCODE Do