0

我的客户给我们的任务是使用 RAIMA 数据库从遗留 DOS 系统中导出数据,以便可以将其导入到我们为他们编写的新系统中。看起来数据是以平面文件格式存储的,尽管当我们打开文件时,大部分文本都是乱码。

我们确实在我们打开的文件顶部看到了 Raima 数据库管理器……我们尝试用谷歌搜索该术语,似乎它是一种旧的数据库格式。不用说编写软件的供应商不再支持它。有没有其他方法可以让我们导出这些数据?

有没有办法自动从屏幕上抓取数据?

笔记

这是一个简单的发票系统,所有信息都在应用程序的一个屏幕上。

4

8 回答 8

2

Raima似乎还在继续,可能值得给他们发一封邮件或看看他们的新产品是否向后兼容。失败是对应用程序进行逆向工程以从中转储数据或找出文件格式的情况。

于 2009-01-07T15:42:04.017 回答
2

了解所使用的 Raima Database Manager 版本会有所帮助;db_VistaRDMVelocisRDM Embedded?编写 DOS 应用程序的大致时代将有助于缩小可能的版本。

RDM Embedded 在 2000 年左右由 Centura 作为开源发布,然后重命名为 db.linux。您可能会在源代码中找到一些信息,这些信息可以阐明它们是如何构建文件的。

无论如何,db_Vista 诞生于 1982 年,因此它很可能是一个 B-Tree 文件/索引系统。

于 2009-01-07T15:53:56.147 回答
2

对于 Raima 数据管理器版本 3.21A这篇文章表明该应用程序可能是用 C 语言编写的,并且它使用 Raima 数据定义语言来构建文件 - 在文件中查找类似的内容,检查 .dbd 和 .tbl - 您可能需要查看他们使用具有十六进制模式的VI。数据结构很可能嵌入其中一个文件中。

编辑:

这里有一些链接可能会引导您了解更多信息

http://www.raima.com/

http://www.raima.com/database_technology/rdm.php3 http://www.raima.com/database/download.php3

http://database.ittoolbox.com/topics/t.asp?t=411&p=415&h1=411&h2=412&h3=415

http://www.faqs.org/faqs/databases/free-databases/

http://www.ittia.com/products/ittia_odbc.html

http://www.mactech.com/articles/mactech/Vol.07/07.02/db_VistaIII/index.html

于 2009-01-07T16:18:56.360 回答
1

DOS 应用程序会在 Windows XP 的命令窗口中运行吗?如果是这样,您也许可以将数据剪切并粘贴到文本编辑器或电子表格中。

我想到了另一个想法。您可以使用 Java Robot 甚至简单的 Win API 代码将击键发送到命令窗口以翻阅记录。这就是你的战斗的一半。看起来命令窗口有一个“全选”选项,将其与“复制”命令结合起来,你应该被设置。

于 2009-01-07T15:51:30.783 回答
1

作为第二种选择(或者可能是最后的手段),如果 Raima 无法帮助您,您可以使用自动化工具从屏幕上刮下信息并进行分析。鉴于它是一个 DOS 应用程序,如果它可以在 Windows 控制台窗口中运行,我会使用像EggplantTestCompleteHighTest这样的工具。这些工具主要是为通过 GUI 或 UI 进行测试自动化而设计的,但非常适合这类工作。我认为 Hightest 过去曾经有一个 DOS 版本。

于 2009-01-07T15:51:40.563 回答
1

另一种选择可能是使用 dos 应用程序必须将所有应用程序数据打印到文本文件的任何报告机制(通过 prn: 的重定向),然后从纯文本格式解析它 - 这将是很多工作(尽管正则表达式可以快速解析出多余的废话)但我已经做到了。

于 2009-01-07T16:02:20.013 回答
1

您可能还应该花 20 分钟排除数据库格式在那个时代并不常见的可能性——db3、Paradox、Filemaker 或类似的东西——但文件扩展名已重命名。尝试在 Excel 中打开或指定格式的类似文件(如果需要,请先将额外的过滤器添加到 Excel)。Borland 的 Database Desktop 过去也很适合这种检查。

这是一个长远的目标,但是当一些“晦涩”的文件格式被证明是更常见的东西(尤其是 db3)的模糊版本时,它对我来说是有回报的。在 DOS 时代之外,我发现模糊的 Access 文件也时不时出现。

于 2009-01-07T16:09:28.610 回答
1

Raima(至少我使用的版本)带有一个名为 datdump 的工具,它以人类可读的格式写出数据文件。还有一个名为 dbexp 的工具,它可以从 Raima 数据库生成 CSV 文件。

我敢打赌,Raima 的优秀人员可以帮助你。我知道他们还在。我看到他们的网站甚至在其支持区域中发布了他们的数据文件的文件格式。这可能会因 Raima 的版本而异,但应该让您对如何开始编写自己的提取代码有一个很好的了解。

于 2010-09-09T00:56:25.667 回答