Access-o-Mania

Access-Forum => Formular => Thema gestartet von: dug am Oktober 19, 2017, 12:36:44

Titel: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 19, 2017, 12:36:44
Hallo
bin gerade dabei eine Datenbank für eine Hundepension zu erstellen. Im Moment fehlt mir im Bereich des Formular für den Vertrag eine Idee. Habe mal im Anhang ein Bild wie es bisher aussieht.
Weiß im Moment nicht wie ich die Daten der Hunde zum Vertrag hin bekomme. Es gibt Kunden die bis zu 5 Hunden haben. Allerdings unterschiedliche viele zur Betreuung abgegeben.
Die Daten des ausgewählten Datensatzes plus die Hunde möchte ich dann in Datenfelder eines Berichts übergeben. Mit der ID und verschiedenen Datums Felder habe ich das schon hinbekommen. Nur die Adresse aus der Kunde_Id geht nicht. Auch die Kontaktdaten des Kunden bekomme ich nicht in den Bericht.

Bin für jede HILFE dankbar, aber bitte keine Grundsatzdiskussion ob das sinnig ist oder nicht  ;)

Gruß
DUG
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Oktober 19, 2017, 12:54:21
Hallo,

prinzipiell:  Erstelle eine Abfrage über alle beteiligten Tabellen mit den Verknüpfungen über die vorgegebenen Beziehungen (Schlüsselfelder) und benutze die Abfrage für die Datenherkunft des Berichtes.

Zitat
Die Daten des ausgewählten Datensatzes plus die Hunde möchte ich dann in Datenfelder eines Berichts übergeben.

Dieser Vorgang wäre mit einer Abfrage, die über alle (beteiligten) Tabellen verknüpft und die der Datenherkunft des Berichtes zugewiesen wird zu erledigen.  Beim Aufruf des Berichtes wird ein entspr. sinnvoller  Primärschlüssel (oder  passendes Kriterium) mit übergeben.


Ohne (bessere, genauere) Kenntnis des Tabellenaufbaus  und der Beziehungen ist wohl eine "Sinnhaftigkeit" nicht diskutierbar.

Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 19, 2017, 13:16:47
Hallo,
im Anhang nun auch zur Übersichtlichkeit die gesamte Datenbank.

Gruß
dug
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 19, 2017, 13:27:58
Hallo,
die Beziehung zwischen Kunde und Hund solltest Du unbedingt entfernen, die ist überflüssig und führt zu nicht aktualisierbaren Abfragen.
Welcher Kunde welchen Hund hat ergibt sich eindeutig über den Vertrag.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 19, 2017, 15:20:31
Hallo

die Beziehung habe ich gelöscht. Wie weise ich jetzt dem Vertrag einen Hund zu?
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 19, 2017, 15:48:04
Hallo,
Kann ein Vertrag mehrere Hunde umfassen, oder ist in einem Vertrag immer ein Hund ?
Davon hängt das weitere Vorgehen ab.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 19, 2017, 15:58:58
Hallo
der Besitzer kann mehrere haben. Sag mal bis zu 5.
Im Vertrag kann über nur einen sein oder auch mehrere, wie gesagt bis zu fünf.
Bei Vertrag 2 ist so ein Bsp. dort gibt es zwei Hunde zur Auswahl.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 19, 2017, 16:16:44
Hallo,
Du musst erst mal die Beziehungen ändern, die sind noch falsch.
Du hast ja die Tabelle Vertrag_Hund gar nicht verwendet, was aber sein muss.
Siehe Bild.
Außerdem habe ich mal die Rechnung eingebunden.
Wird immer für den Vertrag eine Rechnung erstellt?

Und noch was, in Tabellen haben berechnete Felder nicht zu suchen. Auch wenn es möglich ist, in Tabellen diese Felder zu verwenden, sollten diese in Tabellen nicht verwendet werden. Rechne in Abfragen, das ist der bessere Weg.

Für die Erfassung der Hund zum Vertrag ist ein Hauptformular notwendig (Vertrag) und darin ein Unterformular in dem man die Hunde per Kombi auswählt.

Ich habe im Moment nicht viel Zeit, später mehr.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 19, 2017, 19:41:39
Hallo,
hast Du das mal umgebaut ?
Du hast ja die richtige n:m Tabelle (tbl_vertrag-hund) und nutzt diese aber nicht wie es sein soll. Dadurch wirst auch den größten Teil der Formulare ändern müssen, die haben dann auf Grund der anderen Struktur andere Zusammenhänge.

Das ist auch keine Empfehlung von mir, sondern erforderlich.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 20, 2017, 07:38:01
Hallo,
ja habe die Beziehungen jetzt mal gem. des Bildes geändert. Eine Frage hätte ich jetzt dazu. Wenn ich nun einen Kunde habe mit 5 Hunden, aber noch keinen Vertrag, sehe ich dann die Hunde beim Kunden?
Danke auch für das einbinden der Rechnung. Das hatte ich noch gar nicht betrachtet. puh

dug
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 20, 2017, 08:11:20
Hallo,
Zitat
Wenn ich nun einen Kunde habe mit 5 Hunden, aber noch keinen Vertrag, sehe ich dann die Hunde beim Kunden?
kann ein Kunde z.B. 5 Hunde haben, aber nur 3 kommen bei Dir in Pension ?
Und z.B. beim nächsten Urlaub nur 2 ?
Würdest Du gern alle Hunde des Kunden erfassen auch wenn Diese eventuell nicht zu Dir in Pension kommen ?

Und zur Rechnung hast Du meine Frage überlesen:
Wird immer für den Vertrag eine Rechnung erstellt?
Die Betonung liegt auf eine, also keine Teilrechnungen.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 20, 2017, 09:42:36
Hallo,
Zitat
kann ein Kunde z.B. 5 Hunde haben, aber nur 3 kommen bei Dir in Pension ? Und z.B. beim nächsten Urlaub nur 2 ?
ja so ist es. Allerdings werden die Hunde erst erfasst wen sie auch mindestens einmal kommen.
Zitat
Würdest Du gern alle Hunde des Kunden erfassen auch wenn Diese eventuell nicht zu Dir in Pension kommen ?
Nein, das muss nicht sein. Erst wenn ein Hund auch zur Betreuung kommt wird er erfasst.
Oh, Rechnung, hatte ich tatsächlich irgendwie unter den Tisch fallen lassen.
Es gibt nur eine Rechnung.
Allerdings wird nicht für jeden Vertrag auch eine Rechnung gestellt. Manches mal kommt der Hund dann doch nicht, krank Läufig usw.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 20, 2017, 09:54:23
Hallo,
dann würde ich es mir einfach machen.
Nimm in die Tabelle mit dem Vertrag 2 neue Ja/Nein Felder auf:
- NochKeinVertrag
- Storniert

Dann erfasst Du jeden Hund eines Kunden sobald der Kunde den Hund anmeldet.
Das Feld NochKeinVertrag anhaken und restliche Felder leer lassen. Kommt es zum Vertrag, Haken raus und restliche Felder ausfüllen. Kommt es dann später nicht zum Aufenthalt, dann einfach den Haken bei Storniert rein.
Wenn dann keine Rechnung erforderlich ist, wird auch kein entsprechender Datensatz erstellt.

Wenn es zu einem Vertrag immer nur eine Rechnung gibt, kann das Datenmodell so bleiben.

PS:
Der Zip Anhang in #9 ist leer, da gibt es keine DB.



Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 20, 2017, 11:15:42
Hallo,

Zitat
Dann erfasst Du jeden Hund eines Kunden sobald der Kunde den Hund anmeldet.
Das Feld NochKeinVertrag anhaken und restliche Felder leer lassen.
Warum kann ich ihn nicht komplett erfassen? Erstelle ja im Anschluss den ersten Vertrag mit ihm. Ansonsten würde er nicht erfasst.
Storno ist klar, füge ich ein.

