Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: Banyan am Januar 25, 2024, 12:17:15

Titel: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 25, 2024, 12:17:15
Hallo an Alle,


ich müsste einen Werte  "Sachbearbeiter" aus einem Kombinationsfeld in einem Formular für eine Abfrage übernehmen oder Bericht übernehmen.
D.h. im Kombinationsfeld klicke ich auf einen Sachbearbeiternamen und erstelle eine Abfrage oder Bericht mit allen Einträgen die diesen Namen enthalten.
Also ich müsste den Eintrag aus dem Kombinationsfeld in eine Variable einlesen und mit dieser Variable eine Abfrage erstellen.
Im Moment habe ich keine Idee wie ich das machen kann.
Könnte mir jemand helfen ?

Viele Grüße
Banyan
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Beaker s.a. am Januar 25, 2024, 13:24:06
Könnte dies (https://www.donkarl.com?FAQ6.16) helfen?
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 26, 2024, 17:32:03
Hallo Beaker,

vielen Dank für deine Antwort.

ich denke das kommt in die Richtung...
aber offen gesagt verstehe ich nicht ganz...

meine Daten sind:
Steuerelementinhalt = Sachbearbeiter
hiermit möchte ich aus der Tabelle "Abgabe_Unterlagen" alle Records selektieren die im Feld "Sachbearbeiter" den Namen aus dem Kombifeld enthalten.
und diese Records in einer Abfrage oder einem Bericht anzeigen.

Der Name der Abfrage  = SachbearbeiterAkten

Set qdf = db.QueryDefs("Meine_Parameter_Abfrage")
was wäre die parameterabfrage ?
qdf.Parameters!MeinParameter1 = "Wert_für_Parameter1_in_Anführungszeichen_falls_er_ein_Text_ist"

der code gehört dann in das Kombinationsfeld welches den SachbearbeiterName enthält ?
und der Sachbearbeitename ist  = "Wert_für_Parameter1_in_Anführungszeichen_falls_er_ein_Text_ist"

Viele Grüße
Banyan

Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 26, 2024, 18:06:43
Hallo,
es müsste erst mal geklärt werden, wie die Datenbank aufgebaut ist.
Es muss ja mimdestens diese beiden Tabellen geben:
Eine Tabelle "Abgabe_Unterlagen" und eine Tabelle "Sachbearbeiter".
Wenn das richtig (im Sinne einer Datenbank) aufgebaut ist, dann sollte in der Tabelle "Abgabe_Unterlagen" die Schlüsselzahl des Sachbearbeiters stehen und nicht dessen Name. Zwischen beiden Tabellen muss es über die Schlüsselfelder eine Beziehung geben.
Als Parameter darf dann nicht der Klarname verwendet werden, sondern es muss die Schlüsselzahl zur Anwendung kommen.

Es muss also erst mal die Struktur geklärt werden.

Sind Beziehungen eingerichtet ?
Wenn ja, bitte mal das Bild zeigen, wenn nein, warum nicht ?
Im Falle von nein wäre das Einrichten von Beziehungen unerlässlich. Auch referentielle Integrität sollte dann eingestellt werden.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 27, 2024, 08:19:35
Hallo Klaus,

vielen Dank für deine Antwort.

Ja Beziehungen sind eingerichtet über das Feld Sachbearbeiter.

"sollte in der Tabelle "Abgabe_Unterlagen" die Schlüsselzahl des Sachbearbeiters"
das verstehe ich nicht, was ist die Schlüsselzahl bzw.wie setze ich die ein ?

"referentielle Integrität sollte dann eingestellt werden"
das habe ich nicht, was würde das ändern ?

Viele Grüße
Banyan
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 27, 2024, 11:42:15
Hallo,
die ID wäre z.B. die Schlüsselzahl und sollte auch Primärschlüssel werden. Die Beziehung sollte über diese Schlüsselzahl laufen und nicht über den Sachbearbeiter als Klartext. In die Tabelle "Abgabe_Unterlagen" muss dann ein Zahlenfeld das dann als Fremdschlüssel dient. Das Feld "Sachbearbeiter" in dieser Tabelle entfällt dann ersatzlos.
Das Feld "Mandant_Nummer" sollte ein Zahlenfeld sein, Textfelder sind als Primärschlüssel ungeeignet.

Im Anhang ein Bild, da habe ich das mal grob dargestellt.

Was referentielle Integrität ist, solltest Du mal bei Google nachschlagen. RI ist eine wesentlicher Bestandteil einer Datenbank.

Dir fehlen die Grundlagen zur Entwicklung relationaler Datenbanken. Access muss man lernen, da kann man nicht einfach mal machen.

Zu den Grundlagen hier 2 Links:

Theorie:
https://www.hdm-stuttgart.de/~riekert/lehre/db-kelz/

Praxis:
https://www.access-tutorial.de/
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 27, 2024, 17:09:31
Hallo Klaus,

vielen Dank für deine Antwort und die Hinweise, die ich auch gerne umsetzen werde.

Was referentielle Integrität bedeutet ist mir schon klar, ich war nur nicht sicher, was es in diesem Fall bringt.
Aber sicher du hast Recht, man sollte von Anfang an ordentlich arbeiten.

Leider bin ich noch keinen Schritt weiter aus meiner ursprünglichen Frage, wie ich nun den Wert des Sachbearbeiters aus dem Formular weiterverwenden kann, um damit einen Bericht oder eine Abfrage mit den entsprechenden records aus der Tabelle "Abgabe_Unterlagen" zu erstellen...
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 27, 2024, 17:47:05
Hallo,
lade mal die DB mit den 2 Tabellen als Zipfile hier im Forum hoch.
Mit einigen anonymen Datensätzen.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 27, 2024, 20:11:27
Hallo Klaus,

anbei die Test DB...
Durch die vorgenommenen Änderungen funktionieren einige Suchen in den Forms nicht mehr, aber das ist im Moment auch nebensächlich.

Gruß
Armin
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 27, 2024, 23:51:08
Hallo,
die Tabellen sind falsch aufgebaut. Das kann so nicht funktionieren.
Die Mandant_Nummer darf es nur in der Mandantenlist als Primärschlüssel geben, in den anderen Tabellen muss das Fremdschlüssel sein und muss Duplikate zulassen. Versuche mal jetzt in der Tabelle "Abgabe_Unterlagen" 2 unterschiedliche Mandanten zu erfassen.

Kann ein Mandant in der Tabelle "Abgabe_Unterlagen" mehrere Unterlagsarten haben ?
Wenn ja (was ich annehme), geht das nicht mit dieser Tabelle.

Welche Funktion hat die Tabelle "MonQuartJahr" ?
Mir scheint die überflüssig.

Was ist mit der Tabelle "Ordner_Liste" ? Da ist auch die Mandant_Nummer Primärschlüssel, was zwingend nicht sein darf, Du könntest zu einem Mandanten nur einen Ordner anlegen.

Bitte beschreibe die Aufgabe der DB mal genauer, so jedenfalls funktioniert das nicht.

Wenn ich die Zusammenhänge kenne, mache ich Dir einen Vorschlag.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 28, 2024, 08:43:01
Hallo Klaus,

vielen Dank für dein nettes Angebot.

der Zweck ist im Prinzip der, ein Werkzeug zu haben, welches von der Sekretärin gepflegt wird, damit die Sachbearbeiter immer wissen wo die Mandantenakten sich befinden.
Im Moment läuft jeder Sachbearbeiter durch das Gebäude und fragt, wer weiss wo sich die Akte X befindet.
Im Büro der Sekretärin befindet sich die Zentralablage, 2 Schränke ,, Eingang" ,,Ausgang".
Der Ablauf sollte sein, wenn Mandanten kommen geben sie ihre Akten bei der  Sekretärin ab.
Sie trägt sie entsprechend in die ,,Tabelle_Abgabe" Unterlagen ein und stellt sie in den Schrank ,,Eingang". Die Sachbearbeiter können sich jederzeit einen Bericht ziehen, um zu sehen ob neue Akten für sie eingegangen sind.
Sie holen die Akte ab und es wird entsprechend eingetragen - ursprünglich war hier nur die Tabelle ,,Ordner_liste" vorgesehen....jetzt kann jeder Sachbearbeiter sehen wo die Akte sich befindet und was der Bearbeitungsstand ist.
Wenn die Akte bearbeitet ist, wird sie zurückgebracht in die Zentralablage und die Sekretärin aktualisiert die Tabelle ,,Ordner_Liste".

Gruß
Banyan

Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 28, 2024, 09:25:22
allo,
bitte beantworte auch meine Fragen.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 28, 2024, 09:31:15


ZitatKann ein Mandant in der Tabelle "Abgabe_Unterlagen" mehrere Unterlagsarten haben ?
Wenn ja (was ich annehme), geht das nicht mit dieser Tabelle.

—Ja, mehrere Unterlagsarten sind vorhanden

ZitatWelche Funktion hat die Tabelle "MonQuartJahr" ?
Mir scheint die überflüssig.

— bei der Abgabe wird eingetragen für welches Jahr, Quartal, Monat die Unterlagen sind

ZitatWas ist mit der Tabelle "Ordner_Liste" ? Da ist auch die Mandant_Nummer Primärschlüssel, was zwingend nicht sein darf, Du könntest zu einem Mandanten nur einen Ordner anlegen.

—Die Ordnerliste war der erste Versuch den Aktenverbleib zu erfassen, da war noch nicht klar,  dass auch ein Formular für die Sekretärin gebraucht wird um die die Abgabe durch Mandanten zu erfassen.

Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 28, 2024, 11:46:17
Hallo,
Zitat—Ja, mehrere Unterlagsarten sind vorhanden
Und wie soll das mit der jetzigen Tabelle "Abgabe_Unterlagen" nur eine einzige Unterlagsart erfassen, ist Dir das klar ?

Zitatfür welches Jahr, Quartal, Monat die Unterlagen sind
Warum nimmst Du da nicht einfach ein Datum ?

Ich glaube, Du hast Die Sache mit den Primärschlüsseln noch nicht richtig verstanden. Wenn in der Tabelle "Abgabe_Unterlagen" die Mandant_Nummer zum PS wird, kannst Du nie mehr als ein Vorgang zu einem Mandanten anlegen und das kann ja nicht sein.
Den Mandant_Name darf es in der Datenbank nur in einer Tabelle geben, nämlich in der Mandantenliste. In allen anderen Tabellen gibt es nur das Schlüsselfeld zum Mandanten (=dessen PS als Fremdschlüssel).
Die Mandant_Nummer darf es nur einziges mal als PS geben, nämlich nur in der Mandantenliste.


PS:
Bitte gebe Dir etwas mehr Mühe mit den Antworten. Man sollte schon genauer erkenne was Zitat ist und was Antwort.
Ich habe das in Deinem letzten Beitrag geändert.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 28, 2024, 12:22:49
Hallo Klaus,
ZitatUnd wie soll das mit der jetzigen Tabelle "Abgabe_Unterlagen" nur eine einzige Unterlagsart erfassen, ist Dir das klar ?
--> Ja, das ist mir klar,ich hatte, als ich die Tabelle angelegt habe, noch nicht gewusst, dass ein Mandant mit mehreren Unterlagen gelistet werden muss
ZitatWarum nimmst Du da nicht einfach ein Datum ?
--> Das ist Vorgabe, da es sich auf den Zeitraum bezieht für welchen die Unterlage zugeordnet werden muss.
aber jetzt würde ich natürlich auch eher ein Auswahlfeld mit vorgegebenen Werten nehmen statt einer Tabelle.

Sorry, das mit dem Zitieren muss ich nochmal üben...
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 28, 2024, 14:24:50
Hallo,
ZitatDas ist Vorgabe, da es sich auf den Zeitraum bezieht für welchen die Unterlage zugeordnet werden muss.
Für einen zeitraum ist doch ein Datum viel besser geeignet. Aus eien Datum lässt sich das Jahr, der Monat undd as Quartal problemlos ableiten.

Übrigens, der Monat ist eine Zahl, da hat ein Format (00) nichts zu suchen.
Wenn Du nach 01 suchen würdest, würde der Monat 1 nicht gefunden werden.

Zitatdass ein Mandant mit mehreren Unterlagen gelistet werden muss
Und wie willst Du das jetzt machen ?

ZitatLeider bin ich noch keinen Schritt weiter aus meiner ursprünglichen Frage,
Es macht auch absolut keinen Sinn zum jetzigen Zeitpunkt diese Frage zu beantworten. Erst muss die Tabellenstruktur klar sein, dann kann man mal über Formulare und eine Bedienoberfläche nachdenken.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 29, 2024, 08:42:29

ZitatFür einen zeitraum ist doch ein Datum viel besser geeignet. Aus eien Datum lässt sich das Jahr, der Monat undd as Quartal problemlos ableiten.
Es wird aber so abgelegt in deren System, was soll ich diskutieren...

ZitatÜbrigens, der Monat ist eine Zahl, da hat ein Format (00) nichts zu suchen.
Wenn Du nach 01 suchen würdest, würde der Monat 1 nicht gefunden werden.
OK, dann halt Text mt den3 ersten Buchstaben....?

Zitatdass ein Mandant mit mehreren Unterlagen gelistet werden muss
Und wie willst Du das jetzt machen ?
Den Primärschlüssel bei dem Mandanten herausnehmen und Mehrfacheinträge zulassen...?
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 29, 2024, 08:51:42
Hallo,
OK, das mit Monat, Quartal und Jahr lassen wir dann. Die Tabelle dazu wird aber anders aufgebaut. Und bitte keine Wertelisten verwenden.
ZitatOK, dann halt Text mt den3 ersten Buchstaben....?
Nein, kein Text, eine einfache Zahl von 1-12.

Du kriegst später einen Vorschlag.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 29, 2024, 12:13:39
Hallo,
anbei mein Vorschlag.
Schaue Dir die Beziehungen an.
Die Tabelle mit den Monaten, Quartal und Jahr habe ich einfacher aufgebaut. Für Kombis dann die entsprechenden Abfragen verwenden.
Bitte verwende auf keinen Falle Wertelisten für Kombifelder. Das ist viel zu unflexibel. Eine weitere Name würde immer eine Änderung des Entwurfs (Tabelle oder Formular) erfordern. Die Namen der "AusgeführVon" Personen ist in die Sachbearbeitertabelle aufgenommen. Zur Unterscheidung gibt es dort ein Feld (Sb oder Sek).
Die Kombifelder sind umgestellt auf den jeweiligen Fremdschlüssel. Über die Spaltenzahl und Spaltenbreiten kann man einstellen was man sieht.

Damit Du siehst, wie ein Bericht für einen Mandanten gedruckt wird habe ich einen ganz einfachen Bericht gemacht der über einen Button im Formular aufgerufen wird. Was dann auch sinngemäß die Lösung zu Deiner ursprünglichen Frage wäre. Übergabeparameter wäre dann die SachbearbeiterID.
Das Formaular würde man anders aufbauen. Ein Hauptformular für den Mandanten und darin ein Unterformular zur Anzeige der Vorgänge. Hafo und Ufo sind über die Schlüsselfelder zu verknüpfen. Dann siehst Du zu einem Mandanten immer dessen "Abgabe_Unterlagen", automatisch.

Ob das alles vom Arbeitsablauf passt, kann ich nicht sagen, das musst Du prüfen.
Bei Fragen bitte melden.
Ich bin aber erst wieder gegen Abend Online.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 29, 2024, 16:15:26
Vielen Dank Klaus,

das hilft mir sehr und ich weiss es zu schätzen.

ZitatSchaue Dir die Beziehungen an.
Sieht super aus, vielen Dank

ZitatDie Tabelle mit den Monaten, Quartal und Jahr habe ich einfacher aufgebaut. Für Kombis dann die entsprechenden Abfragen verwenden.
OK, Kein Problem

ZitatBitte verwende auf keinen Falle Wertelisten für Kombifelder. Das ist viel zu unflexibel. Eine weitere Name würde immer eine Änderung des Entwurfs (Tabelle oder Formular) erfordern.
Verstehe...

ZitatDie Namen der "AusgeführVon" Personen ist in die Sachbearbeitertabelle aufgenommen. Zur Unterscheidung gibt es dort ein Feld (Sb oder Sek).
Hier habe ich ein Problem, warum zeigt sich im Bericht die ID Nummer und nicht der Name ?

ZitatDie Kombifelder sind umgestellt auf den jeweiligen Fremdschlüssel. Über die Spaltenzahl und Spaltenbreiten kann man einstellen was man sieht.
OK, das muss ich mir in Ruhe ansehen

ZitatDamit Du siehst, wie ein Bericht für einen Mandanten gedruckt wird habe ich einen ganz einfachen Bericht gemacht der über einen Button im Formular aufgerufen wird. Was dann auch sinngemäß die Lösung zu Deiner ursprünglichen Frage wäre. Übergabeparameter wäre dann die SachbearbeiterID.
Vielen Dank, jetzt habe ich Verstanden, wie der Zusammenhang hergestellt wird.

ZitatDas Formaular würde man anders aufbauen. Ein Hauptformular für den Mandanten und darin ein Unterformular zur Anzeige der Vorgänge. Hafo und Ufo sind über die Schlüsselfelder zu verknüpfen. Dann siehst Du zu einem Mandanten immer dessen "Abgabe_Unterlagen", automatisch.
Hm, da muss ich noch dran arbeiten...also es soll nicht nach dem Mandanten gesucht werden sondern nach dem Sachbearbeiter, damit der Sachbearbeiter jeden Tag schauen kann ob neue Unterlagen "seiner" Mandanten eingetroffen sind.
Gut, die Suche und den Berichtsaufruf habe ich auf "Sachbearbeiter" umgestellt das funktioniert auch. Evtl. könnte man das auch in ein UFO packen.


ZitatBei Fragen bitte melden.
Wenn es dir nicht auf die Nerven geht, würde ich gerne auf das Angebot zurückkommen...

Viele Grüße
Armin
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 30, 2024, 15:07:53
Hallo Klaus,

ZitatDie Namen der "AusgeführVon" Personen ist in die Sachbearbeitertabelle aufgenommen. Zur Unterscheidung gibt es dort ein Feld (Sb oder Sek).
Hier habe ich ein Problem, warum zeigt sich im Bericht die ID Nummer und nicht der Name ?
Die Tabelle "SachbearbeiterSek_1" ist im Beziehungsfenster zu sehen, existiert aber nicht...ich habe eine entsprechende Abfrage auf die Tabelle Sachbearbeiter erstellt mit dem Kriterieum "Sek"...dann funktioniert es...war das so gedacht ?



Viele Grüße
Armin
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 30, 2024, 15:30:27
Hallo,
Die Tabelle "SachbearbeiterSek_1". Diese Tabelle ist eine virtuelle (alias) die gibt es nicht wirklich. Diese Tabelle wird im Beziehungsfenster angelegt in dem man die Die Tabelle "SachbearbeiterSek" ein 2tes mal in das Bezeihungsfenster aufnimmt. Das Vorgehen ist notwendig um die Einträge für Sachbearbeiter und Eingetragen von unterscheiden zu können. Die damit erstellten Abfragen müssen manuell entsprechended dem Beziehungsbild geändert werden. Dem Feldnamen muss dann immer auch der entsprechende Tabellenname vorangestellt werden ("SachbearbeiterSek" oder "SachbearbeiterSek_1").

ZitatHier habe ich ein Problem, warum zeigt sich im Bericht die ID Nummer und nicht der Name ?
Da habe ich einen Fehler gemacht. Für den Bericht muss eine gespeicherte Abfrage erstellt werden.
Geänderte DB anbei. Die Abfrage nennt sich qryBericht1 analog zum Berichtsname Bericht1.


Schaue Dir die Abfrage an. Überall wo in einer Tabelle 2x eine gleiche Tabelle als Nachschlagetabelle verwendet wird, muss zwingend ein solches Beziehungskonstrukt verwendet werden. Das sieht erst kompliziert aus, ist aber nach Gewöhnung und Verständnis einfach.

Du kannst es Dir auch einfacher machen und für Sachbearbeiter*innen und Sekretär*innen  ;D getrennte Tabellen anlegen, dann müssen aber 2 Personenkreise gepflegt werden.

Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 31, 2024, 13:11:40
Hallo,

ZitatDie Tabelle "SachbearbeiterSek_1". Diese Tabelle ist eine virtuelle (alias) die gibt es nicht wirklich. Diese Tabelle wird im Beziehungsfenster angelegt in dem man die Die Tabelle "SachbearbeiterSek" ein 2tes mal in das Bezeihungsfenster aufnimmt. Das Vorgehen ist notwendig um die Einträge für Sachbearbeiter und Eingetragen von unterscheiden zu können. Die damit erstellten Abfragen müssen manuell entsprechended dem Beziehungsbild geändert werden. Dem Feldnamen muss dann immer auch der entsprechende Tabellenname vorangestellt werden ("SachbearbeiterSek" oder "SachbearbeiterSek_1").
Verstehe...

ZitatHier habe ich ein Problem, warum zeigt sich im Bericht die ID Nummer und nicht der Name ?
Da habe ich einen Fehler gemacht. Für den Bericht muss eine gespeicherte Abfrage erstellt werden.
Geänderte DB anbei. Die Abfrage nennt sich qryBericht1 analog zum Berichtsname Bericht1.
OK, Verstanden


ZitatSchaue Dir die Abfrage an. Überall wo in einer Tabelle 2x eine gleiche Tabelle als Nachschlagetabelle verwendet wird, muss zwingend ein solches Beziehungskonstrukt verwendet werden. Das sieht erst kompliziert aus, ist aber nach Gewöhnung und Verständnis einfach.

Du kannst es Dir auch einfacher machen und für Sachbearbeiter*innen und Sekretär*innen  ;D getrennte Tabellen anlegen, dann müssen aber 2 Personenkreise gepflegt werden.

Ich habe mit deinem Tabellenvorschlag weitergearbeitet. Hatte aber eine Abfrage erstellt auf die Tabelle Sachbearbeiter mit der Bedingung "Sek"...das funktioniert dann auch...ist das OK oder macht das aus deiner Sicht Probleme ?

Zunächst hatte ich das nicht im Focus aber
ich bin gerade etwas verzweifelt, weil die das Füllen der Formulare nicht mehr funktioniert...
Du benutzt ja
ZitatPrivate Sub MandantenSuche_AfterUpdate()
  ' Den mit dem Steuerelement übereinstimmenden Datensatz suchen.
    Dim rs As Object
    Set rs = Me.Recordset.Clone
    rs.FindFirst "[Mandant_Nummer_F] = " & Me.MandantenSuche
    If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub

ich hatte ein recordset gefüllt mit der Bedingung
ZitatSet rst = db.OpenRecordset("SELECT Mandant_Nummer, Mandant_Name, Art_Unterlage, Datum_Abgabe, Datum_Weiterg, Sachbearbeiter, Datum_Eintrag, Eingetragen_Von FROM Abgabe_Unterlagen WHERE Mandant_Nummer = '" & Me.Mandant_Nummer.Value & "'")

ich bin gerade komplett durch den Wind und bekomme es nicht mehr hin die Formulare mit den Datensätzen zu füllen...
was ist da passiert ...habe ich etwas übersehen ?

Ich hänge mal die von mir weiterbearbeitete Version an, aber ich habe im code für das Füllen des Formulars nichts geändert...

Viele Grüße
Armin
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 31, 2024, 14:13:40
Hallo,
was willst Du hier mit einem Recordset. Das sind doch gebundene Formulare, da muss man kein Recordset extra zuweisen, das macht ein gebundenes Formular automatisch.

Die DB schaue ich mir erst später an, ich muss jetzt weg.

Um welches Formular geht es denn (falls es mehr sind) ?
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 31, 2024, 16:35:31
Hallo Klaus,

also zunächst mal um das "Abgabe_Unterlagen" Formular
das hatte ursprünglich funktioniert (in meiner Spaghetti Originalversion)

Ich weiß nicht wann es verlorengegangen ist, da ich zwischendurch nicht darauf geachtet habe, aber in allen neueren Versionen wird das Formular nicht mehr ausgefüllt.

Die Idee war doch, mit einer Auswahl im Suchfeld "MandantenSuche" das Formular mit dem record des ausgewählten Mandanten zu füllen.
Die Sekretärin bearbeitet und speichert die Angaben mit dem Formular.

Das "Ordner_Liste Formular muss ich ja sowieso neu aufbauen, da sich die Felder geändert haben.

Den Aufruf des Berichts mit den Records nach Sachbearbeiter, habe ich in eine neues Formular "F_Sachbearbeiter_Unterlagen" gepackt.

Gruß
Armin
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Januar 31, 2024, 17:30:14
Hallo,
Du musst natürlich die richtigen Feldnamen verwenden.
Außerdem macht hier die Zuweisung eines Recordsets keinen Sinn.
Hier wäre es besser, einfach zu filtern (habe ich auch jetzt erst bemerkt). Außerdem ist die Mandant_Nummer eine Zahl und da darf man keine Hochkomma verwenden.
So reicht es:
Private Sub MandantenSuche_AfterUpdate()
    Me.Filter = "Mandant_Nummer_F = " & Me.MandantenSuche
    Me.FilterOn = True
End Sub

PS:
Ich werde zu der alten Version keine Hilfe mehr leisten.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Januar 31, 2024, 18:16:06
Vielen Dank Klaus,

das Ding stresst mich total, ich sehe oft den Wald vor lauter Bäumen nicht...

ich mache auch Schluss für heute und gehe es morgen mit frischem Kopf nochmal an.

Nein, die alte Version würde ich dir sicher nicht zumuten... :D

Viele Grüße
Armin
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Februar 01, 2024, 08:24:05
Guten Morgen Klaus,

vielen Dank für deine Geduld.

Ich habe die Felder für Jahr, Quartal und Monat aus den jeweiligen Abfragen "JahrAbfrage", QUartalABfrage, etc. in das Formular "Abgabe_Unterlagen" eingefügt.

Das funktioniert aber nicht richtig. Ich muss alle 3 Felder füllen, sonst bekomme ich die Fehlermeldung:
"Der Datensatz kann nicht hinzugefügt oder geändert werden, da ein Datensatz in der Tabelle "MonQuartJahr" mit diesem Datensatz in Beziehung stehen muss"

Ich bin mir nicht sicher wie ich die Beziehung aufbauen muss.
Muss ich FS für alle 3 Felder vergeben ?

Gruß
Armin

Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: MzKlMu am Februar 01, 2024, 09:00:58
Hallo,
ich würde diese Tabelle nicht mit in die Beziehungen aufnehmen sondern nur als Nachschlagetabelle nutzen. Hatte ich glaube ich auch bei mir nicht drin. Kann gerade nicht nachschauen.

Anmerkung:
Zitat"Der Datensatz kann nicht hinzugefügt oder geändert werden ....
Mal eine Erklärung zu dieser Fehlermeldung. Wenn man in Access ein Zahlen(Schlüssel)feld anlegt, so wird der Standardwert automatisch mit einer 0 vorbelegt. Was kompletter Unsinn ist, denn den Fremdschlüssel 0 gibt es ja nicht in der Haupttabelle. Durch die eingestellte RI führt das dann zu dieser Fehlermeldung. Daher sollte man immer drandenken und beim Anlegen des Feldes den Standardwert rausnehmen (keinen Eintrag).
Du siehst, auch die Automatiken von Access sind in Frage zu stellen.

Aber wie gesagt, hier ausnahmsweise keine Beziehung erstellen.
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Februar 02, 2024, 16:08:55
ja super Klaus,

das war's, vielen Dank.

Mühsam nährt sich das Eichhörnchen, ich hoffe ich kann das Projekt bald zu Ende bringen...

Viele Grüße
Banyan
Titel: Re: Übernahme eines Wertes im Formular
Beitrag von: Banyan am Februar 05, 2024, 14:01:57
Hallo Klaus,

ich denke ich bin fast fertig...
2 Probleme habe ich noch nicht lösen können,

- Beim Zurückspringen in das Mandantensuchfeld, auf den ersten MandantenNamen zurücksetzen und anzeigen
- beim Bericht drucken eine Meldung anzeigen, wenn noch kein Eintrag für den Sachbearbeiter verfügbar ist

könntest du mir hierbei bitte noch helfen ?

Viele Grüße
Armin