It can be used as a separate CDS/ISIS Pascal program or it can be integrated in your system as a menu exit.
It works fast.
It uses the FST, which is a well knows CDS/ISIS technique,
to build a conversion table. Moreover, it allows you to use
all the advanced commands of the formatting languages in
this FST.
It allows you to select which records are to be converted
by means of a search or by the record numbers.
It supports path statements.
It does not offer any means to number the number of
occurrences of a repeatable field to converted.
It uses the c:\isis directory as its standard directory for
the output.
This could be a CDS/ISIS record to be exported (in the ALL format):
MFN: 28 15: m 100: ^a0-471-93787-8 300: ^aTedd^bLucy A. 200: ^aAn introduction to computer-based library systems 260: ^a3rd edition 400: ^aChichester^bJ. Wiley & Sons 440: ^b1993 460: ^axv, 316 p^bill 620: ^alibrary automation(Of course, this is a simplified version.)
And this could be the structure of the target dBase database:
Structure for database: C:books.dbf
Number of data records: 105
Date of last update : 02/25/96
Field Field Name Type Width Dec
1 TITLE Character 60
2 AUTHORS Character 50
3 CITY Character 30
4 PUBLISHER Character 30
5 YEAR Character 4
6 PAGES Character 10
7 ILLUSTR Logical 1
8 ISBN Character 13
9 KEYWORD Character 20
** Total ** 219
You can export the CDS/ISIS records to a comma delimited file
by the help of this FST:
1 0 v200^a 2 0 (v300^a,|, |v300^b+|; |) 3 0 v400^a 4 0 v400^b 5 0 v440^b 6 0 v460^a 7 0 if p(v460^b) then 'Y' else 'N' fi 8 0 v100^a 9 0 v620^aNote that you can use here advanced formatting techniques, e.g. adding strings and handling of repeatable fields (see field 2), or if-then-else statements (see field 7).
After the conversion, the result should look like this:
TITLE An introduction to computer-based library systems AUTHORS Tedd, Lucy A. CITY Chichester PUBLISHER J. Wiley & Sons YEAR 1993 PAGES xv, 316 p ILLUSTR Y ISBN 0-471-93787-8 KEYWORD library automation
A - ISISPAS - Advanced programming servicesIt can also be installed as a menu exit.
DLMEXP will asked you a few questions:
| CDS/ISIS to Delimited format conversion |
Export FST name? ................ exp
Output file name? ............... c:\isis\work\books.txt
Export last search results (Y/N)? n
MFN limits? ..................... 27-28
Exporting record 28
-->
The questions are not presented all at once, like in the
screen print, but one at the time.
You can choose between:
-->
In the case of the given example the result will look like
this:
"An introduction to computer-based library systems","Tedd, Lucy A.","Chichester","J. Wiley & Sons","1993","xv, 316 p","Y","0-471-93787-8","library automation"This can be imported in you dBase database by this command:
append from c:\isis\work\books.txt delimited
10 0 v600^abut some DBMS programs will not be able to inport long texts or to transform imported delimited fields into a memo field.
2 0 (if not s|;|+v300):';' then mdl v300 fi)This will reduce:
300: ^aHopkinson^bAlan 300: ^aBuxton^bAndrewto:
"Hopkinson, Alan"In other cases you will have to write a format exit, which is a CDS/ISIS Pascal program, or you will have to modify the target database by a dBase program.
| CDS/ISIS to Delimited format conversion |
Export FST name? ................ exp.fst
Cannot find filec:\isis\data\test\exp.fst.FST
Export FST name? ................
Error 53 []which means that you have used a if-then-else statement without the closing "fi" (see list in the CDS/ISIS manual, p. 74).
Morover, by using the standard CDS/ISIS export facilities you will have the opportunity to sort your records before you export them.