Zip Anhang neu hochgeladen.
Danke für den Hinweis

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 20, 2017, 11:52:33
Hallo,
Zitat
Warum kann ich ihn nicht komplett erfassen? Erstelle ja im Anschluss den ersten Vertrag mit ihm. Ansonsten würde er nicht erfasst.
aber das war doch dein Wunsch.
Zitat aus Deinem Beitrag (#9):
Zitat
Wenn ich nun einen Kunde habe mit 5 Hunden, aber noch keinen Vertrag,
Das habe ich so interpretiert, dass Du Hunde erfassen willst, aber vorerst keinen Vertrag anlegen. Wenn das so nicht der Fall ist, kannst Du natürlich auf das Feld NochKeinVertrag verzichten und die Vertragsdaten gleich eintragen.

PS:
Zip fehlt jetzt ganz.  ;D
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 20, 2017, 13:12:44
Hallo

Missverständnis. Der Hund wird nur angelegt wenn er auch danach in einem Vertrag auftaucht.
Es kann in weiteren Verträgen dann aber passieren das nur ein anderer Hund des Halters kommt.
Glaube da haben wir uns missverstanden.

Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 20, 2017, 13:18:38
Hallo,
dann pass es ja.
Eine Abfrage mit Kunde, Vertrag und Hund listet alle Kunden mit allen Hunden die schon mal da waren. Wenn Du die Felder des Vertrages nicht anzeigst (die Tabelle Vertrag muss aber in der Abfrage bleiben) hast Du die Hunde des Kunden, ohne die Vertragsdaten.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 26, 2017, 10:38:13
Moin,

irgendwie ist mein Hirn leer. Bekomme das nicht hin, das im ufo nur die Hunde des jeweiligen Kunde angezeigt werden bzw. ausgewählt werden können.

Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: Beaker s.a. am Oktober 26, 2017, 14:08:56
Hallo Dug,
Du musst dich mal entscheiden, was du nun willst.
So wie jetzt kannst du nur Hunde sehen, die schon mal in einem
Vertrag waren oder sind.
Wenn du alle sehen willst, musst du auch alle erfassen, also so zu
sagen "leere" Verträge anlegen, in der Art wie von Klaus vorgeschlagen
mit dem Ja/Nein-Feld. Man könnte das in etwa mit einem Angebot
vergleichen aus dem oder aus dem nicht ein Vertrag wird.
gruss ekkehard
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 26, 2017, 14:27:10
Hallo,

habe glaube einen Gedankenfehler.
Also der Chronologischen Ablauf:
1. Kunde wird erfasst
2. Hund wird erfasst
3. Vertrag wird erstellt, Auswahl des zuvor angelegten Hundes, (hier sollten nur die Hunde angeboten werden die zum Kunde gehören)
4. Rechnung (soweit bin ich noch nicht) ;-)

Beim Formular Vertrag frm_vertrag z.Bsp. habe ich ja ein ufo mit den Hunden zum Kunde, wie bekomme ich diese jetzt daneben in einem weiteren ufo und auch in die tbl_vertrag-hunde?

Gruß und danke für die Geduld

Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: Beaker s.a. am Oktober 26, 2017, 17:14:29
Hallo dug,
Zitat
3. Vertrag wird erstellt, Auswahl des zuvor angelegten Hundes, (hier sollten nur die Hunde angeboten werden die zum Kunde gehören)
Nach 1. und 2. brauchst du hier eine Abfrage mit Kunden und Hunden.
Die KundenID hast du ja bei den Hunden. Das Kombi/die Liste/das UFo
bekommen diese Abfrage als Row-/RecordSource.
gruss ekkehard
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 26, 2017, 19:53:31
Hallo,
für ein Unterformular muss als Datenquelle die in der Hierarchie darunterliegende Tabelle verwendet werden. In diesem Fall die Tabelle "tbl_vertrag_Hund". Hafo und Ufo sind dann über die entsprechenden Schlüsselfelder zu verknüpfen.
Im Ufo kann dann der Hund zum Vertrag ausgewählt werden. Die Datenquelle für dieses Kombi wird dann über die anzeigte KundenID eingeschränkt, sodass nur ein beim Kunden vorhandener Hund zugeordnet werden kann.
Bei abhängigen Kombis ergibt sich die Besonderheit, dass die Anzeige zum angezeigten Kunden passen muss was bei abhängigen Kombis nicht geht. Daher habe ich das Kombi bis auf den Pfeil verkleinert und daneben ein Textfeld das den Namen des Hundes zeigt.

Anmerkungen:
- Ich habe alle Nachschlagefelder in den Tabellen entfernt. Diese sollten nicht in Tabellen verwendet werden, sondern nur in Formularen.

- Du solltest noch die Beziehung zwischen Hund und Kunde anlegen.

DB anbei:
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 27, 2017, 08:37:09
Hallo,

habe die Beziehung noch hergestellt. Beim öffnen des Kombinationsfeldes im ufo bekomme ich allerdings eine Fehlermeldung. Sagt mir überhaupt nix (siehe Bild).
Die ausgewählten Daten im ufo werden auch nicht in die tbl_vertrag-hund eingetragen. tragen ich sie direkt in die tbl ein, werden sie auch im ufo angezeigt.

Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 27, 2017, 09:05:14
Hallo,
die Spaltenbreiten des Kombis hast Du falsch eingestellt. Vergleiche mit meiner Version.
Das Kombi darf keine Datenherkunft haben, lasse die Zeile einfach leer.
Die Datenherkunft wird ja erst bei Fokuserhalt kundenabhängig zugewiesen.
In der Datenherkunft für das Ufo zur Zuweisung des Hundes ist die Tabelle mit dem Vertrag überflüssig, bitte dort wieder entfernen.

Kannst Du alles in meiner hochgeladen Version sehen.
Ich frage mich, warum Du es anders gemacht hast.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 27, 2017, 12:12:30
Zitat
Ich frage mich, warum Du es anders gemacht hast.
Das frage ich mich manchmal auch ;-)
Hatte beim Kombi dann zumindest eine Liste aller Hunde bekommen.
OK. Wieder zurück zu post 21
Bekomme den Fehler 2 angezeigt, sobald ich ins ufo klicke. Wen ich den wegklicke erhalte ich nur ein leeres Kombifeld. fehler 2.
Größe der Felder hatte ich nur unbewusst geändert, war nicht geplant.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 27, 2017, 12:25:56
Hallo,
die Bilder kannst Du Dir sparen, da ist ja nichts zu sehen das helfen könnte den Fehler zu finden.
Im Anhang findest Du Deine geänderte Version 6.

Einfach mal alles vergleichen.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 27, 2017, 13:03:00
Ha, super jetzt gehts, genau so sollte es sein  :)

nur jetzt ist mir das nächste Problem aufgefallen.
Wenn ich mehr als einen Hund eingebe müsste auch der vertrag_gesamtpreis entsprechend hochgerechnet und aktualisiert werden.
Nächster schritt wäre der rptVertrag. Dazu erstelle ich eine abfrage über alle Datenfelder die ich benötige? Allerdings sehe ich beim erstellen eines Berichtes keine Auswahl einer Abfrage? Mach ich einen Gedankenfehler?

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 27, 2017, 13:13:42
Hallo,
Zitat
Wenn ich mehr als einen Hund eingebe müsste auch der vertrag_gesamtpreis entsprechend hochgerechnet und aktualisiert werden.
Der Gesamtpreis ist einfach Einzelpreis mal Anzahl der Hunde mal Anzahl der Tage ?
Oder kommen a noch Sonderkosten dazu ?
Gleich noch eine Anmerkung, für den Gesamtpreis braucht es kein Tabellenfeld, alle Werte die sich berechnen lassen, werden nicht in Tabellen gespeichert. Das gilt auch für die Anzahl der Tage. Die entsprechenden Tabellenfelder kannst Du ersatzlos löschen.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Oktober 29, 2017, 14:22:18
Hallo,

ja, Berechnung wäre so richtig.
Sonderkosten kommen erst bei der Rechnung hinzu.
Die Tabellenfelder habe ich entfernt.
Irgendwie bekomme ich auch die Daten nicht so abgefragt wie ich sie im rptVertrag gerne hätte.

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am Oktober 29, 2017, 14:27:17
Hallo,
Zitat
Sonderkosten kommen erst bei der Rechnung hinzu.
und wo werden die Sonderkosten erfasst und gespeichert ?

Zitat
Irgendwie bekomme ich auch die Daten nicht so abgefragt wie ich sie im rptVertrag gerne hätte
diese Aussage ist nun wenig hilfreich. Was hättest Du denn gern, bzw. was klappt nicht ?
Das wäre ja das Mindeste was Du erklären solltest.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am November 06, 2017, 12:03:31
Hallo
hatte Urlaub daher erst jetzt die weitere Antwort bzw. Fragen.
Zitat
wo werden die Sonderkosten erfasst und gespeichert ?
Dachte eigentlich später bei der Rechnung (tbl_rechnung, irgendwie bin ich noch nicht an diesem Punkt  ???)
Zitat
diese Aussage ist nun wenig hilfreich. Was hättest Du denn gern, bzw. was klappt nicht ?
Im frm_vertrag gibt es den Button rptVertrag bzw. Vertrag drucken. Über diesen sollen die derzeit im Formular angezeigten Daten an den Bericht rptVertrag übergeben werden.
In einer der vorhergehenden Antworten hattest du schon mal auf die Abfrage dazu hingewiesen. Allerdings bekomme ich das nicht hin. Auf Daten aus einer Abfrage kann ich gar nicht zugreifen. Bekomme nur die Tabellen zur Auswahl.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am November 14, 2017, 11:34:38
Hallo

habe jetzt mal das Thema meiner Rechnung versucht weiter zu beackern.
Aber auch da hänge ich schon wieder, grrr  >:(
Wie bekomme ich die Auswahl aus dem lstVertrag-Rech rechts in die Datenfelder?

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: MzKlMu am November 14, 2017, 11:54:43
Hallo,
Zitat
Wie bekomme ich die Auswahl aus dem lstVertrag-Rech rechts in die Datenfelder?
Bitte erkläre Dein Problem mal etwas genauer.
Um welchen Bericht geht es jetzt ?
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am November 14, 2017, 12:25:32
Hallo,

vermutlich sollen in frm_Rechnung die zum ausgewählten Vertrag gehörenden Rechnungen angezeigt werden.


Filterung z. B. so:

Private Sub Liste89_DblClick(Cancel As Integer)
Me.Filter = "rech_vertrag_id_f = " & Me!Liste89.Column(0)
Me.FilterOn = True
End Sub


Andere Möglichkeit:  SQL-String in der Datenherkunft des Form mit Where-Condition erweitern.




PS:  das Textfeld "rech_vertrag_id_f"   sollte (muss)  in ein Kombi geändert werden,  mit dem der entspr. Vertrag der Rechnung gewiesen werden kann...
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am November 14, 2017, 12:48:35
Hallo
 
derzeit habe ich ja eigentlich zwei Probleme.
1.) im frm_vertrag gibt es den Button Vertrag drucken. Beim klicken dieses sollen die Daten des derzeitig angezeigten Vertrages an den Bericht rptVertrag übergeben werden. Die ID und einige anderen Daten bekomme ich ja noch übergeben, aber kläglich scheitere ich bei meinen Versuchen irgendwie die Adresse zBsp. aus qry_anschrift einzufügen. Auch wie ich die Notfallnummer, Telefonnummer und Mailadresse aus der tbl_kontakt bekomme entzieht sich mir derzeit komplett.

2.) auf dem Formular frm_rechnung (aus Frust damit beschäftigt)ist links eine Auflistung aller Verträge. Bei Auswahl eines Vertrages sollten die Werten rechts angezeigt werden.
Vorgestellt hatte ich mir weiterhin das unter das lstVertrag-Rech ein ufo zur Erfassung der Sonstigen Artikel kommt. Die tbl_sontiges habe ich mal angelegt und mit der Rechnung in Beziehung gebracht.
Auch die angezeigten Daten sollten dann über einen Button "Rechnung drucken" an den Bericht rptRechnung übergeben werden.

Hoffe ich habe nix vergessen.

Gruß und danke bis hier hin schonmal
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am November 14, 2017, 13:06:00
Hallo,


1)    erstelle eine Abfrage für den Bericht, die alle benötigten Tabellen verknüpft.  Öffne dann den Bericht mit Übergabe des ID-Wertes.


2) 
Zitat
Bei Auswahl eines Vertrages sollten die Werten rechts angezeigt werden

Welche Werte?  Das Form ist an die Rechnungen gebunden, insofern können damit nur Rechnungen  angezeigt und bearbeitet werden.  Das Listenfeld kann für die Filterung derjenigen Rechnungen dienen, die zum ausgewählten Vertrag gehören (siehe Code im vorherigen Post).

Erfassung der "Sonstigen Artikel" passiert nicht in frm_Rechnung, dafür ist ein separates Form nötig.  Allenfalls kann in frm_Rechnung die Zuordnung eines ausgewählten Ds aus "tbl_sonstiges"   mit Hilfe eines Kombifeldes ("rech_sonstiges_id_f") erfolgen.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am November 14, 2017, 13:14:28
Hallo,

zu 1.) werde ich nachher mal testen.

zu 2.) habe ich einen Gedanken Fehler gemacht. Sollte eigentlich so sein das ich einen Vertrag auswähle, dann die Daten ins Rechnungsformular übertragen werden. Das heißt links sollten eigentlich alle offen Verträge zur Auswahl erscheinen. Zur Änderung/DDrucken usw. müssten auch alle Rechnungen irgendwie aufgelistet werden. ??? :'(

Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am November 14, 2017, 13:29:39
Hallo,

wirf nicht alle Aufgaben zusammen... Besser ist eins nach dem anderen...

Mit diesem Tabellenaufbau kann einer Rechnung nur ein Vertrag zugewiesen werden. Dazu genügt die Zuweisung (Auswahl aus dem Kombifeld)  der Vertrags-ID an das Fremdschlüsselfeld in der Rechnungs-Tabelle.


Andere Felder, wie z. B. der Rechnungsendbetrag oder sonstige müssen in geeigneter Weise berechnet werden .

Änderung von Was?   Änderungen können im selben Form erfolgen, sofern es sich um die Rechnungsdaten handelt.

Drucken einer bestimmten Rechnung kann über eine Schaltfläche geschehen, in deren Ereignisprozedur der Rechnungsbericht mit Übergabe der RechiD geöffnet wird.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am November 14, 2017, 15:50:07
Hallo,

Zitat
Mit diesem Tabellenaufbau kann einer Rechnung nur ein Vertrag zugewiesen werden.
Das ist so gewollt. Zu jedem Vertrag gibt es eine oder eben wenn Storniert keine Rechnung.

Zitat
die Zuweisung (Auswahl aus dem Kombifeld)  der Vertrags-ID
Ist damit das Listenfeld lstVertrag-Rech gemeint?

Gedanken:
Sollte ich dann neben dem Listenfeld lstVertrag-rech noch eins einbinden lstRech für die bereits erstellten Rechnungen?

Gruß
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am November 14, 2017, 16:10:32
Hallo,

Ist damit das Listenfeld lstVertrag-Rech gemeint?
Eigentlich nein, weil ich dieses Listenfeld anfänglich als Such-Listenfeld interpretiert hatte.


Für den Vertrag_ID-Fremdschlüssel (im Form rechts) sollte es ein Kombifeld geben, das alle Verträge auflistet und und entspr. der Auswahl der angezeigten Rechnung zuordnet.


Zitat
Sollte ich dann neben dem Listenfeld lstVertrag-rech noch eins einbinden lstRech für die bereits erstellten Rechnungen?

