Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: peterchen1000 am September 20, 2016, 08:55:26

Titel: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 20, 2016, 08:55:26
Hallo Zusammen,

Ich bin gerade dabei eine Datenbank für einen Kindergarten zu erneuern.
Mit dieser Datenbank werden die Kita Kinder verwaltet und die Verpflegungsgeldabrechnung durchgeführt. Nun hat sich der Abrechnungsmodus geändert. Von ursprünglich täglicher Pauschale auf monatliche Pauschale.
Hinzu kommt das es 4 Verpflegungsarten gibt: 5-Tage, 4-Tage, 3-Tage und Babys. Für jede Verpflegungsart gibt es eine Verpflegungspauschale. Wie kann ich im Tabellenfeld Verpflegungssatz erreichen, das wenn im Formular das Ja/nein Feld z.B. 5-Tage angehakt ist im Unterformularfeld Verpflegungssatz der korrekte Verpflegungssatz eingetragen wird.

Beispiele meiner Versuche:
=Wenn([5-Tage]="ja";"58,00€ ";Wenn([4-Tage]="ja";"48,00€ ";Wenn([3-Tage]="ja";"38,00€";Wenn([Babys]="ja";"30,00€";""))))


oder


=Wenn([5Tage]="ja";"[Verpflegungssätze]![Verpflegungssatz1]";Wenn([4-Tage]="ja";"[Verpflegungssätze]![Verpflegungssatz2]";Wenn([3-Tage]="ja";"[Verpflegungssätze]![Verpflegungssatz3]";Wenn([Babys]="ja";"[Verpflegungssätze]![Verpflegungssatz4]";""))))

Für eure Hilfe wären die Kita und ich euch sehr dankbar.
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: Lachtaube am September 20, 2016, 09:28:53
Wenn([JaNein_Feldname]=Wahr;DannWert;SonstWert) oder kürzer Wenn([JaNein_Feldname];DannWert;SonstWert) wären gleichwertige gültige Ausdrücke für die Wenn-Funktion.

BTW: Wenn am Design einer Datenbank bei Änderung eines Sachverhalts geschraubt werden muss, ist i.d.R. das Datenmodell suboptimal. Eine gut durchdachte Datenstruktur würde nur das Ändern bzw. besser nur das Hinzufügen von Datensätzen mit einem neuen Gültigkeitsdatum erforderlich machen.
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 20, 2016, 09:59:22
Vielen dank für den Hinweis. Ich werde das heute nachmittag ausprobieren. :)
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: MzKlMu am September 20, 2016, 10:06:47
Hallo,
ich halte das Datenmodell (wie von Lauchtaube auch angedeutet) für wenig brauchbar. Solche Wenn Orgien sollten in einer korrekt aufgebauten Datenbank gar nicht notwendig sein.

Zeige bitte mal ein Bild es Beziehungsfensters auf dem man alle Tabellen mit allen Feldern vollständig sieht.
Alternativ, beschreibe die Tabellen.
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 20, 2016, 11:21:08
Hallo,
Es gibt eine Tabelle Mietgliederneu. In dieser Tabelle sind alle Daten der Kinder enthalten.
Die Tabelle ist wie folgt aufgebaut:
ID                             Autowert
Mitgliedsnummer        Zahl
Anrede                       Text
Briefanrede                 Text
Vorname                     Text
Nachname                   Text
Straße                         Text
PLZ                             Text
Mobil                           Text
Ort                              Text
Telefon                        Text
email                           Text
Beauftragte Personen    Text
Geburtsdatum               Datum/Uhrzeit
Mitglied seit                  Datum/Uhrzeit
Kommentare                 Text
Status1                         Ja/nein
Status2                         Ja/nein
Status3                         Ja/nein
Status4                         Ja/nein
Geschlecht                     Text
Nationalität                     Text
Geschwister                    Ja/nein
Etikettenauswahl             Ja/nein
Debitorennummer            Text
Gruppe                           Text   
5-Tage                            Ja/nein
4-Tage                            Ja/nein
3-Tage                            Ja/nein   
Babys                              Ja/nein
Anmeldung                       Text
Einschulung                      Text
Bezeichnung                      Text
WB                                   Text
GT                                    Text


