16. März 2019

Benutzerdefinierte Balkenzeilen

Benutzerdefinierte Balken sind eine Neuerung in INOSIM 12. Sie ermöglichen die Anzeige von Prozessen, die nicht Teil der Simulation sind, in INOSIM Gantt. Somit können sie Daten beliebiger Herkunft im Gantt-Diagramm als Balken anzeigen, z. B. um die ideale Belegung einer Teilanlage darzustellen, welche dann mit der tatsächlichen Belegung verglichen werden kann.

Die folgenden Tipps erläutern Ihnen anhand des Beispiels Balkenzeilen (siehe Download unten) die Erstellung und Anwendung benutzerdefinierter Balken.

Schritt 1: Balkenzeile(n) anlegen

Wir fangen mit dem Anlegen neuer Balkenzeilen in dem Gantt-Diagramm an. Später weisen wir unsere manuell erstellten Zeitblöcke, die benutzerdefinierten Balken, diesen Zeilen zu.

Die Funktion Neue Balkenzeile steht Ihnen im Kontextmenü der Balkenzeilen im Datenbankfenster von INOSIM unter Ausrüstung>Balkenzeilen zur Verfügung, um diese zu erstellen.

Anschließend können sie den Balkenzeilennamen über die Eigenschaften im Kontextmenü der jeweiligen Balkenzeile ändern.

Schritt 2: Erzeugen der Balken

Benutzerdefinierte Balken können zu jedem Zeitpunkt direkt in Visual Basic erzeugt werden. Der folgende Code zeigt exemplarisch eine Funktion, mit der ein benutzerdefinierter Balken erzeugt und einer Balkenzeile zugewiesen wird. Gesetzt werden dabei das Start- und Enddatum des Balkens: Das um die Variable tOffset versetzte Referenzdatum der Simulation wird als Startdatum gesetzt; das Enddatum wiederum wird um fünf Stunden versetzt vom Startdatum gesetzt. Anschließend wird der erzeugte Balken der benutzerdefinierten Balkenzeile namens Teilsteuerrezept-/Operationssicht hinzugefügt:

Function GenerateBars(tOffset As Double) As CustomBar
  Dim bar As New CustomBar

  bar.StartDate = Simulation.RefDate + tOffset * 3600
  bar.EndDate = bar.StartDate + 5 * 3600

  BarRows("Procedure-/Operationview").CustomBars.Add bar

  Set GenerateBars = bar
End Function

DisplayMode, Label, Color und andere Eigenschaften von benutzerdefinierten Balken

Im folgenden Code wird die obige Funktion genutzt, um am Ende der Simulation drei Balken zu erzeugen und zwei weiteren Eigenschaften der Balken ihre Werte zuzuweisen. DisplayMode legt fest, ob ein Balken in allen Sichten angezeigt wird oder jeweils nur in der Teilsteuerrezept- oder Operationssicht. Label bestimmt den Namen, der für den Balken in dem Gantt-Diagramm angezeigt wird.

Private Sub Simulation_EndSim()
  Dim bar As CustomBar

  Set bar = GenerateBars(10)
  bar.DisplayMode = cbdmAlways
  bar.Label = "Always"

  Set bar = GenerateBars(20)
  bar.DisplayMode = cbdmOperation
  bar.Label = "Op"

  Set bar = GenerateBars(30)
  bar.DisplayMode = cbdmProcedure
  bar.Label = "Proc"
End Sub

Des Weiteren kann für jeden benutzerdefinierte Balken die Farbe über einen RGB-Code festgelegt gesetzt werden. Im folgende Code-Beispiel wurde Rot gewählt:

Dim bar As New CustomBar
bar.Color = RGB(255,0,0)

Außerdem können benutzerdefinierte Attribute (CustomAttributes) zugewiesen werden (im folgenden Beispiel wird dem Attribut Number der Wert einer Variablen namens barCount zugewiesen, welche hier der aktuellen Anzahl von generierten Balken entspricht).

'barCount is defined beforehand, and incremented whenever a new bar is created
bar.CustomAttributes("Number") = barCount

Schließlich kann für jeden Balken abgefragt werden, zu welcher Balkenzeile er gehört. Im folgenden Beispiel wird einer BarRow-Variablen myRow die Balkenzeile des benutzerdefinierten Balkens myBar zugewiesen:

Dim myRow As BarRow
Set myRow = myBar.BarRow

Bitte beachten Sie: Es steht Ihnen frei, jede Art von Daten zu verwenden, um die Balken zu parametrisieren. Anstatt die Balken anhand von vorgegebenen Daten in VBA zu erzeugen, können Sie die Daten z. B. auch in einem Parameters-Sheet in INOSIM hinterlegen. Das ermöglicht Ihnen alle leicht veränderbaren Eingaben, die als Balken in dem Gantt-Diagramm dargestellt werden, anzuzeigen.

Schritt 3: Ansicht der benutzerdefinierten Balken

Nun können Sie einen Simulationslauf durchführen. Die erstellten benutzerdefinierten Balken können in dem Gantt-Diagramm eingesehen werden. Das folgende Bild zeigt das Gantt-Diagramm des Beispielprojekts.

Downloads

Downloads

  • Beispielprojekt
  • PDF-Ausdruck zu diesem Tipp & Trick

Fragen?

Möchten Sie mehr über dieses Thema erfahren oder haben weitere Fragen? Bitte kontaktieren Sie uns.

Array ( [posts_per_page] => 3 [post_type] => [category__in] => Array ( [0] => 171 ) [orderby] => rand [order] => ASC )

Mehr Tipps & Tricks

Custom Curves and Properties Of Curves in INOSIM Gantt In Ihrem Modell wird derselbe Rohstoff in mehreren Tanks aufbewahrt und Sie möchten den gesamten Lagerbestand…

In diesem Tipp & Trick geht es um den Einsatz eines VBA Timers zur Messung der Ausführungsdauer von VBA Steuerungen. Um die Perfomance eines Modells…

26. November 2020

Schnelle Sortierung von Arrays

Bei der Sortierung von Arrays kann die Laufzeit des angewendeten Sortierverfahrens eine entscheidende Rolle spielen. Bei kleineren Datenmengen mag diese noch nicht sehr stark ins…

mehr

INOSIM Kontakt

Zu den lokalen Geschäftszeiten

Deutschland +49 231 97 00 250