Hallo liebe Gemeinde,
ich bin seit 2 Wochen am verzweifeln. Nach meiner Schulung vor 12 Jahren versuche ich jetzt mal wieder, eine neue Datenbank zu erstellen.
Ich benötige ein Formular mit Werten aus mehreren Tabellen, die dann in eine andere Tabelle eingefügt werden.
In der Anlage ist meine Testdatenbank. Im Formular frm_Fuellungen soll über das Dropdownfeld eine Flasche (Flaschennummer) aus der Tabelle tbl_Flaschen ausgewählt werden und mit dem im Formular erfassten Datum in der Tabelle tbl_Fuellungen gespeichert werden. Dies funktioniert auch.
Allerdings soll in dem Formular auch 
- der Besitzer (Name) der Flasche aus tbl_Besitzer
- die Größe und die Beschreibung der Flasche aus tbl_Flaschen
 angezeigt werden. 
Beim Speichern der Eingabe soll auch die ID des Besitzer in der Tabelle tbl_Fuellungen im Feld IDBesitzer gespeichert werden.
Leider bekomme ich das alles zusammen nicht hin. Vielleicht kann mir jemand helfen und das Formular dazu erstellen oder mir Schritt für Schritt erklären, was ich machen muss.
Ich hoffe, dass ich die folgenden Formulare und Berichte dann alleine schaffe. :-)
LG Jens
			
			
			
				Hallo,
anbei die umgebaute DB.
Änderungen:
- überflüssige Beziehungen und Felder gelöscht. 
- Fremdschlüsselfelder mit _F ergänzt (FS ist dann deutlicher erkennbar)
- Referentielle Integrität eingestellt
- Feldname "Name" ist tabu, umbenannt in "GesName"
- Formular für die Füllungen angepasst
Bei Fragen, bitte melden.
			
			
			
				Hey Klaus,
das sieht sehr gut auch. Danke.
Für mich noch mal zu Verständnis, wie hast du die Felder mit den richtigen Beziehungen in das Formular eingebaut? Das war ja eins meiner Probleme.
Wenn ich jetzt z. B. noch das Feld TUEV aus der Tabelle Flaschen einfügen möchte, wie müsste ich das machen? Ich habe es über die Entwurfsansicht versucht, bekomme aber weiterhin die Beziehung nicht hin. Ich meine in meinem Kurs vor Jahren gab es dafür extra eine Schaltfläche und ich bekam alle Felder der Tabellen angezeigt.
LG Jens
			
			
			
				Hallo,
Du musst erst die Beziehungen anlegen. Dann die Abfrage erstellen (abf_Fuellung), mit den Feldern die Du im  Formular anzeigen willst. Auch das Feld TUEV muss in die Abfrage. Schaue Dir die Abfrage im Entwurf an.
Zitatbekomme aber weiterhin die Beziehung nicht hin. 
Eigentlich solltest Du das an Hand des Beispiels sehen wie das geht, eine weitere Beziehung braucht es da nicht. 
Formular im Entwurf öffnen, dann "Erstellen" > "Entwurf" > Feldliste > Feld auf das Formular ziehen und wie gewünscht ausrichten (siehe Bild). Datensatzquelle für das Formular für die Füllungen muss die Abfrage "abf_Fuellung" sein.
			
				Hallo Klaus,
OK, das hatte ich gesucht. Du hast also das Formular auf einer Abfrage aufgebaut. Die Formulare, die ich schon eingebaut hatte, sind ohne Abfrage eingebaut.
Erstellst du solche Formulare dann auch direkt mit dem Assistenten oder der Entwurfsansicht bezogen auf die Abfrage? Wenn ja, wie bekommst du das Speichern der erfassten Werte in der richtigen Tabelle hin?
			
			
			
				Hallo,
ich verwende keinen Assistenten zum Erstellen von Formularen.
Das entscheidende ist die Abfrage, die sollte als erstes erstellt werden.
Dann das Formular mit der Abfrage als Datenquelle.
Über die Abfrage landen die Daten automatisch in den entsprechenden Tabellen, da musst du dich nicht drum kümmern.
Formulare und Berichte sollten im Regelfall an eine Abfrage gebunden werden, auch wenn es nur eine Tabelle ist.
Sobald eine definierte Sortierung oder nur bestimmte Daten angezeigt werden sollen ist ohnehin eine Abfrage zwingend erforderlich.
Hier mal was zum Lernen:
https://www.access-tutorial.de/
			
			
			
				Danke, das hat mir geholfen.
Vielleicht kannst du mir noch eine Frage zu diesem Forum beantworten. Ich stelle hier bei den Antworten usw. immer ein, dass ich eine Mail über eine Antwort bekomme. Ich bekomme aber keine Mail. Warum?
LG Jens
			
			
			
				Hallo,
ZitatIch bekomme aber keine Mail. Warum?
kann ich im Moment nicht sagen, muss ich auch erst mal klären.
			
				Hallo Klaus,
ich habe noch mal eine Frage zu dem Formular Fuellung.
Für die Flaschennummer ist jetzt ja eine Liste eingebaut, mit der man die Flasche wählt. Gibt es auch eine Möglichkeit, das Formuar so zu bauen, dass man entweder direkt mit der Flaschennummer arbeitet oder zusätzlich die Möglichkeit hat, erst den Besitzer zu wählen und dann die Flasche des Besitzers?
LG Jens
			
			
			
				Hallo,
Zitatdass man entweder direkt mit der Flaschennummer arbeitet 
Du kannst auch mit der Liste direkt mit der Flaschennummer arbeiten. Du kannst damit direkt auch die gewünschte Nummer anspringen. Mit jeder Ziffer die Du eingibst wird die Auswahl genauer.
Zitatoder zusätzlich die Möglichkeit hat, erst den Besitzer zu wählen 
Auch das ist möglich. Dazu muss auf das Formular ein ungebundenes Kombifeld zur Anzeige/Auswahl des Besitzers. Die Datenherkunfst das Kombis zur Auswahl der Flasche muss um die Tabelle für den Besitzer ergänzt werden. Das Feld IDBesitzer_F muss in die Abfrage. Die Datenherkunft dieses Kombis muss dann über IDBesitzer_F gefiltert werden.
Wenn Du nicht klar kommst, bitte melden. 
			
				Hallo Klaus,
das mit der Flaschennummer mache ich ja schon. Das funktioniert. Das andere habe ich nicht so ganz verstanden. In der Abfrage ist ja GesName vorhanden. Damit geht es nicht? Zumindest hat mein Versuch nicht funktioniert.
LG Jens
			
			
			
				Hallo,
Zitatdas mit der Flaschennummer mache ich ja schon. Das funktioniert.
Du hast doch aber danach gefragt.
Zitat von: Kutschedass man entweder direkt mit der Flaschennummer arbeitet
ZitatIn der Abfrage ist ja GesName vorhanden.
Das nutzt ja dort nichts. Die IDBesitzer_F muss in die Abfrage für das Kombi zur Flaschenauswahl, denn diese Auswahl muss ja auf den gewünschten Besitzer gefiltert werden.
Ich baue Dir das mal ein, aber erst gegen Abend.
			
				Hallo,
anbei die erweiterte Version.
Oberhalb der Flaschenauswahl gibt es kein Kombi mit dem man einen Besitzer auswählen kann. Das darunterliegende Kombi zur Flaschenauswahl zeigt dann nur die Flaschen des Besitzers. Wenn man beim Besitzer "<Alle>" wählt, werden wieder alle Flaschen angeboten.
Schaue Dir auch den VBA Code dazu an.
			
			
			
				Hallo Klaus,
super, so meine ich das. Danke.
Jens
			
			
			
				Watt'n geiler Vertipper
Zitatgibt es kein Kombi mit dem man einen Besitzer auswählen kann.
LOL
			
				Hi ekkehard
habe das kein gelöscht bzw. durchgestrichen. Man kann einen Beitrag vor dem Senden noch so oft kontrollieren, im Nachhinein stellt man doch Fehler fest.
			
			
			
				Hallo Klaus.
ZitatMan kann einen Beitrag vor dem Senden noch so oft kontrollieren, im Nachhinein stellt man doch Fehler fest.
Erzähl' mir nichts, das kenne ich nur zu gut. Jahrelang Kataloge herausgebracht,
Tage- wenn nicht Wochenlang Korrektur gelesen. Dann schlägst du das erste Exemplar,
das aus der Druckerei kommt auf und das erste was du siehst ist ein Tippfehler.
Vor über 30 Jahren war das noch nicht so weit her mit autom. Korrekturen.
gruss ekkehard
			
				Hallo Klaus,
kannst du mir kurz erklären, wie ich bei einer Abfrage Berechnungen einbaue?
Habe dir meine aktuelle Version mit deinen Anpassungen beigefügt.
Mit der Abfrage abf_Abrechnung möchte ich, wenn alle funktioniert, den Inhalt der Tabelle _tbl_Fuellungen in die Tabelle tbl_Abrechnung verschieben. Dabei soll in der Tabelle  tbl_Abrechnung das Feld Preis wie folgt gefüllt werden:
Ist der Tabelle tbl_Besitzer das Feld Intern = intern, da soll der Preis mit der Bemerkung intern verwendet werden. Dabei muss noch der Zeitraum abgeglichen werden, d. H. wenn mehrere unterschiedliche Zeiträume mit Preisen hinterlegt sind, muss noch ein Abgleich auf das Datum der Füllung erfolgen. Das gleiche wenn das Feld Intern = extern ist.
Ich scheitere aber schon an der ersten Bedingung.
In meinen alten Unterlagen ist auch noch ein Bild, wo in der Entwurfsansicht noch ein Feld "Funktion" angezeigt ist. Das fehlt mir hier allerdings. Auch finde ich nicht mehr, wo man ein gut lesbares Fenster für das Schreiben der Funktion aufmachen kann.
LG Jens
			
			
			
				Hallo,
ZitatMit der Abfrage abf_Abrechnung möchte ich, wenn alle funktioniert, den Inhalt der Tabelle _tbl_Fuellungen in die Tabelle tbl_Abrechnung verschieben. 
Da wird nix verschoben, in die Tablle für die Abrechnung wird nur die IDFuellung übertragen bzw. per Kombi gewählt. Die Beziehung über die Preistabelle und Abrechnung ist nicht notwendig. Das Feld IDPreis_F kann gelöscht werden.
Wie errechnet sich überhaupt der Gesamtpreis, der angegebene Preis, ist das pro Liter ?
Soll das der Rechnungsbetrag werden? Wenn ja, ist das Feld überflüssig. Der Rechnungsbetrag wird nur errechnet, aber nicht gespeichert.
Was ist mit der Mwst ?
Was hat es mit dem Feld IDKosten auf sich ?
Der Preis ist auch ein Währungsfeld, nicht Longinteger.
Das Ja/Nein Feld Abgerechnet ist überflüssig, Du hast ja das Feld AbgerechnetAm, das reicht. Steht da ein Datum drin ist abgerechnet.
Warum hast Du in der DB keine Beziehungen angelegt ?
Bitte mal alles genau beantworten.
			
				Hallo Klaus,
hier meine Antworten:
ZitatDa wird nix verschoben, in die Tabelle für die Abrechnung wird nur die IDFuellung übertragen bzw. per Kombi gewählt.
->    Das Verschieben soll auch erst später erfolgen, wenn alles fertig ist. Oder muss ich dies gleich mit einbauen?
ZitatDie Beziehung über die Preistabelle und Abrechnung ist nicht notwendig. Das Feld IDPreis_F kann gelöscht werden.
->    Warum ist die Beziehung nicht notwendig? Woher weiß die Abfrage dann, was die Re-ferenz ist?
ZitatWie errechnet sich überhaupt der Gesamtpreis, der angegebene Preis, ist das pro Liter ?
->    Ja, der Gesamtpreis ist Preis * Liter. Es soll aber später in der Dokumentation auch der ,,Grundpreis pro Liter" stehen.
ZitatSoll das der Rechnungsbetrag werden? Wenn ja, ist das Feld überflüssig. Der Rechnungsbe-trag wird nur errechnet, aber nicht gespeichert.
->    Ja, das soll der Rechnungsbetrag werden. Kann man den zu Dokuzwecken nicht auch in der Tabelle speichern?
ZitatWas ist mit der Mwst ?
->    Ist nicht notwendig, da es sich um einen Verein handelt.
ZitatWas hat es mit dem Feld IDKosten auf sich ?
->    Ist überflüssig. Ist noch aus meinem ersten Entwurf. Hatte ich vergessen zu löschen.
ZitatDer Preis ist auch ein Währungsfeld, nicht Longinteger.
->    Ja, aber mit 4 Nachkommastellen. Geht das so nicht?
ZitatDas Ja/Nein Feld Abgerechnet ist überflüssig, Du hast ja das Feld AbgerechnetAm, das reicht. Steht da ein Datum drin ist abgerechnet.
->    OK
ZitatWarum hast Du in der DB keine Beziehungen angelegt ?
->    Die müssen verloren gegangen sein. Habe sie jetzt wieder angelegt. Neue Datei ist beigefügt.
Noch mal eine Frage zu den Preisen. Hätte ich da lieber ein Feld PreisIntern und ein mit PreisExtern, also getrennt, anlegen sollen. Und diese dann jeweils mit einem Zeitraum von und bis, um die Berechnungen besser hinzubekommen? Die Idee kam mir noch heute Nacht.
			
				Hallo,
ZitatDas Verschieben soll auch erst später erfolgen,
Nein, da wird nix verschoben, auch nicht später. Es wird das Schlüsselfeld "IDFuellung_F" gefüllt und fertig.
Zitat... Dokumentation auch der ,,Grundpreis pro Liter" stehen.
Was ist denn jetzt der "Grundpreis pro Liter" ? Bitte bemühe Dich einheitliche Begriffe zu verwenden.
ZitatWoher weiß die Abfrage dann, was die Re-ferenz ist?
Du bestimmst doch den Preis über das Datum, eine Referenz zur Preistabelle braucht es da nicht. Die wäre sogar falsch. >> Feld und Beziehung löschen.
ZitatKann man den zu Dokuzwecken nicht auch in der Tabelle speichern?
Nein, brauchst Du nicht. Den GesPreis in einer Abfrage zu rechnen reicht.
ZitatJa, aber mit 4 Nachkommastellen. Geht das so nicht?
Nein, das geht nicht. Ein Integer Zahl ist eine Ganzzahl, da kann es keine Kommastellen geben. Nimm Währung, die kann auch 4 Kommastellen.
ZitatNoch mal eine Frage zu den Preisen.
Nein, keine 2 Felder. Und nimm statt Text Zahlen (1=Intern , 2=Extern). Mit Zahlen kann eine Datenbank besser umgehen. Im Formular kann man mit einer Optionsgruppe den Text anzeigen. Für den Preis 2 Felder für das Datum wäre besser. Mache das mal mit etwas mehr Daten für die Preise und lade die DB noch mal hoch.
Bitte verwende Versionsnummer für die hochgeladenen Beispiele, "KompressorTest_03.Accdb" wäre jetzt an der Reihe.
PS:
Verwende zum Zitieren die Quotetags des Forums.
			
				Hallo,
ZitatDas Verschieben soll auch erst später erfolgen, Nein, da wird nix verschoben, auch nicht später. Es wird das Schlüsselfeld "IDFuellung_F" gefüllt und fertig.
Ich hatte das vor Jahren mal so gemacht. Oder kann es sein, dass ich erst eine Anfügeabfrage und anschließen ein Löschen durchgeführt habe? Es soll zumindest so sein, dass der Inhalt aus tbl_Fuellung in tbl_Abrechnung verschben wird, mit den dazugehörigen Berechnungen. Anschließend soll tbl_Fuellung wieder leer sein.
Zitat... Dokumentation auch der ,,Grundpreis pro Liter" stehen.
Was ist denn jetzt der "Grundpreis pro Liter" ? Bitte bemühe Dich einheitliche Begriffe zu verwenden..
Das habe ich nicht gefunden. Wo habe ich das eingetragen?
ZitatWoher weiß die Abfrage dann, was die Referenz ist?
Du bestimmst doch den Preis über das Datum, eine Referenz zur Preistabelle braucht es da nicht. Die wäre sogar falsch. >> Feld und Beziehung löschen.
Die Beziehung habe ich gelöscht.
ZitatKann man den zu Dokuzwecken nicht auch in der Tabelle speichern?
Nein, brauchst Du nicht. Den GesPreis in einer Abfrage zu rechnen reicht.
OK. Aber wenn ich später mal schauen möchte, welche Beträge ich abgerechnet habe, wie mache ich das dann?
ZitatJa, aber mit 4 Nachkommastellen. Geht das so nicht?
Nein, das geht nicht. Ein Integer Zahl ist eine Ganzzahl, da kann es keine Kommastellen geben. Nimm Währung, die kann auch 4 Kommastellen.
Dies verstehe ich nicht. Das Feld ist doch schon auf Währung formatiert, mit 4 Nachkommastellen. Was muss ich ändern?
ZitatNoch mal eine Frage zu den Preisen.
Nein, keine 2 Felder. Und nimm statt Text Zahlen (1=Intern , 2=Extern). Mit Zahlen kann eine Datenbank besser umgehen. Im Formular kann man mit einer Optionsgruppe den Text anzeigen. Für den Preis 2 Felder für das Datum wäre besser. 
Das habe ich angepasst. Muss jetzt bei der Eingabe der Preise geprüft werden, dass sich gueltigAb und GueltigBis nicht irgendwo überschneiden?
Ich habe die Datenbank soweit angepasst und hoffentlich nichts vergessen. Sie heißt jetzt auch "KompressorTest_03.Accdb" 
LG Jens
			
				Hallo,
ZitatEs soll zumindest so sein, dass der Inhalt aus tbl_Fuellung in tbl_Abrechnung verschben wird, mit den dazugehörigen Berechnungen. Anschließend soll tbl_Fuellung wieder leer sein.
Das ist völliger Unsinn (Sorry). 
Die DAtensätze der tbl_Fuellung bleiben auf immer vorhanden, da wird nichts geleert. Die Abrechnung übernimmt über das Schlüsselfeld alle Daten dieser Tabelle zur Anzeige und Berechnung.
Zitat"Grundpreis pro Liter" 
Das stammt von Dir, ist das der Preis der in der Preistabelle eingetragen ist?
ZitatAber wenn ich später mal schauen möchte, welche Beträge ich abgerechnet habe, wie mache ich das dann?
Über eine Abfrage, völlig problemlos.
ZitatDas Feld ist doch schon auf Währung formatiert, mit 4 Nachkommastellen. 
Nein, in der Tabelle "tbl_Abrechnung" gibt es ein Feld Preis und das hast Du als Longinteger angelegt, das muss auch Währung sein, da wird ja der Preis aus der Preistabelle übertragen.
ZitatMuss jetzt bei der Eingabe der Preise geprüft werden, dass sich gueltigAb und GueltigBis nicht irgendwo überschneiden?
Das sind Feinheiten, die kommen zum Schluss.
Was ist denn aus den Beziehungen geworden ?
Da gibt es nur noch eine.
Bitte ergänze alle Beziehungen und lade die DB noch mal hoch.
Später baue ich Dir das mal ein mit den Preisen.
			
				Zitat"Grundpreis pro Liter"
Das stammt von Dir, ist das der Preis der in der Preistabelle eingetragen ist? 
Ja, das ist der Preis.
ZitatDas Feld ist doch schon auf Währung formatiert, mit 4 Nachkommastellen. 
Nein, in der Tabelle "tbl_Abrechnung" gibt es ein Feld Preis und das hast Du als Longinteger angelegt, das muss auch Währung sein, da wird ja der Preis aus der Preistabelle übertragen.
Das habe ich jetzt angepasst.
ZitatWas ist denn aus den Beziehungen geworden ?
Da gibt es nur noch eine.
Welche Beziehungen fehlen? Bei mir sind alle da. Und die Beziehung zur Tabelle tbl_Preis, so hatte ich es verstanden, habe ich gelöscht. Wenn du mir sagst, welche fehlt, hole ich dies noch nach.
Ansonsten ist die angepasst Datei beigefügt.
LG Jens
			
 
			
			
				Hallo,
noch eine kurze Frage:
Wird mit einer Abrechnung immer nur eine Füllung abgerechnet, oder können das auch mehr sein ?
			
			
			
				Hey Klaus,
es können auch mehrere Füllungen pro Besitzer bei einer Abrechnung sein.
LG und frohe Ostern
Jens
			
			
			
				Hallo,
Zitates können auch mehrere Füllungen pro Besitzer bei einer Abrechnung sein.
Das ist eine Info, die hätte man gleich gebraucht. Das erfordert eine Änderung des Datenmodells. So wie das jetzt ist, ist es nicht möglich in einer Abrechnung mehr als eine Füllung zu erfassen, es gibt ja nur ein Feld für den Fremdschlüssel der Füllung. 
Hier ist eine n:m Beziehung zwischen Abrechnung und Füllungen erforderlich. Dazu braucht es eine weitere Tabelle.
Ich werde das mal umbauen, mit der letzten Version die ich habe. Dauert aber etwas.
			
				Hallo Klaus,
OK, ich bin davon ausgegangen, dass dies erst bei der Abrechnung im Bericht notwendig ist. Sorry Und noch ein paar schöne Ostertage.
LG Jens
			
			
			
				Hallo,
noch eine Frage, soll der Preis bestimmt werden am Tag der Abrechnung oder am Tag der Füllung ?
Ich brauche aber noch etwas Zeit.
			
			
			
				Hallo Klaus,
ZitatDas ist eine Info, die hätte man gleich gebraucht. Das erfordert eine Änderung des Datenmodells. So wie das jetzt ist, ist es nicht möglich in einer Abrechnung mehr als eine Füllung zu erfassen, es gibt ja nur ein Feld für den Fremdschlüssel der Füllung. 
Ich habe das mal getestet, weil ich es nicht verstanden habe. Ich konnte schon mehrere Füllungen anlegen, auch für die gleiche Person mit den gleichen Flaschen. Allerdings fehlt wohl in der tbl_Fuellungen dann der Bezug zum Besitzer. Dafür hatte ich in meiner Ursprungsdatei in dieser Tabelle die ID vom Besitzer mit drin.
Bitte erkläre mir nach deinem Umbau kurz, was da genau nicht funktioniert, damit ich dies zukünftig berücksichtigen kann.
Zitatnoch eine Frage, soll der Preis bestimmt werden am Tag der Abrechnung oder am Tag der Füllung ? 
Der Preis bezieht sich auf den Tag der Füllung.
Es eilt nicht. Bin ja schon froh, Hilfe zu bekommen. Dafür schon mal ein Dickes Danke. Zumal ich jetzt immer mehr merke, dass meine Überlegungen nicht in die richtige Richtung gegangen sind. ;-)
LG Jens
			
				Hallo,
ZitatAllerdings fehlt wohl in der tbl_Fuellungen dann der Bezug zum Besitzer. 
Nein, dieser Bezug fehlt nicht. Du hast ja die ID der Flasche und über diese hast Du automatisch auch den Bezug zum Besitzer, dazu muss die ID des Besitzers 
nicht in dieser Tabelle sein.
			
				Hallo Klaus,
dann musst du mir bitte, wenn du die Datenbank umgebaut hast, mir bitte kurz erklären, was die Probleme waren und wie du sie gelöst hast. Wie ich schon geschrieben hatte, konnte ich mehrere Füllungen erfassen und sehe daher erst mal kein Problem.
LG Jens
			
			
			
				Hallo,
was lange währt....
Ich habe Dir mal das Beispiel gemacht.
Als erstes schaust Du Dir mal das Beziehungsbild an.
Du brauchst auch nicht so viele Formular, ein Formaular für die Flaschen genügt, damit kannst Du alles machen. Flachen anlegen, suchen, Besitzer eintargen, TÜV eintragen usw.
Wenn eine Falsche gefüllt wird, wird das Formular "frm_Fuellungen" aufgerufen. Besitzer wählen, Flasche wählen und Datum eintragen. Der Preis wird dann automatisch aus der Preisliste ermittelt und in das Preisfeld eingetragen.
So legst Du alle Füllungen an. Wenn fertig, dieses Formular schließen.
Dann das Formular "frm_Abrechnung" öffnen. Im Hafo kannst Du auswählen für welchen Besitzer die Abrechnung gemacht wird. Dann Datum eintragen.
Im Unterformular kannst Du dann die Füllungen per Kombi auswählen die zu dem Besitzer passen. Es stehen nur Füllungen zur Auswahl die noch nicht abgerechnet sind. Wenn nichts in der Auswahl steht, hat der Besitzer keine offenen Abrechnungen. Der Haken "Abgerechnet" wird automatisch gesetzt.
Aus dem Formular "frm_Abrechnung" kann auch ein Bericht (Rechnung) zu dieser Abrechnung gedruckt werden. 
DB anbei.
Bei Fragen melden.
Versuche die Zusammenhaäng zu verstehen, damit Du selbst Änderungen machen kannst.
Die DB enthält keine Plausibilitätsprüfungen und Feinheiten zur Benutzerführung, da gibt es noch Potential.
			
			
			
				Hallo Klaus,
erst mal vielen Dank. Das sieht echt super aus.
ZitatAls erstes schaust Du Dir mal das Beziehungsbild an.
Ich denke, das habe ich soweit verstanden.
Das mit den Formularen hast du sehr gut erklärt und ich habe es verstanden.
ZitatDer Preis wird dann automatisch aus der Preisliste ermittelt und in das Preisfeld eingetragen.
Ich habe gesehen, dass dieser Betrag auch in der Tabelle gespeichert wird. War auch mein Gedanke, aber in einem vorhergehenden Beitrag hattest du geschrieben, dass dies nicht notwendig sei. Warum jetzt doch?
ZitatDer Haken "Abgerechnet" wird automatisch gesetzt.
Dies wir jetzt ja doch in der Datenbank gespeichert. Warum? Auch hier hatte ich dich vorher so verstanden, dass dies nicht notwendig sei.
ZitatDie DB enthält keine Plausibilitätsprüfungen und Feinheiten zur Benutzerführung, da gibt es noch Potential.
Da werde ich mich mal ran machen. Hatte es schon in der alten DB versucht. Hat aber leider nur bedingt funktioniert.
Es gibt jetzt noch ein Formular frm_AbrechnungUfoFuellungen. Hier habe ich nicht verstanden, wofür die ist. Außerdem gibt es bei Aufruf ein Debug-Fehler. Sa ich aber noch nicht weiß, wofür die Abfrage ist, kann ich den Fehler nicht prüfen,
Ich werde dann mal beigehen, alles hübsch zu machen. Und dann werde ich noch versuchen ein Formular zu entwerfen, dass sich am Anfang öffnet und worüber die Formulare gestartet werden.  Eine Frage dazu. Ist es möglich, den Aufruf eines Formular über einen Button mit den vorhanden Daten aufzurufen, ohne dass man etwas erfassen kann, und über einen zweiten Button das gleiche Formular leer,zum Erfassen?
LG Jens
			
				Hallo,
Absatz gelöscht, siehe meinen nachfolgenden Beitrag.
Was das Formular "frm_Abrechnung
UfoFuellungen" betrifft, so ist das ein Unterformular (Ufo) des Hauptformulars "frm_Abrechnung". Das Ufo ist in das Hafo eingebettet. Das Formular kann nicht eigenständig geöffnet werden, das funktioniert nur im Zusammenhang mit dem Hafo.
ZitatIst es möglich, den Aufruf eines Formular über einen Button mit den vorhanden Daten aufzurufen, ohne dass man etwas erfassen kann, und über einen zweiten Button das gleiche Formular leer,zum Erfassen?
Ja, das ist problemlos möglich.
			
				Hallo,
Zitataber in einem vorhergehenden Beitrag hattest du geschrieben, dass dies nicht notwendig sei. Warum jetzt doch?
ich habe meine Beiträge in diesem Thema noch mal alle gelesen. Das stimmt so nicht. Der Preis war schon immer drin und muss auch drin bleiben. Da hatten wir auch schon mal den Datentyp besprochen, Du hattest Integer, das haben wir auf Währung geändert. Es ging um den 
Gesamtpreis der kann entfallen, der wird immer berechnet.
Zu Abgerechnet:
ZitatAuch hier hatte ich dich vorher so verstanden, dass dies nicht notwendig sei.
Auch das stimmt so nicht. Du hattest ein Datum "Abgerechnetam", dann kann der Haken entfallen. Aber jetzt ist kein Datum drin, dann braucht es den Haken. Du kannst wieder ein Datum einbauen, dann kann der Haken wieder entfallen. Das ist also alternativ entweder Haken 
oder Datum.
			
				Hallo,
Kann nicht anders  ;).
ZitatDas ist also alternativ entweder Haken oder Datum.
Ich würde 
immer ein Datumsfeld für einen solchen Status 
verwenden.
Das gibt einfach mehr Informationen her. Vielleicht will ja mal 
jemand wissen, wie lange es im Schnitt von der Auftragserteilung 
bis zur Abrechnung dauert.
gruss ekkehard
			
				Hallo Klaus.
ZitatEs ging um den Gesamtpreis der kann entfallen, der wird immer berechnet.
Du hast Recht, das hatte ich falsch verstanden.
ZitatDas ist also alternativ entweder Haken oder Datum
Ich würde immer ein Datumsfeld für einen solchen Status 
verwenden..
Du hast das Datum jetzt in der Tabelle tbl_Abrechnung eingebaut Kann man diesen Wert nicht auch automatisch in der Tabelle tbl_Fuellung mit eintragen? Dann würde das Datum zwar 2x gespeichert werden, aber der Rest würde weiterhin passen. Das wäre dann so wie ich es ursprünglich gedacht hatte, bis du mir gesagt hast, doppelt wäre unnötig, wo du ja auch Recht hast.
Grüße Jens
			
				Hallo Klaus,
hierzu noch eine Frage.
ZitatIm Unterformular kannst Du dann die Füllungen per Kombi auswählen die zu dem Besitzer passen. Es stehen nur Füllungen zur Auswahl die noch nicht abgerechnet sind. Wenn nichts in der Auswahl steht, hat der Besitzer keine offenen Abrechnungen.
Wenn ich im Hafo eine Person auswähle, werden um UFO noch einträge, die schon abgerchnet wurden und ggf, zu einer anderen Person gehören, angezeigt. Ist das hier normal? Muss ich vielleicht eine Funktion bauen, damit beide Formulare immer leer aufgerufen werden? Die Abrechnung im Bericht wird aber richtig ausgeben.
LG Jens
			
				HAllo,
hast Du was geändert ?
Ich kann das Problem nicht nachstellen.
Kannst Du das ggf. noch mal genauer beschreiben?
			
			
			
				Hallo Klaus,
nein, ich habe nichts geändert. Zumindest nicht bewusst. Ich mache eigentlich eine Kopie und arbeite daran.
So, wie im Screenshot1 sieht es aus, wenn die die Datenbank aus deiner zip_Datei öffne und direkt frm_Abrechnung aufrufe. So, wie im Screenshot2, wenn ich schon Daten abgerechnet habe und erneut das Formular aufrufe. Das Abrechnungsdatum ist immer von der letzten Abrechnung vorbelegt und die Flaschen passen nicht zwingend zur Auswahl im HaFo. Screenshot3 habe ich gerade noch mal gemacht. Zwei von vier Flaschen abgerechnet Formular geschlossen und dann neu geöffnet. 
Vielleicht mache ich ja auch etwas falsch oder habe es noch nicht ganz richtig verstanden. Kann es sein, dass hier beim Aufruf immer die letzte Abfrage/Abrechnung, die ich gemacht habe, angezeigt wird?
Ich habe inzwischen schon mal optisch und bei den Formatierungen in der Datenbank in einer Kopie Änderungen mit Plausiprüfung vorgenommen. Jetzt versuche ich mal, Buttons wie "schließen" oder "speichern" in die Abfragen zu integrieren. Mal sehen, ob ich das hinbekomme.
Die einen schönen Sonntag
Jens
			
			
			
				Hallo Klaus,
ich brauche noch mal deinen Rat, bei der weiteren Anpassungen.
Ich hatte mir vor Jahren mal ein paar Datenbanken als Muster aufgehoben. Wenn ich dort über die Steuerelemente eine Schaltfläche eingebaut war, wurde der Code im Makroeditor gespeichert. Jetzt macht Access das ja in einem eingebetteten Modul. Man kann es aber auch per VBA machen. Was kannst du empfehlen? Mit VBA habe ich sehr, sehr viel zu tun, allerdings in Word. ;-)
Deine letzte Version habe ich jetzt als "fertige" Version gespeichert. Änderungen und Tests mache ich an einer Kopie. Ich habe aber noch nicht so ganz herausgefunden, wie ich die Änderungen, die Funktionieren in die fertige Version bekomme? Gibt es da ein einfache Übernahme, z. B. Import. Ich weiß, den gibt es grds., aber ich habe die Befürchtung, wenn ich ein angepasstes Formular importiere, dass ich dann etwas kaputt mache.
LG Jens