Solved

VB Code into VB.net confusion

Posted on 2009-05-08
2
141 Views
Last Modified: 2012-05-06
Hello experts,
I am in the process of rewriting a small VB 6.0 application into VB.net and I really dont understand the below code.

In the code below how can I do this part in VB.net Please help

Do While Not LocalRec.EOF
                If EroleIDs.Length > 0 Then EroleIDs += ","
                EroleIDs = +"'" + Trim(Str(LocalRec(0))) + "'"
                ERolesRec.MoveNext()
            Loop




LocalRec = New ADODB.Recordset

        ERolesRec = New ADODB.Recordset

        If LocalRec.State > 0 Then LocalRec.Close()

        LocalRec.Open("Select * from JobFilters where ID='" + JobID + "'", DB(DBOffset), adOpenForwardOnly, adLockOptimistic)
 
 

ERolesRec.Open("select id FROM TypeofTypes where typeid=73 and value like '*%'", db(NumConnections), adOpenForwardOnly, adLockOptimistic)

        EroleIDs = ""

        If Not ERolesRec.EOF Then

            Do While Not LocalRec.EOF

                If EroleIDs.Length > 0 Then EroleIDs += ","

                EroleIDs = +"'" + Trim(Str(LocalRec(0))) + "'"

                ERolesRec.MoveNext()

            Loop

        End If

Open in new window

0
Comment
Question by:rowmark
2 Comments
 
LVL 16

Expert Comment

by:ToddBeaulieu
ID: 24337394
EroleIDs appears to be a string variable. The intent of this loop is to build a comma delimitted list of id's .

So, the first recordset is a list of job filters for the current job (JobID variable).

Next it fetches a recordset from TypeofTypes that meet the typeif and value criteria shown.

It then clears the target list string and loops through all the rows in the job filters recordset. Before it does this, though it checks to make sure that Types were found via the EOF property. If there are some, it will enumerate the filters and for each one found, append the first column in the filter recordset. Since "*" is used, it's not possible to know what that column is from the given code. It proably ought to be tweaked to return the first column only, unless the others are used elsewhere now shown.

This code doesn't really look correct, though. If you notice the "do while" is enumerating the list of filters, but the "movenext" is advancing the TypeofTypes recordset. I can't see how this loop would EVER exit.
0
 
LVL 14

Accepted Solution

by:
raja_ind82 earned 500 total points
ID: 24342703
i hope you got clear about the functionality. see the previous post.
Attached sample code in vb.net

Cheers,
M.Raja


Dim connString As String = ConfigurationManager.ConnectionStrings("ORACLE_LOCAL_DB").ConnectionString

        

Dim myConnection As New OleDb.OleDbConnection(connString)

 

Dim strQuery As String = "Select * from JobFilters where ID='" & JobID & "'"

  

 Dim strQuery2 As String = "select id FROM TypeofTypes where typeid=73 and value like '*%'"  
 

Dim myCommand As New OleDb.OleDbCommand(strQuery, myConnection)

Dim myCommand2 As New OleDb.OleDbCommand(strQuery2, myConnection)
 

 
 

myConnection.Open()
 

Dim myDataReader As OleDb.OleDbDataReader

Dim myDataReader2 As OleDb.OleDbDataReader
 

myDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)

myDataReader2 = myCommand2.ExecuteReader(CommandBehavior.CloseConnection)

					   

if myDataReader2.Read() then
 

Do While (myDataReader.Read())

 

 If EroleIDs.Length > 0 Then EroleIDs &= ","

	EroleIDs &= "'" & (myDataReader.Item(0).tostring + "'"
 

Loop
 

end if

 

Open in new window

0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

In my previous article (http://www.experts-exchange.com/Programming/Languages/.NET/.NET_Framework_3.x/A_4362-Serialization-in-NET-1.html) we saw the basics of serialization and how types/objects can be serialized to Binary format. In this blog we wi…
Creating an analog clock UserControl seems fairly straight forward.  It is, after all, essentially just a circle with several lines in it!  Two common approaches for rendering an analog clock typically involve either manually calculating points with…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
Internet Business Fax to Email Made Easy - With eFax Corporate (http://www.enterprise.efax.com), you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…

758 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

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now