Hi Dj,
    I go though your code and find that upto function "BindData()" is concern 
your code is correct. 
But there is some problem in your update "dgCrit_Update" part. The error part 
exists in following statement:
Note That:
"  The OLE DB .NET Provider does not support named parameters for passing 
parameters to an SQL Statement or a stored procedure called by an      
OleDbCommand when CommandType is set to Text. In this case, the question mark 
(?) placeholder must be used. For example:
   SELECT * FROM Customers WHERE CustomerID = ?     "

So, Kindly check your code, since u are using access database so u unable to 
create a stored procedure. So, dear If your purpose is only 
to update the value and display updated value in grid then write following sql 
statement:
 Dim strSQL as String = " UPDATE tblScenCrit SET tblScenCrit.WeightID=" + 
strWeightId +" WHERE (((tblScenCrit.ScenarioID)="+ strSecenarioId +") AND 
((tblScenCrit.UserID)='"+ strUserId + "') AND ((tblScenCrit.CriteriaID)="+ 
strCriteriaID +"))"
Also, If datagrid is not displaying after updating it means some exception is 
raised in this event. So, put your code within 
try... catch block.

For more help, please see MSDN : 
ms-help://MS.VSCC.2003/MS.MSDNQTR.2005JAN.1033/cpref/html/frlrfsystemdataoledboledbcommandclassparameterstopic.htm
Let me know whether it work or not.

Krishan Kant


DD <[EMAIL PROTECTED]> wrote:
Hi all,

I have a datagrid that queries data on two fields, UserID and
ScenarioID.  It displays the data fine, but when I click the update
button no data is displayed.

Snippets of my code:

Sub BindData()
            dim objConn as new OleDbConnection
("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=C:\DSS\DSS.mdb")
            objConn.Open()
            Dim ScenID As String = Request.QueryString("ScenID")
            Dim ProjID As String = Request.QueryString("ProjID")
        Dim UserID as Integer = CStr(Request.Params("UserID"))
            Dim strSQL as String = "SELECT tblScenCrit.CriteriaID,
tblScenCrit.WeightID, tblScenCrit.UserID, tblScenCrit.ScenarioID,
tblWeighting.Weighting, tblCriteria.Name, tblCriteria.Description FROM
tblCriteria INNER JOIN (tblWeighting INNER JOIN tblScenCrit ON
tblWeighting.WeightID = tblScenCrit.WeightID) ON
tblCriteria.CriteriaID = tblScenCrit.CriteriaID WHERE UserID =" &
Session(UserID) & " and ScenarioID = '" & (Context.Items("ScenID")) &
"'"
            Dim objCmd as New OleDbCommand(strSQL, objConn)
            dgCrit.DataSource =
objCmd.ExecuteReader(CommandBehavior.CloseConnection)
            dgCrit.DataBind()
            objConn.Close()      
    End Sub

and.....

Sub dgCrit_Update(sender As Object, e As DataGridCommandEventArgs)
            Dim ScenID As String = Request.QueryString("ScenID")
            Dim UserID As Integer = CStr(Request.Params("UserID"))
            
            Dim strCriteriaID as String = e.Item.Cells(1).Text
            Dim strName as String = e.Item.Cells(2).Text
            Dim strDescription as String = e.Item.Cells(3).Text
            Dim strScenarioID as String = e.Item.Cells(4).Text
            Dim strUserID as String = e.Item.Cells(5).Text
            Dim strWeightID as String = CType(e.Item.FindControl("ddlWeight"),
DropDownList).SelectedItem.Value
      
            ' Dim strSQL as String =      "UPDATE [tblScenCrit] SET [WeightID] =
@WeightID WHERE [CriteriaID] = @CriteriaID"
            Dim strSQL as String = " UPDATE tblScenCrit SET tblScenCrit.WeightID
= [EMAIL PROTECTED] WHERE (((tblScenCrit.ScenarioID)[EMAIL PROTECTED]) AND
((tblScenCrit.UserID)[EMAIL PROTECTED]) AND
((tblScenCrit.CriteriaID)[EMAIL PROTECTED]))"
            
      

            dim objConn as new OleDbConnection
("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=C:\DSS\DSS.mdb")            
            objConn.Open()
            Dim myCommand as OleDbCommand = new OleDbCommand(strSQL, objConn)
            myCommand.CommandType = CommandType.Text
      
            Dim parameterWeightID as OleDbParameter = new
OleDbParameter("@WeightID", OleDbType.Char)
            parameterWeightID.Value = strWeightID
            myCommand.Parameters.Add(parameterWeightID)
            
            Dim parameterCriteriaID as OleDbParameter = new
OleDbParameter("@CriteriaID", OleDbType.Char)
            parameterCriteriaID.Value = strCriteriaID
            myCommand.Parameters.Add(parameterCriteriaID)
            
            Dim parameterName as OleDbParameter = new OleDbParameter("@Name",
OleDbType.Char)
            parameterName.Value = strName
            myCommand.Parameters.Add(parameterName)
            
            Dim parameterDescription as OleDbParameter = new
OleDbParameter("@Description", OleDbType.Char)
            parameterDescription.Value = strDescription
            myCommand.Parameters.Add(parameterDescription)
            
            Dim parameterScenarioID as OleDbParameter = new
OleDbParameter("@ScenarioID", OleDbType.Char)
            parameterScenarioID.Value = strScenarioID
            myCommand.Parameters.Add(parameterScenarioID)
            
            Dim parameterUserID as OleDbParameter = new
OleDbParameter("@UserID", OleDbType.Char)
            parameterUserID.Value = strUserID
            myCommand.Parameters.Add(parameterUserID)
            
            

            myCommand.ExecuteNonQuery()
            objConn.Close()
            
            dgCrit.EditItemIndex = -1
            BindData()       
    End Sub
    
    Function GetWeight() as DataSet
            Dim objConn as New OleDbConnection
("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=C:\DSS\DSS.mdb")
            Dim objCmd as New OleDbDataAdapter("SELECT WeightID, Weighting from
tblWeighting ORDER BY Weighting", objConn)
            Dim ddlDataSet as DataSet = New DataSet()
            objCmd.Fill(ddlDataSet, "ddlWeight")
            Return ddlDataSet
      End Function

and....

<asp:DataGrid id="dgCrit" runat="server"
            AutoGenerateColumns="False" CellPadding="4"
            HeaderStyle-BackColor="#0000bf"
            HeaderStyle-ForeColor="White"
            HeaderStyle-HorizontalAlign="Center"
            HeaderStyle-Font-Bold="True"
            EditItemStyle-BackColor="#ccccee"
            OnEditCommand="dgCrit_Edit"
            OnUpdateCommand="dgCrit_Update"
            OnCancelCommand="dgCrit_Cancel"
            DataKeyField="CriteriaID">
        
            <Columns>
                <asp:EditCommandColumn EditText="Add Weights"
ButtonType="PushButton"
                UpdateText="Update" CancelText="Cancel" />           
       
                <asp:BoundColumn HeaderText="Criteria ID"
DataField="CriteriaID" ReadOnly="True" />                            
               
                <asp:BoundColumn HeaderText="Name" DataField="Name"
ReadOnly="True" /> 
                <asp:BoundColumn HeaderText="Description"
DataField="Description" ReadOnly="True" /> 
                <asp:BoundColumn HeaderText="ScenarioID"
DataField="ScenarioID" ReadOnly="True" /> 
                <asp:BoundColumn HeaderText="UserID"
DataField="UserID" ReadOnly="True" /> 
                <asp:TemplateColumn HeaderText="Weight">
                              <ItemTemplate>
                                    <%# DataBinder.Eval(Container.DataItem, 
"Weighting") %>
                              </ItemTemplate>
                              <EditItemTemplate>
                                    <asp:DropDownList runat="server" 
id="ddlWeight"
DataValueField="WeightID" DataTextField="Weighting" DataSource="<%#
GetWeight() %>" />
                              </EditItemTemplate>
                        </asp:TemplateColumn>
             </columns>      
        </asp:DataGrid>

Whats wrong with the code?!?

Thanks

DJ






SPONSORED LINKS 
Programming languages C programming language Computer programming languages 
Java programming language C programming language History of computer 
programming language 

---------------------------------
YAHOO! GROUPS LINKS 


    Visit your group "AspNetAnyQuestionIsOk" on the web.
  
    To unsubscribe from this group, send an email to:
 [EMAIL PROTECTED]
  
    Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service. 


---------------------------------




--------------------------------------------------------------------
Krishan Kant Chamoli                 Office:    +91-172-2653886
Sikhya Solutions (P) Ltd.,           Fax:       +91-172-5018485
24/3, Industrial Area, Phase - 2,    Mobile: 9888263726
Chandigarh. INDIA. Pin - 160002.     Email: [EMAIL PROTECTED]

--------------------------------------------------------------------
Send instant messages to your online friends http://uk.messenger.yahoo.com 

[Non-text portions of this message have been removed]



------------------------ Yahoo! Groups Sponsor --------------------~--> 
<font face=arial size=-1><a 
href="http://us.ard.yahoo.com/SIG=12hn6u1m1/M=362329.6886308.7839368.1510227/D=groups/S=1705006764:TM/Y=YAHOO/EXP=1123490769/A=2894321/R=0/SIG=11dvsfulr/*http://youthnoise.com/page.php?page_id=1992
">Fair play? Video games influencing politics. Click and talk back!</a>.</font>
--------------------------------------------------------------------~-> 

 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/AspNetAnyQuestionIsOk/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 


Reply via email to