DBF Problem

Moderator: Moderatoren

Antworten
angelo
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 196
Registriert: Mo, 24. Apr 2006 10:52

DBF Problem

Beitrag von angelo »

Hallo zusammen,

wollte mal Fragen ob mir jemand ein kleines Beispielprg. hat wo man eine DBF öffnen, editieren und speichern tut.
Ich frage weil ich im moment schwierigkeiten habe ein DBF zu speichern nachdem ich sie editiert habe.

Im voraus vielen Dank für die Hilfe.

Viele Grüße
angelo
Benutzeravatar
Rolf Ramacher
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1930
Registriert: Do, 09. Nov 2006 10:33
Wohnort: Bergheim
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DBF Problem

Beitrag von Rolf Ramacher »

Hi Angelo

ich kann dir im Moment nicht folgen. Willst du die Datenbank in einem anderen Ordner speichern. ?
Wenn du die Felder in der Datenbank ersetzt hast

use Kunde new
Kunde->Name:="Angelo"
Close Kunde

ist die Information gespeichert. Ist das bei express++ anders ??
Gruß Rolf

Mitglied der Gruppe XUG-Cologne
www.xug-cologne.de
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21186
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: DBF Problem

Beitrag von Manfred »

Hi Angelo,

ich kann mir nur vorstellen, Du meinst sowas hier:

Exclusives Öffnen, damit man direkt ändern kann

Code: Alles auswählen

USE datei EX
@ 1,1 get datei->feldname1 // editiert direkt in der DBF
@ 2,1 get datei->feldname2
read
Close datei
Shared Öffnen dann aber über Var gehen

Code: Alles auswählen


use datei
mfeldname1 := datei->feldname1
mfeldname2 := datei->feldname2

@ 1,1 get mfeldname1 // editiert erst die Memvar
@ 2,1 get mfeldname2
read

if rec_lock()
   datei->feldname1 := mfeldname1 // schreibt die Memvar in die DBF
   datei->feldname2 := mfeldname2
endif
close datei
Das ist jetzt die einfachste Wahl eine DBF zu editieren.

PS: Ich verstehe aber nicht so ganz, was das jetzt mit express++ zu tun hat. Vielleicht kannst Du uns das mal kurz erklären. Ansonsten sollte dieser Beitrag in einen anderen thread wandern. :wink:
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
angelo
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 196
Registriert: Mo, 24. Apr 2006 10:52

Re: DBF Problem

Beitrag von angelo »

Hallo Rolf und Manfred,

vielleicht habe ich mich ein bißchen komisch ausgedrückt aber
ich meinte es so und zwar öffnete ich die DBF vom Prog. aus mit 'USE Datei'
dann habe ich verschiedene Daten in den Feldern geändert und schließlich
habe ich diese mit 'REPLACE feld with a, feld1 with a1, feld2 with a2, feld3 with a3'
gespeichert. Unter Clipper ist das kein Problem gewesen aber nun unter express++
ist mir dauernd als Fehler 'syntax error' erschienen. Ich habe dann verschiedenes ausprobiert aber
ich habe immer die gleiche Fehlermeldung bekommen.

Ein Beispiel unter SAMPLES oder unter dem DEMO habe ich auch nichts gefunden deshalb habe ich hier zum Schluß gefragt.

Wenn ich eure Beispiele anschaue benützt ihr überhaupt kein 'REPLACE' mehr.
Gibt es 'REPLACE' nicht mehr unter expres++???

Im voraus vielen Dank für die Hilfe.

Viele Grüße
angelo
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21186
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: DBF Problem

Beitrag von Manfred »

oops, achso

express++ ist Xbase++ pur, nur durch den Preprocessor vereinfacht. (simpel ausgedrückt jetzt)

Poste doch mal den besagten Codeausschnitt hier, vielleicht ist es ja auch nur ein Tippfehler Deinerseits.

REPLACE kannst Du weiterhin benutzen. Der Zuweisungoperator ist bei mir mittlerweile fest eingebrannt im Kopf. Es klappt beides.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: DBF Problem

Beitrag von brandelh »

Hi,

der REPLACE Befehl hat sich nicht geändert, ABER es sind neue Schlüsselwörter hinzugekommen.
Zeige deine Feldnamen und wir werden den Übeltäter sehen ;-)
Gruß
Hubert
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21186
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: DBF Problem

Beitrag von Manfred »

Hubert,

wobei Du jetzt aber den REPLACE ALL Befehl meinst, mit dem man eine ganze Tabelle durchsausen kann. Wir meinen den einzelnen Feldbefehl. Und da bringen die Zusatzparameter doch eher weniger, oder?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Re: DBF Problem

Beitrag von UliTs »

Hallo Manfred,

ich glaube, Du hast Schlüsselwörter und Zusatzparameter miteinander verwechselt ;-) .
Hubert meint, dass es zu Problemen kommen kann, wenn ein Feldname gleichzeitig ein Schlüsselwort ist (glaube ich :-) ).

Uli
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21186
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: DBF Problem

Beitrag von Manfred »

Hi Uli,

da könntest Du recht haben, wenn ich jetzt mal genau nachdenke. Aber das hat er so in einem Rutsch erwähnt, dass ich darauf hereingefallen bin. Ja, der Hubert, der kleine Schwerenöter.... :lol:
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15695
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: DBF Problem

Beitrag von brandelh »

Manfred hat geschrieben:wenn ich jetzt mal genau nachdenke. :lol:
das ist immer sinnvoll :D

Ich meinte, dass die Syntax von REPLACE Feld1 with a, Feld2 with b etc. immer noch gültig ist, aber eventuell ein Feldname nicht mehr !
Gruß
Hubert
Benutzeravatar
Armin
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 393
Registriert: Mo, 26. Sep 2005 12:09
Wohnort: 75331 Engelsbrand
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: DBF Problem

Beitrag von Armin »

Hallo Angelo,

REPLACE .. WITH ... wird über die Headerdatei std.ch umgesetzt. Mit dcstd.ch oder dclib.ch wird z.B. eine andere Umsetzung vorgenommen.
Schau dir mal die PPO-Datei an (Compilerschalter /p).

Gruss, Armin
Antworten