Listenfeld als Dropdown soll nach Auswahl ein neues Formular öffnen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Listenfeld als Dropdown soll nach Auswahl ein neues Formular öffnen

Re: Listenfeld als Dropdown soll nach Auswahl ein neues Formular öffnen

von F3K Total » Sa, 12.03.2016 17:23

Damit du etwas glücklicher wirst:
Mit diesem beiden Makros wird das entsprechende Formular geöffnet, die KundenID und die BereichsID übernommen.
Wenn du speichern drückst, werden die Bereichsdaten in die DB geschrieben, siehe Beispiel anbei.

Code: Alles auswählen

Sub Bereichsinformationen(Event)
    olst = event.source.model
    olst.Commit
    oFormKunde = olst.Parent
    if oFormKunde.isnew then oFormKunde.insertRow else oFormKunde.updateRow
    nKontakt_ID = oFormKunde.Columns.Kontakt_ID.getint()
    nBereich = oFormKunde.Columns.Bereich.getint()
    sBereich = olst.CurrentValue
    oFormDocuments = ThisDatabaseDocument.FormDocuments
    select case sBereich
    case "Sponsoring"
        oFormDocument = oFormDocuments.getbyName("Bereichsinformationen_Sponsoring").open
        S_Insert_Values(oFormDocument,nKontakt_ID,nBereich)
    case "Automeile"
        oFormDocument = oFormDocuments.getbyName("Bereichsinformationen_Automeile").open
        S_Insert_Values(oFormDocument,nKontakt_ID,nBereich)
    case "Markt am Teich"
        oFormDocument = oFormDocuments.getbyName("Bereichsinformationen_Markt_am_Teich").open
        S_Insert_Values(oFormDocument,nKontakt_ID,nBereich)
    end Select
End Sub

Sub S_Insert_Values(oFormDocument,nKontakt_ID,nBereich)
    oForm = oFormDocument.DrawPage.Forms.MainForm
    do
        wait 10
    loop until oForm.isloaded
    oForm.moveToInsertRow
    oForm.Columns.FK_ID_K.updateint(nKontakt_ID)
    oForm.Columns.FK_ID_B.updateint(nBereich)
end sub
Gruß R
Dateianhänge
Datenbank_Forum_2016.odb
(49.09 KiB) 106-mal heruntergeladen

Re: Listenfeld als Dropdown soll nach Auswahl ein neues Formular öffnen

von F3K Total » Sa, 12.03.2016 16:46

OK,
da du meine Fragen nicht beantwortest, hier exakt nur dass, was du wolltest, ein kurzes Makro.
Natürlich mußt du die Formulare
  • Bereichsinformationen_Automeile
  • Bereichsinformationen_Markt_am_Teich
erst noch anlegen.

Code: Alles auswählen

Sub Bereichsinformationen(Event)
    olst = event.source.model
    sBereich = olst.CurrentValue
    oFormDocuments = ThisDatabaseDocument.FormDocuments
    select case sBereich
        case "Sponsoring"
        oFormDocuments.getbyName("Bereichsinformationen_Sponsoring").open
        case "Automeile"
        oFormDocuments.getbyName("Bereichsinformationen_Automeile").open
        case "Markt am Teich"
        oFormDocuments.getbyName("Bereichsinformationen_Markt_am_Teich").open
    end Select
End Sub
Glücklich wirst du damit vermutlich nicht.
Gruß R
EDIT: Hatte (Event) in der ersten Code-Zeile vergessen, jetzt nachgetragen.

Re: Listenfeld als Dropdown soll nach Auswahl ein neues Formular öffnen

von Tobi_Frenker » Sa, 12.03.2016 16:18

Ich versuche mal so genau zu antworten wie möglich, fange aber hinten an
F3K Total hat geschrieben:was du am Ende "Herausbekommen" möchtest, was du verwalten willst?
:

