Toon posts:

[VB] eigen geschreven listview_refresh werk half

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik begin maar even met m'n code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
Public Sub lvkantoor_refresh()

frm_kantoor_toevoegen.ListView1.ListItems.Clear
DataEnvironment1.rssql_kantoor.Requery
Do While Not DataEnvironment1.rssql_kantoor.EOF
    Set list_item = frm_kantoor_toevoegen.ListView1.ListItems.Add(, "key " &
DataEnvironment1.rssql_kantoor!kantoor_id, 
DataEnvironment1.rssql_kantoor!naam)
    
    DataEnvironment1.rssql_kantoor.MoveNext
Loop
End Sub

Als ik de functie voor de eerste keer aan roep werkt hij.
Maar als ik de funcie opnieuw aan roep slaat hij de while
over. Als ik dan MoveFirst aanroep, krijg ik een error
dat EOF true is en dat ik dus niet MoveFirst mag
gebruiken. Dit is uiteraard ook de rede dat hij niet de
while loop in wil. Weet iemand hoe ik dat kan oplossen?

Alsvast bedankt

  • whoami
  • Registratie: December 2000
  • Laatst online: 15:43
Probeer eens om uw query te sluiten en terug te openen ipv te requery-en.

Verder helpt het ook om de procedures BeginUpdate en EndUpdate te gebruiken bij het vullen van de listview. (Om performance redenen).

https://fgheysels.github.io/


Verwijderd

Dit lijkt op een forward-only recordset. Kijk goed hoe je je recordset opent (lock type en open type).

  • Sponge
  • Registratie: Januari 2002
  • Laatst online: 08-09 17:54

Sponge

Serious Game Developer

Of zet boven de loop voor de zekerheid:

DataEnvironment1.rssql_kantoor.MoveFirst

Verwijderd

Topicstarter
Ahhhhh
Ik denk dat ik met jullie hulp een eind kom.
Ga er morgen weer mee verder

Bedankt

Verwijderd

Op donderdag 02 mei 2002 16:41 schreef JeroenDega het volgende:

Dit lijkt op een forward-only recordset. Kijk goed hoe je je recordset opent (lock type en open type).
I agree ..

Verwijderd

Topicstarter
Ahhh ok
Een iets andere vraag dan.
Kan 1 van jullie me iets meer vertellen over de verschillende Lock Types?

Alvast bedankt

  • Paxlie
  • Registratie: Oktober 2000
  • Laatst online: 09-02 10:40

Paxlie

chaos en inslag

dude, wat bedoel je precies met lock-types?
Volgens mij heb je alleen locked: ja/nee
maar ik kan het ook fout hebben?

Overigens, goedemorgen meneer Helerion :)

Wie werd waar wanneer geboren en waarom werd hij door wie hoe genoemd?
braque© zijn is een keuze


  • whoami
  • Registratie: December 2000
  • Laatst online: 15:43
In de MSDN vind je alle nodige informatie over de locktypes.

https://fgheysels.github.io/


  • Apen-nootjes
  • Registratie: September 2001
  • Laatst online: 03-04-2025

Apen-nootjes

aka Apen-klootjes

Voor zover ik kan zien wordt het bestand niet gesloten, hierdoor blijft hij in z'n geheugen op EOF dus hij slaat hem gelijk over. Sluit het bestand als je klaar ben met lezen en de volgende keer gaat hij als het goed is weer gewoon helemaal werken...

SmartDoDo: Ach, afhankelijk van je smaak kan het best een lekker geil ding zijn :P
You never had a date you couldn't inflate


Verwijderd

Ik ben niet echt een expert als het aankomt op de standaard dataenvironment die je in VB aanmaakt. Als ik je mag adviseren (daar heb je nu niet zo veel aan, maar stop dit in je achterhoofd), probeer gebruik te gaan maken van ADO. Je hebt dan alles zelf in de hand, nu laat je de controle over aan een component waar je de werking niet helemaal van kent.

Je zult je nu moeten concentreren op deze regel:
code:
1
DataEnvironment1.rssql_kantoor.Requery

Daarmee ververs je je dataconnectie. Deze ververst de connectie naar de database en haalt de meest recente gegevens op naar je 'DataEnvironment'. Dit komt in een soort boekenkastje terecht die je alleen van links naar rechts door kunt lopen. Zodra je helemaal rechts bent aangekomen moet je het boekenkastje sluiten. Als je dan nogmaals de gegevens wilt bekijken zul je het boekenkastje opnieuw moeten openen.

Je opent het boekenkastje forward-only (dit is waarschijnlijk een property in je data-environment). Forward-only is de meest efficiente (snelste) manier om een stukje data te openen. Als je op een andere manier opent (waardoor je bijvoorbeeld heen en weer kunt springen) kost dat meer overhead en opent je data trager. De mogelijkheden zijn echter wel weer groter.

Bij het kiezen van een opentype en een lockingtype moet je dus van tevoren bedenken wat je eigenlijk wilt bereiken met je data. Als je dus meerdere keren door de data wilt wandelen moet je niet forward-only kiezen.

Zo, ga nu maar naar msdn.microsoft.com Daar kun je ditzelfde verhaal, maar dan in Microsoft taal lezen.

Verwijderd

Topicstarter
Echt bedankt voor je post. Ik begin nu ook deze structuur te begrijpen. Echt fantastisch.

Groetjes.
Pagina: 1