|
Autor
|
Thema: Arbeitsplan auslesen (3833 mal gelesen)
|
korgpa Mitglied student
 Beiträge: 7 Registriert: 25.06.2009
|
erstellt am: 22. Jul. 2009 15:56 <-- editieren / zitieren --> Unities abgeben:         
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.
 
 Beiträge: 139 Registriert: 18.09.2006
|
erstellt am: 23. Jul. 2009 11:17 <-- editieren / zitieren --> Unities abgeben:          Nur für korgpa
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 |

| | Technische:r Systemplaner:in (w/m/d) im Bereich der Technischen Gebäudeausrüstung und Energie | Der Landschaftsverband Westfalen-Lippe (LWL) arbeitet als Kommunalverband mit mehr als 20.000 Beschäftigten für die 8,3 Millionen Menschen in der Region. Der LWL betreibt 35 Förderschulen, 21 Krankenhäuser, 18 Museen, zwei Besucherzentren und ist einer der größten deutschen Hilfezahler für Menschen mit Behinderung. Er erfüllt damit Aufgaben im sozialen Bereich, in der Behinderten- und Jugendhilfe, in der Psychiatrie und in der Kultur, die sinnvollerweise westfalenweit wahrgenommen werden.... | | Anzeige ansehen | Feste Anstellung |
|
korgpa Mitglied student
 Beiträge: 7 Registriert: 25.06.2009
|
erstellt am: 24. Sep. 2009 14:15 <-- editieren / zitieren --> Unities abgeben:         
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |