Toon posts:

[access/vb] bij nieuw record blijft subform leeg

Pagina: 1
Acties:

Verwijderd

Topicstarter
situatie
Ik ben bezig met een client/server applicatie voor filmreserveringen. Een klant kan een reservering plaatsen en van die reservering worden een aantal dingen opgeslagen
- klantid
- reserveringsid
- datum binnenkomst
- betaling in termijnen

Op het hoofdformulier staat een zoekfunctie, deze werkt alsvolgt: in txt_naam word de naam ingevuld. In lst_klant worden de resultaten weergegeven. Bij het selecteren van de juiste klant uit de listbox worden de gegevens van hem getoond (bovenstaande velden).

Het probleem was dat na selecteren van die klant de gegevens van die klant niet zichtbaar waren op het formulier. Dus heb ik een subform aangemaakt met de klantgegevens erin. Zodra je een klant selecteerd uit lst_klant worden zijn gegevens getoond in het subform (ID_KLANT = lst_klant).

probleem
Op het hoofdform staat een knop "toevoegen", deze knop is met de wizard gemaakt voor het toevoegen van een nieuw record. Het probleem is dat als ik op toevoegen klik, het subform leeg gemaakt wordt, hierdoor weet ik nog niet voor welke klant het is.

Ik heb wat dingen opgezocht en heb de volgende dingen geprobeerd:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub btn_toevoegen_Click()
On Error GoTo Err_btn_toevoegen_Click
    

    DoCmd.GoToRecord , , acNewRec
    
    Me.sfrm_klantgegevens_reservering.Form.RecordSource = "select id_klant, voorletters_klant, naam_klant, postcode_klant, woonplaats_klant from klantgegevens where id_klant =  " & lst_klant.Value    

Exit_btn_toevoegen_Click:
    Exit Sub

Err_btn_toevoegen_Click:
    MsgBox Err.Description
    Resume Exit_btn_toevoegen_Click
    
End Sub


Met bovenstaande oplossing probeer ik dus af te vangen dat het subform leeg komt te staan zodra ik een nieuw record wil toevoegen. Het werkt dus niet, hij blijft leeg. Heeft iemand een oplossing?

edit:

het gaat om de code van regel 7

[ Voor 3% gewijzigd door Verwijderd op 27-11-2005 16:03 ]


Verwijderd

Als je een nieuwe record toevoegd heeft dat nieuwe record nog geen gegevens van welke klant daarbij hoort. Het subform wordt dan ook logischerwijs leeg. Je zult dus minimaal het klantID moeten invoeren bij het record om wat informatie in het subform te krijgen.

Dus iets van

-Insert new record
-Lees geselecteerde klantnummer uit klantenlijst.
-Vul het klantnummer in, in het nieuwe record.

De vraag is dan nog even of Access dan ook gelijk het klantenrecord voor je opzoekt (ik verwacht van wel) Eigenlijk wil je dat liever niet op een Client Server systeem maar bij kleinere systemen is het meestal geen probleem. In feite houdt dat in dat je complete tabel dan lokaal beschikbaar is terwijl je slechts 1 record wilt zien. Nogal een verspilling van ruimte en als je veel records hebt een mega bottleneck.

Verwijderd

Topicstarter
Verwijderd schreef op zondag 27 november 2005 @ 16:41:
Als je een nieuwe record toevoegd heeft dat nieuwe record nog geen gegevens van welke klant daarbij hoort. Het subform wordt dan ook logischerwijs leeg. Je zult dus minimaal het klantID moeten invoeren bij het record om wat informatie in het subform te krijgen.
Ja, dat klopt. Vandaar dat ik de recordsource van het subform tijdelijk wil aanpassen dat in ieder geval op het subform de klantgegevens worden getoond. Alleen op bovenstaande manier wil dat niet lukken..