Das wäre Quatsch, das Form zeigt ja schon die Rechnungen an,  entweder gefiltert (eine bestimmte Rechnung) oder ungefiltert (alle Rechnungen.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am November 21, 2017, 07:45:23
Hallo und Guten Morgen

bin mal wieder zurück zum post 37
Zitat
wirf nicht alle Aufgaben zusammen... Besser ist eins nach dem anderen...
daher wieder beim Vertrag und der Übergabe der Daten an Bericht rptVertrag. Soweit so gut.
Habe eine Abfrage erstellt wo ich alle Daten des Vertrages drinne habe. Bei den Einzeldaten war dies auch kein Problem. Jetzt hänge ich allerdings an den Felder, wo es mehrere Daten gibt. Z.Bsp. Festnetz, E-Mail und Notfallnummer sind in einer Tabelle gespeichert. Ebenso bei den Hunden die dem Vertrag zugeordnet sind. Wie bekomme ich diese Daten im einzelnen an den Bericht übergeben bzw. erst mal ausgelesen?

Gruß aus dem Westerwald
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am November 21, 2017, 09:40:58
Hallo,

was heißt ausgelesen? Das macht die abfrage ("qry_rptVertrag") doch..

Zitat
an den Felder, wo es mehrere Daten gibt

Das ist ein Fall für Gruppierungsebenen im Bericht. Soll heißen, für jede Spalte, in der mehrfach gleiche Werte vorkommen, muss ( sollte) eine Gruppierungsebene hinzugefügt werden.

Für welche Verwendung (Zweck) ist "tbl_vertrag-hund"  (Sonderzeichen! ) vorgesehen?

Der "Kreisverkehr" der Beziehungen zwischen tbl_kunde  -> tbl_hund --> tbl_vertrag-hund --> tbl_vertrag  --> tbl_kunde lässt auf unklare Datenverhältnisse schließen. Hier sollte nochmal überdacht werden.

Welche Bedeutung hat tbl_sonstiges?  Sind das "Artikel",  die zusätzlich in Rechnung (zu einem Vertrag) gestellt werden?  Wenn so, ist hier über weitere Tabellen (tbl_Artikel, tbl_RechnungPositionen) nachzudenken.  Dann bekäme auch tbl_vertrag-kunde Sinn und könnte als "Artikel" aufgefasst werden.



Sonstiges:
IM(Horrible)O   kannst Du alle Abfragen, die die  Felder einer Tabelle ohne weitere Eigenschaften (Kriterien, Sortierung) ausgeben, außen vor lassen (entfernen). Statt den Abfragen können gleich an den entspr. Stellen die Tabellen(namen) eingesetzt werden.

Bei Abfragen, die Berechnungen enthalten, sollte ein aussagekräftiger Alias-Name verwendet werden ( "qry_Anschrift").

Auf Leer-und Sonderzeichen in Namen verzichten!

Eine "hierachische Platzierung" der Tabellen im Beziehungsfenster (1-Tabellen immer links von der/den jeweils dazugehörenden n-Tabellen) sorgte für besseren Überblick über die Beziehungsverhältnisse.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am November 21, 2017, 10:25:17
Hallo,
jetzt komm es dicke
Zitat
Das ist ein Fall für Gruppierungsebenen im Bericht. Soll heißen, für jede Spalte, in der mehrfach gleiche Werte vorkommen, muss ( sollte) eine Gruppierungsebene hinzugefügt werden.
??? Bahnhof  :-[
Zitat
Für welche Verwendung (Zweck) ist "tbl_vertrag-hund"  (Sonderzeichen! ) vorgesehen?
Generell kann jeder Kunde bis zu 5 Hunden besitzen.
Es müssen aber nicht in jedem Vertrag alle 5 Hunde auftauchen, daher werden im tbl_vertrag-hund die hunde dem Vertrag zugewiesen.

Die tbl_sonstiges war der erste Versuch in richtung rechnung. Dort möchte ich ja noch eine Handvoll zusatz Arbeiten bzw. Artikel rein bringen. Komme ich aber jetzt erst später dazu. Siehe post #37 (nicht alles auf einmal)

Zitat
Bei Abfragen, die Berechnungen enthalten, sollte ein aussagekräftiger Alias-Name verwendet werden ( "qry_Anschrift").
Ist der Name qry_Anschrift jetzt OK oder sollte der Unterstrich besser weg? Name qryanschrift besser?

Hatte eigentlich gelesen das man generell nicht auf Tabellen zugreift, sondern immer den Umweg über eine Abfrage macht.

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am November 21, 2017, 15:26:52
Hallo,


1)  Tja, dann solltest Du Dir das mal in einem Tutorial ansehen, wie im Bericht gruppiert (gleichnamige Daten zusammengefassen) werden kann...  Im Berichtsentwurf siehst Du unten eingeblendet (erst einblenden, sofern nicht sichtbar)  ein Fenster, in dem die Gruppierungen und Sortierungen definiert werden können..  Einfach mal ausprobieren.

2) Ok, so hab ich das nicht gemeint.  Ich meinte, wo in der Datenbank sollen die Datensätze aus tbl_vertrag_hund weiter verwendet werden.  Ich denke mal, es sollen (später) Rechnungen erstellt werden, in denen die Kosten für Hundebetreuung und weiteren anderen Artikeln auftauchen.

Zitat
..aber jetzt erst später dazu..
Das bedeutet nicht, dass man an dieser Stelle nicht schon die Basis dafür vorlegt...   8)

3)  der Name "qry_Anschrift"an sich ist ok.    Der Unterstrich gilt nicht als Sonderzeichen.  Gemeint war aber hier, das in der Abfrage die Zusammensetzung der Gesamtanschrift in einer Spalte  "Ausdr"  als Aliasname erhält.


Zitat
Hatte eigentlich gelesen das man generell nicht auf Tabellen zugreift, sondern immer den Umweg über eine Abfrage macht.

Ja, es gibt da eben verschiedene Ansichten und Meinungen.   Hatte deshalb auch "IMHO" geschrieben. 

Eine gespeicherte Abfrage, die nur auf einer einzigen Tabelle basiert und alle Felder beinhaltet, ist  m. E. ( hier in Access) überflüssig.   Selbst wenn nur ein Tabellenname z. B. in der Datenherkunft eines Forms steht,  generiert Access daraus selbsständig eine interne gespeicherte Abfrage. Daher braucht es nicht nochmal eine selbst erzeugte Abfrage.  Aussnahmen sind, wie schon angedeutet, wenn Sortierungen oder Vorfilterungen erforderlich sind. Aber auch hier könnte der entspr. SQL-String direkt in der Datenherkunft des Forms (oder auch beim Öffnen  eines Recordsets) eingesetzt werden.
Bei Abfragen für Berichte sieht das allerdings etwas anders , weil in den meisten Fällen eh mehrere Tabellen verknüpft  werden.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am November 21, 2017, 16:09:06
Hallo

Zitat
mal in einem Tutorial ansehen, wie im Bericht gruppiert (gleichnamige Daten
Soetwas gibt es?  ;)

2.) Erst mal benötige ich die Daten im rptVertrag, später dann auch in der Rechnung.

3.) Jetzt klar
Wenn ich nur Daten eins zu eins haben möchte dann direkt die Tabelle, bei Änderungen zBsp wie bei Anschrift dann Abfrage.

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am November 21, 2017, 21:07:24
Hallo,

sowas gibt's wie Sand am Meer.


einfach suchen, z. B:      MS Access gruppierte Berichte YouTube

https://www.youtube.com/watch?v=isniO5Fxfus
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 01, 2017, 12:08:28
Hallo

habe mir mal das ein oder andere Tut angetan. Schlau bin ich allerdings daraus nicht geworden wie es mir helfen soll.
Habe in der Anlage mal versucht etwas zu erreichen. Ist aber der irgendwie nicht das draus geworden wie es gedacht war.
Brauche mal nee kleine Hilfestellung.

Gruß und schönes WE
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 01, 2017, 19:31:35
Hallo,

