Asger Blond
ab-mi at post3.tele.dk
Sun Jul 20 19:32:32 CDT 2008
Arthur,
Just strikes me:
Did you make sure that the queries for your combos (SitesByName_qs and
SitesByNumber_qs) SELECT ALL COLUMNS AVAILABLE ON YOUR FORM?
If not so, then doing a FBF with a condition on a column, which is not
present in the combo's rowsource, will not filter the combo.
Asger
-----Oprindelig meddelelse-----
Fra: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] På vegne af Asger Blond
Sendt: 21. juli 2008 01:41
Til: 'Access Developers discussion and problem solving'
Emne: Re: [AccessD] Puzzling query behavior
Hi Arthur,
I'm baffled too. Just tested your code and it's working perfectly for me:
the combo is reflecting the current FBF-values, not the original values. I
then commented out your requerying-statement, which to my knowledge is
superfluous: it sure is - same result.
I suspect some code elsewhere in your app is resetting the combo's rowsource
to its design-time value.
If you want, send me the db offlist and I'll have a look.
Asger
-----Oprindelig meddelelse-----
Fra: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] På vegne af Arthur Fuller
Sendt: 20. juli 2008 19:29
Til: Access Developers discussion and problem solving
Emne: [AccessD] Puzzling query behavior
I have some code used to do Filter By Form. It code from ADH. It makes a
copy of the form in question, adding a QBF suffx to it. You a button on your
orignal form to open the QBF form, which then lets build up a filter
expression and passes it back to your original form.
So far, so good. The problem is that there are a pair of combo boxes on the
original form which let the user move throw the records using the seach
combos.
Here's the problem. Although there is a new filter on the form, these combos
still relect the whole recordset. I have tried various things without
success. It's very puzzling.
<code>
With Me
If .Filter <> "" Then
Dim strSQL1 As String, strSQL2 As String
strSQL1 = "SELECT * FROM SitesByName_qs WHERE " & .Filter
strSQL2 = "SELECT * FROM SitesByNumber_qs WHERE " & ...Filter
Debug.Print strSQL1
Debug.Print strSQL2
.SiteByName_finder_cbo.RowSource = strSQL1
Debug.Print "Row source is now: " &
.SiteByName_finder_cbo.RowSource
.SiteNumber_finder_cbo.RowSource = strSQL2
Debug.Print "Row source is Now: " &
.SiteNumber_finder_cbo.RowSource
.SiteByName_finder_cbo.Requery
.SiteNumber_finder_cbo.Requery
End If
.Requery
End With
-- in the debug I see what I expect, such as
SELECT * FROM SitesByName_qs WHERE (([SiteCity] LIKE "Toronto*"))
SELECT * FROM SitesByNumber_qs WHERE (([SiteCity] LIKE "Toronto*"))
Row source is now: SELECT * FROM SitesByName_qs WHERE (([SiteCity] LIKE
"Toronto*"))
Row source is Now: SELECT * FROM SitesByNumber_qs WHERE (([SiteCity] LIKE
"Toronto*"))
<code>
I'm baffled. I can't see what I'm doing wrong, but I inspect the two combos
rowsource they are back to their original values
Ideas?
Thanks,
Arthur
--
AccessD mailing list
AccessD at databaseadvisors.com
http://databaseadvisors.com/mailman/listinfo/accessd
Website: http://www.databaseadvisors.com