[gelöst]Tabelle per Nummer ansprechen

9. Dezember 2008 18:45

Hallo.

Ich habe eine Tabelle in der stehen Referenzierungen in andere Tabellen und zwar in der Form Tabellennummer - lfd Nr.
Diese Tabelle soll durchlaufen werden. und dann soll in den referenzierten Tabellen ebenfalls etwas abgeändert werden.

Sowas in der Form

Get Tabelle(Tabellennummer);
Tabelle.Setfilter(lfdnr);
Tabelle.FINDFIRST;
Tabelle.FIELDX := NeuerWert;
Tabelle.MODIFY;

Von welchem Typ ist die Variable Tabelle?

Wie spreche ich überhaupt diese Tabellen an, wenn ich nur die Nummer habe?
Und der Befehl für das "Tabellenfinden" ist mir ebenfalls unbekannt.

weiß jemand Rat?
Zuletzt geändert von Pegasus am 10. Dezember 2008 17:57, insgesamt 1-mal geändert.

Re: Tabelle per Nummer ansprechen

9. Dezember 2008 21:57

Ich denke du solltest mit Variablen vom Typ RecordRef, FieldRef und der Tabelle Field an dein Ziel kommen. Näheres dazu in der Doku.

Re: Tabelle per Nummer ansprechen

10. Dezember 2008 00:27

SilverX hat geschrieben:Ich denke du solltest mit Variablen vom Typ RecordRef, FieldRef und der Tabelle Field an dein Ziel kommen. Näheres dazu in der Doku.

Oder jetzt auch ganz neu: In der MSDN Library:
Diese basiert zwar auf NAV 2009, die meisten Kapitel sind aber auch für ältere Versionen gültig.
RecordRef, FieldRef und KeyRef gibt es bereits seit der Version 3.60 (funktioniert aber erst ab 3.70 richtig).

Wichtiger Hinweis zum FieldRef:
Es gibt bis mindestens Version 5.00 SP1*) einen Bug, welcher NAV kommentarlos abstürzen lässt, wenn man mit einem FieldRef versucht, ein Code- oder Textfeld anzusprechen, welches eine maximale Feldlänge von weniger als 5 Zeichen hat.

*) Ich habe es noch nicht mit NAV 2009 getestet.

Re: Tabelle per Nummer ansprechen

10. Dezember 2008 09:49

Hallo,

das von Timo zu Fieldref und RecordRef gesagte trifft bei der 4.0 nur teilweise zu. Wenn man zu intensiv diese Funktion nutzt, z.B. beim Import von Massendaten, werden einige Versionen des 4er-Clients immer langsamer bis zum Stillstand. Mit der 4.0 Sp3 letzter Patchlevel sollte es allerdings funktionieren.

Gruß, Fiddi

Re: Tabelle per Nummer ansprechen

10. Dezember 2008 17:56

Danke...

hat geklappt mit recordref und fieldref.
Ist etwas ungewohnt diese Funktion.
Benötige ich auch nur um einige Tabellen anzupassen und nicht im normalen Betrieb.
Daher ist die Performance zweitrangig

:-)