formulier openen met klantID

Status
Niet open voor verdere reacties.

maurann

Gebruiker
Lid geworden
22 jul 2007
Berichten
117
Beste forumleden,

Heb een tabel Klant met KlantID (en klantgegevens), een tabel Orders met OrderId ( + orderdatum en KlantId) en een tabel Orderdetails met OrderdetailID (met productgegevens en OrderId).
Een formulier is daarop gebaseerd. (Klant met Orders en Orderdetails)
Nu wil ik bij openen van dit formulier dat bij Klant steeds een specifieke klant is weergegeven.
Hoe doe ik dit?
Probeerde reeds volgende vba code te koppelen aan de gebeurtenis bij openen:
Private Sub Form_Open(Cancel As Integer)
Me.Klantnummer = 1869
End Sub

Maar VBA gaf te kennen geen waarde te kunnen toekennen aan dit object.

Andere ideeën?
 
Ik neem even aan dat je standaard wilt openen met klant 1869.

Makkelijke oplossing:
Je kunt je formulier baseren op een query (als dit al niet zo is).
Dan in de query bij de criteria van klantnummer 1869 invullen.
Nu opent het formulier standaard op klantnummer 1869.
 
De aanbeveling van Greenery werkt waarschijnlijk prima, maar verandert wel je bron query. Je aanpak om het via VBA te doen zou ik zelf waarschijnlijk dan ook toepassen.
Dit zou moeten werken:

Code:
Private Sub Form_Load()

    Me.FilterOn = True
    Me.Filter = " BestellingID=1869"

End Sub

Als je KlantID een tekstveld is, kun je de volgende aanpassing proberen:

Code:
    Me.Filter = " BestellingID='1869'"
 
Bedankt voor de reactie :thumb:

pastte code toe, en werkt wel maar niet zoals ik wil.
in formulier komen nu alle records in het subformulier die behoren tot klantId '1869'.
ik wil dat in het subformulier nieuwe records kunnen gemaakt worden als orderdetail in de tabel order op naam van klant '1869'.
dus infeite zou het subformulier leeg moeten blijven.
indien ik 'acnewrecord' in de code verwerk, komt een nieuw record maar zonder de klantgegevens van '1869'.
hoop dat ik duidelijk ben, anders zal ik eens een vb'tje maken.


M.
 
Met een voorbeeldje wordt het voor ons enk ik een stuk duidelijker... Je wilt dus in een subformulier records toevoegen op basis van een hoofdformulier waarbij één klantID is uitgefilterd?
In mijn ogen gaat dat voorbij aan de opzet van een hoofd-sub formulier constructie, waarbij je bladert op je hoofdformulier, en de records ziet van de geselcteerde klant. Als je maar één klant wilt zien, dan heb je geen hoofdformulier nodig, dan kan alles in je subformulier, toch?
Kortom: doe maar een db-tje...
 
Ik kan mij hier alleen maar bij aansluiten.
Geen hoofd- en subformulier, maar 1 formulier waarbij je klant(nr) invult en overige gegevens.
Het kan zijn dat je het klantnummer wilt overnemen uit een vorig formulier, maar dit is weer een ander verhaal.
 
Eén waar we uiteraard ook (een aantal?) oplossingen voor hebben...
 
Oké,

Ik snap dat ik
't idee van hoofd- en subformulier zal ik moeten loslaten.

Ik ontwikkel een nieuw formulier gebaseerd op een query
met daarin een vast klantnummmer.
Allicht kom ik dan voor nieuwe problemen, maar
als 't niet gaat stel ik een nieuwe vraag.

Bedankt voor de support.
Goeie avond.;)


M.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan