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

Mit der Integration von stochastischen Teilanlagen-Störungen in Ihr INOSIM-Projekt können Sie die Realität in Ihrem Modell noch präziser abbilden, da Störungen einen großen Einfluss auf…

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…

Intervall-Auswertung des Transfer-Reports In diesem Tipp stellen wir Ihnen vor, wie Sie aus den von INOSIM erzeugten Reports automatisiert per VBA weitere Daten berechnen, um…

mehr

INOSIM Kontakt

Zu den lokalen Geschäftszeiten

Deutschland +49 231 97 00 250

USA +1 214 663 3101

Indien +91 9766 331 092