Die 2. Tabelle beinhaltet

Verpflegungssatz1              58,00
Verpflegungssatz2              48,00
Verpflegungssatz3              38,00
Verpflegungssatz4              30,00


Status 1-4 steht für Kita Kinder, integrative Kinder, Kinder unter 3, Babys.

Ich hoffe mDu kommst damit klar. Vielen Dank
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: MzKlMu am September 20, 2016, 12:08:56
Hallo,
sind das die Namen der Kinder ?
Wenn ja, habe die Emails und Telefon ?
Wo sind die Eltern erfasst ?
Es gibt ein Feld Geschwister, was ist damit ?
Wie erkennst Du die Zusammengehörigkeit der Geschwister ?

Woran erkannt man in Tabelle2 für welche Kinderart der Satz ist ?
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 20, 2016, 12:39:48
Hallo,
Das sind die Namen der Kinder. Die Eltern sind nicht erfasst. Deshalb E-mail, Mobil und Telefon von den Eltern.
Das Feld Geschwister ist eine Info für die Verwaltung. Kita Beiträge sind dann niedriger.

In Tabelle 2 sind die Verpflegungssätze hinterlegt.

Verpflegungssatz1     5-Tage Verpflegung
Verpflegungssatz2     4-Tage Verpflegung
Verpflegungssatz3     3-Tage Verpflegung
Verpflegungssatz4     Baby Verpflegung


Ich hoffe das die Infos Dir reichen. Vielen Dank
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 20, 2016, 12:41:05
Ich könnte Dir auch die Datenbank zukommen lassen damit Du einen
besseren Einblick bekommst.


MFG
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: MzKlMu am September 20, 2016, 13:15:07
Hallo,
Du kannst die DB hier im Forum hochladen, komprimiert (Access Dienstprogramm) und gezippt. Mit einigen anonymen Spieldaten.
Ich benötige aber zwingend eine MDB (Access2003).
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 21, 2016, 07:47:52
Hallo,

Leider habe ich gestern die Datenbank nicht unter 300 KB gezipt bekommen.
Werde es heute nochmal versuchen.

MFG
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: MzKlMu am September 21, 2016, 08:45:31
Hallo,
Du musst unbedingt vor dem Zippen die DB komprimieren (Access Dienstprogramm). Hast Du das gemacht ?
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 21, 2016, 09:31:53
Hallo,

Ja das habe ich gemacht. Nach dem komprimieren ist die Datenbank 6,2 MB groß.
Nach dem zip 730 KB. Kleiner wird sie nicht.

MFG
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: MzKlMu am September 21, 2016, 09:42:26
Hallo,
irgendwie kann ich mir das nicht vorstellen. Sind noch Daten in der DB ?
Gibt es Bilder, wenn ja, alle löschen.
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 22, 2016, 09:38:35
Hallo,

Habe jetzt alle Bilder entfernt.Es sind nur noch 3 Kinder eingepflegt als Beispieldaten. Trotzdem bekomme ich die Datenbank gezipt nur auf 635 KB.
Hast Du nicht eine E-mail Adresse an die ich die Datenbank schicken kann.


MFG
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: DF6GL am September 22, 2016, 10:38:44
Hallo,

schick sie mal an
d f    6   GL   ÄT   g  m   x   punkt d    e
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: DF6GL am September 22, 2016, 12:17:03
Hallo,

anbei die reduzierte DB.  Habe alle Berichte mit OLE-Verknüpfungen gelöscht.


Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 22, 2016, 12:54:41
Hallo,

Vielen Dank zum Bodensee.
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 22, 2016, 12:59:18
Hallo,

Dank DF6GL habe ich die Datenbank unter 300 KB jetzt zur Verfügung.


MFG
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: MzKlMu am September 24, 2016, 10:04:27
Hallo,
die DB bedarf der gründlichen Überarbeitung, das wird so nichts.

