Steinmann Skrevet 13. november 2006 Del Skrevet 13. november 2006 Hey, har et sært problem. Har et datagrid med endel data, og et av feltene er numberofmags, er dette mer enn en skal jeg ha så mange forekomster av linjen i tabellen. Dataene kommer ifra en sql funksjon, og kan derfor ikke endre databasen på noe måte. Er det mulig å legge til nye rader i datagrid, evt om dere har noen fancy annen løsning fra database perspektiv? (Klødd meg i huet i 3 timer nå) Lenke til kommentar
wolf5 Skrevet 15. november 2006 Del Skrevet 15. november 2006 Dersom gridden er bundet til databasen så tror jeg du vil slite med å legge til nye rader uten å påvirke databasen. Løsningen jeg hadde sett for meg ville enkelt å greit vært å hente ut dataene fra databasen (uten binding) og knyttet dette offline-datasettet til gridden. Deretter er det bare til å modifisere datasettet slik at det gjenspeiler seg i gridden. Evt endringer tar du på hendelser som da oppdaterer databasen. Kanskje du i utgangspunktet henter ut et bindet datasett som du kopierer til et ubindet datasett for visning. Alle relevante endringer på det ubundede datasettet gjenspeiler du da med kode mot det bindede datasettet. Har lekt lite med direkte SQL binding, men dette er framgangsmåten jeg hadde gjort det på om ikke jeg fikk noen andre tips. Lenke til kommentar
Steinmann Skrevet 15. november 2006 Forfatter Del Skrevet 15. november 2006 Whoha, forsto faktisk essensen av hva du snakker om. Får se på det når jeg kommer på jobb. Prøve å legge ut løsningen jeg fant når jeg lager den. Takk Lenke til kommentar
Steinmann Skrevet 20. november 2006 Forfatter Del Skrevet 20. november 2006 Ble til at jeg lagde en SP på serveren istede. ALTER PROCEDURE [dbo].[listSubAndAnn] AS BEGIN SET NOCOUNT ON; begin DECLARE @cid int DECLARE @number int declare magcursor cursor for select c_id, numberofmags from dbo.getSubAndAnn() open magcursor; fetch magcursor into @cid, @number WHILE @@FETCH_STATUS = 0 begin if (@number < 2) begin insert into dbo.midl_mag select * from dbo.getSubAndAnn() where c_id=@cid end else begin DECLARE @i int set @i = 0 while @i < @number begin insert into dbo.midl_mag select * from dbo.getSubAndAnn() where c_id=@cid set @i = @i + 1 end end fetch NEXT from magcursor into @cid, @number end close magcursor deallocate magcursor end select fname, lname, email, Company, Address, City, typ from midl_mag END funker for meg, så da er jeg fornøyd, om noen har forslag til forbedringer er jeg åpen for det Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå