Closing connection

  • Thread starter Thread starter id10t error
  • Start date Start date
I

id10t error

I have the code below. I am running an Rf application and trying to
get multiple scanners to work at the same time. I put in a mutex
before this class is called. The problem is the first time the second
scan that goes through the following code gets an error. I even tried
to put in a 10 second wait to mutex to give the first scan plenty of
time to clear the class. Is there a way to clear the connection string
that I am not doing?

Public Function Firstrecord(ByVal userid As String, ByVal
programid As String)
Dim test As String = 0
'This will be used to store the date in number format
Dim todaynumber As String
' If works delete
'Dim b As String = DateTime.Now.ToString("yyyy/MM/dd
hh:mm:ss")
'Gets current time
Dim currenttime As String = DateTime.Now.ToString("HHmmss")
'sets number scan to 000 so for reports we know this is a
starting record
Dim numberscan As String = "000"
'This calls the get today number function and gets todays date
in number format
todaynumber = gettodaynumberfunc()
'Gets the store number from the Web Config file
Dim storenumber As String =
ConfigurationManager.AppSettings.Get("storenumber")
'This is used to setup the connection string to write the
record
Dim TPSupdate As New Data.Odbc.OdbcConnection()
TPSupdate.ConnectionString =
ConfigurationManager.AppSettings.Get("DSNEMPMST")
TPSupdate.ConnectionString =
ConfigurationManager.AppSettings.Get("EMPMSTconnection")
'Opens the connection to get data from TPS file
TPSupdate.Open()
'Declares an object of OdbcCommand Object to execute the
select statement
Dim insertCmd As New Data.Odbc.OdbcCommand()
'Sets the propertirs of the command object
insertCmd.Connection = TPSupdate
insertCmd.CommandTimeout = 1000
'This will setup the record to be inserted into the table
insertCmd.CommandText = "Insert into RFPRD
(Numberscan,storenum,programid,usernumber,datescanned,timescanned)
Values ('" & numberscan & "','" & storenumber & "','" & programid &
"'," & userid & "," & todaynumber & "," & currenttime & ")"
'This is the command that will insert the record into
RFPRD.tps
insertCmd.ExecuteNonQuery()
TPSupdate.Close()
Return test
End Function
 
I have the code below. I am running an Rf application and trying to
get multiple scanners to work at the same time. I put in a mutex
before this class is called. The problem is the first time the second
scan that goes through the following code gets an error. I even tried
to put in a 10 second wait to mutex to give the first scan plenty of
time to clear the class. Is there a way to clear the connection string
that I am not doing?

Public Function Firstrecord(ByVal userid As String, ByVal
programid As String)
Dim test As String = 0
'This will be used to store the date in number format
Dim todaynumber As String
' If works delete
'Dim b As String = DateTime.Now.ToString("yyyy/MM/dd
hh:mm:ss")
'Gets current time
Dim currenttime As String = DateTime.Now.ToString("HHmmss")
'sets number scan to 000 so for reports we know this is a
starting record
Dim numberscan As String = "000"
'This calls the get today number function and gets todays date
in number format
todaynumber = gettodaynumberfunc()
'Gets the store number from the Web Config file
Dim storenumber As String =
ConfigurationManager.AppSettings.Get("storenumber")
'This is used to setup the connection string to write the
record
Dim TPSupdate As New Data.Odbc.OdbcConnection()
TPSupdate.ConnectionString =
ConfigurationManager.AppSettings.Get("DSNEMPMST")
TPSupdate.ConnectionString =
ConfigurationManager.AppSettings.Get("EMPMSTconnection")
'Opens the connection to get data from TPS file
TPSupdate.Open()
'Declares an object of OdbcCommand Object to execute the
select statement
Dim insertCmd As New Data.Odbc.OdbcCommand()
'Sets the propertirs of the command object
insertCmd.Connection = TPSupdate
insertCmd.CommandTimeout = 1000
'This will setup the record to be inserted into the table
insertCmd.CommandText = "Insert into RFPRD
(Numberscan,storenum,programid,usernumber,datescanned,timescanned)
Values ('" & numberscan & "','" & storenumber & "','" & programid &
"'," & userid & "," & todaynumber & "," & currenttime & ")"
'This is the command that will insert the record into
RFPRD.tps
insertCmd.ExecuteNonQuery()
TPSupdate.Close()
Return test
End Function

My first thought is try Dispose() on the connection to ensure it has
been marked as finished.

I do have a question about this, however:

TPSupdate.ConnectionString =
ConfigurationManager.AppSettings.Get("DSNEMPMST")
TPSupdate.ConnectionString =
ConfigurationManager.AppSettings.Get("EMPMSTconnection")

Since you are not using the DSNEMPMST, why have it in code.

What type of database are you using here? That may be another issue, as
the closing of any lock files (Access, for example) could be an issue.
If you can move from ODBC to OLEDB, you will see some perf improvement,
which may help, if destroying a lock file is the issue.

Peace and Grace,

--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA

Twitter: @gbworld
Blog: http://gregorybeamer.spaces.live.com

My vacation and childhood cancer awareness site:
http://www.crazycancertour.com

*******************************************
| Think outside the box! |
*******************************************
 
(e-mail address removed):







My first thought is try Dispose() on the connection to ensure it has
been marked as finished.

I do have a question about this, however:

        TPSupdate.ConnectionString =
ConfigurationManager.AppSettings.Get("DSNEMPMST")
        TPSupdate.ConnectionString =
ConfigurationManager.AppSettings.Get("EMPMSTconnection")

Since you are not using the DSNEMPMST, why have it in code.

What type of database are you using here? That may be another issue, as
the closing of any lock files (Access, for example) could be an issue.
If you can move from ODBC to OLEDB, you will see some perf improvement,
which may help, if destroying a lock file is the issue.

Peace and Grace,

--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA

Twitter: @gbworld
Blog:http://gregorybeamer.spaces.live.com

My vacation and childhood cancer awareness site:http://www.crazycancertour.com

*******************************************
|      Think outside the box!             |
*******************************************- Hide quoted text -

- Show quoted text -

I am connecting to a TPS database. That is why i have to use a ODBC
connection.
 
Hi again,

In another group where you asked for help, I mentionned that telling us the
exact error message as well as its location is considered as a best practice
when asking for help about an error.

Similarly it is considered best to avoid posting the same message separately
in multiple groups (to avoid wasting the time of those who would try to help
in a group, when the issue is already solved in another group).

Thanks in advance...
 
I am connecting to a TPS database. That is why i have to use a ODBC
connection.

Not familiar with this type of database. Does it create a lock file of some
type? If so, the destruction of the lock file might be what is causing the
issue.

Peace and Grace,

--
Gregory A. Beamer
MVP; MCP: +I, SE, SD, DBA

Twitter: @gbworld
Blog: http://gregorybeamer.spaces.live.com

My vacation and childhood cancer awareness site:
http://www.crazycancertour.com

*******************************************
| Think outside the box! |
*******************************************
 
Back
Top