DBF Datei wird zerstört
Moderator: Moderatoren
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
DBF Datei wird zerstört
Hallo,
habe folgendes Phänomen:
Ich prüfe mit ob eine Dbf Datei vorhanden ist. Durch einen Tippfehler wird diese
nicht gefunden.
Wenn die Datei nicht da ist, wird ein dbcreate durchgeführt. Die Datei ist im Zugriff (Netzwerk)
die Datei kann nicht erzeugt werden.
Leider wird die Datei dabei zerstört, alle Sätze sind noch da, enthalten aber entsprechend
ihres Typs Werte (o, space oder .f.)
Klar es ist ein Programmfehler von mir, aber wenn die Datei nicht erzeugt werden kann, dürften
die Werte doch nicht weg sein, bzw. müssten ja alle Records weg sein.
habe folgendes Phänomen:
Ich prüfe mit ob eine Dbf Datei vorhanden ist. Durch einen Tippfehler wird diese
nicht gefunden.
Wenn die Datei nicht da ist, wird ein dbcreate durchgeführt. Die Datei ist im Zugriff (Netzwerk)
die Datei kann nicht erzeugt werden.
Leider wird die Datei dabei zerstört, alle Sätze sind noch da, enthalten aber entsprechend
ihres Typs Werte (o, space oder .f.)
Klar es ist ein Programmfehler von mir, aber wenn die Datei nicht erzeugt werden kann, dürften
die Werte doch nicht weg sein, bzw. müssten ja alle Records weg sein.
Gruß
Klaus
Klaus
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hallo Klaus,
das verstehe ich nicht. "Durch einen Tippfehler wird sie nicht gefunden." Gibt es für die DBF ein Eingabefeld des Users ??
wie sieht ´denn dein Code aus.
das verstehe ich nicht. "Durch einen Tippfehler wird sie nicht gefunden." Gibt es für die DBF ein Eingabefeld des Users ??
wie sieht ´denn dein Code aus.
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9367
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hallo, Klaus.
Wenn ich das hier mache:
erhalte ich - wie erwartet - einen Laufzeitfehler. Die Tabelle wird aber nicht "zerstört". Sie bleibt unverändert erhalten.
Ich nehme an, dass Du in Deinem Code danach noch irgendwelchen Unsinn anstellst, dass also z.B. alle Datensätze gelöscht werden oder ähnliches. Vermutlich erwartest Du, dass ja alles in Ordnung ist, dann wird die vermeintlich erzeugte Tabelle angefasst, überarbeitet o.ä. Das DbCreate() selbst ist jedenfalls nicht der Verursacher der Probleme.
Wenn ich das hier mache:
Code: Alles auswählen
USE TABELLE.DBF ALIAS TAB
a := DbStruct()
DbCreate("TABELLE.DBF",a)
Ich nehme an, dass Du in Deinem Code danach noch irgendwelchen Unsinn anstellst, dass also z.B. alle Datensätze gelöscht werden oder ähnliches. Vermutlich erwartest Du, dass ja alles in Ordnung ist, dann wird die vermeintlich erzeugte Tabelle angefasst, überarbeitet o.ä. Das DbCreate() selbst ist jedenfalls nicht der Verursacher der Probleme.
Herzlich,
Tom
Tom
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hallo Tom,
hier mein Code.
Local cDbfDatei := cArbeitsverzeichnis + "xyz.dbf"
Local cStrDatei := cArbeitsverzeichnis + "xyz.str"
if !Fexists("xyz.dbf")
DbCreateFrom( cDbfDatei,, cStrDatei,,.t.,"xyzneu" ) // Neue Datei erzeugen
("xyzneu")->(DbCloseArea())
endif
Der Fehler im Code ist, bei !Fexists hätte es anstatt "xyz.dbf" cDbfDati sein müssen.
Im Gegensatz zu Deinem Beispiel benutze ich DbCreateFrom, dort ist das Ergebnis wie beschrieben.
Rolf,
der Tippfehler kommt nicht vom User, sondern von mir im Programmcode.
hier mein Code.
Local cDbfDatei := cArbeitsverzeichnis + "xyz.dbf"
Local cStrDatei := cArbeitsverzeichnis + "xyz.str"
if !Fexists("xyz.dbf")
DbCreateFrom( cDbfDatei,, cStrDatei,,.t.,"xyzneu" ) // Neue Datei erzeugen
("xyzneu")->(DbCloseArea())
endif
Der Fehler im Code ist, bei !Fexists hätte es anstatt "xyz.dbf" cDbfDati sein müssen.
Im Gegensatz zu Deinem Beispiel benutze ich DbCreateFrom, dort ist das Ergebnis wie beschrieben.
Rolf,
der Tippfehler kommt nicht vom User, sondern von mir im Programmcode.
Zuletzt geändert von Koverhage am Mo, 26. Apr 2010 8:07, insgesamt 1-mal geändert.
Gruß
Klaus
Klaus
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Klaus,
bist Du Dir bei dem, was Du da gepostet hast, wirklich sicher
Der Name für die zu erstellende Datei und für die Datei mit den Strukturdefinitionen (deren Aufbau also kopiert werden soll), sind bei Dir identisch
Viele Grüße,
Martin
bist Du Dir bei dem, was Du da gepostet hast, wirklich sicher
Der Name für die zu erstellende Datei und für die Datei mit den Strukturdefinitionen (deren Aufbau also kopiert werden soll), sind bei Dir identisch
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hi Klaus,
es gibt noch eine andere Function File() diese gibt .t. oder .f. zurück. versuch es doch mal so
es gibt noch eine andere Function File() diese gibt .t. oder .f. zurück. versuch es doch mal so
Code: Alles auswählen
if File("xyz.dbf") =.f.
Dbcreate("xyz.dbf",aStruc)
endif
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Martin,
jetzt ja
Rolf,
das hätte den gleichen Effekt, da es nicht die Abfrage an sich ist, es fehlt dort nur das Verzeichnis.
jetzt ja
Rolf,
das hätte den gleichen Effekt, da es nicht die Abfrage an sich ist, es fehlt dort nur das Verzeichnis.
Gruß
Klaus
Klaus
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hi Klaus,
wo soll die Datei denn Existieren ? Bei Fexists() gibst du kein Arbeitsverzeichnis mit Woher soll die Fexists denn wissen, in welchem Verzeichnis gesucht werden soll. ?
wo soll die Datei denn Existieren ? Bei Fexists() gibst du kein Arbeitsverzeichnis mit Woher soll die Fexists denn wissen, in welchem Verzeichnis gesucht werden soll. ?
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hallo Rolf,
das ist nicht das Thema. Habe ich das so undeutlich formuliert ?
1. Ich prüfe mit fexists oder file ob eine bestimmte DBF Datei vorhanden ist.
Aufgrund des Tippfehlers von mir (vergessen den Pfad anzugeben) geben diese .f. zurück
2. Deshalb soll die Datei angelegt werden (hier wurde , was aber scheitert da diese Datei
bereits existiert und durch andere Nutzer im Zugriff ist und es kommt zu dem unschönen Ergebnis,
das alle Daten weg sind.
das ist nicht das Thema. Habe ich das so undeutlich formuliert ?
1. Ich prüfe mit fexists oder file ob eine bestimmte DBF Datei vorhanden ist.
Aufgrund des Tippfehlers von mir (vergessen den Pfad anzugeben) geben diese .f. zurück
2. Deshalb soll die Datei angelegt werden (hier wurde , was aber scheitert da diese Datei
bereits existiert und durch andere Nutzer im Zugriff ist und es kommt zu dem unschönen Ergebnis,
das alle Daten weg sind.
Gruß
Klaus
Klaus
- Armin
- Rekursionen-Architekt
- Beiträge: 393
- Registriert: Mo, 26. Sep 2005 12:09
- Wohnort: 75331 Engelsbrand
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hallo Klaus,
ich kenne das Phänomen mit einem auf Xbase++ umgesetzten dbu.exe in einem Windows Netzwerk.
Wenn dort eine dbf von einem Anwender shared geöffnet ist und ich mit dbu und F3 Felder hinzufügen will, dann werden alle Datensätze entfernt...
Ich hab´s nicht untersucht, es ist aber sehr komisch, weil das exklusive Öffnen scheitert und dann trotzdem die Datensätze entfernt werden...
Gruß, Armin
ich kenne das Phänomen mit einem auf Xbase++ umgesetzten dbu.exe in einem Windows Netzwerk.
Wenn dort eine dbf von einem Anwender shared geöffnet ist und ich mit dbu und F3 Felder hinzufügen will, dann werden alle Datensätze entfernt...
Ich hab´s nicht untersucht, es ist aber sehr komisch, weil das exklusive Öffnen scheitert und dann trotzdem die Datensätze entfernt werden...
Gruß, Armin
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hi Klaus,
ja jetzt habe ich es verstanden. Versuche es doch mal so. Ich habe eine Function, die prüft, ob ein exclusivezugriff funkt.
Nach dem Rückgabe von "lJa" kannst du ja entsprechend reagieren.
ja jetzt habe ich es verstanden. Versuche es doch mal so. Ich habe eine Function, die prüft, ob ein exclusivezugriff funkt.
Code: Alles auswählen
#Define CRLF Chr(13)+ Chr(10)
Function Netz_Use()
Local lJa:=.f.
PARAMETERS Datei, ex_use, cTitel, Info, Name
If Info="alias"
If ex_use && exclusive
Use &Datei New Exclusive Alias Name
EndIf
Else
If ex_use && exclusive
Use &Datei New Exclusive
EndIf
EndIf
If NetErr()
lJa:=.f.
Msgbox("Die Datenbank "+Datei+" ist in Benutzung"+CRLF+;
"Das Programm an allen Stationen beenden und erneut starten",cTitel)
Else
lJa:=.t.
EndIf
Return lJa
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Rolf,
ich prüfe doch zuerst ob die Datei besteht und bekomme aufgrund des Tippfehlers ein .f.
zurück.
In dem Fall nützt mir ein exklusives Öffnen nichts.
Es geht ja auch nur darum, das dbcreatefrom eine Fehlermeldung zurückgibt, das die
Datei nicht erstellt werden kann, da diese in Bearbeitung ist, die Datei aber zerstört wird.
ich prüfe doch zuerst ob die Datei besteht und bekomme aufgrund des Tippfehlers ein .f.
zurück.
In dem Fall nützt mir ein exklusives Öffnen nichts.
Es geht ja auch nur darum, das dbcreatefrom eine Fehlermeldung zurückgibt, das die
Datei nicht erstellt werden kann, da diese in Bearbeitung ist, die Datei aber zerstört wird.
Gruß
Klaus
Klaus
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hi,
eine offene Datei dürfte von dbCreate() nicht überschrieben werden.
Ich habe es zwar nicht probiert, aber wenn es sich so verhält solltest du ein kleines Beispielprogramm an Alaska als PDR senden.
eine offene Datei dürfte von dbCreate() nicht überschrieben werden.
Ich habe es zwar nicht probiert, aber wenn es sich so verhält solltest du ein kleines Beispielprogramm an Alaska als PDR senden.
Gruß
Hubert
Hubert
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hallo Leute,
also ich habe es gerade probiert. Bei meiner Artikelinfo wird beim start immer eine tmporäre Datenbank erzeugt - ich habe diese mit meinem Editor geöffnet und dass die Artikelinfo gestaret.
Ich erhalte dann eine Fehlermeldung, daß die Datei NICHT mit DbCreate() erzeugt werden kann.
@Klaus, dann muß bei dir noch ein anderer Fehler sein.
also ich habe es gerade probiert. Bei meiner Artikelinfo wird beim start immer eine tmporäre Datenbank erzeugt - ich habe diese mit meinem Editor geöffnet und dass die Artikelinfo gestaret.
Ich erhalte dann eine Fehlermeldung, daß die Datei NICHT mit DbCreate() erzeugt werden kann.
@Klaus, dann muß bei dir noch ein anderer Fehler sein.
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9367
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Mein Reden seit Anno Tobak. DbCreate() zerstört eine Datei nicht, wenn sie das Ziel der Operation wäre. Wahrscheinlich gehst Du später im Code davon aus, mit der neuen Datei zu arbeiten, während Du tatsächlich auf derjenigen herumrödelst, die als Kopiervorlage genutzt werden sollte.Klaus, dann muß bei dir noch ein anderer Fehler sein.
Herzlich,
Tom
Tom
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Tom,
mag sein das es bei DBCreate so ist, bei DBCreateFrom ist es definitiv so.
mag sein das es bei DBCreate so ist, bei DBCreateFrom ist es definitiv so.
Gruß
Klaus
Klaus
- Rolf Ramacher
- Der Entwickler von "Deep Thought"
- Beiträge: 1930
- Registriert: Do, 09. Nov 2006 10:33
- Wohnort: Bergheim
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hi Klaus,
ich habe gerade das mit DbCreateFrom() mit dem Testprogramm aus der Hilfe ausprobiert und bekomme den Fehler nicht
reproduziert. Es kann also m.E. nicht am DbCreateFrom() liegen. da muß noch etwas anderes sein.
ich habe gerade das mit DbCreateFrom() mit dem Testprogramm aus der Hilfe ausprobiert und bekomme den Fehler nicht
reproduziert. Es kann also m.E. nicht am DbCreateFrom() liegen. da muß noch etwas anderes sein.
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hallo Rolf,
welches Testprogramm ?
Wenn Du das Beispiel 1 nimmst, müsste bei DBcreatefrom noch als letzter Parameter der Alias angegeben werden.
In dem Beispiel wird ja nur eine Temp Datei erzeugt und nachher umbenannt und wird auch geschlossen.
Aber darum geht es eigentlich nicht.
Wenn Du die Strukturdatei nimmst, das Programm mehrfach startest und dann ein dbcreatefrom machst (natürlich
direkt auf Adressen.dbf) müsste es so sein wie ich beschrieben habe.
Hier mal mein Testprogramm:
Die Dateien liegen hier im Beispiel in c:\temp
Die Abfrage ob die Datei vorhanden ist, wurde aber nur mit c:\ geprüft
*+
*+ Source Module => G:\CLICK\SAMPLE.PRG
*+
#include "AppEvent.ch"
#include "Common.ch"
#include "DCMSG.CH"
#include "DCPRINT.CH"
#include "DCDIALOG.CH"
#INCLUDE "dctree.ch"
#include "Fileio.ch"
#include "Inkey.ch"
#include "Gra.ch"
#include "Xbp.ch"
#include "dll.ch"
#include "nls.ch"
#include 'dccolor.ch'
#include 'bap.ch'
#define BYTE CHR(0)
#define WORD BYTE+BYTE
#define DWORD WORD+WORD
#define LONG DWORD+DWORD
#define NULL 0
#define MAX_ZUGRIFFE 324
*+
*+ Procedure Main()
*+
proc Main()
local nEvent, mp1, mp2, oXbp, drawingArea, abbruch, state
parameters dbfpath
// *PUBLIC CLIPPER, FlagShip
// restore from mdisp addit && Bildschirm-Attribute
// XbpCRT-Fenster erzeugen
// oCrt := XbpDialog():New( AppDesktop(), , {0,30}, {800,570}, , .f. )
oCrt := XbpDialog():New( AppDesktop(), , {0,20}, {800,580}, , .f. )
oCrt :TaskList := .t.
oCrt:title := "Test DbCreateFrom"
oCrt:drawingArea:new( , ,{0,20}, {800,540}, , .F.)
//oCrt:drawingArea:bitmap := BMP_BACKGROUND
oCrt:Create()
ops:=xbppresspace():new()
ops:create(oCrt:drawingarea:windevice())
oCrt:show()
state:=oCrt:GetFrameState()
if state == XBPDLG_FRAMESTAT_NORMALIZED
oCrt:SetFrameState(XBPDLG_FRAMESTAT_MAXIMIZED)
endif
setcancel( .F. )
anfang( 'le000' )
ende()
return
*+ Procedure ende()
*+
procedure ende
oCrt:show()
dbunlockall()
return
*+
*+ Procedure anfang()
*+
procedure anfang( prozed_na )
cStrDatei := "c:\temp\artikel.str"
cDbfDatei := "c:\temp\artikel.dbf"
cDbtDatei := "c:\temp\artikel.dbt"
cNtxDatei1 := "c:\temp\artikel.ntx"
set excl OFF
SET TALK OFF
set cons OFF
set conf on
set exac OFF
set scor OFF
set inte on
set dele on
set date GERM
set epoch to 1980
set century on
//DC_LangSet( DCLANG_GERMAN )
DC_DOTHOTKEY(-1)
DC_FIELDWDEBUG(.F.)
DC_READGUIDEBUG(.F.)
set rushmore off
set optimize off
if !Fexists("c:\artikel.dbf")
DbCreateFrom( cDbfDatei,, cStrDatei,,.t.,"arneu" ) // Neue Datei erzeugen
("arneu")->(DbCloseArea())
endif
use (cDbfDatei) alias ar
if !Fexists( cNtxDatei1 )
clindex(cDbfDatei, cNtxDatei1, 'PadL(rtrim(artnr),12)')
endif
return
procedure clindex
parameters datei, ntx, schluessel
index on &schluessel to &ntx
return
welches Testprogramm ?
Wenn Du das Beispiel 1 nimmst, müsste bei DBcreatefrom noch als letzter Parameter der Alias angegeben werden.
In dem Beispiel wird ja nur eine Temp Datei erzeugt und nachher umbenannt und wird auch geschlossen.
Aber darum geht es eigentlich nicht.
Wenn Du die Strukturdatei nimmst, das Programm mehrfach startest und dann ein dbcreatefrom machst (natürlich
direkt auf Adressen.dbf) müsste es so sein wie ich beschrieben habe.
Hier mal mein Testprogramm:
Die Dateien liegen hier im Beispiel in c:\temp
Die Abfrage ob die Datei vorhanden ist, wurde aber nur mit c:\ geprüft
*+
*+ Source Module => G:\CLICK\SAMPLE.PRG
*+
#include "AppEvent.ch"
#include "Common.ch"
#include "DCMSG.CH"
#include "DCPRINT.CH"
#include "DCDIALOG.CH"
#INCLUDE "dctree.ch"
#include "Fileio.ch"
#include "Inkey.ch"
#include "Gra.ch"
#include "Xbp.ch"
#include "dll.ch"
#include "nls.ch"
#include 'dccolor.ch'
#include 'bap.ch'
#define BYTE CHR(0)
#define WORD BYTE+BYTE
#define DWORD WORD+WORD
#define LONG DWORD+DWORD
#define NULL 0
#define MAX_ZUGRIFFE 324
*+
*+ Procedure Main()
*+
proc Main()
local nEvent, mp1, mp2, oXbp, drawingArea, abbruch, state
parameters dbfpath
// *PUBLIC CLIPPER, FlagShip
// restore from mdisp addit && Bildschirm-Attribute
// XbpCRT-Fenster erzeugen
// oCrt := XbpDialog():New( AppDesktop(), , {0,30}, {800,570}, , .f. )
oCrt := XbpDialog():New( AppDesktop(), , {0,20}, {800,580}, , .f. )
oCrt :TaskList := .t.
oCrt:title := "Test DbCreateFrom"
oCrt:drawingArea:new( , ,{0,20}, {800,540}, , .F.)
//oCrt:drawingArea:bitmap := BMP_BACKGROUND
oCrt:Create()
ops:=xbppresspace():new()
ops:create(oCrt:drawingarea:windevice())
oCrt:show()
state:=oCrt:GetFrameState()
if state == XBPDLG_FRAMESTAT_NORMALIZED
oCrt:SetFrameState(XBPDLG_FRAMESTAT_MAXIMIZED)
endif
setcancel( .F. )
anfang( 'le000' )
ende()
return
*+ Procedure ende()
*+
procedure ende
oCrt:show()
dbunlockall()
return
*+
*+ Procedure anfang()
*+
procedure anfang( prozed_na )
cStrDatei := "c:\temp\artikel.str"
cDbfDatei := "c:\temp\artikel.dbf"
cDbtDatei := "c:\temp\artikel.dbt"
cNtxDatei1 := "c:\temp\artikel.ntx"
set excl OFF
SET TALK OFF
set cons OFF
set conf on
set exac OFF
set scor OFF
set inte on
set dele on
set date GERM
set epoch to 1980
set century on
//DC_LangSet( DCLANG_GERMAN )
DC_DOTHOTKEY(-1)
DC_FIELDWDEBUG(.F.)
DC_READGUIDEBUG(.F.)
set rushmore off
set optimize off
if !Fexists("c:\artikel.dbf")
DbCreateFrom( cDbfDatei,, cStrDatei,,.t.,"arneu" ) // Neue Datei erzeugen
("arneu")->(DbCloseArea())
endif
use (cDbfDatei) alias ar
if !Fexists( cNtxDatei1 )
clindex(cDbfDatei, cNtxDatei1, 'PadL(rtrim(artnr),12)')
endif
return
procedure clindex
parameters datei, ntx, schluessel
index on &schluessel to &ntx
return
Gruß
Klaus
Klaus
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9367
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Am Rande - was ist eigentlich aus diesen beiden Herrschaften geworden?
set rushmore off
set optimize off
set rushmore off
set optimize off
Herzlich,
Tom
Tom
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Tom,
ich setze die immer auf OFF, hat bei mir zu keiner Verbesserung der Geschwindigkeit geführt.
Soweit ich mich erinnere, haben sogar teilweise Daten gefehlt, kann das aber nicht mit
Bestimmtheit sagen.
ich setze die immer auf OFF, hat bei mir zu keiner Verbesserung der Geschwindigkeit geführt.
Soweit ich mich erinnere, haben sogar teilweise Daten gefehlt, kann das aber nicht mit
Bestimmtheit sagen.
Gruß
Klaus
Klaus
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: DBF Datei wird zerstört
Hi,
soweit ich mich erinnere wäre es schneller mit ON, wenn es funktionieren würde ...
ich meine mich aber zu erinnern, dass man es aus Sicherheitsgründen abschalten soll.
Ich kann mich ja aber auch irren
Laut DOKU steht es auf ON.
soweit ich mich erinnere wäre es schneller mit ON, wenn es funktionieren würde ...
ich meine mich aber zu erinnern, dass man es aus Sicherheitsgründen abschalten soll.
Ich kann mich ja aber auch irren
Laut DOKU steht es auf ON.
Gruß
Hubert
Hubert