JBData Version 1.4 (c)JBSoft 1994-6 ³ ÃÄ¿ ÀÂÁÄÙ ÀÄ¿ ÄÄÙ Contact ------- John Boyce CompuServe: 100014,1240 CIX/Internet: jboyce@cix.compulink.co.uk Description ----------- JBData is a free application for the enhanced display of database files (either those created by Data or those made by an OPL program). The program allows for extra display modes, sorting of the file, better search utilities, a simple password system and other improvements (but see the section called 'Known Problems'). Registration ------------ No registration is required - this program is free of charge. Installation ------------ 1. Copy JBDATA.APP to any \APP\ directory. 2. From the System screen navigate to the place you wish to install the application on the System screen and press Psion-I. 3. Select the drive on which JBDATA.APP resides using the left and right cursor keys. 4. Select JBDATA.APP in the file list using the up and down cursor keys. 5. Press Enter. The application will install on the screen at the chosen place. A file list of Data files that are in the \DAT\ directories on all drives will be displayed under the JBData icon in the same way as they are under Data. Operation --------- To start the application highlight a file under the JBData icon and press Enter. N.B. There is a possibility that, if there is insufficient memory available to run the application, you may be presented with a blank screen. If this happens just press Psion-Esc. This will take you back to the System screen where you can close down some applications to free some memory. I have intercepted this problem as much as possible but have been unable to eliminate it completely. When the application is running use the following keys to operate it. Movement -------- Down - moves to the next record. In Page mode, if at the last record, will move to the first record. If the cursor is showing in Page mode then moves down the current record. Up - moves to the previous record. In Page mode, if at the first record, will move to the last record. If the cursor is showing in Page mode then moves up the current record. PgUp - In Line mode shows the previous page of records. If the cursor is showing in Page mode then pages down the current record. PgDn - In Line Mode shows the next page of records. If the cursor is showing in Page mode then pages up the current record. Ctrl-PgUp - Show the first record in the file. Ctrl-PgDn - Show the last record in the file. Left - In Line mode moves the display one field to the left. Right - In Line mode moves the display one field to the right. Home - In Line mode moves the display to the first field. End - In Line mode moves the display to the last field with data. Enter - Either move to next record or toggle the Page/Line mode display (depending how set with Shift-Psion-R). Shift-Enter - Move to previous record (dependant on state of Shift-Psion-R). Esc - One press clears the quick find. Two presses in quick succession will clear the line display back to the frozen fields and the next field. Tab - In Page mode this will allow the use of the cursor keys for missing lines to be scrolled onto the page using the cursor keys. - In Line mode this key finds the next match for QuickSearch. Open File Psion-O --------- This option opens a previously existing file. If the file has been previously opened in JBData, configured, and that configuration saved, then this configuration will be used to setup the display. Any Datafile created by Data, JBData, or an OPL program can be opened. If a password has been set then this will be prompted for before the file will open. Merge File Psion-M ---------- To merge two files into one. A selection box is shown in order that you can choose the file to merge with the existing database. It is necessary that the two files to be merged have identical fields types in the same order unless merging in text when there is a field check before the record can be saved. After the filename has been given another dialog appears that provides the options of merging the two files, over-writing the current file with the new file and merging or over-writing the file and remapping the new data so that incoming fields can be directed to different fields in the destination file. The setup will be transferred at the same time if over-write is selected. It is also possible to merge a text file with a data file. The data file must consist only of fields with strings for this to work unless the text has been formatted to suit the field types. In this dialog another option is given to allow overwriting the current data (i.e. make a new file from the data), merge with the current data, or merge and remap the new data. In the instance of over-write the setup will be taken from the existing file (unlike over-writing .DBF files). Start off as for a Datafile merge. Once the filename has been selected then a further dialog will prompt for the character delimiter to be used as a field terminator. If 'Newline' is chosen then a record will consist either of the number of lines that are the equivalent of the number of fields set when the datafile was created, or until two Newlines are encountered with no data between them. Otherwise, records will consist of either the number of fields originally created, or until a new line is encountered in the text file (whichever occurs first). If the maximum number of fields comes first then the remaining data will be placed in the next record. There is also an option to give a Labels file. This is for labels saved during 'Save As' and the data will over-write any Labels in the file. The Labels file is always in the format one line per field (whether that field has a label or not) and the data is not enclosed in quotes. A further option on this line is 'Combined'. This enables labels that had been saved with each record to be recovered and removed from the data. If this method is selected then a small edit box will appear allowing the cursor to be placed before the first letter of the data. Anything before this position will be treated as a Label and used to create them. A further option for a text merge (only for when the file is over- written) is to accept the first record as Labels. Any data in this first record is used to generate Labels which will be saved with the data. Finally, there is the choice of Merge, Overwrite, or Merge and Remap to allow the text to either add records to the existing file, to replace the data currently there, or merge and remap the fields of the new data. New File Psion-N -------- To create a new file use this option. A dialog box is given to choose the new filename. Once this name has been chosen a dialog will prompt for the number of fields to include (the default (and maximum number) is 32). Another dialog will then ask for the type of fields required (the default for all fields is String) - all the fields should be correctly entered. The file will then be created and you will end up in the Edit screen as a prompt to input some data. If the directory for the file does not exist, it is automatically created. Save As Psion-A ------- To save the current file with a different name, save selected records, or to save as text, use this option. A dialog box will be displayed to prompt for the new name to use. Once this new name has been input (along with any path that is needed) then another dialog may be shown asking if All records should be saved or the Selected records only. This dialog will only show if a MultiFind or Marked Record display is current (MultiFind listings are actually Marked Record listings). Another dialog will then be shown which allows for the data to be saved either as another data file or as text. If the Data option is selected then the data will be saved complete with any setup. If the text option is selected then a delimiter character must be set to distinguish between the fields. This works in a similar way to that of the Data application but without the 255 character limit of that application. The options for the delimiter are: New Line - in this mode blank fields are seeded with a space. Tab Comma Semicolon Other - specify the character on the Char Code line. There are also options to save the data enclosed in quotes ("), how to deal with Shift-Enter within fields, and to save the Labels into a separate file, with each record or as the first record in the file. The separate Labels file, if created, has a default extension of .LAB. The Labels are always saved without quotes and each field ending in a carriage return in this separate file. Quotes will not be put around fields that were originally values. Labels saved as the first record will have all the attributes that normal records in the text file have and will be treated in exactly the same way. If the option to save the Labels combined with the data is chosen then the appropriate label will precede the data to which it relates on each record. The label will be right justified against the data so that, when viewed, there is some neatness in the display. This right justification should be maintained if it is desired later to strip the labels using JBData. Compress File Psion-K ------------- This option compresses the current file, clearing all deleted records from the database. If the file is on a Flash SSD then a dialog is shown so as to give the opportunity to abort the process (it will use as much space again as the original file on a Flash pack). Sort File Psion-S --------- The current file may be sorted. Any sort will automatically update the file saved on the disk and over-write the original file. A dialog box is shown with a choice of three fields to sort on. If you wish to sort on less than three fields then make the fields to be ignored the same as the last operational field. The default is to sort on the first three fields. There is also the choice to choose the direction of the sort (either Forwards or Reverse - the reverse sort would put Z before A rather than A before Z. If you wish to ignore NULL fields (i.e. ones that are empty of data) then select 'Ignore' in that option otherwise the default is seed with a 'Space' which seeds NULL fields with a space, there is an alternative of seeding with a high value character (Character code 255). There is also the option of selecting a no-case sensitive sort. The fields used to sort the file are saved with the file on exit. If the file resides on a Flash pack then an option to abort the sort is given as the space used up on the pack will double. Memory Sort Shift-Psion-S ----------- This option will sort the file in memory only - the sorted items are only seen in sorted mode in the Line (or Table) mode. Any alteration to the file (i.e. Delete, Add or Edit a record) will disable the sort and a new sort will have to be made. It works in exactly the same way as the ordinary sort but leaves out the final write to disk. To inhibit the sort use Ctrl-Psion-O. If this is used then a new sort will have to be implemented if required - it does not act as a toggle. Numerical Sort - Ctrl-Psion-N -------------- A single field sort which works on numerical data has been implemented. It works in a similar way to that of the normal sorts and, using Shift as well (Shift-Ctrl-Psion-N), is also available as a memory sort. The field selected for the sort initially is the same as field one on the regular sort dialog. Reset Sort Fields - Shift-Psion-O ----------------- The fields used for sorting the database are saved. It you wish to reset these fields to the first three fields again (the initial option) then use this keypress combination before accessing the Sort procedure. Update Record Psion-U ------------- A record can be edited by using this function - to save the changed data press Tab when the edit is complete. Care should be taken with field types as it would be possible to input a string where a number should be. A check is made when Tab is pressed and, if a field is incorrect, the edit box will remain. Pressing Escape will abort any changes. Delete Record Psion-D ------------- Individual or marked records can be deleted using this option. The record to be deleted should be highlighted in the Line mode or displayed using the Page mode. If this option does not appear to work, press Esc and try again. If this option is accessed and there are marked records then an option to delete all the marked files is given. Add Record Psion-E ---------- This option creates a new record. Use Tab to save the new record or Escape to abandon the creation. See Update Record for information concerning field types. You stay in this mode until Escape is pressed just like Data. Print Record Shift-Psion-P ------------ An individual record or marked record list can be printed using this option. The Print Setup (Psion-Y) should be accessed first to set up the print option as required. The record(s) will be printed in the form it is displayed on the screen. There is the option of printing the Labels as well (via a dialog) but, if in a Line display, the labels are only printed once at the start of the print. If in a Marked Record list then a dialog will be shown asking if this list should be printed. If No is selected then the highlighted record only will be printed. In Line mode the amount of data printed is restricted to what will fit on one line. This can be adjusted a little by modifying the field widths before printing as this will define the maximum length of each field to print. Remove Duplicate Records Shift-Psion-- ------------------------ It is possible to remove duplicate records using this key combination (Psion/Shift/Minus). This is a slow process and, once started, cannot be stopped. Modify Fields Shift-Psion-E ------------- It is possible to add and delete individual fields using this command. Only one field can be added or deleted at a time though. The first option is a dialog to determine which field to choose for deletion or the position of the additional field. Any new field may be placed before or after the chosen field in the dialog. Next, if addition is required, a choice of the type of field is given (this is the usual Integer, Long, Floating Point or String choice). A further dialog then appears to make sure you wish to make this modification and only then is the data modified. In order for this operation to work there must be enough space on the drive for a duplicate file to be made - a check is made before anything happens to determine if the source file is in a Flash SSD and if there is enough space to create a duplicate file. If the conversion fails with an error that stops the program from running then the original file will be intact and there will probably be a file called JBZZ.DBF which can safely be deleted. Edit Labels Psion-L ----------- The labels as displayed can be added or edited using this option. This procedure uses the same editor as that used for records. To save the changes press Tab - use Escape to abandon this option. The type of field is shown where the labels normally appear - this is just a guide and the information contained in the labels field cannot be saved or copied. Edit Widths/Line Wrap Psion-W --------------------- In Line mode the widths of the individual fields are adjustable using this option. It uses dialog boxes to display up to 5 fields at a time. To move to the next set of fields press N, use P to go to the previous selection. When the changes have been completed, press Enter. This option will only have any effect on the display in Line mode. The width is displayed in character units but it should be remembered that most of the fonts on the computer are proportional and the numbers shown are just a guide. In Page mode when viewing a record the line wrap can be toggled on and off using this same key combination. In Edit and Update line wrap is automatically switched off. Calculate Widths Psion-I ---------------- This option will look at each record in the file in turn and adjust the display widths of each field accordingly. It will take the record with the longest field as its base for that field. Because this procedure looks at every record, on a large file this can take some time to complete. Reset Widths Shift-Psion-I ------------ Widths are reset to the default size of 20 characters for each field when this option is activated. Please note that with proportional fonts more characters than specified may be shown. Page/Line View Psion-R -------------- To toggle between the Line and Page View use this option. Record Number Toggle Shift-Psion-N -------------------- This option toggles the record numbers on and off. The Page and Line views status is held separately so that numbers can be displayed in one format and not in the other. Labels Toggle Psion-H ------------- Labels display can be toggled on and off using this key combination. It is operative in both Line and Page mode but the selected display is independent of the other. Displayed fields Shift-Psion-W ---------------- The fields that are shown in Line mode can be toggled on and off using this command. The options are View and Hide and only the first 32 fields can be set in this way. The fields hidden in this manner relates to the position of the field and not it's name, so if, normally, the third field is called 'Phone' but has been changed to the 'Fax' field, it will be the Fax field that is hidden. The information is saved with the file. The hidden fields can be set to show all by using Shift-Psion-M. Displayed fields reset Shift-Psion-M ---------------------- Any hidden fields that were set by Shift-Psion-W can be reset using this command. It will make all the fields visible at once. Blank Lines Toggle/Grid Lines Psion-B ----------------------------- In Page mode blank lines can be shown or hidden using this option. To detect which method is in use, the Menu will show the opposite option to that in force. In Line mode this command will bring up a dialog box in order that you might select the visibility of grid lines for each record. Freeze Fields Shift-Psion-K ------------- In Line mode it is possible to keep some fields always visible. The only option selectable is the end field to freeze - the first visible field will always be field 1. Re-order Fields Shift-Psion-D --------------- This command will bring up a dialog which enables the position of the fields in Line mode to be altered. A field can be displayed more than once or not at all using this method. Reset re-ordered fields Shift-Psion-L ----------------------- To reset the field display to the normal 1,2,3 etc. in ascending order, use this key combination. The data saved with the file is also updated. Toggle Symbols Shift-Psion-Y -------------- This key combination will toggle the viewing of Tabs, Carriage Returns and New Lines within Fields. The state of this toggle is remembered between edits and sessions. Dialling Psion-Help -------- It is possible to use the program in a similar way to Data and dial telephone numbers whose fields are marked with the telephone symbol. History selection - Ctrl-Cursor-Up/Down ----------------- This is a method of jumping to previously accessed records using this key combination. Up to 10 previous records are stored - the list is reset when loading a new file and the current list is destroyed rather than saved. Use Up to go back, Down to go forwards. QuickSearch ----------- There is a quick find which is used by just typing the word you require to find. This normally operates on the first visible field. The search field can be changed either using the Tab key or, more usefully, using Shift-Psion-T. This brings up a dialog which allows the search field to be selected ('All' can also be chosen and this allows all fields to be searched). The inputted string will only work from the first letter of the field, to search within the field use Shift-Psion-H (this toggles the search method). The search string is cleared by pressing Escape. There is also a timeout which clears the search string after a minute of not searching. The next find using the same string can be shown using Tab (in Line mode only - in Page mode use Psion-Tab). There is an option available (using Shift-Psion-U) to toggle between search all fields or search the single field. Find Psion-F ---- This is a normal type search and works in the same way as that of other Apps. There are five additional options: 1. Reverse search - this searches from the end of the database rather than the front. 2. Single/Multiple - Single works in the usual way, Multiple will gather all the matches and then display only the found records as a Marked Records list. 3. Wildcards - This allows wildcards to be used in the search string (e.g. * and ?). It is important that, if the compete field is not given, a '*' is placed at the front and the rear of the string. To search from the first character of a field omit the leading '*'. 4. Case Dependent - This allows the selection of case dependency in the search - the default is case independent. 5. Go to Edit - After finding the search string the program will automatically go to the edit mode and highlight the found string. This only works in Single find mode. It is also possible to narrow the search with logical statements. There are two sorts available - the first sort is self explanatory, the second a little quicker to type. Currently these are: and - && or - ^^ xor - ^& not - -- so to look for a record that has 'David' and 'Road' then input 'david && road' or 'david and road'. If you wish to use the 'and' variation and also wish to search for the word 'and' then enclose it in quotation marks (e.g. "and"). If you wish to use one of the logical search parameters at the start of the search string (e.g. 'not road') then preface the string with a space (i.e. ' not road' - rather than 'not road'). To search for a blank field then use ' not ?'. Do not use the '*' as this will match none as well as some characters. There is a problem with searching for a simple asterisk because the Psion call that searches records only works with wildcards - to implement a non-wildcard search use '_and *' where '_' is a space. This will use my own search (which is slower) and wildcards will be ignored if set so. To search numeric fields with this command (or Find Field) then a logical search parameter must be used. This is because the internal Psion search routine ignores numeric fields so it is necessary to use the slower routine written by me - to direct to this requires a logical statement. N.B. When searching in Single mode and in Page mode, the find will be highlighted on the screen. However - the Labels will almost certainly not be in step with the data. If Go to Edit is enabled then the Labels may well display out of step. Find Field Shift-Psion-F ---------- Searches in the same way as the normal search but allows a specific field only to be searched. If the enhanced logical statements are used then the find works in exactly the same way as that of the normal find (i.e. it does not take into account the field selected). Find Again Psion-G ---------- In Single Find mode this will display the next record that matches the search criteria. Global Search and Replace Ctrl-Psion-F ------------------------- This is a similar function to the Record Search and Replace but allows the Search to be global (throughout the file). The options are the Search item and the Replace item and, optionally, the field to search on. For this field selection to work the choice must be for Single in 'Fields to search'. The choice of the actual field is made in the 'Field' slot. The search is selectable between case dependent and case independent but, whatever case dependency is selected, the Replace will substitute the found data with the replacement as typed. Escape will terminate the Search and Replace option. Once the search string has been found the record in which the item is will be displayed and the found string highlighted. An option to replace just this one, not replace, or replace all found matches will be given. Pressing Escape at this point will terminate the operation completely. Jump to Record Psion-J -------------- To jump to a specific record, if the number of that record is known, use Psion-J. If an illegal number is inputted then the dialog will remain active. Display/Change QuickSearch field Shift-Psion-T -------------------------------- To quickly find out which field the QuickSearch will look in use this key combination. Display QuickSearch string Psion-T -------------------------- This key combination will display the current QuickSearch string in the bottom right hand corner for around 2 seconds. Jump to Field Psion-/ ------------- In Line view it is possible to jump to a specific field using this command. Enter Page/Line mode display toggle Shift-Psion-R ----------------------------------- This switch allows the Enter key to toggle between Page and Line mode or to move to the next record. Remove records from list Psion-- / - ------------------------ A record may be removed from a MultiFind/Marked Records list using this key combination (a MultiFind list is actually a marked records list). This command does not delete the record, it only hides it from the display. Add record to list Psion-+ / Shift-Up / Shift-Dn / + ------------------ This command is only active in the main display and allows the marking of records for display as a marked records list. The marked record is shown in bold italic text in the main view. The only way of telling whether you are looking at a marked records list or the normal list is, in marked records, the headings are printed in negative (reverse video) mode. This is only true of the Line mode. Page mode currently has no clue as to whether a marked list or normal list is being displayed. Records can also be marked with Psion+Spacebar - this toggles the status of the record so that a marked record will be unmarked and vice versa. Toggle between marked records and main list Psion-V ------------------------------------------- This command will toggle the display between the marked records list and the main list. Reset marked records Shift-Psion-V -------------------- To reset all marked records to unmarked, use this command. If used within the marked records display, it will change to the normal display. Number of marked records Shift-Psion-J ------------------------ The number of records currently in the marked record list can be shown using this key combination. It is displayed briefly in the bottom right hand corner of the screen. About Shift-Psion-A ----- This option displays a dialog box with contact details for the author and the current version number of JBData. Zoom In Psion-Z ------- This will change the font used in the display by incrementing the font number. Separate fonts are used for the Line and Page/Edit views so altering one will not affect the other. Zoom Out Shift-Psion-Z -------- This will change the font used in the display by decrementing the font number. It is the exact opposite of Zoom In. Print Setup Psion-Y ----------- This option allows the Print setup to be changed in a similar way to other Applications. It is not remembered though. Delete Setup Psion-Q ------------ To delete the setup of the current database, use this option. The setup referred to is the setup of whether Page or Line mode, if Freeze is implemented, the font used, and other similar options. Save Setup Shift-Psion-Q ---------- This option will force a save of the database setup - it is normally saved when exiting the database or application. This procedure works independently of the Suspend Setup Save option. Suspend Setup Save Ctrl-Shift-Psion-Q ------------------ This key combination will bring up a dialog which allows for the Setup Save to be suspended with the file in question. There are only two choices: 1. Save Setup (the default - the setup is saved every time it is changed). 2. No Save (suspend) - this stops the setup being saved with the file. Status Window Psion-Menu ------------- A status window can be toggled between large, small and off in rotation using the Psion-Menu key combination. Exit Program Psion-X ------------ This key combination will exit (terminate) the program. This also works in the Edit window. In an emergency you can also use Psion-Esc but this will not save any setup and terminates the program without any warning. To leave without saving any setup use Shift-Psion-X. Password Control ---------------- Passwords can be set by using Shift-Psion-C. If setting the password to On then a dialog will appear that requires the password to be given twice in identical fashion. The password will only be set if both passwords are identical (including case). If there was a previous password set then this old word has to be given in a separate dialog before the password can be changed. The password is limited to 19 characters in length. To remove a password then proceed as if changing the password, when confronted with the password dialog for the new word, just press Enter. This will automatically disable any password control. The password system is extremely simple in operation and will only deter the casual browser. The file itself is not encrypted, neither is the password, although Data will not open the file at all. Sound toggle Shift-Psion-B ------------ This option will toggle the sound (beeps) on and off - the status is not saved and only works for the session. Edit Window Psion-E/Psion-U ----------- At present it is not possible to change the types of fields once they have been set. The line wrap is always off in the Edit window. It cannot be switched on. This is to restrict problems with the labels getting out of step with the data. There are a few keys that operate in an edit window at present. These are: Find Psion-F ---- Allows a search to take place in the current record being edited. Find Again Psion-G ---------- Once an item has been found, this allows the search to continue through the record to find the next match. Find and Replace Psion-R ---------------- Allows a search and, if found, then the item can be replaced with a given string. Escape from the dialog will terminate this procedure. Copy Psion-C ---- Copies highlighted text to a clipboard. The clipboard is saved between edits so that text can be moved from one item to another. Delete Psion-D ------ Copies highlighted text to a clipboard and then deletes the text in the record. The clipboard is saved between edits but is discarded when the application is closed down. Insert Psion-I ------ Inserts previously copied text from the clipboard to the present cursor position. Bring Psion-B ----- Brings highlighted text from other applications (only if they support this option). Evaluate Psion-V -------- Evaluates a highlighted expression and shows the result on the screen with the original expression highlighted for deletion purposes. Tab width Psion-T --------- To alter the width between Tabs (which are entered with Control-Tab) use this command which enables the distance to be specified. Labels toggle Psion-H ------------- This option will switch the labels display on or off. Link/Paste ---------- This option is implemented in a similar way to that of other Psion applications. What this means is that, in an edit mode, highlighted text from other applications that allow Link/Paste (e.g. Word/Data/Agenda) can be brought in to the edit window at the cursor location by using Psion-B. Also, any highlighted text in an edit window can be 'grabbed' by the other applications (normally Psion-B). Labels in Edit mode ------------------- If labels have been setup then these will be displayed as in Data. If no labels have been set then the type of field will be displayed in brackets as an aide m‚moire - e.g. (String) or (Integer). The labels can be toggled on and off using Psion-H. Special Keys in Edit -------------------- To end an Edit, press Tab - to leave the edit without changing anything use Escape. N.B. It is not possible to use Tab or Esc from the Menu, the actions are listed there as an aide m‚moire. First remove the Menu with Esc and then press either Tab or Esc. To toggle the display of Symbols (Enter/Tab etc.) in the Edit mode use Shift-Psion-C. There are a few special characters (or key-presses) in the Edit mode. Tab character - use Control-Tab New Line within field - use Shift-Enter Dial symbol - use Shift-Dial Ctrl-D - enters today's date in the format set in Time Ctrl-T - enters the current time in the format set in Time Help ---- There is a brief on-line help available using the Help key. It does not cover all options but should assist under normal circumstances. Get-out ------- As is usual with programs of this sort, I shall not be held responsible for any loss of data , however caused, as a result of using this program. The user must take responsibility for his actions and uses the program at his own risk. I reserve all rights of copyright to the program although neither registration nor payment are required to use it. Limitations ----------- Only finds up to 999 finds in MultiFind. Only 999 marked records can be used at any one time. The program needs around 100k of memory to work. Known Problems -------------- There is a known problem with Label displays in Page mode very occasionally getting out of step with the appropriate fields. At present the program does not accept remote commands from programs such as Tom Dolbilin's MACRO or KMAC. It is hoped to rectify this for certain programs only in a later version. If the program freezes for any reason then do not play, trying to un- freeze it. Escape using Psion-Esc immediately. John Boyce 6 May 1996