Recordset

Status
Niet open voor verdere reacties.

oosterbaan S S

Gebruiker
Lid geworden
13 mrt 2005
Berichten
128
Hallo

Een formulier wordt via een dialoogvenster, waarin de begin- en einddatum moet worden ingevoerd van de recordset, geopend.
In dit formulier bevind zich een keuzelijst die als een zoeklijst is ingesteld. Hiermee kunnen records in het formulier worden gevonden.

Het vba –na bijwerken- ziet er zo uit:

Dim rs As Object

Set rs = Me.Recordset.Clone
rs.FindFirst "[Ordernaam] = '" & Me![Keuzelijst met invoervak295] & "'"
If rs.NoMatch Then
msgbox "Geen gegevens gevonden. Project bevindt zich in een afwijkend jaar dan de huidige recordset!" _
& vbCrLf & "Sluit het formulier af en bepaal de correcte periode via het dialoogvenster!", vbInformation, "naam"
Else
Me.Bookmark = rs.Bookmark
End If
Set rs = Nothing

Zoals hierboven is weergegeven geeft de recordset alle records weer in de keuzelijst en niet de recordset die is bepaald via het dialoogvenster van het formulier.
Nu heb ik geprobeerd om de query, die is verbonden met het dialoogvenster, ook te gebruiken voor de keuzelijst, maar dan krijg ik de meldingen dat ik de begin- en einddatum moet invoeren (wat natuurlijk logisch is). Dat is dus niet de bedoeling.

Hoe krijg ik het nu voorelkaar dat de keuze(zoek)lijst dezelfde recordset ontvangt als de recordset van het betreffende formulier.
 
De reden dat je nog geen reactie hebt ontvangen is waarschijnlijk dat je je mdb niet hebt bijgesloten.
Hierdoor is het lastig om een oplossing te geven die in jouw geval zal werken.
 
Beste Bartuls

Dank voor je reactie
Ik heb de db bijgevoegd.
Om de database binnen de perken te houden v.w.b. de grootte heb ik het dialoogvenster weggelaten.
Als je het formulier1 opent, moet de begin en eind (lever)datum van de recordset opgegeven worden.
Voer je bijv. 1-1-07 als begindatum en 31-12-07 als einddatum dan worden de records voor die periode ingeladen.
In het zoekveld staan echter ALLE records, dus ook die van 2008.Logisch want dit zoekveld is gekoppeld aan de qry Orders en niet aan de qry orders_dialoog waaraan het dialoogvenster is gekoppeld

Ik zou graag willen dat de records van de recordset ook geldt voor de getoonde records in het zoekveld.

Dank voor je moeite
 

Bijlagen

Dat kun je bij het openen van het formulier doen.
Je kent de Recordsetclone al.
Je kunt met behulp van de functies dMax() en dMin() de maximum en minimum datum in de recordsetclone ophalen. Die gebruik je om een SQL statement voor je combobox te componeren. M.b.v. de whereclausule van de SQL statement kun je zorgen dat alleen de gewenste range in de combobox komt.
Voordat je je formulier zichtbaar maakt vervang je dan even het SQL statement van de combobox en doe je een requery op de combobox.
 
Beste Bartuls,

Dank voor je snelle reactie. Je aangedragen oplossing zal ongetwijfeld voor de kenner een 'eitje' zijn om in de database aan te passen, maar voor mij nog niet zo eenvoudig :o

Ik weet van dit forum dat het de bedoeling is dat de leden -op weg worden geholpen- en daarna het zo veel mogelijk zelf moeten uitproberen, maar zou je een uitzondering willen maken en in de bijgevoegde db de aanpassing kunnen doorvoeren?

Bedankt alvast:thumb:
 
Beste forumleden,
Om het nog wat duidelijker te maken heb ik een nieuwe db bijgevoegd, incl. dialoogvenster.
Starten met het formulier 'dialoogvenster orders' opent het 'formulier1' met de betreffende recordset.
Als je daarna- in het formulier1- de keuzelijst aanklikt, openen zich opnieuw twee dialoogvenster (voor de begin en einddatum) Daarna heeft ook deze keuzelijst de recordset.

Wat ik dus wil is dat het 'dialoogvenster orders' een gelijke recordset geeft voor het 'formulier1' EN voor de keuzelijst.

Ik ben erg benieuwd naar jullie oplossingen. Alvast bedankt:thumb:
 

Bijlagen

Hallo,

Na hulp van anderen ben ik er nu achtergekomen wat ik verkeerd heb gedaan:

Alle problemen komen doordat het dialoogvenster is opgemaakt als pop-up. en modaal .
Dit betekent dat je niet in een ander formulier kan werken voordat het dialoogvenster is gesloten.
Beide items op 'nee' gezet.
Verder de qry orders_dialoog toegevoegd aan de rijbron van de keuzelijst en het criterium die verwijst naar de begin- en einddatum van het dialoogvenster in de rijbron van de keuzelijst gezet.
Daarmee waren de problemen opgelost!

Allen hartelijk dank voor het meedenken:thumb:
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan