Как я могу экспортировать данные в устаревшем приложении DOS, если опция экспорта недоступна?
Вопрос
Мой клиент дал нам задание экспортировать данные из устаревшей системы DOS, использование базы данных RAIMA, чтобы его можно было импортировать в новую систему, которую мы пишем для них.Похоже, что данные хранятся в стандартном формате файла, хотя, когда мы открываем файлы, большая часть текста представляет собой тарабарщину.
Мы видим Raima Database Manager в верхней части файлов , которые мы открыли ...Мы попробовали погуглить этот термин, и, похоже, это старый формат базы данных.Излишне говорить, что поставщик, написавший программное обеспечение, больше не поддерживает его.Есть ли какой-либо другой способ, которым мы можем экспортировать эти данные?
Есть ли способ автоматически удалять данные с экрана?
Примечание
Это простая система выставления счетов, вся информация находится на одном экране приложения.
Решение
для Raima Data Manager Версии 3.21A Эта статья указывает, что приложение, скорее всего, было написано на C и в нем использовались Язык определения данных Raima чтобы структурировать файлы - поищите в файлах что-нибудь похожее на .dbd и .tbl - возможно, вам придется просматривать их с помощью чего-то вроде VI, имеющего шестнадцатеричный режим.Весьма вероятно, что структуры данных встроены в один из файлов.
Редактировать:
вот несколько ссылок, которые могут привести вас к дополнительной информации
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
Другие советы
Райма похоже, дела все еще идут, возможно, стоит отправить им электронное письмо или посмотреть, совместим ли один из их новых продуктов с обратной связью.В противном случае речь идет о реверс-инжиниринге приложения, чтобы либо выгрузить из него данные, либо определить формат файла.
было бы полезно узнать, какая версия Raima Database Manager использовалась; db_Vista ( База данных) или RDM или Velocis или Встроенный RDM?Приблизительная эпоха, когда было написано приложение DOS, помогла бы сузить круг возможных версий.
RDM Embedded был выпущен Centura с открытым исходным кодом примерно в 2000 году, а затем переименован в db.linux.Возможно, вы найдете в исходном коде некоторую информацию, которая прольет свет на то, как они структурировали файлы.
В любом случае db_Vista родилась в 1982 году, так что, скорее всего, это файловая система B-Tree / indexing system.
В качестве второго варианта (или, возможно, последнего средства), если Raima не может вам помочь, вы можете использовать инструмент автоматизации, чтобы удалить информацию с экрана и проанализировать ее.Учитывая, что это приложение DOS, если его можно запустить в окне консоли Windows, я бы использовал такой инструмент, как Баклажаны, Тест завершен, или Самый высокий.Все эти инструменты предназначены в первую очередь для автоматизации тестирования с помощью графического интерфейса, но довольно хороши для такого рода работ.Я думаю, что в свое время у Hightest была версия для DOS.
Другим вариантом может быть использование любого механизма отчетности, который есть в приложении dos, для распечатки всех данных приложения в текстовый файл (через перенаправление prn:) а затем проанализируйте его из обычного текстового формата - это было бы большой работой (хотя регулярное выражение может быстро удалить лишнюю чушь), но я это сделал.
Будет ли приложение DOS запускаться в окне командной строки в Windows XP?Если это так, возможно, вы сможете вырезать и вставить данные в текстовый редактор или электронную таблицу.
Мне приходит в голову еще одна идея.Вы можете использовать Java Robot или даже простой код Win API для отправки нажатий клавиш в командное окно для просмотра записей.Это половина твоей битвы.Похоже, что в окне командной строки есть опция "Выбрать все", объедините ее с командой "Копировать", и вы должны быть настроены.
Вам также, вероятно, следует потратить двадцать минут на то, чтобы исключить возможность того, что формат базы данных не является чем-то обычным для той эпохи - db3, Paradox, Filemaker или тому подобное, - но с переименованными расширениями файлов.Попробуйте открыть в Excel или аналогичном формате, указав формат (сначала добавьте дополнительные фильтры в Excel, если они вам нужны).Рабочий стол базы данных Borland также когда-то был хорош для такого рода исследований.
Это рискованный шаг, но он окупился для меня в нескольких случаях, когда какой-нибудь "непонятный" формат файла оказывался запутанной версией чего-то гораздо более распространенного (в частности, db3).За пределами эпохи DOS я также время от времени обнаруживал файлы с запутанным доступом.
Raima (по крайней мере, те версии, которые я использую) поставляется с инструментом под названием datdump, который записывает файлы данных в удобочитаемый формат.Существует также инструмент под названием dbexp, который может генерировать CSV-файлы из базы данных Raima.
Держу пари, прекрасные ребята из Раймы могли бы тебе помочь.Я знаю, что они все еще здесь.Я вижу, что их веб-сайт даже публикует формат своих файлов данных в своей области поддержки.Это может меняться от версии к версии Raima, но должно дать вам хорошее представление о том, как начать писать свой собственный код извлечения.