server/instances/13/properties.xml in cpee-1.4.1 vs server/instances/13/properties.xml in cpee-1.4.2

- old
+ new

@@ -1,204 +1,2075 @@ <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0"> <attributes> - <uuid>250c640a-95b4-47a6-84e3-9ba493c1cc7e</uuid> - <info>Enter info here</info> + <uuid>9db89bad-23a6-4ec1-a577-6b5f86369a55</uuid> + <info>IHS1</info> <modeltype>CPEE</modeltype> - <theme>default</theme> + <theme>labels</theme> + <customer>OEBB</customer> + <status>development</status> </attributes> - <state>ready</state> + <state>stopped</state> <handlerwrapper>DefaultHandlerWrapper</handlerwrapper> - <positions/> + <positions> + <a32>at</a32> + </positions> <dataelements> - <feedback>true</feedback> + <schaedigungen>["X","X","X"]</schaedigungen> + <taetigkeiten>["Drehen","UT Scheibe","Austrittskontrolle","Lackierung","Versandfertig","Qualitaetsfreigabe","Montage Deckel","Radsatzwelle drehen"]</taetigkeiten> + <lagerlaufleistung>2.1</lagerlaufleistung> + <tauschgruppe>{"lagerlaufleistung":1.5}</tauschgruppe> + <presskraftdiagramm>gut</presskraftdiagramm> + <wellenstatus>gut</wellenstatus> + <geometriedaten_radsatz>{"X":1,"Y":2,"Z":3}</geometriedaten_radsatz> + <geometriedaten_radsatz_neu>{"X":0.9,"Y":1.9,"Z":2.9}</geometriedaten_radsatz_neu> </dataelements> <endpoints> - <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout> + <timeout>http://localhost/customers/oebb/services/timeout.php</timeout> + <init>http://localhost/customers/oebb/services/oebb.php?_taetigkeiten=taetigkeiten.txt&amp;_schaedigungen=schaedigungen.txt&amp;_tauschgruppe=tauschgruppe.txt&amp;lagerlaufleistung=2.1&amp;_lagerbauart=lagerbauart.txt</init> + <fix>http://localhost/customers/oebb/services/oebb.php</fix> + <eigen>http://localhost/customers/oebb/services/oebb.php?_taetigkeiten=addeigen.txt</eigen> + <drehen>http://localhost/customers/oebb/services/oebb.php?_taetigkeiten=adddrehen.txt&amp;_geometriedaten=geometriedaten.txt&amp;_geometriedaten_neu=geometriedatenneu.txt</drehen> + <ut>http://localhost/customers/oebb/services/oebb.php?_taetigkeiten=ut.txt</ut> + <kerb>http://localhost/customers/oebb/services/oebb.php</kerb> + <lageraufbereitung>http://localhost/customers/oebb/services/timeout.php</lageraufbereitung> + <aufpressen>http://localhost/customers/oebb/services/oebb.php?presskraftdiagramm=schlecht&amp;wellenstatus=gut</aufpressen> + <abpressen>http://localhost/customers/oebb/services/oebb.php?status=lagersitz%20ok</abpressen> + <aufpressen_gut>http://localhost/customers/oebb/services/oebb.php?presskraftdiagramm=gut&amp;wellenstatus=gut</aufpressen_gut> + <buersten>http://localhost/customers/oebb/services/oebb.php?taetigkeiten=Sandstrahlen</buersten> + <ut>http://localhost/customers/oebb/services/oebb.php?radsatzwelle_status=gut</ut> + <innenringmontage>http://localhost/customers/oebb/services/oebb.php?innenring_status=ok</innenringmontage> + <ut_scheibe>http://localhost/customers/oebb/services/oebb.php?ut_scheibe_status=gut</ut_scheibe> </endpoints> - <dsl>parallel do - parallel_branch do - loop pre_test{data.feedback} do - call :design, :timeout, parameters: { :label =&gt; "testerer", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; 4)] } - call :validate, :timeout, parameters: { :label =&gt; "", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; 2)] } - call :publish, :timeout, parameters: { :label =&gt; "", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; 1)] } + <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 + data.strategie = result['strategie'] # IHS 123 + # Liste der Schadcodes + data.schaedigungen = result['schaedigungen'] + # Manganschweissen, Gelber Anstrich, technische_weisungen + data.taetigkeiten = result['taetigkeiten'] + data.lagerlaufleistung = result["lagerlaufleistung"].to_f + data.tauschgruppe = result["tauschgruppe"] + data.lagerbauart = result["lagerbauart"] +END +choose :exclusive do + alternative test{data.lagerbauart["deckel_mit_loch"] == false} do + 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 + data.taetigkeiten &lt;&lt; "Montage Deckel" + END + end + otherwise do + 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 + # ab IS1+IL aufwaerts + # data.details ist alles unten + data.wellenhersteller + data.wellenmaterial + data.schmelze + data.charge + data.wellenherstelldatum + data.erstfueger + data.erstfuegerdatum + data.wellennummer + data.lagerherstelldatum + data.lagerlaufleistung + data.lhm_korbnummer_rechts + data.lhm_korbnummer_links + # gibt der mitarbeiter ein, wird verglichen + END + choose :exclusive do + alternative test{data.radsatznummer != data.wellennummer} do + call :a4, nil, parameters: { :label =&gt; "Datenkonsistenz herstellen, eventuelle Barcode ausdrucken", :method =&gt; :post, :arguments =&gt; nil } + end end + choose :exclusive do + alternative test{data.lagertyp == "kartuschenlager" &amp;&amp; data.lagerherstelldatum &lt; data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &lt; data.lagertyp.maximallaufleistung} do + call :a6, nil, parameters: { :label =&gt; "Externe Lageraufbereitung", :method =&gt; :post, :arguments =&gt; nil } + end + alternative test{data.lagertyp == "kartuschenlager" &amp;&amp; data.lagerherstelldatum &gt;= data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &gt; data.lagertyp.maximallaufleistung} do + call :a5, nil, parameters: { :label =&gt; "Lager Verschrotten", :method =&gt; :post, :arguments =&gt; nil } + end + otherwise do + manipulate :a42, &lt;&lt;-END + data.taetigkeiten &lt;&lt; 'Lageraufbereitung' + END + end + end end - parallel_branch do - loop pre_test{data.feedback} do - call :prepare, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; 4)] } - call :fab, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; 4)] } - call :evaluate, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; 4)] } +end +parallel :wait =&gt; -1 do + parallel_branch do || + loop post_test{data.taetigkeiten.include? 'Eigenspannungspruefung'} do + 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 + data.eigenspannungswerte + # Radsatz regenerieren falls die Station das meldet + data.taetigkeiten &lt;&lt; "Radsatz regenerieren" + data.taetigkeiten.delete("Eigenspannungspruefung") + END + choose :exclusive do + alternative test{data.taetigkeiten.include? 'Radsatz regenerieren'} do + call :a20, :timeout, parameters: { :label =&gt; "Radsatz regenerieren", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }, finalize: &lt;&lt;-END + data.taetigkeiten.delete("Radsatz regenerieren") + END + end + end end + choose :exclusive do + alternative test{data.taetigkeiten.include? 'Abpressen'} do + manipulate :a19 + loop post_test{data.wuchten_status == 'schlecht'} do + loop post_test{data.wellenstatus == "beschaedigt"} do + call :a22, :abpressen, parameters: { :label =&gt; "Radscheibe abpressen 510/511", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + if result['status'] == "lagersitz kaputt" + # z.b. weil lagersitz im arsch + data.taetigkeiten.clear + end + data.taetigkeiten &lt;&lt; "Radsatzwelle drehen" + END + call :a23, :timeout, parameters: { :label =&gt; "Radsatzwelle drehen 520/521", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] } + call :a24, :timeout, parameters: { :label =&gt; "MT Welle unbescheibt prüfen 535", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] } + call :a25, :timeout, parameters: { :label =&gt; "Senkrechtbohrwerk 530/531", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }, update: &lt;&lt;-END + # ich hab radscheibe demontiert, alle + # die fuer die wellentype zulässig sind + # dürfen wieder rauf + # (verbrauchsmaterial liste) + # wellentype -&gt; zulässige materialnummer + # materialnummern können bremsscheibe, radscheibe oder + # radbremsscheibe sein. Mehrere zulässige. + END + call :a26, :aufpressen, parameters: { :label =&gt; "Radscheibe aufpressen 516/510", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht" + data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt" + END + loop pre_test{data.presskraftdiagramm == "schlecht" &amp;&amp; data.wellenstatus != "beschaedigt"} do + call :a27, :abpressen, parameters: { :label =&gt; "Radscheibe abpressen 510/511", :method =&gt; :post, :arguments =&gt; nil } + call :a28, :aufpressen_gut, parameters: { :label =&gt; "Radscheibe aufpressen 516/510", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht" + data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt" + END + end + manipulate :a29, &lt;&lt;-END + data.taetigkeiten.delete("Abpressen") + END + end + choose :exclusive do + alternative test{data.tauschgruppe["bremsscheiben"]} do + call :a8, nil, parameters: { :label =&gt; "Rad und Bremsscheibe messen 320", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END + data.geometriedaten_radsatz = result['geometriedaten'] + data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false + END + end + otherwise do + call :a9, :drehen, parameters: { :label =&gt; "Radscheibe messen 321", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END + data.geometriedaten_radsatz = result['geometriedaten'] + data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false + END + end + end + choose :exclusive do + alternative test{data.geometriedata_radsatz_neu == false} do + call :a30, :worklist_b, parameters: { :label =&gt; "Lesen der Barcodes der gebrauchten Scheiben", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + # lesen anhand barcode + data.eigenspannunswerte = result.eigenspannungswerte + data.taetigkeiten &lt;&lt; "UT Scheibe" + END + end + end + choose :exclusive do + alternative test{data.tauschgruppe["personenzug"] || (data.tauschgruppe["gueterzug"] &amp;&amp; data.tauschgruppe["bremsscheiben"])} do + call :a21, nil, parameters: { :label =&gt; "Wuchten 550", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + # sicher gramm pro meter, nachgeschaut + data.wucht_gramm_pro_meter = result.gramm_pro_meter + if data.wucht_gramm_pro_meter != data.tausch_gruppe.wucht_gramm_pro_meter + data.wucht_status == 'schlecht' + else + data.wucht_status == 'gut' + end + END + end + end + end + end + end + choose :exclusive do + alternative test{data.lagerlaufleistung &gt; data.tauschgruppe["lagerlaufleistung"] || data.schaedigungen.include?("defekter innenring") || data.taetigkeiten.include?("Demontage Innenringe")} do + choose :exclusive do + alternative test{data.lagerbauart["innenring"]} do + call :a32, :timeout, parameters: { :label =&gt; "Demontage Innenringe 420", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] } + end + otherwise do + manipulate :a43, &lt;&lt;-END + data.innenringstatus = "ok" + END + end + end + 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 + # eventuell sandstrahlen + data.taetigkeiten &lt;&lt; result.taetigkeiten + END + choose :exclusive do + alternative test{data.taetigkeiten.include? 'Sandstrahlen'} do + call :a33, :timeout, parameters: { :label =&gt; "Sandstrahlen 480", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] } + end + end + call :a34, :ut, parameters: { :label =&gt; "UT Radsatzwelle 430", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht + END + loop post_test{data.innenringstatus != 'ok'} do + loop post_test{data.radsatzwelle_status == 'schlecht'} do + call :a38, :timeout, parameters: { :label =&gt; "Radsatzwelle drehen HS4 595", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] } + call :a37, :ut, parameters: { :label =&gt; "UT Radsatzwelle 430", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht + END + end + choose :exclusive do + alternative test{data.lagerbauart["innenring"]} do + call :a36, :innenringmontage, parameters: { :label =&gt; "Innenringmontage 190", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + data.innenring_status = result["innnenring_status"] # ok, beschaedigung, untermass + END + end + end + end + call :a41, :timeout, parameters: { :label =&gt; "MT Allg. Prüfung 170", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] } + call :a18, :ut_scheibe, parameters: { :label =&gt; "UT Scheibe 630", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + if result["ut_scheibe_status"] != 'gut' + data.taetigkeiten &lt;&lt; 'Drehen' + end + END + end + end + loop post_test{data.taetigkeiten.include? 'Drehen'} do + choose :exclusive do + alternative test{data.tauschgruppe["bremsscheiben"]} do + call :a39, :drehen, parameters: { :label =&gt; "Rad und Bremsscheibe drehen 320", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END + data.geometriedaten_radsatz = result['geometriedaten'] + data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false # eventuell abpressen + data.taetigkeiten &lt;&lt; result.taetigkeiten + END + end + otherwise do + call :a40, :drehen, parameters: { :label =&gt; "Radscheibe drehen 321", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END + data.geometriedaten_radsatz = result['geometriedaten'] + data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false + END + end + end + choose :exclusive do + alternative test{data.taetigkeiten.include? 'Kerbschleifen'} do + call :a17, :kerb, parameters: { :label =&gt; "Kerbschleifen 240", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + data.taetigkeiten.delete("Kerbschleifen") + # eventuell abpressen + if result["taetigkeiten"] + data.taetigkeiten &lt;&lt; result["taetigkeiten"] + end + END + end + end + call :a10, :ut, parameters: { :label =&gt; "UT Scheibe 630", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END + data.taetigkeiten.delete("UT Scheibe") + if endpoints.ut != "http://localhost/customers/oebb/services/oebb.php" + data.taetigkeiten = data.taetigkeiten + result['taetigkeiten'] + end + endpoints.ut = "http://localhost/customers/oebb/services/oebb.php" + END + end end + parallel_branch do || + call :a7, :lageraufbereitung, parameters: { :label =&gt; "Lageraufbereitung 680", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] } + end end -call :a1, nil, parameters: { :label =&gt; "", :method =&gt; :post, :arguments =&gt; nil } +call :a11, :fix, parameters: { :label =&gt; "Lagermontage 640", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :lagerbauart, :value =&gt; nil)] }, finalize: &lt;&lt;-END + data.taetigkeiten.delete("Montage Deckel") +END +call :a12, :fix, parameters: { :label =&gt; "Austrittskontrolle 650", :method =&gt; :post, :arguments =&gt; nil } +call :a13, :fix, parameters: { :label =&gt; "Lackierung 675", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :strategie, :value =&gt; nil)] } +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)] } +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)] } +choose :exclusive do + alternative test{data.taetigkeiten.include? "Anbauteile montieren"} do + call :a35, nil, parameters: { :label =&gt; "Anbauteilmontage 670", :method =&gt; :post, :arguments =&gt; nil } + end +end </dsl> <dslx> <description xmlns="http://cpee.org/ns/description/1.0"> - <parallel> - <parallel_branch> - <loop mode="pre_test" condition="data.feedback"> - <call id="design" endpoint="timeout"> + <call id="a1" endpoint="init"> + <parameters> + <label>Identifikation 110</label> + <method>:post</method> + <arguments> + <radsatznummer/> + <wellentyp/> + <lagerbauart/> + <tauschgruppe/> + <eigentuemer/> + <regelwerk/> + <auftragsnummer/> + <mindeststragie/> + <technische_weisungen/> + <schadcodes/> + <lagerlaufleistung>in jahre</lagerlaufleistung> + <lagerlaufleistung>stempel am lager in zukunft aus sam</lagerlaufleistung> + </arguments> + </parameters> + <finalize output="result">data.strategie = result['strategie'] # IHS 123 + +# Liste der Schadcodes +data.schaedigungen = result['schaedigungen'] + +# Manganschweissen, Gelber Anstrich, technische_weisungen +data.taetigkeiten = result['taetigkeiten'] + +data.lagerlaufleistung = result["lagerlaufleistung"].to_f +data.tauschgruppe = result["tauschgruppe"] +data.lagerbauart = result["lagerbauart"]</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <choose mode="exclusive"> + <alternative condition="data.lagerbauart[&quot;deckel_mit_loch&quot;] == false"> + <call id="a2" endpoint="fix"> + <parameters> + <label>Lagerdeckeldemontage 130</label> + <method>:post</method> + <arguments> + <deckel>true</deckel> + <lager>false</lager> + <anbauteile>true</anbauteile> + </arguments> + </parameters> + <finalize output="result">data.taetigkeiten &lt;&lt; "Montage Deckel"</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise> + <call id="a16" endpoint=""> + <parameters> + <label>Lagerdemontage 130</label> + <method>:post</method> + <arguments> + <deckel>true</deckel> + <lager>true</lager> + <anbauteile>true</anbauteile> + <details/> + </arguments> + </parameters> + <finalize output="result"># ab IS1+IL aufwaerts +# data.details ist alles unten + +data.wellenhersteller +data.wellenmaterial +data.schmelze +data.charge +data.wellenherstelldatum +data.erstfueger +data.erstfuegerdatum +data.wellennummer +data.lagerherstelldatum +data.lagerlaufleistung +data.lhm_korbnummer_rechts +data.lhm_korbnummer_links + +# gibt der mitarbeiter ein, wird verglichen</finalize> + <update output="result"/> + </call> + <choose mode="exclusive"> + <alternative condition="data.radsatznummer != data.wellennummer"> + <call id="a4" endpoint=""> + <parameters> + <label>Datenkonsistenz herstellen, eventuelle Barcode ausdrucken</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"/> + <update output="result"/> + </call> + </alternative> + <otherwise/> + </choose> + <choose mode="exclusive"> + <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerherstelldatum &lt; data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &lt; data.lagertyp.maximallaufleistung"> + <call id="a6" endpoint=""> + <parameters> + <label>Externe Lageraufbereitung</label> + <method>:post</method> + <arguments/> + </parameters> + </call> + </alternative> + <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerherstelldatum &gt;= data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &gt; data.lagertyp.maximallaufleistung"> + <call id="a5" endpoint=""> + <parameters> + <label>Lager Verschrotten</label> + <method>:post</method> + <arguments/> + </parameters> + </call> + </alternative> + <otherwise> + <manipulate id="a42">data.taetigkeiten &lt;&lt; 'Lageraufbereitung'</manipulate> + </otherwise> + </choose> + </otherwise> + </choose> + <parallel wait="-1"> + <parallel_branch pass="" local=""> + <loop mode="post_test" condition="data.taetigkeiten.include? 'Eigenspannungspruefung'"> + <call id="a3" endpoint="eigen"> <parameters> - <label>testerer</label> + <label>Eigenspannungspruefung 140</label> <method>:post</method> <arguments> - <timeout>4</timeout> + <werkstoff/> + <bauform_scheibe/> + <pruefprogramm/> </arguments> </parameters> + <finalize output="result">data.eigenspannungswerte +# Radsatz regenerieren falls die Station das meldet +data.taetigkeiten &lt;&lt; "Radsatz regenerieren" +data.taetigkeiten.delete("Eigenspannungspruefung")</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> </call> - <call id="validate" endpoint="timeout"> - <parameters> - <label/> - <method>:post</method> - <arguments> - <timeout>2</timeout> - </arguments> - </parameters> - </call> - <call id="publish" endpoint="timeout"> - <parameters> - <label/> - <method>:post</method> - <arguments> - <timeout>1</timeout> - </arguments> - </parameters> - </call> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? 'Radsatz regenerieren'"> + <call id="a20" endpoint="timeout"> + <parameters> + <label>Radsatz regenerieren</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result">data.taetigkeiten.delete("Radsatz regenerieren")</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> </loop> - </parallel_branch> - <parallel_branch> - <loop mode="pre_test" condition="data.feedback"> - <call id="prepare" endpoint="timeout"> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? 'Abpressen'"> + <manipulate id="a19"/> + <loop mode="post_test" condition="data.wuchten_status == 'schlecht'"> + <loop mode="post_test" condition="data.wellenstatus == &quot;beschaedigt&quot;"> + <call id="a22" endpoint="abpressen"> + <parameters> + <label>Radscheibe abpressen 510/511</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">if result['status'] == "lagersitz kaputt" + # z.b. weil lagersitz im arsch + data.taetigkeiten.clear +end + +data.taetigkeiten &lt;&lt; "Radsatzwelle drehen"</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a23" endpoint="timeout"> + <parameters> + <label>Radsatzwelle drehen 520/521</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a24" endpoint="timeout"> + <parameters> + <label>MT Welle unbescheibt prüfen 535</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general>Wenn status schlecht, zum drehen +Wenn mindestdruchmesser erreicht, schrott</_notes_general> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a25" endpoint="timeout"> + <parameters> + <label>Senkrechtbohrwerk 530/531</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"># ich hab radscheibe demontiert, alle +# die fuer die wellentype zulässig sind +# dürfen wieder rauf +# (verbrauchsmaterial liste) +# wellentype -&gt; zulässige materialnummer +# materialnummern können bremsscheibe, radscheibe oder +# radbremsscheibe sein. Mehrere zulässige.</update> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a26" endpoint="aufpressen"> + <parameters> + <label>Radscheibe aufpressen 516/510</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht" +data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <loop mode="pre_test" condition="data.presskraftdiagramm == &quot;schlecht&quot; &amp;&amp; data.wellenstatus != &quot;beschaedigt&quot;"> + <call id="a27" endpoint="abpressen"> + <parameters> + <label>Radscheibe abpressen 510/511</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a28" endpoint="aufpressen_gut"> + <parameters> + <label>Radscheibe aufpressen 516/510</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht" +data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </loop> + <manipulate id="a29">data.taetigkeiten.delete("Abpressen")</manipulate> + </loop> + <choose mode="exclusive"> + <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;]"> + <call id="a8" endpoint=""> + <parameters> + <label>Rad und Bremsscheibe messen 320</label> + <method>:post</method> + <arguments> + <wellentyp/> + </arguments> + </parameters> + <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten'] +data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + </alternative> + <otherwise> + <call id="a9" endpoint="drehen"> + <parameters> + <label>Radscheibe messen 321</label> + <method>:post</method> + <arguments> + <wellentyp/> + </arguments> + </parameters> + <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten'] +data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </otherwise> + </choose> + <choose mode="exclusive"> + <alternative condition="data.geometriedata_radsatz_neu == false"> + <call id="a30" endpoint="worklist_b"> + <parameters> + <label>Lesen der Barcodes der gebrauchten Scheiben</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"># lesen anhand barcode +data.eigenspannunswerte = result.eigenspannungswerte +data.taetigkeiten &lt;&lt; "UT Scheibe"</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + <choose mode="exclusive"> + <alternative condition="data.tauschgruppe[&quot;personenzug&quot;] || (data.tauschgruppe[&quot;gueterzug&quot;] &amp;&amp; data.tauschgruppe[&quot;bremsscheiben&quot;])"> + <call id="a21" endpoint=""> + <parameters> + <label>Wuchten 550</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"># sicher gramm pro meter, nachgeschaut +data.wucht_gramm_pro_meter = result.gramm_pro_meter + +if data.wucht_gramm_pro_meter != data.tausch_gruppe.wucht_gramm_pro_meter + data.wucht_status == 'schlecht' +else + data.wucht_status == 'gut' +end</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + </loop> + </alternative> + <otherwise/> + </choose> + <choose mode="exclusive"> + <alternative condition="data.lagerlaufleistung &gt; data.tauschgruppe[&quot;lagerlaufleistung&quot;] || data.schaedigungen.include?(&quot;defekter innenring&quot;) || data.taetigkeiten.include?(&quot;Demontage Innenringe&quot;)"> + <choose mode="exclusive"> + <alternative condition="data.lagerbauart[&quot;innenring&quot;]"> + <call id="a32" endpoint="timeout"> + <parameters> + <label>Demontage Innenringe 420</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise> + <manipulate id="a43" label="Innenringstatus OK (weils keinen gibt)">data.innenringstatus = "ok"</manipulate> + </otherwise> + </choose> + <call id="a31" endpoint="buersten"> + <parameters> + <label>Radsatzwelle Bürsten 490</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"># eventuell sandstrahlen +data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? 'Sandstrahlen'"> + <call id="a33" endpoint="timeout"> + <parameters> + <label>Sandstrahlen 480</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + <call id="a34" endpoint="ut"> + <parameters> + <label>UT Radsatzwelle 430</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <loop mode="post_test" condition="data.innenringstatus != 'ok'"> + <loop mode="post_test" condition="data.radsatzwelle_status == 'schlecht'"> + <call id="a38" endpoint="timeout"> + <parameters> + <label>Radsatzwelle drehen HS4 595</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a37" endpoint="ut"> + <parameters> + <label>UT Radsatzwelle 430</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </loop> + <choose mode="exclusive"> + <alternative condition="data.lagerbauart[&quot;innenring&quot;]"> + <call id="a36" endpoint="innenringmontage"> + <parameters> + <label>Innenringmontage 190</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.innenring_status = result["innnenring_status"] # ok, beschaedigung, untermass</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + </loop> + <call id="a41" endpoint="timeout"> + <parameters> + <label>MT Allg. Prüfung 170</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a18" endpoint="ut_scheibe"> + <parameters> + <label>UT Scheibe 630</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">if result["ut_scheibe_status"] != 'gut' + data.taetigkeiten &lt;&lt; 'Drehen' +end</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + <loop mode="post_test" condition="data.taetigkeiten.include? 'Drehen'"> + <choose mode="exclusive"> + <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;]"> + <call id="a39" endpoint="drehen"> + <parameters> + <label>Rad und Bremsscheibe drehen 320</label> + <method>:post</method> + <arguments> + <wellentyp/> + </arguments> + </parameters> + <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten'] +data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false # eventuell abpressen +data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise> + <call id="a40" endpoint="drehen"> + <parameters> + <label>Radscheibe drehen 321</label> + <method>:post</method> + <arguments> + <wellentyp/> + </arguments> + </parameters> + <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten'] +data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </otherwise> + </choose> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? 'Kerbschleifen'"> + <call id="a17" endpoint="kerb"> + <parameters> + <label>Kerbschleifen 240</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.taetigkeiten.delete("Kerbschleifen") + +# eventuell abpressen +if result["taetigkeiten"] + data.taetigkeiten &lt;&lt; result["taetigkeiten"] +end</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + <call id="a10" endpoint="ut"> <parameters> - <!--{{{--> + <label>UT Scheibe 630</label> <method>:post</method> - <arguments> - <timeout>4</timeout> - </arguments> + <arguments/> </parameters> - <!--}}}--> + <finalize output="result">data.taetigkeiten.delete("UT Scheibe") +if endpoints.ut != "http://localhost/customers/oebb/services/oebb.php" + data.taetigkeiten = data.taetigkeiten + result['taetigkeiten'] +end +endpoints.ut = "http://localhost/customers/oebb/services/oebb.php"</finalize> + <update output="result"/> </call> - <call id="fab" endpoint="timeout"> - <parameters> - <!--{{{--> - <method>:post</method> - <arguments> - <timeout>4</timeout> - </arguments> - </parameters> - <!--}}}--> - </call> - <call id="evaluate" endpoint="timeout"> - <parameters> - <!--{{{--> - <method>:post</method> - <arguments> - <timeout>4</timeout> - </arguments> - </parameters> - <!--}}}--> - </call> </loop> </parallel_branch> + <parallel_branch pass="" local=""> + <call id="a7" endpoint="lageraufbereitung"> + <parameters> + <label>Lageraufbereitung 680</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </parallel_branch> </parallel> - <call id="a1" endpoint=""> + <call id="a11" endpoint="fix"> <parameters> - <label/> + <label>Lagermontage 640</label> <method>:post</method> + <arguments> + <lagerbauart/> + </arguments> + </parameters> + <finalize output="result">data.taetigkeiten.delete("Montage Deckel")</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + <call id="a12" endpoint="fix"> + <parameters> + <label>Austrittskontrolle 650</label> + <method>:post</method> <arguments/> </parameters> <finalize output="result"/> <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> </call> + <call id="a13" endpoint="fix"> + <parameters> + <label>Lackierung 675</label> + <method>:post</method> + <arguments> + <strategie/> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a14" endpoint="fix"> + <parameters> + <label>Versandfertig 690</label> + <method>:post</method> + <arguments> + <technische_weisungen/> + <regelwerk/> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a15" endpoint="fix"> + <parameters> + <label>Qualitaetsfreigabe 710</label> + <method>:post</method> + <arguments> + <regelwerk/> + <technische_weisungen/> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? &quot;Anbauteile montieren&quot;"> + <call id="a35" endpoint=""> + <parameters> + <label>Anbauteilmontage 670</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> </description> </dslx> <status> <id>0</id> <message>undefined</message> </status> <description> <description xmlns="http://cpee.org/ns/description/1.0"> - <parallel> - <parallel_branch> - <loop mode="pre_test" condition="data.feedback"> - <call id="design" endpoint="timeout"> + <call id="a1" endpoint="init"> + <parameters> + <label>Identifikation 110</label> + <method>:post</method> + <arguments> + <radsatznummer/> + <wellentyp/> + <lagerbauart/> + <tauschgruppe/> + <eigentuemer/> + <regelwerk/> + <auftragsnummer/> + <mindeststragie/> + <technische_weisungen/> + <schadcodes/> + <lagerlaufleistung>in jahre</lagerlaufleistung> + <lagerlaufleistung>stempel am lager in zukunft aus sam</lagerlaufleistung> + </arguments> + </parameters> + <finalize output="result">data.strategie = result['strategie'] # IHS 123 + +# Liste der Schadcodes +data.schaedigungen = result['schaedigungen'] + +# Manganschweissen, Gelber Anstrich, technische_weisungen +data.taetigkeiten = result['taetigkeiten'] + +data.lagerlaufleistung = result["lagerlaufleistung"].to_f +data.tauschgruppe = result["tauschgruppe"] +data.lagerbauart = result["lagerbauart"]</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <choose mode="exclusive"> + <alternative condition="data.lagerbauart[&quot;deckel_mit_loch&quot;] == false"> + <call id="a2" endpoint="fix"> + <parameters> + <label>Lagerdeckeldemontage 130</label> + <method>:post</method> + <arguments> + <deckel>true</deckel> + <lager>false</lager> + <anbauteile>true</anbauteile> + </arguments> + </parameters> + <finalize output="result">data.taetigkeiten &lt;&lt; "Montage Deckel"</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise> + <call id="a16" endpoint=""> + <parameters> + <label>Lagerdemontage 130</label> + <method>:post</method> + <arguments> + <deckel>true</deckel> + <lager>true</lager> + <anbauteile>true</anbauteile> + <details/> + </arguments> + </parameters> + <finalize output="result"># ab IS1+IL aufwaerts +# data.details ist alles unten + +data.wellenhersteller +data.wellenmaterial +data.schmelze +data.charge +data.wellenherstelldatum +data.erstfueger +data.erstfuegerdatum +data.wellennummer +data.lagerherstelldatum +data.lagerlaufleistung +data.lhm_korbnummer_rechts +data.lhm_korbnummer_links + +# gibt der mitarbeiter ein, wird verglichen</finalize> + <update output="result"/> + </call> + <choose mode="exclusive"> + <alternative condition="data.radsatznummer != data.wellennummer"> + <call id="a4" endpoint=""> + <parameters> + <label>Datenkonsistenz herstellen, eventuelle Barcode ausdrucken</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"/> + <update output="result"/> + </call> + </alternative> + <otherwise/> + </choose> + <choose mode="exclusive"> + <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerherstelldatum &lt; data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &lt; data.lagertyp.maximallaufleistung"> + <call id="a6" endpoint=""> + <parameters> + <label>Externe Lageraufbereitung</label> + <method>:post</method> + <arguments/> + </parameters> + </call> + </alternative> + <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerherstelldatum &gt;= data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &gt; data.lagertyp.maximallaufleistung"> + <call id="a5" endpoint=""> + <parameters> + <label>Lager Verschrotten</label> + <method>:post</method> + <arguments/> + </parameters> + </call> + </alternative> + <otherwise> + <manipulate id="a42">data.taetigkeiten &lt;&lt; 'Lageraufbereitung'</manipulate> + </otherwise> + </choose> + </otherwise> + </choose> + <parallel wait="-1"> + <parallel_branch pass="" local=""> + <loop mode="post_test" condition="data.taetigkeiten.include? 'Eigenspannungspruefung'"> + <call id="a3" endpoint="eigen"> <parameters> - <label>testerer</label> + <label>Eigenspannungspruefung 140</label> <method>:post</method> <arguments> - <timeout>4</timeout> + <werkstoff/> + <bauform_scheibe/> + <pruefprogramm/> </arguments> </parameters> + <finalize output="result">data.eigenspannungswerte +# Radsatz regenerieren falls die Station das meldet +data.taetigkeiten &lt;&lt; "Radsatz regenerieren" +data.taetigkeiten.delete("Eigenspannungspruefung")</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> </call> - <call id="validate" endpoint="timeout"> - <parameters> - <label/> - <method>:post</method> - <arguments> - <timeout>2</timeout> - </arguments> - </parameters> - </call> - <call id="publish" endpoint="timeout"> - <parameters> - <label/> - <method>:post</method> - <arguments> - <timeout>1</timeout> - </arguments> - </parameters> - </call> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? 'Radsatz regenerieren'"> + <call id="a20" endpoint="timeout"> + <parameters> + <label>Radsatz regenerieren</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result">data.taetigkeiten.delete("Radsatz regenerieren")</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> </loop> - </parallel_branch> - <parallel_branch> - <loop mode="pre_test" condition="data.feedback"> - <call id="prepare" endpoint="timeout"> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? 'Abpressen'"> + <manipulate id="a19"/> + <loop mode="post_test" condition="data.wuchten_status == 'schlecht'"> + <loop mode="post_test" condition="data.wellenstatus == &quot;beschaedigt&quot;"> + <call id="a22" endpoint="abpressen"> + <parameters> + <label>Radscheibe abpressen 510/511</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">if result['status'] == "lagersitz kaputt" + # z.b. weil lagersitz im arsch + data.taetigkeiten.clear +end + +data.taetigkeiten &lt;&lt; "Radsatzwelle drehen"</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a23" endpoint="timeout"> + <parameters> + <label>Radsatzwelle drehen 520/521</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a24" endpoint="timeout"> + <parameters> + <label>MT Welle unbescheibt prüfen 535</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general>Wenn status schlecht, zum drehen +Wenn mindestdruchmesser erreicht, schrott</_notes_general> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a25" endpoint="timeout"> + <parameters> + <label>Senkrechtbohrwerk 530/531</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"># ich hab radscheibe demontiert, alle +# die fuer die wellentype zulässig sind +# dürfen wieder rauf +# (verbrauchsmaterial liste) +# wellentype -&gt; zulässige materialnummer +# materialnummern können bremsscheibe, radscheibe oder +# radbremsscheibe sein. Mehrere zulässige.</update> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a26" endpoint="aufpressen"> + <parameters> + <label>Radscheibe aufpressen 516/510</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht" +data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <loop mode="pre_test" condition="data.presskraftdiagramm == &quot;schlecht&quot; &amp;&amp; data.wellenstatus != &quot;beschaedigt&quot;"> + <call id="a27" endpoint="abpressen"> + <parameters> + <label>Radscheibe abpressen 510/511</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a28" endpoint="aufpressen_gut"> + <parameters> + <label>Radscheibe aufpressen 516/510</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht" +data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </loop> + <manipulate id="a29">data.taetigkeiten.delete("Abpressen")</manipulate> + </loop> + <choose mode="exclusive"> + <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;]"> + <call id="a8" endpoint=""> + <parameters> + <label>Rad und Bremsscheibe messen 320</label> + <method>:post</method> + <arguments> + <wellentyp/> + </arguments> + </parameters> + <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten'] +data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + </alternative> + <otherwise> + <call id="a9" endpoint="drehen"> + <parameters> + <label>Radscheibe messen 321</label> + <method>:post</method> + <arguments> + <wellentyp/> + </arguments> + </parameters> + <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten'] +data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </otherwise> + </choose> + <choose mode="exclusive"> + <alternative condition="data.geometriedata_radsatz_neu == false"> + <call id="a30" endpoint="worklist_b"> + <parameters> + <label>Lesen der Barcodes der gebrauchten Scheiben</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"># lesen anhand barcode +data.eigenspannunswerte = result.eigenspannungswerte +data.taetigkeiten &lt;&lt; "UT Scheibe"</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + <choose mode="exclusive"> + <alternative condition="data.tauschgruppe[&quot;personenzug&quot;] || (data.tauschgruppe[&quot;gueterzug&quot;] &amp;&amp; data.tauschgruppe[&quot;bremsscheiben&quot;])"> + <call id="a21" endpoint=""> + <parameters> + <label>Wuchten 550</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"># sicher gramm pro meter, nachgeschaut +data.wucht_gramm_pro_meter = result.gramm_pro_meter + +if data.wucht_gramm_pro_meter != data.tausch_gruppe.wucht_gramm_pro_meter + data.wucht_status == 'schlecht' +else + data.wucht_status == 'gut' +end</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + </loop> + </alternative> + <otherwise/> + </choose> + <choose mode="exclusive"> + <alternative condition="data.lagerlaufleistung &gt; data.tauschgruppe[&quot;lagerlaufleistung&quot;] || data.schaedigungen.include?(&quot;defekter innenring&quot;) || data.taetigkeiten.include?(&quot;Demontage Innenringe&quot;)"> + <choose mode="exclusive"> + <alternative condition="data.lagerbauart[&quot;innenring&quot;]"> + <call id="a32" endpoint="timeout"> + <parameters> + <label>Demontage Innenringe 420</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise> + <manipulate id="a43" label="Innenringstatus OK (weils keinen gibt)">data.innenringstatus = "ok"</manipulate> + </otherwise> + </choose> + <call id="a31" endpoint="buersten"> + <parameters> + <label>Radsatzwelle Bürsten 490</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"># eventuell sandstrahlen +data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? 'Sandstrahlen'"> + <call id="a33" endpoint="timeout"> + <parameters> + <label>Sandstrahlen 480</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + <call id="a34" endpoint="ut"> + <parameters> + <label>UT Radsatzwelle 430</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <loop mode="post_test" condition="data.innenringstatus != 'ok'"> + <loop mode="post_test" condition="data.radsatzwelle_status == 'schlecht'"> + <call id="a38" endpoint="timeout"> + <parameters> + <label>Radsatzwelle drehen HS4 595</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a37" endpoint="ut"> + <parameters> + <label>UT Radsatzwelle 430</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </loop> + <choose mode="exclusive"> + <alternative condition="data.lagerbauart[&quot;innenring&quot;]"> + <call id="a36" endpoint="innenringmontage"> + <parameters> + <label>Innenringmontage 190</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.innenring_status = result["innnenring_status"] # ok, beschaedigung, untermass</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + </loop> + <call id="a41" endpoint="timeout"> + <parameters> + <label>MT Allg. Prüfung 170</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a18" endpoint="ut_scheibe"> + <parameters> + <label>UT Scheibe 630</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">if result["ut_scheibe_status"] != 'gut' + data.taetigkeiten &lt;&lt; 'Drehen' +end</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + <loop mode="post_test" condition="data.taetigkeiten.include? 'Drehen'"> + <choose mode="exclusive"> + <alternative condition="data.tauschgruppe[&quot;bremsscheiben&quot;]"> + <call id="a39" endpoint="drehen"> + <parameters> + <label>Rad und Bremsscheibe drehen 320</label> + <method>:post</method> + <arguments> + <wellentyp/> + </arguments> + </parameters> + <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten'] +data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false # eventuell abpressen +data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise> + <call id="a40" endpoint="drehen"> + <parameters> + <label>Radscheibe drehen 321</label> + <method>:post</method> + <arguments> + <wellentyp/> + </arguments> + </parameters> + <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten'] +data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </otherwise> + </choose> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? 'Kerbschleifen'"> + <call id="a17" endpoint="kerb"> + <parameters> + <label>Kerbschleifen 240</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result">data.taetigkeiten.delete("Kerbschleifen") + +# eventuell abpressen +if result["taetigkeiten"] + data.taetigkeiten &lt;&lt; result["taetigkeiten"] +end</finalize> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> + <call id="a10" endpoint="ut"> <parameters> - <!--{{{--> + <label>UT Scheibe 630</label> <method>:post</method> - <arguments> - <timeout>4</timeout> - </arguments> + <arguments/> </parameters> - <!--}}}--> + <finalize output="result">data.taetigkeiten.delete("UT Scheibe") +if endpoints.ut != "http://localhost/customers/oebb/services/oebb.php" + data.taetigkeiten = data.taetigkeiten + result['taetigkeiten'] +end +endpoints.ut = "http://localhost/customers/oebb/services/oebb.php"</finalize> + <update output="result"/> </call> - <call id="fab" endpoint="timeout"> - <parameters> - <!--{{{--> - <method>:post</method> - <arguments> - <timeout>4</timeout> - </arguments> - </parameters> - <!--}}}--> - </call> - <call id="evaluate" endpoint="timeout"> - <parameters> - <!--{{{--> - <method>:post</method> - <arguments> - <timeout>4</timeout> - </arguments> - </parameters> - <!--}}}--> - </call> </loop> </parallel_branch> + <parallel_branch pass="" local=""> + <call id="a7" endpoint="lageraufbereitung"> + <parameters> + <label>Lageraufbereitung 680</label> + <method>:post</method> + <arguments> + <timeout>2</timeout> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + </parallel_branch> </parallel> - <call id="a1" endpoint=""> + <call id="a11" endpoint="fix"> <parameters> - <label/> + <label>Lagermontage 640</label> <method>:post</method> + <arguments> + <lagerbauart/> + </arguments> + </parameters> + <finalize output="result">data.taetigkeiten.delete("Montage Deckel")</finalize> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + <call id="a12" endpoint="fix"> + <parameters> + <label>Austrittskontrolle 650</label> + <method>:post</method> <arguments/> </parameters> <finalize output="result"/> <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> </call> + <call id="a13" endpoint="fix"> + <parameters> + <label>Lackierung 675</label> + <method>:post</method> + <arguments> + <strategie/> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a14" endpoint="fix"> + <parameters> + <label>Versandfertig 690</label> + <method>:post</method> + <arguments> + <technische_weisungen/> + <regelwerk/> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <call id="a15" endpoint="fix"> + <parameters> + <label>Qualitaetsfreigabe 710</label> + <method>:post</method> + <arguments> + <regelwerk/> + <technische_weisungen/> + </arguments> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_timing> + <_timing_min/> + <_timing_max/> + <_timing_avg/> + </_timing> + <_notes> + <_notes_general/> + <_notes_output/> + <_attachments/> + </_notes> + </call> + <choose mode="exclusive"> + <alternative condition="data.taetigkeiten.include? &quot;Anbauteile montieren&quot;"> + <call id="a35" endpoint=""> + <parameters> + <label>Anbauteilmontage 670</label> + <method>:post</method> + <arguments/> + </parameters> + <finalize output="result"/> + <update output="result"/> + <_notes> + <_notes_general/> + </_notes> + </call> + </alternative> + <otherwise/> + </choose> </description> </description> <transformation> <description type="copy"/> - <dataelements type="rest"/> - <endpoints type="rest"/> + <dataelements type="none"/> + <endpoints type="none"/> </transformation> </properties> \ No newline at end of file