Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Variable als Teil einer Klasse verwendbar?

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:  Variable als Teil einer Klasse verwendbar? (1406 mal gelesen)
gforums
Mitglied
Student


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

Beiträge: 12
Registriert: 08.07.2011

Plant Simulation 9.0.9 64bit Windows 7

erstellt am: 08. Jul. 2011 15:42    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,

mein erster Beitrag hier, daher kurze Vorstellung:
Ich studiere aktuell in Siegen (Wirtschaftsingenieurwesen) und beschätige mich in meiner laufenden Diplomarbeit mit Plant Simulation zur Simulation und Nachbildung eines Bereiches eines Materialbereitstellprozesses.

Leider finde ich zu Plant Simulation nicht die Masse an Literatur, die vielleicht nötig wäre, um sich in so kurzer Zeit besser einzuarbeiten und auch die Anzahl anderer Studierender oder Mitarbeiter mit PlantSimulation Kenntnissen ist leider locker an einer Hand abzählbar bei uns.

Möglich, dass meine Frage also sehr trivial ist, aber ich bin dennoch froh um jede Antwort, die mir weiterhilft!

Mein Problem:
-------------

Ich habe verschiedene Puffer, nennen wir sie PU1 - PU5, aus denen abhängig von einer Variable, Teile entnommen werden sollen.
Die Entnahme aus einem Puffer lässt sich z.b. realisieren durch:
.Modelle.Netzwerk.Blocklager.PU1.inhalt.umsetzen(@)
womit aus dem Puffer PU1 des Netzwerkes Blocklager Inhalt entnommen werden würde.

Nun soll das ganze aber abhängig einer Variable stattfinden, ohne dass ich nun mit if-Abfragen hantieren möchte.
Ich dachte etwa an so etwas:
.Modelle.Netzwerk.Blocklager.Puffer_zum_Entnehmen.inhalt.umsetzen(@)
mit einer Variable (string) "Puffer_zum_Entnehmen", die eben die Werte PU1 - PU5 annehmen kann.

In dieser Form so klappt es aber nicht.
Geht das überhaupt, und wenn ja, wie?

Ich danke euch vorab!

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

planty
Mitglied
Dipl.-Ing.


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

Beiträge: 139
Registriert: 18.09.2006

erstellt am: 08. Jul. 2011 16:55    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 gforums 10 Unities + Antwort hilfreich

Hi,

entweder Du nimmst eine Variable vom Typ 'Object', der kannst Du dann den Puffer zuweisen oder nimmst den Pfad zum Puffer mit in den String auf:

myStringVar := ".Modelle.Netzwerk.Blocklager.Puffer_zum_Entnehmen";

und greifst dann mit str_to_obj(myStringVar).inhalt auf das Be zu.
Wenn alles im gleichen Netzwerk stattfindet würde ich mir den absoluten Pfad (.modelle.netzwerk.blocklager.puffer) sparen und relativ zugreifen (puffer oder blocklager.puffer).

P.

------------------
Two hours of trial and error can save ten minutes of manual reading!

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

gforums
Mitglied
Student


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

Beiträge: 12
Registriert: 08.07.2011

Plant Simulation 9.0.9 64bit Windows 7

erstellt am: 08. Jul. 2011 17:00    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

Hi,

ich danke dir vielmals, das wird mir schon weiterhelfen!
Ich kenne ein ähnliches vorgehen, wie ich es mir wünsche von der UNIX Konsole. Wenn ich die Variable mittels $Variable einfüge, egal wo, wird deren Inhalt einfach als Text interpretiert.

Sowas würde ich mir für Plant Simulation auch wünschen, bspw. in einer for schleife etwa so:

for i:=1 to 5 loop
if PU($i).AnzahlBes < 2 then
--- nachfüllen
end;
next;

Aber das ist mit einer grundsätzlichen Vorgehensweise wohl nicht so einfach zu realisieren..?

Danke nochmal!

EDIT: Der Tip mit dem object ist schon mal klasse! Denke, damit komme ich gut hin

[Diese Nachricht wurde von gforums am 08. Jul. 2011 editiert.]

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

planty
Mitglied
Dipl.-Ing.


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

Beiträge: 139
Registriert: 18.09.2006

erstellt am: 11. Jul. 2011 08:50    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 gforums 10 Unities + Antwort hilfreich

Hi,

Du suchst:

Code:

stringVar := to_str("PU", i);
objectVar := str_to_obj(stringVar);
if objectVar.AnzahlBes ....

Ist programmiertechnisch in meinen Augen aber Mist, außer vielleicht zum Initialisieren einer Objektliste (Referenzliste).

P.

------------------
Two hours of trial and error can save ten minutes of manual reading!

[Diese Nachricht wurde von planty am 11. Jul. 2011 editiert.]

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

der simulant
Mitglied



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

Beiträge: 71
Registriert: 28.02.2007

-----------
der simulant

erstellt am: 11. Jul. 2011 10:03    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 gforums 10 Unities + Antwort hilfreich

Hi gforums,

wenn ich Dein Beispiel aufgreifen darf.
In plant-simulation würde das so aussehen

is
  i : integer;
do
  for i := 1 to 5 loop
      if str_to_obj("pu" + to_str(i)).nummu < 2 then
      --befuellen
      end;
    next;
end;

Vorausgesetzt, die Methode liegt im Netzwerk der Puffer
Hoffe Dir ein wenig geholfen zu haben

Gruß

der simulant

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