bevor wir da weitermachen, mach Folgendes:


Entferne die Sonderzeichen ("-") in den Tabellen und -feldern sowie den Formular-und Abfragenamen.

wirf die Berichtsabfrage weg und erstelle eine neue in etwa so:

Im Abfrageentwurf alle Tabellen hinzufügen, aus denen Felder für den Bericht benötigt werden.
Ziehe aus jeder Tabelle das Sternchen in je eine Abfragespalte.
Stelle keine Gruppierung , Sortierung und/oder Bedingung ein.
Markiere diese Abfrage im Navibereich und erstelle einen Bericht dazu  (Erstellen/Bericht).
Editiere diesen Bericht zunächst so, wie er Deinen Wünschen bezgl. des Designs entspricht.

Zusammenfassungen (Gruppierungen) erledigen wir dann danach.

Weiterhin
-- ordne die Tabellen im Beziehungsfenster allgemein so an, wie ich es in der angehängten DB gemacht habe.  (1-Tabellen links der n-Tabellen)
-- erstelle eine RechnungsPositionen Tabelle  (tblRechnungsPos) mit 1:n-Beziehung zu tblRechnungen
-- erstelle eine Artikeltabelle (tblArtikel). Erstell eine 1:n-Beziehung zu tblRechnungsPos
-- erstell eine Beziehung zwischen tblVertragHund (1) und tblRechnungsPos
-- entferne tblSonstiges


Ob die restlichen Beziehungen bzgl. Vertrag und Hunde stimmen, wird sich zeigen..





Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 04, 2017, 13:08:03
Hallo

Zitat
Entferne die Sonderzeichen ("-") in den Tabellen und -feldern sowie den Formular-und Abfragenamen
Habe ich gemacht. Aber habe ich mir dabei nicht alles im Hintergrund verbaut?
Die alte Abfrage habe ich gelöscht.
Neue Abfrage qry_rptVertrag habe ich erstellt. bericht rptVertrag erstellt
Allerdings bekomme ich jetzt beim Button "Vertrag drucken" im frm_vertrag einen Laufzeitfehler.
"Das angegebene Feld '[vertrag_id]' kann sich auf mehr als eine der Tabellen beziehen ...

Die weiteren Tabellen habe ich angelegt. Beziehung eingerichtet. Hoffe das passt so.

Was mir gerade noch aufgefallen ist, die Checkbox bzw., das Kontrollkästchen für die Stornierung eines Vertrages, kann man die Größe irgendwie nicht ändern? Ist das normal?

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 04, 2017, 16:19:04
Hallo,

langsam...

Zitat
nicht alles im Hintergrund verbaut

Die Namen müssen natürlich in allen anderen Objekten angepasst werden, wenn nicht schon durch die Autokorrektur geschehen.


Zum Tabellenaufbau gibt es noch Fragen.. Das ist noch lange nicht ausgegoren.

Deshalb sind Formulare , Reports und Abfragen erst später dran.


Wie verhält es sich mit Verträgen, Hunden, Kunden und Rechnungen?

Was beinhaltet ein Vertrag?   Wenn ein Vertrag bzgl. eines "Kundenhundes" (und nicht bezgl. eines Kunden) abgeschlossen wird, muss die Beziehung zu Kunden ("hund_kun_id_F") entfernt werden, dafür ist eine Verbindung zu "tbl_Hund" (die eigentlich "tbl_KundenHunde"  ;D heißen sollte) herzustellen.

Dazu gleich weitere Fragen: 
Kann ein einzelner Vertrag sich auch auf mehrere "Kundenhunde" beziehen? Wenn so, braucht es eine weitere Tabelle, die diesem Umstand Folge leistet.

Kann es Verträge geben, die sich ohne Hund auf einen Kunden beziehen?

Die Felder in der Rechnung sind (evtl. später) zu prüfen.  Die Preisberechnung muss die Artikel mit einbeziehen, wobei strukturell auch die Kosten für einen Hund  (bzw. der Hund selber) im Vertrag als "Artikel" anzusehen sind.
Woran die Rechnung letztendlich angebunden wird, entscheidet die o. g. Situation.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 05, 2017, 12:11:42
Hallo

So allgemein zum Ablauf.
Zuerst werden die Kundendaten erfasst
Danach werden die Daten zum Hund erfasst. (Jeder Kunde hat mindestens einen Hund, maximal fünf)
Danach wird ein Vertrag erfasst. Dabei sollen die möglichen Hunde angezeigt (Auswahl) werden. Hatte mit Klaus (MzKlMu) das ganze in die tbl_vertrag_hund eingebaut. Klappt auch ganz gut (denke ich) siehe frm_vertrag (linke Seite möglichen Hunde, rechte Seite dem Vertrag zugeordnete Hunde)

Randbedingung: Jeder Hund hat einen Kunden, Jeder Kunde hat min 1Hund, jeder Vertrag hat einen Kunden und min 1Hund max 5Hunde, Vertrag könnte storniert werden, ansonsten hat jeder Vertrag der nicht storniert wurde irgendwann auch eine Rechnung.

Da wäre noch die Frage nach der Größenänderung des Kontrollkästchen für die Stornierung, habe nix gefunden.

So hoffe wieder etwas Licht ins dunkle gebracht zu haben.

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: Lachtaube am Dezember 05, 2017, 13:25:01
Wenn man Deine Ausführungen so liest, könnte man glauben, dass die Hundepesion erst in Planung oder für einen Auftraggeber ist, mit dem man dann besser einmal über seine Geschäftsvorgänge plaudert.

Warum kann/darf ein Kunde nicht mehr als fünf Hunde besitzen?
Wie gestalten sich die Pensionspreise denn im Einzelnen?
Gibt es Preispauschalen, Rabatte, Kundenrabatte, Hunderabatte?
Wo werden Steuerhinweise hinterlegt?
Welche Bedeutung hat denn die Hunderasse und das Geschlecht für die Aufzeichnung in der DB - oder werden rasselose Hunde nicht akzeptiert?
Was ist mit Futterregeln, Futtergeld?
Welche Leistung nebst Unterkunft und Verpflegung wird sonst noch erbracht bzw. angeboten (Gassi gehen, Tierarztbesuche, spezielles Futter bereitstellen, ...)?
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 05, 2017, 14:25:44
Hallo

nein die Pension gibt es schon.

Kann schon mehr als 5 Hunde haben, ist bis jetzt nur nicht vorgekommen und es dürfen maximal 6 Hunde betreut werden derzeit. Würde auch den Rahmen sprengen, finanziell, glaube ich.
Preise werden einzeln mit dem Kunden besprochen.
Es gibt eigentlich keine Rabatte, Pauschalen oder sonstiges.
Es gibt keine Steuer bzw. es gilt die Kleinunternehmerregelung. Steuer wird nicht ausgewiesen.
Rasse ist nur zur Info und ggf. um den Hund besser zuordnen zu können. Namens Gleichheit kommt öfters vor. Also kann man leichter sagen der Braune Labbi oder so.
Futter regeln wenn es welche gibt, gibt es auf einem separaten Bogen, Futtergeld wenn nötig würde unter Artikel fallen. Alles was mir derzeit noch einfällt würde unter Artikel fallen

Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 05, 2017, 17:37:04
Hallo,

lad Deine aktuelle Version hier nochmal hoch. Ggfls ist ja zwischenzeitlich etwas geändert worden.

Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 05, 2017, 17:47:01
Hallo

wie gewünscht
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 06, 2017, 10:46:20
Hallo,

anbei grobes Konzept mit minimalen Tabellenfeldern.

