Fix in der Funktion MergeGroups: Test mit zwei Gruppen aus 2 und 3 Elementen in allen Variationen

This commit is contained in:
2025-01-23 10:06:19 +01:00
parent 4d2d3786d1
commit f5a5c68dc8
+90 -99
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<PROCESS Id="RDK:0001" Name="MAIN_SSG" ModernUI="True" Options="(GITSAVEMODE)(NOUPDATEINCLUDEFILES)" Expanded="True"> <PROCESS Id="RDK:0001" Name="MAIN_SSG" ModernUI="True" Options="(GITSAVEMODE)(NOUPDATEINCLUDEFILES)" Expanded="True">
<PROCESSPROPERTY CrUser="pmarani [ENGMARANI17R]" CrDate="2022-05-05T18:05:31" ModUser="y.wang [ANGEBOT-NB02]" ModDate="2025-01-22T15:41:35" LanguageVersion="2014.1.3.698" /> <PROCESSPROPERTY CrUser="pmarani [ENGMARANI17R]" CrDate="2022-05-05T18:05:31" ModUser="m.stangl [ENTW-NB08]" ModDate="2025-01-23T10:05:34" LanguageVersion="2014.1.3.699" />
<GROUP Id="RDK:0002" Name="Declarations" SubType="Declarations" Expanded="True"> <GROUP Id="RDK:0002" Name="Declarations" SubType="Declarations" Expanded="True">
<GROUP Id="RDK:0003" Name="Types" SubType="TypeSet" IncludeDate="0"> <GROUP Id="RDK:0003" Name="Types" SubType="TypeSet" IncludeDate="0">
<GROUP Id="RDK:26387" Name="SSG_Group" SubType="TypeSet" IncludeDate="0"> <GROUP Id="RDK:26387" Name="SSG_Group" SubType="TypeSet" IncludeDate="0">
@@ -935,7 +935,7 @@
<FIELD Id="RDK:22028926" Name="GruppenteileGefälle" Type="GefälleStreckeMerkmaleType" /> <FIELD Id="RDK:22028926" Name="GruppenteileGefälle" Type="GefälleStreckeMerkmaleType" />
<FIELD Id="RDK:22028928" Name="GruppenteileAngetrieben" Type="AngetriebeneStreckeMerkmaleType" /> <FIELD Id="RDK:22028928" Name="GruppenteileAngetrieben" Type="AngetriebeneStreckeMerkmaleType" />
</TYPE> </TYPE>
<TYPE Id="RDK:22537047" Name="AutomationMerkmaleType" SubType="structure"> <TYPE Id="RDK:22537047" Name="AutomationMerkmaleType" Expanded="True" SubType="structure">
<TYPE_VALUES /> <TYPE_VALUES />
<FIELD Id="RDK:22537043" Name="Anzahl Kreisel" Type="integer" /> <FIELD Id="RDK:22537043" Name="Anzahl Kreisel" Type="integer" />
<FIELD Id="RDK:22537044" Name="Anzahl Kreisel mit Pinband" Type="integer" /> <FIELD Id="RDK:22537044" Name="Anzahl Kreisel mit Pinband" Type="integer" />
@@ -1161,6 +1161,8 @@
<VAR Id="RDK:20857929" Name="groupStrings" Type="string[]" DesignTimeRemark="Enthält ; separtiert alle Strings, damit die Gruppen beschrieben werden können. a;b;c wäre z.B. eine Gruppe aus den Objekten a, b und c" /> <VAR Id="RDK:20857929" Name="groupStrings" Type="string[]" DesignTimeRemark="Enthält ; separtiert alle Strings, damit die Gruppen beschrieben werden können. a;b;c wäre z.B. eine Gruppe aus den Objekten a, b und c" />
<VAR Id="RDK:22342749" Name="CountKeys" Type="SSGDictInt[]" DesignTimeRemark="Array von Key-Value paaren, um sich die Anzahl von Key in Value zu merken. Dient zum Zählen" /> <VAR Id="RDK:22342749" Name="CountKeys" Type="SSGDictInt[]" DesignTimeRemark="Array von Key-Value paaren, um sich die Anzahl von Key in Value zu merken. Dient zum Zählen" />
<VAR Id="RDK:22537035" Name="CSVType" Type="string" DesignTimeRemark="Generated by RD" /> <VAR Id="RDK:22537035" Name="CSVType" Type="string" DesignTimeRemark="Generated by RD" />
<VAR Id="RDK:22582164" Name="greoupHinten" Type="string" DesignTimeRemark="Generated by RD" />
<VAR Id="RDK:22582165" Name="greoupHinten" Type="string" DesignTimeRemark="Generated by RD" />
</GROUP> </GROUP>
<GROUP Id="RDK:0006" Name="Profiles" SubType="ProfileSet"> <GROUP Id="RDK:0006" Name="Profiles" SubType="ProfileSet">
<PROFILE Id="RDK:383" Name="ImportBackgroundProfile" TypeName="ImportBackgroundType" /> <PROFILE Id="RDK:383" Name="ImportBackgroundProfile" TypeName="ImportBackgroundType" />
@@ -12292,13 +12294,15 @@ ShapeTotalLength-SSGConnectionPoint.x_S-(KreiselData.Durchmesser/2)
<PAR Name="AdvancedOptions" /> <PAR Name="AdvancedOptions" />
</SET> </SET>
</VAR> </VAR>
<VAR Id="RDK:20895605" Name="groupVorn" Type="string" />
<VAR Id="RDK:20832579" Name="id1" Type="string"> <VAR Id="RDK:20832579" Name="id1" Type="string">
<SET Id="RDK:20832578" VarRef="Me"> <SET Id="RDK:20832578" VarRef="Me">
<EXP><![CDATA[$=$Param.Input[1]]]></EXP> <EXP><![CDATA[$=$Param.Input[1]]]></EXP>
<PAR Name="AdvancedOptions" /> <PAR Name="AdvancedOptions" />
</SET> </SET>
</VAR> </VAR>
<VAR Id="RDK:22582081" Name="group0" Type="string[]" />
<VAR Id="RDK:22582079" Name="group1" Type="string[]" />
<VAR Id="RDK:20895605" Name="groupVorn" Type="string" />
<VAR Id="RDK:20895607" Name="groupHinten" Type="string" /> <VAR Id="RDK:20895607" Name="groupHinten" Type="string" />
<VAR Id="RDK:20899146" Name="splitarr" Type="string[]" /> <VAR Id="RDK:20899146" Name="splitarr" Type="string[]" />
<VAR Id="RDK:22556841" Name="newGroup" Type="string[]" /> <VAR Id="RDK:22556841" Name="newGroup" Type="string[]" />
@@ -12320,23 +12324,10 @@ ShapeTotalLength-SSGConnectionPoint.x_S-(KreiselData.Durchmesser/2)
<EXP><![CDATA[$=$IndexOf(splitarr, id0) >= 0]]></EXP> <EXP><![CDATA[$=$IndexOf(splitarr, id0) >= 0]]></EXP>
</VALUECONDITION> </VALUECONDITION>
<GROUP Id="RDK:20895549" SubType="Then"> <GROUP Id="RDK:20895549" SubType="Then">
<IFTHENELSE Id="RDK:20895660" DesignTimeRemark="Id ist am Kopf der Gruppe"> <SET Id="RDK:22582091" VarRef="group0">
<VALUECONDITION Value="true"> <EXP><![CDATA[$=$splitArr]]></EXP>
<EXP><![CDATA[$=$FirstOf(splitarr) = id0]]></EXP> <PAR Name="AdvancedOptions" />
</VALUECONDITION> </SET>
<GROUP Id="RDK:20895659" SubType="Then">
<SET Id="RDK:20895676" VarRef="groupHinten">
<EXP><![CDATA[$=$lineStr]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
<GROUP Id="RDK:20895674" SubType="Else">
<SET Id="RDK:20895545" VarRef="groupVorn">
<EXP><![CDATA[$=$lineStr]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
</IFTHENELSE>
</GROUP> </GROUP>
</IFTHENELSE> </IFTHENELSE>
<IFTHENELSE Id="RDK:20895692" DesignTimeRemark="Id1 ist in der Gruppe"> <IFTHENELSE Id="RDK:20895692" DesignTimeRemark="Id1 ist in der Gruppe">
@@ -12344,33 +12335,77 @@ ShapeTotalLength-SSGConnectionPoint.x_S-(KreiselData.Durchmesser/2)
<EXP><![CDATA[$=$IndexOf(splitarr, id1) >= 0]]></EXP> <EXP><![CDATA[$=$IndexOf(splitarr, id1) >= 0]]></EXP>
</VALUECONDITION> </VALUECONDITION>
<GROUP Id="RDK:20895691" SubType="Then"> <GROUP Id="RDK:20895691" SubType="Then">
<IFTHENELSE Id="RDK:20895690" DesignTimeRemark="Id ist am Kopf"> <SET Id="RDK:22582133" VarRef="group1">
<VALUECONDITION Value="true"> <EXP><![CDATA[$=$splitArr]]></EXP>
<EXP><![CDATA[$=$FirstOf(splitarr) = id1]]></EXP> <PAR Name="AdvancedOptions" />
</VALUECONDITION> </SET>
<GROUP Id="RDK:20895687" SubType="Then">
<SET Id="RDK:20895688" VarRef="groupHinten">
<EXP><![CDATA[$=$lineStr]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
<GROUP Id="RDK:20895689" SubType="Else">
<SET Id="RDK:20895686" VarRef="groupVorn">
<EXP><![CDATA[$=$lineStr]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
</IFTHENELSE>
</GROUP> </GROUP>
</IFTHENELSE> </IFTHENELSE>
</FOREACHLOOP> </FOREACHLOOP>
<IFTHENELSE Id="RDK:22582117" DesignTimeRemark="Id0 ist am Kopf der Gruppe">
<VALUECONDITION Value="true">
<EXP><![CDATA[$=$FirstOf(group0) = id0]]></EXP>
</VALUECONDITION>
<GROUP Id="RDK:22582114" SubType="Then">
<SET Id="RDK:22582163" VarRef="groupHinten">
<EXP><![CDATA[$=$ListToStr(group0, ";")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
<IFTHENELSE Id="RDK:22582124" DesignTimeRemark="Id1 ist am Kopf der Gruppe">
<VALUECONDITION Value="true">
<EXP><![CDATA[$=$FirstOf(group1) = id1]]></EXP>
</VALUECONDITION>
<GROUP Id="RDK:22582121" SubType="Then">
<SET Id="RDK:22582169" VarRef="groupVorn">
<EXP><![CDATA[$=$ListToStr(ListReverse(group1), ";")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
<GROUP Id="RDK:22582123" SubType="Else">
<SET Id="RDK:22582171" VarRef="groupVorn">
<EXP><![CDATA[$=$ListToStr(group1, ";")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
</IFTHENELSE>
</GROUP>
<GROUP Id="RDK:22582116" SubType="Else">
<SET Id="RDK:22582167" VarRef="groupHinten">
<EXP><![CDATA[$=$ListToStr(ListReverse(group0), ";")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
<IFTHENELSE Id="RDK:22582193" DesignTimeRemark="Id1 ist am Kopf der Gruppe">
<VALUECONDITION Value="true">
<EXP><![CDATA[$=$FirstOf(group1) = id1]]></EXP>
</VALUECONDITION>
<GROUP Id="RDK:22582190" SubType="Then">
<SET Id="RDK:22582189" VarRef="groupVorn">
<EXP><![CDATA[$=$ListToStr(ListReverse(group1), ";")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
<GROUP Id="RDK:22582192" SubType="Else">
<SET Id="RDK:22582191" VarRef="groupVorn">
<EXP><![CDATA[$=$ListToStr(group1, ";")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
</IFTHENELSE>
</GROUP>
</IFTHENELSE>
<COMMENTS Id="RDK:20895724" DesignTimeRemark="entferne beide alten Gruppenstrings" /> <COMMENTS Id="RDK:20895724" DesignTimeRemark="entferne beide alten Gruppenstrings" />
<REMOVE_ADD Id="RDK:20895718" ListRef="groupStrings" Value="$=$groupVorn"> <CALLFUNCTION Id="RDK:22582201">
<EXP /> <PAR Name="FuncName">
</REMOVE_ADD> <EXP><![CDATA[$C$DestroyGroup]]></EXP>
<REMOVE_ADD Id="RDK:20895720" ListRef="groupStrings" Value="$=$groupHinten"> </PAR>
<EXP /> <PAR Name="InputExp">
</REMOVE_ADD> <EXP><![CDATA[$=$NewList(id0, id1)]]></EXP>
</PAR>
<PAR Name="ResultRef">
<EXP><![CDATA[$V$]]></EXP>
</PAR>
<PAR Name="Options" />
</CALLFUNCTION>
<COMMENTS Id="RDK:20895726" DesignTimeRemark="und füge den neuen ein" /> <COMMENTS Id="RDK:20895726" DesignTimeRemark="und füge den neuen ein" />
<LIST_ADD Id="RDK:20895722" Suppressed="True" DesignTimeRemark="ist die neue Gruppe" ListRef="groupStrings"> <LIST_ADD Id="RDK:20895722" Suppressed="True" DesignTimeRemark="ist die neue Gruppe" ListRef="groupStrings">
<PAR Name="VALUE_TO_ADD"> <PAR Name="VALUE_TO_ADD">
@@ -15811,11 +15846,8 @@ ShapeTotalLength-SSGConnectionPoint.x_S-(KreiselData.Durchmesser/2)
<VALUECONDITION Value="true" Oper="OR"> <VALUECONDITION Value="true" Oper="OR">
<EXP><![CDATA[$=$FieldAffected="L1"]]></EXP> <EXP><![CDATA[$=$FieldAffected="L1"]]></EXP>
</VALUECONDITION> </VALUECONDITION>
<VALUECONDITION Value="true" Oper="OR">
<EXP><![CDATA[$=$FieldAffected="FesteL1"]]></EXP>
</VALUECONDITION>
<VALUECONDITION Value="true"> <VALUECONDITION Value="true">
<EXP><![CDATA[$=$FieldAffected="Typ"]]></EXP> <EXP><![CDATA[$=$FieldAffected="FesteL1"]]></EXP>
</VALUECONDITION> </VALUECONDITION>
<COMMENTS Id="RDK:22128742" DesignTimeRemark="Änderung von Winkel und Länge" /> <COMMENTS Id="RDK:22128742" DesignTimeRemark="Änderung von Winkel und Länge" />
<CALLFUNCTION Id="RDK:22128743"> <CALLFUNCTION Id="RDK:22128743">
@@ -25521,7 +25553,7 @@ ShapeList["id="+Param.Input[1].shapeID].name
</SET> </SET>
<IFTHENELSE Id="RDK:22246719"> <IFTHENELSE Id="RDK:22246719">
<VALUECONDITION Value="true"> <VALUECONDITION Value="true">
<EXP><![CDATA[$=$Abs(Shape_Prototype.VarioFoerdererDefinition.H_Anfang - Shape_Prototype.VarioFoerdererDefinition.H_Ende) < 0.01]]></EXP> <EXP><![CDATA[$=$Shape_Prototype.VarioFoerdererDefinition.H_Anfang - Shape_Prototype.VarioFoerdererDefinition.H_Ende < 0.01]]></EXP>
</VALUECONDITION> </VALUECONDITION>
<GROUP Id="RDK:22246725" SubType="Then"> <GROUP Id="RDK:22246725" SubType="Then">
<SET Id="RDK:22304087" VarRef="shape_item.text" Suppressed="True"> <SET Id="RDK:22304087" VarRef="shape_item.text" Suppressed="True">
@@ -25534,69 +25566,26 @@ ShapeList["id="+Param.Input[1].shapeID].name
</SET> </SET>
</GROUP> </GROUP>
<GROUP Id="RDK:22304080" SubType="Else"> <GROUP Id="RDK:22304080" SubType="Else">
<IFTHENELSE Id="RDK:22572366"> <IFTHENELSE Id="RDK:22069264">
<VALUECONDITION Value="true">
<EXP><![CDATA[$=$Shape_Prototype.VarioFoerdererDefinition.Typ="Auf"]]></EXP>
</VALUECONDITION>
<GROUP Id="RDK:22572388" SubType="Then">
<IFTHENELSE Id="RDK:22069264">
<VALUECONDITION Value="true">
<EXP><![CDATA[$=$Shape_Prototype.VarioFoerdererDefinition.H_Anfang>Shape_Prototype.VarioFoerdererDefinition.H_Ende]]></EXP>
</VALUECONDITION>
<GROUP Id="RDK:22069261" SubType="Then">
<SET Id="RDK:22069262" VarRef="Shape_Prototype.text" DesignTimeTip="↓">
<EXP><![CDATA[$=$IIF(Shape_Prototype.VarioFoerdererDefinition.LH_fits, "↑", "O")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
<GROUP Id="RDK:22069263" SubType="Else">
<SET Id="RDK:22069260" VarRef="Shape_Prototype.text">
<EXP><![CDATA[$=$IIF(Shape_Prototype.VarioFoerdererDefinition.LH_fits, "↓", "O")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
</IFTHENELSE>
</GROUP>
<GROUP Id="RDK:22572390" SubType="Else">
<IFTHENELSE Id="RDK:22572406">
<VALUECONDITION Value="true">
<EXP><![CDATA[$=$Shape_Prototype.VarioFoerdererDefinition.H_Anfang>Shape_Prototype.VarioFoerdererDefinition.H_Ende]]></EXP>
</VALUECONDITION>
<GROUP Id="RDK:22572403" SubType="Then">
<SET Id="RDK:22572404" VarRef="Shape_Prototype.text">
<EXP><![CDATA[$=$IIF(Shape_Prototype.VarioFoerdererDefinition.LH_fits, "↓", "O")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
<GROUP Id="RDK:22572405" SubType="Else">
<SET Id="RDK:22572402" VarRef="Shape_Prototype.text" DesignTimeTip="↓">
<EXP><![CDATA[$=$IIF(Shape_Prototype.VarioFoerdererDefinition.LH_fits, "↑", "O")]]></EXP>
<PAR Name="AdvancedOptions" />
</SET>
</GROUP>
</IFTHENELSE>
</GROUP>
</IFTHENELSE>
<IFTHENELSE Id="RDK:22572356" Suppressed="True">
<VALUECONDITION Value="true"> <VALUECONDITION Value="true">
<EXP><![CDATA[$=$Shape_Prototype.VarioFoerdererDefinition.H_Anfang>Shape_Prototype.VarioFoerdererDefinition.H_Ende]]></EXP> <EXP><![CDATA[$=$Shape_Prototype.VarioFoerdererDefinition.H_Anfang>Shape_Prototype.VarioFoerdererDefinition.H_Ende]]></EXP>
</VALUECONDITION> </VALUECONDITION>
<GROUP Id="RDK:22572352" SubType="Then"> <GROUP Id="RDK:22069261" SubType="Then">
<SET Id="RDK:22572350" VarRef="Shape_Prototype.text"> <SET Id="RDK:22069260" VarRef="Shape_Prototype.text">
<EXP><![CDATA[$=$IIF(Shape_Prototype.VarioFoerdererDefinition.LH_fits, "↓", "O")]]></EXP> <EXP><![CDATA[$=$IIF(Shape_Prototype.VarioFoerdererDefinition.LH_fits, "↓", "O")]]></EXP>
<PAR Name="AdvancedOptions" /> <PAR Name="AdvancedOptions" />
</SET> </SET>
<SET Id="RDK:22572351" VarRef="Shape_Prototype.VarioFoerdererDefinition.Typ"> <SET Id="RDK:22246711" VarRef="Shape_Prototype.VarioFoerdererDefinition.Typ">
<EXP><![CDATA[$C$Ab]]></EXP> <EXP><![CDATA[$C$Ab]]></EXP>
<PAR Name="AdvancedOptions" /> <PAR Name="AdvancedOptions" />
</SET> </SET>
</GROUP> </GROUP>
<GROUP Id="RDK:22572355" SubType="Else"> <GROUP Id="RDK:22069263" SubType="Else">
<SET Id="RDK:22572353" VarRef="Shape_Prototype.text" DesignTimeTip="↓"> <SET Id="RDK:22069262" VarRef="Shape_Prototype.text" DesignTimeTip="↓">
<EXP><![CDATA[$=$IIF(Shape_Prototype.VarioFoerdererDefinition.LH_fits, "↑", "O")]]></EXP> <EXP><![CDATA[$=$IIF(Shape_Prototype.VarioFoerdererDefinition.LH_fits, "↑", "O")]]></EXP>
<PAR Name="AdvancedOptions" /> <PAR Name="AdvancedOptions" />
</SET> </SET>
<SET Id="RDK:22572354" VarRef="Shape_Prototype.VarioFoerdererDefinition.Typ"> <SET Id="RDK:22246713" VarRef="Shape_Prototype.VarioFoerdererDefinition.Typ">
<EXP><![CDATA[$C$Auf]]></EXP> <EXP><![CDATA[$C$Auf]]></EXP>
<PAR Name="AdvancedOptions" /> <PAR Name="AdvancedOptions" />
</SET> </SET>
@@ -34289,7 +34278,9 @@ ShapeList["id="+Param.Input[1].shapeID].name
<EXP><![CDATA[$C$True]]></EXP> <EXP><![CDATA[$C$True]]></EXP>
</PAR> </PAR>
<PAR Name="Hidden" /> <PAR Name="Hidden" />
<PAR Name="ROnly" /> <PAR Name="ROnly">
<EXP><![CDATA[$C$True]]></EXP>
</PAR>
<PAR Name="Disabled" /> <PAR Name="Disabled" />
<PAR Name="Pressed" /> <PAR Name="Pressed" />
<PAR Name="AutoCommit"> <PAR Name="AutoCommit">