login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Update met gegevens uit textbox (Opgelost)

Offline finduilas - 20/05/2008 19:29
Avatar van finduilasPHP gevorderde Hallo,

Ik heb een vraag. Ik heb (onbeperkt) aantal bestellingen gemaakt... Deze haal ik op met de volgende qry:
  1. Dim strProducten As String = "SELECT * FROM tblBestellingen_details INNER JOIN tblProducten ON (tblBestellingen_details.prod_id = tblProducten.prod_id) WHERE tblBestellingen_details.bestel_id = '" & Openbestelling & "'"


Maar het probeem zit hem nu:
Dit geeft bijvoorbeeld
Producta aantala prijsa prijstot
Productb aantalb prijsb prijstot

Nu kan ik alles in een label plaatsen. Maar ik zou willen dat aantala & aantalb in een textbox komen en als ik deze verander ik deze ook allemaal in 1x het aantal kan wijzigen.

Hoe doe ik het best, gridview, labels/textboxen?, code's? Ik heb eigenlijk geen enkel idee.

Finduilas

9 antwoorden

Gesponsorde links
Offline Abbas - 20/05/2008 21:12
Avatar van Abbas Gouden medaille

Crew .NET
Klikkerdeklik, een tutorial van me waar je alle acties mee kan doen! Succes...
Offline finduilas - 20/05/2008 22:40
Avatar van finduilas PHP gevorderde Hallo,

Ik volgede deze tutorial:
http://www.site...n_datagrid

Maar ik werk met sql dus moet ik alles aanpassen. Voorlopig heb ik een probleem met dit:
  1. Sub BindGrid()
  2. Dim cnnConnectie As New SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("conGIP").ToString())
  3. cnnConnectie.Open()
  4. Dim DS As dataset
  5. Dim sql_commando As OleDBDataAdapter
  6. sql_commando = New OleDBDataAdapter("select * from producten", MyConnection)
  7. DS = New DataSet()
  8. sql_commando.Fill(DS, "producten")
  9. prodver.DataSource = DS.Tables("producten").DefaultView
  10. prodver.DataBind()
  11. End Sub


Alleen wordt Dataset & OleDBDataadapter niet herkend. Moet dit misschien op een andere manier?
Offline Wim - 20/05/2008 22:46
Avatar van Wim Crew algemeen rechts onderaan bij je properties gewoon op de tekstlink "dataset" klikken en hij doet alles vanzelf...?  Net zoals je connectie. Voeg hem in je server explorer toe, sleep hem naar je formulier en je connectie is er... Je moet ze enkel nog openen.
Offline finduilas - 20/05/2008 22:51
Avatar van finduilas PHP gevorderde Ik vind die dataset niet hoor??
Offline Abbas - 20/05/2008 22:52
Avatar van Abbas Gouden medaille

Crew .NET
Heb je de library "System.Data" wel ingeladen?
Offline finduilas - 20/05/2008 22:54 (laatste wijziging 21/05/2008 09:27)
Avatar van finduilas PHP gevorderde Dataset wordt dan inderdaad gevonden,
helaas OleDBDataadapter niet .

EDIT:
Imports System.Data.Common
:)

EDIT:
Ik ben al beetje verder; alleen zit ik nog vast met het volgende:
http://www.site...datagrid#3

  1. Imports System.Data
  2. Imports System.Data.Common
  3. Imports System.Data.SqlClient
  4. Partial Class product_verwijderen
  5. Inherits System.Web.UI.Page
  6.  
  7. Protected Sub cmdJa_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdJa.Click
  8.  
  9. End Sub
  10.  
  11. Protected Sub cmdNee_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmdNee.Click
  12. Response.Redirect("productenverwijderen.aspx")
  13. End Sub
  14. Sub prodver_ItemDataBound(ByVal Sender As Object, ByVal E As DataGridItemEventArgs)
  15. If (E.Item.ItemType = ListItemType.EditItem) Then
  16. Dim i As Integer
  17. For i = 0 To E.Item.Controls.Count - 1
  18. If (E.Item.Controls(i).Controls(0).GetType().ToString() = "System.Web.UI.WebControls.TextBox") Then
  19. Dim tb As TextBox
  20. tb = E.Item.Controls(i).Controls(0)
  21. tb.Text = Server.HtmlDecode(tb.Text)
  22. End If
  23. End If
  24. End Sub
  25. Sub prodver_Delete(ByVal Sender As Object, ByVal E As DataGridCommandEventArgs)
  26. Dim cnnConnectie As New SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("conGIP").ToString())
  27. Dim Deletecmd As String = "DELETE FROM tblProducten WHERE prod_id = @prod_id"
  28. Dim sql_commando As New SqlCommand(Deletecmd, cnnConnectie)
  29. sql_commando.Parameters.Add(New Parameter("@prod_id", TypeCode.Int32, 11))
  30. sql_commando.Parameters("@prod_id").Value = prodver.DataKeys(CInt(E.Item.ItemIndex))
  31. cnnConnectie.Open()
  32. Try
  33. sql_commando.ExecuteNonQuery()
  34. lblTest.Text = "Verwijderd"
  35. Catch Exc As Exception
  36. lblTest.Text = "Er is een fout opgetreden bij het verwijderen van het record"
  37. lblTest.Style("color") = "red"
  38. End Try
  39. cnnConnectie.Close()
  40. BindGrid()
  41. End Sub
  42. Sub BindGrid()
  43. Dim cnnConnectie As New SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings("conGIP").ToString())
  44. cnnConnectie.Open()
  45. Dim DS As DataSet
  46. Dim strCommand As String = "SELECT * FROM tblProducten"
  47. Dim sql_commando As New SqlDataAdapter(strCommand, cnnConnectie)
  48. DS = New DataSet
  49. sql_commando.Fill(DS, "tblProducten")
  50. prodver.DataSource = DS.Tables("tblProducten").DefaultView
  51. prodver.DataBind()
  52. End Sub
  53.  
  54. Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  55. BindGrid()
  56. End Sub
  57. End Class


Maar nu krijg ik bij BindGrid() de volgende fout:
Databinding: 'System.Data.DataRowview' does not contain a propert with the name 'id'.

Hoe komt dit?
Offline Abbas - 21/05/2008 10:46
Avatar van Abbas Gouden medaille

Crew .NET
Ik zie nergens in de Sub "BindGrid()" iets van een DataRowView of iets van "id" staan in je code...
Offline finduilas - 21/05/2008 13:10 (laatste wijziging 21/05/2008 13:10)
Avatar van finduilas PHP gevorderde Ik heb het gevonden, het was bij DataKeyField="prod_id" dat ik id had ingesteld...

Maar nu heb ik het volgende: ex as exception geeft dit:
Citaat:
Er is een fout opgetreden bij het verwijderen van het recordSystem.Data.SqlClient.SqlException: Operand type clash: ntext is incompatible with int bij System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) bij System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) bij System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) bij System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) bij System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) bij System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) bij System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) bij System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) bij System.Data.SqlClient.SqlCommand.ExecuteNonQuery() bij product_verwijderen.prodver_Delete(Object Sender, DataGridCommandEventArgs E) in G:FinduilasWebshopproduct_verwijderen.aspx.vb:regel 34
Offline Abbas - 21/05/2008 13:18
Avatar van Abbas Gouden medaille

Crew .NET
Als je de fout deftig leest zie je al dat er staat "ntext komt niet overeen met int..." dit wil zeggen dat de datatypes van de DataGrid niet overeenkomen met die van de DB.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.197s