Alle Abfragen sind entfernt.  Die Anpassung der Formulare muss vervollständigt werden. Die Datenherkünfte basieren direkt auf Tabellen. Die Datensatzherkünfte basieren auf SQl-Strings mit dedizierter Select-Liste entspr. der Anzeige im Listenfeld/Kombifeld. 
Die Tabellenbeziehungen müssen  evtl. noch korrigiert werden.  Wenn ein Vertrag mehrere Hunde enthält, so ergibt dies für jeden Hund je eine einzelne Position in der Rechnung. Dito für sonstige Artikel.
Die redundanten Felder in tbl_Rechnung/tbl_RechPos  habe ich entfernt.  Hier könnte man sich darüber unterhalten, ob man wegen "Fixierung" (Keine Änderungen in der Rechnung bei Änderung von Basisdaten, z. B. Kundenanschrift, zulassen) solche Felder doch redundant aufnimmt und die Beziehungen zu den 1:Tabellen entfernt (außer zum Vertrag).

Die Preisgestaltung ist noch unklar. Wie sind vereinbarte Preise gegenüber den Einzelpreisen zu sehen? Gibt es Rabatte?  usw.

Die Berichte müssen an die akt. Gegebenheit angepasst werden, z. B. Pro Vertrag mehrere Hunde, desgl. für die Artikel.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 07, 2017, 09:36:42
Hallo

du machst mich total durcheinander!
Jetzt ist ja alles komplett anders? Kenne meine eigene Datenbank nicht mehr  :-[. Alle Listen in den Formularen sind dadurch das du die qry gelöscht hast ja weck. Dachte eigentlich das wäre ok gewesen. Hattest du auch irgendwann mal geschrieben. Mein Problem war eigentlich nur die Daten in den Bericht zu bekommen, jetzt muss ich ja mehr oder weniger von vorne anfangen. Ist das wirklich notwendig?
 
Du sagtest seiner Zeit, das wenn man Daten zusammenstellt das über eine entsprechende Abfrage macht. Muss ich für die notwendigen Adressen und die Listen die jetzt wieder neu erstellen?
Auch hast du diverse Felder umbenannt, allerdings habe ich jetzt mal groß Schreibung mal klein, macht das Sinn, oder muss/soll ich den Rest auch noch ändern? Sollte nach Möglichkeit doch alles gleich sein, oder?
Aus tbl Vertrag hast du den vereinbarten Preis raus genommen, wo wird er jetzt erfasst/festgehalten? Ah, muss ich das Formular Vertrag entsprechend ändern um VArtikel (dies sind auch die Hunde) zu erfassen? Wie begrenze ich die Anzeige der Hunde dann nur auf die Hunde die dem Vertrag zugewiesenem Kunde gehören?
Puh

Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 07, 2017, 12:27:38
Hallo,

na ja,  das Konzept ist halt jetzt so entspr. Deiner Vorgabe, dass ein Vertrag zu einem Kunden mehrere Hunde "beinhalten" kann und desgleichen die (sonstigen) Artikel zu einem Vertrag. 

Beim "vereinbarten" Preis ist mir unklar, wie Du die Preisgestaltung bewerkstelligt. In der Db hat jeder Hund zum Vertrag einen Preis, den kannst Du ja festlegen. Bei den Artikeln hat jeder Artikel seinen (Einzel-)Preis.  Die Gesamtpreis-Berechnung erfolgt in der Rechnung, evtl. auch vorher schon per gruppierender Abfrage zur Anzeige im Vertrag.

Die Rechnung(s-Tabellen) selber wird zu gegebener Zeit aus den Daten eines Vertrages "befüllt". Der Rechnungs-Bericht besteht letztendlich aus einem Hauptbericht mit zwei Unterberichten, die jeweils die Hunde und die Artikel anzeigen/zusammenfassen und die Berechnungen für den Rechnungsbetrag erledigen.

Alle Abfragen, die Du hattest, brauchst Du nicht. Die Abfragen für  die Listenfelder stehen als SQL-String in der Eigenschaft "Datensatzherkunft" des jeweiligen Listenfeldes.

Einzig die vorher genannte Abfrage und Abfragen für die Berichte (eine über alle erforderlichen Tabellen verknüpfende Abfrage)  werden wahrscheinlich erforderlich sein.


Das Ganze ist ein Vorschlag..  Den musst Du nicht befolgen, es wäre aber ratsam, wenn die DB funktionieren soll.  Aufwand für Nacharbeiten sind kein Argument dagegen.

Über das Tabellenkonzept kann diskutiert werden, falls Datenzusammenhänge nicht richtig abgebildet werden. Die sollten dann korrigiert werden. 

Der Punkt "Rechnunggenerierung" sollte noch näher diskutiert werden. Ich schlage in diesem Fall hier vor, die Rechnungstabellen redundant mit einer (berechnenden) Abfrage (ggfls. eine VBA-Funktion) zu befüllen, damit eine abgeschlossene Rechnung nicht mehr durch Änderungen an den Grundtabellen beeinflußt wird

Ich (zumindest) habe nirgends gesagt, dass immer Abfragen zu erstellen sind.
M.M. nach verwirren viele Abfragen ohne besondere Aufgabe (Feldeinschränkung, Sortieren, Vorfiltern, etc.) nur die Übersicht.  (Gespeicherte) Abfragen sollten dann erstellt werden, wenn komplexere Aufgaben erforderlich sind als das reine und uneingeschränkte Auslesen aller Felder aus einer Tabelle.

Immer wieder habe ich jedoch gesagt,  dass, bevor nicht der komplette Tabellenaufbau ohne logische Konflikte steht, nicht mit Formularen und Berichten begonnen werden soll.  Nacharbeiten sind dann, wie Du siehst, aufwändig zu bewerkstelligen. Von den sich einschleichenden Fehlern ganz zu schweigen.

Abschließend:  Die paar Formulare und den Vertragsbericht neu zu generieren, sicherlich keine größere Mühe.  Als Tipp dazu: Für jede Tabelle ein Formular nach Standardvorlage generieren. Bei Nachschlagetabellen und n-Tabellen macht oftmals ein Endlosform Sinn.  Bei "Haupttabellen" (tbl_Vertrag, tbl_Rechnung) wäre ein Einzelform angebracht, das die dazugehörenden n-Tabellen mit einem Endlos-Unterformular anzeigen.

Weiterer "Schnickschnack" ist in dieser Phase nicht sinnvoll. Wenn die Ablaufsteuerung und Arbeitsweise korrekt sind, kann ja mit dem "Verhübschen" des Layouts begonnen werden.

Die Groß/Kleinschreibung ist irrelevant und liegt an meiner Gewohnheit, eine gewisse Lesbarkeit zu erreichen . Die Schreibweise kannst Du nach Gusto ändern.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 07, 2017, 14:52:12
Hallo,

Hatte bisher eigentlich immer aus der Sicht des Berichtes (was benötige ich für Daten) geschaut, danach wie stelle ich sie im Formular da und dann erst die Tabellen. War/ist glaube ich falsch herum.

Also fangen wir richtig rum an.  ;D
Preis, in jedem Vertrag wird der Preis für den Hund neu ausgehandelt, daher vereinbarter Preis. Im Vertrag wird auch nur der Betreuungspreis angegeben, also Vereinbarter Preis mal Anzahl Tage evtl. mal Anzahl Hunde. Weitere ggf. dazu kommen Artikel tauchen erst in der Rechnung auf. Muss der vereinbarte Preis dann nicht in die tbl_vertrag?
Die Rechnung sollte nach Bezahlung nicht mehr änderbar sein. Könnte man das auch einfach mit einem Kontrollkästchen machen, oder ist es mit Datum besser? Gleiche gilt für Storno natürlich auch.
Rabatte oder so etwas gibt es nicht.
Die MwSt wird nicht angegeben bzw. ausgewiesen. Kleinstunternehmerregelung. Also könnte das Feld noch wegfallen?
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 07, 2017, 15:56:22
Hallo,

Zitat
War/ist glaube ich falsch herum.

Das ist richtig..  8)


Zitat
in jedem Vertrag wird der Preis für den Hund neu ausgehandelt, daher vereinbarter Preis. Im Vertrag wird auch nur der Betreuungspreis angegeben

