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

x
?
Solved

Populate asp:dropdownlist with result from StoredProcedure

Posted on 2008-09-30
1
Medium Priority
?
268 Views
Last Modified: 2012-06-27
I have a form with some fields to take input from a user in order to generate a report.
I have a Start and End Date date range, which are parameters to a stored procedure to return the available values in an asp:dropdownlist, for clientname and clientid as the value field.
Eventually, I would like to retrieve the values from javascript calendar selections;
But for now, I would just like this code to work with hard-coded values.....
I hard-coded my start and end date as:  '01/01/2008' and '02/02/2009'.
Attached is my code; but the error is:
Procedure or function 'rsp_cc_clienttype' expects parameter '@startdate', which was not supplied.
But, when I step thru the debugger I set up the parameters correctly AND I think my syntax is correct.

Please Help-
John



Sub GetData()
            Dim ds As New DataSet
            Using da As New SqlClient.SqlDataAdapter("rsp_cc_clienttype", objConn)
                Dim myComm1 As New SqlCommand("rsp_cc_clienttype", objConn)
 
                myComm1.Parameters.Add("@startdate", SqlDbType.SmallDateTime, 6).Value = sdate
                myComm1.Parameters.Add("@enddate", SqlDbType.SmallDateTime, 6).Value = edate
 
                myComm1.CommandType = CommandType.StoredProcedure
 
                da.Fill(ds)
 
                myComm1.ExecuteNonQuery()
 
                'fill clients
                With ddClient
                    .Items.Clear()
                    .DataSource = ds.Tables(0)
                    .DataValueField = "clientid"
                    .DataTextField = "clientname"
                    .DataBind()
                End With
 
                If objConn.State <> ConnectionState.Closed Then
                    objConn.Close()
                End If
                'End Try
            End Using
        End Sub

Open in new window

0
Comment
Question by:jtrapat1
1 Comment
 
LVL 22

Accepted Solution

by:
prairiedog earned 2000 total points
ID: 22615036
Try this:
Sub GetData()
	Dim ds As New DataSet
	Dim da As New SqlClient.SqlDataAdapter
	
	Dim myComm1 As New SqlCommand("rsp_cc_clienttype", objConn)
	myComm1.CommandType = CommandType.StoredProcedure
	da.SelectCommand = myComm1
	da.SelectCommand.Parameters.AddWithValue("@startdate", sdate)
	da.SelectCommand.Parameters.AddWithValue("@enddate", edate)
 
	da.Fill(ds)
 
	'fill clients
	With ddClient
		.Items.Clear()
		.DataSource = ds.Tables(0)
		.DataValueField = "clientid"
		.DataTextField = "clientname"
		.DataBind()
	End With
	
	da.Dispose()	
End Sub

Open in new window

0

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Suggested Courses

885 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