SELECTIE

P.V.

selectie97 34kbselectie2k 58kbselectiexp 81kb

   Het  voorbeeld gaat dit keer over een mogelijkheid van databeheer 
   waardoor, met behoud van een behoorlijke hoeveelheid data, er toch 
   snel met de beschikbare informatie kan worden gewerkt. Dit voor-
   beeld dien je rechtstreeks in de  C:\temp  directory uit te pakken 
   i.v.m gebruikte "links". In dit voorbeeld wordt in een bedrijf gewerkt 
   met maandelijkse rapporteringen. De data van de centrale database 
   wordt voor historische overzichten / naslagwerk geŽxporteerd naar 
   tekst gelimiteerde bestanden (quotes and tabs). Voordelen: kleine 
   bestands grootte en de bestanden zijn in de hier getoonde gelinkte 
   versie niet te bewerken. De tekstbestanden worden benoemd in het 
   formaat 'yyyymm' waardoor ze  automatisch goed gesorteerd worden. 
  Bij het linken van de nieuwe maand wordt gebruik gemaakt 
  van een standaard profiel waarbij de veldinstellingen gedefinieerd zijn 
   ("Linken"). Door middel van een query over een system objects  tabel 
  die zichtbaar wordt door bij opties systeemobjecten aan te vinken haal 
  je de tabelnamen op die in de database aanwezig zijn (mits extern 
  gelinkt zoals de tekstbestanden zijn). Met deze namen wordt een 
  tellertabel gevuld die eerst wordt aangemaakt door een CopyObject 
  actie van BasisTeller om met een autonummerveld de nummering aan
  te maken die in de vba code gebruikt wordt. Je krijgt hier een nummer 
  van 1 tot ... om in de for next loop te gebruiken, waar je ook kunt laten 
  kiezen voor van 3 to 9 of van 15 tot 15 etc. In het form gebeurt het 
  volgende: Er is een knop die de tellertabel opnieuw gaat vullen (dit is 
  relevant als er weer een nieuwe maand is toegevoegd !) Daar naast 
  staan 2 keuzelijsten om Van en Tot te kunnen selecteren (de variabelen 
  voor de for next loop). On error trapping om te voorkomen dat 'Van' 
  hoger is dan 'Tot' (van 7 tot 2 werkt niet echt, andersom wel). Naast de 
  keuzelijsten een knop om de data te verzamelen . Binnen de For  Next 
  loop wordt via Dlookup van de 'i' waarde de periode naam opgehaalt, 
  aan een Sqlstring geplakt en via DoCmd.RunSql uitgevoerd. Na vullen 
  van de rapporteringstabel opent een form met de betreffende selectie. 
  Voordelen van deze methode: als slechts een maand (of een beperkt 
  aantal) moet worden opgehaald wordt alleen door de betreffende 
  maanden gebladerd en niet door een steeds groeiende tabel 
  (afhankelijk van het aantal records kan dat zeer traag gaan worden),
  daarnaast worden  de verschillende maanden apart opgeslagen, zijn 
  schrijf beveiligd en gemakkelijk als backup op te slaan.