DbCreate() und DBT-Datei

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

Moderator: Moderatoren

Antworten
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2932
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

DbCreate() und DBT-Datei

Beitrag von Wolfgang Ciriack »

Hallo an alle,
ich habe eine Datenbank mit Memofeld und daher eine DBF und eine DBT Datei. Wie kann ich es erreichen, das DbCreate() mir auch eine neue DBT-Datei anlegt? Bisher habe ich einfach eine leere passende DBT-Datei kopiert, aber es sollte doch auch programmtechnisch möglich sein, diese anzulegen !?!

Hier mal ein kurzer Auszug:

Code: Alles auswählen

aUmsetz:={12308, 37001, 12306}

for i:=1 to len(aUmsetz)

   *** Kunden
   select 1
   DbUseArea(.F.,"DBFCDX", ".\KUND","ku",.F.,.F.)
   aS:=DbStruct()
   cNeu:=alias()+str(aUmsetz[i],5)
   DbCreate(cNeu, aS, "DBFCDX")
   ** behelfsweise leere DBT-Datei kopieren
   copy file ".\kundleer.dbt" TO ".\"+cNeu+".dbt"
   dbclosearea()

Viele Grüße
Wolfgang
Siggi
Rookie
Rookie
Beiträge: 12
Registriert: Di, 07. Feb 2006 14:53
Wohnort: Limsdorf

Beitrag von Siggi »

Hallo Wolfgang,
lass Dir mal die Struktur von <aS> anzeigen, hier muss ein "M" Datenfeld vorkommen.
Sonst wird keine DBT erzeugt.
Ich schalte vor dem DBCREATE() noch in ein neues Workarea....dbselectarea(0)

Die DBF-Engine habe ich schon in der DbeSYS() geladen.....
DbeLoad ("DBFDBE", .t.)
DbeLoad ("CDXDBE", .t.)
DbeBuild ("DBFCDX", "DBFDBE", "CDXDBE")
.....

ich kann Dir auch UDF´s schicken, die die Arbeit machen ??

mit besten Grüßen

Siggi
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Beitrag von brandelh »

Hallo,

wenn die Struktur ein Memofeld enthält, wird je nach DBE (DBF...-> DBT, FOX...-> FTP) auch automatisch eine leere Memodatei erzeugt.
Darum brauchst du dich nicht kümmern.
Gruß
Hubert
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2932
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Beitrag von Wolfgang Ciriack »

vielen Dank,
jetzt gehts, merkwüdig, gestern bekam ich beim Öffnen der neu erzeugten DBF immer eine Fehlermeldung, da die DBT nicht erzeugt worden war.
Vielleicht war es auch etwas spät :?: :roll:
Viele Grüße
Wolfgang
Antworten