Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Schleife um Kinder eines Benutzerobjektes durchzugehen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Schleife um Kinder eines Benutzerobjektes durchzugehen (1041 mal gelesen)
Stapler
Mitglied
Logistik


Sehen Sie sich das Profil von Stapler an!   Senden Sie eine Private Message an Stapler  Schreiben Sie einen Gästebucheintrag für Stapler

Beiträge: 21
Registriert: 08.01.2020

erstellt am: 17. Feb. 2020 16:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,

ich brauche eine Methode, die alle Kinder eines Benutzerobjekts (in meinem Fall 'Stapler') zu einem gewissen Zeitpunkt umlagert.

Mit   &SimBeenden.methcall(DauerSim)   rufe ich die Methode(SimBeenden) zu meinem eingestellten Zeitpunkt(DauerSim) auf.

Die Methode wird nicht durch die Stapler ausgelöst, weshalb ich @.umlagern nicht verwenden kann.


Ich habe mir folgende Schleife überlegt, aber weiß nicht wie ich die einzelnen Stapler IDs ansprechen soll

Code:
var i, n, StaplerID: integer

n := .Benutzerobjekte.Stapler.AnzahlKinder
StaplerID := .Benutzerobjekte.Stapler.Id

for i:=1 to n
.Benutzerobjekte.Stapler:n.umlagern(SimEnde)
next



Dies läuft auf einen Syntaxfehler bei   .Benutzerobjekte.Stapler:n   hinaus
Mit .Benutzerobjekte.Stapler.Id habe ich zwar die ID, aber ich weiß nicht wie ich das in der Schleife unterbringen kann.


Gruß Stapler

