Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Lager Reihen durchsuchen und bestimmte Mengen auslagern

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:  Lager Reihen durchsuchen und bestimmte Mengen auslagern (2314 mal gelesen)
Mautaban
Mitglied



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

Beiträge: 44
Registriert: 29.09.2014

erstellt am: 27. Nov. 2014 10:27    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 !In meinem Lager sind die Teile folgendermaßen sortiert 

  1        2      3...  X
1 TeilA  TeilB
2 TeilA  TeilB
3 TeilA  TeilB
  ...    ..

Y


ICh möchte nun zum Beispiel von Teil A eine bestimmte Menge umladen.
Wenn ich das ganze per loop gestalte funktioniert es auch allerdings sind bei der zweiten Anfrage die Lagerplätze leer. Ich bräuchte eine Methode die sozusagen die Reihen durchgeht bis ein Teil gefunen wird und ab dann die geforderte Menge von den folgenen Pläzen entnimmt.
Ich habs mit dem finden Befehl probiert allerdings looped die Methode dann das gesamte Lager durch im Prinzip müsste der loop stoppten sobald ein Teil entdeckt wird und sich die Koordinaten merken und dann im nächsten schritt angefangen von dieser Koordinate Z Teile umzulagern.
Kann mir irgendjemand einen Tip geben was das angeht?

Grüße!!

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 27. Nov. 2014 13:06    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 Mautaban 10 Unities + Antwort hilfreich

Zitat:

im Prinzip müsste der loop stoppten sobald ein Teil entdeckt wird und sich die Koordinaten merken und dann im nächsten schritt angefangen von dieser Koordinate Z Teile umzulagern

also so ungefähr:

Code:

for x:=1 to lager.xDim loop
for y:=1 to lager.yDim loop
  if lager.pe(x,y).inhalt /= void then
    if lager.pe(x,y).inhalt.name="Teil" then
      exitLoop 2;
    end;
    end;
  next;
next;

--start koord x,y

for m:=0 to z-1 loop
  lager.pe(x,y+m).inhalt.umlagern(ziel);
  wait(0.1); --vielleicht notwendig z.B. bei Puffern
 
next;


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

Mautaban
Mitglied



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

Beiträge: 44
Registriert: 29.09.2014

erstellt am: 27. Nov. 2014 14:01    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

Hey das ganze funkioniet einwandfrei!

Ein Problem taucht allerdings auf. Wenn zBsp nur noch ein Teil im Lager ist aber Z=5 ist also 5 umgelagert werden sollen hält die methode an da man ja VOID nicht umlagern kann.

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 27. Nov. 2014 14: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 Mautaban 10 Unities + Antwort hilfreich

dann müssten Sie vor dem Umlagern checken, ob der Platz belegt ist

Code:

for m:=0 to z-1 loop
  if lager.pe(x,y+m).inhalt /= void then
    lager.pe(x,y+m).inhalt.umlagern(ziel);
    wait(0.1); --vielleicht notwendig z.B. bei Puffern
  end;
next;



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

Mautaban
Mitglied



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

Beiträge: 44
Registriert: 29.09.2014

erstellt am: 27. Nov. 2014 14:12    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

Stimmt logisch  Genauso hab ich das auch schon gemacht im Modell. Bin grad nur so ausgelaugt, dass ich nicht mehr richtig denken kann 

off topic:

Das ganze Simulieren gefällt mir recht gut.

Haben Sie einen Tipp bei welchen Firmen Abschlussarbeiten im Bereich Plant Simulation möglich sind?

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 27. Nov. 2014 14:21    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 Mautaban 10 Unities + Antwort hilfreich

Sie können es bei den Dienstleistern versuchen: z.B. SimPlan, Isilog

z.Zt. sucht Audi

http://www.connecticum.de/Jobboerse/Praktikum-in-der-Fertigungsplanung-Karosseriebau-Stellenangebot-555228.html

Suchen Sie am besten bei allen Automobil-Firmen.

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

Mautaban
Mitglied



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

Beiträge: 44
Registriert: 29.09.2014

erstellt am: 27. Nov. 2014 14:35    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 habe ich keine Kenntnisse in SQL oder C++. Sonst hätte ich auch nicht so viele Probleme in Plant Simulation  
Also von Haus aus Programmierer zu sein ist für viele Unternehmen Vorraussetzung bei SIMPLAN wird zBsp auch eine höhere Programmiersprache vorausgesetzt.


Übrigens den Code habe ich jetzt so geschrieben und er funktioniert per Void hats irgendwie nicht so gut geklappt:

Code:
for m:=0 to z-1 loop
if Lager[x,y].belegt then
Lager.pe(x,y+m).inhalt.umlagern(Demontage)
else--
wait(0.1)
end;
next;
end;

[Diese Nachricht wurde von Mautaban am 27. Nov. 2014 editiert.]

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 27. Nov. 2014 14: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 Nur für Mautaban 10 Unities + Antwort hilfreich

a) trotzdem versuchen

b) Sie müssten auch die richtige Position prüfen

Code:

if Lager[x,y+m].belegt then
  Lager.pe(x,y+m).inhalt.umlagern(Demontage)



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

Mautaban
Mitglied



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

Beiträge: 44
Registriert: 29.09.2014

erstellt am: 27. Nov. 2014 14:48    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

Oja hab mich hier vertippt. Wo liegt der Unterschied im Ansprechen des Lagers??? Lager.pe(..)
und Lager[..]

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 27. Nov. 2014 15:04    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 Mautaban 10 Unities + Antwort hilfreich

es gibt keinen Unterschied, es sind Synonyme

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

Mautaban
Mitglied



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

Beiträge: 44
Registriert: 29.09.2014

erstellt am: 02. Dez. 2014 15:58    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

Ein PRoblem tritt mittlerweile auf wenn das Modell länger läuft. Das Lager entleert sich und die Methode versucht Lagerplätze anzusprechen welche nicht existieren.
Der Fehler lautet folglich "ein "void" kann keine Methode Cont. empfangen"

xPosition = 8 und YPosition =100 Von dieser Position an versucht die Mthode wiederum Lagerplätze mit Inhalt anzusprechen die aber nicht  existieren.

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

Bon Simul
Mitglied
Simulant


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

Beiträge: 1250
Registriert: 08.08.2011

Plant Simulation 10.1, 11 ff Professional

erstellt am: 02. Dez. 2014 18:49    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 Mautaban 10 Unities + Antwort hilfreich

Sie müssten eine "Ausstiegsbedingung" in der Schleife definieren z.B.

if x > 8 or y > 100 then
exitLoop 2;
end;

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