German Problem mit einer CSV-Tabelle

JOTHA

Well-Known Member
Licensed User
Ich habe ein Problem mit einer CSV-Tabelle.

Zuerst lade ich diese und im ersten Durchgang ist alles in Ordnung. Wenn ich diese Tabelle ein 2. Mal benötige, kommt immer folgende Meldung:

B4X:
Tabelle1.AddCol (cString, "Anrede", 55)
Error description:
Die Auflistung der Spaltenformate des Datenrasters enthält bereits ein Spaltenformat mit diesen Zuordnungsnamen.
Parametername: column
Continue?
Warum kommt diese Fehlermeldung und wie kann ich diese umgehen?

Mit "ErrorLabel" kann ich es zwar abfangen, aber das kann ja nicht die einzige Lösung sein, oder?

Danke schon mal im Voraus für eure Tips und Anregungen!
 

Filippo

Expert
Licensed User
Hallo JOTHA,

wie schon dir die Fehlermeldung sagt: du versucht ein 2.Mal die Spalte zu erstellen und das geht nicht!

Entweder initialisierst du die Tabelle nur ein mal oder du löschst vorher alle Spalten und dann erstellst du sie alle nochmal.


Ciao,
Filippo
 

JOTHA

Well-Known Member
Licensed User
Hallo Filippo,

schön mal wieder von Dir zu hören und danke für deine Antwort.

... oder du löschst vorher alle Spalten und dann erstellst du sie alle nochmal.
Das würde heißen ich muß erst alle mit "RemoveCol" löschen und dann mit "AddCol" wieder herstellen.

Gibt es keine elegantere Lösung?
So was ähnliches wie "Table1.Close" - "Table1.Clear" geht ja nicht (gibt es nicht).

Wie ist das mit dem initialisieren gemeint?
Entweder initialisierst du die Tabelle nur einmal ...
Geht das dann einfacher?
 
Last edited:

Filippo

Expert
Licensed User
Hallo JOTHA,

Wie ist das mit dem initialisieren gemeint?
Quote:
Entweder initialisierst du die Tabelle nur einmal ...
bei mir gibt es immer ein "SUB" wo ich sowas beim "Program-Start" nur ein mal ausführe.
 

JOTHA

Well-Known Member
Licensed User
... das Problem ist, das ich mehrere verschiedene Tabellen brauche.

Ich habe diese verschiedenen Tabellen in verschiedenen Modulen.
Wenn ich alle Tabellen in der MAIN gleichzeitig lade,

1) dauert das ziemlich lange
2) erhalte ich eine Meldung "out of memory"

Sonst wäre das schon der richtige Weg mit dem einmaligen initialisieren.

Ich habe jetzt gerade das mit "RemoveCol" ausprobiert.
da kommt dann die Meldung "... fehlende Objektinstanz" :confused:
 

Filippo

Expert
Licensed User
ich habe zur Zeit ein Projekt mit 20 Forms und mehrere Listview-Tabelle und die initiallisiere ich beim Start ohne Probleme.
Du musst beim Start eben keine Daten laden.
 

JOTHA

Well-Known Member
Licensed User
Hallo Filippo,
Du musst beim Start eben keine Daten laden.
Wie mache ich das denn?

Mit "Load.Tabelle1.csv ..." werden doch auch die Daten mitgeladen.

Das wäre ein Super Tip von Dir ... und die evtl. Lösung meiner Probleme !!! :sign0060:
 

JOTHA

Well-Known Member
Licensed User
DANKE Filippo,

ich probiere es gleich mal aus!

:icon_clap::icon_clap::icon_clap:
 

JOTHA

Well-Known Member
Licensed User
Hallo Filippo,

ich habe dein Beispiel mal ausprobiert, aber ehrlich gesagt kapiere ich es noch nicht so recht.

Mein Problem ist folgendes:

Ich habe mehrere Tabellen.

1) Produktdaten
2) Kundendaten
3) interne Kontaktdaten einer Firma
4) Tagesberichte
5) usw (kommen vielleicht noch einige dazu)

Ich würde gerne alle am Anfang in der MAIN initialisieren, dann aber bekomme ich Probleme mit der Startgeschwindigkeit und mit der Meldung " ... out of Memory".

Ist es so, daß dein Beispiel die Tabellen initialisiert (ohne Daten zu laden) und dann mit "Load.CSV" erst bei öffnen einer Form die Daten geladen werden?

Wenn ja, wie werden dann die Daten wieder "geleert", wenn ich zwischen den Forms hin und her switche, damit keine Fehlermeldung kommt?
Vielleicht mit "Clear", aber muß ich dann wieder mit "RemoveCol" die Spalten löschen um nicht wieder die Fehlermeldung der 2.-ten Tabellenbenutzung zu haben?

Danke nochmals für deine Mühe!
 
Last edited:

JOTHA

Well-Known Member
Licensed User
Danke, hat geklappt !!!

Hallo Filippo,

ich glaube ich habe das mit dem initialisieren jetzt begriffen.
Jedenfalls habe ich jetzt diese Fehlermeldungen nicht mehr !

Vielen Dank für deine Hilfe !!! :)
 
Top