Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Frage zu Listen in Tabellen

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:  Frage zu Listen in Tabellen (3376 mal gelesen)
bibo234
Mitglied
Student


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

Beiträge: 25
Registriert: 08.03.2005

erstellt am: 30. Mai. 2005 20:43    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 liebes Board,

habe wiedermal ein klitzekleines Problem, diesmal geht es um Tabellenzugriffe. Und zwar würde ich gerne eine Liste von Werten in eine Tabelle schreiben, nur irgendwie scheint das auf keiner der mir bekannten Arten bewerkstelligen, also weder so:

is
liste : list;
Tabelle : table[list];
do
Tabelle.create;
liste.create;
liste := Tabelle[1,1];
liste.anhaengen(12346);
Tabelle[1,1] := liste;
end;

noch so:

is
Tabelle : table[list];
do
Tabelle.create;
Tabelle[1,1].create;
Tabelle[1,1][1] := 12346;
end;

Würde mich freuen wenn mir jemand da einen ganz winzigen Hinweis geben könnte der mich auf den richtigen Weg Richtung Projektarbeitsabschluß bringt, denn die eM-PLant Hilfe schreibt das wäre auf dem ersten Wege möglich aber anscheinend nicht weil ich immer den Fehler erhalte, daß das Listenobjekt nicht instanziiert ist.

Viele liebe Grüße,
Christian

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


Ex-Mitglied

erstellt am: 31. Mai. 2005 11:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

versuchs mal so :

is
liste : list[string];
Tabelle : table[list];
do
Tabelle.create;
liste.create;

tabelle.erzeugeSubliste(1,1); --liste in tabelle erzeugen
tabelle[1,1].setzename("1"); --optional

liste := Tabelle[1,1];
liste.anhaengen("12346");
Tabelle[1,1] := liste;
end;


Gruss

------------------
DER SIMULATOR 

bibo234
Mitglied
Student


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

Beiträge: 25
Registriert: 08.03.2005

erstellt am: 31. Mai. 2005 14:39    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

Vielen lieben Dank für den entscheidenden Hinweis.
Das einzige, was ich nun dazu noch gerne in Erfahrung bringen würde ist, wie man den Listen in der Tabellenspalte den Datentyp Integer mitgeben kann, da ja Listen leider nicht die Methode setzeDatentyp kennen und man auch in der Tabellendeklaration nicht den Datentyp der Liste angeben kann also: Tabelle : table[list[integer]], ohne dabei auf Konvertierungsroutinen von string auf integer (da muß ich dann wahrscheinlich str_to_num und num_to_str nehmen oder ?)  und umgekehrt oder auf Tabellen (statt Listen) in Tabellen (wo man das setzeDatentyp verwenden kann um einen konkreten Datentyp anzugeben) zurückgreifen muß.

Liebe Grüße,
Christian

[Diese Nachricht wurde von bibo234 am 31. Mai. 2005 editiert.]

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


Ex-Mitglied

erstellt am: 31. Mai. 2005 15:53    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

versuchs mal so:

is
liste : list;
Tabelle : table[list];
do
Tabelle.create;
liste.create;

tabelle.erzeugeSubliste(1,1); --liste in tabelle erzeugen
tabelle[1,1].setzename("1"); --optional
tabelle[1,1].datentyp:="integer"; -- "string" auf "integer" -format
tabelle[1,1].anhaengen(321);
liste := Tabelle[1,1];
liste.anhaengen(12346);
Tabelle[1,1] := liste;
end;


Gruss

------------------
DER SIMULATOR 

bibo234
Mitglied
Student


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

Beiträge: 25
Registriert: 08.03.2005

erstellt am: 01. Jun. 2005 09:57    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

Vielen Dank,
genauso wollte ich das, einfach irgend ne integerzahl in die Listenspalte anhängen ohne den Umweg über eine weitere Liste.
Nun hab ich aber noch ein Problem, ich möchte gerne die Spaalten dynamisch benamen/indexieren. Bisher verwende ich diesen Code-schnipsel dazu:
Servicegrad.setzeDatenTyp(`[Servicegrad.xDim + 1,*],nächsteRunde,"real");
Servicegrad ist die Tabelle in die ich jede Runde (also nach nem best. Zeitabstand) einen real-Wert reinschreiben will in eine Spalte;
es soll also immer für eine ganze Spalte Servicegrad.xDim + 1 der Datentyp gesetzt werden;
nächsteRunde ist eine integervariable in der jeweils eine integer-Zahl drin steht so wie der Index der Spalte auch heißen soll
nun ist die Frage was geht dabei schief, denn ich erhalte nun keinen Fehler mehr aber die Indizes sind aber auch nicht gesetzt, und das funktioniert weder wenn ich den Datentyp der Spaltenindizes auf Integer oder auf String (bei String kommt dann sogar wieder der fehler unbekannter Spaltenindex, obwohl ich die Integerzahl vorher mit num_to_str konvertiert habe) stelle.

Liebe Grüße,
Christian

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


Ex-Mitglied

erstellt am: 01. Jun. 2005 10:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

entweder - oder !

"Servicegrad.setzeDatenTyp(`[Servicegrad.xDim +1,*],nächsteRunde,"real");" beinhaltet 2 Spaltenangaben

1. `[Servicegrad.xDim +1,*]
2.  nächsteRunde

lass mal eine weg.


Gruss

------------------
DER SIMULATOR 

bibo234
Mitglied
Student


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

Beiträge: 25
Registriert: 08.03.2005

erstellt am: 01. Jun. 2005 16:31    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

Danke für den Hinweis auf das Mißverständnis meinerseits,

Okay dann hab ich die Doku falsch verstanden. Also ich ging von der Syntax aus: setzeDatentyp(Bereich,optionaler Index,Datentyp). Ich hab aber nun mal probiert über [Bestellmenge.xDim +1,0] auf den Index zuzugreifen und es geht.

Viele Grüße,
Christian

[Diese Nachricht wurde von bibo234 am 01. Jun. 2005 editiert.]

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


Ex-Mitglied

erstellt am: 01. Jun. 2005 17:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

klar, mit  ..[X,0] greifst auf den Spaltenindex zu, das ist trivial,

aber warum wolltest Du den System-Spaltenindex (1...maxXdim) denn nochmals mit einem integer-Index belegen in der Zeile 0 ?
das doch überflüssig !


Gruss

------------------
DER SIMULATOR 

bibo234
Mitglied
Student


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

Beiträge: 25
Registriert: 08.03.2005

erstellt am: 01. Jun. 2005 19:18    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,

ja damit hast du Recht daß diese Information eigentlich redundant ist, da ich ja dann notfalls in der aufrufenden Methode den natürlichen Index in meinen Index konvertieren kann, und hätte sowieso nur Sinn gemacht, wenn dann als Index etwas anderes als n Integer drin gestanden hätte.

Vielen Dank für deine Hilfe,
Christian

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