anoniem Geplaatst: 10 oktober 2003 Delen Geplaatst: 10 oktober 2003 Hi Folks, Ik heb een routine'tje waarmee ik alle tabelnamen kan achterhalen uit een Access-database dmv OpenSchema, geen punt. Maar hoe kom ik er nou bijv. achter wat voor een Format gebruikt wordt in een bepaalde kolom (veld). Ik wil datums in precies dezelfde Format tonen als in de database. Hoe kom ik via VB6 aan zulk soort database-gegevens? Bedankt voor je tijd! Rob Quote Link naar reactie
anoniem Geplaatst: 10 oktober 2003 Auteur Delen Geplaatst: 10 oktober 2003 O JA! Ik gebruik ADO in combinatie met .mdb bestanden. ROB Quote Link naar reactie
anoniem Geplaatst: 10 oktober 2003 Auteur Delen Geplaatst: 10 oktober 2003 Datums worden, vooropgesteld dat je gebruik maakt van het datatype date, niet opgeslagen in een dd-mm-jjjj vorm maar als een numerieke waarde die jij naar elk willekeurig datumformaat kunt omzetten. Dat je ze in access in een dd-mm-jjjj vorm gepresenteerd krijgt zegt niets over de wijze van opslag. Het getoonde formaat zal waarschijnlijk afhankelijk zijn van je local settings in Windows. M.a.w. als je in je vb-programma je datum wilt laten weergeven zoals access dat doet zul je het datumformaat op moeten pikken zoals windows dat doet. Dit kun je als volgt doen. Maak een nieuwe module aan met daarin de volgende code: [code:1:a4eeb4c957] Declare Function GetLocaleInfo Lib "kernel32" Alias "GetLocaleInfoA" (ByVal Locale As Long, ByVal LCType As Long, ByVal lpLCData As String, ByVal cchData As Long) As Long Public Function LeesDatumFormaat() As String Const strFunctie = "LeesDatumFormaat" Const LOCALE_SLONGDATE = &H20 ' long date format string Const LOCALE_SSHORTDATE = &H1F ' short date format string Dim strResultaat As String Dim lngResultaat As Long On Error GoTo ErrorHandler LeesDatumFormaat = "" strResultaat = Space(255) lngResultaat = GetLocaleInfo(0, LOCALE_SSHORTDATE, strResultaat, 255) strResultaat = Left(strResultaat, lngResultaat) LeesDatumFormaat = strResultaat Exit Function ErrorHandler: MsgBox "Er is wat foutgegaan" End Function [/code:1:a4eeb4c957] Deze funktie haalt het shortdate format op maar is met een eenvoudige ingreep om te bouwen tot een funktie die naar believen het long en het short format ophaalt. Met de kreet strFormat = LeesdatumFormaat krijg je nu het gebruikte datumformaat. Dit formaat kun je nu gebruiken in je format funktie. Quote Link naar reactie
anoniem Geplaatst: 11 oktober 2003 Auteur Delen Geplaatst: 11 oktober 2003 OK, mee eens De vorm waarmee Access een datum laat zien hoeft niet de vorm te zijn waarmee de datum is opgeslagen, maar .... In het ontwerpscherm van een tabel (in Access) kan je veldeigenschappen instellen (waaronder ook Notatie). Mijn eigenlijke vraag is, of je die veldeigenschappen kunt achterhalen vanuit VB6. Ze zitten tenslotte ook opgeslagen in de mdb. ROB Quote Link naar reactie
anoniem Geplaatst: 11 oktober 2003 Auteur Delen Geplaatst: 11 oktober 2003 Ik vrees van niet. Daarvoor zou de notatiewijze een property moeten zijn van het Field-object in de recordset. En dat is, althans volgens de help, niet het geval. Maar misschien dat er een andere manier is. Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen