cpee 1.4.1 → 1.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +5 -5
  2. data/cpee.gemspec +1 -1
  3. data/lib/cpee/controller.rb +7 -16
  4. data/lib/cpee/implementation.rb +1 -1
  5. data/server/handlerwrappers/default.rb +12 -1
  6. data/server/instances/1/properties.xml +122 -34
  7. data/server/instances/10/properties.xml +127 -141
  8. data/server/instances/11/properties.xml +179 -162
  9. data/server/instances/12/properties.xml +87 -163
  10. data/server/instances/13/properties.xml +2002 -131
  11. data/server/instances/14/properties.xml +2044 -9
  12. data/server/instances/15/properties.xml +2039 -8
  13. data/server/instances/16/properties.xml +2069 -8
  14. data/server/instances/17/properties.xml +2065 -11
  15. data/server/instances/18/properties.xml +2109 -10
  16. data/server/instances/19/properties.xml +90 -5
  17. data/server/instances/2/properties.xml +135 -10
  18. data/server/instances/20/properties.xml +9 -169
  19. data/server/instances/21/properties.xml +82 -122
  20. data/server/instances/22/properties.xml +2042 -53
  21. data/server/instances/23/properties.xml +68 -75
  22. data/server/instances/24/properties.xml +2033 -82
  23. data/server/instances/25/properties.xml +37 -121
  24. data/server/instances/26/properties.xml +9 -9
  25. data/server/instances/27/properties.xml +2044 -48
  26. data/server/instances/28/properties.xml +2058 -83
  27. data/server/instances/29/properties.xml +2072 -83
  28. data/server/instances/3/properties.xml +211 -76
  29. data/server/instances/30/properties.xml +112 -293
  30. data/server/instances/31/properties.xml +9 -332
  31. data/server/instances/32/properties.xml +65 -582
  32. data/server/instances/33/properties.xml +99 -113
  33. data/server/instances/34/properties.xml +183 -0
  34. data/server/instances/35/properties.xml +183 -0
  35. data/server/instances/36/properties.xml +185 -0
  36. data/server/instances/37/properties.xml +183 -0
  37. data/server/instances/38/properties.xml +183 -0
  38. data/server/instances/39/properties.xml +183 -0
  39. data/server/instances/4/properties.xml +9 -92
  40. data/server/instances/40/properties.xml +183 -0
  41. data/server/instances/41/properties.xml +183 -0
  42. data/server/instances/42/properties.xml +183 -0
  43. data/server/instances/43/properties.xml +183 -0
  44. data/server/instances/44/properties.xml +183 -0
  45. data/server/instances/45/properties.xml +185 -0
  46. data/server/instances/{670 → 46}/properties.xml +1 -1
  47. data/server/instances/47/properties.xml +185 -0
  48. data/server/instances/48/properties.xml +185 -0
  49. data/server/instances/49/properties.xml +185 -0
  50. data/server/instances/5/properties.xml +1505 -49
  51. data/server/instances/50/properties.xml +183 -0
  52. data/server/instances/51/properties.xml +183 -0
  53. data/server/instances/52/properties.xml +2129 -0
  54. data/server/instances/53/properties.xml +2129 -0
  55. data/server/instances/54/properties.xml +319 -0
  56. data/server/instances/55/properties.xml +2114 -0
  57. data/server/instances/56/properties.xml +2114 -0
  58. data/server/instances/57/properties.xml +2119 -0
  59. data/server/instances/58/properties.xml +2119 -0
  60. data/server/instances/59/properties.xml +2119 -0
  61. data/server/instances/6/properties.xml +11 -186
  62. data/server/instances/60/properties.xml +2119 -0
  63. data/server/instances/61/properties.xml +2114 -0
  64. data/server/instances/62/properties.xml +2116 -0
  65. data/server/instances/63/properties.xml +2116 -0
  66. data/server/instances/64/properties.xml +2116 -0
  67. data/server/instances/65/properties.xml +76 -0
  68. data/server/instances/66/properties.xml +97 -0
  69. data/server/instances/7/properties.xml +1691 -82
  70. data/server/instances/8/properties.xml +1738 -53
  71. data/server/instances/9/properties.xml +680 -95
  72. data/server/resources/base.xml +78 -0
  73. data/server/resources/test.rb +19 -0
  74. data/server/resources/test.xml +33 -0
  75. data/server/server.pid +1 -0
  76. data/server/test.rb +3 -0
  77. metadata +41 -41
  78. data/log/logs/1/test +0 -1
  79. data/server/instances/10/notifications/182434032285ca1d06a8b6554b8889c8/consumer-secret +0 -1
  80. data/server/instances/10/notifications/182434032285ca1d06a8b6554b8889c8/producer-secret +0 -1
  81. data/server/instances/10/notifications/182434032285ca1d06a8b6554b8889c8/subscription.xml +0 -23
  82. data/server/instances/10/notifications/512a3785631a5245dbb45fa150ea72ed/consumer-secret +0 -1
  83. data/server/instances/10/notifications/512a3785631a5245dbb45fa150ea72ed/producer-secret +0 -1
  84. data/server/instances/10/notifications/512a3785631a5245dbb45fa150ea72ed/subscription.xml +0 -6
  85. data/server/instances/313/notifications/crisp/consumer-secret +0 -1
  86. data/server/instances/313/notifications/crisp/producer-secret +0 -1
  87. data/server/instances/313/notifications/crisp/subscription.xml +0 -7
  88. data/server/instances/313/notifications/logging/consumer-secret +0 -1
  89. data/server/instances/313/notifications/logging/producer-secret +0 -1
  90. data/server/instances/313/notifications/logging/subscription.xml +0 -7
  91. data/server/instances/313/notifications/logging_yaml/consumer-secret +0 -1
  92. data/server/instances/313/notifications/logging_yaml/producer-secret +0 -1
  93. data/server/instances/313/notifications/logging_yaml/subscription.xml +0 -7
  94. data/server/instances/313/properties.xml +0 -524
  95. data/server/instances/662/notifications/crisp/consumer-secret +0 -1
  96. data/server/instances/662/notifications/crisp/producer-secret +0 -1
  97. data/server/instances/662/notifications/crisp/subscription.xml +0 -7
  98. data/server/instances/662/notifications/logging/consumer-secret +0 -1
  99. data/server/instances/662/notifications/logging/producer-secret +0 -1
  100. data/server/instances/662/notifications/logging/subscription.xml +0 -7
  101. data/server/instances/662/notifications/logging_yaml/consumer-secret +0 -1
  102. data/server/instances/662/notifications/logging_yaml/producer-secret +0 -1
  103. data/server/instances/662/notifications/logging_yaml/subscription.xml +0 -7
  104. data/server/instances/662/properties.xml +0 -427
  105. data/server/instances/663/properties.xml +0 -31
  106. data/server/instances/664/properties.xml +0 -425
  107. data/server/instances/665/properties.xml +0 -425
  108. data/server/instances/666/properties.xml +0 -427
  109. data/server/instances/667/properties.xml +0 -427
  110. data/server/instances/668/properties.xml +0 -425
  111. data/server/instances/669/properties.xml +0 -425
  112. data/server/instances/671/properties.xml +0 -158
  113. data/server/instances/672/properties.xml +0 -199
  114. data/server/instances/673/properties.xml +0 -52
@@ -0,0 +1,2116 @@
1
+ <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
+ <attributes>
3
+ <uuid>d0711554-0eb7-4d56-83e8-f28e77aaa814</uuid>
4
+ <info>Main IS1</info>
5
+ <modeltype>CPEE</modeltype>
6
+ <theme>labels</theme>
7
+ <customer>OEBB</customer>
8
+ <status>development</status>
9
+ </attributes>
10
+ <state>finished</state>
11
+ <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
12
+ <positions/>
13
+ <dataelements>
14
+ <schaedigungen>["X","X","X"]</schaedigungen>
15
+ <taetigkeiten>[]</taetigkeiten>
16
+ <lagerlaufleistung>2.0</lagerlaufleistung>
17
+ <tauschgruppe>{"lagerlaufleistung":1.5,"wucht_gramm_pro_meter":5,"bremsscheiben":true,"personenzug":true,"gueterzug":false,"restverschleissstaerke":5}</tauschgruppe>
18
+ <lagerbauart>{"innenring":true,"deckel_mit_loch":false}</lagerbauart>
19
+ <restverschleissstaerke>6</restverschleissstaerke>
20
+ <radsatzwelle_status>gut</radsatzwelle_status>
21
+ <innenring_status>ok</innenring_status>
22
+ <geometriedaten_radsatz>{"X":1,"Y":2,"Z":3}</geometriedaten_radsatz>
23
+ <geometriedaten_radsatz_neu>true</geometriedaten_radsatz_neu>
24
+ </dataelements>
25
+ <endpoints>
26
+ <timeout>http://localhost/customers/oebb/is1/timeout.php</timeout>
27
+ <init>http://localhost/customers/oebb/is1/back.php?_taetigkeiten=taetigkeiten.txt&amp;_schaedigungen=schaedigungen.txt&amp;_tauschgruppe=tauschgruppe.txt&amp;lagerlaufleistung=2&amp;_lagerbauart=lagerbauart.txt&amp;restverschleissstaerke=6</init>
28
+ <fix>http://localhost/customers/oebb/is1/back.php</fix>
29
+ <eigen>http://localhost/customers/oebb/is1/back.php?taetigkeiten=Radsatz%20regenerieren</eigen>
30
+ <scheibe_drehen>http://localhost/customers/oebb/is1/back.php?_geometriedaten=geometriedaten.txt&amp;_geometriedaten_neu=geometriedatenneu.txt</scheibe_drehen>
31
+ <kerb>http://localhost/customers/oebb/is1/back.php</kerb>
32
+ <lageraufbereitung>http://localhost/customers/oebb/is1/timeout.php</lageraufbereitung>
33
+ <aufpressen>http://localhost/customers/oebb/is1/back.php?presskraftdiagramm=0&amp;wellenstatus=gut</aufpressen>
34
+ <abpressen>http://localhost/customers/oebb/is1/back.php?status=lagersitz%20ok</abpressen>
35
+ <aufpressen_gut>http://localhost/customers/oebb/is1/back.php?presskraftdiagramm=gut&amp;wellenstatus=gut</aufpressen_gut>
36
+ <buersten>http://localhost/customers/oebb/is1/back.php?taetigkeiten=Sandstrahlen</buersten>
37
+ <ut_welle>http://localhost/customers/oebb/is1/back.php?radsatzwelle_status=gut</ut_welle>
38
+ <ut_scheibe>http://localhost/customers/oebb/is1/back.php?ut_scheibe_status=gut</ut_scheibe>
39
+ <innenringmontage>http://localhost/customers/oebb/is1/back.php?innenring_status=ok</innenringmontage>
40
+ <wuchten>http://localhost/customers/oebb/is1/back.php?wucht_gramm_pro_meter=5</wuchten>
41
+ <worklist_b>http://localhost/customers/oebb/is1/back.php?taetigkeiten[0]=UT%20Scheibe&amp;taetigkeiten[1]=Eigenspannungsprüfung</worklist_b>
42
+ </endpoints>
43
+ <dsl>call :a1, :init, parameters: { :label =&gt; "Identifikation 110", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :radsatznummer, :value =&gt; nil), ⭐(:name =&gt; :wellentyp, :value =&gt; nil), ⭐(:name =&gt; :lagerbauart, :value =&gt; nil), ⭐(:name =&gt; :tauschgruppe, :value =&gt; nil), ⭐(:name =&gt; :eigentuemer, :value =&gt; nil), ⭐(:name =&gt; :regelwerk, :value =&gt; nil), ⭐(:name =&gt; :auftragsnummer, :value =&gt; nil), ⭐(:name =&gt; :mindeststragie, :value =&gt; nil), ⭐(:name =&gt; :technische_weisungen, :value =&gt; nil), ⭐(:name =&gt; :schadcodes, :value =&gt; nil), ⭐(:name =&gt; :lagerlaufleistung, :value =&gt; "in jahre"), ⭐(:name =&gt; :lagerlaufleistung, :value =&gt; "stempel am lager in zukunft aus sam")] }, finalize: &lt;&lt;-END
44
+ # Liste der Schadcodes
45
+ data.schaedigungen = result['schaedigungen']
46
+ # Manganschweissen, Gelber Anstrich, technische_weisungen
47
+ data.taetigkeiten = result['taetigkeiten']
48
+ data.lagerlaufleistung = result["lagerlaufleistung"].to_f
49
+ data.tauschgruppe = result["tauschgruppe"]
50
+ data.lagerbauart = result["lagerbauart"]
51
+ data.restverschleissstaerke = result["restverschleissstaerke"]
52
+ END
53
+ choose :exclusive do
54
+ alternative test{data.lagerbauart["deckel_mit_loch"] == false &amp;&amp; not(data.taetigkeiten.include?("Lagerdemontage"))} do
55
+ call :a2, :fix, parameters: { :label =&gt; "Lagerdeckeldemontage 130", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :deckel, :value =&gt; "true"), ⭐(:name =&gt; :lager, :value =&gt; "false"), ⭐(:name =&gt; :anbauteile, :value =&gt; "true")] }, finalize: &lt;&lt;-END
56
+ data.taetigkeiten &lt;&lt; "Montage Deckel"
57
+ END
58
+ end
59
+ otherwise do
60
+ call :a16, nil, parameters: { :label =&gt; "Lagerdemontage 130", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :deckel, :value =&gt; "true"), ⭐(:name =&gt; :lager, :value =&gt; "true"), ⭐(:name =&gt; :anbauteile, :value =&gt; "true"), ⭐(:name =&gt; :details, :value =&gt; nil)] }, finalize: &lt;&lt;-END
61
+ # ab IS1+IL aufwaerts
62
+ # data.details ist alles unten
63
+ data.wellenhersteller
64
+ data.wellenmaterial
65
+ data.schmelze
66
+ data.charge
67
+ data.wellenherstelldatum
68
+ data.erstfueger
69
+ data.erstfuegerdatum
70
+ data.wellennummer
71
+ data.lagerherstelldatum
72
+ data.lagerlaufleistung
73
+ data.lhm_korbnummer_rechts
74
+ data.lhm_korbnummer_links
75
+ # gibt der mitarbeiter ein, wird verglichen
76
+ END
77
+ choose :exclusive do
78
+ alternative test{data.radsatznummer != data.wellennummer} do
79
+ call :a4, nil, parameters: { :label =&gt; "Datenkonsitenz herstellen, Radsatznummer ändern ", :method =&gt; :post, :arguments =&gt; nil }
80
+ end
81
+ end
82
+ choose :exclusive do
83
+ alternative test{data.lagertyp == "kartuschenlager" &amp;&amp; data.lagerlaufleistung &lt; data.lagertyp.maximallaufleistung} do
84
+ call :a6, nil, parameters: { :label =&gt; "Externe Lageraufbereitung", :method =&gt; :post, :arguments =&gt; nil }
85
+ end
86
+ alternative test{data.lagertyp == "kartuschenlager" &amp;&amp; data.lagerlaufleistung &gt; data.lagertyp.maximallaufleistung} do
87
+ call :a5, nil, parameters: { :label =&gt; "Lager Verschrotten", :method =&gt; :post, :arguments =&gt; nil }
88
+ end
89
+ otherwise do
90
+ manipulate :a42, { :label =&gt; "Lager soll aufbereitet werden" }, &lt;&lt;-END
91
+ data.taetigkeiten &lt;&lt; 'Lageraufbereitung'
92
+ END
93
+ end
94
+ end
95
+ end
96
+ end
97
+ parallel :wait =&gt; -1 do
98
+ parallel_branch do ||
99
+ loop post_test{data.tauschgruppe["bremsscheibe"] == false || data.taetigkeiten.include?('Eigenspannungspruefung')} do
100
+ call :a3, :eigen, parameters: { :label =&gt; "Eigenspannungspruefung 140", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :werkstoff, :value =&gt; nil), ⭐(:name =&gt; :bauform_scheibe, :value =&gt; nil), ⭐(:name =&gt; :pruefprogramm, :value =&gt; nil)] }, finalize: &lt;&lt;-END
101
+ data.eigenspannungswerte
102
+ # Radsatz regenerieren falls die Station das meldet
103
+ data.taetigkeiten.push result["taetigkeiten"]
104
+ data.taetigkeiten.delete("Eigenspannungspruefung")
105
+ # eventuell entscheiden dass radsatz abgepresst werden soll
106
+ END
107
+ choose :exclusive do
108
+ alternative test{data.taetigkeiten.include? 'Radsatz regenerieren'} do
109
+ call :a20, :timeout, parameters: { :label =&gt; "Radsatz regenerieren", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }, finalize: &lt;&lt;-END
110
+ data.taetigkeiten.delete("Radsatz regenerieren")
111
+ END
112
+ end
113
+ end
114
+ end
115
+ choose :exclusive do
116
+ alternative test{data.lagerbauart["innenring"]} do
117
+ call :a32, :timeout, parameters: { :label =&gt; "Demontage Innenringe 420", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }
118
+ end
119
+ otherwise do
120
+ manipulate :a43, { :label =&gt; "Innenringstatus OK (weils keinen gibt)" }, &lt;&lt;-END
121
+ data.innenring_status = "ok"
122
+ END
123
+ end
124
+ end
125
+ choose :exclusive do
126
+ alternative test{data.tauschgruppe["bremsscheiben"] == true &amp;&amp; data.restverschleissstaerke.to_f &lt; data.tauschgruppe["restverschleissstaerke"].to_f} do
127
+ manipulate :a18, { :label =&gt; "Abpressen dazu" }, &lt;&lt;-END
128
+ data.taetigkeiten &lt;&lt; "Abpressen"
129
+ END
130
+ end
131
+ end
132
+ choose :exclusive do
133
+ alternative test{data.taetigkeiten.include? 'Abpressen'} do
134
+ loop post_test{data.wuchten_status == 'schlecht'} do
135
+ loop post_test{data.presskraftdiagramm.to_i != 0} do
136
+ call :a22, :abpressen, parameters: { :label =&gt; "Radscheibe abpressen 510/511", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
137
+ data.wellenstatus = result["status"] # "gut", "kaputt", "beschaedigt", "zu glatt"
138
+ data.taetigkeiten.delete("Abpressen")
139
+ END
140
+ choose :exclusive do
141
+ alternative test{data.wellenstatus =~ /kaputt/} do
142
+ call :a19, :terminate, parameters: { :label =&gt; "Terminate", :method =&gt; :post, :arguments =&gt; nil }
143
+ end
144
+ alternative test{data.wellenstatus == "beschaedigt" || data.wellenstatus == "glatt"} do
145
+ call :a23, :timeout, parameters: { :label =&gt; "Radsatzwelle drehen 520/521", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }
146
+ call :a24, :timeout, parameters: { :label =&gt; "MT Welle unbescheibt prüfen 535", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }, finalize: &lt;&lt;-END
147
+ data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"
148
+ END
149
+ end
150
+ end
151
+ choose :exclusive do
152
+ alternative test{data.presskraftdiagramm &amp;&amp; (data.presskraftdiagramm.to_i &gt;= 1 || data.presskraftdiagramm.to_i &lt; 0)} do
153
+ call :a25, :timeout, parameters: { :label =&gt; "Senkrechtbohrwerk 530/531", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }
154
+ end
155
+ end
156
+ call :a26, :aufpressen, parameters: { :label =&gt; "Radscheibe aufpressen 516/510", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
157
+ data.presskraftdiagramm = result["presskraftdiagramm"]
158
+ data.taetigkeiten.push *result["taetigkeiten"]
159
+ END
160
+ end
161
+ choose :exclusive do
162
+ alternative test{data.tauschgruppe["bremsscheiben"]} do
163
+ call :a8, :scheibe_drehen, parameters: { :label =&gt; "Rad und Bremsscheibe messen 320", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END
164
+ data.geometriedaten_radsatz = result['geometriedaten']
165
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false
166
+ END
167
+ end
168
+ otherwise do
169
+ call :a9, :scheibe_drehen, parameters: { :label =&gt; "Radscheibe messen 321", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END
170
+ data.geometriedaten_radsatz = result['geometriedaten']
171
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false
172
+ END
173
+ end
174
+ end
175
+ choose :exclusive do
176
+ alternative test{data.geometriedata_radsatz_neu == false} do
177
+ call :a30, :worklist_b, parameters: { :label =&gt; "Lesen Schadcode für Eigenspannung", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
178
+ # lesen anhand barcode
179
+ data.taetigkeiten.push *result["taetigkeiten"]
180
+ END
181
+ end
182
+ end
183
+ choose :exclusive do
184
+ alternative test{data.tauschgruppe["personenzug"] || (data.tauschgruppe["gueterzug"] &amp;&amp; data.tauschgruppe["bremsscheiben"])} do
185
+ call :a21, :wuchten, parameters: { :label =&gt; "Wuchten 550", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
186
+ # sicher gramm pro meter, nachgeschaut
187
+ data.wucht_gramm_pro_meter = result["wucht_gramm_pro_meter"]
188
+ if data.wucht_gramm_pro_meter != data.tauschgruppe["wucht_gramm_pro_meter"]
189
+ data.wucht_status == 'schlecht'
190
+ else
191
+ data.wucht_status == 'gut'
192
+ end
193
+ END
194
+ end
195
+ end
196
+ end
197
+ end
198
+ otherwise do
199
+ call :a31, :buersten, parameters: { :label =&gt; "Radsatzwelle Bürsten 490", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }, finalize: &lt;&lt;-END
200
+ # eventuell sandstrahlen
201
+ data.taetigkeiten.push *result["taetigkeiten"]
202
+ END
203
+ choose :exclusive do
204
+ alternative test{data.taetigkeiten.include? 'Sandstrahlen'} do
205
+ call :a33, :timeout, parameters: { :label =&gt; "Sandstrahlen 480", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }, finalize: &lt;&lt;-END
206
+ data.taetigkeiten.delete("Sandstrahlen")
207
+ END
208
+ end
209
+ end
210
+ call :a34, :ut_welle, parameters: { :label =&gt; "UT Radsatzwelle 430", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
211
+ data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht
212
+ END
213
+ call :a41, :timeout, parameters: { :label =&gt; "MT Allg. Prüfung 170", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }
214
+ manipulate :a27, { :label =&gt; "Radscheibe drehen dazu" }, &lt;&lt;-END
215
+ data.taetigkeiten &lt;&lt; "Radscheibe drehen"
216
+ END
217
+ end
218
+ end
219
+ loop post_test{data.innenring_status != 'ok'} do
220
+ loop post_test{data.radsatzwelle_status == 'schlecht'} do
221
+ call :a38, :timeout, parameters: { :label =&gt; "Radsatzwelle drehen HS4 595", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }
222
+ call :a37, :ut_welle, parameters: { :label =&gt; "UT Radsatzwelle 430", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
223
+ data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht
224
+ END
225
+ end
226
+ choose :exclusive do
227
+ alternative test{data.lagerbauart["innenring"]} do
228
+ call :a36, :innenringmontage, parameters: { :label =&gt; "Innenringmontage 190", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
229
+ data.innenring_status = result["innenring_status"] # ok, beschaedigung, untermass
230
+ END
231
+ end
232
+ end
233
+ end
234
+ loop post_test{data.taetigkeiten.include? 'Radscheibe drehen'} do
235
+ choose :exclusive do
236
+ alternative test{data.tauschgruppe["bremsscheiben"]} do
237
+ call :a39, :scheibe_drehen, parameters: { :label =&gt; "Rad und Bremsscheibe drehen 320", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END
238
+ data.geometriedaten_radsatz = result['geometriedaten']
239
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false # eventuell abpressen
240
+ data.taetigkeiten.push *result["taetigkeiten"] # eventuell Kerbschleifen
241
+ END
242
+ end
243
+ otherwise do
244
+ call :a40, :scheibe_drehen, parameters: { :label =&gt; "Radscheibe drehen 321", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END
245
+ data.geometriedaten_radsatz = result['geometriedaten']
246
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false
247
+ END
248
+ end
249
+ end
250
+ choose :exclusive do
251
+ alternative test{data.taetigkeiten.include? 'Kerbschleifen'} do
252
+ call :a17, :kerb, parameters: { :label =&gt; "Kerbschleifen 240", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
253
+ data.taetigkeiten.delete("Kerbschleifen")
254
+ data.taetigkeiten.push *result["taetigkeiten"] # eventuell abpressen
255
+ END
256
+ end
257
+ end
258
+ call :a10, :ut_scheibe, parameters: { :label =&gt; "UT Scheibe 630", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
259
+ data.taetigkeiten.delete("UT Scheibe")
260
+ # wenn riss in der lauffläche der scheibe
261
+ if result['ut_scheibe_status'] == 'gut'
262
+ data.taetigkeiten.delete("Radscheibe drehen")
263
+ end
264
+ data.taetigkeiten.push *result["taetigkeiten"]
265
+ END
266
+ end
267
+ end
268
+ parallel_branch do ||
269
+ choose :exclusive do
270
+ alternative test{data.taetigkeiten.include?("Lageraufbereitung")} do
271
+ call :a7, :lageraufbereitung, parameters: { :label =&gt; "Lageraufbereitung 680", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }
272
+ end
273
+ end
274
+ end
275
+ end
276
+ call :a11, :fix, parameters: { :label =&gt; "Lagermontage 640", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :lagerbauart, :value =&gt; nil)] }, finalize: &lt;&lt;-END
277
+ data.taetigkeiten.delete("Montage Deckel")
278
+ END
279
+ call :a12, :fix, parameters: { :label =&gt; "Austrittskontrolle 650", :method =&gt; :post, :arguments =&gt; nil }
280
+ call :a13, :fix, parameters: { :label =&gt; "Lackierung 675", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :strategie, :value =&gt; nil)] }
281
+ call :a14, :fix, parameters: { :label =&gt; "Versandfertig 690", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :technische_weisungen, :value =&gt; nil), ⭐(:name =&gt; :regelwerk, :value =&gt; nil)] }
282
+ call :a15, :fix, parameters: { :label =&gt; "Qualitaetsfreigabe 710", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :regelwerk, :value =&gt; nil), ⭐(:name =&gt; :technische_weisungen, :value =&gt; nil)] }
283
+ choose :exclusive do
284
+ alternative test{data.taetigkeiten.include? "Anbauteile montieren"} do
285
+ call :a35, nil, parameters: { :label =&gt; "Anbauteilmontage 670", :method =&gt; :post, :arguments =&gt; nil }
286
+ end
287
+ end
288
+ </dsl>
289
+ <dslx>
290
+ <description xmlns="http://cpee.org/ns/description/1.0">
291
+ <call id="a1" endpoint="init">
292
+ <parameters>
293
+ <label>Identifikation 110</label>
294
+ <method>:post</method>
295
+ <arguments>
296
+ <radsatznummer/>
297
+ <wellentyp/>
298
+ <lagerbauart/>
299
+ <tauschgruppe/>
300
+ <eigentuemer/>
301
+ <regelwerk/>
302
+ <auftragsnummer/>
303
+ <mindeststragie/>
304
+ <technische_weisungen/>
305
+ <schadcodes/>
306
+ <lagerlaufleistung>in jahre</lagerlaufleistung>
307
+ <lagerlaufleistung>stempel am lager in zukunft aus sam</lagerlaufleistung>
308
+ </arguments>
309
+ </parameters>
310
+ <finalize output="result"># Liste der Schadcodes
311
+ data.schaedigungen = result['schaedigungen']
312
+
313
+ # Manganschweissen, Gelber Anstrich, technische_weisungen
314
+ data.taetigkeiten = result['taetigkeiten']
315
+
316
+ data.lagerlaufleistung = result["lagerlaufleistung"].to_f
317
+ data.tauschgruppe = result["tauschgruppe"]
318
+ data.lagerbauart = result["lagerbauart"]
319
+ data.restverschleissstaerke = result["restverschleissstaerke"]</finalize>
320
+ <update output="result"/>
321
+ <_timing>
322
+ <_timing_min/>
323
+ <_timing_max/>
324
+ <_timing_avg/>
325
+ </_timing>
326
+ <_notes>
327
+ <_notes_general/>
328
+ <_notes_output/>
329
+ <_attachments/>
330
+ </_notes>
331
+ </call>
332
+ <choose mode="exclusive">
333
+ <alternative condition="data.lagerbauart[&quot;deckel_mit_loch&quot;] == false &amp;&amp; not(data.taetigkeiten.include?(&quot;Lagerdemontage&quot;))">
334
+ <call id="a2" endpoint="fix">
335
+ <parameters>
336
+ <label>Lagerdeckeldemontage 130</label>
337
+ <method>:post</method>
338
+ <arguments>
339
+ <deckel>true</deckel>
340
+ <lager>false</lager>
341
+ <anbauteile>true</anbauteile>
342
+ </arguments>
343
+ </parameters>
344
+ <finalize output="result">data.taetigkeiten &lt;&lt; "Montage Deckel"</finalize>
345
+ <update output="result"/>
346
+ <_timing>
347
+ <_timing_min/>
348
+ <_timing_max/>
349
+ <_timing_avg/>
350
+ </_timing>
351
+ <_notes>
352
+ <_notes_general/>
353
+ <_notes_output/>
354
+ <_attachments/>
355
+ </_notes>
356
+ </call>
357
+ </alternative>
358
+ <otherwise>
359
+ <call id="a16" endpoint="">
360
+ <parameters>
361
+ <label>Lagerdemontage 130</label>
362
+ <method>:post</method>
363
+ <arguments>
364
+ <deckel>true</deckel>
365
+ <lager>true</lager>
366
+ <anbauteile>true</anbauteile>
367
+ <details/>
368
+ </arguments>
369
+ </parameters>
370
+ <finalize output="result"># ab IS1+IL aufwaerts
371
+ # data.details ist alles unten
372
+
373
+ data.wellenhersteller
374
+ data.wellenmaterial
375
+ data.schmelze
376
+ data.charge
377
+ data.wellenherstelldatum
378
+ data.erstfueger
379
+ data.erstfuegerdatum
380
+ data.wellennummer
381
+ data.lagerherstelldatum
382
+ data.lagerlaufleistung
383
+ data.lhm_korbnummer_rechts
384
+ data.lhm_korbnummer_links
385
+
386
+ # gibt der mitarbeiter ein, wird verglichen</finalize>
387
+ <update output="result"/>
388
+ </call>
389
+ <choose mode="exclusive">
390
+ <alternative condition="data.radsatznummer != data.wellennummer">
391
+ <call id="a4" endpoint="">
392
+ <parameters>
393
+ <label>Datenkonsitenz herstellen, Radsatznummer ändern </label>
394
+ <method>:post</method>
395
+ <arguments/>
396
+ </parameters>
397
+ <finalize output="result"/>
398
+ <update output="result"/>
399
+ <_timing>
400
+ <_timing_min/>
401
+ <_timing_max/>
402
+ <_timing_avg/>
403
+ </_timing>
404
+ <_notes>
405
+ <_notes_general/>
406
+ <_notes_output/>
407
+ <_attachments/>
408
+ </_notes>
409
+ </call>
410
+ </alternative>
411
+ <otherwise/>
412
+ </choose>
413
+ <choose mode="exclusive">
414
+ <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerlaufleistung &lt; data.lagertyp.maximallaufleistung">
415
+ <call id="a6" endpoint="">
416
+ <parameters>
417
+ <label>Externe Lageraufbereitung</label>
418
+ <method>:post</method>
419
+ <arguments/>
420
+ </parameters>
421
+ </call>
422
+ </alternative>
423
+ <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerlaufleistung &gt; data.lagertyp.maximallaufleistung">
424
+ <call id="a5" endpoint="">
425
+ <parameters>
426
+ <label>Lager Verschrotten</label>
427
+ <method>:post</method>
428
+ <arguments/>
429
+ </parameters>
430
+ </call>
431
+ </alternative>
432
+ <otherwise>
433
+ <manipulate id="a42" label="Lager soll aufbereitet werden">data.taetigkeiten &lt;&lt; 'Lageraufbereitung'</manipulate>
434
+ </otherwise>
435
+ </choose>
436
+ </otherwise>
437
+ </choose>
438
+ <parallel wait="-1">
439
+ <parallel_branch pass="" local="">
440
+ <loop mode="post_test" condition="data.tauschgruppe[&quot;bremsscheibe&quot;] == false || data.taetigkeiten.include?('Eigenspannungspruefung')">
441
+ <call id="a3" endpoint="eigen">
442
+ <parameters>
443
+ <label>Eigenspannungspruefung 140</label>
444
+ <method>:post</method>
445
+ <arguments>
446
+ <werkstoff/>
447
+ <bauform_scheibe/>
448
+ <pruefprogramm/>
449
+ </arguments>
450
+ </parameters>
451
+ <finalize output="result">data.eigenspannungswerte
452
+ # Radsatz regenerieren falls die Station das meldet
453
+ data.taetigkeiten.push result["taetigkeiten"]
454
+ data.taetigkeiten.delete("Eigenspannungspruefung")
455
+ # eventuell entscheiden dass radsatz abgepresst werden soll</finalize>
456
+ <update output="result"/>
457
+ <_timing>
458
+ <_timing_min/>
459
+ <_timing_max/>
460
+ <_timing_avg/>
461
+ </_timing>
462
+ <_notes>
463
+ <_notes_general/>
464
+ <_notes_output/>
465
+ <_attachments/>
466
+ </_notes>
467
+ </call>
468
+ <choose mode="exclusive">
469
+ <alternative condition="data.taetigkeiten.include? 'Radsatz regenerieren'">
470
+ <call id="a20" endpoint="timeout">
471
+ <parameters>
472
+ <label>Radsatz regenerieren</label>
473
+ <method>:post</method>
474
+ <arguments>
475
+ <timeout>2</timeout>
476
+ </arguments>
477
+ </parameters>
478
+ <finalize output="result">data.taetigkeiten.delete("Radsatz regenerieren")</finalize>
479
+ <update output="result"/>
480
+ <_timing>
481
+ <_timing_min/>
482
+ <_timing_max/>
483
+ <_timing_avg/>
484
+ </_timing>
485
+ <_notes>
486
+ <_notes_general/>
487
+ <_notes_output/>
488
+ <_attachments/>
489
+ </_notes>
490
+ </call>
491
+ </alternative>
492
+ <otherwise/>
493
+ </choose>
494
+ </loop>
495
+ <choose mode="exclusive">
496
+ <alternative condition="data.lagerbauart[&quot;innenring&quot;]">
497
+ <call id="a32" endpoint="timeout">
498
+ <parameters>
499
+ <label>Demontage Innenringe 420</label>
500
+ <method>:post</method>
501
+ <arguments>
502
+ <timeout>2</timeout>
503
+ </arguments>
504
+ </parameters>
505
+ <finalize output="result"/>
506
+ <update output="result"/>
507
+ <_timing>
508
+ <_timing_min/>
509
+ <_timing_max/>
510
+ <_timing_avg/>
511
+ </_timing>
512
+ <_notes>
513
+ <_notes_general/>
514
+ <_notes_output/>
515
+ <_attachments/>
516
+ </_notes>
517
+ </call>
518
+ </alternative>
519
+ <otherwise>
520
+ <manipulate id="a43" label="Innenringstatus OK (weils keinen gibt)">data.innenring_status = "ok"</manipulate>
521
+ </otherwise>
522
+ </choose>
523
+ <choose mode="exclusive">
524
+ <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;] == true &amp;&amp; data.restverschleissstaerke.to_f &lt; data.tauschgruppe[&quot;restverschleissstaerke&quot;].to_f">
525
+ <manipulate id="a18" label="Abpressen dazu">data.taetigkeiten &lt;&lt; "Abpressen"</manipulate>
526
+ </alternative>
527
+ <otherwise/>
528
+ </choose>
529
+ <choose mode="exclusive">
530
+ <alternative condition="data.taetigkeiten.include? 'Abpressen'">
531
+ <loop mode="post_test" condition="data.wuchten_status == 'schlecht'">
532
+ <loop mode="post_test" condition="data.presskraftdiagramm.to_i != 0">
533
+ <call id="a22" endpoint="abpressen">
534
+ <parameters>
535
+ <label>Radscheibe abpressen 510/511</label>
536
+ <method>:post</method>
537
+ <arguments/>
538
+ </parameters>
539
+ <finalize output="result">data.wellenstatus = result["status"] # "gut", "kaputt", "beschaedigt", "zu glatt"
540
+ data.taetigkeiten.delete("Abpressen")</finalize>
541
+ <update output="result"/>
542
+ <_timing>
543
+ <_timing_min/>
544
+ <_timing_max/>
545
+ <_timing_avg/>
546
+ </_timing>
547
+ <_notes>
548
+ <_notes_general/>
549
+ <_notes_output/>
550
+ <_attachments/>
551
+ </_notes>
552
+ </call>
553
+ <choose mode="exclusive">
554
+ <alternative condition="data.wellenstatus =~ /kaputt/">
555
+ <call id="a19" endpoint="terminate">
556
+ <parameters>
557
+ <label>Terminate</label>
558
+ <method>:post</method>
559
+ <arguments/>
560
+ </parameters>
561
+ <_timing>
562
+ <_timing_min/>
563
+ <_timing_max/>
564
+ <_timing_avg/>
565
+ </_timing>
566
+ <_notes>
567
+ <_notes_general/>
568
+ <_attachments/>
569
+ </_notes>
570
+ </call>
571
+ </alternative>
572
+ <alternative condition="data.wellenstatus == &quot;beschaedigt&quot; || data.wellenstatus == &quot;glatt&quot;">
573
+ <call id="a23" endpoint="timeout">
574
+ <parameters>
575
+ <label>Radsatzwelle drehen 520/521</label>
576
+ <method>:post</method>
577
+ <arguments>
578
+ <timeout>2</timeout>
579
+ </arguments>
580
+ </parameters>
581
+ <finalize output="result"/>
582
+ <update output="result"/>
583
+ <_timing>
584
+ <_timing_min/>
585
+ <_timing_max/>
586
+ <_timing_avg/>
587
+ </_timing>
588
+ <_notes>
589
+ <_notes_general/>
590
+ <_notes_output/>
591
+ <_attachments/>
592
+ </_notes>
593
+ </call>
594
+ <call id="a24" endpoint="timeout">
595
+ <parameters>
596
+ <label>MT Welle unbescheibt prüfen 535</label>
597
+ <method>:post</method>
598
+ <arguments>
599
+ <timeout>2</timeout>
600
+ </arguments>
601
+ </parameters>
602
+ <finalize output="result">data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize>
603
+ <update output="result"/>
604
+ <_timing>
605
+ <_timing_min/>
606
+ <_timing_max/>
607
+ <_timing_avg/>
608
+ </_timing>
609
+ <_notes>
610
+ <_notes_general>Wenn status schlecht, zum welle drehen, wenn mindestdurchmesser erreicht, schrott</_notes_general>
611
+ <_notes_output/>
612
+ <_attachments/>
613
+ </_notes>
614
+ </call>
615
+ </alternative>
616
+ <otherwise/>
617
+ </choose>
618
+ <choose mode="exclusive">
619
+ <alternative condition="data.presskraftdiagramm &amp;&amp; (data.presskraftdiagramm.to_i &gt;= 1 || data.presskraftdiagramm.to_i &lt; 0)">
620
+ <call id="a25" endpoint="timeout">
621
+ <parameters>
622
+ <label>Senkrechtbohrwerk 530/531</label>
623
+ <method>:post</method>
624
+ <arguments>
625
+ <timeout>2</timeout>
626
+ </arguments>
627
+ </parameters>
628
+ <finalize output="result"/>
629
+ <update output="result"/>
630
+ <_timing>
631
+ <_timing_min/>
632
+ <_timing_max/>
633
+ <_timing_avg/>
634
+ </_timing>
635
+ <_notes>
636
+ <_notes_general>* wenn überdeckung nicht zu viel, nicht bohren, aufpressen mit schmierm.
637
+ * wenn viel überdeckung (presskraftdiagramm weit über max)
638
+ * wenn überdeckung unter min, neue scheibe bohren</_notes_general>
639
+ <_notes_output># ich hab radscheibe demontiert, alle
640
+
641
+ # die fuer die wellentype zulässig sind
642
+
643
+ # dürfen wieder rauf
644
+
645
+ # (verbrauchsmaterial liste)
646
+
647
+ # wellentype -&gt; zulässige materialnummer
648
+
649
+ # materialnummern können bremsscheibe, radscheibe oder
650
+
651
+ # radbremsscheibe sein. Mehrere zulässige.</_notes_output>
652
+ <_attachments/>
653
+ </_notes>
654
+ </call>
655
+ </alternative>
656
+ <otherwise/>
657
+ </choose>
658
+ <call id="a26" endpoint="aufpressen">
659
+ <parameters>
660
+ <label>Radscheibe aufpressen 516/510</label>
661
+ <method>:post</method>
662
+ <arguments/>
663
+ </parameters>
664
+ <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"]
665
+ data.taetigkeiten.push *result["taetigkeiten"]</finalize>
666
+ <update output="result"/>
667
+ <_timing>
668
+ <_timing_min/>
669
+ <_timing_max/>
670
+ <_timing_avg/>
671
+ </_timing>
672
+ <_notes>
673
+ <_notes_general>data.presskraftdiagramm == 0: alles in ordnung
674
+ data.presskraftdiagramm &gt; 1: zu viel über max, 530/531
675
+ data.presskraftdiagramm &lt; 0: zu wenig, 530/531
676
+ data.presskraftdiagramm zwischen 0 und 1: neuer versuch mit mehr schmiermittel</_notes_general>
677
+ <_notes_output/>
678
+ <_attachments/>
679
+ </_notes>
680
+ </call>
681
+ </loop>
682
+ <choose mode="exclusive">
683
+ <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;]">
684
+ <call id="a8" endpoint="scheibe_drehen">
685
+ <parameters>
686
+ <label>Rad und Bremsscheibe messen 320</label>
687
+ <method>:post</method>
688
+ <arguments>
689
+ <wellentyp/>
690
+ </arguments>
691
+ </parameters>
692
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
693
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
694
+ <update output="result"/>
695
+ <_timing>
696
+ <_timing_min/>
697
+ <_timing_max/>
698
+ <_timing_avg/>
699
+ </_timing>
700
+ <_notes>
701
+ <_notes_general/>
702
+ <_notes_output/>
703
+ <_attachments/>
704
+ </_notes>
705
+ </call>
706
+ </alternative>
707
+ <otherwise>
708
+ <call id="a9" endpoint="scheibe_drehen">
709
+ <parameters>
710
+ <label>Radscheibe messen 321</label>
711
+ <method>:post</method>
712
+ <arguments>
713
+ <wellentyp/>
714
+ </arguments>
715
+ </parameters>
716
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
717
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
718
+ <update output="result"/>
719
+ <_timing>
720
+ <_timing_min/>
721
+ <_timing_max/>
722
+ <_timing_avg/>
723
+ </_timing>
724
+ <_notes>
725
+ <_notes_general/>
726
+ <_notes_output/>
727
+ <_attachments/>
728
+ </_notes>
729
+ </call>
730
+ </otherwise>
731
+ </choose>
732
+ <choose mode="exclusive">
733
+ <alternative condition="data.geometriedata_radsatz_neu == false">
734
+ <call id="a30" endpoint="worklist_b">
735
+ <parameters>
736
+ <label>Lesen Schadcode für Eigenspannung</label>
737
+ <method>:post</method>
738
+ <arguments/>
739
+ </parameters>
740
+ <finalize output="result"># lesen anhand barcode
741
+ data.taetigkeiten.push *result["taetigkeiten"]</finalize>
742
+ <update output="result"/>
743
+ <_timing>
744
+ <_timing_min/>
745
+ <_timing_max/>
746
+ <_timing_avg/>
747
+ </_timing>
748
+ <_notes>
749
+ <_notes_general/>
750
+ <_notes_output/>
751
+ <_attachments/>
752
+ </_notes>
753
+ </call>
754
+ </alternative>
755
+ <otherwise/>
756
+ </choose>
757
+ <choose mode="exclusive">
758
+ <alternative condition="data.tauschgruppe[&quot;personenzug&quot;] || (data.tauschgruppe[&quot;gueterzug&quot;] &amp;&amp; data.tauschgruppe[&quot;bremsscheiben&quot;])">
759
+ <call id="a21" endpoint="wuchten">
760
+ <parameters>
761
+ <label>Wuchten 550</label>
762
+ <method>:post</method>
763
+ <arguments/>
764
+ </parameters>
765
+ <finalize output="result"># sicher gramm pro meter, nachgeschaut
766
+ data.wucht_gramm_pro_meter = result["wucht_gramm_pro_meter"]
767
+
768
+ if data.wucht_gramm_pro_meter != data.tauschgruppe["wucht_gramm_pro_meter"]
769
+ data.wucht_status == 'schlecht'
770
+ else
771
+ data.wucht_status == 'gut'
772
+ end</finalize>
773
+ <update output="result"/>
774
+ <_timing>
775
+ <_timing_min/>
776
+ <_timing_max/>
777
+ <_timing_avg/>
778
+ </_timing>
779
+ <_notes>
780
+ <_notes_general/>
781
+ <_notes_output/>
782
+ <_attachments/>
783
+ </_notes>
784
+ </call>
785
+ </alternative>
786
+ <otherwise/>
787
+ </choose>
788
+ </loop>
789
+ </alternative>
790
+ <otherwise>
791
+ <call id="a31" endpoint="buersten">
792
+ <parameters>
793
+ <label>Radsatzwelle Bürsten 490</label>
794
+ <method>:post</method>
795
+ <arguments>
796
+ <timeout>2</timeout>
797
+ </arguments>
798
+ </parameters>
799
+ <finalize output="result"># eventuell sandstrahlen
800
+ data.taetigkeiten.push *result["taetigkeiten"]</finalize>
801
+ <update output="result"/>
802
+ <_timing>
803
+ <_timing_min/>
804
+ <_timing_max/>
805
+ <_timing_avg/>
806
+ </_timing>
807
+ <_notes>
808
+ <_notes_general/>
809
+ <_notes_output/>
810
+ <_attachments/>
811
+ </_notes>
812
+ </call>
813
+ <choose mode="exclusive">
814
+ <alternative condition="data.taetigkeiten.include? 'Sandstrahlen'">
815
+ <call id="a33" endpoint="timeout">
816
+ <parameters>
817
+ <label>Sandstrahlen 480</label>
818
+ <method>:post</method>
819
+ <arguments>
820
+ <timeout>2</timeout>
821
+ </arguments>
822
+ </parameters>
823
+ <finalize output="result">data.taetigkeiten.delete("Sandstrahlen")</finalize>
824
+ <update output="result"/>
825
+ <_timing>
826
+ <_timing_min/>
827
+ <_timing_max/>
828
+ <_timing_avg/>
829
+ </_timing>
830
+ <_notes>
831
+ <_notes_general/>
832
+ <_notes_output/>
833
+ <_attachments/>
834
+ </_notes>
835
+ </call>
836
+ </alternative>
837
+ <otherwise/>
838
+ </choose>
839
+ <call id="a34" endpoint="ut_welle">
840
+ <parameters>
841
+ <label>UT Radsatzwelle 430</label>
842
+ <method>:post</method>
843
+ <arguments/>
844
+ </parameters>
845
+ <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize>
846
+ <update output="result"/>
847
+ <_timing>
848
+ <_timing_min/>
849
+ <_timing_max/>
850
+ <_timing_avg/>
851
+ </_timing>
852
+ <_notes>
853
+ <_notes_general/>
854
+ <_notes_output/>
855
+ <_attachments/>
856
+ </_notes>
857
+ </call>
858
+ <call id="a41" endpoint="timeout">
859
+ <parameters>
860
+ <label>MT Allg. Prüfung 170</label>
861
+ <method>:post</method>
862
+ <arguments>
863
+ <timeout>2</timeout>
864
+ </arguments>
865
+ </parameters>
866
+ <finalize output="result"/>
867
+ <update output="result"/>
868
+ <_timing>
869
+ <_timing_min/>
870
+ <_timing_max/>
871
+ <_timing_avg/>
872
+ </_timing>
873
+ <_notes>
874
+ <_notes_general/>
875
+ <_notes_output/>
876
+ <_attachments/>
877
+ </_notes>
878
+ </call>
879
+ <manipulate id="a27" label="Radscheibe drehen dazu">data.taetigkeiten &lt;&lt; "Radscheibe drehen"</manipulate>
880
+ </otherwise>
881
+ </choose>
882
+ <loop mode="post_test" condition="data.innenring_status != 'ok'">
883
+ <loop mode="post_test" condition="data.radsatzwelle_status == 'schlecht'">
884
+ <call id="a38" endpoint="timeout">
885
+ <parameters>
886
+ <label>Radsatzwelle drehen HS4 595</label>
887
+ <method>:post</method>
888
+ <arguments>
889
+ <timeout>2</timeout>
890
+ </arguments>
891
+ </parameters>
892
+ <finalize output="result"/>
893
+ <update output="result"/>
894
+ <_timing>
895
+ <_timing_min/>
896
+ <_timing_max/>
897
+ <_timing_avg/>
898
+ </_timing>
899
+ <_notes>
900
+ <_notes_general/>
901
+ <_notes_output/>
902
+ <_attachments/>
903
+ </_notes>
904
+ </call>
905
+ <call id="a37" endpoint="ut_welle">
906
+ <parameters>
907
+ <label>UT Radsatzwelle 430</label>
908
+ <method>:post</method>
909
+ <arguments/>
910
+ </parameters>
911
+ <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize>
912
+ <update output="result"/>
913
+ <_timing>
914
+ <_timing_min/>
915
+ <_timing_max/>
916
+ <_timing_avg/>
917
+ </_timing>
918
+ <_notes>
919
+ <_notes_general/>
920
+ <_notes_output/>
921
+ <_attachments/>
922
+ </_notes>
923
+ </call>
924
+ </loop>
925
+ <choose mode="exclusive">
926
+ <alternative condition="data.lagerbauart[&quot;innenring&quot;]">
927
+ <call id="a36" endpoint="innenringmontage">
928
+ <parameters>
929
+ <label>Innenringmontage 190</label>
930
+ <method>:post</method>
931
+ <arguments/>
932
+ </parameters>
933
+ <finalize output="result">data.innenring_status = result["innenring_status"] # ok, beschaedigung, untermass</finalize>
934
+ <update output="result"/>
935
+ <_timing>
936
+ <_timing_min/>
937
+ <_timing_max/>
938
+ <_timing_avg/>
939
+ </_timing>
940
+ <_notes>
941
+ <_notes_general/>
942
+ <_notes_output/>
943
+ <_attachments/>
944
+ </_notes>
945
+ </call>
946
+ </alternative>
947
+ <otherwise/>
948
+ </choose>
949
+ </loop>
950
+ <loop mode="post_test" condition="data.taetigkeiten.include? 'Radscheibe drehen'">
951
+ <choose mode="exclusive">
952
+ <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;]">
953
+ <call id="a39" endpoint="scheibe_drehen">
954
+ <parameters>
955
+ <label>Rad und Bremsscheibe drehen 320</label>
956
+ <method>:post</method>
957
+ <arguments>
958
+ <wellentyp/>
959
+ </arguments>
960
+ </parameters>
961
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
962
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false # eventuell abpressen
963
+ data.taetigkeiten.push *result["taetigkeiten"] # eventuell Kerbschleifen</finalize>
964
+ <update output="result"/>
965
+ <_timing>
966
+ <_timing_min/>
967
+ <_timing_max/>
968
+ <_timing_avg/>
969
+ </_timing>
970
+ <_notes>
971
+ <_notes_general/>
972
+ <_notes_output/>
973
+ <_attachments/>
974
+ </_notes>
975
+ </call>
976
+ </alternative>
977
+ <otherwise>
978
+ <call id="a40" endpoint="scheibe_drehen">
979
+ <parameters>
980
+ <label>Radscheibe drehen 321</label>
981
+ <method>:post</method>
982
+ <arguments>
983
+ <wellentyp/>
984
+ </arguments>
985
+ </parameters>
986
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
987
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
988
+ <update output="result"/>
989
+ <_timing>
990
+ <_timing_min/>
991
+ <_timing_max/>
992
+ <_timing_avg/>
993
+ </_timing>
994
+ <_notes>
995
+ <_notes_general/>
996
+ <_notes_output/>
997
+ <_attachments/>
998
+ </_notes>
999
+ </call>
1000
+ </otherwise>
1001
+ </choose>
1002
+ <choose mode="exclusive">
1003
+ <alternative condition="data.taetigkeiten.include? 'Kerbschleifen'">
1004
+ <call id="a17" endpoint="kerb">
1005
+ <parameters>
1006
+ <label>Kerbschleifen 240</label>
1007
+ <method>:post</method>
1008
+ <arguments/>
1009
+ </parameters>
1010
+ <finalize output="result">data.taetigkeiten.delete("Kerbschleifen")
1011
+ data.taetigkeiten.push *result["taetigkeiten"] # eventuell abpressen</finalize>
1012
+ <update output="result"/>
1013
+ <_timing>
1014
+ <_timing_min/>
1015
+ <_timing_max/>
1016
+ <_timing_avg/>
1017
+ </_timing>
1018
+ <_notes>
1019
+ <_notes_general/>
1020
+ <_notes_output/>
1021
+ <_attachments/>
1022
+ </_notes>
1023
+ </call>
1024
+ </alternative>
1025
+ <otherwise/>
1026
+ </choose>
1027
+ <call id="a10" endpoint="ut_scheibe">
1028
+ <parameters>
1029
+ <label>UT Scheibe 630</label>
1030
+ <method>:post</method>
1031
+ <arguments/>
1032
+ </parameters>
1033
+ <finalize output="result">data.taetigkeiten.delete("UT Scheibe")
1034
+ # wenn riss in der lauffläche der scheibe
1035
+ if result['ut_scheibe_status'] == 'gut'
1036
+ data.taetigkeiten.delete("Radscheibe drehen")
1037
+ end
1038
+ data.taetigkeiten.push *result["taetigkeiten"]</finalize>
1039
+ <update output="result"/>
1040
+ <_timing>
1041
+ <_timing_min/>
1042
+ <_timing_max/>
1043
+ <_timing_avg/>
1044
+ </_timing>
1045
+ <_notes>
1046
+ <_notes_general/>
1047
+ <_notes_output/>
1048
+ <_attachments/>
1049
+ </_notes>
1050
+ </call>
1051
+ </loop>
1052
+ </parallel_branch>
1053
+ <parallel_branch pass="" local="">
1054
+ <choose mode="exclusive">
1055
+ <alternative condition="data.taetigkeiten.include?(&quot;Lageraufbereitung&quot;)">
1056
+ <call id="a7" endpoint="lageraufbereitung">
1057
+ <parameters>
1058
+ <label>Lageraufbereitung 680</label>
1059
+ <method>:post</method>
1060
+ <arguments>
1061
+ <timeout>2</timeout>
1062
+ </arguments>
1063
+ </parameters>
1064
+ <finalize output="result"/>
1065
+ <update output="result"/>
1066
+ <_timing>
1067
+ <_timing_min/>
1068
+ <_timing_max/>
1069
+ <_timing_avg/>
1070
+ </_timing>
1071
+ <_notes>
1072
+ <_notes_general/>
1073
+ <_notes_output/>
1074
+ <_attachments/>
1075
+ </_notes>
1076
+ </call>
1077
+ </alternative>
1078
+ </choose>
1079
+ </parallel_branch>
1080
+ </parallel>
1081
+ <call id="a11" endpoint="fix">
1082
+ <parameters>
1083
+ <label>Lagermontage 640</label>
1084
+ <method>:post</method>
1085
+ <arguments>
1086
+ <lagerbauart/>
1087
+ </arguments>
1088
+ </parameters>
1089
+ <finalize output="result">data.taetigkeiten.delete("Montage Deckel")</finalize>
1090
+ <update output="result"/>
1091
+ <_notes>
1092
+ <_notes_general/>
1093
+ </_notes>
1094
+ </call>
1095
+ <call id="a12" endpoint="fix">
1096
+ <parameters>
1097
+ <label>Austrittskontrolle 650</label>
1098
+ <method>:post</method>
1099
+ <arguments/>
1100
+ </parameters>
1101
+ <finalize output="result"/>
1102
+ <update output="result"/>
1103
+ <_timing>
1104
+ <_timing_min/>
1105
+ <_timing_max/>
1106
+ <_timing_avg/>
1107
+ </_timing>
1108
+ <_notes>
1109
+ <_notes_general/>
1110
+ <_notes_output/>
1111
+ <_attachments/>
1112
+ </_notes>
1113
+ </call>
1114
+ <call id="a13" endpoint="fix">
1115
+ <parameters>
1116
+ <label>Lackierung 675</label>
1117
+ <method>:post</method>
1118
+ <arguments>
1119
+ <strategie/>
1120
+ </arguments>
1121
+ </parameters>
1122
+ <finalize output="result"/>
1123
+ <update output="result"/>
1124
+ <_timing>
1125
+ <_timing_min/>
1126
+ <_timing_max/>
1127
+ <_timing_avg/>
1128
+ </_timing>
1129
+ <_notes>
1130
+ <_notes_general/>
1131
+ <_notes_output/>
1132
+ <_attachments/>
1133
+ </_notes>
1134
+ </call>
1135
+ <call id="a14" endpoint="fix">
1136
+ <parameters>
1137
+ <label>Versandfertig 690</label>
1138
+ <method>:post</method>
1139
+ <arguments>
1140
+ <technische_weisungen/>
1141
+ <regelwerk/>
1142
+ </arguments>
1143
+ </parameters>
1144
+ <finalize output="result"/>
1145
+ <update output="result"/>
1146
+ <_timing>
1147
+ <_timing_min/>
1148
+ <_timing_max/>
1149
+ <_timing_avg/>
1150
+ </_timing>
1151
+ <_notes>
1152
+ <_notes_general/>
1153
+ <_notes_output/>
1154
+ <_attachments/>
1155
+ </_notes>
1156
+ </call>
1157
+ <call id="a15" endpoint="fix">
1158
+ <parameters>
1159
+ <label>Qualitaetsfreigabe 710</label>
1160
+ <method>:post</method>
1161
+ <arguments>
1162
+ <regelwerk/>
1163
+ <technische_weisungen/>
1164
+ </arguments>
1165
+ </parameters>
1166
+ <finalize output="result"/>
1167
+ <update output="result"/>
1168
+ <_timing>
1169
+ <_timing_min/>
1170
+ <_timing_max/>
1171
+ <_timing_avg/>
1172
+ </_timing>
1173
+ <_notes>
1174
+ <_notes_general/>
1175
+ <_notes_output/>
1176
+ <_attachments/>
1177
+ </_notes>
1178
+ </call>
1179
+ <choose mode="exclusive">
1180
+ <alternative condition="data.taetigkeiten.include? &quot;Anbauteile montieren&quot;">
1181
+ <call id="a35" endpoint="">
1182
+ <parameters>
1183
+ <label>Anbauteilmontage 670</label>
1184
+ <method>:post</method>
1185
+ <arguments/>
1186
+ </parameters>
1187
+ <finalize output="result"/>
1188
+ <update output="result"/>
1189
+ <_notes>
1190
+ <_notes_general/>
1191
+ </_notes>
1192
+ </call>
1193
+ </alternative>
1194
+ <otherwise/>
1195
+ </choose>
1196
+ </description>
1197
+ </dslx>
1198
+ <status>
1199
+ <id>0</id>
1200
+ <message>undefined</message>
1201
+ </status>
1202
+ <description>
1203
+ <description xmlns="http://cpee.org/ns/description/1.0">
1204
+ <call id="a1" endpoint="init">
1205
+ <parameters>
1206
+ <label>Identifikation 110</label>
1207
+ <method>:post</method>
1208
+ <arguments>
1209
+ <radsatznummer/>
1210
+ <wellentyp/>
1211
+ <lagerbauart/>
1212
+ <tauschgruppe/>
1213
+ <eigentuemer/>
1214
+ <regelwerk/>
1215
+ <auftragsnummer/>
1216
+ <mindeststragie/>
1217
+ <technische_weisungen/>
1218
+ <schadcodes/>
1219
+ <lagerlaufleistung>in jahre</lagerlaufleistung>
1220
+ <lagerlaufleistung>stempel am lager in zukunft aus sam</lagerlaufleistung>
1221
+ </arguments>
1222
+ </parameters>
1223
+ <finalize output="result"># Liste der Schadcodes
1224
+ data.schaedigungen = result['schaedigungen']
1225
+
1226
+ # Manganschweissen, Gelber Anstrich, technische_weisungen
1227
+ data.taetigkeiten = result['taetigkeiten']
1228
+
1229
+ data.lagerlaufleistung = result["lagerlaufleistung"].to_f
1230
+ data.tauschgruppe = result["tauschgruppe"]
1231
+ data.lagerbauart = result["lagerbauart"]
1232
+ data.restverschleissstaerke = result["restverschleissstaerke"]</finalize>
1233
+ <update output="result"/>
1234
+ <_timing>
1235
+ <_timing_min/>
1236
+ <_timing_max/>
1237
+ <_timing_avg/>
1238
+ </_timing>
1239
+ <_notes>
1240
+ <_notes_general/>
1241
+ <_notes_output/>
1242
+ <_attachments/>
1243
+ </_notes>
1244
+ </call>
1245
+ <choose mode="exclusive">
1246
+ <alternative condition="data.lagerbauart[&quot;deckel_mit_loch&quot;] == false &amp;&amp; not(data.taetigkeiten.include?(&quot;Lagerdemontage&quot;))">
1247
+ <call id="a2" endpoint="fix">
1248
+ <parameters>
1249
+ <label>Lagerdeckeldemontage 130</label>
1250
+ <method>:post</method>
1251
+ <arguments>
1252
+ <deckel>true</deckel>
1253
+ <lager>false</lager>
1254
+ <anbauteile>true</anbauteile>
1255
+ </arguments>
1256
+ </parameters>
1257
+ <finalize output="result">data.taetigkeiten &lt;&lt; "Montage Deckel"</finalize>
1258
+ <update output="result"/>
1259
+ <_timing>
1260
+ <_timing_min/>
1261
+ <_timing_max/>
1262
+ <_timing_avg/>
1263
+ </_timing>
1264
+ <_notes>
1265
+ <_notes_general/>
1266
+ <_notes_output/>
1267
+ <_attachments/>
1268
+ </_notes>
1269
+ </call>
1270
+ </alternative>
1271
+ <otherwise>
1272
+ <call id="a16" endpoint="">
1273
+ <parameters>
1274
+ <label>Lagerdemontage 130</label>
1275
+ <method>:post</method>
1276
+ <arguments>
1277
+ <deckel>true</deckel>
1278
+ <lager>true</lager>
1279
+ <anbauteile>true</anbauteile>
1280
+ <details/>
1281
+ </arguments>
1282
+ </parameters>
1283
+ <finalize output="result"># ab IS1+IL aufwaerts
1284
+ # data.details ist alles unten
1285
+
1286
+ data.wellenhersteller
1287
+ data.wellenmaterial
1288
+ data.schmelze
1289
+ data.charge
1290
+ data.wellenherstelldatum
1291
+ data.erstfueger
1292
+ data.erstfuegerdatum
1293
+ data.wellennummer
1294
+ data.lagerherstelldatum
1295
+ data.lagerlaufleistung
1296
+ data.lhm_korbnummer_rechts
1297
+ data.lhm_korbnummer_links
1298
+
1299
+ # gibt der mitarbeiter ein, wird verglichen</finalize>
1300
+ <update output="result"/>
1301
+ </call>
1302
+ <choose mode="exclusive">
1303
+ <alternative condition="data.radsatznummer != data.wellennummer">
1304
+ <call id="a4" endpoint="">
1305
+ <parameters>
1306
+ <label>Datenkonsitenz herstellen, Radsatznummer ändern </label>
1307
+ <method>:post</method>
1308
+ <arguments/>
1309
+ </parameters>
1310
+ <finalize output="result"/>
1311
+ <update output="result"/>
1312
+ <_timing>
1313
+ <_timing_min/>
1314
+ <_timing_max/>
1315
+ <_timing_avg/>
1316
+ </_timing>
1317
+ <_notes>
1318
+ <_notes_general/>
1319
+ <_notes_output/>
1320
+ <_attachments/>
1321
+ </_notes>
1322
+ </call>
1323
+ </alternative>
1324
+ <otherwise/>
1325
+ </choose>
1326
+ <choose mode="exclusive">
1327
+ <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerlaufleistung &lt; data.lagertyp.maximallaufleistung">
1328
+ <call id="a6" endpoint="">
1329
+ <parameters>
1330
+ <label>Externe Lageraufbereitung</label>
1331
+ <method>:post</method>
1332
+ <arguments/>
1333
+ </parameters>
1334
+ </call>
1335
+ </alternative>
1336
+ <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerlaufleistung &gt; data.lagertyp.maximallaufleistung">
1337
+ <call id="a5" endpoint="">
1338
+ <parameters>
1339
+ <label>Lager Verschrotten</label>
1340
+ <method>:post</method>
1341
+ <arguments/>
1342
+ </parameters>
1343
+ </call>
1344
+ </alternative>
1345
+ <otherwise>
1346
+ <manipulate id="a42" label="Lager soll aufbereitet werden">data.taetigkeiten &lt;&lt; 'Lageraufbereitung'</manipulate>
1347
+ </otherwise>
1348
+ </choose>
1349
+ </otherwise>
1350
+ </choose>
1351
+ <parallel wait="-1">
1352
+ <parallel_branch pass="" local="">
1353
+ <loop mode="post_test" condition="data.tauschgruppe[&quot;bremsscheibe&quot;] == false || data.taetigkeiten.include?('Eigenspannungspruefung')">
1354
+ <call id="a3" endpoint="eigen">
1355
+ <parameters>
1356
+ <label>Eigenspannungspruefung 140</label>
1357
+ <method>:post</method>
1358
+ <arguments>
1359
+ <werkstoff/>
1360
+ <bauform_scheibe/>
1361
+ <pruefprogramm/>
1362
+ </arguments>
1363
+ </parameters>
1364
+ <finalize output="result">data.eigenspannungswerte
1365
+ # Radsatz regenerieren falls die Station das meldet
1366
+ data.taetigkeiten.push result["taetigkeiten"]
1367
+ data.taetigkeiten.delete("Eigenspannungspruefung")
1368
+ # eventuell entscheiden dass radsatz abgepresst werden soll</finalize>
1369
+ <update output="result"/>
1370
+ <_timing>
1371
+ <_timing_min/>
1372
+ <_timing_max/>
1373
+ <_timing_avg/>
1374
+ </_timing>
1375
+ <_notes>
1376
+ <_notes_general/>
1377
+ <_notes_output/>
1378
+ <_attachments/>
1379
+ </_notes>
1380
+ </call>
1381
+ <choose mode="exclusive">
1382
+ <alternative condition="data.taetigkeiten.include? 'Radsatz regenerieren'">
1383
+ <call id="a20" endpoint="timeout">
1384
+ <parameters>
1385
+ <label>Radsatz regenerieren</label>
1386
+ <method>:post</method>
1387
+ <arguments>
1388
+ <timeout>2</timeout>
1389
+ </arguments>
1390
+ </parameters>
1391
+ <finalize output="result">data.taetigkeiten.delete("Radsatz regenerieren")</finalize>
1392
+ <update output="result"/>
1393
+ <_timing>
1394
+ <_timing_min/>
1395
+ <_timing_max/>
1396
+ <_timing_avg/>
1397
+ </_timing>
1398
+ <_notes>
1399
+ <_notes_general/>
1400
+ <_notes_output/>
1401
+ <_attachments/>
1402
+ </_notes>
1403
+ </call>
1404
+ </alternative>
1405
+ <otherwise/>
1406
+ </choose>
1407
+ </loop>
1408
+ <choose mode="exclusive">
1409
+ <alternative condition="data.lagerbauart[&quot;innenring&quot;]">
1410
+ <call id="a32" endpoint="timeout">
1411
+ <parameters>
1412
+ <label>Demontage Innenringe 420</label>
1413
+ <method>:post</method>
1414
+ <arguments>
1415
+ <timeout>2</timeout>
1416
+ </arguments>
1417
+ </parameters>
1418
+ <finalize output="result"/>
1419
+ <update output="result"/>
1420
+ <_timing>
1421
+ <_timing_min/>
1422
+ <_timing_max/>
1423
+ <_timing_avg/>
1424
+ </_timing>
1425
+ <_notes>
1426
+ <_notes_general/>
1427
+ <_notes_output/>
1428
+ <_attachments/>
1429
+ </_notes>
1430
+ </call>
1431
+ </alternative>
1432
+ <otherwise>
1433
+ <manipulate id="a43" label="Innenringstatus OK (weils keinen gibt)">data.innenring_status = "ok"</manipulate>
1434
+ </otherwise>
1435
+ </choose>
1436
+ <choose mode="exclusive">
1437
+ <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;] == true &amp;&amp; data.restverschleissstaerke.to_f &lt; data.tauschgruppe[&quot;restverschleissstaerke&quot;].to_f">
1438
+ <manipulate id="a18" label="Abpressen dazu">data.taetigkeiten &lt;&lt; "Abpressen"</manipulate>
1439
+ </alternative>
1440
+ <otherwise/>
1441
+ </choose>
1442
+ <choose mode="exclusive">
1443
+ <alternative condition="data.taetigkeiten.include? 'Abpressen'">
1444
+ <loop mode="post_test" condition="data.wuchten_status == 'schlecht'">
1445
+ <loop mode="post_test" condition="data.presskraftdiagramm.to_i != 0">
1446
+ <call id="a22" endpoint="abpressen">
1447
+ <parameters>
1448
+ <label>Radscheibe abpressen 510/511</label>
1449
+ <method>:post</method>
1450
+ <arguments/>
1451
+ </parameters>
1452
+ <finalize output="result">data.wellenstatus = result["status"] # "gut", "kaputt", "beschaedigt", "zu glatt"
1453
+ data.taetigkeiten.delete("Abpressen")</finalize>
1454
+ <update output="result"/>
1455
+ <_timing>
1456
+ <_timing_min/>
1457
+ <_timing_max/>
1458
+ <_timing_avg/>
1459
+ </_timing>
1460
+ <_notes>
1461
+ <_notes_general/>
1462
+ <_notes_output/>
1463
+ <_attachments/>
1464
+ </_notes>
1465
+ </call>
1466
+ <choose mode="exclusive">
1467
+ <alternative condition="data.wellenstatus =~ /kaputt/">
1468
+ <call id="a19" endpoint="terminate">
1469
+ <parameters>
1470
+ <label>Terminate</label>
1471
+ <method>:post</method>
1472
+ <arguments/>
1473
+ </parameters>
1474
+ <_timing>
1475
+ <_timing_min/>
1476
+ <_timing_max/>
1477
+ <_timing_avg/>
1478
+ </_timing>
1479
+ <_notes>
1480
+ <_notes_general/>
1481
+ <_attachments/>
1482
+ </_notes>
1483
+ </call>
1484
+ </alternative>
1485
+ <alternative condition="data.wellenstatus == &quot;beschaedigt&quot; || data.wellenstatus == &quot;glatt&quot;">
1486
+ <call id="a23" endpoint="timeout">
1487
+ <parameters>
1488
+ <label>Radsatzwelle drehen 520/521</label>
1489
+ <method>:post</method>
1490
+ <arguments>
1491
+ <timeout>2</timeout>
1492
+ </arguments>
1493
+ </parameters>
1494
+ <finalize output="result"/>
1495
+ <update output="result"/>
1496
+ <_timing>
1497
+ <_timing_min/>
1498
+ <_timing_max/>
1499
+ <_timing_avg/>
1500
+ </_timing>
1501
+ <_notes>
1502
+ <_notes_general/>
1503
+ <_notes_output/>
1504
+ <_attachments/>
1505
+ </_notes>
1506
+ </call>
1507
+ <call id="a24" endpoint="timeout">
1508
+ <parameters>
1509
+ <label>MT Welle unbescheibt prüfen 535</label>
1510
+ <method>:post</method>
1511
+ <arguments>
1512
+ <timeout>2</timeout>
1513
+ </arguments>
1514
+ </parameters>
1515
+ <finalize output="result">data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize>
1516
+ <update output="result"/>
1517
+ <_timing>
1518
+ <_timing_min/>
1519
+ <_timing_max/>
1520
+ <_timing_avg/>
1521
+ </_timing>
1522
+ <_notes>
1523
+ <_notes_general>Wenn status schlecht, zum welle drehen, wenn mindestdurchmesser erreicht, schrott</_notes_general>
1524
+ <_notes_output/>
1525
+ <_attachments/>
1526
+ </_notes>
1527
+ </call>
1528
+ </alternative>
1529
+ <otherwise/>
1530
+ </choose>
1531
+ <choose mode="exclusive">
1532
+ <alternative condition="data.presskraftdiagramm &amp;&amp; (data.presskraftdiagramm.to_i &gt;= 1 || data.presskraftdiagramm.to_i &lt; 0)">
1533
+ <call id="a25" endpoint="timeout">
1534
+ <parameters>
1535
+ <label>Senkrechtbohrwerk 530/531</label>
1536
+ <method>:post</method>
1537
+ <arguments>
1538
+ <timeout>2</timeout>
1539
+ </arguments>
1540
+ </parameters>
1541
+ <finalize output="result"/>
1542
+ <update output="result"/>
1543
+ <_timing>
1544
+ <_timing_min/>
1545
+ <_timing_max/>
1546
+ <_timing_avg/>
1547
+ </_timing>
1548
+ <_notes>
1549
+ <_notes_general>* wenn überdeckung nicht zu viel, nicht bohren, aufpressen mit schmierm.
1550
+ * wenn viel überdeckung (presskraftdiagramm weit über max)
1551
+ * wenn überdeckung unter min, neue scheibe bohren</_notes_general>
1552
+ <_notes_output># ich hab radscheibe demontiert, alle
1553
+
1554
+ # die fuer die wellentype zulässig sind
1555
+
1556
+ # dürfen wieder rauf
1557
+
1558
+ # (verbrauchsmaterial liste)
1559
+
1560
+ # wellentype -&gt; zulässige materialnummer
1561
+
1562
+ # materialnummern können bremsscheibe, radscheibe oder
1563
+
1564
+ # radbremsscheibe sein. Mehrere zulässige.</_notes_output>
1565
+ <_attachments/>
1566
+ </_notes>
1567
+ </call>
1568
+ </alternative>
1569
+ <otherwise/>
1570
+ </choose>
1571
+ <call id="a26" endpoint="aufpressen">
1572
+ <parameters>
1573
+ <label>Radscheibe aufpressen 516/510</label>
1574
+ <method>:post</method>
1575
+ <arguments/>
1576
+ </parameters>
1577
+ <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"]
1578
+ data.taetigkeiten.push *result["taetigkeiten"]</finalize>
1579
+ <update output="result"/>
1580
+ <_timing>
1581
+ <_timing_min/>
1582
+ <_timing_max/>
1583
+ <_timing_avg/>
1584
+ </_timing>
1585
+ <_notes>
1586
+ <_notes_general>data.presskraftdiagramm == 0: alles in ordnung
1587
+ data.presskraftdiagramm &gt; 1: zu viel über max, 530/531
1588
+ data.presskraftdiagramm &lt; 0: zu wenig, 530/531
1589
+ data.presskraftdiagramm zwischen 0 und 1: neuer versuch mit mehr schmiermittel</_notes_general>
1590
+ <_notes_output/>
1591
+ <_attachments/>
1592
+ </_notes>
1593
+ </call>
1594
+ </loop>
1595
+ <choose mode="exclusive">
1596
+ <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;]">
1597
+ <call id="a8" endpoint="scheibe_drehen">
1598
+ <parameters>
1599
+ <label>Rad und Bremsscheibe messen 320</label>
1600
+ <method>:post</method>
1601
+ <arguments>
1602
+ <wellentyp/>
1603
+ </arguments>
1604
+ </parameters>
1605
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
1606
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
1607
+ <update output="result"/>
1608
+ <_timing>
1609
+ <_timing_min/>
1610
+ <_timing_max/>
1611
+ <_timing_avg/>
1612
+ </_timing>
1613
+ <_notes>
1614
+ <_notes_general/>
1615
+ <_notes_output/>
1616
+ <_attachments/>
1617
+ </_notes>
1618
+ </call>
1619
+ </alternative>
1620
+ <otherwise>
1621
+ <call id="a9" endpoint="scheibe_drehen">
1622
+ <parameters>
1623
+ <label>Radscheibe messen 321</label>
1624
+ <method>:post</method>
1625
+ <arguments>
1626
+ <wellentyp/>
1627
+ </arguments>
1628
+ </parameters>
1629
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
1630
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
1631
+ <update output="result"/>
1632
+ <_timing>
1633
+ <_timing_min/>
1634
+ <_timing_max/>
1635
+ <_timing_avg/>
1636
+ </_timing>
1637
+ <_notes>
1638
+ <_notes_general/>
1639
+ <_notes_output/>
1640
+ <_attachments/>
1641
+ </_notes>
1642
+ </call>
1643
+ </otherwise>
1644
+ </choose>
1645
+ <choose mode="exclusive">
1646
+ <alternative condition="data.geometriedata_radsatz_neu == false">
1647
+ <call id="a30" endpoint="worklist_b">
1648
+ <parameters>
1649
+ <label>Lesen Schadcode für Eigenspannung</label>
1650
+ <method>:post</method>
1651
+ <arguments/>
1652
+ </parameters>
1653
+ <finalize output="result"># lesen anhand barcode
1654
+ data.taetigkeiten.push *result["taetigkeiten"]</finalize>
1655
+ <update output="result"/>
1656
+ <_timing>
1657
+ <_timing_min/>
1658
+ <_timing_max/>
1659
+ <_timing_avg/>
1660
+ </_timing>
1661
+ <_notes>
1662
+ <_notes_general/>
1663
+ <_notes_output/>
1664
+ <_attachments/>
1665
+ </_notes>
1666
+ </call>
1667
+ </alternative>
1668
+ <otherwise/>
1669
+ </choose>
1670
+ <choose mode="exclusive">
1671
+ <alternative condition="data.tauschgruppe[&quot;personenzug&quot;] || (data.tauschgruppe[&quot;gueterzug&quot;] &amp;&amp; data.tauschgruppe[&quot;bremsscheiben&quot;])">
1672
+ <call id="a21" endpoint="wuchten">
1673
+ <parameters>
1674
+ <label>Wuchten 550</label>
1675
+ <method>:post</method>
1676
+ <arguments/>
1677
+ </parameters>
1678
+ <finalize output="result"># sicher gramm pro meter, nachgeschaut
1679
+ data.wucht_gramm_pro_meter = result["wucht_gramm_pro_meter"]
1680
+
1681
+ if data.wucht_gramm_pro_meter != data.tauschgruppe["wucht_gramm_pro_meter"]
1682
+ data.wucht_status == 'schlecht'
1683
+ else
1684
+ data.wucht_status == 'gut'
1685
+ end</finalize>
1686
+ <update output="result"/>
1687
+ <_timing>
1688
+ <_timing_min/>
1689
+ <_timing_max/>
1690
+ <_timing_avg/>
1691
+ </_timing>
1692
+ <_notes>
1693
+ <_notes_general/>
1694
+ <_notes_output/>
1695
+ <_attachments/>
1696
+ </_notes>
1697
+ </call>
1698
+ </alternative>
1699
+ <otherwise/>
1700
+ </choose>
1701
+ </loop>
1702
+ </alternative>
1703
+ <otherwise>
1704
+ <call id="a31" endpoint="buersten">
1705
+ <parameters>
1706
+ <label>Radsatzwelle Bürsten 490</label>
1707
+ <method>:post</method>
1708
+ <arguments>
1709
+ <timeout>2</timeout>
1710
+ </arguments>
1711
+ </parameters>
1712
+ <finalize output="result"># eventuell sandstrahlen
1713
+ data.taetigkeiten.push *result["taetigkeiten"]</finalize>
1714
+ <update output="result"/>
1715
+ <_timing>
1716
+ <_timing_min/>
1717
+ <_timing_max/>
1718
+ <_timing_avg/>
1719
+ </_timing>
1720
+ <_notes>
1721
+ <_notes_general/>
1722
+ <_notes_output/>
1723
+ <_attachments/>
1724
+ </_notes>
1725
+ </call>
1726
+ <choose mode="exclusive">
1727
+ <alternative condition="data.taetigkeiten.include? 'Sandstrahlen'">
1728
+ <call id="a33" endpoint="timeout">
1729
+ <parameters>
1730
+ <label>Sandstrahlen 480</label>
1731
+ <method>:post</method>
1732
+ <arguments>
1733
+ <timeout>2</timeout>
1734
+ </arguments>
1735
+ </parameters>
1736
+ <finalize output="result">data.taetigkeiten.delete("Sandstrahlen")</finalize>
1737
+ <update output="result"/>
1738
+ <_timing>
1739
+ <_timing_min/>
1740
+ <_timing_max/>
1741
+ <_timing_avg/>
1742
+ </_timing>
1743
+ <_notes>
1744
+ <_notes_general/>
1745
+ <_notes_output/>
1746
+ <_attachments/>
1747
+ </_notes>
1748
+ </call>
1749
+ </alternative>
1750
+ <otherwise/>
1751
+ </choose>
1752
+ <call id="a34" endpoint="ut_welle">
1753
+ <parameters>
1754
+ <label>UT Radsatzwelle 430</label>
1755
+ <method>:post</method>
1756
+ <arguments/>
1757
+ </parameters>
1758
+ <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize>
1759
+ <update output="result"/>
1760
+ <_timing>
1761
+ <_timing_min/>
1762
+ <_timing_max/>
1763
+ <_timing_avg/>
1764
+ </_timing>
1765
+ <_notes>
1766
+ <_notes_general/>
1767
+ <_notes_output/>
1768
+ <_attachments/>
1769
+ </_notes>
1770
+ </call>
1771
+ <call id="a41" endpoint="timeout">
1772
+ <parameters>
1773
+ <label>MT Allg. Prüfung 170</label>
1774
+ <method>:post</method>
1775
+ <arguments>
1776
+ <timeout>2</timeout>
1777
+ </arguments>
1778
+ </parameters>
1779
+ <finalize output="result"/>
1780
+ <update output="result"/>
1781
+ <_timing>
1782
+ <_timing_min/>
1783
+ <_timing_max/>
1784
+ <_timing_avg/>
1785
+ </_timing>
1786
+ <_notes>
1787
+ <_notes_general/>
1788
+ <_notes_output/>
1789
+ <_attachments/>
1790
+ </_notes>
1791
+ </call>
1792
+ <manipulate id="a27" label="Radscheibe drehen dazu">data.taetigkeiten &lt;&lt; "Radscheibe drehen"</manipulate>
1793
+ </otherwise>
1794
+ </choose>
1795
+ <loop mode="post_test" condition="data.innenring_status != 'ok'">
1796
+ <loop mode="post_test" condition="data.radsatzwelle_status == 'schlecht'">
1797
+ <call id="a38" endpoint="timeout">
1798
+ <parameters>
1799
+ <label>Radsatzwelle drehen HS4 595</label>
1800
+ <method>:post</method>
1801
+ <arguments>
1802
+ <timeout>2</timeout>
1803
+ </arguments>
1804
+ </parameters>
1805
+ <finalize output="result"/>
1806
+ <update output="result"/>
1807
+ <_timing>
1808
+ <_timing_min/>
1809
+ <_timing_max/>
1810
+ <_timing_avg/>
1811
+ </_timing>
1812
+ <_notes>
1813
+ <_notes_general/>
1814
+ <_notes_output/>
1815
+ <_attachments/>
1816
+ </_notes>
1817
+ </call>
1818
+ <call id="a37" endpoint="ut_welle">
1819
+ <parameters>
1820
+ <label>UT Radsatzwelle 430</label>
1821
+ <method>:post</method>
1822
+ <arguments/>
1823
+ </parameters>
1824
+ <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize>
1825
+ <update output="result"/>
1826
+ <_timing>
1827
+ <_timing_min/>
1828
+ <_timing_max/>
1829
+ <_timing_avg/>
1830
+ </_timing>
1831
+ <_notes>
1832
+ <_notes_general/>
1833
+ <_notes_output/>
1834
+ <_attachments/>
1835
+ </_notes>
1836
+ </call>
1837
+ </loop>
1838
+ <choose mode="exclusive">
1839
+ <alternative condition="data.lagerbauart[&quot;innenring&quot;]">
1840
+ <call id="a36" endpoint="innenringmontage">
1841
+ <parameters>
1842
+ <label>Innenringmontage 190</label>
1843
+ <method>:post</method>
1844
+ <arguments/>
1845
+ </parameters>
1846
+ <finalize output="result">data.innenring_status = result["innenring_status"] # ok, beschaedigung, untermass</finalize>
1847
+ <update output="result"/>
1848
+ <_timing>
1849
+ <_timing_min/>
1850
+ <_timing_max/>
1851
+ <_timing_avg/>
1852
+ </_timing>
1853
+ <_notes>
1854
+ <_notes_general/>
1855
+ <_notes_output/>
1856
+ <_attachments/>
1857
+ </_notes>
1858
+ </call>
1859
+ </alternative>
1860
+ <otherwise/>
1861
+ </choose>
1862
+ </loop>
1863
+ <loop mode="post_test" condition="data.taetigkeiten.include? 'Radscheibe drehen'">
1864
+ <choose mode="exclusive">
1865
+ <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;]">
1866
+ <call id="a39" endpoint="scheibe_drehen">
1867
+ <parameters>
1868
+ <label>Rad und Bremsscheibe drehen 320</label>
1869
+ <method>:post</method>
1870
+ <arguments>
1871
+ <wellentyp/>
1872
+ </arguments>
1873
+ </parameters>
1874
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
1875
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false # eventuell abpressen
1876
+ data.taetigkeiten.push *result["taetigkeiten"] # eventuell Kerbschleifen</finalize>
1877
+ <update output="result"/>
1878
+ <_timing>
1879
+ <_timing_min/>
1880
+ <_timing_max/>
1881
+ <_timing_avg/>
1882
+ </_timing>
1883
+ <_notes>
1884
+ <_notes_general/>
1885
+ <_notes_output/>
1886
+ <_attachments/>
1887
+ </_notes>
1888
+ </call>
1889
+ </alternative>
1890
+ <otherwise>
1891
+ <call id="a40" endpoint="scheibe_drehen">
1892
+ <parameters>
1893
+ <label>Radscheibe drehen 321</label>
1894
+ <method>:post</method>
1895
+ <arguments>
1896
+ <wellentyp/>
1897
+ </arguments>
1898
+ </parameters>
1899
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
1900
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
1901
+ <update output="result"/>
1902
+ <_timing>
1903
+ <_timing_min/>
1904
+ <_timing_max/>
1905
+ <_timing_avg/>
1906
+ </_timing>
1907
+ <_notes>
1908
+ <_notes_general/>
1909
+ <_notes_output/>
1910
+ <_attachments/>
1911
+ </_notes>
1912
+ </call>
1913
+ </otherwise>
1914
+ </choose>
1915
+ <choose mode="exclusive">
1916
+ <alternative condition="data.taetigkeiten.include? 'Kerbschleifen'">
1917
+ <call id="a17" endpoint="kerb">
1918
+ <parameters>
1919
+ <label>Kerbschleifen 240</label>
1920
+ <method>:post</method>
1921
+ <arguments/>
1922
+ </parameters>
1923
+ <finalize output="result">data.taetigkeiten.delete("Kerbschleifen")
1924
+ data.taetigkeiten.push *result["taetigkeiten"] # eventuell abpressen</finalize>
1925
+ <update output="result"/>
1926
+ <_timing>
1927
+ <_timing_min/>
1928
+ <_timing_max/>
1929
+ <_timing_avg/>
1930
+ </_timing>
1931
+ <_notes>
1932
+ <_notes_general/>
1933
+ <_notes_output/>
1934
+ <_attachments/>
1935
+ </_notes>
1936
+ </call>
1937
+ </alternative>
1938
+ <otherwise/>
1939
+ </choose>
1940
+ <call id="a10" endpoint="ut_scheibe">
1941
+ <parameters>
1942
+ <label>UT Scheibe 630</label>
1943
+ <method>:post</method>
1944
+ <arguments/>
1945
+ </parameters>
1946
+ <finalize output="result">data.taetigkeiten.delete("UT Scheibe")
1947
+ # wenn riss in der lauffläche der scheibe
1948
+ if result['ut_scheibe_status'] == 'gut'
1949
+ data.taetigkeiten.delete("Radscheibe drehen")
1950
+ end
1951
+ data.taetigkeiten.push *result["taetigkeiten"]</finalize>
1952
+ <update output="result"/>
1953
+ <_timing>
1954
+ <_timing_min/>
1955
+ <_timing_max/>
1956
+ <_timing_avg/>
1957
+ </_timing>
1958
+ <_notes>
1959
+ <_notes_general/>
1960
+ <_notes_output/>
1961
+ <_attachments/>
1962
+ </_notes>
1963
+ </call>
1964
+ </loop>
1965
+ </parallel_branch>
1966
+ <parallel_branch pass="" local="">
1967
+ <choose mode="exclusive">
1968
+ <alternative condition="data.taetigkeiten.include?(&quot;Lageraufbereitung&quot;)">
1969
+ <call id="a7" endpoint="lageraufbereitung">
1970
+ <parameters>
1971
+ <label>Lageraufbereitung 680</label>
1972
+ <method>:post</method>
1973
+ <arguments>
1974
+ <timeout>2</timeout>
1975
+ </arguments>
1976
+ </parameters>
1977
+ <finalize output="result"/>
1978
+ <update output="result"/>
1979
+ <_timing>
1980
+ <_timing_min/>
1981
+ <_timing_max/>
1982
+ <_timing_avg/>
1983
+ </_timing>
1984
+ <_notes>
1985
+ <_notes_general/>
1986
+ <_notes_output/>
1987
+ <_attachments/>
1988
+ </_notes>
1989
+ </call>
1990
+ </alternative>
1991
+ </choose>
1992
+ </parallel_branch>
1993
+ </parallel>
1994
+ <call id="a11" endpoint="fix">
1995
+ <parameters>
1996
+ <label>Lagermontage 640</label>
1997
+ <method>:post</method>
1998
+ <arguments>
1999
+ <lagerbauart/>
2000
+ </arguments>
2001
+ </parameters>
2002
+ <finalize output="result">data.taetigkeiten.delete("Montage Deckel")</finalize>
2003
+ <update output="result"/>
2004
+ <_notes>
2005
+ <_notes_general/>
2006
+ </_notes>
2007
+ </call>
2008
+ <call id="a12" endpoint="fix">
2009
+ <parameters>
2010
+ <label>Austrittskontrolle 650</label>
2011
+ <method>:post</method>
2012
+ <arguments/>
2013
+ </parameters>
2014
+ <finalize output="result"/>
2015
+ <update output="result"/>
2016
+ <_timing>
2017
+ <_timing_min/>
2018
+ <_timing_max/>
2019
+ <_timing_avg/>
2020
+ </_timing>
2021
+ <_notes>
2022
+ <_notes_general/>
2023
+ <_notes_output/>
2024
+ <_attachments/>
2025
+ </_notes>
2026
+ </call>
2027
+ <call id="a13" endpoint="fix">
2028
+ <parameters>
2029
+ <label>Lackierung 675</label>
2030
+ <method>:post</method>
2031
+ <arguments>
2032
+ <strategie/>
2033
+ </arguments>
2034
+ </parameters>
2035
+ <finalize output="result"/>
2036
+ <update output="result"/>
2037
+ <_timing>
2038
+ <_timing_min/>
2039
+ <_timing_max/>
2040
+ <_timing_avg/>
2041
+ </_timing>
2042
+ <_notes>
2043
+ <_notes_general/>
2044
+ <_notes_output/>
2045
+ <_attachments/>
2046
+ </_notes>
2047
+ </call>
2048
+ <call id="a14" endpoint="fix">
2049
+ <parameters>
2050
+ <label>Versandfertig 690</label>
2051
+ <method>:post</method>
2052
+ <arguments>
2053
+ <technische_weisungen/>
2054
+ <regelwerk/>
2055
+ </arguments>
2056
+ </parameters>
2057
+ <finalize output="result"/>
2058
+ <update output="result"/>
2059
+ <_timing>
2060
+ <_timing_min/>
2061
+ <_timing_max/>
2062
+ <_timing_avg/>
2063
+ </_timing>
2064
+ <_notes>
2065
+ <_notes_general/>
2066
+ <_notes_output/>
2067
+ <_attachments/>
2068
+ </_notes>
2069
+ </call>
2070
+ <call id="a15" endpoint="fix">
2071
+ <parameters>
2072
+ <label>Qualitaetsfreigabe 710</label>
2073
+ <method>:post</method>
2074
+ <arguments>
2075
+ <regelwerk/>
2076
+ <technische_weisungen/>
2077
+ </arguments>
2078
+ </parameters>
2079
+ <finalize output="result"/>
2080
+ <update output="result"/>
2081
+ <_timing>
2082
+ <_timing_min/>
2083
+ <_timing_max/>
2084
+ <_timing_avg/>
2085
+ </_timing>
2086
+ <_notes>
2087
+ <_notes_general/>
2088
+ <_notes_output/>
2089
+ <_attachments/>
2090
+ </_notes>
2091
+ </call>
2092
+ <choose mode="exclusive">
2093
+ <alternative condition="data.taetigkeiten.include? &quot;Anbauteile montieren&quot;">
2094
+ <call id="a35" endpoint="">
2095
+ <parameters>
2096
+ <label>Anbauteilmontage 670</label>
2097
+ <method>:post</method>
2098
+ <arguments/>
2099
+ </parameters>
2100
+ <finalize output="result"/>
2101
+ <update output="result"/>
2102
+ <_notes>
2103
+ <_notes_general/>
2104
+ </_notes>
2105
+ </call>
2106
+ </alternative>
2107
+ <otherwise/>
2108
+ </choose>
2109
+ </description>
2110
+ </description>
2111
+ <transformation>
2112
+ <description type="copy"/>
2113
+ <dataelements type="none"/>
2114
+ <endpoints type="none"/>
2115
+ </transformation>
2116
+ </properties>