Index: APPS/Halux/PPS/Document/impl/common/BatchNaarObjective.cls.xml =================================================================== diff -u -r73785 -r73892 --- APPS/Halux/PPS/Document/impl/common/BatchNaarObjective.cls.xml (.../BatchNaarObjective.cls.xml) (revision 73785) +++ APPS/Halux/PPS/Document/impl/common/BatchNaarObjective.cls.xml (.../BatchNaarObjective.cls.xml) (revision 73892) @@ -89,14 +89,7 @@ MaximumAantalLadesProductieOrder) - { - Do ..ZendMailMaxAantalLadesOverschreden(UitvoeringInfo.BatchID) - } - #dim IsBatchAlGeexporteerd As %Boolean = $$$False If $IsObject(UitvoeringInfo) { Set IsBatchAlGeexporteerd = ..BatchPitchExportedRepository.IsBatchExported(UitvoeringInfo.BatchID) @@ -114,7 +107,7 @@ } } - If $$$Not(UitvoeringStatus = ##class(APPS.Halux.PPS.enu.UitvoeringStatus).Fout()) { + If ($$$Not(UitvoeringStatus = ##class(APPS.Halux.PPS.enu.UitvoeringStatus).Fout())) { #dim SuffixId As %String = "" #dim BatchData As %ListOfObjects = ..GenereerBatchDataVoorUitvoeringInfoLijst(Lijst, SuffixId, 1, FilterToeleveringId) Do ..ExporteerDataNaarXmlDocument(BatchData) @@ -157,30 +150,36 @@ 1 MaximumAantalLadesProductieOrder) + { + Do ..ZendMailMaxAantalLadeBatchOverschreden(Batch.GeefID(), MaximumAantalLadesProductieOrder) + } Else { + #dim ToeleveringenIterator As TECH.Iterator = ..GeefLijstIteratorVanToeleveringenInVolgordeVanSequentieNummer(UitvoeringInfoLijstIterator) + #dim ToeleveringId As %String = ToeleveringenIterator.Next() + #dim Toelevering As DOM.AKP.Toelevering = ..ToeleveringApi.GeefToelevering(ToeleveringId) + #dim BatchData As APPS.Halux.PPS.Document.impl.common.BatchNaarObjective.dto.BatchNaarObjectiveData = ..BatchNaarObjectiveDataGenerator.GenereerDataVoorBatch(Batch, Toelevering, UitvoeringLijstNummer, AantalLades, SuffixId) - #dim ToeleveringenIterator As TECH.Iterator = ..GeefLijstIteratorVanToeleveringenInVolgordeVanSequentieNummer(UitvoeringInfoLijstIterator) - #dim ToeleveringId As %String = ToeleveringenIterator.Next() - #dim Toelevering As DOM.AKP.Toelevering = ..ToeleveringApi.GeefToelevering(ToeleveringId) - #dim BatchData As APPS.Halux.PPS.Document.impl.common.BatchNaarObjective.dto.BatchNaarObjectiveData = ..BatchNaarObjectiveDataGenerator.GenereerDataVoorBatch(Batch, Toelevering, UitvoeringLijstNummer, AantalLades, SuffixId) + Do ##class(TECH.ListUtils).AppendList(BatchData.Opties, ..BatchNaarObjectiveDataGenerator.GenereerAlgemeneInfoOptiesVoorBatch(Batch)) + Do ##class(TECH.ListUtils).AppendList(BatchData.Opties, ..GeefOptiesVoorToelevering(Toelevering, UitvoeringInfoLijstIterator)) - Do ##class(TECH.ListUtils).AppendList(BatchData.Opties, ..BatchNaarObjectiveDataGenerator.GenereerAlgemeneInfoOptiesVoorBatch(Batch)) - Do ##class(TECH.ListUtils).AppendList(BatchData.Opties, ..GeefOptiesVoorToelevering(Toelevering, UitvoeringInfoLijstIterator)) - - While ToeleveringenIterator.HasNext() { - Set ToeleveringId = ToeleveringenIterator.Next() - Set Toelevering = ..ToeleveringApi.GeefToelevering(ToeleveringId) + While ToeleveringenIterator.HasNext() { + Set ToeleveringId = ToeleveringenIterator.Next() + Set Toelevering = ..ToeleveringApi.GeefToelevering(ToeleveringId) - Do ##class(TECH.ListUtils).AppendList(BatchData.Opties, ..GeefOptiesVoorToelevering(Toelevering, UitvoeringInfoLijstIterator)) - } + Do ##class(TECH.ListUtils).AppendList(BatchData.Opties, ..GeefOptiesVoorToelevering(Toelevering, UitvoeringInfoLijstIterator)) + } - Do BatchDataLijst.Insert(BatchData) - + Do BatchDataLijst.Insert(BatchData) + } Quit BatchDataLijst ]]> UitvoeringInfoLijstIterator:TECH.Iterator +1 TECH.Iterator 0) { + #dim AantalLadesInToelevering As %Integer = ..GeefAantalLadesInToelevering(Toelevering.GeefID(), UitvoeringInfoLijstIterator) + #dim MaximumAantalLadesProductieOrder As %Integer = ##class(TECH.Config.ConfigMgr).Instance().GeefString("APPS.Halux.PPS.Document.impl.BatchNaarObjective_MaximumAantalLadesProductieOrder") + + If (AantalLadesInToelevering > MaximumAantalLadesProductieOrder) + { + Do ..ZendMailMaxAantalLadesToeleveringOverschreden(ToeleveringId, MaximumAantalLadesProductieOrder) + Set Minstens1ToelevMetTeVeelLades = $$$True + } ElseIf (AantalLadesInToelevering > 0) { Set ..IndexBestanden = ..IndexBestanden + 1 #dim BatchData As APPS.Halux.PPS.Document.impl.common.BatchNaarObjective.dto.BatchNaarObjectiveData = ..BatchNaarObjectiveDataGenerator.GenereerDataVoorToelevering(Batch, Toelevering, ..IndexBestanden, AantalLadesInToelevering, SuffixId) Do ##class(TECH.ListUtils).AppendList(BatchData.Opties, ..BatchNaarObjectiveDataGenerator.GenereerAlgemeneInfoOptiesVoorToelevering(Toelevering, Batch.GeefCategorie())) @@ -224,6 +229,10 @@ } } + If (Minstens1ToelevMetTeVeelLades) { + Do BatchDataLijst.Clear() + } + Quit BatchDataLijst ]]> @@ -334,17 +343,35 @@ %Boolean - + +ToeleveringID:%String,MaximumAantalLadesProductieOrder:%Integer +1 + + + + BatchID:%String,MaximumAantalLadesProductieOrder:%Integer 1