03. januar 2000 - 19:16Der er
8 kommentarer og 1 løsning
Konvertering af DSI-database ver. 2 til Access
Jeg mangler svaret på hvordan man konverterer en databasefil fra gammelt DSI-system ver. 2 til en kommasepereteret fil eller ligende. Filen skal bruges i Access database.
Her kommer en trin-for-trin vejledning til DSI System 2.2:
1 - Åbn den database du skal udtrække data fra 2 - Vælg [Rapport][Definer >][Alle poster] 3 - Giv rapporten et navn ok svar Ja til at oprette en ny. 4 - I rapportvinduet vælges Type=Kommafil 5 - Gå ind i menuen [Feltdesign] 6 - Tryk retur for oprettelse af felt, og vælg database som type (formel kan bruges til f.eks. at sætte 2 felter sammen á la {fornavn} + " " + {efternavn}, men de ting kan også laves i Access). 7 - Nu skulle du gerne få en liste over alle felter i din database. Vælg dem du skal bruge, ét ad gangen. Hvis du vælger et tekst (ALFA) felt får du muligheden for kun at medtage et interval (f.eks. fra 1. til 3. tegn) af feltet - normalt har man ikke brug for det - bare lad intervalfeltet stå tomt. 8 - Når du har de felter der skal med trykkes F2 for at godkende 9 - Så er du klar - tryk på [Udskriv] og vælg et filnavn. DSI tilføjer automatisk ".kom" som efternavn - hvad hverken Access eller Excel vil kendes ved, men omdøb filen bagefter, f.eks. til ".csv". 10 - Importér i Access. Vær opmærksom på at DSI eksporterer i ASCII (DOS) tekst mens Access/Excel som standard arbejder med ANSI (Windows) tekst. Det betyder at danske specialtegn (æøå) ikke kommer med, med mindre du fortæller Access at den skal benytte ASCII. I Access2000 vælges i guiden Tekstimport knappen "Avanceret..." og tegnsættet "Vesteuropæisk (DOS)". I Access97 hedder det vistnok ASCII - men du kan altid prøve dig frem. Vær i øvrigt opmærksom på en dum fejl i importen hér - du skal ændre decimalseparatoren fra "," (komma) til noget andet (f.eks. "." - punktum). Det kan muligvis give problemer hvis du skal importere decimaltal, men det bør igen kunne løses efter importen i Access.
Så kan jeg ikke finde på mere - lad mig høre om det funker.
Så har du et problem. Jeg tror ikke du finder andre programmer end DSI der kan læse DSIs eget format - så hvis ikke du har eksporteret data fra DSI til kommafiler inden bliver det svært.
Afhængig af omfang vil jeg muligvis kunne lave konverteringen for dig - men så skal jeg vide lidt mere om basen (først og fremmest antal tabeller og felter). Hvis du har installationsfiler til DSI kan du vel også lægge det ind igen for en kort bemærkning. Det kører fint under WinNT (formentlig også Win9x varianterne) - bare man sætter en fornuftig files parameter.
Ok. Jeg tænker lige over om det er besværet værd. Det drejer sig om et videokartotek, og det består af flere små baser. Det er vist hurtigere at lave en ny i Access.
Jeg har ikke selv programmet, så jeg håbede på at det kunne lade sig gøre på en anden måde.
Jeg gjorde det ved at printe dem ud som en ASCI-fil, med et semmikolon i mellem, og så læse det ind i flere filer, som så blev hægtet sammen. DSI kan ikke printe mere en 400 karakterer ad gangen, så jeg oprettede et felt i mine kort, og så nummererede jeg dem fra 1 til xxx. Det kan gøres ved en lilel rapport i DSI, hvor der laves enkonstant, der er forhøjes med 1 for hver post, og så sættes ind i feltet, der er oprettet til det formål.
Det giver problemer med bogstaver som æøå og de tyske med umlaut.
Det klarede jeg så ved at lade ACCESS søge og erstatte. Husk at "klippe" det gale tegn ud, for det svarer ikke altid til dem der kan konstrueres ved hjælp af asci-koder.
Ø og ø giver problemer, idet de forsvinder, og så tager de det næste bogstav ud til de store havmåger. Så her må lidt håndarbejde til, men alle andre tegn, er det lykkedes at konvertere. Søg i hele dokumentet, og på en del af feltet, så tager det et par minutter for hvert bogstat (Husk at store og små bogstaver er forskellige.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.