Es soll im Prinzip eine Art Kundendatenbank sein - bezogen auf ein Stadtfest - alle Kontakte, die damit zu tun haben.

Jeder Kontakt wird einem Bereich zugeordnet (Sponsoring, Gewerbe, Automeile etc.)

In der Tabelle Bereichsinformationen werden alle Infos zu allen Bereichen abgelegt (Standgebühr, standfläche, Strom etc.)

Dann wollte ich einzelne Formulare für die jeweiligen Bereiche als Eingabeoberfläche anlegen mit den spezifischen Bereichsinformationen
(siehe Bereichsinformationen_Sponsoring)

mit dem Formular neuer Kontakt sollen die neuen "Kundendaten" dann eingeben werden - wenn ich mit dem Dropdown den Bereich auswähle soll sich das

darauf bezogene Eingabeformular öffnen und die eingegebenen Daten dann auch diesem Kontakt zugeordnet werden.

Warum das alles - ich möchte eine Oberfläche zur Eingabe haben, die alles soweit abdeckt und zuordnet.

Herausbekommen möchte ich nachher unterschiedliche Dinge, Abfragen wer sich in welchem Bereich bereits angemeldet hat, Summe aller Standgelder Gewerbe Summe aller Einnahmen gesamt - alle angemeldeten in Automeile etc.

Ich hoffe das ist verständlich

LG

Re: Listenfeld als Dropdown soll nach Auswahl ein neues Formular öffnen

von F3K Total » Sa, 12.03.2016 15:59

Also,
habe mir die Datei angesehen, ja, du bist Neuling. Was soll in der Tabelle Bereichsinformationen stehen?
Du hast überhaupt keinen Bezug zum jeweiligen Kontakt vorgesehen. Wenn du dort also irgendwelche Werte eingibst, weißt du später nicht, wer sie gegeben hat.
Das wichtigste beim Erstellen einer Datenbank, ist es, Tabellen so anzulegen dass die Daten, die du erfassen möchtest, nur ein einziges mal vorkommen, man spricht von Normalisierung. Das Fragment beinhaltet aber nicht alle Daten die du erfassen willst, ich sehe z.B. nirgends die Standfläche, Standgebühr usw.
Ausserdem erschließt sich mir nicht, was du am Ende "Herausbekommen" möchtest, was du verwalten willst?
Summe aller Einnahmen?
Vergabe aller möglichen Standflächen?
Bitte beschreibe den Prozeß den du durchführen möchtest, so exakt wie möglich.
Dazu gehört auch das du wenigsten zwei drei Zeilen ausfüllst, wenn auch mit Fake-Daten.
Kann ein Kontakt z.B. mehrere Standflächen "anmieten", oder gibt es je Kontakt nur eine?

Ich sehe nicht, dass du ein einziges Makro benötigst, läßt sich vermutlich alles mit einer geeigneten Tabellenstruktur auf einem Formular lösen.



Gruß R

Re: Listenfeld als Dropdown soll nach Auswahl ein neues Formular öffnen

von Tobi_Frenker » Sa, 12.03.2016 15:36

Hier einmal die Datei in abgespeckter und anonymisierter Form
Datenbank_Forum_2016.odb
(29.73 KiB) 111-mal heruntergeladen

Re: Listenfeld als Dropdown soll nach Auswahl ein neues Formular öffnen

von F3K Total » Sa, 12.03.2016 14:52

Wenn Du hier angemeldet bist, kannst Du sie beim Erstellen eines Beitrags unten anhängen, wenn nicht, verwende einen Filehoster wie z.B. Dropbox und verlinke die Datei.
Gruß R

Re: Listenfeld als Dropdown soll nach Auswahl ein neues Formular öffnen

von F3K Total » Sa, 12.03.2016 14:21

Hi,
stelle die Datei, ggf. verfremdet, zu Verfügung, dann wird Dir bestimmt geholfen.
Gruß R

Nach oben