Keuzelijsten linken in Subformulier

Status
Niet open voor verdere reacties.

ralluv

Gebruiker
Lid geworden
8 feb 2008
Berichten
68
Ik zit weer eens gigantisch vast in mijn database en daarom kom ik weer eens aan jullie hulp vragen! Ik kan keuzelijsten linken in een gewoon formulier, dit doe ik door hetvolgende te doen:

2 keuzelijsten maken 1 = category (genaamd: vak2), 2 = product(genaamd: vak 3)

De Category keuzelijst is gebaseerd op:
SELECT [tblCategories].ID, [tblCategories].Category FROM tblCategories ORDER BY [Category];

De product keuzelijst is gebaseerd op:
SELECT Products.Product_id, Products.ProductName, Products.Category_id FROM Products WHERE (((Products.Category_id)=[Forms]![OrderDetails]![Vak2]));

Verder heb ik in de Afterupdate van Catergory (Vak2) gezet:

Private Sub Vak2_AfterUpdate()
Me.Vak3 = Null
Me.Vak3.Requery
Me.Vak3 = Me.Vak3.ItemData(0)
End Sub

Dit zorgt ervoor dat je steeds opnieuw kunt kiezen en hij niet bleeft hangen.

Alleen nu het probleem! Als ik deze als subformulier gebruik werkt het niet!! Dan geeft hij een fout in het selecteren van de 2e keuzelijst. In het deel van:
WHERE (((Products.Category_id)=[Forms]![OrderDetails]![Vak2]));

Wie o Wie kan mij aub helpen!!?? Bedankt alvast!!
 
Hoi Ralluv ,

Een voorbeeldje indien mogelijk zou makkelijk zijn
Groet
Romain
 
Uhmm wat bedoel je precies met voorbeeld :o .. Mijn codes heb ik toch als voorbeeld gegeven..
Ik moet dus een manier zien te vinden om mijn subformulier dezelfde berwerkingen te laten doen, als dat het een gewoon formulier is en het wel gewoon werkt (het koppelen van de 2 keuzelijsten).
Want omdat het nu een subformulier geworden is werkt de code niet meer die ervoor zorgt dat de 2 keuzelijsten gekoppeld worden.. dankje
 
Hoi Ralluv,

Bedoelde daarmee een voorbeeld database bestandje gewinzip.

Zomaar iets uit de mouw schudden is niet altijd zo eenvoudig , terwijl je met de database een betere kijk op de zaak hebt.

GRoet
Romain
 
hmm vrij vervelend ik krijg hem niet kleiner gecomprimeerd dan 148 kb, wat dus te groot is om te posten :(
 
Hoi Rallluv ,

In je subform bij de combox productname klopt inderdaad je Where criteria niet.

Vermits je met een subform in je hoofdform zit dient dit het volgende te worden

Code:
WHERE (((Products.Category_id)=[Forms]![Orders]![OrderDetails]![Vak2]))

Probeer de volgende keer een gestripte versie up te loaden .
Sommige data in een database kunnen geveoelig liggen .
En je database wordt er ook een stuk kleiner door.;)

Hopelijk geraak je verder , anders laat maar weten

Groet
Romain
 
jaaaaa heeeeel erg bedankt! Je weet niet half hoe blij je me hier mee hebt gemaakt!
TNX!!!:thumb:
 
:o ow toch nog even een klein vraagje, als ik nu dus een keuze maak en vervolgens naar de 2e of 3e ga dan komt de vorige productnaam blank te staan... Ik heb dit namelijk wel nodig voorals ik het als rapport wil uitprinten.. alvast bedankt :)
 
Hoi ralluv

Probber eens met in je vak2 after update volgende code te zetten
Code:
Private Sub Vak2_AfterUpdate()
Dim StrSql As String

StrSql = "SELECT Products.Product_id, Products.ProductName, Products.Category_id, Products.Unitprice "
StrSql = StrSql & "FROM Products "
StrSql = StrSql & "WHERE(Products.Category_id)=" & Me.Vak2

Me.Vak3.RowSource = StrSql
Vak3.Requery

End Sub

En als je dubbel klik op je combobox Vak3 (Productname) zet daar in de Row sourcebij eigenschappen
Code:
SELECT Products.Product_id, Products.ProductName, Products.Category_id, Products.QuantityPerUnit FROM Products;

dan zou het wel moeten werken zoals ik kan zien

Groet
Romain
 
Laatst bewerkt:
Ik heb mijn eigen after update van vak2 dus vervangen met de code van jou.

Vervolgens ook de Rowsource het eerste stuk aangepast, maar helaas.. hij blijft de productnamen erboven blank weergeven zodra ik naar de volgende ga. De rest blijft overigens wel staan... Heel raar
 
Heel raar, als ik vervolgens hetzelfde als jij hebt gemaakt in de mijne kopieer, blijf ik met het probleem kampen, als ik jou versie gebruik doet hij het wel. Ik denk dat het ermee te maken heeft dat ik bij de mijne de prijs gekoppeld heb aan de productname, want die blijft immers wel staan bij mij en bij jou versie is die niet gekoppeld.. In ieder geval heel erg bedankt! echt top
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan