Hallo Zusammen, ich habe zwei Methode für Wareneinladung und Entladung geschrieben, um das Transport deutlich zu darstellen. Die Methode "einladen" funktioniert gut, aber bei Entladung geht's leider nicht. Ich habe @ benutzt, bei Compilierung der Methode ist es kein Problem, aber im Netztwerk funktioniert es nicht. Kann jemand mir bitte helfen? Vielen Danke im Voraus!
Das ist die Methode einladen, zuerst ein Container erzeugen, dann Produkt 1 (2 Produkt im Netzwerk) in Container erzeugen, die Type des Containers setzen. Ladung_HL ist eine Paralellstation.
if LiefermengeHL_P1 > 0 then
.BEs.Container.erzeugen(Ladung_HL[1,1]);
Ladung_HL[1,1].inhalt.xDim:= 1;
Ladung_HL[1,1].inhalt.yDim:= LiefermengeHL_P1;
Ladung_HL[1,1].inhalt.setzeAttribut("ContainerInhalt", LiefermengeHL_P1);
Ladung_HL[1,1].inhalt.setzeAttribut("ContainerType", "P1");
for i:= 1 to LiefermengeHL_P1 loop
LagerH_P1.inhalt.umlagern(Ladung_HL[1,1].inhalt);
next;
end;
Zur Entladung solle zuerst die Attribut"ContainerType" abgeholt werden, und dann die Kapazität des Lagers prüfen. Es tritt aber immer Fehler auf:entweder void hat keine Method "holeAttribut" oder unbekanter Name ContainerType. Die Attribut "ContainerType" habe ich schon bei Objekt "Container" definiert, und bei Einladung hat es schon auch durch Methode setzeAttribut neue eingesetzt.
if @ /= void and @.holeAttribut("ContainerType") = "P1" then
LBvorEntlad1:= LagerP1.AnzahlBEs;
lagerKapa1:= LagerP1.xDim * LagerP1.yDim;
if LagerP1.AnzahlBEs + @.AnzahlBEs <= lagerKapa1 then
repeat
@.inhalt.umlagern(LagerP1);
until @.AnzahlBEs = 0;
@.vernichten;
LBnachEntlad1:= LagerP1.AnzahlBEs;
else
...
end;
...
end;
[Diese Nachricht wurde von Nancy X am 24. Jun. 2009 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP