Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

Using Filter and Order By when setting RecordSource as SQL

Posted on 2011-03-24
5
Medium Priority
?
773 Views
Last Modified: 2012-05-11
Maybe someone can confirm an issue with Access Forms. I have a form that allows a user to select an ingredient. Because there are so many ingredients, I allow the user to enter a phrase in a search field. Then, based on their entry, I display records that contain that phrase. I do this by setting the recordsource to:
  Me.RecordSource = "SELECT tblIngredients.* FROM tblIngredients WHERE Description Like '*" & Me.txtSearch & "*'"

However, first, lets look at the OnLoad event. In the OnLoad event I set the recordsource and order by options
  Me.RecordSource = "SELECT tblIngredients.* FROM tblIngredients"
  Me.OrderByOn = True
  Me.Order = [Description]
Access ignores my OrderBy statements.

If I delete the RecordSource statement and just set the source on the form to tblIngredients, The OrderBy statements work.
 
Thus my question is, will the OrderBy statements NOT WORK when setting RecordSource equal to a SQL statement?
I have the same issue when I try to use the Filter commands. I have a button that the user can click. When they do so, only records that have a field in the table (Components) clicked (set to True). If, with RecordSource statement in effect, I use the filter commands in the following format:
   me.filteron = true
   me.filter = "[Components] = True"
This does not work with record source either.
Am I doing something wrong or is this true with Access?
0
Comment
Question by:rodneygray
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
5 Comments
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 35208130

inter change the position  


   Me.Order = [Description]
   Me.OrderByOn = True
 
and this


   me.filter = "[Components] = True"
   me.filteron = true
0
 
LVL 1

Author Comment

by:rodneygray
ID: 35209845
capricorn1
The second recordsource statement is commented out. It shows how I got around the OrderBy problem. When I implement your fix, I get an error when the form comes up.
The dialog box states:
  Header: Enter parameter value
  Body: Salt (This is the first ingredient in the table)
  Then there is an unbounded box waiting for me to type something in.
  Buttons: OK and CANCEL

If I type in a value or enter a value and press the OK button, from appears with unsorted value. If I press the CANCEL button, I get another error dialog box that states.
  Runtime error 3709
  The search key was not found in any record and I can end or debug. If I debug the error is highlighted at Me.OrderByOn = True.
 
Private Sub Form_Load()
    Me.RecordSource = "SELECT tblIngredients.* FROM tblIngredients"
   
     'Me.RecordSource = "SELECT tblIngredients.* FROM tblIngredients ORDER BY Description"
    Me.OrderBy = [Description]
    Me.OrderByOn = True
   
End Sub
0
 
LVL 120

Accepted Solution

by:
Rey Obrero (Capricorn1) earned 2000 total points
ID: 35209928
change

Me.OrderBy = [Description]

with

Me.OrderBy = "[Description]"
0
 
LVL 1

Author Closing Comment

by:rodneygray
ID: 35210814
Capricorn1,
Thanks so much. I spent several hours on this just trying to figure out why it did not work. All because of two quotes! Do you feel that is the case with the filter also?
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 35210895
if [Components] is TEXT data type

me.filter = "[Components] = 'switch'"
   me.filteron = true


if [Components] is Number data type

me.filter = "[Components] = 1234"
   me.filteron = true
0

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes a method of delivering Word templates for use in merging Access data to Word documents, that requires no computer knowledge on the part of the recipient -- the templates are saved in table fields, and are extracted and install…
Instead of error trapping or hard-coding for non-updateable fields when using QODBC, let VBA automatically disable them when forms open. This way, users can view but not change the data. Part 1 explained how to use schema tables to do this. Part 2 h…
In Microsoft Access, learn how to “cascade” or have the displayed data of one combo control depend upon what’s entered in another. Base the dependent combo on a query for its row source: Add a reference to the first combo on the form as criteria i…
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.

636 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question