Go Premium for a chance to win a PS4. Enter to Win


VB Code into VB.net confusion

Posted on 2009-05-08
Medium Priority
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))) + "'"

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))) + "'"
        End If

Open in new window

Question by:rowmark
LVL 16

Expert Comment

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.
LVL 14

Accepted Solution

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


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)
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 + "'"
end if

Open in new window


Featured Post

[Webinar] Cloud Security

In this webinar you will learn:

-Why existing firewall and DMZ architectures are not suited for securing cloud applications
-How to make your enterprise “Cloud Ready”, and fix your aging DMZ architecture
-How to transform your enterprise and become a Cloud Enabler

Question has a verified solution.

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

This article describes relatively difficult and non-obvious issues that are likely to arise when creating COM class in Visual Studio and deploying it by professional MSI-authoring tools. It is assumed that the reader is already familiar with the cla…
The ECB site provides FX rates for major currencies since its inception in 1999 in the form of an XML feed. The files have the following format (reducted for brevity) (CODE) There are three files available HERE (http://www.ecb.europa.eu/stats/exch…
Want to learn how to record your desktop screen without having to use an outside camera. Click on this video and learn how to use the cool google extension called "Screencastify"! Step 1: Open a new google tab Step 2: Go to the left hand upper corn…
In a question here at Experts Exchange (https://www.experts-exchange.com/questions/29062564/Adobe-acrobat-reader-DC.html), a member asked how to create a signature in Adobe Acrobat Reader DC (the free Reader product, not the paid, full Acrobat produ…
Suggested Courses

963 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