- Was steht in den Tabellen "Beiträge" und "Beiträge2" ?
- Wieso gibt es 2 Tabellen für die Mitglieder ?
- Wer sind die Mitglieder, die Eltern oder die Kinder ?
- Wenn Kinder, wo sind die Eltern gespeichert ?
- In der Tabelle "Abrechnung" und in der Tabelle "Mitglieder" gibt es die Mitgliedsnummer als Autowert. Das ist unlogisch und falsch. Beide Autowerte müssten ja synchron laufen, was auf keinen Fall sichergestellt ist. Außerdem gibt es ja zu einem Mitglied mehrere Abrechnungen und die Mitgliedsnummer muss sich wiederholen, was mit einem Autowert nicht möglich ist.
- Die Preise über Wenn ... zu ermitteln ist ausgeschlossen. Die Verpflegungsätze unterliegen ja Änderungen, mit der festgelegten Formel für die Sätze überschreibst Du ja alte Abrechnungen mit den neuen Preisen. Damit sind alle alten Abrechnungen (vor der Preisänderung) falsch.
- Die Preistabelle als Matrix ist auch falsch. Die Preise müssen untereinanderstehen in einer Spalte. In weiteren Spalten GültigAb (Datum) und die Preisart (5-Tage, 4-Tage, ...). Der aktuelle Preis muss dann über das Datum ermittelt werden und im einfachsten Fall redundant in der Abrechnung gespeichert werden.
- Die meisten der Berichte sind überflüssig. Für die Berichte "Mitglieder Abfrage Babys" usw. genügt ein Bericht der entsprechend gefiltert wird.
- Für die Kinderart (Baby usw. ist eine Tabelle erforderlich
- ebenso für den Status
- und für Geschlecht und Nationalität
- Alle Tabellen müssen in Beziehung gesetzt werden, mit referentielle Integrität.

Es gibt noch viel mehr zu sagen. Aber lassen wir es mal dabei. Beantworte mal die Fragen und gehe auf die Hinweise ein, dann sehen wir weiter.
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: peterchen1000 am September 26, 2016, 06:58:53
Hallo,
In der Tabelle Beiträge werden die Eingaben der Verpflegungsgelder gespeichert.
Die Tabelle Beiträge 2 war nur ein Test und kann entfernt werden.
Die Tabelle Mitglieder kann ebenfalls entfernt werden, da eine neue Mitgliedertabelle
erstellt wurde.
Die Mitglieder sind die Kinder. Die Eingabe der Eltern wurde von der Kita-Leitung nicht gewünscht.
Es wird nach der Umstellung der Verpflegungspauschale nur noch eine Abrechnung für alle geben.
Die Unterscheidung Kita und integrativ gibt es in der Abrechnung nicht mehr.

Wichtig für die Kita ist das die einzelnen Preise bei der Eingabe automatisch im Unterformular angezeigt werden wenn das häckchen im Feld z.b. 5-Tage gesetzt ist.

Das mit der Preisänderung und des Datums hatte ich nicht bedacht.
Kannst Du mir einen Tip geben wie ich das realisieren kann.


MFG

Peter
Titel: Re: Wenn Funktion mit Werten aus 2 verschiedenen Tabellen
Beitrag von: MzKlMu am September 26, 2016, 07:34:12
Hallo,
ZitatKannst Du mir einen Tip geben wie ich das realisieren kann.
Es ist ja nicht nur die Sache mit dem Preis, die ganze DB muss erst mal gemäß meinen Hinweisen umstrukturiert werden, da fehlen noch Tabellen und die entsprechenden Beziehungen sind einzurichten.
Das kannst Du mit dieser Struktur nicht weiter machen. Hinweise zur Umstrakturierung habe ich Dir gegeben.
Du musst Dich mit den Grundlagen vertraut machen.
Siehe hierzu:
https://www.hdm-stuttgart.de/~riekert/lehre/db-kelz/ (https://www.hdm-stuttgart.de/~riekert/lehre/db-kelz/)