473,395 Members | 1,464 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

Visual Basic Not Waiting for Query to fully evaluate???

Hello all,

I am using Visual Basic to open a saved query and then save
information in the query to an array for later use. The problem is
that the same query shows different results when opened directly vs.
when opened by Visual Basic. It is as if Visual Basic is not letting
the query fully evaluate before processing records.

The query is a subtotal query that contains several criteria set up as
"where" in the group-by box. Most of the criteria are based on one
table, one criteria is based on a second joined table. When the query
is opened directly this last criteria is correctly evaluated and the
proper records are shown. When opened in VB it is as if this criteria
did not exist. The query otherwise shows correct information except
it includes records that should not be there based on the last
criteria.

Is there a way to force visual basic to wait until a query is fully
opened before executing code that uses the resulting records. Or is
there something else that I am missing.

Any help would be greatly appreciated.

Thanks,

Vince

Partial code Follows---------------------------------
Public aWork(10) as Integar

Sub LoadWorkArray(WorkQuery as string) 'WorkQuery = query name
Dim WorkLastRecord as Integar
Dim X as Integar

Set SLWork = New ADODB.Recordset

SLWork.Open WorkQuery, CurrentProject.Connection, adOpenKeyset,
adLockOptimistic

WorkLastRecord = SLWork.RecordCount

ReDim aWork(WorkLastRecord + 1)

With SLWork
.MoveFirst
For X = 1 To WorkLastRecord
aWork(X) = ![Attending Number]
.MoveNext
Next X
.Close
End With

End sub
Dec 28 '07 #1
6 2540
I'm no expert but would it not be worth adding a line before you go to the
beginning of the recordset to go to the end of the recordset. I think this
would force the query to be fully executed before evaluating the values
returned from it.

Something like:

With SLWork
.MoveLast
.MoveFirst
For X = 1 To WorkLastRecord
aWork(X) = ![Attending Number]
.MoveNext
Next X
.Close
End With

Regards,

Mark

"Vince" <VA*********@yahoo.comwrote in message
news:46**********************************@e10g2000 prf.googlegroups.com...
Hello all,

I am using Visual Basic to open a saved query and then save
information in the query to an array for later use. The problem is
that the same query shows different results when opened directly vs.
when opened by Visual Basic. It is as if Visual Basic is not letting
the query fully evaluate before processing records.

The query is a subtotal query that contains several criteria set up as
"where" in the group-by box. Most of the criteria are based on one
table, one criteria is based on a second joined table. When the query
is opened directly this last criteria is correctly evaluated and the
proper records are shown. When opened in VB it is as if this criteria
did not exist. The query otherwise shows correct information except
it includes records that should not be there based on the last
criteria.

Is there a way to force visual basic to wait until a query is fully
opened before executing code that uses the resulting records. Or is
there something else that I am missing.

Any help would be greatly appreciated.

Thanks,

Vince

Partial code Follows---------------------------------
Public aWork(10) as Integar

Sub LoadWorkArray(WorkQuery as string) 'WorkQuery = query name
Dim WorkLastRecord as Integar
Dim X as Integar

Set SLWork = New ADODB.Recordset

SLWork.Open WorkQuery, CurrentProject.Connection, adOpenKeyset,
adLockOptimistic

WorkLastRecord = SLWork.RecordCount

ReDim aWork(WorkLastRecord + 1)

With SLWork
.MoveFirst
For X = 1 To WorkLastRecord
aWork(X) = ![Attending Number]
.MoveNext
Next X
.Close
End With

End sub

Dec 28 '07 #2
On Dec 28, 6:14*pm, "Mark" <mreed1...@btinternet.comwrote:
I'm no expert but would it not be worth adding a line before you go to the
beginning of the recordset to go to the end of the recordset. I think this
would force the query to be fully executed before evaluating the values
returned from it.

Something like:

With SLWork
* * .MoveLast
* * .MoveFirst
* * For X = 1 To WorkLastRecord
* * * * aWork(X) = ![Attending Number]
* * * *.MoveNext
* * Next X
* * .Close
*End With

Regards,

Mark

"Vince" <VArgenzi...@yahoo.comwrote in message

news:46**********************************@e10g2000 prf.googlegroups.com...
Hello all,
I am using Visual Basic to open a saved query and then save
information in the query to an array for later use. *The problem is
that the same query shows different results when opened directly vs.
when opened by Visual Basic. *It is as if Visual Basic is not letting
the query fully evaluate before processing records.
The query is a subtotal query that contains several criteria set up as
"where" in the group-by box. *Most of the criteria are based on one
table, one criteria is based on a second joined table. *When the query
is opened directly this last criteria is correctly evaluated and the
proper records are shown. *When opened in VB it is as if this criteria
did not exist. *The query otherwise shows correct information except
it includes records that should not be there based on the last
criteria.
Is there a way to force visual basic to wait until a query is fully
opened before executing code that uses the resulting records. *Or is
there something else that I am missing.
Any help would be greatly appreciated.
Thanks,
Vince
Partial code Follows---------------------------------
Public aWork(10) as Integar
Sub LoadWorkArray(WorkQuery as string) *'WorkQuery = query name
Dim WorkLastRecord as Integar
Dim X as Integar
Set SLWork = New ADODB.Recordset
SLWork.Open WorkQuery, CurrentProject.Connection, adOpenKeyset,
adLockOptimistic
WorkLastRecord = SLWork.RecordCount
ReDim aWork(WorkLastRecord + 1)
With SLWork
* *.MoveFirst
* *For X = 1 To WorkLastRecord
* * * *aWork(X) = ![Attending Number]
* * * .MoveNext
* *Next X
* *.Close
End With
End sub- Hide quoted text -

- Show quoted text -
Hello Lyle,

You got it with using an "*" vs "%". The query was using a Not Like
"*string*" expression. Changed it to use % instead and now it works.
You do not know how long I have been looking at everything but the
string. While the query opens normally from Access the ADODB
apparently totally ignores an expression that uses an *.

Thanks for everybody's help.

Vince
Dec 28 '07 #3
Vince <VA*********@yahoo.comwrote in
news:38**********************************@e4g2000h sg.googlegroups.com
:
You got it with using an "*" vs "%". The query was using a Not
Like "*string*" expression. Changed it to use % instead and now
it works. You do not know how long I have been looking at
everything but the string. While the query opens normally from
Access the ADODB apparently totally ignores an expression that
uses an *.
Why are you using ADO? Makes no sense to me.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Dec 29 '07 #4
On Dec 28 2007, 8:23*pm, "David W. Fenton"
<XXXuse...@dfenton.com.invalidwrote:
Vince <VArgenzi...@yahoo.comwrote innews:38**********************************@e4g200 0hsg.googlegroups.com
:
You got it with using an "*" vs "%". *The query was using a Not
Like "*string*" expression. *Changed it to use % instead and now
it works. You do not know how long I have been looking at
everything but the string. *While the query opens normally from
Access the ADODB apparently totally ignores an expression that
uses an *.

Why are you using ADO? Makes no sense to me.

--
David W. Fenton * * * * * * * * *http://www.dfenton.com/
usenet at dfenton dot com * *http://www.dfenton.com/DFA/
Hi David,

It was a way of opening a query inside VB to populate an array. I
also tried opening the query as the DAO recordset type of object and
got the same results. I had done this in a number of other queries
but this is the first one I had a problem with. I would be open to a
better approach.

Thanks,

Vince
Jan 1 '08 #5
On Jan 1, 4:30*pm, Vince <VArgenzi...@yahoo.comwrote:
On Dec 28 2007, 8:23*pm, "David W. Fenton"

<XXXuse...@dfenton.com.invalidwrote:
Vince <VArgenzi...@yahoo.comwrote innews:38**********************************@e4g200 0hsg.googlegroups.com
:
You got it with using an "*" vs "%". *The query was using a Not
Like "*string*" expression. *Changed it to use % instead and now
it works. You do not know how long I have been looking at
everything but the string. *While the query opens normally from
Access the ADODB apparently totally ignores an expression that
uses an *.
Why are you using ADO? Makes no sense to me.
--
David W. Fenton * * * * * * * * *http://www.dfenton.com/
usenet at dfenton dot com * *http://www.dfenton.com/DFA/

Hi David,

It was a way of opening a query inside VB to populate an array. *I
also tried opening the query as the DAO recordset type of object and
got the same results. *I had done this in a number of other queries
but this is the first one I had a problem with. *I would be open to a
better approach.

Thanks,

Vince- Hide quoted text -

- Show quoted text -
Excuse me, I meant to say I had tried opening the recordset as its
default object type and got the same results.
Jan 1 '08 #6
Vince <VA*********@yahoo.comwrote in
news:58**********************************@e50g2000 hsh.googlegroups.co
m:
Excuse me, I meant to say I had tried opening the recordset as
its default object type and got the same results.
The default object type depends on what references your database
has. Which references you get by default depends on which version of
Access you created the MDB with.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Jan 1 '08 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
by: Robin Powers | last post by:
PROCESS CONTROLS/VISUAL BASIC PROGRAMMERS SALARY: TO $100,000 LOCATION: LOS ANGELES AREA Our Client has recently acquired process automation systems used to monitor and control their...
0
by: francisl | last post by:
I'm quite new to code with thread. I found that it is useful for graphical programming, but now I would like to add this to some of my program. I tried something but I think I'll have to read a...
3
by: Brian Oster | last post by:
After applying security patch MS03-031 (Sql server ver 8.00.818) a query that used to execute in under 2 seconds, now takes over 8 Minutes to complete. Any ideas on what the heck might be going...
2
by: Norm | last post by:
I have run into problems from time to time (and this is one of those times) using visual basic to access an external database and perform a basic select from statement. When the table is extremely...
26
by: Bruno Jouhier [MVP] | last post by:
I'm currently experiencing a strange phenomenon: At my Office, Visual Studio takes a very long time to compile our solution (more than 1 minute for the first project). At home, Visual Studio...
3
by: Omar | last post by:
Hi Developers, I am trying to access an Excel data file through a VB.Net application. I have the following code: =================================== VB.Net Code =================== Dim...
1
by: praful pathak | last post by:
i i am praful pathak,porbandar i want to develop my own cross tab report in visual basic 6 i know what developed query from ms access but how to coded in visual basic in designing time and how to...
19
by: frankiespark | last post by:
Hello all, I was perusing the internet for information on threading when I came across this group. Since there seems to be a lot of good ideas and useful info I thought I'd pose a question. ...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.