DBFNTX - seltsames Verhalten

Zugriff, Engines, Konvertierung. Von ADS über DBF bis zu SQL.

Moderator: Moderatoren

Antworten
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2829
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 97 Mal
Danksagung erhalten: 13 Mal

DBFNTX - seltsames Verhalten

Beitrag von georg »

Hallo,


um weiteren Fragen vorzubeugen: ich helfe hier einem Bekannten, daher DBFNTX und nicht SQL.

Gegeben ist eine DBF-Datei. Sie wird per Programm erstellt und gefüllt. Beim erneuten Programmstart soll die Datei gepackt werden, wenn aktuell kein anderer Benutzer zugreift, da in der Datei häufig Datensätze gelöscht und neu angelegt werden.

Code: Alles auswählen

         USE "Daten.dbf" EXCLUSIVE
         IF !Empty(Alias())     // konnte exclusiv geöffnet werden
Das klappt, da kein anderes Programm mit der Datei arbeitet. Aber:

eof() => .T.
bof() => .T.
reccount() => 0

Wenn man dann auf diese Datei einen dbPack() ausführt, ist sie leer. Was nicht das Ziel war.

Hat einer von Euch eine Erklärung? Es ist mir an anderen Stellen schon passiert, dass sich DBFNTX ausgesprochen seltsam verhält.

Alle DLLs (auch die DBFDBE sowie die NTXDBE) sind auf dem gleichen Stand.

Und warum DBFNTX? Der Bekannte ist überzeugt, wenn er etwas anderes verwendet, fällt ihm der Himmel auf den Kopf ... Die spinnen, die ...
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 221
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: DBFNTX - seltsames Verhalten

Beitrag von BJelinek »

Hallo habt Ihr den DBU als xbase-Programm.

Dann könnt Ihr die Datei öffnen ohne Index und schauen was los ist.
Man kann die Datei auch packen ohne Index. Der Index muss dann nur neu
aufgebaut werden.

Wenn ich Dateien packe, lösche ich die Index-Dateien packe
und baue die Index neu auf.
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2829
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 97 Mal
Danksagung erhalten: 13 Mal

Re: DBFNTX - seltsames Verhalten

Beitrag von georg »

Hallo, Bernd -


also, die Datei ist in Ordnung, wenn ich sie mit DBU öffne, d.h. 3 Sätze sind drin - wenn ich sie dann im Programm mit dem Code-Schnipsel öffne, ist sie leer. Das ist es, was mich irritiert.
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14659
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: DBFNTX - seltsames Verhalten

Beitrag von Jan »

Hallo Georg,

das Einzige das mir auffällt ist, das im Dateinamen die Endung mit drin steht. Sowas habe ich noch nie gesehen. Das sollte natürlich nichts ausmachen. Theoretisch. Aber habt Ihr das mal ohne versucht?

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
BJelinek
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 221
Registriert: Sa, 02. Jun 2012 20:57
Wohnort: 73257 Köngen
Hat sich bedankt: 9 Mal
Danksagung erhalten: 3 Mal

Re: DBFNTX - seltsames Verhalten

Beitrag von BJelinek »

Hast du mit DBU auch mit Index geöffnet
Und den Index neu erstellt.
Den Indexaufbau mal begutachtet.
Grüße
Bernd

Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14659
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 88 Mal
Kontaktdaten:

Re: DBFNTX - seltsames Verhalten

Beitrag von Jan »

Hallo Bernd,

ein USE "Daten" EXCLUSIVE öffnet ja keine Indizee. Die sollten also nicht das Problem sein. Ansonsten ist das natürlich richtig. Ich habe auch schon wie ein Blöder nach fehlenden Sätzen gesucht, nur weil der Index korrupt war. Seit dem Umstieg auf FOXCDX ist das eigentlich nie mehr passiert, aber das ist ja hier keine Alternative.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Slavko
Rookie
Rookie
Beiträge: 10
Registriert: Mi, 20. Dez 2023 11:03
Wohnort: Negotin
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DBFNTX - seltsames Verhalten

Beitrag von Slavko »

Hi,

USE Daten NEW EXCLUSIVE
Best regards,

Slavoljub Damnjanovic
SD-SoftDesign, Alaska Software Technology Partner
https://www.sd-softdesign.com
https://www.sd-softdesign.rs
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9384
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 103 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Re: DBFNTX - seltsames Verhalten

Beitrag von Tom »

Das hat mit Indexen sicherlich nichts zu tun. Im einfachsten Fall sind die fraglichen drei Datensätze als gelöscht markiert, dann sieht man sie zwar in DBU, aber EoF() ist bei einem DbGotop(), das beim DbUseArea() implizit erfolgt, auf .T., das wäre dann auch richtig.
Herzlich,
Tom
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12911
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 46 Mal

Re: DBFNTX - seltsames Verhalten

Beitrag von AUGE_OHR »

hi Georg,
ich würde die *.DBF löschen un von der APP neu erstellen lassen.
ich hebe es schon erlebt das "andere" Programm auf eine *.DBF zu gegriffen hatten und die *.DBF dadurch "zerstört" wurde
gruss by OHR
Jimmy
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1931
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DBFNTX - seltsames Verhalten

Beitrag von Rolf Ramacher »

soll denn die Datei geleert werden mit allen Datensätzen. ? dann wäre doch dpzap die richtige alternative
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2829
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 97 Mal
Danksagung erhalten: 13 Mal

Re: DBFNTX - seltsames Verhalten

Beitrag von georg »

Guten Morgen,


danke für die Antworten.

a) die DBF ist über das Programm erstellt worden
b) es befinden sich drei Datensätze in der DBF, alle in DBU sichtbar, keiner als gelöscht markiert
c) die DBF soll gepackt, nicht gezappt werden
d) USE Daten NEW EXCLUSIVE wird gemacht (und nur, wenn die Datei geöffnet werden kann, wird auch der Pack durchgeführt)
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Benutzeravatar
Frank Grossheinrich
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 147
Registriert: Fr, 31. Mär 2017 15:06
Wohnort: Eschborn
Hat sich bedankt: 5 Mal
Danksagung erhalten: 82 Mal
Kontaktdaten:

Re: DBFNTX - seltsames Verhalten

Beitrag von Frank Grossheinrich »

Hallo Georg,

das hört sich spannend an. Du sagst also, dass du eine DBF hast, die - wenn du sie PACKst - dass sie dann leer ist?
Kann ich die DBF bitte bekommen?
Und Indexe sind NIE involviert bei dieser DBF? Also, nie, zu keinem Zeitpunkt?
Oder kannst du garantieren, dass Indexe (ich gehe von NTX aus) zu jedem Zeitpunkt allesamt geöffnet sind, sobald die DBF geöffnet wird? Ist das gewährleistet?

Ich bin neugierig
Frank
We love Xbase++, and you?
georg
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2829
Registriert: Fr, 08. Feb 2008 21:29
Hat sich bedankt: 97 Mal
Danksagung erhalten: 13 Mal

Re: DBFNTX - seltsames Verhalten

Beitrag von georg »

Hallo, Frank -


ich habe Dir mal eine eingedampfte Version erstellt und per Email zugeschickt.
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.
Antworten