Seite 1 von 1

Nativer Zugriff auf ADS Datenbanken

Verfasst: 13. Oktober 2011, 08:54
von GHard
Hi,

momentan versuche ich .DBF Dateien in mein Projekt einzubinden. Die Indizes liegen im .CDX Format vor und als Verbindungstyp habe ich „Native xBase Access for WinDev“ ausgewählt.

Die Einzelansicht klappt auch ganz gut.
Einzelansicht.jpg
Einzelansicht.jpg (20.55 KiB) 15370 mal betrachtet
Allerdings gibt es Probleme bei der Darstellung im Browser.
Am Anfang zeigt er die Tabelle noch korrekt an. Wenn ich dann auf einen Datensatz klicke, zeigt er an der Stelle einen anderen Datensatz an (meist den ersten sichtbaren). Wenn ich alle Datensätze nacheinander anklicke, steht überall der gleiche Datensatz.
Browser.jpg
Browser.jpg (29.03 KiB) 15370 mal betrachtet
Dabei wird der aktuelle Datensatz im Record auch nicht verändert. Erst wenn ich die Tabelle hin und her scrolle wird die Tabelle wieder richtig angezeigt. Ähnliche Probleme traten auch auf wenn ich die Tabelle als Quelle für eine Listbox oder eine Combobox definiert habe.


Hat jemand eine Ahnung wo das Problem liegen könnte und wie man es beheben kann?

Wie bindet ihr denn eigentlich ADS Datenbanken so ein, so dass sie im shared Modus geöffnet werden und andere Programme weiterhin auf diese zugreifen können?


MfG Gerhard

Re: Nativer Zugriff auf ADS Datenbanken

Verfasst: 13. Oktober 2011, 11:35
von BRANDELH
Soweit ich mich erinnere werden die DBF Dateien nur für den Import eingebunden, ohne Indexe und Satzsperren.
Konkurierend mit Xbase++ oder Cli**er würde ich garnicht versuchen ;-)

Was die ADS angeht, gibt es denn überhaupt einen ADS Treiber für WinDev ?

Re: Nativer Zugriff auf ADS Datenbanken

Verfasst: 13. Oktober 2011, 15:54
von klammerauf
Kurzer Hinweis auf diesen Beitrag:

http://windevforum.de/viewtopic.php?f=30&t=62

Wenn ich das richtig sehe, dann gehts hier um zwei Dinge:

1. ) Probleme bei der Darstellung von Tabellendaten, vermutlich mit WebDev (richtiges Forum?)

Wann immer ich Änderungen an Tabellendaten mache, füge ich ein TableDisplay() hinzu. Vielleicht hilft das.
Wenn es hier tatsächlich um WebDev geht, dann würde ich noch schauen, dass 'Ajax mode' bei der Tabelle eingeschaltet ist.

2. ) Zugriff auf DBF Tabellen mit ADS

Das geht nur über OLE DB, siehe der obige Beitrag. Dann geht aber auch Record Locking.

HTH
Sebastian

Re: Nativer Zugriff auf ADS Datenbanken

Verfasst: 23. Oktober 2011, 11:08
von GHard
Hi,

vielen Dank für die Tipps!
Ich hab es jetzt geschafft per OLE DB einen Zugriff auf die Datenbank zu bekommen.
An einigen Stellen läuft es zwar noch nicht so wie ich es will aber das wird noch.

Vielen Dank nochmal für die schnelle Hilfe!

P.S.: ich arbeite wirklich mit WinDev und nicht mit WebDev, bin aber ein Neuling in programmieren und in WinDev


MfG Gerhard

Re: Nativer Zugriff auf ADS Datenbanken

Verfasst: 7. November 2011, 13:42
von GHard
Hi,

der Zugriff auf die Datenbanke klappt zwar aber es dauert fast 30 Minuten eine Tabelle in die Analysis einzubinden.
Könnte es daran liegen, dass ich WinDev 15 Express benutze?

Re: Nativer Zugriff auf ADS Datenbanken

Verfasst: 7. November 2011, 18:32
von BRANDELH
Hi,

eher dass die Tabellen wohl viele Daten enthalten und ODBC ist nicht das schnellste ;-)

Re: Nativer Zugriff auf ADS Datenbanken

Verfasst: 9. November 2011, 09:41
von GHard
Hi,

die Tabelle, die ich zum austesten benutze, hat nur 4 Spalten und 7 Datensätze.

In der Firma wird bereits in VB Script per ODBC auf die ADS zugegriffen - die Verbindung wird bei jedem Start neu gesetzt und das geht deutlich schneller als 30 Minuten (Es sind wirklich 30 Minuten bei WinDev, keine Ironie!) .
Der Zugriff ist für mich so wichtig, weil davon abhängt ob wir in der Firma xBase durch WinDev ersetzen.
Auf den SQL Server kann bereits zugreifen aber es werden auch Daten aus der ADS benötigt.

Ich hab in der Analysis zuerst eine Verbindung mit dem Typen "ODBC Access via OLE DB" erstellt und dann über diese Verbindung die Tabellen eingebunden.
Ist das die korrekt Vorgehensweise?
Welchen Typen nehmt ihr denn oder bindet ihr die Tabellen per Code ein wenn ihr sie braucht?

Ein weiteres Problem ist folgendes:
Wenn ich (endlich) die Tabelle eingebunden habe und ein Formular erstelle um neue Datensätze anzulegen und dann neue Datensätze abspeichern will, kommt jedesmal die Fehlermeldung, dass die Tabelle schreibgeschützt ist.
Ich benutze HAdd() um neue Datensätze einzufügen, beim SQL Server klappt das einwandfrei.
Was genau muss ich machen damit ich Daten in die ADS schreiben kann?

Re: Nativer Zugriff auf ADS Datenbanken

Verfasst: 11. November 2011, 15:27
von GHard
Hi,

ich hab das Problem gelöst.
Falls jemand wissen will wie, hier findet er die Antwort:

viewtopic.php?f=30&t=62

Das ist der Beitrag den Sebastian hier schon angesprochen hat