Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Zielort im Fahrzeug wird einfach so gelöscht.

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:  Zielort im Fahrzeug wird einfach so gelöscht. (708 mal gelesen)
picoi
Mitglied



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

Beiträge: 47
Registriert: 06.11.2009

Plant Simulation Version 8.1.3

erstellt am: 10. Mrz. 2010 17:05    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 lagere meine Fahrzeug von einer Einzelstation auf einen zweispurigen Weg (Spur B) um und übergebe meinem Fahrzeug einen Zielort. Dieser steht dann auch in der Eingabemaske vom Fahrzeug. Doch gehe ich nach der Übergabe des Zielortes einen Einzelschritt im Debugger weiter, steht kein Zielort mehr drin.

Code:

Code:

is
i : integer;
tab_TAsFzg, tab_TAsFzgalt : table;
fahrzeug_instanz, LE_instanz, tab_alleTAs, tab_MatImUmlauf : object;
trAuftrag_ID : string;
do
--Daten einlesen.
fahrzeug_instanz := @;
tab_TAsFzg := current.~.StaplerQuelle.TAB_ErzeugteFahrzeuge["TRANSPORTAUFTRAEGE",fahrzeug_instanz];
tab_TAsFzgalt := tab_TAsFzg.kopieren({0,1}..{*,*});
tab_alleTAs := current.~.StaplerQuelle.TAB_Transportauftraege;
tab_MatImUmlauf := root.Behaeltersteuerung.TAB_MaterialImUmlauf;

--Übergibt Material an AMASenkeLG.
for i := 1 to tab_TAsFzg.IndexYDim loop
trAuftrag_ID := tab_TAsFzg["TRANSPORTAUFTRAG_ID",1]; --immer erste Zeile, weil diese nach Umlagerung des Materials entfernt wird.
LE_instanz := tab_alleTAs["GEBINDE_INSTANZ",trAuftrag_ID];
if LE_instanz.umlagern(AMASenkeLG) then --dadurch wird Eingangssteuerung der AMASenkeLG ausgelöst.
--Dokumentiert erledigten TA.
root.m_dokuTA(trAuftrag_ID);
--Dokumentiere Standort von Material
tab_MatImUmlauf["STANDORT",LE_instanz] := LE_instanz.standort;
--LE_instanz aus TAB_MaterialImUmlauf loeschen.
tab_MatImUmlauf.entferneZeile(LE_instanz);
else debug; --LE konnt nicht auf AMASenkeLG umgelagert werden.
end;
next;

--Ändere Fahrzeugstatus
root.m_aendereStatus(fahrzeug_instanz, "frei", tab_TAsFzgalt);

if var_b_umlagernErlaubt = true then
fahrzeug_instanz.umlagern(WegAMA.B);
--Nur dann neues ZufallsZiel übergeben, wenn Fzg. keinen neuen TA (über Statusänderung "frei") bekommen hat.
if tab_TAsFzg.IndexYDim <= 0 then
fahrzeug_instanz.Zielort := root.m_getZufZiel(fahrzeug_instanz);
else
fahrzeug_instanz.Zielort := tab_TAsFzg["START_ID",1];
end;
else
var_o_FzgWartend := fahrzeug_instanz;
end;


--Prüft, ob TAs mit diesem Zielort als START_ID vorliegen, die den STATUS "nochZuVergeben" besitzen.
end;


Eigentlich ist von dem Code nur die letzte If-Anweisung interessant zur Lösung des Rätsels. Denn mit

fahrzeug_instanz.Zielort := root.m_getZufZiel(fahrzeug_instanz);

übergebe ich den neuen Zielort. Nach Durchführung dieses Einzelschrittes ist der Zielort auch im Fahrzeug eingetragen. Danach führe ich eben noch einen Einzelschritt durch. Und danach ist der Zielort weg.

????

Hilfe!

Gruß,
picoi

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

tsx
Mitglied



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

Beiträge: 103
Registriert: 06.03.2010

erstellt am: 11. Mrz. 2010 19:05    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 picoi 10 Unities + Antwort hilfreich

Hallo Picoi,
klingt komisch.

Lässt du den Wert von einer anderen Methode überwachen?
Vielleicht hilft auch schon das Debuggen mit F11 

Grüße,
tsx

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

picoi
Mitglied



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

Beiträge: 47
Registriert: 06.11.2009

Plant Simulation Version 8.1.3

erstellt am: 14. Mrz. 2010 16: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

Hab's gelöst.

In der Funktion m_getZufZiel() übergebe ich bereits den Zielort an das Fahrzeug. Die Funktion liefert aber keinen Rückgabewert. D.h. mit der Zuweisung

fahrzeug_instanz.Zielort := root.m_getZufZiel(fahrzeug_instanz);

übergebe ich einen leeren Rückgabewert.

Lösung:

root.m_getZufZiel(fahrzeug_instanz);

Es funzt!

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