[Diese Nachricht wurde von Stapler am 17. Feb. 2020 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

nadin1223
Mitglied
Ing.


Sehen Sie sich das Profil von nadin1223 an!   Senden Sie eine Private Message an nadin1223  Schreiben Sie einen Gästebucheintrag für nadin1223

Beiträge: 938
Registriert: 29.03.2016

erstellt am: 17. Feb. 2020 18:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Stapler 10 Unities + Antwort hilfreich

Moin,

Code:

var _Stapler : object :=  .Benutzerobjekte.Stapler
for var i := 1 to _Stapler.AnzahlKinder
print _Stapler.kindNr(i).id
next

vG
Nadin

------------------
Die einfachste Art an korrekte Informationen zu gelangen ist, etwas Falsches in ein Forum zu posten und auf die Korrektur zu warten. (Matthew Austern)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Stapler
Mitglied
Logistik


Sehen Sie sich das Profil von Stapler an!   Senden Sie eine Private Message an Stapler  Schreiben Sie einen Gästebucheintrag für Stapler

Beiträge: 21
Registriert: 08.01.2020

erstellt am: 18. Feb. 2020 11:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke hat wieder super funktioniert.

Jetzt würde ich gerne noch die Daten eines Staplers in einem Diagramm darstellen.

Mein Stapler hat das Benutzerdefinierte Attribut 'PickzeitenStapler' im Format Table. Hierin wurden einfach gewisse Zeitstempel eingetragen.

Ich wollte jetzt noch in der selben Schleife folgendes einbauen.

Code:
for i:=1 to Stapler.AnzahlKinder
    Stapler.kindNr(i).umlagern(SimEnde)
    root.Auswertung.PickzeitenGraph.addObject(Stapler.kindNr(i).PickzeitenStapler)
next


Jeder Stapler soll also seine Tabelle an das Diagramm 'PickzeitenGraph' übergeben. Ich habe dann aber gemerkt, dass ich damit nur das Objekt Stapler aber nicht dessen Tabelle übergeben kann.

Gibt es eine andere Möglichkeit die Tabellen der Stapler automatisiert in ein Diagramm zu fügen?


Gruß Stapler

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

nadin1223
Mitglied
Ing.


Sehen Sie sich das Profil von nadin1223 an!   Senden Sie eine Private Message an nadin1223  Schreiben Sie einen Gästebucheintrag für nadin1223

Beiträge: 938
Registriert: 29.03.2016

erstellt am: 18. Feb. 2020 12:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Stapler 10 Unities + Antwort hilfreich

Probiere mal zielorientiert die Bearbeitung-Packette (Stepp) zu identifizieren.
Was ist der Workflow. Was braucht/macht/liefert der Stepp...

Beispiel für ein Stepp:
(A) Stapler hat Daten in Tabelle gespeichert und will diese in eine andere Tabelle schreiben...

(B) Ein spezielles Diagramm darstellen. Was machst/braucht der Diagramm-Baustein hierzu genau...

------------------
Die einfachste Art an korrekte Informationen zu gelangen ist, etwas Falsches in ein Forum zu posten und auf die Korrektur zu warten. (Matthew Austern)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Stapler
Mitglied
Logistik


Sehen Sie sich das Profil von Stapler an!   Senden Sie eine Private Message an Stapler  Schreiben Sie einen Gästebucheintrag für Stapler

Beiträge: 21
Registriert: 08.01.2020

erstellt am: 18. Feb. 2020 15:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


TabelleDiagramm.png

 
Hallo Nadin,

danke für den Ansatz, aber ich habe nicht ganz verstanden was du meinst.

Trotzdem habe ich mir es mir nochmal genauer angeschaut.
Meine Lösung ist im Anhang als Bild...

Ich habe zuerst einmal eine neue Tabelle erstellt, in der jedem Stapler eine Spalte zugeordnet wird.
In diese Tabelle tragen sich dann alle Stapler mit dem Zeitpunkt, in die vorgesehene Spalte ein.

Ich weiß noch nicht, ob ich mit dem Ergebnis zufrieden bin

Hier der nicht so schöne Code. Kann noch durch Variablen vereinfacht werden haha

Code:
root.Auswertung.PickzeitenSortiert[@, root.Auswertung.PickzeitenSortiert.holeSpaltenyDim(root.Auswertung.PickzeitenSortiert.holeSpaltenNummer(@))+1] := root.Ereignisverwalter.Zeit

Im Prinzip:
-> Spalte mit Namen des Staplers suchen
-> Nächste freie Zeile in der Spalte suchen
-> Zeit eintragen

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

nadin1223
Mitglied
Ing.


Sehen Sie sich das Profil von nadin1223 an!   Senden Sie eine Private Message an nadin1223  Schreiben Sie einen Gästebucheintrag für nadin1223

Beiträge: 938
Registriert: 29.03.2016

erstellt am: 18. Feb. 2020 16:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Stapler 10 Unities + Antwort hilfreich


Kommentar.png

 
mal Bild Kommentiert

------------------
Die einfachste Art an korrekte Informationen zu gelangen ist, etwas Falsches in ein Forum zu posten und auf die Korrektur zu warten. (Matthew Austern)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Stapler
Mitglied
Logistik


Sehen Sie sich das Profil von Stapler an!   Senden Sie eine Private Message an Stapler  Schreiben Sie einen Gästebucheintrag für Stapler

Beiträge: 21
Registriert: 08.01.2020

erstellt am: 18. Feb. 2020 16:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für das Feedback

    - Achsenbeschriftung war kein Problem (links Sim.Zeit, unten Anzahl Picks)
    - Doppelte Werte: Der Stapler kommissioniert 1-2 Paletten, in der Tabelle werden alle Picks erfasst

    - Scala: Hier bräuchte ich die Anzahl der Picks, theoretisch die Zeilennummer
      Wie kann ich festlegen, welche Werte das Diagramm für die X-Achse verwendet werden sollen?
    - Und: Kann ich die Achsen ohne weiteres vertauschen, oder müsste ich die Daten andersherum sammeln 

    - Zu den Graphen
    Du hast Recht, momentan sagt das sehr wenig aus. Dies ist die Auswertung für einen Simulationslauf mit 5 Staplern
    Dies kann aber in Vergleich gesetzt werden mit einem Lauf mit bspw. 3 oder 7 Staplern
    Jeder Simulationslauf läuft gleich lang --> Zu klären: Welcher Lauf ist am effizientesten und warum?


Gruß Stapler

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

nadin1223
Mitglied
Ing.


Sehen Sie sich das Profil von nadin1223 an!   Senden Sie eine Private Message an nadin1223  Schreiben Sie einen Gästebucheintrag für nadin1223

Beiträge: 938
Registriert: 29.03.2016

erstellt am: 18. Feb. 2020 17:19    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Stapler 10 Unities + Antwort hilfreich

Zitat:
- Scala: Hier bräuchte ich die Anzahl der Picks, theoretisch die Zeilennummer
  Wie kann ich festlegen, welche Werte das Diagramm für die X-Achse verwendet werden sollen?
- Und: Kann ich die Achsen ohne weiteres vertauschen, oder müsste ich die Daten andersherum sammel

das ist beispielsweise Stepp:

Zitat:
(B) Ein spezielles Diagramm darstellen. Was machst/braucht der Diagramm-Baustein hierzu genau...

-------------
dafür ist das Ziel wichtig! Dies noch genau definieren:

Weil, dies ist nicht SMART.

Zitat:
- Zu den Graphen
Du hast Recht, momentan sagt das sehr wenig aus. Dies ist die Auswertung für einen Simulationslauf mit 5 Staplern
Dies kann aber in Vergleich gesetzt werden mit einem Lauf mit bspw. 3 oder 7 Staplern
Jeder Simulationslauf läuft gleich lang --> Zu klären: Welcher Lauf ist am effizientesten und warum?

Mir wird beispielsweise aus diesem Bild leider nicht ersichtlich:
welche Eigenschaft im Diagramm das Besser/Schlechter definiert
welche Parameter einen Einfluss auf Besser/Schlechter haben
-------------------
Tipp:
Probiere mal die 5W-Methode ( 5x Warum) auf dein Problem anzuwenden.

------------------
Die einfachste Art an korrekte Informationen zu gelangen ist, etwas Falsches in ein Forum zu posten und auf die Korrektur zu warten. (Matthew Austern)

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz