Index: APPS/Halux/Planning/impl/BatchService.cls.xml
===================================================================
diff -u -r31178 -r31179
--- APPS/Halux/Planning/impl/BatchService.cls.xml (.../BatchService.cls.xml) (revision 31178)
+++ APPS/Halux/Planning/impl/BatchService.cls.xml (.../BatchService.cls.xml) (revision 31179)
@@ -194,7 +194,6 @@
Batch:APPS.Halux.common.Batch,Toelevering:DOM.AKP.Toelevering
1
ResultSet.Data("MaxVolgnummer")) ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.InvalidInputException).%New("Nieuw nummer mag niet groter zijn dan de bestaande grootste. BatchID: " _ BatchID _ ", Verplaatsen naar volgNr: " _ VerplaatsNaarVolgnummer))
- }
-
- do ResultSet.Close()
-
- set ResultSet = ##class(%ResultSet).%New()
- do ResultSet.Prepare("SELECT ID FROM APPS_Halux_common_impl.BatchImpl WHERE Volgnummer >= ? AND Volgnummer <= ? AND GeplandOp = ? AND Categorie = ? AND ID <> ?")
-
- if (Batch.GeefVolgnummer() > VerplaatsNaarVolgnummer) {
- do ResultSet.Execute(VerplaatsNaarVolgnummer, Batch.GeefVolgnummer(), Batch.GeefGeplandOp(), Batch.GeefCategorie(), BatchID)
+ try {
+ #dim ResultSet As %ResultSet = ##class(%ResultSet).%New()
- while (ResultSet.Next()) {
- set TeWijzigenBatch = ..BatchService.GeefBatch(ResultSet.Data("ID"))
-
- do TeWijzigenBatch.ZetVolgnummer(TeWijzigenBatch.GeefVolgnummer() + 1)
- do TeWijzigenBatch.Save()
- do BatchOverzicht.MaatwerkBatches.Insert(..GeefMaatwerkBatch(TeWijzigenBatch))
+ do ResultSet.Prepare("SELECT Max(Volgnummer) As MaxVolgnummer FROM APPS_Halux_common_impl.BatchImpl WHERE AND GeplandOp = ? AND Categorie = ? GROUP BY GeplandOp")
+ do ResultSet.Execute(Batch.GeefGeplandOp(), Batch.GeefCategorie())
+
+ if (ResultSet.Next()) {
+ do:(VerplaatsNaarVolgnummer > ResultSet.Data("MaxVolgnummer")) ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.InvalidInputException).%New("Nieuw nummer mag niet groter zijn dan de bestaande grootste. BatchID: " _ BatchID _ ", Verplaatsen naar volgNr: " _ VerplaatsNaarVolgnummer))
}
- } else {
- do ResultSet.Execute(Batch.GeefVolgnummer(), VerplaatsNaarVolgnummer, Batch.GeefGeplandOp(), Batch.GeefCategorie(), BatchID)
- while (ResultSet.Next()) {
- set TeWijzigenBatch = ..BatchService.GeefBatch(ResultSet.Data("ID"))
+
+ do ResultSet.Close()
+
+ set ResultSet = ##class(%ResultSet).%New()
+ do ResultSet.Prepare("SELECT ID FROM APPS_Halux_common_impl.BatchImpl WHERE Volgnummer >= ? AND Volgnummer <= ? AND GeplandOp = ? AND Categorie = ? AND ID <> ?")
+
+ if (Batch.GeefVolgnummer() > VerplaatsNaarVolgnummer) {
+ do ResultSet.Execute(VerplaatsNaarVolgnummer, Batch.GeefVolgnummer(), Batch.GeefGeplandOp(), Batch.GeefCategorie(), BatchID)
- do TeWijzigenBatch.ZetVolgnummer(TeWijzigenBatch.GeefVolgnummer() - 1)
- do TeWijzigenBatch.Save()
- do BatchOverzicht.MaatwerkBatches.Insert(..GeefMaatwerkBatch(TeWijzigenBatch))
+ while (ResultSet.Next()) {
+ set TeWijzigenBatch = ..BatchService.GeefBatch(ResultSet.Data("ID"))
+
+ do TeWijzigenBatch.ZetVolgnummer(TeWijzigenBatch.GeefVolgnummer() + 1)
+ do TeWijzigenBatch.Save()
+ do BatchOverzicht.MaatwerkBatches.Insert(..GeefMaatwerkBatch(TeWijzigenBatch))
+ }
+ } else {
+ do ResultSet.Execute(Batch.GeefVolgnummer(), VerplaatsNaarVolgnummer, Batch.GeefGeplandOp(), Batch.GeefCategorie(), BatchID)
+ while (ResultSet.Next()) {
+ set TeWijzigenBatch = ..BatchService.GeefBatch(ResultSet.Data("ID"))
+
+ do TeWijzigenBatch.ZetVolgnummer(TeWijzigenBatch.GeefVolgnummer() - 1)
+ do TeWijzigenBatch.Save()
+ do BatchOverzicht.MaatwerkBatches.Insert(..GeefMaatwerkBatch(TeWijzigenBatch))
+ }
}
+
+ do Batch.ZetVolgnummer(VerplaatsNaarVolgnummer)
+ do Batch.Save()
+ do BatchOverzicht.MaatwerkBatches.Insert(..GeefMaatwerkBatch(Batch))
+
+ do OperatieScope.Gelukt()
+ } catch {
+ do OperatieScope.Gefaald()
+ do ##class(TECH.ExceptionHandler).Rethrow(##class(TECH.ExceptionHandler).Catch())
}
- do Batch.ZetVolgnummer(VerplaatsNaarVolgnummer)
- do Batch.Save()
- do BatchOverzicht.MaatwerkBatches.Insert(..GeefMaatwerkBatch(Batch))
-
- do OperatieScope.Gelukt()
-
quit BatchOverzicht
]]>