Erstellung Kundensystem mit Base

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

PaffDZD
Beiträge: 1
Registriert: Mi, 05.10.2005 20:00
Wohnort: Lüneburg

Erstellung Kundensystem mit Base

Beitrag von PaffDZD »

Ich weiß, ich hätte die Arbeit mit Datenbanken nicht so weit vor mir her schieben sollen. Aber jetzt ist es so weit. :-/

Ich muss mir ein Kundensystem erstellen indem alle wichtigen Kundendaten, die zugehörigen Verträge und alle Rechnungen gespeichert werden.

Die 3 Tabellen Kundenstamm, Verträge, Rechnungen habe ich bereits erstellt.
3 Formulare zum Bearbeiten der einzelnen Tabellen auch.

Wie kann ich das bewerkstelligen, dass ich, wenn ich einen Kunden suchen will, nur die Kundenummer oder den Namen eingeben muss und mit einem "Klick" auf einen Button dich alle anderen Daten ergänzen, ohne dass ich die den Assistenten für Abfragen benutze.

Ich habe zwar noch mehr Problemchen, aber erst einmal brauche ich dabei ein wenig Hilfe. Vielleicht klärt ich ja dann auch schon wieder einiges von selbst.

Vielen Dank schon einmal im Voraus. :D
egottfried
***
Beiträge: 55
Registriert: Do, 25.08.2005 17:42
Wohnort: Torgau
Kontaktdaten:

Beitrag von egottfried »

hallo, ich hatte das gleiche Problem und kann vielleicht helfen.
Da ich bald richtig mit meiner Datenbank arbeiten will habe ich jetzt OpenOffice 2.0 RC1 heruntergeladen, dort sind mit Sicherheit wieder einige Bugs der Beta-Version beseitigt. Meine Datenbank wurde damit unter Base im Office-eigenen HSQLDB-Format erstellt. Bei weiteren Fragen solltest du Version und Datenbankformat nennen. Zu deinem Anliegen:
Der gesuchte Name wird ins Suchfeld eingetragen und das folgende Makro gestartet:

Code: Alles auswählen

 Sub Filter
 Dim suchtext As String
 
 oDoc = ThisComponent
 oForm = oDoc.drawpage.forms(0)
 oFeld = oForm.getByName("Suche")
 
 suchtext = oFeld.text
 oForm.Filter = "(" + """Name""" + "=" + "'" + suchtext + "'"+ ")"
 oForm.reload
 End Sub
 
Das Ausschalten des Filters:

Code: Alles auswählen

 Sub FilterAus
 oDoc = ThisComponent
 oForm = oDoc.drawpage.forms(0)
 oFeld = oForm.getByName("Suche")
 oForm.Filter = ""
 oFeld.text = ""
 oForm.reload
 End Sub
Wenn z.B. "Müller" ins Suchfeld eingetippt wird, ergibt die Zeile oFormFilter = im Eigenschaftsfenster des Formulars den Eintrag ("Name" = 'Müller') und filtert diesen Namen heraus. Ich habe lange experimentiert, bis ich den Code soweit hatte, diese Form wiederzugeben. Ich hoffe es hilft dir weiter.
egottfried
egottfried
***
Beiträge: 55
Registriert: Do, 25.08.2005 17:42
Wohnort: Torgau
Kontaktdaten:

Beitrag von egottfried »

Nachtrag:
die Makros "Filter" und "FilterAus" werden mit getrennten Schaltfflächen gestartet.
egottfried
agrupe
****
Beiträge: 108
Registriert: Do, 08.12.2005 17:23

Beitrag von agrupe »

Hi,

ich arbeite auch gerade am gleichen Problem.

Ich habe einfach alle Tabellen miteinander verknüpft und kann nun, wenn ich die Datenquellenansicht einschalte einfach den gewünschten Kunden bzw. das gewünschte Produkt per Drag&Drop in mein Rechnungsformular hineinziehen. Das finde ich recht elegant, zumal das Drag&Drop nur dort funktioniert, wo die Verknüpfung (Relation) definiert wurde. In allen anderen Feldern ist es nicht möglich.

Vielleicht habt Ihr auch einen Tipp für mich:

Anschließend stehen im Rechnungsdatensatz zwar die Kundennr und die Produktnummern aber wie bekomme ich einen schönen Rechnungsausdruck hin? Mit den Berichten erhalte ich nur ein Listing einer Tabelle, das hilft mir nichts.

Schönen Abend!

Andreas
agrupe
****
Beiträge: 108
Registriert: Do, 08.12.2005 17:23

Beitrag von agrupe »

Ich habe jetzt noch einmal mit dem System rumgespielt und bin mittlerweile etwas weiter. Wie immer ist das A&O die Tabellenstruktur (und deren Normaklisierung).

Hier daher meine Relationen:
Bild<p>

Damit war ich in der Lage beliebige Felder aus einer Tabelle in eine andere per Drop-Down Menü zu übernehmen.

Momentan arbeite ich an einem Doppelformular. Im oberen Teil die Tabelle Rechnungen und darunter die der jeweiligen Rechnung zugeordneten Datensätze. Sobald ich auf einen Satz der oberen Tabelle klicke, ändert sich unter der dazugehörige Datenbestand. Damit kann eine Rechnung beliebig viele Artikel aber nur einen Kunden beinhalten. So far so good.

Bild<p>

In dieser Maske sieht man das Feld "Kunde", das per Drop-Down Menü aus der Tabelle Kunde hier in die Tabelle Rechnungen eingebaut wird.

Bild<p>[/img][/list]

Ich würde mich freuen, wenn andere, die ähnliche Aktionen vor bzw hinter sich haben hier ein paar Tipps geben.

Ich weiß immer noch nicht, wie ich letztendlich die Rechnungsdatensätze ausdrucken kann.

CU!

Andreas
Antworten