Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Daten aus Cobol importieren (https://www.delphipraxis.net/115329-daten-aus-cobol-importieren.html)

Schweesspunkt 10. Jun 2008 13:21

Datenbank: Firebird • Version: 2.0 • Zugriff über: Delphi Interbase Treiber

Daten aus Cobol importieren
 
Hi Forum,

Im Moment benutzte ich ein altes Kompta-Programm das auf Cobol (AcuCobol 5.21) basiert.

Ende dieses Jahres will ich auf eine neue Soft umstellen, die unter anderem auch die Komptabilität integriert.

Ich komme an alle Daten heran, außer an die aus der Komptabilität.

Die Firma die das Cobol-Programm erstellt hat gibt es nicht mehr, also keine Hilfe von dieser Seite.

Meine Frage:
Kennt jemand ein Tool oder eine Schnittstelle mit der man diese Daten auslesen kann?
Da es sich um eine einmalige Sache handelt, sollte das ganze möglichst kostengünstig sein.

Besten Dank im Voraus,
M.f.G.
Alain

RavenIV 10. Jun 2008 15:16

Re: Daten aus Cobol importieren
 
In welche Datenbank wird denn von Cobol geschrieben?

Schweesspunkt 10. Jun 2008 16:56

Re: Daten aus Cobol importieren
 
Hi,

Soweit ich das sehen kann, in die bei AcuCobol mitgelieferte Datenbank.

Wenn ich die Dateien mit einem Hex Editer anschaue kann ich die Texte lesen jedoch nicht die Zahlenwerte.
Die sind in irgend einem Cobol-eigenem Format.

Da ich die Werte teilweise kenne habe ich versucht dieses Format zu entschlüsseln jedoch ohne Erfolg.

Alain

bluesbear 10. Jun 2008 18:44

Re: Daten aus Cobol importieren
 
Das könnte ein Puzzlespiel werden, diese Daten zu interpretieren...
Kurzes googeln nach
"AcuCobol 5.21" database datatypes
brachte
http://www.pervasive.com/documentati...oper_Guide.pdf

Und ich muss dazusagen, ich habe mal wieder keine Ahnung von dem Thema <g>. Also hab ich möglicherweise völligen Blödsinn geantwortet.

mkinzler 10. Jun 2008 19:04

Re: Daten aus Cobol importieren
 
Wenn diese Datenbank dahinter stecken würde, wäre es wohl kein Problem

marabu 10. Jun 2008 19:44

Re: Daten aus Cobol importieren
 
Salut Alain,

vermutlich wurden die Daten mit dem Vision File System gespeichert. Wären es SQL / ODBC Zugriffe, dann wüsstest du es wahrscheinlich. Zum Lieferumfang von AcuCobol gehört eigentlich das Utility VUTIL32, mit dem du die Daten exportieren kannst. Die Binärformate müssten sich anhand der teilweise bekannten Feldwerte erraten lassen. Noch einfacher ist es natürlich, wenn die Programmquellen vorliegen.

Äddi

Schweesspunkt 11. Jun 2008 07:39

Re: Daten aus Cobol importieren
 
Hi,

Also es ist keine SQL Datenbank. Da bin ich mir zu 99.9% sicher.

Das VUtil32.exe sieht vielversprechend aus. Werde mal ein wenig mit dem herum experimentieren.
Bei meinem ersten Versuch habe ich Daten in einer Textdatei gespeichert, die Zahlenwerte waren jedoch immer noch verstümmelt.
Da gibt es aber auch noch eine Option -convert, mal schauen vielleicht hilft die weiter.

Danke an alle,
Alain

P.S.: Die Programmquellen zu besitzen wäre mein Traum. :-D

katjah 11. Jun 2008 19:36

Re: Daten aus Cobol importieren
 
Zitat:

Wenn ich die Dateien mit einem Hex Editer anschaue kann ich die Texte lesen jedoch nicht die Zahlenwerte.
Die sind in irgend einem Cobol-eigenem Format.
Das sind bestimmt gepackte Felder (COMP-3). Die sind, soweit ich mich erinnern kann, in BCD codiert.

Schweesspunkt 12. Jun 2008 14:19

Re: Daten aus Cobol importieren
 
@katjah:

Vielen besten Dank, das ist die Lösung.

Die sind wirklich comp-3 kodiert.

Das schlimme bei der Sache ist, das hätte ich im Hex-Editor sehen müssen! Die Zahlen stehen ja lesbar im Hex-Code.
(0007 610D = -76,10! Das D steht für das minus-Zeichen sonst F = unsigned oder C = +)

Das hat mir jetzt wirklich geholfen und der Rest ist nur noch Fleißarbeit.

Danke noch mal.
Grüsse,
Alain


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz