Anfänger braucht Hilfe für ein einfaches Programm

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
carstenas
Beiträge: 20
Registriert: Di 12. Aug 2008, 12:23
Wohnort: Nahe Stuttgart

Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von carstenas »

Hallo

Ich bin ein Blutiger anfänger in sachen Programmierung,

versuche ein einfaches Programm mit einer DBF,das ganze soll zu lernzwecken dienen.

Ich möchte eine DBF erstellen mit dem Datenbankeditor,nur 2 Felder Name und Vorname,
diese Datei soll immer genommen werden werden wenn ich das Programm starte,
egal in was für einem Ordner und welches Laufwerk.

Code: Alles auswählen

procedure TForm1.FormCreate(Sender: TObject);
var a: string;
begin
    a:=ExtractFilePath(paramstr(0))+'daten.dbf'; 
    dbf1.FilePath:=a ;
    dbf1.FilePathFull:=a;
    dbf1.DbfFile.Open;
    dbf1.Active:=true;
    // ShowMessage(a);  //
end;


dann sollen die daten mit einem DBgrid angezeigt werden und bearbeitet werden,
habe mal mein beispiel angehängt.

Gruß Carsten
Dateianhänge
Lazarus 24.09.2008.zip
Hier mein beispiel was ich begonnen habe
(773.7 KiB) 93-mal heruntergeladen
Zuletzt geändert von monta am Do 25. Sep 2008, 10:59, insgesamt 1-mal geändert.
Grund: Coda-Tag gesetzt

bembulak
Beiträge: 370
Registriert: Di 6. Feb 2007, 09:29
OS, Lazarus, FPC: L0.9.29 SVN:24607 FPC 2.4.0-32 bit @ Win XP SP3
CPU-Target: 32bit i386, ARM
Wohnort: Oberösterreich

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von bembulak »

Darf ich fragen, was deine eigentliche Frage ist? Ich meine, wo hapert es?

carstenas
Beiträge: 20
Registriert: Di 12. Aug 2008, 12:23
Wohnort: Nahe Stuttgart

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von carstenas »

Hallo

Natürlich kannst du fragen

ich habe mal ein beispiel angehängt,wo ich meine so soll es funktionieren macht es aber nicht;

ich übergebe einer variablen a den pfad zurück wo die Anwendung liegt laufwerk und ordner mit Extractfilepath
danach versuche ich der dbf1 den pfad zu übergeben,genauso wie den absoluten pfad,
das öffnen der dbf und activieren des dataset habe ich auch gemacht,
aber immer kommt eine fehlermeldung,

wie geht man am besten vor eine datei immer gleich mit der anwendung zu öffnen um damit zu arbeiten?
ohne diese relativen Pfade.

MFG

piper62
Beiträge: 131
Registriert: Sa 5. Apr 2008, 17:57
OS, Lazarus, FPC: Linux (Debian, Xubuntu), MacOS X, MS Win, Android, Web
CPU-Target: 32Bit/64Bit
Wohnort: Ulm

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von piper62 »

Du hast in der TDBF Komponente noch einen Verweis auf die TDatasource eingehängt. Das ist ein Fehler den ich auch bei meinen Studennten häufig sehe.
Das gibt aber Probleme. Die Datasource hält den Verweis auf die TDBF.
Ausserdem fehlte die Angabe mit welcher Tabelle gearbeitet werden soll.

Ich habe das Beispiel so umkonfiguriert, dass es in der Entwicklungsumgebung bereits Deine Tabelle öffnet. Ev. wird dann Einiges klarer.

Gruss
Dateianhänge
test_db_projekt.zip
(18.85 KiB) 97-mal heruntergeladen

carstenas
Beiträge: 20
Registriert: Di 12. Aug 2008, 12:23
Wohnort: Nahe Stuttgart

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von carstenas »

Hallo Piper62

Danke für die Antwort

als ich dein beispiel versucht habe hat es nicht funktioniert ich mußte erst wieder den FilePath einstellen der DBF ich wollte aber ohne die relative Pfadangabe arbeiten also erst zur Laufzeit feststellen wo liegt anwendung und wo liegt Datei,dann Datei Öffnen oder Activieren und dann anzeigen in DBGrid.

sind dass dann die richtigen befehle die ich verwende?
MFG

piper62
Beiträge: 131
Registriert: Sa 5. Apr 2008, 17:57
OS, Lazarus, FPC: Linux (Debian, Xubuntu), MacOS X, MS Win, Android, Web
CPU-Target: 32Bit/64Bit
Wohnort: Ulm

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von piper62 »

im Prinzip ja. Mach Dir im Zweifelsfall Zusatzausgaben "showmessage(...)" und überprüf die Variablen.

Das wird schon. Vieles ist einfach auch Übung...

carstenas
Beiträge: 20
Registriert: Di 12. Aug 2008, 12:23
Wohnort: Nahe Stuttgart

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von carstenas »

Hallo

Habs jetzt doch noch hinbekommen datei läuft auf jedem rechner und in jedem verzeichnis

Danke

Gruß

Kuster Peter
Beiträge: 205
Registriert: So 2. Dez 2007, 20:47
OS, Lazarus, FPC: Windows XP Lazarus immer neueste Version
CPU-Target: xxBit
Wohnort: Schweiz

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von Kuster Peter »

Da ich auch Anfänger in genau diesem Bereich bin, darf ich Dich bitten, uns die Lösung zu zeigen, die Du mit Hilfe dieses Forums erstellt hast? Würde gerne auch von Deiner Erfahrung profitieren.

Peter

carstenas
Beiträge: 20
Registriert: Di 12. Aug 2008, 12:23
Wohnort: Nahe Stuttgart

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von carstenas »

Hallo Peter


Also ich habe eine Datei mit der Datenbankoberfläche gemacht,
in einem Form ein DBgrid,eine Dbf Komponente und eine Datasource,
das ganze miteinander verbunden.

Einstellungen für die Datasource.
Dataset = Dbf komponente,
DBF Komponente tablename auf die Datei gelegt bei mir (daten.dbf)
DBgrid=Datasource

dann habe ich einfach bei Form Create
dbf.close; // zuerst werden evtl geöffnete dateien geschlossen
dbf.active:=True;// dansch wird die Dbf Komponente aktiviert

du kannst dann noch einen index angeben in der datenbank oberfläche wonach sortiert wird,oder später eine 1:n verknüpfung erstellen.
MFG Carsten
Dateianhänge
Visualdbase format.zip
(777.3 KiB) 96-mal heruntergeladen

Kuster Peter
Beiträge: 205
Registriert: So 2. Dez 2007, 20:47
OS, Lazarus, FPC: Windows XP Lazarus immer neueste Version
CPU-Target: xxBit
Wohnort: Schweiz

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von Kuster Peter »

Hallo Carsten

Du hast mich falsch verstanden, was mich interessiert ist, mit welchen Befehlen Du es geschafft hast, dass das PRG in jedem Ordner läuft. Diese Befehle fehlen mir. Wärst Du bitte so net, diese auch zu posten, damit ich es lesen kann? Wäre Dir wirklich dankbar.

Peter

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Anfänger braucht Hilfe für ein einfaches Programm

Beitrag von Christian »

Hat er doch im Beitrag geschrieben ?! Dazu muss man einfach keinen Absouluten Pfad zur datenbank angeben sondern einen relativen. Da gibts keien besonderen Befehle.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Antworten