I am running a SQL query from a workstation to an MTS/SQL machine and I'm getting timeout errors. My DLL and ADO connections are on the MTS/SQL machine and I've set my timeout property to zero but it still times out after about 30 seconds. When I run the query in Query Analyzer it takes 1 minute to complete.
I've listed my code and query below. I hope someone can offer some help. Thanks in advance!
QUERY:
select inout.account_number as inout_acct, loans.account_number as loans_acct,loans.account_status as loans_stat, inout.status as inout_stat, max(inout_date) from inout inner join loans on loans.account_number=inout.account_number where status='O' and datediff(day, inout_date, getdate())<=30
and doc_type='LOAN FILE' and not loans.account_status='P'
group by inout.account_number, inout.status, loans.account_number, loans.account_status
WORKSTATION CODE:
Dim LoanIO As Object
Dim rsAging As ADODB.Recordset
Set LoanIO = CreateObject("LoanIODLL.Class1", "devsql01"
Set rsAging = LoanIO.Get_Aging
DLL CODE:
Dim cnLoanIO As ADODB.Connection
Private Sub Class_Initialize()
Set cnLoanIO = New ADODB.Connection
'USE FOR SQL
cnLoanIO.CursorLocation = adUseClient
cnLoanIO.ConnectionTimeout = 0
cnLoanIO.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=mytable;Data Source=myserver"
cnLoanIO.Open
End Sub
Public Function Get_Aging() as Recordset
Dim cmd As New ADODB.Command
cmd.ActiveConnection = cnLoanIO
cmd.CommandText = "sp_GetAgingData"
Set Get_Aging = cmd.Execute
End Function
I've listed my code and query below. I hope someone can offer some help. Thanks in advance!
QUERY:
select inout.account_number as inout_acct, loans.account_number as loans_acct,loans.account_status as loans_stat, inout.status as inout_stat, max(inout_date) from inout inner join loans on loans.account_number=inout.account_number where status='O' and datediff(day, inout_date, getdate())<=30
and doc_type='LOAN FILE' and not loans.account_status='P'
group by inout.account_number, inout.status, loans.account_number, loans.account_status
WORKSTATION CODE:
Dim LoanIO As Object
Dim rsAging As ADODB.Recordset
Set LoanIO = CreateObject("LoanIODLL.Class1", "devsql01"
Set rsAging = LoanIO.Get_Aging
DLL CODE:
Dim cnLoanIO As ADODB.Connection
Private Sub Class_Initialize()
Set cnLoanIO = New ADODB.Connection
'USE FOR SQL
cnLoanIO.CursorLocation = adUseClient
cnLoanIO.ConnectionTimeout = 0
cnLoanIO.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=mytable;Data Source=myserver"
cnLoanIO.Open
End Sub
Public Function Get_Aging() as Recordset
Dim cmd As New ADODB.Command
cmd.ActiveConnection = cnLoanIO
cmd.CommandText = "sp_GetAgingData"
Set Get_Aging = cmd.Execute
End Function