Das dürfte falsch sein.  Es kann mehrere Hunde zu einem Vertrag geben, die zudem auch unterschiedliche Preise haben können (Dogge vs. Zwergpinscher... )
Zitat
Weitere ggf. dazu kommen Artikel tauchen erst in der Rechnung auf.

Das könnte man so machen, ich würde trotzdem die Version der Zugehörigkeit zum Vertrag machen.  Die Rechnung bildet (bzw. könnte abbilden) ja evtl. nur eine datenmäßig zusammengefasste Version eines Auftrages ab.



Zitat
also Vereinbarter Preis mal Anzahl Tage evtl. mal Anzahl Hunde.

Das sind berechnete Werte, die sich aus festgelegten Grunddaten ergeben und die normalerweise nicht gespeichert werden (außer vielleicht in der Rechnung) .



Zitat
Die Rechnung sollte nach Bezahlung nicht mehr änderbar sein. Könnte man das auch einfach mit einem Kontrollkästchen machen, oder ist es mit Datum besser? Gleiche gilt für Storno natürlich auch.
.

Das ist eine reine Ablaufsteuerung, wobei die Datumsfelder für die Aussage der Sperrung reichen und ein Kontrollkästchen auch eine "Berechnung" (---> "True", wenn Druckdatum gesetzt.  Das Feld "Druckdatum" fehlt allerdings aktuell noch.) wäre und nicht gespeichert würde. Die Sperrung muss allerdings die Erfassung des Zahldatums zulassen.


Mit "Änderung der Rechnung" hatte ich gemeint, dass eine Rechnung keine Beziehungen (außer vielleicht zum Vertrag) haben darf, damit eine Änderung z. B. der Kundenadresse nicht auf eine abgeschlossene Rechnung "durchschlägt".

Der MwstSatz kann in diesem Fall tatsächlich wegfallen, wenn es immer und ewig beim Kleinstunternehmer bleiben sollte.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 07, 2017, 16:32:18
Hallo,

Zitat
Weitere ggf. dazu kommen Artikel tauchen erst in der Rechnung auf.

Anbei Version mit Artikeln direkt in Rechnung
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 08, 2017, 09:31:54
Moin,

Es gibt in jeden Vertrag nur einen Preis. Also selbst wenn es ein Pinscher und eine Dogge wären, wird ein Betrag zBsp. 25€ festgelegt. Im Beispiel könnten es dann 3 Tage mal 25€ mal 2 Hunde sein =150€ Betreuungsbetrag.
In der Rechnung zum Vertrag könnte dann noch 1 anti Flo-/Zecken mittel für 7,-€ mal 2 also 14€ dazu kommen, oder Futtergeld mit 4,50€ am Tag mal 3 Tage mal 2 Hunde. Die Anzahl der Artikel ist aber sehr begrenzt.
Meistens entscheidet es sich auch erst bei Anlieferung ob noch etwas dazu kommt (Futter vergessen, kein Zecken zeug mehr zuhause gehabt usw.).
Es wird immer und ewig ein Kleinst unternehmen bleiben, sechs Hunde reichen definitiv!
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 08, 2017, 12:44:35
kurze Frage noch

in tbl_artikel werden die Artikel erfasst. Wieso gibt es da schon eine Verbindung zur artikel_rechnungspos_id_f?
Dachte das in tbl_artikel nur die sonstigen Artikel erfasst werden.
Wenn die Hunde auch nur Artikel sind wie werden diese mit der tbl_artikel verknüpft?
Da es bei jedem Vertrag nur einen Preis gibt müsste/sollte dieser dann nicht in die tbl_vertrag?
Generell zu Tabellen und Feldnamen. Tabellennamen groß? Feldnamen immer mit kompletten Tabellennamen und groß?
Bei der tbl_Hunde = Feldnamen Hund? ohne E?
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 09, 2017, 16:43:43
Hallo,

das sind schon mehrere Fragen ... ;)
Zitat
in tbl_artikel werden die Artikel erfasst. Wieso gibt es da schon eine Verbindung zur artikel_rechnungspos_id_f?

Weil diese Artikel in der Rechnung(spositionen)  auftreten müssen.

Zitat
Dachte das in tbl_artikel nur die sonstigen Artikel erfasst werden.

Hier werden ALLE Artikel erfasst, die in Deinem Geschäft verwendet werden.  In Rechnungsposition werden diejenigen Artikel ausgewählt (hinzugefügt) die auf einer bestimmten Vertragsrechnung stehen müssen.

Zitat
Wenn die Hunde auch nur Artikel sind wie werden diese mit der tbl_artikel verknüpft?
Die Hunde sind genau genommen keine Artikel.  Ein Hund (mit seinen Daten ) kann nur zu einem Kunden, bzw. zu einem Kundenvertrag gehören. Dabei kann es sich um mehrere verschiedene Hunde handeln. Deshalb die Zuordnung einzelner Hunde zu einem Kundenvertrag in einer gesonderter Tabelle.

Zitat
Generell zu Tabellen und Feldnamen. Tabellennamen groß? Feldnamen immer mit kompletten Tabellennamen und groß?

Das bleibt Dir überlassen. Es sollte nur durchgängig sein. Zum Anderen gibt es Namenskonventionen (im WWW suchen!) , die sinnvolle Schreibweise und Abkürzungen beschreiben. Die Feldnamen müssen nicht aus den komplett ausgeschriebenen Namen der Tabellen und der Bedeutung des Feldinhaltes zusammensetzen.  Andere Kollegen lassen z. B. den Tabellennamen ganz aus dem Feldnamen weg, sorgen aber trotzdem dafür, dass es in der ganzen(!) DB (vornehmlich Tabellen) keine mehrfach vorkommenden Namen gibt.


Zitat
Bei der tbl_Hunde = Feldnamen Hund? ohne E?


Ich benenne Tabellen meistens (sofern möglich) in Form des Plurals, da es in den Tabellen eine Vielzahl von hier z. B. Hunden gibt.
Für die Feldnamen benutze ich dann eine Abkürzung  des Tabellennamens mit folgendem Unterstrich wegen besserer Lesbarkeit, hier z. B. Hnd_Name,  wobei gleichzeitig in diesem Beispiel das reservierte Wort Name vermieden wird.
In Deiner Db habe ich mehr oder weniger Deinen Vorlieben angepasst.

Zitat
Es gibt in jeden Vertrag nur einen Preis. Also selbst wenn es ein Pinscher und eine Dogge wären, wird ein Betrag zBsp. 25€ festgelegt. Im Beispiel könnten es dann 3 Tage mal 25€ mal 2 Hunde sein =150€ Betreuungsbetrag.

Ok, aber auch das könnte sich in Deinem Geschäft mal ändern.  In vorliegenden Fall ist es aber sinnvoll , jeden (Vertrags-)Hund einen Preis zuzuordnen, auch wenn er z. Z. immer gleich ist, sofern die Hunde als "Individuen" erfasst werden sollen und nicht nur als die Anzahl  einer Tierart  (Du willst doch Namen, Geburtsdatum , etc. erfassen ? ).   Dafür kann z. B. ein Standardwert benutzt werden, um wiederkehrende gleichbleibende Eingaben zu vermeiden.  Die Kosten werden in der Rechnung automatisch berechnet.  Darum brauchst Dich dann beim Gebrauch der DB nicht mehr zu kümmern.

Zitat
Meistens entscheidet es sich auch erst bei Anlieferung ob noch etwas dazu kommt (Futter vergessen, kein Zecken zeug mehr zuhause gehabt usw.).

Da lässt mich nun wieder aufhorchen... ???

Was heißt bei "Anlieferung"? Ist das der Zeitpunkt der Erfassung eines Kundenvertrages?

Wenn so, dann muss die vorherige Version (Artikel zum Vertrag, nicht zur Rechnungsposition)  zum Tragen kommen.


Zitat
Es wird immer und ewig ein Kleinst unternehmen bleiben, sechs Hunde reichen definitiv!

