Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Arbeitsplan auslesen

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:  Arbeitsplan auslesen (3506 mal gelesen)
korgpa
Mitglied
student

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

Beiträge: 7
Registriert: 25.06.2009

erstellt am: 22. Jul. 2009 15:56    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,

ich habe einen Arbeitsplan der 5 Arbeits(einzel)stationen mit der jeweiligen Bearbeitungszeit enthält.
Nun will ich sowohl die Tabelle erzeugen und auslesen als auch die Einzelstationen  nebeneinander erzeugen und die Bearbeitungszeit dabei berücksichtigen.

Bin  nun mit meinem Latein am Ende: Folgende Methode funktioniert leider nicht reibungslos:

is
obj : object;
x : integer



do
obj := .Informationsfluss.Tabelle.erzeugeObjekt(.Modelle.Netzwerk,100,100);
Tabelle.leseExcelDatei("C:\test\Arbeitsplan.xls","Artikel");


for X := 1 to tabelle.xdim loop
obj := .Materialfluss.Einzelstation.erzeugeObjekt(.Modelle.Netzwerk,100+x,200+x);
obj.name
next;
Spalte := @.SpaltenindeX+1;
Nachfolger := .Modelle.Netzwerk.Tabelle.alsString(Spalte,@.name);
nachfolgerstation := .Modelle.Netzwerk.Tabelle.alsString(Spalte,@.name);
@.spaltenindex  := Spalte;

if nachfolger = "VOID"  then
@.umlagern(.Modelle.Netzwerk.Senke);
elseif  nachfolger = "Leer" then
repeat
Spalte := @.Spaltenindex +1;
Nachfolger := .Modelle.Netzwerk.Tabelle.alsString(Spalte,@.name);
nachfolgerstation := .Modelle.Netzwerk.Tabelle.alsString(Spalte,@.name);
@.spaltenindex  := Spalte;
if nachfolger = "Leer" then 
check := 0
else check :=1;
end;

until check > 0;

if nachfolger = "VOID" then
@.umlagern(.Modelle.Netzwerk.Senke);
else
netz := ".Modelle.netzwerk."+ nachfolgerstation +"." + nachfolgerstation;
@.umlagern(netz);

end;
else

netz := ".Modelle.netzwerk."+ nachfolgerstation +"." + nachfolgerstation;
@.umlagern(netz.vg(1));

end;


end;


Vielen Dank im Voraus

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: 23. Jul. 2009 11:17    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 korgpa 10 Unities + Antwort hilfreich

Moin,

hm... "nicht reibungslos" ist wohl etwas untertrieben.
PS ist leider nicht so intuitiv, dass es einem zufliegt. Deine Methode zeigt:
1. dass Du keine Programmiererfahrung hast und
2. dass Du Dich nicht mit den Grundlagen von PS beschäftigt hast (wie so viele andere auch nicht...). Schau Dir das Tutorial und die Beispiele an, vielleicht hilft auch das Buch von Steffen Bangsow.

Auf Dauer macht das Hilfestellung geben da keinen Spaß und zumindes ich werde Dir nicht Deine Modelle programmieren.

Im ersten Teil der Methode steht

Code:

obj := .Informationsfluss.Tabelle.erzeugeObjekt(.Modelle.Netzwerk,100,100);
Tabelle.leseExcelDatei("C:\test\Arbeitsplan.xls","Artikel");

for X := 1 to tabelle.xdim loop
obj := .Materialfluss.Einzelstation.erzeugeObjekt(.Modelle.Netzwerk,100+x,200+x);
obj.name
next;


Das könnte funktionieren, allerdings werden die Objekte schräg untereinander mit zu geringem Abstand angeordnet.
Das "obj.name" macht gar nichts, da sollte zum Setzen des Namens wohl noch ein Verweis auf die erste Zeile der aktuellen Spalte hin?
Und wenn Die Bearbeitungszeit Stationsspezifisch ist und nicht BE-Typ abhängig könnte die auch hier gesetzt werden.

Danach folgt ein "@.spaltenindex" @ ist ein Verweis auf das BE, dass die Methode angestoßen hat. Vielleicht solltest Du alles ab hier in eine eigene Methode auslagern, die die Verteilung der BEs regelt.

Wenn die Methode im gleichen Netzwerk liegt wie Deine Objekte kannst Du Dir den absoluten Pfad ".Modelle.Netzwerk.objekt" (objekt wäre z.B. "Senke") sparen und einfach "objekt" schreiben, dies gilt natürlich für alle Objekte.

Viel Spaß mit PS

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

korgpa
Mitglied
student

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

Beiträge: 7
Registriert: 25.06.2009

erstellt am: 24. Sep. 2009 14:15    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

Leider funktioniert das in 7.0 nicht so einfach. Wie kann ich die Stationen mit den Spaltennamen aus der TABELLE bezeichnen?

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