Announcement

Collapse
No announcement yet.

btrieve datenbanken entschlüsseln

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • btrieve datenbanken entschlüsseln

    Hi,

    kennt sich jemand im Bereich btrieve aus.
    Ich muss Daten von btrieve in irgend ein "normales" Format konvertieren!

    Dank Walter

  • #2
    Hallo Walter,

    der Zugriff auf btrieve-Daten kann für Konvertierungen am einfachsten über den ODBC-Treiber erfolgen. Der ist zwar nicht gnadenlos schnell, aber Du mußt ja die Daten vermutlich nicht jeden Tag konvertieren. Soviel zum technischen Teil der Frage.

    Die Logik bei btrieve ist schon etwas komplizierter. Ursprünglich wurde in btrieve in einer Zeile der 'Tabelle' ein Record abgespeichert, den der Programmierer intern definiert hat. Die 'Tabelle' selbst hatte daher keine Kenntnis über ihren Aufbau, mit Ausnahme der Index-Definitionen, die als Bereiche hinterlegt waren. Erst später kamen *.ddf-Dateien hinzu, in denen extern der Satzaufbau definiert war. Damit war es dann möglich, z.B. über ODBC zuzugreifen. Ich kenne aus dem DOS-Bereich kein Programm, das bereits diese ddf-Dateien nutzt. Hier ist also echte Handarbeit angesagt. Es git eine Delphi-Unit, mit der Du satzweise auf btrieve-Tabellen zugreifen kannst. Allerdings mußt Du hier eben den Satzaufbau kennen oder ermitteln. Du liest einfach eine Zeile in einen Puffer ein und 'zerpflückst' diese Zeile dann.

    Wenn Du mir etwas mehr über Deine Daten sagen kannst, kann ich Dir vielleicht noch weiter helfen. Ich habe in den letzten Jahren für mehrere (DOS-)Programme solche Konvertierungen geschrieben. Und es gibt nicht gar so viele verbreitete Programme, die mit btrieve arbeiten.

    Gruß Jürgen

    [email protected]

    Comment


    • #3
      Hallo Juergen,

      erst mal Danke für die Info's. Bei den Daten handelt es sich um Patientendaten die in Verschiedenen Karteien eingetragen sind. Es gibt eine Datei die offensichtlich die Struktur enthält (zumindestens am Anfang), dann 1 Datei mit den Stammdaten und 5 Dateien als Karteikarten. Die Kartei-Dateien haben je Datensatz ein feste Länge von 1760 Byte (mit einem HEX-Editor herausgefunden). Bei der Stammdaten-Datei ist vor jedem neuen Eintrag ein bestimmtes "Start"-Zeichen zu finden. In der Strukturdatei sind mehrere Einträge enthalten, z.B. Blatt1, Blatt2 ... Baltt5 dahinter verbergen sich Integerzahlen. Ich habe noch nicht herausgefunden ob diese Int-Zahlen eventuelle Multiplikatoren für die Anfänge der Karteien sind, oder ob es sich vieleicht um Absolute Adressen handelt. Hinter dem ganzen steht das Problem, das der Softwareanbieter seinen Kunden (Ärzten) die zu einer anderen Software wechseln möchten keine Datenübenahme anbietet. Unter dem Motto - fressen oder gefressen werden -. Das Programm ist ein DOS Programm -> Medipas. Einzelne Datensätze kann ich aus datenschutzrechtlichen Gründen nicht freigeben.

      Vielen Dank und viele Grüße Walte

      Comment


      • #4
        Hallo Walter,
        Es gibt bei den Btrieve-Tools ein schönes Utility mit dem man sich
        eine Textdatei( begrenzt mit hex '0D0A', erstellen kann.
        Das Tool heisst *** Btrieve Maintenance Utility ***.

        mfG
        Karl-Heinz Schmidt

        Email : [email protected]

        Comment

        Working...
        X