Ob Kleinst-- oder nicht Kleinst-- , das ist irrelevant und hat mit der Struktur der DB nichts zu tun. Der ist es egal, ob 2 oder 2000 Hunde pro Kunde betreut werden, oder ob es 2 oder 5000 Kunden gibt. Wir haben hier eine DB vor Augen, die dafür entwickelt ist, Massendaten zu verwalten, und das effizient, wenn die Struktur stimmt.



So langsam bekomme ich aber wunde Finger..  8)
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 10, 2017, 13:01:57
Moin

erstmal ein Pflaster für die wunden Finger vorweck geschickt  ;)

Danke für die erklärenden Worte. Bin jetzt wieder etwas schlauer. Das mit den Namenskonventionen hatte ich bereits versucht zu nutzen. Nur nicht so konsequent. Du hast sicherlich schon mehr Datenbanken entworfen als ich, deshalb meine Frage was sinnig ist, auch wenn es mit manchen Vorgaben nicht konform ist (zBsp. Strasse und Hausnummer) und ob aus der Erfahrung heraus besser Groß oder klein Schreibung.
Habe den Preis dann jetzt beim Hund dazu gefügt. weiterhin habe ich die Informationsverknüpfungen korrigiert. Gehe ich richtig in der Annahme das bei tbl_VertragHunde der Preis nun weck kann? Muss ich für die auswahl der Hunde nun ein neues ufo einbauen? Bekomme das alte irgenwie nicht mehr dazu es mit daten zu befüllen  :-\

Zitat
Da lässt mich nun wieder aufhorchen... ???

Was heißt bei "Anlieferung"? Ist das der Zeitpunkt der Erfassung eines Kundenvertrages?
Der Vertrag wird eine Tage bis Wochen vorher verschickt. Deshalb beinhaltet er auch nur die wenigen Daten.

Zitat
Ob Kleinst-- oder nicht Kleinst-- , das ist irrelevant ... das effizient, wenn die Struktur stimmt.
Massendaten werden hier wohl eher nicht verarbeitet, aber ich stimme dir völlig zu das die Struktur den Vorgaben richtig zusammengestellt wird und vor allem alles Stimmig und nachvollziehbar ist.

So jetzt noch einen schönen verschneiten 2.Advent

Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 10, 2017, 13:45:58
Doch noch eine Frage,

als Vertragsnummer die Vertrags_id verwenden oder besser eine extra Nummer?
Das gleiche gilt natürlich für die Rechnungsnummer  ::)

Wofür ist das Feld rechpos_me_id_f ? in der tbl_rechpos

rechpos_epreis ist damit Artikel * Menge gemeint?
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 10, 2017, 15:40:55
Hallo,

Zitat
als Vertragsnummer die Vertrags_id verwenden oder besser eine extra Nummer?

Das weiß ich ja nicht....  Du musst entscheiden, wie Deine Rechnungsnummern aussehen sollen.... Schau Dir einfach mal die Rechnungsnummern beliebiger Lieferanten an... Dann siehst Du verschiedenste Formate.  Wenn die Rechnungsnummer der Autowert ist, kannst Du nie Nummernkreise bestimmen.. Es ist einfach eine laufende Nr. , die im Besten Fall bei 1 beginnt.

Zitat
Wofür ist das Feld rechpos_me_id_f ? in der tbl_rechpos

Das ist das Fremdschlüsselfeld zu einer noch fehlenden Tabelle tbl_Mengeneinheiten, die evtl. (ich kenne nicht den Umfang Deiner Artikel) für die Definition der Menge eines Artikel erforderlich ist.

Zitat
rechpos_epreis ist damit Artikel * Menge gemeint?

Nein, damit ist der EinzelPreis eines Artikels, bzw. einer Position gemeint.  Erinnere Dich: Berechnete Werte werden nicht gespeichert, also kann damit auch nicht Artikel * Menge  gemeint sein.

Zitat
Gehe ich richtig in der Annahme das bei tbl_VertragHunde der Preis nun weg kann?

Würde ich nicht machen.  Der Preis in tbl_Hunde kann allenfalls als Vorgabewert für einen Vertraghund dienen. Der korrekte Werte (der könnte ja anders "vereinbart" werden, sollte in tbl_Vertragshunde verbleiben.



Zitat
Muss ich für die auswahl der Hunde nun ein neues ufo einbauen? Bekomme das alte irgenwie nicht mehr dazu es mit daten zu befüllen  :-\

Nochmal:  Bevor Du Formulare bearbeitest, MUSS die komplette Tabellenstruktur stehen...

Schau mal hier und melde Dich mal unverbindlich..  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 10, 2017, 19:00:41
Hallo

Vertragsnummer und Rechnungsnummer sollten/hätte ich gerne getrennt und im Format LfdNr/Jahr etwa 99/2017. Habe die beiden tbl_Vertrag und tbl_rechnung angepasst.
Zitat
tbl_Mengeneinheiten
Sollen darin so Daten wie Tag, Stück usw. geführt werden?
Zitat
Nein, damit ist der EinzelPreis eines Artikels, bzw. einer Position gemeint. ...
Daher meine Frage, ist der Einzelpreis aber nicht schon beim Artikel_Preis?
Muss leider auch zurück ruder, es gibt doch unterschiedliche Preise pro Hund in einem Vertrag.
Formulare hab ich doch nur so zum üben gemacht.
Mir ist mittlerweile schon bewusst das die Tabellen noch etwas mühe in Anspruch nehmen. Mir fehlt nur der weit bzw. durchblick,  :'(

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 10, 2017, 19:13:26
Hallo,

Zitat
im Format LfdNr/Jahr etwa 99/2017

eben dafür kommt der Autowert nicht in Frage und die Rechnr braucht ein eigenes Feld.
Ich allerdings würde es herumdrehen: 2017/99   
Das ist geschickter für Sortiervorgänge. Zudem schadet es nicht, die laufende Nr 3-stellig auszuführen.


Zitat
Sollen darin so Daten wie Tag, Stück usw. geführt werden?

Ja, die üblichen halt: Stk,kg,m,l, ...   Wie halt die Artikel verpackungsmäßig, bzw. verkaufsmäßig geführt werden.

Zitat
es gibt doch unterschiedliche Preise pro Hund in einem Vertrag.

Aha  ;)

Der Einzelpreis in tbl_Artikel ist nur der evtl. sich ändernde aktuelle Artikelpreis, der in tbl_VertragsArtikel, bzw. tbl_RechnungsPositionen übernommen wird. Dadurch bleibt der einmal übernommene Preis für einen  Vertrag , bzw. RechnungPos bestehen.


Wenn die Forms zum Üben da sind, kannst Du freilich nach Belieben gestalten.  Ob die dann später auch brauchbar sind, wird sich zeigen.

Zitat
Mir fehlt nur der weit bzw. durchblick,

Deshalb der Link in meinem letzten Post.  8)
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 11, 2017, 10:43:52
Hallo

VertragNr und RechnungsNr also in Format 2017/123

tbl_Mengeneinheit wird angelegt und analog wie Kontakt und  kontakttyp in Beziehung zur tbl_artikel gesetzt.
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: dug am Dezember 12, 2017, 09:29:18
Hallo,

hier mal der aktuelle Stand, zuletzt nur noch die tbl bearbeitet.

Gruß
Dietmar
Titel: Re: Verständnisproblem bzw. Idee fehlt
Beitrag von: DF6GL am Dezember 12, 2017, 11:35:59
Hallo,

anbei kleine Bearbeitungen.  (teilweise Umbenennungen, Benamsung, zusätzliche Felder)

Die Beziehung zwischen tbl_Vertragshunde und tbl_RechPos habe ich zusätzlich  entfernt. Mir ist nicht klar, ob die VertragsHunde aufgedröselt (als Einzelpositionen) oder als Sammelposition in tbl_Rechpos auftauchen sollen.


Welche Auswirkung (Bedeutung) soll der "Vereinbarte Preis" ("VPreis")  in tbl_Vertrag haben?