|
Autor
|
Thema: Bearbeitung an Station mit geringster Belegung (839 mal gelesen)
|
newfrog Mitglied
 Beiträge: 3 Registriert: 13.12.2012
|
erstellt am: 13. Dez. 2012 19:29 <-- editieren / zitieren --> Unities abgeben:         
Hallo, ich habe eine Flussteuerung und dahinter 3 Puffer. Ich möchte mittels einer Methode die BEs in den Puffer schicken, der die wenigsten BEs enthält. Gibt es eine einfachere Möglichkeit als eine ziemlich verschachtelte if-else-elseif Unterscheidung bei der stufenweise gegenübergestellt wird welcher Puffer kleiner ist? Mein Ansatz funktioniert im Moment noch nicht (Syntax ). Sieht aber wie folgt aus:
Code:
is do if .puffer1.AnzahlBEs > .puffer2.AnzahlBEs then if .puffer2.AnzahlBEs > .puffer3.AnzahlBEs then @.umlagern(puffer3); else @.umlagern(puffer2); elseif .puffer1.AnzahlBEs < .puffer3.AnzahlBEs then @.umlagern(puffer1); else @.umlagern(puffer3); else end; end; end; end;
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bon Simul Mitglied Simulant
   
 Beiträge: 1250 Registriert: 08.08.2011 Plant Simulation 10.1, 11 ff Professional
|
erstellt am: 14. Dez. 2012 08:18 <-- editieren / zitieren --> Unities abgeben:          Nur für newfrog
So kompliziert ist das nicht: Flusssteuerung Ausgangsverhalten Methode --> Sie müssen die Nachfolgernummer zurückgeben: Code:
: integer is do if puffer1.anzahlBEs < puffer2.anzahlBEs AND puffer1.anzahlBEs < puffer3.anzahlBEs then return 1; elseif puffer2.anzahlBEs < puffer1.anzahlBEs AND puffer2.anzahlBEs < puffer3.anzahlBEs then return 2; else return 3; end; end;
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
newfrog Mitglied
 Beiträge: 3 Registriert: 13.12.2012
|
erstellt am: 14. Dez. 2012 11:34 <-- editieren / zitieren --> Unities abgeben:         
Vielen Dank für die schnelle Info. Ich hab noch eine Sache, die mir nicht ganz einleuchtet. Ich hab folgenden Code in der Methode. Jetzt kommt für die else-Bedingung @.umlagern(puffer3); die Fehlermeldung "Die Anweisung umlagern darf nicht in Formeln verwendet werden". Warum geht das umlagern in den Puffer 1 und 2 aber nicht in Puffer3? Code:
is do if puffer1.AnzahlBEs < puffer2.AnzahlBEs AND puffer1.AnzahlBEs < puffer3.AnzahlBEs then @.umlagern(puffer1); elseif puffer2.AnzahlBEs < puffer1.AnzahlBEs AND puffer2.AnzahlBEs < puffer3.AnzahlBEs then @.umlagern(puffer2); else @.umlagern(puffer3); end; end;
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bon Simul Mitglied Simulant
   
 Beiträge: 1250 Registriert: 08.08.2011 Plant Simulation 10.1, 11 ff Professional
|
erstellt am: 14. Dez. 2012 12:29 <-- editieren / zitieren --> Unities abgeben:          Nur für newfrog
|
newfrog Mitglied
 Beiträge: 3 Registriert: 13.12.2012
|
erstellt am: 14. Dez. 2012 13:21 <-- editieren / zitieren --> Unities abgeben:         
Die Flusssteuerung ist in den Standardeinstellungen. Im Ausgangsverhalten ist die Methode "Verteilung" ausgewählt, die ich vorher gepostet habe. Etwas das ich vorher auch noch nicht gesehen hab ist die Meldung: "Das Formatieren der Methode '.Modelle.Netzwerk.Verteilung' überschreibt den vorhandenen Quelltext. Möchten Sie die Methode trotzdem formatieren?" Diese tritt auf wenn ich die Methode in der Flusssteuerung ausgewählt habe und auf "übernehmen" klicke. Wenn ich bejahe sieht die Methode danach wie folgt aus: Code:
: integer is do -- @ ist das BE return 1; end;
Sind Methoden in der Flusssteurung grundsätzlich mit return n zu gestalten? Und gibt das n die Kante an, die von der Flusssteuerung abgeht? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |

| | Projektleiter Elektrotechnik (m/w/d) - Direktvermittlung | Projektleiter Elektrotechnik (m/w/d) - Direktvermittlung
Arbeiten mit Sinn ? statt blindem Renditedruck.
Für ein modernes, genossenschaftlich organisiertes Ingenieurbüro mit Fokus auf zukunftsorientierte Energielösungen suchen wir Dich zur Festanstellung in Direktvermittlung an den Standorten Osnabrück oder Hannover.... | | Anzeige ansehen | Elektrotechnik, Elektronik |
|
Bon Simul Mitglied Simulant
   
 Beiträge: 1250 Registriert: 08.08.2011 Plant Simulation 10.1, 11 ff Professional
|
erstellt am: 14. Dez. 2012 14:01 <-- editieren / zitieren --> Unities abgeben:          Nur für newfrog
|