Hallo,
ich habe eine DB mit beinahe 12 Formularen fertig gemacht.
Doch bei 4 von 12 wird mir das entsprechende Ergebnis nicht angezeigt.
Es sollte ja abhängig vom DropDown (Kombifeld) das Ergebnis anzeigen.
Es sind Hauptformulare mit Unterformulare.
Habe heute schon die letzten 4h nach dem Fehler gesucht, sehe ich aber nicht.
Darf ich jemanden meine DB senden (8MB)?
Es geht um diese Formulare (frmBenutzerZuTransaktion, frmRolleZuTransaktion, frmTransaktionZuBenutzer, frmTransaktionZuRolle) alle anderen gehen.
Das wäre sehr nett.
Dann kann ich baldmöglichst die Ergebnisse meinen Usern präsentieren.
Meldet euch bitte und sendet mir eure Mailadressen, damit ich euch die DB zusenden kann.
Danke.
Hallo,
warum lädst Du die DB nicht hier hoch?
Anonymisiert, komprimiert und gezippt.
Hallo MzKlMu,
habe jetzt die Abfragen und die Formulare mit den Ufos in meine Test-DB eingefügt.
So kannst Du es dir anschauen.
Merci.
Hallo,
wie ich Dir in der PN geschrieben habe, benötige ich das Access2003 Format (MDB).
Entweder konvertieren, oder warten.
Hallo Klaus,
konvertieren geht nicht, weil darin Features integriert sind, die in 2003 nicht verfügbar sind.
Bis wann warten?
Danke.
Hallo,
ZitatBis wann warten?
bis jemand anders schaut.
Schade, kann mir jemand anderer Helfen?
Hallo,
es gibt noch zu viele Benamsungs-Fehler. (Tabellennamen, Feldnamen, etc. ). Zudem ist die Vielfalt der Abfragen und Formulare nicht ergründbar und deren Sinn nicht verständlich.
Weiterhin befürchte ich, dass "tblGesamtliste" noch weitergehend normalisiert werden muss, wenn die DB ihre (vermutete) Aufgabe erfüllen soll.
(Tabelle tblTransaktion, tblBenutzerRollenTransaktionen, etc)
Hallo Franco,
gib doch bitte auch noch eine genaue Beschreibung dazu, wie man zu welchem Fehler kommt, dann schaue ich es mir gern an.
PS:
Du kannst auch gern zunächst noch die DB im Sinne von DF6GLs Hinweisen überarbeiten. ;-)
PPS:
Sorry, habe eben erst deine PN entdeckt.
Hallo!
Ich hab gesehen das tbdRollen als namen der tabelle steht und tblRollen parameter verlangt wird
ich nehme mal an wenn du das berichtigst und die qryBenutzerZuRolle, qryRolleZuBenutzer und qryTransaktionZuRolle über arbeitest dürfte das dann auch gehen
tbdRollen.R_Rollen = tblGesamtliste.BR_Rolle kann nicht in der entwurfsansicht dargestellt werden
SELECT DISTINCT tblGesamtliste.BR_Benutzer, tblGesamtliste.BR_Rolle, tbdRollen.R_Rollenbezeichnung
FROM tbdRollen INNER JOIN tblGesamtliste ON tbdRollen.R_Rollen = tblGesamtliste.BR_Rolle;
ich würde die unterformulare nicht frm sondern sfm nennen dann kannst du leichter zwichen haupt und unterformular unterscheiden
Gruß Frank
Hallo MaggieMay,
im frmBenutzerZuTransaktion habe ich im Kopf ein Dropdown, wähle dort meinen benutzer aus und in den Feldern unten sollte mir der ausgewählte Benutzer und die Transaktionen dazu im Ufo angezeigt werden.
Doch da passiert nichts.
im frmRolleZuTransaktion, frmTransaktionZuBenutzer und frmTransaktionZuRolle ist es das gleiche.
Also, wenn ich eine Lösung habe, kann man oder ich das auf die anderen übertragen.
Zur Normalisierung möchte ich das nicht unbedingt, weil ich aus dem SAP die Rollen und deren einzelnen Transaktionen bekomme. Und eine Gesamtliste macht es mir einfacher - ich hatte knapp 90 einzelne Rollen in eine Gesamtliste gepackt, damit ich nur eine Tabelle und keine 90 habe.
Habe gerade gesehen, dass noch ein Ufo in der Test-DB gefehlt hatte.
Jetzt ist die komplette DB hochgeladen.
@Frank77:
das kam durch das Copy&Paste aus meiner nicht anonymisierten DB. In meiner letzten Nachricht ist es generell korrigiert.
Trotzdem danke für den Hinweis.
Die Benennung der Ufos habe frm... genannt, weil es für mich auch ein Formular ist. Aber damit komme ich klar.
Hallo DF6GL & MaggieMay,
"Zudem ist die Vielfalt der Abfragen und Formulare nicht ergründbar und deren Sinn nicht verständlich."
Der Sinn besteht darin, dass die User immer wieder diese Fragen stellen, die ich durch die Formulare abgedeckt habe.
Das sind alle möglichen Kombinationen und zu jedem Formular benötige ich ein Ufo, wie du mir mal empfohlen hattest.
"Weiterhin befürchte ich, dass "tblGesamtliste" noch weitergehend normalisiert werden muss, wenn die DB ihre (vermutete) Aufgabe erfüllen soll."
(Tabelle tblTransaktion, tblBenutzerRollenTransaktionen = ist meine tblGesamtliste
Ich glaube fast auch dass ich mir alle Transaktionen aus meiner Gesamtliste in eine eigene Liste rausziehen muss und dann die Verknüpfungen analog den anderen machen muss.
Was glaubst ihr, wird das funktionieren?
Könnte das die Lösung sein?
Danke.
Hallo,
ZitatDer Sinn besteht darin, dass die User immer wieder diese Fragen stellen, die ich durch die Formulare abgedeckt habe.
Es ist ein falscher Weg, für jede Frage" ein eigenes Formular zu erstellen. Der bessere Weg wäre, über ein Kriterien-Formular (ein ungebundenes Form, in das alle möglichen Kriteriumswerte eingetragen werden können) entspr. Abfragen dynamisch zusammenzubauen und diese (so wie vorgesehen) in eine XLS-Datei oder Ähnliches zu exportieren und als Anhang zu versenden.
ZitatWas glaubst ihr, wird das funktionieren?
Eine durchgängig(!) normalisierte Tabellenkonstruktion ist die erforderliche Basis einer jeden richtig funktionierenden Datenbank...( siehe u. st. Links dazu in meiner Signatur.)
Hallo,
ZitatEs ist ein falscher Weg, für jede Frage" ein eigenes Formular zu erstellen. Der bessere Weg wäre, über ein Kriterien-Formular (ein ungebundenes Form, in das alle möglichen Kriteriumswerte eingetragen werden können) entspr. Abfragen dynamisch zusammenzubauen und diese (so wie vorgesehen) in eine XLS-Datei oder Ähnliches zu exportieren und als Anhang zu versenden.
ok, jetzt geht es doch über meine Fertigkeiten. Und wie mache ich das?
Gibt es dazu ein Beispiel anhand meiner DB?
ZitatEine durchgängig(!) normalisierte Tabellenkonstruktion ist die erforderliche Basis einer jeden richtig funktionierenden Datenbank...( siehe u. st. Links dazu in meiner Signatur.)
Habe jetzt für die Test-DB eine Tabelle mit den Transaktionen darin.
Somit hab ich diese in die Test-DB eingefügt. Vielleicht hilft das weiter mich
zum Ziel zu bringen.
Bitte erstellt mir die Lösung in die Test-DB entweder über die Vielzahl der Formulare oder eben die Version über das Kriterien-Formular.
Mein Ansatz ist am Schluss dann ein Startformular zu erstellen, worin ich einfach Buttons erstelle, die dann auf die anderen Formulare zeigen, damit die User nur eine Ansicht haben - das kann ich aber erst machen, wenn alle Formulare richtig funktionieren.
Hi,
Zitat
ok, jetzt geht es doch über meine Fertigkeiten. Und wie mache ich das?
du nimmst ein ungebundenes Formular und bedients dich Combo, list or text boxen in welche du die Kriterien eingibst bzw. auswaehlst.
Diese wiederrum hinterlegst du in den spezifischen Abfragen als Kriterium, hier aufpassen das auch mit leeren Feldern gearbeitet wird (wenn gewuenscht).
Das dann als Macro ablaufen lassen mit den weiteren Bedingungen wie "EMailDatabaseObject" versenden.
ZitatBitte erstellt mir die Lösung in die Test-DB entweder über die Vielzahl der Formulare oder eben die Version über das Kriterien-Formular.
Hier hat mir immer geholfen zu probieren und zu testen. Fertige Loesungen helfen sicher keinem weiter, ist zumindest meine Meinung.
Zum Thema Normalisierung, dieses ist ein schwieriges Feld und ich bin mir nicht sicher ob es einen perfekten Weg gibt. Aber durch viel probieren und testen habe ich einen fuer mich annehmbaren weg noch immer gefunden. Tipp dazu, zeichne dir deine angedachten Strukturen an ein Whiteboard oder halt auf ein stueck Papier, das hilft immens bei der Vorstellungskraft und man kann es leicht verbessern.
HB9876,
da gebe ich dir Recht, das mit dem probieren und lernen, doch stehe ich sehr unter Zeitdruck um Ergebnisse zu liefern. Und das ist mein erstes Access Projekt, das ich durchführe.
Ich nehme es ja als Beispiel um es in meine produktive DB zu überführen und nachzubauen.
Also wäre ich dafür sehr dankbar.
Hi,
du hast das Beispiel schon in deiner Datenbank.
Schau dir query "qryRollen2" als Beispiel an, hier ist das benoetigte Kriterium im field "BR_Benutzer".
Eventuell hat jemand anderes Zeit und Lust dir die Datenbank dementsprechend aufzubauen, ich bin aber leider auch kein Profi und benoetige dafuer zeit die ich nicht habe.
Wenn das Kriterium leer ist und alle Datensaetze geliefert werden sollen, schau hier:
http://www.donkarl.com/?FAQ3.14
Ist generell eine sehr gute Seite, dir mir auch in vielen Themen weiter hilft.
oh man, ich kapiers jetzt gar nicht mehr! :-[
je länger ich jetzt daran arbeiten umso mehr mach ich mir sogar meine
DB wieder kaputt!
Es vergehen, Stunden, Tage und ich komm einfach nicht weiter! Bin echt verzweifelt und in den Kopf geht auch einfach nix mehr.
Kann denn mir bitte niemand mit der Lösung im praktischen helfen?!?
Ich brauche doch nur die 4 fehlenden Formulare wie vorher beschrieben.
Danke für eure Mithilfe und tatkräftige Unterstützung!!!
Ich zähle auf euch in diesem Profi-Forum.
Merci
Hallo :)
ich hab mir die DB mal angeguckt...ich überspring mal die Posts von anderen und komm zum Problem
1. Makros sind Poo, VBA ist deine Antwort. "Nach Aktualisierung" vom Kombinationsfeld, Code-Generator (VBA), kein Makro mehr.
2. die Namen des Unterformulars müssen geändert werden, denn es ist Schwierig für VBA das - Zeichen als solches zu erkennen. Für Ihn ist es keine Zeichenfolge.
3. Ändern von Namen des Unterformulars IM HAUPTFORMULAR (nicht die Bezeichnung oder die Beschriftung, sondern wirklich den NAMEN auch nicht vergessen, sonst gibt er die Fehlermeldung, dass das Unterformular nicht angesprochen werden kann
4. ich hab die Datenbank hochgeladen. Ich hab nur das Formular "frmTransaktionZuBenutzer" und das dazugehörige Unterformular angepasst. Er gibt aber eine Fehlermeldung zum Aufbau. D.h. Irgendwo in den Beziehungen ist bei dir wohl was falsch gelaufen. Das musst du nochmal überprüfen
EDIT:
Ich hab den Fehler in deinen Beziehungen gefunden. Du hast das Haupt-Formular und das Unterformular von deinen Abfragen abhängig gemacht, obwohl du diese Daten von der "Gesamtliste" abfragen konntest. Alle Werte, die du brauchst, sind dort doch schon vorhanden. Wozu baust du denn jedes mal eine Abfrage?
Die Beziehungen hast du im Hintergrund doch schon definiert, du brauchst die dann nicht nochmal in jeder Abfrage abzufragen.
Hab die Datenbank mit den entsprechenden Änderungen hochgeladen.
Hallo,
mit dem Forumswechsel machst Du Dir keine Freunde, weder hier noch in dem anderen Forum. Das ist verpönt und verstößt gegen die Regeln.
Außerdem fängt das Spiel mit exakt den gleichen Fragen und Hinweisen im anderen Forum auch so an.
In den Access Foren findest Du fast überall die gleichen Leute.
Wie schon öfters gesagt, stehe ich ein wenig unter Zeitdruck und möchte endlich die Aufgabe erledigen.
Finde es persönlich nicht schlimm, die gleiche Frage nochmals zu stellen. Das Ziel ist einfach, mehre
Experten zu erreichen, damit ich schneller an die Lösung bekomme.
Offizielle Entschuldigung an dieser Stelle an alle.
Zitat von: MzKlMu am März 04, 2015, 16:52:45
Hallo,
mit dem Forumswechsel machst Du Dir keine Freunde, weder hier noch in dem anderen Forum. Das ist verpönt und verstößt gegen die Regeln.
Außerdem fängt das Spiel mit exakt den gleichen Fragen und Hinweisen im anderen Forum auch so an.
In den Access Foren findest Du fast überall die gleichen Leute.
Du hattest aber doch bereits einen Lösungsvorschlag erhalten bevor du den neuen Thread eröffnet hast!
Hast du dir das mal angeschaut? Sind deine Probleme damit gelöst?
Hallo Nadeshiko,
danke für die Hilfe, werde mir deine Lösung gleich anschauen.
Grüße
Franco
Hallo Franco,
Zitatim frmBenutzerZuTransaktion habe ich im Kopf ein Dropdown, wähle dort meinen benutzer aus und in den Feldern unten sollte mir der ausgewählte Benutzer und die Transaktionen dazu im Ufo angezeigt werden.
Verknüpfungen sollten prinzipiell über die Datensatz-IDs stattfinden, nicht über Namen oder sonstige möglicherweise nicht eindeutige Texte.
ZitatDoch da passiert nichts.
Das liegt daran, dass die Datenquelle des Formulars das Datenfeld "B_VollstaendigerName" gar nicht enthält, also kannst du auch nicht danach filtern.
Besser wäre:
- allen Tabellen eine eindeutige Autowert-ID als Primärschlüssel zu geben
- Kombifelder stets mehrspaltig anzulegen, mit der ID als gebundene Spalte und dem Text als sichtbare Spalte, gesteuert wird das über die Spaltenbreiten des Kombifeldes
Das Hauptformular braucht in dem Fall keine eigene Datenquelle, und auch keine Textfelder - oder was hast du dir dabei gedacht?
Versuche mal, diese Tipps umzusetzen, dann sehen wir weiter.
Nachtrag:
Die Test-DB von Nadeshiko ist "mit Vorsicht zu genießen".
Ein grober Fehler ist dieser Code:
'der Rest an textfeldern zuordnen
Me!BR_Transaktionscode = Me!Kombinationsfeld10
Me!B_VollstaendigerName = DLookup("[BR_Benutzer]", "tblGesamtliste", "[BR_Transaktionscode] ='" & Me!BR_Transaktionscode & "'")
da hiermit der (zufällig) aktuelle Datensatz des (unnötigerweise) gebundenen Hauptformulars geändert wird.
So geht Filtern nicht!
Hallo Maggie May,
eine Frage fuer mein Verstaendnis.
Zitat'der Rest an textfeldern zuordnen
Me!BR_Transaktionscode = Me!Kombinationsfeld10
Me!B_VollstaendigerName = DLookup("[BR_Benutzer]", "tblGesamtliste", "[BR_Transaktionscode] ='" & Me!BR_Transaktionscode & "'")
wodurch wird hier der Datensatz geaendert?
Liegt das an der DLookup?
Danke fuer deine Erklaerung im voraus
@MaggyMay
:-[ uups, wollte halt schnelle Lösung mit Filtern präsentieren und mich mit den Textfeldern nicht befassen.
Wäre mir bestimmt eingefallen, wenn ich mehr Zeit hätte und ich einfach das ganze mehr getestet hätte.
Ist tatsächlich so, da das Hauptformular auf die Gesamtliste verweist.
Eigentlich müsste man dann die ID des Ergebnisses des Filters zugreifen und auf den Datensatz springen..ODER die Felder komplett ungebunden machen, dass die nur Daten ausgeben, keine Daten übergeben.
@MaggieMay,
@Nadeshiko,
der Code verursachte, dass Datensätze in meiner Tabelle geändert wurden und somit das Ergebnis verfälscht wurde.
Zur Anmerkung, dass ich in der tblBenutzer eine Spalte ID als Primärschlüssel einfüge
und ich dann die referentielle Integrität und die Verknüpfung zw. der Tabelle Gesamtliste (BR_benutzer) und B_VollstaendigerName aus der tblBenutzer erstellen will, kommt die Meldung - "es wurde kein eindeutiger Index für das in Beziehungen stehende Feld der Primärtabelle".
Jetzt stehe ich genau da, wo ich gestern war. Könntest du es bitte anpassen und mir zusenden?
Grüße Franco
Hallo,
eine Frage, was wird eigentlich bei diesem Formular erreicht? Soll im Formular eine Transaktion ausgewählt werden und danach ein anderer Benutzer? Das alles in Gesamttabelle?
VG
Hi,
ich habe verschiedene Fälle, die abgefragt werden soll.
Es soll erreicht werden, dass ich einen Benutzer auswähle und mir dann die dazugehörigen Transaktionen angezeigt werden. (1.Fall fertig zu machen- frmBenuzterZuTransaktion).
2.Fall:
RolleZuTransaktion - Rolle soll ausgewählt werden und dann die dazugehörigen Transaktionen ausgegeben.
3.Fall:
TransaktionZuBenutzer - Transaktion soll ausgewählt werden und dann die dazugehörigen Benutzer ausgegeben.
4.Fall:
TransaktionZuRolle - Transaktion soll ausgewählt werden und dann die dazugehörigen Rollen ausgegeben.
Das ist alles was ich brauche - um die Buttons versenden usw. kümmere ich mich.
Danke.
Hallo,
also nochmals...ich bin nur auf frmTransaktionZuBenutzer eingegangen:
Was soll der denn in den Textfeldern ausgeben?
Du hast z.B.
Transaktionscode
Z_DB03
einmal Benutzer
Claudia Altenaeh
und dann ein weiteres mal
Lisa Knocher
Das Formular weiss nun nicht, welchen Benutzer er ausgeben soll, weil du nur den Transaktionscode zuweist, er aber mehrere Benutzer ausspucken muss...obwohl er nur ein Feld hat (deswegen die Fehlermeldung wegen Index).
Hallo,
Zitat von: HB9876 am März 05, 2015, 01:22:24wodurch wird hier der Datensatz geaendert?
Liegt das an der DLookup?
der Datensatz wird schlicht und einfach durch die Zuweisung zu den gebundenen Textfeldern geändert.
Zitat von: Francolino am März 05, 2015, 09:40:47Zur Anmerkung, dass ich in der tblBenutzer eine Spalte ID als Primärschlüssel einfüge
und ich dann die referentielle Integrität und die Verknüpfung zw. der Tabelle Gesamtliste (BR_benutzer) und B_VollstaendigerName aus der tblBenutzer erstellen will, kommt die Meldung - "es wurde kein eindeutiger Index für das in Beziehungen stehende Feld der Primärtabelle".
Wenn man der Meldung Beachtung schenkt könnte man drauf kommen, dass zu einer Beziehung zwei gleichartige Datenfelder benötigt werden. Auf der einen Seite steht der neue, eindeutige Autowert-Primärschlüssel und auf der anderen Seite der Fremdschlüssel als Long Integer Zahl. Hier ist also auf beiden Seiten eine Tabellenerweiterung und die anschließende Aktualisierung der referenzierenden Tabelle erforderlich.
Hi,
Zitat von: Nadeshiko am März 05, 2015, 10:58:49Das Formular weiss nun nicht, welchen Benutzer er ausgeben soll
das Hauptformular sollte wohl gar keine Daten anzeigen (-> Datensatzquelle entfernen), sondern die zur Transaktion zugeordneten Benutzer sollten im Unterformular angezeigt werden. Dazu kann man das Unterformular über den gemeinsamen Key mit dem Kombifeld verknüpfen.
@Francolino:
Ich denke, wenn du erstmal eins dieser Formulare in den Griff bekommen hast, sollte die Anpassung der anderen kein Problem mehr sein.
Konzentrieren wir uns also erstmal auf das "frmTransaktionZuBenutzer".
An welchem Punkt stehst du momentan, welches Problem gibt es da noch?
::) na dann... ich hoffe ich hab es nun richtig verstanden---
Viele Grüße
Hallo,
1. ist das Hauptformular immer noch gebunden, was ich bereits als Fehler bemängelt habe und
2. ist der ganze Code überflüssig, wenn man das Ufo über das Kombifeld verknüpft.
Im Anhang wäre mein Vorschlag.
Franco, sag doch bitte mal ob ich damit auf dem richtigen Weg bin und was dann noch fehlt bzw. was anders gelöst werden soll.
Es geht erstmal nur um frmBenutzer (-> Benutzer-zu-Rollen und Benutzer-zu-Transaktionen) und frmRollen (-> Rolle-zu-Benutzer und Rolle-zu-Transaktionen).
Hi Nadeshiko,
dein Ansatz mit den Transaktionen zu Benutzern gefällt mir. Auch dass die Bezeichnung darin enthalten ist.
Das Feld (Dropdown) Name würde ich aus der Anzeige rausnehmen - ist ja dann im Ufo.
Aber weshalb das Coding im Button zum Senden? Bei den anderen Fällen wird das auch nicht benötigt.
Apropos - sorry - hatte ich gestern Abend nicht gesehen, weil ich keine Email
Benachrichtigung bekommen habe.
Hi MaggieMay,
dein Ansatz gefällt mir gut.
Ich möchte/ soll halt davor ein Startformular setzen, mit dem gleich Access gestartet wird - das geht ja über die Optionen für diese Datenbank.
Nur fürchte ich, dass meine User gleich die verschiedenen Fälle sehen wollen und bewusst dann drauf klicken wollen, was sie haben möchten.
Im Fall der Rollen, wählen die User erst eine Rolle aus, dann einen Benutzer in einer Zeile und bei Benutzer-Transkationen werden gleich die Transaktionen zum Benutzer angezeigt.
Ist von der Idee her super - aber ich befürchte, dass das für meine User zu umständlich ist, bzw. es für sie zu kompliziert sein wird. (ich muss vom größten DAU ausgehen). Bei den Rollen werden mir halt noch nicht alle Transaktionen dazu ausgegeben, doch schon, aber auch doppelte Werte.
Könntest du mir dann noch die drei Einzel-Fälle mit frmRolleZuTransaktion,
frmTransaktionZuBenutzer & frmTransaktionZuRolle fertig machen?
Bitte versteh mich nicht falsch - es war bestimmt einiges an Arbeit - doch das werden mir die User nicht akzeptieren und abnehmen.
P.S.: Habe es gestern Abend leider nicht gesehen, weil ich keine Email Benachrichtigung bekommen habe.
LG Franco
Hi,
das Startformular kann man nachträglich immer noch hinzufügen, dass ist ja kein Problem. Den Rest verstehe ich nicht ganz. Was gibt es übersichtlicheres und selbsterklärenderes als ein Formular mit Registerkarten, also quasi ein Navigationsformular?
Im Formular frmBenutzer bspw. wählst du einen Benutzer aus und kannst die Benutzerdaten sehen. Dazu die Rollen und mit einem Klick die Transaktionen zu der ausgewählten Rolle und mit einem weiteren Klick alle Transaktionen zum Benutzer.
Das Formular frmRollen ist analog aufgebaut, also Rolle -> Benutzer -> Transaktion zu Benutzer und Rolle -> alle Transaktionen zur Rolle.
ZitatBei den Rollen werden mir halt noch nicht alle Transaktionen dazu ausgegeben, doch schon, aber auch doppelte Werte
Dann sind das aber unterschiedliche Benutzer. Das könnte man bei Bedarf noch komprimieren und die Benutzer weglassen.
Was das betrifft:
ZitatKönntest du mir dann noch die drei Einzel-Fälle mit frmRolleZuTransaktion,
frmTransaktionZuBenutzer & frmTransaktionZuRolle fertig machen?
so hast du doch inzwischen genug Anschauungsmaterial erhalten um zu verstehen, wie (bzw. dass!) man Haupt und Unterformular miteinander
verknüpfen muss, um die gewünschten Ergebnisse zu bekommen.
1. frmRolleZuTransaktion:
Datensatzquelle HF = tblRollen
Datensatzquelle UF = tblGesamtliste
2. frmTransaktionZuBenutzer:
Datensatzquelle HF = tblGesamtliste
Datensatzquelle UF = tblBenutzer
3. frmTransaktionZuRolle:
Datensatzquelle HF = tblGesamtliste
Datensatzquelle UF = tblRollen
Verknüpft wird jeweils über den gemeinsamen Key.
Nachtrag:
Im Grunde brauchst du auch noch eine Tabelle mit den Transaktionscodes. Oder ist "Gesamtliste" etwas, das regelmäßig aus SAP importiert wird?
Hallo MaggieMay & Nadeshiko,
ich habe mich an der TestDBv3 orientiert, weil die für mich einfacher zu verstehen und zu übertragen war.
Das Formular frmTransaktionZuRolle habe ich geschafft. :)
Aber bei den beiden letzten (frmBenutzerZuTransaktion & frmRolleZuTransaktion) komme ich nicht auf den Fehler. :(
Habe es auch so versucht, wie du (MaggieMay) es versucht hast, mir zu übermitteln aber da hast du noch ein weiteres Feld B_ID eingefügt. Da bin ich nicht dahintergestiegen. Das muss doch auch ohne gehen. ???
Kann sich das jemand bitte anschauen und korrigieren?
LG Franco
Hallo Franco,
wie oft muss ich denn noch darauf hinweisen, dass die Formulare miteinander verknüpft werden müssen?!
Dazu gibt es die Eigenschaften "Verknüpfen von" und "Verknüpfen nach" im Register "Daten" des Unterformular-Steuerelements.
Hallo MaggieMay,
habe dir gerade meinen letzten Stand gesendet. Die Formulare habe ich nun endlich hinbekommen. Hatte da ein paar mal einen Denkfehler ;-)
Im Formular frmBenutzerZurRolle wollte ich es hin bekommen,
dass alle Felder beim Aufruf erst mal alle nichts anzeigen.
Ich hatte diese beiden Befehle gefunden - doch die tun nicht, das was ich will.
Dim ctl As Control
For Each ctl In Me.Controls
If ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Then
ctl = Null
End If
Next ctl
Me!B_VollstaendigerName = Null
Und die Buttons ,,Mail" in den Formularen frmBenutzerZuTransaktion, frmRolleZuTransaktion, frmTransaktionZuBenutzer und frmTransaktionZuRolle spucken eine Fehlermeldung aus, dass die zuviele Daten hätten, obwohl der Button gleich ist wie beim frmBenutzerZuRolle und da klappt's.
LG Franco
Hallo,
Zitatdass alle Felder beim Aufruf erst mal alle nichts anzeigen.
dazu genügt es zu einem neuen leeren Datensatz zu gehen, oder das Formular im Eingabemodus zu öffnen. Der von Dir gezeigte Code ist unbrauchbar, denn er löscht/leert ja bestehende Datensätze (bzw. Felder) und das willst Du ja sicher nicht.
Wobei ich jetzt angenommen habe, dass Du gebundene Formulare verwendest. Die DB kann ich mir nicht ansehen, da ACCDB.
war das richtige Schlagwort...
um einen leeren Datensatz beim Formularöffnen anzeigen zu lassenhab ich das so gemacht.
Habe das Formularereignis "Beim Öffnen" ausgewählt, habe auf die drei Punkte am Zeilenende geklickt [Ereignisprozedur].
Hab folgenden folgenden Code verwendet:
Private Sub Form_Open(Cancel As Integer)
DoCmd.GoToRecord acDataForm, "Formularbezeichnung", acNewRec
End Sub
"Formularbezeichnung" natürlich durch meinen Formularnamen ersetzten.
Damit hat es geklappt.
Muss mich jetzt nur noch darum kümmern, dass die ausgewählten Datensätze als Anhang in eine Mail gepackt werden.
Und ja, ich verwende ungebundene Formulare verwende.
Hallo,
ZitatUnd ja, ich verwende ungebundene Formulare verwende.
wirklich ungebunden ?
Oder nicht doch gebunden ?
ZitatUnd ja, ich verwende ungebundene Formulare verwende.
wirklich ungebunden ?
Oder nicht doch gebunden ?
[/quote]
Ne, wir ich in der Entwurfsansicht sehe -
ungebunden.
Hallo,
Zitatwir ich in der Entwurfsansicht sehe - ungebunden
wo siehst du das?
Natürlich sind die Formulare gebunden, wie sonst könntest du auf einen neuen Datensatz springen wollen, damit beim Öffnen nichts angezeigt wird?!
DoCmd.GoToRecord acDataForm, "Formularbezeichnung", acNewRecAlternative (ohne Formularname):
DoCmd.RunCommand acCmdRecordsGotoNewOder einfach:
DoCmd.GoToRecord , , acNewRecWas das Mailproblem betrifft, so schau dir die Abfragen einmal genauer an, die du exportieren willst.
Und noch ein Tipp:
Kompiliere den Code ehe du ihn testest.