Index: BL/Legacy/FLOWTOE/AdHocSplitser.cls.xml
===================================================================
diff -u -r58583 -r58837
--- BL/Legacy/FLOWTOE/AdHocSplitser.cls.xml (.../AdHocSplitser.cls.xml) (revision 58583)
+++ BL/Legacy/FLOWTOE/AdHocSplitser.cls.xml (.../AdHocSplitser.cls.xml) (revision 58837)
@@ -42,49 +42,115 @@
#dim Kenmerk As %String
#dim Waarde As %String
+ #dim FilterGroepKey As %String = "#ALL#"
- Write !,"Kies een kenmerk om een eerste groepering mee te definieren : ",!,"DossierCode/Korttekst/KorttStart/LadeHoogte/DimensieDxB/LadeDiepte/LadeBreedte/KleurenCode/OrderLijnNr",!
- Read Kenmerk
- Write !
-
- ; Bepaal Lijst Mogelijke KM-waarden
- #dim mdGroepKeyMapping As %String = Kenmerk
- ;#dim MappingId As %String = ""
- ;#dim TLNr As %String = ""
- For { Set TLNr = $Order(..mdProductLijnen(TLNr)) Quit:(TLNr="")
- #dim lbProductLijnData As %List = ..mdProductLijnen(TLNr)
- #dim Korttekst As %String = $LG(lbProductLijnData,1)
- #dim KenmerkWaarde As %String = ..GeefKenmerkVoorProductLijn(TLNr,Kenmerk)
- If $Data(mdGroepKeyMapping(KenmerkWaarde)) {
- Set GroepKey = mdGroepKeyMapping(KenmerkWaarde)
+ #dim mdGroepKeyMapping As %String = ""
+ #dim DefinieerMapping As %String = "GO"
+
+ While (DefinieerMapping = "GO") {
+
+ Write !,"Kies een kenmerk om een eerste groepering mee te definieren : ",!,"DossierCode/Korttekst/KorttStart/LadeHoogte/DimensieDxB/LadeDiepte/LadeBreedte/KleurenCode/OrderLijnNr",!
+ Read Kenmerk
+ Write !
+
+ ; Bepaal Lijst Mogelijke KM-waarden
+
+ Kill mdGroepKeyMapping
+ Set mdGroepKeyMapping = Kenmerk
+
+ ;#dim TLNr As %String = ""
+ For { Set TLNr = $Order(..mdProductLijnen(TLNr)) Quit:(TLNr="")
+ #dim lbProductLijnData As %List = ..mdProductLijnen(TLNr)
+ #dim Korttekst As %String = $LG(lbProductLijnData,1)
+
+ Continue:(..FilterProductLijnViaGroepKey(lbProductLijnData,FilterGroepKey) = $$$False)
+
+ #dim KenmerkWaarde As %String = ..GeefKenmerkVoorProductLijn(TLNr,Kenmerk)
+ If $Data(mdGroepKeyMapping(KenmerkWaarde)) {
+ Set GroepKey = mdGroepKeyMapping(KenmerkWaarde)
+ }
+ Else {
+ Write !,"Geef GroepKey voor KenmerkWaarde '"_KenmerkWaarde_"' : "
+ Read GroepKey
+ Write !
+ Set mdGroepKeyMapping(KenmerkWaarde) = GroepKey
+ }
+ Set $LI(..mdProductLijnen(TLNr),4) = GroepKey
}
- Else {
- Write !,"Geef GroepKey voor KenmerkWaarde '"_KenmerkWaarde_"' : "
- Read GroepKey
+
+ Do ..DumpSortKeyMapping()
+
+ #dim KeuzeVolgendeStap As %String = 9
+ Write !,"Keuze : 'Mapping verder specifieren' [1] of 'Volledige mapping opnieuw overlopen' [2] of 'Groepering Toepassen' [9] ? "
+ Read KeuzeVolgendeStap
+ Write !
+
+ If KeuzeVolgendeStap = 9 {
+ Set DefinieerMapping = "STOP"
+ Write !,"Groepering Toepassen.",!
+ }
+ ElseIf KeuzeVolgendeStap = 1 {
+ Set DefinieerMapping = "GO"
+ #dim NieuweSelectie As %String = ""
+ Write !,"Mapping verder specifieren : Kies een GroepKey als nieuwe selectie : "
+ Read NieuweSelectie
Write !
- Set mdGroepKeyMapping(KenmerkWaarde) = GroepKey
+ Set FilterGroepKey = NieuweSelectie
}
- Set $LI(..mdProductLijnen(TLNr),4) = GroepKey
+ ElseIf KeuzeVolgendeStap = 2 {
+ Set DefinieerMapping = "GO"
+ Write !,"Volledige mapping opnieuw overlopen : ",!
+ Set FilterGroepKey = "#ALL#"
+ }
+ Else {
+ Write !,"Keuze is ongeldig. Automatisch doorgaan naar volgende stap : 'Groepering Toepassen'.",!
+ Set KeuzeVolgendeStap = 9
+ Set DefinieerMapping = "STOP"
+ }
}
+ // Na Confirm de GroepKey Mapping vastleggen :
Do ..BewaarSortKeyMapping(TOENr)
zw ^Lgc.FLOWTOE.SplitsToelevMapping(TOENr)
+
+ Write !!,"Voer uit : "
+ Write !,"Do ##class(BL.Legacy.FLOWTOE.AdHocSplitser).%New().SimuleerToeleveringLijnenAdHocSplitsen(TOENr)"
+
/*
Splitser v2.1 :
Verzamel Producten van Toelevering
Combinatie LijnNr+Korttekst oplijsten : initieel allen GroepKey " 0"
SelectALL Lijnen
StartModifyStep (1) : Kies kenmerk --> Lijst Mogelijke KM-waarden --> Vraag GroepKey voor iedere KM-Waarde --> Toon overzicht "GroepKey Mapping" --> Confirm
Simuleer Groepering : Voor alle geselecteerde lijnen : "GroepKey Mapping" toepassen indien mogelijk --> Nieuwe Groepkey "bewaren" --> Toon overzicht "LijnInfo" + "Aantal per Key"
- Keuze : "Nieuwe mapping bijvoegen" of "Groepering Toepassen" ?
+ Keuze : "Nieuwe mapping bijvoegen" of "Volledige mapping opnieuw overlopen" of "Groepering Toepassen" ?
"Nieuwe mapping bijvoegen" (Optioneel) --> Toggle SelectLijnen : Kies GroepKey --> StartModifyStep (2) --> Simuleer Groepering
- Keuze : "Nieuwe mapping bijvoegen" of "Groepering Toepassen" ?
+ Keuze : "Nieuwe mapping bijvoegen" of "Volledige mapping opnieuw overlopen" of "Groepering Toepassen" ?
"Groepering Toepassen" : PasAanSortKeyViaMapping() oproepen via "Wijzig Order" op basis van GroepKey mapping op LijnNr+Korttekst --> Tekst tonen aan User : "Wijzig Order in Admin"
*/
]]>
+
+TOENr:%String
+
+
+
+
+lbProductLijnData:%List,FilterGroepKey:%String
+1
+%Boolean
+
+
+
TLNr:%String,Kenmerk:%String
1
@@ -126,6 +192,32 @@
]]>
+
+blnToonSubTotalen:%Boolean=1
+1
+
+
+
TOENr:%String
1