2013-07-07 3 views
0

Я пытаюсь извлечь данные из устаревшей базы данных для продажи, которая работает в системе DOS.Какой формат является этой базой данных?

56 KB DATABASE.DA0 - binary data 
232 KB DATABASE.DA1 - binary data 
192 KB DATABASE.DA2 - binary data 
396 KB DATABASE.DA3 - binary data 
224 KB DATABASE.DA4 - binary data 
316 KB DATABASE.DA5 - binary data 
60 KB DATABASE.DAS - magic number "MPROS" - some kind of data format specification 
2.8 MB DATABASE.DAT - magic number "MPROD1" - some kind of flatfile 
12 KB DATABASE.DPL - magic number "MPRO2" - some kind of UI script 

Строка файла данных имеет размеры полей указаны в двоичной системе, например:

\03Mrs\03XXX\03XXX\0cXXXX Street 

Файл спецификации имеет разделы, которые выглядят следующим образом:

Export $001=CLIENT NUMBER ,TYPE=C,WI=13,CASE=U,SERIAL 
$002=DATE ,TYPE=D(dd-mm-yy) 
$003=TITLE ,TYPE=C,wi=7 
$004=FIRST NAME ,wi=12 
$005=SURNAME ,wi=30 
$006=STREET ,wi=30 
$007=SUBURB/TOWN ,wi=25 
$008=POSTCODE ,wi=8 
$009=TELEPHONE ,wi=15 
$010=PURCHASE ,TYPE=N,pr=2,ju=r,wi=9 
$011=2ND LAST CONTACT ,TYPE=D(dd-mm-yy) 
$012=3RD LAST CONTACT ,TYPE=D(dd-mm-yy) 
$013=4TH LAST CONTACT ,TYPE=D(dd-mm-yy) 
$014=MAILING LIST (Y/N) ,wi=1 

...

\PROG 
    dc init,nameline,lastline,streetline,figs,wk,line,nacase,sequence 
    dc nad 
    getpar 'nacase',nacase 
    leftstr first,1,init 
    ifa contact 
     nameline=title+' '+init+' '+surname 
    else 
     nameline=surname 
    endif 
    unline nameline 
    streetline=property+' '+street_no+' '+street 
    unline streetline 
    if nacase bw 'l' 
     setcase nameline,w 
     setcase streetline,w 
    endif 
    lastline=suburb 
;;  unline lastline 
    if nacase bw 'l' 
     setcase lastline,w 
    endif 
    gosub towJnpostcode 

    nad=nameline 
    ifp contact 
     nad=contact+CR+nad 
    endif 
    nad=nad+CR+streetline+CR+lastline 


    ifnotf then notf 
    if $display='a' 
     wk='Records: '+$trc+' ' 
    endif 
    if $display='s' 
     wk='Records: '+$src+' from '+$trc+' ' 
    endif 
    a=51-len(wk) 
    fillstr line,'ƒ',a 
    figs=wk+line 

    if $index=1 
     sequence='customer ref' 
    endif 
    if $index=2 
     sequence='postcode 

Кто-нибудь k теперь какой тип системы это и есть ли какие-либо готовые библиотеки или конвертеры, которые могли бы его прочитать?

+0

Просьба передать данные двоичных файлов через TrID и сообщить нам, какие ответы у вас есть? Это может помочь нам понять это. – bugmagnet

ответ

1

Я думаю, что у вас есть программное обеспечение, разработанное в Masterfile Pro. Я понял, что из аналогичного синтаксиса, найденного на Process Census in MPRO database

+0

Спасибо. Я не смог найти хороший способ автоматизировать преобразование данных и просто вручную запустить 40 экспорта в CSV. – Phssthpok

Смежные вопросы