Home » Archimedes archive » Archimedes World » AW-1994-04-Disc2.adf » Disk2Apr94 » !AWApr94/Goodies/PowerBase/PBaseDoc/CSVFiles
!AWApr94/Goodies/PowerBase/PBaseDoc/CSVFiles
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Archimedes archive » Archimedes World » AW-1994-04-Disc2.adf » Disk2Apr94 |
Filename: | !AWApr94/Goodies/PowerBase/PBaseDoc/CSVFiles |
Read OK: | ✔ |
File size: | 3672 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
CSV Files ========= What are CSV files? =================== CSV stands for "comma-separated value" and is the name given to data files in which each item of data is separated from the next by a comma. Such files are widely used to transfer data from one application to another, e.g. from a database to a spreadsheet or from a RISC OS database to a PC database. The standard for such files does not appear to be very rigorously defined and the following variants may be encountered:- (1) Data which is non-numeric (e.g. ordinary text items such as names and addresses) are usually enclosed in quotation marks ("") whereas numeric items are not. This makes it possible for an application which is reading a CSV file to distinguish between numbers and strings (which might of course contain numerals) and also allows the comma to be used as a character within a string without being mistaken for a data separator. (Addresses often have commas in them, e.g. 112, Keighley Road.) (2) Null data items are usually included and can be located by looking for two commas with either nothing in between them or with only two quotation marks between them, i.e. ,, or ,"",. Each line of data (record) in such a file will always contain the same number of data items (fields). Nulls may, however, be omitted entirely in which case the number of fields per record will vary. (3) The way in which each record is terminated tends to vary from one system to another. The last item of data in a record is not followed by a comma but by an invisible character or pair of characters called the line terminator. On RISC OS systems this is the "line-feed" character (ASCII value 10) and on PCs it is usually the "carriage-return" character (ASCII value 13). You might, however, encounter CSV files in which BOTH these characters are used, i.e. LF CR or CR LF. (4) The separator isn't always even a comma. The "TAB" character (ASCII value 9) is often used and such files are called TSV files, but characters such as the semicolon are sometimes used too. (5) Some applications which accept a CSV file as input expect the first record to contain the names of the fields which comprise the subsequent records, e.g. if each record consists of a name and a four-part address this "header" record might read "NAME","STREET","TOWN","COUNTY","POSTCODE". How does Powerbase use CSV files? ================================= Powerbase is able to save data in the form of true CSV files or files using some other data separator. If the separator is indeed a comma then the file created is of type &dfe and its icon displays the letters "CSV". If some other separator, such as TAB, is used (see (4) above) then the file is of the ordinary "text" type, i.e. &fff. Files of these types may also be used to enter data into a Powerbase database. In what follows we will, for convenience, refer to them as "CSV files" whether or not the separator is a comma. The choices on the main menu which control these actions are 'Export CSV' and 'CSV options'. CSV options =========== This leads to a dialogue box which allows you to specify all the file characteristics described in the previous section. Thus, selection of the first three option buttons causes a saved file to have, respectively:- (a) quotes round non-numeric fields (see (1) above) (b) a header record specifying the field names (see (5) above) (c) null fields included (see (2) above). Note that the "field names" referred to in (b) are, by default, the TAGS of the corresponding Powerbase fields, but may be changed to the DESCRIPTORS by altering the settings in the 'Print options' dialogue box. The field separator and record terminator may be changed by means of menus which appear when you click on the right-pointing arrows. Each of these menus also allows you to define your own separator and/or terminator of one or two printing characters. Two buttons in this dialogue box have not yet been referred to. Their function is described later (Using CSV files to import data). Export CSV ========== Having set up your options as described above, creating a CSV file is very like printing a list (see 'Printing'). First highlight the fields to be exported by clicking on each with ADJUST. Remember that the order in which the fields are highlighted is important. Next follow the 'Export CSV' option to the dialogue box and type in the search formula to determine which records are exported. Finally, enter the name of the file and drag the file icon to a filer window. The hourglass appears showing the progress of the operation. Experiment with saving CSV files with different settings of the CSV options and then loading the resulting files into Edit to examine them. Using CSV files to import data ============================== If you drag a CSV file onto the record display of an open database the options window (see CSV options) appears with a changed title and some additional icons, one of which displays the pathname of the CSV file. The same thing happens with a suitably-constituted text file (see above: 'How does Powerbase use CSV files'). Please note, however, that there are other circumstances under which a text file might be dropped on the record window. A properly-written script file (see 'ScriptFile') would be recognised as such, but a text file dropped onto the appropriate type of External field (i.e. a 'Text' or 'Text Block') field would become linked to that field instead of being treated like a CSV file. If you are importing data from a plain text file and your record contains fields of the aforementioned types be sure to drop the file on the window background, not on the external field. You are strongly advised to use proper CSV files if at all possible. There is an option to display each record as it is imported. The process is faster with this option turned off but much less informative. Most people like to know how things are progressing. Another option causes any trailing spaces in the imported data-fields to be stripped. Some database programs appear to pad all fields to their maximum length by adding spaces to the end of the data where necessary. If the program doesn't allow you to get rid of these spaces when exporting data in CSV format they can be a nuisance when the file is imported into Powerbase. Queries, for instance, may not work properly unless you use the "contains" comparator ({) rather than "equals". You can easily recognise this situation since the caret will always be at the far right of the field even though the visible characters nowhere near fill the field. Setting the "Strip spaces" switch before importing the file overcomes the problem. Clicking on 'GO' will make Powerbase try to create new Powerbase records from the data. If you decide not to do this you should click on 'Cancel'. If you do wish to import the data there are some important points to consider:- (1) The options need to be correctly set up. This means that if the CSV file originally came from a Powerbase application the settings in the options window should be exactly the same as they were when the file was exported. The exception to this is the 'Quotes' button which is greyed out on import because Powerbase doesn't need it. If the CSV file came from a PC or another RISC OS application you might have to load it into Edit to find out what separator and terminator are used, whether it uses quotes etc. (2) Will the data be read into the correct Powerbase fields? If no fields on the record screen are highlighted (i.e. with ADJUST) and the CSV file does not contain a header record then the answer is as follows:- (a) The first CSV field will be read into the first WRITABLE Powerbase field or Check box field. Non-writable fields such as Text blocks, Pictures, Buttons or fields which are merely labels will be ignored. The next CSV field will be read into the second Powerbase field and so on. (b) If the end of the CSV record is reached before all the writable fields have been filled then the next CSV record will start a new Powerbase record, i.e. the reading won't get out of step. It does not matter, therefore, if the CSV file omits null items. (c) If all writable fields are filled in before reaching the end of the CSV record Powerbase ignores the remainder of the latter and skips to the beginning of the next CSV record before starting a new Powerbase record. This is also to keep the operation in step. There will be occasions when you don't want to fill the Powerbase fields sequentially as just described. There are two ways of making the process more specific:- (a) If you highlight Powerbase fields with ADJUST before starting the import the data will be read only into the highlighted fields. The order in which the fields are filled is the order in which you highlighted them. Paragraphs (b) and (c) above apply in cases where the CSV record has more or fewer fields than are highlighted on the Powerbase record. In other words the operation proceeds as if the highlighted fields were the only ones in the record and as if they actually occurred in the order in which they were highlighted. (b) If the CSV file has a header which contains the tags or descriptors of fields in the Powerbase record then the import behaves exactly as if those fields were highlighted. The 'Print options' dialogue box must correctly reflect whether the tags or descriptors of fields are used. Note that you should not use both a header AND highlighting. Note also that there is nothing to prevent you adding a header manually to a CSV file which did not originate from a Powerbase application. What if the data won't fit? =========================== This is really two questions. If the database doesn't contain enough free records to hold all the imported CSV data you may get a "Database full when reading CSV file" error. There are two ways of avoiding this. The obvious one is to make sure the database is big enough before you start. If it isn't you can expand it via the 'Change length' dialogue box accessible from the 'Utilities' submenu on the icon bar menu. That dialogue box also has an 'Increment for expansion' which, if greater than zero, causes the database to expand automatically whenever it becomes full. Only if the database becomes full when the increment is set to zero should the aforementioned error occur. The second sense in which data might not fit is if an item of data is too long for the database field into which you are trying to import it. When a CSV file is being read Powerbase maintains a file called 'TooBig' inside the database's 'PrintJobs' directory. Anything read from the CSV file which won't fit in the target field is written to this file together with information about where it was intended to go. No writable Powerbase field may be longer than 246 characters and if an item of imported data exceeds this a note will be made in the 'TooBig' file advising you to define an External field (Text Block or Text) for such data. Advanced features of CSV import =============================== When you import a CSV file a new Powerbase record is normally created to accommodate each CSV record read from the file. You may also, subject to certain restrictions, use a CSV file to enter data into EXISTING Powerbase records. The CSV options window contains a button which, if selected, causes each record of a saved CSV file to include the primary key of the Powerbase record. The key is placed at the beginning of the record. Try creating CSV files with and without this option set and compare the files using Edit. If a file containing primary keys is dragged into a Powerbase record window Powerbase will attempt to locate the records with the same primary keys as the records in the CSV file. If the key is not found the CSV record is simply ignored. If it is found then the CSV data goes into the same record, overwriting any data which the target fields already contain. The operation described needs using with care. It is only really useful for transferring data between Powerbase databases which have the same primary key field. It can also lead to trouble if the primary key isn't unique, since the record located by Powerbase and into which the CSV data is read might not be the correct one. You have been warned! Finally, there is one option button in the CSV options window which only becomes active when the 'Header' button is selected. This is called 'With field data'. When selected the header of a saved CSV file contains not only the field names but also the field lengths and types. Again it is suggested that you create such a file and look at it in Edit. Each item in the header begins with a number. This is the defined field length in characters, i.e. the maximum allowed length in the Powerbase record field. Next comes a � character which separates the length from the field name. Another � separates the field name from the concluding number which is the field type. (The type numbers may be inspected by looking at the 'ValStrings' file in the Powerbase directory.) A file created in this form is NOT meant to be dropped on the window of an open database. It should be dropped on the Powerbase icon on the icon bar when no database is open. Powerbase will attempt to convert the file into a functioning database. All the fields will be ranged on the left of the record window, one beneath another and the primary key will consist of the first four characters of the first field. Don't try to create databases containing Check box, Button or External fields using this method; it's only meant for the most basic type of database.
00000000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | * 00000020 43 53 56 20 46 69 6c 65 73 0a 20 20 20 20 20 20 |CSV Files. | 00000030 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000040 20 20 20 20 20 20 20 20 20 20 3d 3d 3d 3d 3d 3d | ======| 00000050 3d 3d 3d 0a 57 68 61 74 20 61 72 65 20 43 53 56 |===.What are CSV| 00000060 20 66 69 6c 65 73 3f 20 0a 3d 3d 3d 3d 3d 3d 3d | files? .=======| 00000070 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 20 0a 43 53 |============ .CS| 00000080 56 20 73 74 61 6e 64 73 20 66 6f 72 20 22 63 6f |V stands for "co| 00000090 6d 6d 61 2d 73 65 70 61 72 61 74 65 64 20 76 61 |mma-separated va| 000000a0 6c 75 65 22 20 61 6e 64 20 69 73 20 74 68 65 20 |lue" and is the | 000000b0 6e 61 6d 65 20 67 69 76 65 6e 20 74 6f 20 64 61 |name given to da| 000000c0 74 61 20 66 69 6c 65 73 0a 69 6e 20 77 68 69 63 |ta files.in whic| 000000d0 68 20 65 61 63 68 20 69 74 65 6d 20 6f 66 20 64 |h each item of d| 000000e0 61 74 61 20 69 73 20 73 65 70 61 72 61 74 65 64 |ata is separated| 000000f0 20 66 72 6f 6d 20 74 68 65 20 6e 65 78 74 20 62 | from the next b| 00000100 79 20 61 20 63 6f 6d 6d 61 2e 20 53 75 63 68 20 |y a comma. Such | 00000110 66 69 6c 65 73 0a 61 72 65 20 77 69 64 65 6c 79 |files.are widely| 00000120 20 75 73 65 64 20 74 6f 20 74 72 61 6e 73 66 65 | used to transfe| 00000130 72 20 64 61 74 61 20 66 72 6f 6d 20 6f 6e 65 20 |r data from one | 00000140 61 70 70 6c 69 63 61 74 69 6f 6e 20 74 6f 20 61 |application to a| 00000150 6e 6f 74 68 65 72 2c 20 65 2e 67 2e 20 66 72 6f |nother, e.g. fro| 00000160 6d 0a 61 20 64 61 74 61 62 61 73 65 20 74 6f 20 |m.a database to | 00000170 61 20 73 70 72 65 61 64 73 68 65 65 74 20 6f 72 |a spreadsheet or| 00000180 20 66 72 6f 6d 20 61 20 52 49 53 43 20 4f 53 20 | from a RISC OS | 00000190 64 61 74 61 62 61 73 65 20 74 6f 20 61 20 50 43 |database to a PC| 000001a0 20 64 61 74 61 62 61 73 65 2e 20 54 68 65 0a 73 | database. The.s| 000001b0 74 61 6e 64 61 72 64 20 66 6f 72 20 73 75 63 68 |tandard for such| 000001c0 20 66 69 6c 65 73 20 64 6f 65 73 20 6e 6f 74 20 | files does not | 000001d0 61 70 70 65 61 72 20 74 6f 20 62 65 20 76 65 72 |appear to be ver| 000001e0 79 20 72 69 67 6f 72 6f 75 73 6c 79 20 64 65 66 |y rigorously def| 000001f0 69 6e 65 64 20 61 6e 64 0a 74 68 65 20 66 6f 6c |ined and.the fol| 00000200 6c 6f 77 69 6e 67 20 76 61 72 69 61 6e 74 73 20 |lowing variants | 00000210 6d 61 79 20 62 65 20 65 6e 63 6f 75 6e 74 65 72 |may be encounter| 00000220 65 64 3a 2d 0a 0a 28 31 29 20 44 61 74 61 20 77 |ed:-..(1) Data w| 00000230 68 69 63 68 20 69 73 20 6e 6f 6e 2d 6e 75 6d 65 |hich is non-nume| 00000240 72 69 63 20 28 65 2e 67 2e 20 6f 72 64 69 6e 61 |ric (e.g. ordina| 00000250 72 79 20 74 65 78 74 20 69 74 65 6d 73 20 73 75 |ry text items su| 00000260 63 68 20 61 73 20 6e 61 6d 65 73 20 61 6e 64 0a |ch as names and.| 00000270 61 64 64 72 65 73 73 65 73 29 20 61 72 65 20 75 |addresses) are u| 00000280 73 75 61 6c 6c 79 20 65 6e 63 6c 6f 73 65 64 20 |sually enclosed | 00000290 69 6e 20 71 75 6f 74 61 74 69 6f 6e 20 6d 61 72 |in quotation mar| 000002a0 6b 73 20 28 22 22 29 20 77 68 65 72 65 61 73 20 |ks ("") whereas | 000002b0 6e 75 6d 65 72 69 63 0a 69 74 65 6d 73 20 61 72 |numeric.items ar| 000002c0 65 20 6e 6f 74 2e 20 54 68 69 73 20 6d 61 6b 65 |e not. This make| 000002d0 73 20 69 74 20 70 6f 73 73 69 62 6c 65 20 66 6f |s it possible fo| 000002e0 72 20 61 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e |r an application| 000002f0 20 77 68 69 63 68 20 69 73 20 72 65 61 64 69 6e | which is readin| 00000300 67 20 61 0a 43 53 56 20 66 69 6c 65 20 74 6f 20 |g a.CSV file to | 00000310 64 69 73 74 69 6e 67 75 69 73 68 20 62 65 74 77 |distinguish betw| 00000320 65 65 6e 20 6e 75 6d 62 65 72 73 20 61 6e 64 20 |een numbers and | 00000330 73 74 72 69 6e 67 73 20 28 77 68 69 63 68 20 6d |strings (which m| 00000340 69 67 68 74 20 6f 66 20 63 6f 75 72 73 65 0a 63 |ight of course.c| 00000350 6f 6e 74 61 69 6e 20 6e 75 6d 65 72 61 6c 73 29 |ontain numerals)| 00000360 20 61 6e 64 20 61 6c 73 6f 20 61 6c 6c 6f 77 73 | and also allows| 00000370 20 74 68 65 20 63 6f 6d 6d 61 20 74 6f 20 62 65 | the comma to be| 00000380 20 75 73 65 64 20 61 73 20 61 20 63 68 61 72 61 | used as a chara| 00000390 63 74 65 72 20 77 69 74 68 69 6e 0a 61 20 73 74 |cter within.a st| 000003a0 72 69 6e 67 20 77 69 74 68 6f 75 74 20 62 65 69 |ring without bei| 000003b0 6e 67 20 6d 69 73 74 61 6b 65 6e 20 66 6f 72 20 |ng mistaken for | 000003c0 61 20 64 61 74 61 20 73 65 70 61 72 61 74 6f 72 |a data separator| 000003d0 2e 20 28 41 64 64 72 65 73 73 65 73 20 6f 66 74 |. (Addresses oft| 000003e0 65 6e 20 68 61 76 65 0a 63 6f 6d 6d 61 73 20 69 |en have.commas i| 000003f0 6e 20 74 68 65 6d 2c 20 65 2e 67 2e 20 31 31 32 |n them, e.g. 112| 00000400 2c 20 4b 65 69 67 68 6c 65 79 20 52 6f 61 64 2e |, Keighley Road.| 00000410 29 0a 0a 28 32 29 20 4e 75 6c 6c 20 64 61 74 61 |)..(2) Null data| 00000420 20 69 74 65 6d 73 20 61 72 65 20 75 73 75 61 6c | items are usual| 00000430 6c 79 20 69 6e 63 6c 75 64 65 64 20 61 6e 64 20 |ly included and | 00000440 63 61 6e 20 62 65 20 6c 6f 63 61 74 65 64 20 62 |can be located b| 00000450 79 20 6c 6f 6f 6b 69 6e 67 20 66 6f 72 0a 74 77 |y looking for.tw| 00000460 6f 20 63 6f 6d 6d 61 73 20 77 69 74 68 20 65 69 |o commas with ei| 00000470 74 68 65 72 20 6e 6f 74 68 69 6e 67 20 69 6e 20 |ther nothing in | 00000480 62 65 74 77 65 65 6e 20 74 68 65 6d 20 6f 72 20 |between them or | 00000490 77 69 74 68 20 6f 6e 6c 79 20 74 77 6f 20 71 75 |with only two qu| 000004a0 6f 74 61 74 69 6f 6e 0a 6d 61 72 6b 73 20 62 65 |otation.marks be| 000004b0 74 77 65 65 6e 20 74 68 65 6d 2c 20 69 2e 65 2e |tween them, i.e.| 000004c0 20 2c 2c 20 6f 72 20 2c 22 22 2c 2e 20 45 61 63 | ,, or ,"",. Eac| 000004d0 68 20 6c 69 6e 65 20 6f 66 20 64 61 74 61 20 28 |h line of data (| 000004e0 72 65 63 6f 72 64 29 20 69 6e 20 73 75 63 68 20 |record) in such | 000004f0 61 0a 66 69 6c 65 20 77 69 6c 6c 20 61 6c 77 61 |a.file will alwa| 00000500 79 73 20 63 6f 6e 74 61 69 6e 20 74 68 65 20 73 |ys contain the s| 00000510 61 6d 65 20 6e 75 6d 62 65 72 20 6f 66 20 64 61 |ame number of da| 00000520 74 61 20 69 74 65 6d 73 20 28 66 69 65 6c 64 73 |ta items (fields| 00000530 29 2e 20 4e 75 6c 6c 73 20 6d 61 79 2c 0a 68 6f |). Nulls may,.ho| 00000540 77 65 76 65 72 2c 20 62 65 20 6f 6d 69 74 74 65 |wever, be omitte| 00000550 64 20 65 6e 74 69 72 65 6c 79 20 69 6e 20 77 68 |d entirely in wh| 00000560 69 63 68 20 63 61 73 65 20 74 68 65 20 6e 75 6d |ich case the num| 00000570 62 65 72 20 6f 66 20 66 69 65 6c 64 73 20 70 65 |ber of fields pe| 00000580 72 20 72 65 63 6f 72 64 0a 77 69 6c 6c 20 76 61 |r record.will va| 00000590 72 79 2e 0a 0a 28 33 29 20 54 68 65 20 77 61 79 |ry...(3) The way| 000005a0 20 69 6e 20 77 68 69 63 68 20 65 61 63 68 20 72 | in which each r| 000005b0 65 63 6f 72 64 20 69 73 20 74 65 72 6d 69 6e 61 |ecord is termina| 000005c0 74 65 64 20 74 65 6e 64 73 20 74 6f 20 76 61 72 |ted tends to var| 000005d0 79 20 66 72 6f 6d 20 6f 6e 65 20 73 79 73 74 65 |y from one syste| 000005e0 6d 0a 74 6f 20 61 6e 6f 74 68 65 72 2e 20 54 68 |m.to another. Th| 000005f0 65 20 6c 61 73 74 20 69 74 65 6d 20 6f 66 20 64 |e last item of d| 00000600 61 74 61 20 69 6e 20 61 20 72 65 63 6f 72 64 20 |ata in a record | 00000610 69 73 20 6e 6f 74 20 66 6f 6c 6c 6f 77 65 64 20 |is not followed | 00000620 62 79 20 61 20 63 6f 6d 6d 61 20 62 75 74 0a 62 |by a comma but.b| 00000630 79 20 61 6e 20 69 6e 76 69 73 69 62 6c 65 20 63 |y an invisible c| 00000640 68 61 72 61 63 74 65 72 20 6f 72 20 70 61 69 72 |haracter or pair| 00000650 20 6f 66 20 63 68 61 72 61 63 74 65 72 73 20 63 | of characters c| 00000660 61 6c 6c 65 64 20 74 68 65 20 6c 69 6e 65 20 74 |alled the line t| 00000670 65 72 6d 69 6e 61 74 6f 72 2e 0a 4f 6e 20 52 49 |erminator..On RI| 00000680 53 43 20 4f 53 20 73 79 73 74 65 6d 73 20 74 68 |SC OS systems th| 00000690 69 73 20 69 73 20 74 68 65 20 22 6c 69 6e 65 2d |is is the "line-| 000006a0 66 65 65 64 22 20 63 68 61 72 61 63 74 65 72 20 |feed" character | 000006b0 28 41 53 43 49 49 20 76 61 6c 75 65 20 31 30 29 |(ASCII value 10)| 000006c0 20 61 6e 64 20 6f 6e 0a 50 43 73 20 69 74 20 69 | and on.PCs it i| 000006d0 73 20 75 73 75 61 6c 6c 79 20 74 68 65 20 22 63 |s usually the "c| 000006e0 61 72 72 69 61 67 65 2d 72 65 74 75 72 6e 22 20 |arriage-return" | 000006f0 63 68 61 72 61 63 74 65 72 20 28 41 53 43 49 49 |character (ASCII| 00000700 20 76 61 6c 75 65 20 31 33 29 2e 20 59 6f 75 0a | value 13). You.| 00000710 6d 69 67 68 74 2c 20 68 6f 77 65 76 65 72 2c 20 |might, however, | 00000720 65 6e 63 6f 75 6e 74 65 72 20 43 53 56 20 66 69 |encounter CSV fi| 00000730 6c 65 73 20 69 6e 20 77 68 69 63 68 20 42 4f 54 |les in which BOT| 00000740 48 20 74 68 65 73 65 20 63 68 61 72 61 63 74 65 |H these characte| 00000750 72 73 20 61 72 65 20 75 73 65 64 2c 0a 69 2e 65 |rs are used,.i.e| 00000760 2e 20 4c 46 20 43 52 20 6f 72 20 43 52 20 4c 46 |. LF CR or CR LF| 00000770 2e 0a 0a 28 34 29 20 54 68 65 20 73 65 70 61 72 |...(4) The separ| 00000780 61 74 6f 72 20 69 73 6e 27 74 20 61 6c 77 61 79 |ator isn't alway| 00000790 73 20 65 76 65 6e 20 61 20 63 6f 6d 6d 61 2e 20 |s even a comma. | 000007a0 54 68 65 20 22 54 41 42 22 20 63 68 61 72 61 63 |The "TAB" charac| 000007b0 74 65 72 20 28 41 53 43 49 49 0a 76 61 6c 75 65 |ter (ASCII.value| 000007c0 20 39 29 20 69 73 20 6f 66 74 65 6e 20 75 73 65 | 9) is often use| 000007d0 64 20 61 6e 64 20 73 75 63 68 20 66 69 6c 65 73 |d and such files| 000007e0 20 61 72 65 20 63 61 6c 6c 65 64 20 54 53 56 20 | are called TSV | 000007f0 66 69 6c 65 73 2c 20 62 75 74 20 63 68 61 72 61 |files, but chara| 00000800 63 74 65 72 73 0a 73 75 63 68 20 61 73 20 74 68 |cters.such as th| 00000810 65 20 73 65 6d 69 63 6f 6c 6f 6e 20 61 72 65 20 |e semicolon are | 00000820 73 6f 6d 65 74 69 6d 65 73 20 75 73 65 64 20 74 |sometimes used t| 00000830 6f 6f 2e 0a 0a 28 35 29 20 53 6f 6d 65 20 61 70 |oo...(5) Some ap| 00000840 70 6c 69 63 61 74 69 6f 6e 73 20 77 68 69 63 68 |plications which| 00000850 20 61 63 63 65 70 74 20 61 20 43 53 56 20 66 69 | accept a CSV fi| 00000860 6c 65 20 61 73 20 69 6e 70 75 74 20 65 78 70 65 |le as input expe| 00000870 63 74 20 74 68 65 20 66 69 72 73 74 0a 72 65 63 |ct the first.rec| 00000880 6f 72 64 20 74 6f 20 63 6f 6e 74 61 69 6e 20 74 |ord to contain t| 00000890 68 65 20 6e 61 6d 65 73 20 6f 66 20 74 68 65 20 |he names of the | 000008a0 66 69 65 6c 64 73 20 77 68 69 63 68 20 63 6f 6d |fields which com| 000008b0 70 72 69 73 65 20 74 68 65 20 73 75 62 73 65 71 |prise the subseq| 000008c0 75 65 6e 74 0a 72 65 63 6f 72 64 73 2c 20 65 2e |uent.records, e.| 000008d0 67 2e 20 69 66 20 65 61 63 68 20 72 65 63 6f 72 |g. if each recor| 000008e0 64 20 63 6f 6e 73 69 73 74 73 20 6f 66 20 61 20 |d consists of a | 000008f0 6e 61 6d 65 20 61 6e 64 20 61 20 66 6f 75 72 2d |name and a four-| 00000900 70 61 72 74 20 61 64 64 72 65 73 73 20 74 68 69 |part address thi| 00000910 73 0a 22 68 65 61 64 65 72 22 20 72 65 63 6f 72 |s."header" recor| 00000920 64 20 6d 69 67 68 74 20 72 65 61 64 20 22 4e 41 |d might read "NA| 00000930 4d 45 22 2c 22 53 54 52 45 45 54 22 2c 22 54 4f |ME","STREET","TO| 00000940 57 4e 22 2c 22 43 4f 55 4e 54 59 22 2c 22 50 4f |WN","COUNTY","PO| 00000950 53 54 43 4f 44 45 22 2e 0a 0a 48 6f 77 20 64 6f |STCODE"...How do| 00000960 65 73 20 50 6f 77 65 72 62 61 73 65 20 75 73 65 |es Powerbase use| 00000970 20 43 53 56 20 66 69 6c 65 73 3f 0a 3d 3d 3d 3d | CSV files?.====| 00000980 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |================| 00000990 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 50 6f |=============.Po| 000009a0 77 65 72 62 61 73 65 20 69 73 20 61 62 6c 65 20 |werbase is able | 000009b0 74 6f 20 73 61 76 65 20 64 61 74 61 20 69 6e 20 |to save data in | 000009c0 74 68 65 20 66 6f 72 6d 20 6f 66 20 74 72 75 65 |the form of true| 000009d0 20 43 53 56 20 66 69 6c 65 73 20 6f 72 20 66 69 | CSV files or fi| 000009e0 6c 65 73 20 75 73 69 6e 67 0a 73 6f 6d 65 20 6f |les using.some o| 000009f0 74 68 65 72 20 64 61 74 61 20 73 65 70 61 72 61 |ther data separa| 00000a00 74 6f 72 2e 20 49 66 20 74 68 65 20 73 65 70 61 |tor. If the sepa| 00000a10 72 61 74 6f 72 20 69 73 20 69 6e 64 65 65 64 20 |rator is indeed | 00000a20 61 20 63 6f 6d 6d 61 20 74 68 65 6e 20 74 68 65 |a comma then the| 00000a30 20 66 69 6c 65 0a 63 72 65 61 74 65 64 20 69 73 | file.created is| 00000a40 20 6f 66 20 74 79 70 65 20 26 64 66 65 20 61 6e | of type &dfe an| 00000a50 64 20 69 74 73 20 69 63 6f 6e 20 64 69 73 70 6c |d its icon displ| 00000a60 61 79 73 20 74 68 65 20 6c 65 74 74 65 72 73 20 |ays the letters | 00000a70 22 43 53 56 22 2e 20 49 66 20 73 6f 6d 65 0a 6f |"CSV". If some.o| 00000a80 74 68 65 72 20 73 65 70 61 72 61 74 6f 72 2c 20 |ther separator, | 00000a90 73 75 63 68 20 61 73 20 54 41 42 2c 20 69 73 20 |such as TAB, is | 00000aa0 75 73 65 64 20 28 73 65 65 20 28 34 29 20 61 62 |used (see (4) ab| 00000ab0 6f 76 65 29 20 74 68 65 6e 20 74 68 65 20 66 69 |ove) then the fi| 00000ac0 6c 65 20 69 73 20 6f 66 0a 74 68 65 20 6f 72 64 |le is of.the ord| 00000ad0 69 6e 61 72 79 20 22 74 65 78 74 22 20 74 79 70 |inary "text" typ| 00000ae0 65 2c 20 69 2e 65 2e 20 26 66 66 66 2e 20 46 69 |e, i.e. &fff. Fi| 00000af0 6c 65 73 20 6f 66 20 74 68 65 73 65 20 74 79 70 |les of these typ| 00000b00 65 73 20 6d 61 79 20 61 6c 73 6f 20 62 65 20 75 |es may also be u| 00000b10 73 65 64 0a 74 6f 20 65 6e 74 65 72 20 64 61 74 |sed.to enter dat| 00000b20 61 20 69 6e 74 6f 20 61 20 50 6f 77 65 72 62 61 |a into a Powerba| 00000b30 73 65 20 64 61 74 61 62 61 73 65 2e 20 49 6e 20 |se database. In | 00000b40 77 68 61 74 20 66 6f 6c 6c 6f 77 73 20 77 65 20 |what follows we | 00000b50 77 69 6c 6c 2c 20 66 6f 72 0a 63 6f 6e 76 65 6e |will, for.conven| 00000b60 69 65 6e 63 65 2c 20 72 65 66 65 72 20 74 6f 20 |ience, refer to | 00000b70 74 68 65 6d 20 61 73 20 22 43 53 56 20 66 69 6c |them as "CSV fil| 00000b80 65 73 22 20 77 68 65 74 68 65 72 20 6f 72 20 6e |es" whether or n| 00000b90 6f 74 20 74 68 65 20 73 65 70 61 72 61 74 6f 72 |ot the separator| 00000ba0 20 69 73 20 61 0a 63 6f 6d 6d 61 2e 20 54 68 65 | is a.comma. The| 00000bb0 20 63 68 6f 69 63 65 73 20 6f 6e 20 74 68 65 20 | choices on the | 00000bc0 6d 61 69 6e 20 6d 65 6e 75 20 77 68 69 63 68 20 |main menu which | 00000bd0 63 6f 6e 74 72 6f 6c 20 74 68 65 73 65 20 61 63 |control these ac| 00000be0 74 69 6f 6e 73 20 61 72 65 20 27 45 78 70 6f 72 |tions are 'Expor| 00000bf0 74 0a 43 53 56 27 20 61 6e 64 20 27 43 53 56 20 |t.CSV' and 'CSV | 00000c00 6f 70 74 69 6f 6e 73 27 2e 0a 0a 43 53 56 20 6f |options'...CSV o| 00000c10 70 74 69 6f 6e 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d |ptions.=========| 00000c20 3d 3d 0a 54 68 69 73 20 6c 65 61 64 73 20 74 6f |==.This leads to| 00000c30 20 61 20 64 69 61 6c 6f 67 75 65 20 62 6f 78 20 | a dialogue box | 00000c40 77 68 69 63 68 20 61 6c 6c 6f 77 73 20 79 6f 75 |which allows you| 00000c50 20 74 6f 20 73 70 65 63 69 66 79 20 61 6c 6c 20 | to specify all | 00000c60 74 68 65 20 66 69 6c 65 0a 63 68 61 72 61 63 74 |the file.charact| 00000c70 65 72 69 73 74 69 63 73 20 64 65 73 63 72 69 62 |eristics describ| 00000c80 65 64 20 69 6e 20 74 68 65 20 70 72 65 76 69 6f |ed in the previo| 00000c90 75 73 20 73 65 63 74 69 6f 6e 2e 20 54 68 75 73 |us section. Thus| 00000ca0 2c 20 73 65 6c 65 63 74 69 6f 6e 20 6f 66 20 74 |, selection of t| 00000cb0 68 65 0a 66 69 72 73 74 20 74 68 72 65 65 20 6f |he.first three o| 00000cc0 70 74 69 6f 6e 20 62 75 74 74 6f 6e 73 20 63 61 |ption buttons ca| 00000cd0 75 73 65 73 20 61 20 73 61 76 65 64 20 66 69 6c |uses a saved fil| 00000ce0 65 20 74 6f 20 68 61 76 65 2c 20 72 65 73 70 65 |e to have, respe| 00000cf0 63 74 69 76 65 6c 79 3a 2d 0a 0a 20 20 20 20 20 |ctively:-.. | 00000d00 20 20 20 28 61 29 20 71 75 6f 74 65 73 20 72 6f | (a) quotes ro| 00000d10 75 6e 64 20 6e 6f 6e 2d 6e 75 6d 65 72 69 63 20 |und non-numeric | 00000d20 66 69 65 6c 64 73 20 28 73 65 65 20 28 31 29 20 |fields (see (1) | 00000d30 61 62 6f 76 65 29 0a 20 20 20 20 20 20 20 20 28 |above). (| 00000d40 62 29 20 61 20 68 65 61 64 65 72 20 72 65 63 6f |b) a header reco| 00000d50 72 64 20 73 70 65 63 69 66 79 69 6e 67 20 74 68 |rd specifying th| 00000d60 65 20 66 69 65 6c 64 20 6e 61 6d 65 73 20 28 73 |e field names (s| 00000d70 65 65 20 28 35 29 20 61 62 6f 76 65 29 0a 20 20 |ee (5) above). | 00000d80 20 20 20 20 20 20 28 63 29 20 6e 75 6c 6c 20 66 | (c) null f| 00000d90 69 65 6c 64 73 20 69 6e 63 6c 75 64 65 64 20 28 |ields included (| 00000da0 73 65 65 20 28 32 29 20 61 62 6f 76 65 29 2e 0a |see (2) above)..| 00000db0 0a 4e 6f 74 65 20 74 68 61 74 20 74 68 65 20 22 |.Note that the "| 00000dc0 66 69 65 6c 64 20 6e 61 6d 65 73 22 20 72 65 66 |field names" ref| 00000dd0 65 72 72 65 64 20 74 6f 20 69 6e 20 28 62 29 20 |erred to in (b) | 00000de0 61 72 65 2c 20 62 79 20 64 65 66 61 75 6c 74 2c |are, by default,| 00000df0 20 74 68 65 20 54 41 47 53 20 6f 66 0a 74 68 65 | the TAGS of.the| 00000e00 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 50 | corresponding P| 00000e10 6f 77 65 72 62 61 73 65 20 66 69 65 6c 64 73 2c |owerbase fields,| 00000e20 20 62 75 74 20 6d 61 79 20 62 65 20 63 68 61 6e | but may be chan| 00000e30 67 65 64 20 74 6f 20 74 68 65 20 44 45 53 43 52 |ged to the DESCR| 00000e40 49 50 54 4f 52 53 20 62 79 0a 61 6c 74 65 72 69 |IPTORS by.alteri| 00000e50 6e 67 20 74 68 65 20 73 65 74 74 69 6e 67 73 20 |ng the settings | 00000e60 69 6e 20 74 68 65 20 27 50 72 69 6e 74 20 6f 70 |in the 'Print op| 00000e70 74 69 6f 6e 73 27 20 64 69 61 6c 6f 67 75 65 20 |tions' dialogue | 00000e80 62 6f 78 2e 0a 0a 54 68 65 20 66 69 65 6c 64 20 |box...The field | 00000e90 73 65 70 61 72 61 74 6f 72 20 61 6e 64 20 72 65 |separator and re| 00000ea0 63 6f 72 64 20 74 65 72 6d 69 6e 61 74 6f 72 20 |cord terminator | 00000eb0 6d 61 79 20 62 65 20 63 68 61 6e 67 65 64 20 62 |may be changed b| 00000ec0 79 20 6d 65 61 6e 73 20 6f 66 20 6d 65 6e 75 73 |y means of menus| 00000ed0 0a 77 68 69 63 68 20 61 70 70 65 61 72 20 77 68 |.which appear wh| 00000ee0 65 6e 20 79 6f 75 20 63 6c 69 63 6b 20 6f 6e 20 |en you click on | 00000ef0 74 68 65 20 72 69 67 68 74 2d 70 6f 69 6e 74 69 |the right-pointi| 00000f00 6e 67 20 61 72 72 6f 77 73 2e 20 45 61 63 68 20 |ng arrows. Each | 00000f10 6f 66 20 74 68 65 73 65 0a 6d 65 6e 75 73 20 61 |of these.menus a| 00000f20 6c 73 6f 20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 |lso allows you t| 00000f30 6f 20 64 65 66 69 6e 65 20 79 6f 75 72 20 6f 77 |o define your ow| 00000f40 6e 20 73 65 70 61 72 61 74 6f 72 20 61 6e 64 2f |n separator and/| 00000f50 6f 72 20 74 65 72 6d 69 6e 61 74 6f 72 20 6f 66 |or terminator of| 00000f60 20 6f 6e 65 0a 6f 72 20 74 77 6f 20 70 72 69 6e | one.or two prin| 00000f70 74 69 6e 67 20 63 68 61 72 61 63 74 65 72 73 2e |ting characters.| 00000f80 0a 0a 54 77 6f 20 62 75 74 74 6f 6e 73 20 69 6e |..Two buttons in| 00000f90 20 74 68 69 73 20 64 69 61 6c 6f 67 75 65 20 62 | this dialogue b| 00000fa0 6f 78 20 68 61 76 65 20 6e 6f 74 20 79 65 74 20 |ox have not yet | 00000fb0 62 65 65 6e 20 72 65 66 65 72 72 65 64 20 74 6f |been referred to| 00000fc0 2e 20 54 68 65 69 72 0a 66 75 6e 63 74 69 6f 6e |. Their.function| 00000fd0 20 69 73 20 64 65 73 63 72 69 62 65 64 20 6c 61 | is described la| 00000fe0 74 65 72 20 28 55 73 69 6e 67 20 43 53 56 20 66 |ter (Using CSV f| 00000ff0 69 6c 65 73 20 74 6f 20 69 6d 70 6f 72 74 20 64 |iles to import d| 00001000 61 74 61 29 2e 0a 0a 45 78 70 6f 72 74 20 43 53 |ata)...Export CS| 00001010 56 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 48 61 76 |V.==========.Hav| 00001020 69 6e 67 20 73 65 74 20 75 70 20 79 6f 75 72 20 |ing set up your | 00001030 6f 70 74 69 6f 6e 73 20 61 73 20 64 65 73 63 72 |options as descr| 00001040 69 62 65 64 20 61 62 6f 76 65 2c 20 63 72 65 61 |ibed above, crea| 00001050 74 69 6e 67 20 61 20 43 53 56 20 66 69 6c 65 20 |ting a CSV file | 00001060 69 73 20 76 65 72 79 0a 6c 69 6b 65 20 70 72 69 |is very.like pri| 00001070 6e 74 69 6e 67 20 61 20 6c 69 73 74 20 28 73 65 |nting a list (se| 00001080 65 20 27 50 72 69 6e 74 69 6e 67 27 29 2e 20 46 |e 'Printing'). F| 00001090 69 72 73 74 20 68 69 67 68 6c 69 67 68 74 20 74 |irst highlight t| 000010a0 68 65 20 66 69 65 6c 64 73 20 74 6f 20 62 65 0a |he fields to be.| 000010b0 65 78 70 6f 72 74 65 64 20 62 79 20 63 6c 69 63 |exported by clic| 000010c0 6b 69 6e 67 20 6f 6e 20 65 61 63 68 20 77 69 74 |king on each wit| 000010d0 68 20 41 44 4a 55 53 54 2e 20 52 65 6d 65 6d 62 |h ADJUST. Rememb| 000010e0 65 72 20 74 68 61 74 20 74 68 65 20 6f 72 64 65 |er that the orde| 000010f0 72 20 69 6e 20 77 68 69 63 68 0a 74 68 65 20 66 |r in which.the f| 00001100 69 65 6c 64 73 20 61 72 65 20 68 69 67 68 6c 69 |ields are highli| 00001110 67 68 74 65 64 20 69 73 20 69 6d 70 6f 72 74 61 |ghted is importa| 00001120 6e 74 2e 20 4e 65 78 74 20 66 6f 6c 6c 6f 77 20 |nt. Next follow | 00001130 74 68 65 20 27 45 78 70 6f 72 74 20 43 53 56 27 |the 'Export CSV'| 00001140 20 6f 70 74 69 6f 6e 0a 74 6f 20 74 68 65 20 64 | option.to the d| 00001150 69 61 6c 6f 67 75 65 20 62 6f 78 20 61 6e 64 20 |ialogue box and | 00001160 74 79 70 65 20 69 6e 20 74 68 65 20 73 65 61 72 |type in the sear| 00001170 63 68 20 66 6f 72 6d 75 6c 61 20 74 6f 20 64 65 |ch formula to de| 00001180 74 65 72 6d 69 6e 65 20 77 68 69 63 68 0a 72 65 |termine which.re| 00001190 63 6f 72 64 73 20 61 72 65 20 65 78 70 6f 72 74 |cords are export| 000011a0 65 64 2e 20 46 69 6e 61 6c 6c 79 2c 20 65 6e 74 |ed. Finally, ent| 000011b0 65 72 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 |er the name of t| 000011c0 68 65 20 66 69 6c 65 20 61 6e 64 20 64 72 61 67 |he file and drag| 000011d0 20 74 68 65 20 66 69 6c 65 0a 69 63 6f 6e 20 74 | the file.icon t| 000011e0 6f 20 61 20 66 69 6c 65 72 20 77 69 6e 64 6f 77 |o a filer window| 000011f0 2e 20 54 68 65 20 68 6f 75 72 67 6c 61 73 73 20 |. The hourglass | 00001200 61 70 70 65 61 72 73 20 73 68 6f 77 69 6e 67 20 |appears showing | 00001210 74 68 65 20 70 72 6f 67 72 65 73 73 20 6f 66 20 |the progress of | 00001220 74 68 65 0a 6f 70 65 72 61 74 69 6f 6e 2e 0a 0a |the.operation...| 00001230 45 78 70 65 72 69 6d 65 6e 74 20 77 69 74 68 20 |Experiment with | 00001240 73 61 76 69 6e 67 20 43 53 56 20 66 69 6c 65 73 |saving CSV files| 00001250 20 77 69 74 68 20 64 69 66 66 65 72 65 6e 74 20 | with different | 00001260 73 65 74 74 69 6e 67 73 20 6f 66 20 74 68 65 20 |settings of the | 00001270 43 53 56 20 6f 70 74 69 6f 6e 73 0a 61 6e 64 20 |CSV options.and | 00001280 74 68 65 6e 20 6c 6f 61 64 69 6e 67 20 74 68 65 |then loading the| 00001290 20 72 65 73 75 6c 74 69 6e 67 20 66 69 6c 65 73 | resulting files| 000012a0 20 69 6e 74 6f 20 45 64 69 74 20 74 6f 20 65 78 | into Edit to ex| 000012b0 61 6d 69 6e 65 20 74 68 65 6d 2e 0a 0a 55 73 69 |amine them...Usi| 000012c0 6e 67 20 43 53 56 20 66 69 6c 65 73 20 74 6f 20 |ng CSV files to | 000012d0 69 6d 70 6f 72 74 20 64 61 74 61 0a 3d 3d 3d 3d |import data.====| 000012e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |================| 000012f0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 49 66 20 79 6f |==========.If yo| 00001300 75 20 64 72 61 67 20 61 20 43 53 56 20 66 69 6c |u drag a CSV fil| 00001310 65 20 6f 6e 74 6f 20 74 68 65 20 72 65 63 6f 72 |e onto the recor| 00001320 64 20 64 69 73 70 6c 61 79 20 6f 66 20 61 6e 20 |d display of an | 00001330 6f 70 65 6e 20 64 61 74 61 62 61 73 65 20 74 68 |open database th| 00001340 65 0a 6f 70 74 69 6f 6e 73 20 77 69 6e 64 6f 77 |e.options window| 00001350 20 28 73 65 65 20 43 53 56 20 6f 70 74 69 6f 6e | (see CSV option| 00001360 73 29 20 61 70 70 65 61 72 73 20 77 69 74 68 20 |s) appears with | 00001370 61 20 63 68 61 6e 67 65 64 20 74 69 74 6c 65 20 |a changed title | 00001380 61 6e 64 20 73 6f 6d 65 0a 61 64 64 69 74 69 6f |and some.additio| 00001390 6e 61 6c 20 69 63 6f 6e 73 2c 20 6f 6e 65 20 6f |nal icons, one o| 000013a0 66 20 77 68 69 63 68 20 64 69 73 70 6c 61 79 73 |f which displays| 000013b0 20 74 68 65 20 70 61 74 68 6e 61 6d 65 20 6f 66 | the pathname of| 000013c0 20 74 68 65 20 43 53 56 20 66 69 6c 65 2e 20 54 | the CSV file. T| 000013d0 68 65 0a 73 61 6d 65 20 74 68 69 6e 67 20 68 61 |he.same thing ha| 000013e0 70 70 65 6e 73 20 77 69 74 68 20 61 20 73 75 69 |ppens with a sui| 000013f0 74 61 62 6c 79 2d 63 6f 6e 73 74 69 74 75 74 65 |tably-constitute| 00001400 64 20 74 65 78 74 20 66 69 6c 65 20 28 73 65 65 |d text file (see| 00001410 20 61 62 6f 76 65 3a 20 27 48 6f 77 0a 64 6f 65 | above: 'How.doe| 00001420 73 20 50 6f 77 65 72 62 61 73 65 20 75 73 65 20 |s Powerbase use | 00001430 43 53 56 20 66 69 6c 65 73 27 29 2e 20 50 6c 65 |CSV files'). Ple| 00001440 61 73 65 20 6e 6f 74 65 2c 20 68 6f 77 65 76 65 |ase note, howeve| 00001450 72 2c 20 74 68 61 74 20 74 68 65 72 65 20 61 72 |r, that there ar| 00001460 65 20 6f 74 68 65 72 0a 63 69 72 63 75 6d 73 74 |e other.circumst| 00001470 61 6e 63 65 73 20 75 6e 64 65 72 20 77 68 69 63 |ances under whic| 00001480 68 20 61 20 74 65 78 74 20 66 69 6c 65 20 6d 69 |h a text file mi| 00001490 67 68 74 20 62 65 20 64 72 6f 70 70 65 64 20 6f |ght be dropped o| 000014a0 6e 20 74 68 65 20 72 65 63 6f 72 64 20 77 69 6e |n the record win| 000014b0 64 6f 77 2e 0a 41 20 70 72 6f 70 65 72 6c 79 2d |dow..A properly-| 000014c0 77 72 69 74 74 65 6e 20 73 63 72 69 70 74 20 66 |written script f| 000014d0 69 6c 65 20 28 73 65 65 20 27 53 63 72 69 70 74 |ile (see 'Script| 000014e0 46 69 6c 65 27 29 20 77 6f 75 6c 64 20 62 65 20 |File') would be | 000014f0 72 65 63 6f 67 6e 69 73 65 64 20 61 73 0a 73 75 |recognised as.su| 00001500 63 68 2c 20 62 75 74 20 61 20 74 65 78 74 20 66 |ch, but a text f| 00001510 69 6c 65 20 64 72 6f 70 70 65 64 20 6f 6e 74 6f |ile dropped onto| 00001520 20 74 68 65 20 61 70 70 72 6f 70 72 69 61 74 65 | the appropriate| 00001530 20 74 79 70 65 20 6f 66 20 45 78 74 65 72 6e 61 | type of Externa| 00001540 6c 20 66 69 65 6c 64 0a 28 69 2e 65 2e 20 61 20 |l field.(i.e. a | 00001550 27 54 65 78 74 27 20 6f 72 20 27 54 65 78 74 20 |'Text' or 'Text | 00001560 42 6c 6f 63 6b 27 29 20 66 69 65 6c 64 20 77 6f |Block') field wo| 00001570 75 6c 64 20 62 65 63 6f 6d 65 20 6c 69 6e 6b 65 |uld become linke| 00001580 64 20 74 6f 20 74 68 61 74 20 66 69 65 6c 64 0a |d to that field.| 00001590 69 6e 73 74 65 61 64 20 6f 66 20 62 65 69 6e 67 |instead of being| 000015a0 20 74 72 65 61 74 65 64 20 6c 69 6b 65 20 61 20 | treated like a | 000015b0 43 53 56 20 66 69 6c 65 2e 20 49 66 20 79 6f 75 |CSV file. If you| 000015c0 20 61 72 65 20 69 6d 70 6f 72 74 69 6e 67 20 64 | are importing d| 000015d0 61 74 61 20 66 72 6f 6d 20 61 0a 70 6c 61 69 6e |ata from a.plain| 000015e0 20 74 65 78 74 20 66 69 6c 65 20 61 6e 64 20 79 | text file and y| 000015f0 6f 75 72 20 72 65 63 6f 72 64 20 63 6f 6e 74 61 |our record conta| 00001600 69 6e 73 20 66 69 65 6c 64 73 20 6f 66 20 74 68 |ins fields of th| 00001610 65 20 61 66 6f 72 65 6d 65 6e 74 69 6f 6e 65 64 |e aforementioned| 00001620 20 74 79 70 65 73 0a 62 65 20 73 75 72 65 20 74 | types.be sure t| 00001630 6f 20 64 72 6f 70 20 74 68 65 20 66 69 6c 65 20 |o drop the file | 00001640 6f 6e 20 74 68 65 20 77 69 6e 64 6f 77 20 62 61 |on the window ba| 00001650 63 6b 67 72 6f 75 6e 64 2c 20 6e 6f 74 20 6f 6e |ckground, not on| 00001660 20 74 68 65 20 65 78 74 65 72 6e 61 6c 0a 66 69 | the external.fi| 00001670 65 6c 64 2e 20 59 6f 75 20 61 72 65 20 73 74 72 |eld. You are str| 00001680 6f 6e 67 6c 79 20 61 64 76 69 73 65 64 20 74 6f |ongly advised to| 00001690 20 75 73 65 20 70 72 6f 70 65 72 20 43 53 56 20 | use proper CSV | 000016a0 66 69 6c 65 73 20 69 66 20 61 74 20 61 6c 6c 20 |files if at all | 000016b0 70 6f 73 73 69 62 6c 65 2e 0a 0a 54 68 65 72 65 |possible...There| 000016c0 20 69 73 20 61 6e 20 6f 70 74 69 6f 6e 20 74 6f | is an option to| 000016d0 20 64 69 73 70 6c 61 79 20 65 61 63 68 20 72 65 | display each re| 000016e0 63 6f 72 64 20 61 73 20 69 74 20 69 73 20 69 6d |cord as it is im| 000016f0 70 6f 72 74 65 64 2e 20 54 68 65 20 70 72 6f 63 |ported. The proc| 00001700 65 73 73 20 69 73 0a 66 61 73 74 65 72 20 77 69 |ess is.faster wi| 00001710 74 68 20 74 68 69 73 20 6f 70 74 69 6f 6e 20 74 |th this option t| 00001720 75 72 6e 65 64 20 6f 66 66 20 62 75 74 20 6d 75 |urned off but mu| 00001730 63 68 20 6c 65 73 73 20 69 6e 66 6f 72 6d 61 74 |ch less informat| 00001740 69 76 65 2e 20 4d 6f 73 74 20 70 65 6f 70 6c 65 |ive. Most people| 00001750 0a 6c 69 6b 65 20 74 6f 20 6b 6e 6f 77 20 68 6f |.like to know ho| 00001760 77 20 74 68 69 6e 67 73 20 61 72 65 20 70 72 6f |w things are pro| 00001770 67 72 65 73 73 69 6e 67 2e 20 0a 0a 41 6e 6f 74 |gressing. ..Anot| 00001780 68 65 72 20 6f 70 74 69 6f 6e 20 63 61 75 73 65 |her option cause| 00001790 73 20 61 6e 79 20 74 72 61 69 6c 69 6e 67 20 73 |s any trailing s| 000017a0 70 61 63 65 73 20 69 6e 20 74 68 65 20 69 6d 70 |paces in the imp| 000017b0 6f 72 74 65 64 20 64 61 74 61 2d 66 69 65 6c 64 |orted data-field| 000017c0 73 20 74 6f 20 62 65 0a 73 74 72 69 70 70 65 64 |s to be.stripped| 000017d0 2e 20 53 6f 6d 65 20 64 61 74 61 62 61 73 65 20 |. Some database | 000017e0 70 72 6f 67 72 61 6d 73 20 61 70 70 65 61 72 20 |programs appear | 000017f0 74 6f 20 70 61 64 20 61 6c 6c 20 66 69 65 6c 64 |to pad all field| 00001800 73 20 74 6f 20 74 68 65 69 72 20 6d 61 78 69 6d |s to their maxim| 00001810 75 6d 0a 6c 65 6e 67 74 68 20 62 79 20 61 64 64 |um.length by add| 00001820 69 6e 67 20 73 70 61 63 65 73 20 74 6f 20 74 68 |ing spaces to th| 00001830 65 20 65 6e 64 20 6f 66 20 74 68 65 20 64 61 74 |e end of the dat| 00001840 61 20 77 68 65 72 65 20 6e 65 63 65 73 73 61 72 |a where necessar| 00001850 79 2e 20 49 66 20 74 68 65 0a 70 72 6f 67 72 61 |y. If the.progra| 00001860 6d 20 64 6f 65 73 6e 27 74 20 61 6c 6c 6f 77 20 |m doesn't allow | 00001870 79 6f 75 20 74 6f 20 67 65 74 20 72 69 64 20 6f |you to get rid o| 00001880 66 20 74 68 65 73 65 20 73 70 61 63 65 73 20 77 |f these spaces w| 00001890 68 65 6e 20 65 78 70 6f 72 74 69 6e 67 20 64 61 |hen exporting da| 000018a0 74 61 20 69 6e 0a 43 53 56 20 66 6f 72 6d 61 74 |ta in.CSV format| 000018b0 20 74 68 65 79 20 63 61 6e 20 62 65 20 61 20 6e | they can be a n| 000018c0 75 69 73 61 6e 63 65 20 77 68 65 6e 20 74 68 65 |uisance when the| 000018d0 20 66 69 6c 65 20 69 73 20 69 6d 70 6f 72 74 65 | file is importe| 000018e0 64 20 69 6e 74 6f 20 50 6f 77 65 72 62 61 73 65 |d into Powerbase| 000018f0 2e 0a 51 75 65 72 69 65 73 2c 20 66 6f 72 20 69 |..Queries, for i| 00001900 6e 73 74 61 6e 63 65 2c 20 6d 61 79 20 6e 6f 74 |nstance, may not| 00001910 20 77 6f 72 6b 20 70 72 6f 70 65 72 6c 79 20 75 | work properly u| 00001920 6e 6c 65 73 73 20 79 6f 75 20 75 73 65 20 74 68 |nless you use th| 00001930 65 20 22 63 6f 6e 74 61 69 6e 73 22 0a 63 6f 6d |e "contains".com| 00001940 70 61 72 61 74 6f 72 20 28 7b 29 20 72 61 74 68 |parator ({) rath| 00001950 65 72 20 74 68 61 6e 20 22 65 71 75 61 6c 73 22 |er than "equals"| 00001960 2e 20 59 6f 75 20 63 61 6e 20 65 61 73 69 6c 79 |. You can easily| 00001970 20 72 65 63 6f 67 6e 69 73 65 20 74 68 69 73 20 | recognise this | 00001980 73 69 74 75 61 74 69 6f 6e 0a 73 69 6e 63 65 20 |situation.since | 00001990 74 68 65 20 63 61 72 65 74 20 77 69 6c 6c 20 61 |the caret will a| 000019a0 6c 77 61 79 73 20 62 65 20 61 74 20 74 68 65 20 |lways be at the | 000019b0 66 61 72 20 72 69 67 68 74 20 6f 66 20 74 68 65 |far right of the| 000019c0 20 66 69 65 6c 64 20 65 76 65 6e 20 74 68 6f 75 | field even thou| 000019d0 67 68 20 74 68 65 0a 76 69 73 69 62 6c 65 20 63 |gh the.visible c| 000019e0 68 61 72 61 63 74 65 72 73 20 6e 6f 77 68 65 72 |haracters nowher| 000019f0 65 20 6e 65 61 72 20 66 69 6c 6c 20 74 68 65 20 |e near fill the | 00001a00 66 69 65 6c 64 2e 20 53 65 74 74 69 6e 67 20 74 |field. Setting t| 00001a10 68 65 20 22 53 74 72 69 70 20 73 70 61 63 65 73 |he "Strip spaces| 00001a20 22 0a 73 77 69 74 63 68 20 62 65 66 6f 72 65 20 |".switch before | 00001a30 69 6d 70 6f 72 74 69 6e 67 20 74 68 65 20 66 69 |importing the fi| 00001a40 6c 65 20 6f 76 65 72 63 6f 6d 65 73 20 74 68 65 |le overcomes the| 00001a50 20 70 72 6f 62 6c 65 6d 2e 0a 0a 43 6c 69 63 6b | problem...Click| 00001a60 69 6e 67 20 6f 6e 20 27 47 4f 27 20 77 69 6c 6c |ing on 'GO' will| 00001a70 20 6d 61 6b 65 20 50 6f 77 65 72 62 61 73 65 20 | make Powerbase | 00001a80 74 72 79 20 74 6f 20 63 72 65 61 74 65 20 6e 65 |try to create ne| 00001a90 77 20 50 6f 77 65 72 62 61 73 65 20 72 65 63 6f |w Powerbase reco| 00001aa0 72 64 73 0a 66 72 6f 6d 20 74 68 65 20 64 61 74 |rds.from the dat| 00001ab0 61 2e 20 49 66 20 79 6f 75 20 64 65 63 69 64 65 |a. If you decide| 00001ac0 20 6e 6f 74 20 74 6f 20 64 6f 20 74 68 69 73 20 | not to do this | 00001ad0 79 6f 75 20 73 68 6f 75 6c 64 20 63 6c 69 63 6b |you should click| 00001ae0 20 6f 6e 20 27 43 61 6e 63 65 6c 27 2e 20 49 66 | on 'Cancel'. If| 00001af0 0a 79 6f 75 20 64 6f 20 77 69 73 68 20 74 6f 20 |.you do wish to | 00001b00 69 6d 70 6f 72 74 20 74 68 65 20 64 61 74 61 20 |import the data | 00001b10 74 68 65 72 65 20 61 72 65 20 73 6f 6d 65 20 69 |there are some i| 00001b20 6d 70 6f 72 74 61 6e 74 20 70 6f 69 6e 74 73 20 |mportant points | 00001b30 74 6f 20 63 6f 6e 73 69 64 65 72 3a 2d 0a 0a 28 |to consider:-..(| 00001b40 31 29 20 54 68 65 20 6f 70 74 69 6f 6e 73 20 6e |1) The options n| 00001b50 65 65 64 20 74 6f 20 62 65 20 63 6f 72 72 65 63 |eed to be correc| 00001b60 74 6c 79 20 73 65 74 20 75 70 2e 20 54 68 69 73 |tly set up. This| 00001b70 20 6d 65 61 6e 73 20 74 68 61 74 20 69 66 20 74 | means that if t| 00001b80 68 65 20 43 53 56 20 66 69 6c 65 0a 6f 72 69 67 |he CSV file.orig| 00001b90 69 6e 61 6c 6c 79 20 63 61 6d 65 20 66 72 6f 6d |inally came from| 00001ba0 20 61 20 50 6f 77 65 72 62 61 73 65 20 61 70 70 | a Powerbase app| 00001bb0 6c 69 63 61 74 69 6f 6e 20 74 68 65 20 73 65 74 |lication the set| 00001bc0 74 69 6e 67 73 20 69 6e 20 74 68 65 20 6f 70 74 |tings in the opt| 00001bd0 69 6f 6e 73 0a 77 69 6e 64 6f 77 20 73 68 6f 75 |ions.window shou| 00001be0 6c 64 20 62 65 20 65 78 61 63 74 6c 79 20 74 68 |ld be exactly th| 00001bf0 65 20 73 61 6d 65 20 61 73 20 74 68 65 79 20 77 |e same as they w| 00001c00 65 72 65 20 77 68 65 6e 20 74 68 65 20 66 69 6c |ere when the fil| 00001c10 65 20 77 61 73 20 65 78 70 6f 72 74 65 64 2e 0a |e was exported..| 00001c20 54 68 65 20 65 78 63 65 70 74 69 6f 6e 20 74 6f |The exception to| 00001c30 20 74 68 69 73 20 69 73 20 74 68 65 20 27 51 75 | this is the 'Qu| 00001c40 6f 74 65 73 27 20 62 75 74 74 6f 6e 20 77 68 69 |otes' button whi| 00001c50 63 68 20 69 73 20 67 72 65 79 65 64 20 6f 75 74 |ch is greyed out| 00001c60 20 6f 6e 20 69 6d 70 6f 72 74 0a 62 65 63 61 75 | on import.becau| 00001c70 73 65 20 50 6f 77 65 72 62 61 73 65 20 64 6f 65 |se Powerbase doe| 00001c80 73 6e 27 74 20 6e 65 65 64 20 69 74 2e 20 49 66 |sn't need it. If| 00001c90 20 74 68 65 20 43 53 56 20 66 69 6c 65 20 63 61 | the CSV file ca| 00001ca0 6d 65 20 66 72 6f 6d 20 61 20 50 43 20 6f 72 20 |me from a PC or | 00001cb0 61 6e 6f 74 68 65 72 0a 52 49 53 43 20 4f 53 20 |another.RISC OS | 00001cc0 61 70 70 6c 69 63 61 74 69 6f 6e 20 79 6f 75 20 |application you | 00001cd0 6d 69 67 68 74 20 68 61 76 65 20 74 6f 20 6c 6f |might have to lo| 00001ce0 61 64 20 69 74 20 69 6e 74 6f 20 45 64 69 74 20 |ad it into Edit | 00001cf0 74 6f 20 66 69 6e 64 20 6f 75 74 20 77 68 61 74 |to find out what| 00001d00 0a 73 65 70 61 72 61 74 6f 72 20 61 6e 64 20 74 |.separator and t| 00001d10 65 72 6d 69 6e 61 74 6f 72 20 61 72 65 20 75 73 |erminator are us| 00001d20 65 64 2c 20 77 68 65 74 68 65 72 20 69 74 20 75 |ed, whether it u| 00001d30 73 65 73 20 71 75 6f 74 65 73 20 65 74 63 2e 0a |ses quotes etc..| 00001d40 0a 28 32 29 20 57 69 6c 6c 20 74 68 65 20 64 61 |.(2) Will the da| 00001d50 74 61 20 62 65 20 72 65 61 64 20 69 6e 74 6f 20 |ta be read into | 00001d60 74 68 65 20 63 6f 72 72 65 63 74 20 50 6f 77 65 |the correct Powe| 00001d70 72 62 61 73 65 20 66 69 65 6c 64 73 3f 20 49 66 |rbase fields? If| 00001d80 20 6e 6f 20 66 69 65 6c 64 73 20 6f 6e 0a 74 68 | no fields on.th| 00001d90 65 20 72 65 63 6f 72 64 20 73 63 72 65 65 6e 20 |e record screen | 00001da0 61 72 65 20 68 69 67 68 6c 69 67 68 74 65 64 20 |are highlighted | 00001db0 28 69 2e 65 2e 20 77 69 74 68 20 41 44 4a 55 53 |(i.e. with ADJUS| 00001dc0 54 29 20 61 6e 64 20 74 68 65 20 43 53 56 20 66 |T) and the CSV f| 00001dd0 69 6c 65 20 64 6f 65 73 0a 6e 6f 74 20 63 6f 6e |ile does.not con| 00001de0 74 61 69 6e 20 61 20 68 65 61 64 65 72 20 72 65 |tain a header re| 00001df0 63 6f 72 64 20 74 68 65 6e 20 74 68 65 20 61 6e |cord then the an| 00001e00 73 77 65 72 20 69 73 20 61 73 20 66 6f 6c 6c 6f |swer is as follo| 00001e10 77 73 3a 2d 0a 0a 20 20 20 20 20 20 20 20 28 61 |ws:-.. (a| 00001e20 29 20 54 68 65 20 66 69 72 73 74 20 43 53 56 20 |) The first CSV | 00001e30 66 69 65 6c 64 20 77 69 6c 6c 20 62 65 20 72 65 |field will be re| 00001e40 61 64 20 69 6e 74 6f 20 74 68 65 20 66 69 72 73 |ad into the firs| 00001e50 74 20 57 52 49 54 41 42 4c 45 0a 20 20 20 20 20 |t WRITABLE. | 00001e60 20 20 20 50 6f 77 65 72 62 61 73 65 20 66 69 65 | Powerbase fie| 00001e70 6c 64 20 6f 72 20 43 68 65 63 6b 20 62 6f 78 20 |ld or Check box | 00001e80 66 69 65 6c 64 2e 20 4e 6f 6e 2d 77 72 69 74 61 |field. Non-writa| 00001e90 62 6c 65 20 66 69 65 6c 64 73 20 73 75 63 68 20 |ble fields such | 00001ea0 61 73 0a 20 20 20 20 20 20 20 20 54 65 78 74 20 |as. Text | 00001eb0 62 6c 6f 63 6b 73 2c 20 50 69 63 74 75 72 65 73 |blocks, Pictures| 00001ec0 2c 20 42 75 74 74 6f 6e 73 20 6f 72 20 66 69 65 |, Buttons or fie| 00001ed0 6c 64 73 20 77 68 69 63 68 20 61 72 65 20 6d 65 |lds which are me| 00001ee0 72 65 6c 79 20 6c 61 62 65 6c 73 0a 20 20 20 20 |rely labels. | 00001ef0 20 20 20 20 77 69 6c 6c 20 62 65 20 69 67 6e 6f | will be igno| 00001f00 72 65 64 2e 20 54 68 65 20 6e 65 78 74 20 43 53 |red. The next CS| 00001f10 56 20 66 69 65 6c 64 20 77 69 6c 6c 20 62 65 20 |V field will be | 00001f20 72 65 61 64 20 69 6e 74 6f 20 74 68 65 20 73 65 |read into the se| 00001f30 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 50 6f 77 |cond. Pow| 00001f40 65 72 62 61 73 65 20 66 69 65 6c 64 20 61 6e 64 |erbase field and| 00001f50 20 73 6f 20 6f 6e 2e 0a 0a 20 20 20 20 20 20 20 | so on... | 00001f60 20 28 62 29 20 49 66 20 74 68 65 20 65 6e 64 20 | (b) If the end | 00001f70 6f 66 20 74 68 65 20 43 53 56 20 72 65 63 6f 72 |of the CSV recor| 00001f80 64 20 69 73 20 72 65 61 63 68 65 64 20 62 65 66 |d is reached bef| 00001f90 6f 72 65 20 61 6c 6c 20 74 68 65 20 77 72 69 74 |ore all the writ| 00001fa0 61 62 6c 65 0a 20 20 20 20 20 20 20 20 66 69 65 |able. fie| 00001fb0 6c 64 73 20 68 61 76 65 20 62 65 65 6e 20 66 69 |lds have been fi| 00001fc0 6c 6c 65 64 20 74 68 65 6e 20 74 68 65 20 6e 65 |lled then the ne| 00001fd0 78 74 20 43 53 56 20 72 65 63 6f 72 64 20 77 69 |xt CSV record wi| 00001fe0 6c 6c 20 73 74 61 72 74 20 61 20 6e 65 77 0a 20 |ll start a new. | 00001ff0 20 20 20 20 20 20 20 50 6f 77 65 72 62 61 73 65 | Powerbase| 00002000 20 72 65 63 6f 72 64 2c 20 69 2e 65 2e 20 74 68 | record, i.e. th| 00002010 65 20 72 65 61 64 69 6e 67 20 77 6f 6e 27 74 20 |e reading won't | 00002020 67 65 74 20 6f 75 74 20 6f 66 20 73 74 65 70 2e |get out of step.| 00002030 20 49 74 20 64 6f 65 73 20 6e 6f 74 0a 20 20 20 | It does not. | 00002040 20 20 20 20 20 6d 61 74 74 65 72 2c 20 74 68 65 | matter, the| 00002050 72 65 66 6f 72 65 2c 20 69 66 20 74 68 65 20 43 |refore, if the C| 00002060 53 56 20 66 69 6c 65 20 6f 6d 69 74 73 20 6e 75 |SV file omits nu| 00002070 6c 6c 20 69 74 65 6d 73 2e 0a 0a 20 20 20 20 20 |ll items... | 00002080 20 20 20 28 63 29 20 49 66 20 61 6c 6c 20 77 72 | (c) If all wr| 00002090 69 74 61 62 6c 65 20 66 69 65 6c 64 73 20 61 72 |itable fields ar| 000020a0 65 20 66 69 6c 6c 65 64 20 69 6e 20 62 65 66 6f |e filled in befo| 000020b0 72 65 20 72 65 61 63 68 69 6e 67 20 74 68 65 20 |re reaching the | 000020c0 65 6e 64 20 6f 66 0a 20 20 20 20 20 20 20 20 74 |end of. t| 000020d0 68 65 20 43 53 56 20 72 65 63 6f 72 64 20 50 6f |he CSV record Po| 000020e0 77 65 72 62 61 73 65 20 69 67 6e 6f 72 65 73 20 |werbase ignores | 000020f0 74 68 65 20 72 65 6d 61 69 6e 64 65 72 20 6f 66 |the remainder of| 00002100 20 74 68 65 20 6c 61 74 74 65 72 20 61 6e 64 0a | the latter and.| 00002110 20 20 20 20 20 20 20 20 73 6b 69 70 73 20 74 6f | skips to| 00002120 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f | the beginning o| 00002130 66 20 74 68 65 20 6e 65 78 74 20 43 53 56 20 72 |f the next CSV r| 00002140 65 63 6f 72 64 20 62 65 66 6f 72 65 20 73 74 61 |ecord before sta| 00002150 72 74 69 6e 67 20 61 20 6e 65 77 0a 20 20 20 20 |rting a new. | 00002160 20 20 20 20 50 6f 77 65 72 62 61 73 65 20 72 65 | Powerbase re| 00002170 63 6f 72 64 2e 20 54 68 69 73 20 69 73 20 61 6c |cord. This is al| 00002180 73 6f 20 74 6f 20 6b 65 65 70 20 74 68 65 20 6f |so to keep the o| 00002190 70 65 72 61 74 69 6f 6e 20 69 6e 20 73 74 65 70 |peration in step| 000021a0 2e 0a 0a 54 68 65 72 65 20 77 69 6c 6c 20 62 65 |...There will be| 000021b0 20 6f 63 63 61 73 69 6f 6e 73 20 77 68 65 6e 20 | occasions when | 000021c0 79 6f 75 20 64 6f 6e 27 74 20 77 61 6e 74 20 74 |you don't want t| 000021d0 6f 20 66 69 6c 6c 20 74 68 65 20 50 6f 77 65 72 |o fill the Power| 000021e0 62 61 73 65 20 66 69 65 6c 64 73 0a 73 65 71 75 |base fields.sequ| 000021f0 65 6e 74 69 61 6c 6c 79 20 61 73 20 6a 75 73 74 |entially as just| 00002200 20 64 65 73 63 72 69 62 65 64 2e 20 54 68 65 72 | described. Ther| 00002210 65 20 61 72 65 20 74 77 6f 20 77 61 79 73 20 6f |e are two ways o| 00002220 66 20 6d 61 6b 69 6e 67 20 74 68 65 20 70 72 6f |f making the pro| 00002230 63 65 73 73 0a 6d 6f 72 65 20 73 70 65 63 69 66 |cess.more specif| 00002240 69 63 3a 2d 0a 0a 20 20 20 20 20 20 20 20 28 61 |ic:-.. (a| 00002250 29 20 49 66 20 79 6f 75 20 68 69 67 68 6c 69 67 |) If you highlig| 00002260 68 74 20 50 6f 77 65 72 62 61 73 65 20 66 69 65 |ht Powerbase fie| 00002270 6c 64 73 20 77 69 74 68 20 41 44 4a 55 53 54 20 |lds with ADJUST | 00002280 62 65 66 6f 72 65 20 73 74 61 72 74 69 6e 67 20 |before starting | 00002290 74 68 65 0a 20 20 20 20 20 20 20 20 69 6d 70 6f |the. impo| 000022a0 72 74 20 74 68 65 20 64 61 74 61 20 77 69 6c 6c |rt the data will| 000022b0 20 62 65 20 72 65 61 64 20 6f 6e 6c 79 20 69 6e | be read only in| 000022c0 74 6f 20 74 68 65 20 68 69 67 68 6c 69 67 68 74 |to the highlight| 000022d0 65 64 20 66 69 65 6c 64 73 2e 20 54 68 65 0a 20 |ed fields. The. | 000022e0 20 20 20 20 20 20 20 6f 72 64 65 72 20 69 6e 20 | order in | 000022f0 77 68 69 63 68 20 74 68 65 20 66 69 65 6c 64 73 |which the fields| 00002300 20 61 72 65 20 66 69 6c 6c 65 64 20 69 73 20 74 | are filled is t| 00002310 68 65 20 6f 72 64 65 72 20 69 6e 20 77 68 69 63 |he order in whic| 00002320 68 20 79 6f 75 0a 20 20 20 20 20 20 20 20 68 69 |h you. hi| 00002330 67 68 6c 69 67 68 74 65 64 20 74 68 65 6d 2e 20 |ghlighted them. | 00002340 50 61 72 61 67 72 61 70 68 73 20 28 62 29 20 61 |Paragraphs (b) a| 00002350 6e 64 20 28 63 29 20 61 62 6f 76 65 20 61 70 70 |nd (c) above app| 00002360 6c 79 20 69 6e 20 63 61 73 65 73 20 77 68 65 72 |ly in cases wher| 00002370 65 0a 20 20 20 20 20 20 20 20 74 68 65 20 43 53 |e. the CS| 00002380 56 20 72 65 63 6f 72 64 20 68 61 73 20 6d 6f 72 |V record has mor| 00002390 65 20 6f 72 20 66 65 77 65 72 20 66 69 65 6c 64 |e or fewer field| 000023a0 73 20 74 68 61 6e 20 61 72 65 20 68 69 67 68 6c |s than are highl| 000023b0 69 67 68 74 65 64 20 6f 6e 20 74 68 65 0a 20 20 |ighted on the. | 000023c0 20 20 20 20 20 20 50 6f 77 65 72 62 61 73 65 20 | Powerbase | 000023d0 72 65 63 6f 72 64 2e 20 49 6e 20 6f 74 68 65 72 |record. In other| 000023e0 20 77 6f 72 64 73 20 74 68 65 20 6f 70 65 72 61 | words the opera| 000023f0 74 69 6f 6e 20 70 72 6f 63 65 65 64 73 20 61 73 |tion proceeds as| 00002400 20 69 66 20 74 68 65 0a 20 20 20 20 20 20 20 20 | if the. | 00002410 68 69 67 68 6c 69 67 68 74 65 64 20 66 69 65 6c |highlighted fiel| 00002420 64 73 20 77 65 72 65 20 74 68 65 20 6f 6e 6c 79 |ds were the only| 00002430 20 6f 6e 65 73 20 69 6e 20 74 68 65 20 72 65 63 | ones in the rec| 00002440 6f 72 64 20 61 6e 64 20 61 73 20 69 66 20 74 68 |ord and as if th| 00002450 65 79 0a 20 20 20 20 20 20 20 20 61 63 74 75 61 |ey. actua| 00002460 6c 6c 79 20 6f 63 63 75 72 72 65 64 20 69 6e 20 |lly occurred in | 00002470 74 68 65 20 6f 72 64 65 72 20 69 6e 20 77 68 69 |the order in whi| 00002480 63 68 20 74 68 65 79 20 77 65 72 65 20 68 69 67 |ch they were hig| 00002490 68 6c 69 67 68 74 65 64 2e 0a 0a 20 20 20 20 20 |hlighted... | 000024a0 20 20 20 28 62 29 20 49 66 20 74 68 65 20 43 53 | (b) If the CS| 000024b0 56 20 66 69 6c 65 20 68 61 73 20 61 20 68 65 61 |V file has a hea| 000024c0 64 65 72 20 77 68 69 63 68 20 63 6f 6e 74 61 69 |der which contai| 000024d0 6e 73 20 74 68 65 20 74 61 67 73 20 6f 72 0a 20 |ns the tags or. | 000024e0 20 20 20 20 20 20 20 64 65 73 63 72 69 70 74 6f | descripto| 000024f0 72 73 20 6f 66 20 66 69 65 6c 64 73 20 69 6e 20 |rs of fields in | 00002500 74 68 65 20 50 6f 77 65 72 62 61 73 65 20 72 65 |the Powerbase re| 00002510 63 6f 72 64 20 74 68 65 6e 20 74 68 65 20 69 6d |cord then the im| 00002520 70 6f 72 74 20 62 65 68 61 76 65 73 0a 20 20 20 |port behaves. | 00002530 20 20 20 20 20 65 78 61 63 74 6c 79 20 61 73 20 | exactly as | 00002540 69 66 20 74 68 6f 73 65 20 66 69 65 6c 64 73 20 |if those fields | 00002550 77 65 72 65 20 68 69 67 68 6c 69 67 68 74 65 64 |were highlighted| 00002560 2e 20 54 68 65 20 27 50 72 69 6e 74 20 6f 70 74 |. The 'Print opt| 00002570 69 6f 6e 73 27 0a 20 20 20 20 20 20 20 20 64 69 |ions'. di| 00002580 61 6c 6f 67 75 65 20 62 6f 78 20 6d 75 73 74 20 |alogue box must | 00002590 63 6f 72 72 65 63 74 6c 79 20 72 65 66 6c 65 63 |correctly reflec| 000025a0 74 20 77 68 65 74 68 65 72 20 74 68 65 20 74 61 |t whether the ta| 000025b0 67 73 20 6f 72 20 64 65 73 63 72 69 70 74 6f 72 |gs or descriptor| 000025c0 73 0a 20 20 20 20 20 20 20 20 6f 66 20 66 69 65 |s. of fie| 000025d0 6c 64 73 20 61 72 65 20 75 73 65 64 2e 20 4e 6f |lds are used. No| 000025e0 74 65 20 74 68 61 74 20 79 6f 75 20 73 68 6f 75 |te that you shou| 000025f0 6c 64 20 6e 6f 74 20 75 73 65 20 62 6f 74 68 20 |ld not use both | 00002600 61 20 68 65 61 64 65 72 20 41 4e 44 0a 20 20 20 |a header AND. | 00002610 20 20 20 20 20 68 69 67 68 6c 69 67 68 74 69 6e | highlightin| 00002620 67 2e 20 4e 6f 74 65 20 61 6c 73 6f 20 74 68 61 |g. Note also tha| 00002630 74 20 74 68 65 72 65 20 69 73 20 6e 6f 74 68 69 |t there is nothi| 00002640 6e 67 20 74 6f 20 70 72 65 76 65 6e 74 20 79 6f |ng to prevent yo| 00002650 75 20 61 64 64 69 6e 67 0a 20 20 20 20 20 20 20 |u adding. | 00002660 20 61 20 68 65 61 64 65 72 20 6d 61 6e 75 61 6c | a header manual| 00002670 6c 79 20 74 6f 20 61 20 43 53 56 20 66 69 6c 65 |ly to a CSV file| 00002680 20 77 68 69 63 68 20 64 69 64 20 6e 6f 74 20 6f | which did not o| 00002690 72 69 67 69 6e 61 74 65 20 66 72 6f 6d 20 61 0a |riginate from a.| 000026a0 20 20 20 20 20 20 20 20 50 6f 77 65 72 62 61 73 | Powerbas| 000026b0 65 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 0a |e application...| 000026c0 57 68 61 74 20 69 66 20 74 68 65 20 64 61 74 61 |What if the data| 000026d0 20 77 6f 6e 27 74 20 66 69 74 3f 0a 3d 3d 3d 3d | won't fit?.====| 000026e0 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |================| 000026f0 3d 3d 3d 3d 3d 3d 3d 0a 54 68 69 73 20 69 73 20 |=======.This is | 00002700 72 65 61 6c 6c 79 20 74 77 6f 20 71 75 65 73 74 |really two quest| 00002710 69 6f 6e 73 2e 20 49 66 20 74 68 65 20 64 61 74 |ions. If the dat| 00002720 61 62 61 73 65 20 64 6f 65 73 6e 27 74 20 63 6f |abase doesn't co| 00002730 6e 74 61 69 6e 20 65 6e 6f 75 67 68 20 66 72 65 |ntain enough fre| 00002740 65 0a 72 65 63 6f 72 64 73 20 74 6f 20 68 6f 6c |e.records to hol| 00002750 64 20 61 6c 6c 20 74 68 65 20 69 6d 70 6f 72 74 |d all the import| 00002760 65 64 20 43 53 56 20 64 61 74 61 20 79 6f 75 20 |ed CSV data you | 00002770 6d 61 79 20 67 65 74 20 61 20 22 44 61 74 61 62 |may get a "Datab| 00002780 61 73 65 20 66 75 6c 6c 20 77 68 65 6e 0a 72 65 |ase full when.re| 00002790 61 64 69 6e 67 20 43 53 56 20 66 69 6c 65 22 20 |ading CSV file" | 000027a0 65 72 72 6f 72 2e 20 54 68 65 72 65 20 61 72 65 |error. There are| 000027b0 20 74 77 6f 20 77 61 79 73 20 6f 66 20 61 76 6f | two ways of avo| 000027c0 69 64 69 6e 67 20 74 68 69 73 2e 20 54 68 65 20 |iding this. The | 000027d0 6f 62 76 69 6f 75 73 0a 6f 6e 65 20 69 73 20 74 |obvious.one is t| 000027e0 6f 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65 20 |o make sure the | 000027f0 64 61 74 61 62 61 73 65 20 69 73 20 62 69 67 20 |database is big | 00002800 65 6e 6f 75 67 68 20 62 65 66 6f 72 65 20 79 6f |enough before yo| 00002810 75 20 73 74 61 72 74 2e 20 49 66 20 69 74 20 69 |u start. If it i| 00002820 73 6e 27 74 0a 79 6f 75 20 63 61 6e 20 65 78 70 |sn't.you can exp| 00002830 61 6e 64 20 69 74 20 76 69 61 20 74 68 65 20 27 |and it via the '| 00002840 43 68 61 6e 67 65 20 6c 65 6e 67 74 68 27 20 64 |Change length' d| 00002850 69 61 6c 6f 67 75 65 20 62 6f 78 20 61 63 63 65 |ialogue box acce| 00002860 73 73 69 62 6c 65 20 66 72 6f 6d 20 74 68 65 0a |ssible from the.| 00002870 27 55 74 69 6c 69 74 69 65 73 27 20 73 75 62 6d |'Utilities' subm| 00002880 65 6e 75 20 6f 6e 20 74 68 65 20 69 63 6f 6e 20 |enu on the icon | 00002890 62 61 72 20 6d 65 6e 75 2e 20 54 68 61 74 20 64 |bar menu. That d| 000028a0 69 61 6c 6f 67 75 65 20 62 6f 78 20 61 6c 73 6f |ialogue box also| 000028b0 20 68 61 73 20 61 6e 0a 27 49 6e 63 72 65 6d 65 | has an.'Increme| 000028c0 6e 74 20 66 6f 72 20 65 78 70 61 6e 73 69 6f 6e |nt for expansion| 000028d0 27 20 77 68 69 63 68 2c 20 69 66 20 67 72 65 61 |' which, if grea| 000028e0 74 65 72 20 74 68 61 6e 20 7a 65 72 6f 2c 20 63 |ter than zero, c| 000028f0 61 75 73 65 73 20 74 68 65 20 64 61 74 61 62 61 |auses the databa| 00002900 73 65 0a 74 6f 20 65 78 70 61 6e 64 20 61 75 74 |se.to expand aut| 00002910 6f 6d 61 74 69 63 61 6c 6c 79 20 77 68 65 6e 65 |omatically whene| 00002920 76 65 72 20 69 74 20 62 65 63 6f 6d 65 73 20 66 |ver it becomes f| 00002930 75 6c 6c 2e 20 4f 6e 6c 79 20 69 66 20 74 68 65 |ull. Only if the| 00002940 20 64 61 74 61 62 61 73 65 0a 62 65 63 6f 6d 65 | database.become| 00002950 73 20 66 75 6c 6c 20 77 68 65 6e 20 74 68 65 20 |s full when the | 00002960 69 6e 63 72 65 6d 65 6e 74 20 69 73 20 73 65 74 |increment is set| 00002970 20 74 6f 20 7a 65 72 6f 20 73 68 6f 75 6c 64 20 | to zero should | 00002980 74 68 65 20 61 66 6f 72 65 6d 65 6e 74 69 6f 6e |the aforemention| 00002990 65 64 0a 65 72 72 6f 72 20 6f 63 63 75 72 2e 0a |ed.error occur..| 000029a0 0a 54 68 65 20 73 65 63 6f 6e 64 20 73 65 6e 73 |.The second sens| 000029b0 65 20 69 6e 20 77 68 69 63 68 20 64 61 74 61 20 |e in which data | 000029c0 6d 69 67 68 74 20 6e 6f 74 20 66 69 74 20 69 73 |might not fit is| 000029d0 20 69 66 20 61 6e 20 69 74 65 6d 20 6f 66 20 64 | if an item of d| 000029e0 61 74 61 20 69 73 20 74 6f 6f 0a 6c 6f 6e 67 20 |ata is too.long | 000029f0 66 6f 72 20 74 68 65 20 64 61 74 61 62 61 73 65 |for the database| 00002a00 20 66 69 65 6c 64 20 69 6e 74 6f 20 77 68 69 63 | field into whic| 00002a10 68 20 79 6f 75 20 61 72 65 20 74 72 79 69 6e 67 |h you are trying| 00002a20 20 74 6f 20 69 6d 70 6f 72 74 20 69 74 2e 20 57 | to import it. W| 00002a30 68 65 6e 20 61 0a 43 53 56 20 66 69 6c 65 20 69 |hen a.CSV file i| 00002a40 73 20 62 65 69 6e 67 20 72 65 61 64 20 50 6f 77 |s being read Pow| 00002a50 65 72 62 61 73 65 20 6d 61 69 6e 74 61 69 6e 73 |erbase maintains| 00002a60 20 61 20 66 69 6c 65 20 63 61 6c 6c 65 64 20 27 | a file called '| 00002a70 54 6f 6f 42 69 67 27 20 69 6e 73 69 64 65 20 74 |TooBig' inside t| 00002a80 68 65 0a 64 61 74 61 62 61 73 65 27 73 20 27 50 |he.database's 'P| 00002a90 72 69 6e 74 4a 6f 62 73 27 20 64 69 72 65 63 74 |rintJobs' direct| 00002aa0 6f 72 79 2e 20 41 6e 79 74 68 69 6e 67 20 72 65 |ory. Anything re| 00002ab0 61 64 20 66 72 6f 6d 20 74 68 65 20 43 53 56 20 |ad from the CSV | 00002ac0 66 69 6c 65 20 77 68 69 63 68 0a 77 6f 6e 27 74 |file which.won't| 00002ad0 20 66 69 74 20 69 6e 20 74 68 65 20 74 61 72 67 | fit in the targ| 00002ae0 65 74 20 66 69 65 6c 64 20 69 73 20 77 72 69 74 |et field is writ| 00002af0 74 65 6e 20 74 6f 20 74 68 69 73 20 66 69 6c 65 |ten to this file| 00002b00 20 74 6f 67 65 74 68 65 72 20 77 69 74 68 0a 69 | together with.i| 00002b10 6e 66 6f 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 |nformation about| 00002b20 20 77 68 65 72 65 20 69 74 20 77 61 73 20 69 6e | where it was in| 00002b30 74 65 6e 64 65 64 20 74 6f 20 67 6f 2e 20 4e 6f |tended to go. No| 00002b40 20 77 72 69 74 61 62 6c 65 20 50 6f 77 65 72 62 | writable Powerb| 00002b50 61 73 65 20 66 69 65 6c 64 0a 6d 61 79 20 62 65 |ase field.may be| 00002b60 20 6c 6f 6e 67 65 72 20 74 68 61 6e 20 32 34 36 | longer than 246| 00002b70 20 63 68 61 72 61 63 74 65 72 73 20 61 6e 64 20 | characters and | 00002b80 69 66 20 61 6e 20 69 74 65 6d 20 6f 66 20 69 6d |if an item of im| 00002b90 70 6f 72 74 65 64 20 64 61 74 61 20 65 78 63 65 |ported data exce| 00002ba0 65 64 73 0a 74 68 69 73 20 61 20 6e 6f 74 65 20 |eds.this a note | 00002bb0 77 69 6c 6c 20 62 65 20 6d 61 64 65 20 69 6e 20 |will be made in | 00002bc0 74 68 65 20 27 54 6f 6f 42 69 67 27 20 66 69 6c |the 'TooBig' fil| 00002bd0 65 20 61 64 76 69 73 69 6e 67 20 79 6f 75 20 74 |e advising you t| 00002be0 6f 20 64 65 66 69 6e 65 20 61 6e 0a 45 78 74 65 |o define an.Exte| 00002bf0 72 6e 61 6c 20 66 69 65 6c 64 20 28 54 65 78 74 |rnal field (Text| 00002c00 20 42 6c 6f 63 6b 20 6f 72 20 54 65 78 74 29 20 | Block or Text) | 00002c10 66 6f 72 20 73 75 63 68 20 64 61 74 61 2e 0a 0a |for such data...| 00002c20 41 64 76 61 6e 63 65 64 20 66 65 61 74 75 72 65 |Advanced feature| 00002c30 73 20 6f 66 20 43 53 56 20 69 6d 70 6f 72 74 0a |s of CSV import.| 00002c40 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d |================| 00002c50 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a |===============.| 00002c60 57 68 65 6e 20 79 6f 75 20 69 6d 70 6f 72 74 20 |When you import | 00002c70 61 20 43 53 56 20 66 69 6c 65 20 61 20 6e 65 77 |a CSV file a new| 00002c80 20 50 6f 77 65 72 62 61 73 65 20 72 65 63 6f 72 | Powerbase recor| 00002c90 64 20 69 73 20 6e 6f 72 6d 61 6c 6c 79 20 63 72 |d is normally cr| 00002ca0 65 61 74 65 64 20 74 6f 0a 61 63 63 6f 6d 6d 6f |eated to.accommo| 00002cb0 64 61 74 65 20 65 61 63 68 20 43 53 56 20 72 65 |date each CSV re| 00002cc0 63 6f 72 64 20 72 65 61 64 20 66 72 6f 6d 20 74 |cord read from t| 00002cd0 68 65 20 66 69 6c 65 2e 20 59 6f 75 20 6d 61 79 |he file. You may| 00002ce0 20 61 6c 73 6f 2c 20 73 75 62 6a 65 63 74 20 74 | also, subject t| 00002cf0 6f 0a 63 65 72 74 61 69 6e 20 72 65 73 74 72 69 |o.certain restri| 00002d00 63 74 69 6f 6e 73 2c 20 75 73 65 20 61 20 43 53 |ctions, use a CS| 00002d10 56 20 66 69 6c 65 20 74 6f 20 65 6e 74 65 72 20 |V file to enter | 00002d20 64 61 74 61 20 69 6e 74 6f 20 45 58 49 53 54 49 |data into EXISTI| 00002d30 4e 47 20 50 6f 77 65 72 62 61 73 65 0a 72 65 63 |NG Powerbase.rec| 00002d40 6f 72 64 73 2e 20 0a 0a 54 68 65 20 43 53 56 20 |ords. ..The CSV | 00002d50 6f 70 74 69 6f 6e 73 20 77 69 6e 64 6f 77 20 63 |options window c| 00002d60 6f 6e 74 61 69 6e 73 20 61 20 62 75 74 74 6f 6e |ontains a button| 00002d70 20 77 68 69 63 68 2c 20 69 66 20 73 65 6c 65 63 | which, if selec| 00002d80 74 65 64 2c 20 63 61 75 73 65 73 20 65 61 63 68 |ted, causes each| 00002d90 0a 72 65 63 6f 72 64 20 6f 66 20 61 20 73 61 76 |.record of a sav| 00002da0 65 64 20 43 53 56 20 66 69 6c 65 20 74 6f 20 69 |ed CSV file to i| 00002db0 6e 63 6c 75 64 65 20 74 68 65 20 70 72 69 6d 61 |nclude the prima| 00002dc0 72 79 20 6b 65 79 20 6f 66 20 74 68 65 20 50 6f |ry key of the Po| 00002dd0 77 65 72 62 61 73 65 0a 72 65 63 6f 72 64 2e 20 |werbase.record. | 00002de0 54 68 65 20 6b 65 79 20 69 73 20 70 6c 61 63 65 |The key is place| 00002df0 64 20 61 74 20 74 68 65 20 62 65 67 69 6e 6e 69 |d at the beginni| 00002e00 6e 67 20 6f 66 20 74 68 65 20 72 65 63 6f 72 64 |ng of the record| 00002e10 2e 20 54 72 79 20 63 72 65 61 74 69 6e 67 20 43 |. Try creating C| 00002e20 53 56 0a 66 69 6c 65 73 20 77 69 74 68 20 61 6e |SV.files with an| 00002e30 64 20 77 69 74 68 6f 75 74 20 74 68 69 73 20 6f |d without this o| 00002e40 70 74 69 6f 6e 20 73 65 74 20 61 6e 64 20 63 6f |ption set and co| 00002e50 6d 70 61 72 65 20 74 68 65 20 66 69 6c 65 73 20 |mpare the files | 00002e60 75 73 69 6e 67 20 45 64 69 74 2e 20 49 66 0a 61 |using Edit. If.a| 00002e70 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 69 6e 67 | file containing| 00002e80 20 70 72 69 6d 61 72 79 20 6b 65 79 73 20 69 73 | primary keys is| 00002e90 20 64 72 61 67 67 65 64 20 69 6e 74 6f 20 61 20 | dragged into a | 00002ea0 50 6f 77 65 72 62 61 73 65 20 72 65 63 6f 72 64 |Powerbase record| 00002eb0 20 77 69 6e 64 6f 77 0a 50 6f 77 65 72 62 61 73 | window.Powerbas| 00002ec0 65 20 77 69 6c 6c 20 61 74 74 65 6d 70 74 20 74 |e will attempt t| 00002ed0 6f 20 6c 6f 63 61 74 65 20 74 68 65 20 72 65 63 |o locate the rec| 00002ee0 6f 72 64 73 20 77 69 74 68 20 74 68 65 20 73 61 |ords with the sa| 00002ef0 6d 65 20 70 72 69 6d 61 72 79 20 6b 65 79 73 20 |me primary keys | 00002f00 61 73 0a 74 68 65 20 72 65 63 6f 72 64 73 20 69 |as.the records i| 00002f10 6e 20 74 68 65 20 43 53 56 20 66 69 6c 65 2e 20 |n the CSV file. | 00002f20 49 66 20 74 68 65 20 6b 65 79 20 69 73 20 6e 6f |If the key is no| 00002f30 74 20 66 6f 75 6e 64 20 74 68 65 20 43 53 56 20 |t found the CSV | 00002f40 72 65 63 6f 72 64 20 69 73 0a 73 69 6d 70 6c 79 |record is.simply| 00002f50 20 69 67 6e 6f 72 65 64 2e 20 49 66 20 69 74 20 | ignored. If it | 00002f60 69 73 20 66 6f 75 6e 64 20 74 68 65 6e 20 74 68 |is found then th| 00002f70 65 20 43 53 56 20 64 61 74 61 20 67 6f 65 73 20 |e CSV data goes | 00002f80 69 6e 74 6f 20 74 68 65 20 73 61 6d 65 20 72 65 |into the same re| 00002f90 63 6f 72 64 2c 0a 6f 76 65 72 77 72 69 74 69 6e |cord,.overwritin| 00002fa0 67 20 61 6e 79 20 64 61 74 61 20 77 68 69 63 68 |g any data which| 00002fb0 20 74 68 65 20 74 61 72 67 65 74 20 66 69 65 6c | the target fiel| 00002fc0 64 73 20 61 6c 72 65 61 64 79 20 63 6f 6e 74 61 |ds already conta| 00002fd0 69 6e 2e 0a 0a 54 68 65 20 6f 70 65 72 61 74 69 |in...The operati| 00002fe0 6f 6e 20 64 65 73 63 72 69 62 65 64 20 6e 65 65 |on described nee| 00002ff0 64 73 20 75 73 69 6e 67 20 77 69 74 68 20 63 61 |ds using with ca| 00003000 72 65 2e 20 49 74 20 69 73 20 6f 6e 6c 79 20 72 |re. It is only r| 00003010 65 61 6c 6c 79 20 75 73 65 66 75 6c 20 66 6f 72 |eally useful for| 00003020 0a 74 72 61 6e 73 66 65 72 72 69 6e 67 20 64 61 |.transferring da| 00003030 74 61 20 62 65 74 77 65 65 6e 20 50 6f 77 65 72 |ta between Power| 00003040 62 61 73 65 20 64 61 74 61 62 61 73 65 73 20 77 |base databases w| 00003050 68 69 63 68 20 68 61 76 65 20 74 68 65 20 73 61 |hich have the sa| 00003060 6d 65 20 70 72 69 6d 61 72 79 0a 6b 65 79 20 66 |me primary.key f| 00003070 69 65 6c 64 2e 20 49 74 20 63 61 6e 20 61 6c 73 |ield. It can als| 00003080 6f 20 6c 65 61 64 20 74 6f 20 74 72 6f 75 62 6c |o lead to troubl| 00003090 65 20 69 66 20 74 68 65 20 70 72 69 6d 61 72 79 |e if the primary| 000030a0 20 6b 65 79 20 69 73 6e 27 74 20 75 6e 69 71 75 | key isn't uniqu| 000030b0 65 2c 0a 73 69 6e 63 65 20 74 68 65 20 72 65 63 |e,.since the rec| 000030c0 6f 72 64 20 6c 6f 63 61 74 65 64 20 62 79 20 50 |ord located by P| 000030d0 6f 77 65 72 62 61 73 65 20 61 6e 64 20 69 6e 74 |owerbase and int| 000030e0 6f 20 77 68 69 63 68 20 74 68 65 20 43 53 56 20 |o which the CSV | 000030f0 64 61 74 61 20 69 73 20 72 65 61 64 0a 6d 69 67 |data is read.mig| 00003100 68 74 20 6e 6f 74 20 62 65 20 74 68 65 20 63 6f |ht not be the co| 00003110 72 72 65 63 74 20 6f 6e 65 2e 20 59 6f 75 20 68 |rrect one. You h| 00003120 61 76 65 20 62 65 65 6e 20 77 61 72 6e 65 64 21 |ave been warned!| 00003130 0a 0a 46 69 6e 61 6c 6c 79 2c 20 74 68 65 72 65 |..Finally, there| 00003140 20 69 73 20 6f 6e 65 20 6f 70 74 69 6f 6e 20 62 | is one option b| 00003150 75 74 74 6f 6e 20 69 6e 20 74 68 65 20 43 53 56 |utton in the CSV| 00003160 20 6f 70 74 69 6f 6e 73 20 77 69 6e 64 6f 77 20 | options window | 00003170 77 68 69 63 68 20 6f 6e 6c 79 0a 62 65 63 6f 6d |which only.becom| 00003180 65 73 20 61 63 74 69 76 65 20 77 68 65 6e 20 74 |es active when t| 00003190 68 65 20 27 48 65 61 64 65 72 27 20 62 75 74 74 |he 'Header' butt| 000031a0 6f 6e 20 69 73 20 73 65 6c 65 63 74 65 64 2e 20 |on is selected. | 000031b0 54 68 69 73 20 69 73 20 63 61 6c 6c 65 64 20 27 |This is called '| 000031c0 57 69 74 68 0a 66 69 65 6c 64 20 64 61 74 61 27 |With.field data'| 000031d0 2e 20 57 68 65 6e 20 73 65 6c 65 63 74 65 64 20 |. When selected | 000031e0 74 68 65 20 68 65 61 64 65 72 20 6f 66 20 61 20 |the header of a | 000031f0 73 61 76 65 64 20 43 53 56 20 66 69 6c 65 20 63 |saved CSV file c| 00003200 6f 6e 74 61 69 6e 73 20 6e 6f 74 20 6f 6e 6c 79 |ontains not only| 00003210 0a 74 68 65 20 66 69 65 6c 64 20 6e 61 6d 65 73 |.the field names| 00003220 20 62 75 74 20 61 6c 73 6f 20 74 68 65 20 66 69 | but also the fi| 00003230 65 6c 64 20 6c 65 6e 67 74 68 73 20 61 6e 64 20 |eld lengths and | 00003240 74 79 70 65 73 2e 20 41 67 61 69 6e 20 69 74 20 |types. Again it | 00003250 69 73 20 73 75 67 67 65 73 74 65 64 0a 74 68 61 |is suggested.tha| 00003260 74 20 79 6f 75 20 63 72 65 61 74 65 20 73 75 63 |t you create suc| 00003270 68 20 61 20 66 69 6c 65 20 61 6e 64 20 6c 6f 6f |h a file and loo| 00003280 6b 20 61 74 20 69 74 20 69 6e 20 45 64 69 74 2e |k at it in Edit.| 00003290 20 45 61 63 68 20 69 74 65 6d 20 69 6e 20 74 68 | Each item in th| 000032a0 65 20 68 65 61 64 65 72 0a 62 65 67 69 6e 73 20 |e header.begins | 000032b0 77 69 74 68 20 61 20 6e 75 6d 62 65 72 2e 20 54 |with a number. T| 000032c0 68 69 73 20 69 73 20 74 68 65 20 64 65 66 69 6e |his is the defin| 000032d0 65 64 20 66 69 65 6c 64 20 6c 65 6e 67 74 68 20 |ed field length | 000032e0 69 6e 20 63 68 61 72 61 63 74 65 72 73 2c 20 69 |in characters, i| 000032f0 2e 65 2e 0a 74 68 65 20 6d 61 78 69 6d 75 6d 20 |.e..the maximum | 00003300 61 6c 6c 6f 77 65 64 20 6c 65 6e 67 74 68 20 69 |allowed length i| 00003310 6e 20 74 68 65 20 50 6f 77 65 72 62 61 73 65 20 |n the Powerbase | 00003320 72 65 63 6f 72 64 20 66 69 65 6c 64 2e 20 4e 65 |record field. Ne| 00003330 78 74 20 63 6f 6d 65 73 20 61 20 a4 0a 63 68 61 |xt comes a ..cha| 00003340 72 61 63 74 65 72 20 77 68 69 63 68 20 73 65 70 |racter which sep| 00003350 61 72 61 74 65 73 20 74 68 65 20 6c 65 6e 67 74 |arates the lengt| 00003360 68 20 66 72 6f 6d 20 74 68 65 20 66 69 65 6c 64 |h from the field| 00003370 20 6e 61 6d 65 2e 20 41 6e 6f 74 68 65 72 20 a4 | name. Another .| 00003380 0a 73 65 70 61 72 61 74 65 73 20 74 68 65 20 66 |.separates the f| 00003390 69 65 6c 64 20 6e 61 6d 65 20 66 72 6f 6d 20 74 |ield name from t| 000033a0 68 65 20 63 6f 6e 63 6c 75 64 69 6e 67 20 6e 75 |he concluding nu| 000033b0 6d 62 65 72 20 77 68 69 63 68 20 69 73 20 74 68 |mber which is th| 000033c0 65 20 66 69 65 6c 64 20 74 79 70 65 2e 0a 28 54 |e field type..(T| 000033d0 68 65 20 74 79 70 65 20 6e 75 6d 62 65 72 73 20 |he type numbers | 000033e0 6d 61 79 20 62 65 20 69 6e 73 70 65 63 74 65 64 |may be inspected| 000033f0 20 62 79 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74 | by looking at t| 00003400 68 65 20 27 56 61 6c 53 74 72 69 6e 67 73 27 20 |he 'ValStrings' | 00003410 66 69 6c 65 20 69 6e 0a 74 68 65 20 50 6f 77 65 |file in.the Powe| 00003420 72 62 61 73 65 20 64 69 72 65 63 74 6f 72 79 2e |rbase directory.| 00003430 29 0a 0a 41 20 66 69 6c 65 20 63 72 65 61 74 65 |)..A file create| 00003440 64 20 69 6e 20 74 68 69 73 20 66 6f 72 6d 20 69 |d in this form i| 00003450 73 20 4e 4f 54 20 6d 65 61 6e 74 20 74 6f 20 62 |s NOT meant to b| 00003460 65 20 64 72 6f 70 70 65 64 20 6f 6e 20 74 68 65 |e dropped on the| 00003470 20 77 69 6e 64 6f 77 20 6f 66 20 61 6e 0a 6f 70 | window of an.op| 00003480 65 6e 20 64 61 74 61 62 61 73 65 2e 20 49 74 20 |en database. It | 00003490 73 68 6f 75 6c 64 20 62 65 20 64 72 6f 70 70 65 |should be droppe| 000034a0 64 20 6f 6e 20 74 68 65 20 50 6f 77 65 72 62 61 |d on the Powerba| 000034b0 73 65 20 69 63 6f 6e 20 6f 6e 20 74 68 65 20 69 |se icon on the i| 000034c0 63 6f 6e 20 62 61 72 0a 77 68 65 6e 20 6e 6f 20 |con bar.when no | 000034d0 64 61 74 61 62 61 73 65 20 69 73 20 6f 70 65 6e |database is open| 000034e0 2e 20 50 6f 77 65 72 62 61 73 65 20 77 69 6c 6c |. Powerbase will| 000034f0 20 61 74 74 65 6d 70 74 20 74 6f 20 63 6f 6e 76 | attempt to conv| 00003500 65 72 74 20 74 68 65 20 66 69 6c 65 20 69 6e 74 |ert the file int| 00003510 6f 20 61 0a 66 75 6e 63 74 69 6f 6e 69 6e 67 20 |o a.functioning | 00003520 64 61 74 61 62 61 73 65 2e 20 41 6c 6c 20 74 68 |database. All th| 00003530 65 20 66 69 65 6c 64 73 20 77 69 6c 6c 20 62 65 |e fields will be| 00003540 20 72 61 6e 67 65 64 20 6f 6e 20 74 68 65 20 6c | ranged on the l| 00003550 65 66 74 20 6f 66 20 74 68 65 0a 72 65 63 6f 72 |eft of the.recor| 00003560 64 20 77 69 6e 64 6f 77 2c 20 6f 6e 65 20 62 65 |d window, one be| 00003570 6e 65 61 74 68 20 61 6e 6f 74 68 65 72 20 61 6e |neath another an| 00003580 64 20 74 68 65 20 70 72 69 6d 61 72 79 20 6b 65 |d the primary ke| 00003590 79 20 77 69 6c 6c 20 63 6f 6e 73 69 73 74 20 6f |y will consist o| 000035a0 66 20 74 68 65 0a 66 69 72 73 74 20 66 6f 75 72 |f the.first four| 000035b0 20 63 68 61 72 61 63 74 65 72 73 20 6f 66 20 74 | characters of t| 000035c0 68 65 20 66 69 72 73 74 20 66 69 65 6c 64 2e 20 |he first field. | 000035d0 44 6f 6e 27 74 20 74 72 79 20 74 6f 20 63 72 65 |Don't try to cre| 000035e0 61 74 65 20 64 61 74 61 62 61 73 65 73 0a 63 6f |ate databases.co| 000035f0 6e 74 61 69 6e 69 6e 67 20 43 68 65 63 6b 20 62 |ntaining Check b| 00003600 6f 78 2c 20 42 75 74 74 6f 6e 20 6f 72 20 45 78 |ox, Button or Ex| 00003610 74 65 72 6e 61 6c 20 66 69 65 6c 64 73 20 75 73 |ternal fields us| 00003620 69 6e 67 20 74 68 69 73 20 6d 65 74 68 6f 64 3b |ing this method;| 00003630 20 69 74 27 73 20 6f 6e 6c 79 0a 6d 65 61 6e 74 | it's only.meant| 00003640 20 66 6f 72 20 74 68 65 20 6d 6f 73 74 20 62 61 | for the most ba| 00003650 73 69 63 20 74 79 70 65 20 6f 66 20 64 61 74 61 |sic type of data| 00003660 62 61 73 65 2e 20 0a 0a 0a 20 20 20 20 20 20 0a |base. ... .| 00003670 0a 0a |..| 00003672