Multidesk.be » Forums » ASP » Updaten en verwijderen in een gridview (gesloten)

Helpinformatie
Dit onderwerp werd gesloten.
Het is bijgevolg niet mogelijk er nog op te reageren.
  • Pagina
  • 1 van 1
  • RSS
  • Eerste ongelezen reactie
  • Plaats een reactie
  • Abonneer mij
  • Onderwerp sluiten
0 gasten lezen dit onderwerp.
^ Onderwerp geschreven door Ezio op woensdag 16 april 2014 om 12:23:29.
Ezio's avatar
Multiviteit: 973
  • Bewerken
  • Citeren
  • Reageren
  • Verwijderen
  • Waarschuw een crewlid
Wanneer je een data source configureert via 'Specify columns from a table or view' kun je klikken op de knop 'Advanced' om INSERT, UPDATE en DELETE statements te generen en daarmee is de kous af, maar helaas kan dat niet als je kiest om het SQL statement zelf te schrijven (Specify a custom SQL Statement or stored procedure).


http://i.snag.gy/rUNmi.jpg


Deze data source moet gebruikt worden in een gridview die dienst doet als winkeltje. Het is dus een must dat records verwijderd of bewerkt (het veld 'hoeveelheid' althans) moeten kunnen worden.

Ik probeerde onderstaand DELETE SQL statement, maar helaas gebeurt er niets als ik klik op de linkbutton 'Delete' in mijn gridview :(


http://i.snag.gy/N2Wca.jpg


Hoe kan ik ervoor zorgen dat ik records kan wijzigen en verwijderen? :)

I'm a gamer because I don't have a life... I've chosen to have many
^ Reactie #1 geschreven door thekid op woensdag 16 april 2014 om 18:34:55.
thekid's avatar
Multiviteit: 5273
Moderator
  • Bewerken
  • Citeren
  • Reageren
  • Verwijderen
  • Waarschuw een crewlid
gebruik je hiervoor je commands / postback? al eens gekeken via breakpoints wat er dan wel passeert? Console uitgave in visual studio? :)

Vele vragen :D
"Human beings make life so interesting. Do you know, that in a universe so full of wonders, they have managed to invent boredom." - Death in Hogfather
^ Reactie #2 geschreven door Ezio op woensdag 16 april 2014 om 18:38:29.
Ezio's avatar
Multiviteit: 973
  • Bewerken
  • Citeren
  • Reageren
  • Verwijderen
  • Waarschuw een crewlid
Er zit verder niets van code achter, dacht dat dat SQL statement bij 'delete' genoeg was, niet dus? :)
I'm a gamer because I don't have a life... I've chosen to have many
^ Reactie #3 geschreven door thekid op woensdag 16 april 2014 om 18:52:36.
thekid's avatar
Multiviteit: 5273
Moderator
  • Bewerken
  • Citeren
  • Reageren
  • Verwijderen
  • Waarschuw een crewlid
ik zou mijn gewone vraag stellen :) projectje :)
"Human beings make life so interesting. Do you know, that in a universe so full of wonders, they have managed to invent boredom." - Death in Hogfather
^ Reactie #4 geschreven door Ezio op woensdag 16 april 2014 om 19:15:58.
Ezio's avatar
Multiviteit: 973
  • Bewerken
  • Citeren
  • Reageren
  • Verwijderen
  • Waarschuw een crewlid
Heb het projectje verzonden maar zoveel is er niet te zien. Het is enkel een gridview met datasource :)
Alvast bedankt voor de inspanning! :D
I'm a gamer because I don't have a life... I've chosen to have many
^ Reactie #5 geschreven door thekid op woensdag 16 april 2014 om 20:27:32.
thekid's avatar
Multiviteit: 5273
Moderator
  • Bewerken
  • Citeren
  • Reageren
  • Verwijderen
  • Waarschuw een crewlid
er waren zo enkele dingetjes :D

- uw gridview moet een attribuut genaamd DataKeyNames="Bestelinfo_ID" hebben
- je select command moet deze key ook laden (anders kan dit niet geweten zijn voor het delete command) Mijn wijziging:
CODE
  1. SELECT tblBestelinfo.Bestelinfo_ID as Bestelinfo_ID, tblBestelinfo.Product, tblProducten.Naam, tblBestelinfo.Prijs, tblBestelinfo.Hoeveelheid, tblBestelinfo.Hoeveelheid * tblBestelinfo.Prijs AS Totaal FROM tblBestelinfo INNER JOIN tblProducten ON tblProducten.ID = tblBestelinfo.Product WHERE (tblBestelinfo.Bestelling = @BestelID)

Als je het leuk vind, kan je je ook nog op het OnDeleting event van je sqldatasource hangen, waar je dan kon gezien hebben dat je geen parameter doorkreeg.
Verder, als een gebruiker uitgelogt wordt tussentijds, kan hij toch nog de delete uitvoeren en als je als niet ingelogde gebruiker met je winkelkar verbind, krijg je een error dat er een probleem is bij het Order statement
Dat kan je zo oplossen (alhoewel ik nog steeds fan ben van parameters)
CODE
  1. strsqlBestelId = "SELECT Bestelling_ID FROM tblBestellingen WHERE Klant_ID = " & (IIf(Session("KlantID") Is Nothing, 0, Session("KlantID"))) & " ORDER BY Bestelling_Datum DESC"
"Human beings make life so interesting. Do you know, that in a universe so full of wonders, they have managed to invent boredom." - Death in Hogfather
^ Reactie #6 geschreven door Ezio op woensdag 16 april 2014 om 23:11:27.
Ezio's avatar
Multiviteit: 973
  • Bewerken
  • Citeren
  • Reageren
  • Verwijderen
  • Waarschuw een crewlid
Jippie, alles werkt nu perfect :D
Bedankt!! :)

Opmerking van de crew

Bij deze :)
thekid
I'm a gamer because I don't have a life... I've chosen to have many
  • Pagina
  • 1 van 1
  • RSS
  • Eerste ongelezen reactie
  • Plaats een reactie
  • Abonneer mij
  • Onderwerp sluiten