WBase V1.2 © 1992 Simon Dick This program uses reqtools.library and powerpacker.library. Also if it can't find reqtools.library then it tries to use kd_freq.library for its file requester (which isn't included, but is worth getting). This program is Freeware which means that you can copy it and give it to anybody you want as long as you don't ask for any money for it except perhaps a small bit for disks and copying. If WBase can't find reqtools.library then it will use its own requesters which aren't actually that good. About WBase =========== I wrote this because I kept on finding that I needed to quickly use a database on Workbench but all of the others which I have got are all to large for my liking so I thought that I might as well write my own as I had already written one in AmigaBasic but which was much to slow to be really useful so I started to convert it to GFA Basic when I got it, but soon gave up and just rewrote it from scratch, here is the result. This will run if you have only half meg but will be most useful with more memory. I haven't been able to test this out thoroughly with Kickstart 2.0 yet, but I think it works though. ** PLEASE DON'T TRUST WBASE WITH ANY VITAL DATA UNLESS YOU ARE SURE THERE AREN'T ANY DANGEROUS BUGS IN IT, I AM NOT SURE IF I HAVE GOT RID OF ALL OF THE BUGS!!! ** The Menus ========= File New - This lets you create a new database in memory. You can have a maximum of 10 fields and a maximum of 150 records. After finding out how big a database you want it them goes and asks you for each fieldname. Load - This lets you load a previously saved data file. It handles both crunched and uncrunched. It also does a bit of checking to make sure that the file is valid. Save Crunched - This saves a crunched version of the data which is currently stored in the memory. This only works if you have version 35 or above of powerpacker.library installed. It crunches it with best efficiency with a medium speedup buffer. Uncrunched - This just saves out the data stored in the memory as an ASCII file which you can easily edit in any text editor if you don't like the editing in WBase. Delete- This simply lets you delete a file from a disk, it hasn't got anything to do with deleting records from memory. About - Tells you stuff like my address and the version of WBase. Quit - This lets you exit from WBase (why would you want to do that ?). You can also do this by clicking on the close gadget, pressing escape or pressing 'Q' while the window is active. Edit Record - This lets you change the data which has already been entered into memory. Fieldname- This lets you change any of the current fieldnames. Delete All - If you select this it erases all of the records which where stored in memory (after making sure you didn't accidentally select it). Section - This lets you delete a section of records from memory (eg. from 1 to 14 or 102 to 324). Single record - This lets you delete a single record, unfortunately you need to know the actual record number beforehand though. View All - This lets you look through all of you records one by one. There are the following options: F - Goes forward one record P - Prints the current record B - Goes back one record M - Lets you mark and unmark a record G - Lets you jump straight to a record by the record number D - Lets you delete the current record E - Lets you edit the current record Section - This is done in the same way as the Delete Section (I mean by entering the start and finish record numbers not by deleting the records) apart from that it has the same options as View All. Single - You type in the number of the record that you want to view. It has the following options: P - Prints the current record F - } these don't do anything B - } M - Lets you mark a record D - Lets you delete the current record E - Lets you edit the current record Q - Lets you quit to the menu Marked - This lets you view all of the records which you have marked and has the same options as View Single has. Print (this menu can be disabled by using the Printer menu item, see later for more information) All - If you select this then WBase will ask you if you are ready to print before printing each record and also allowing you to cancel printing that record. Section - The same as the above except for being able to choose a section of records to view. Single - This lets you view a single records by record number. Marked - This lets you print all of the previously marked records. Sort All - All that you need to tell this options is what field you want the whole file to be sorted by. Section - This works the same as the above except that it asks for start and finish record numbers as well and it only sorts the records between those numbers (inclusive). Misc. Input Record - This is one of the more important functions as it allows you to enter data into the data file which is currently in memory. Search for data - This is mostly pretty straight forward except for one part, that is when it asks you for the field to search in, if you enter 0 there then it searches through all of the fields and not just by one. This has the same options as View Single has. Palette - If you have reqtools.library installed then this option will bring up a palette requester. Not much point to it in a database but it only added a few lines so I thought I might as well put it in. Printer - This simply toggles whether or not the Printer menu will be enabled or not. If there is a tick next to it then it is enabled. Command - If you select this it allows you to run normal DOS commands. If you run WBase from Workbench then it will open its own window to display the commands output (WARNING:don't use ARP's ARun command with the NOIO switch because it will crash when you quit or try to run a command thanks to the GFA-BASIC compiler.). Also if you type in '*' as a command a file requester opens up to let you choose a file. Marking Records =============== As a new addition to this version you can now mark records whenever you are viewing records, even when you are viewing records which have been found by searching. Whenever you delete records all of your marks are erased. There are two new menu items to do with this, They are : View Marked Print Marked Other Features ============== So far there are only a few extra feature but they could come in handy. One simply scans six of the most common vectors in memory which viruses can use and tells you if they have been altered. I make no claim that WBase can replace a virus killer though, also it could be other programs that have altered them such as virus killers and recoverable ram disks so be careful when using this. The second is that WBase tries to trap guru meditations to let you save your data first, I'm not sure how well this works though. And the final one is PowerPacker file support if you have the powerpacker.library V33+ installed. If you have this then at the moment it will first try to decrunch it to T: then to RAM: and finally to DF0:. This is because I haven't worked out a way to read it straight from memory yet. Bugs ==== I have found that when WBase is run for the first time on my machine you can't move, close or depth arrange the window, I don't know why this happens, but I think it is something to do with the GFA-Basic compiler. The strange thing is that if you quit from WBase and then load it up again then the window is alright. It works fine on the interpreter though! If anyone knows what is happening then please could you tell me so that I can try to fix it. Possible future improvements ============================ An ARexx port (once I find out how to) Including graphics as fields (what do you think? And how could it work?) Reading a powerpacked file straight from memory instead of from a temporary file. Any necessary bug fixes Any other suggestions that you make. (Please suggest something as I am running out of ideas !!! I will try to include it if it is sensible enough.) Please send any bug reports, ideas about improvements, criticism (constructive), and anything else to: Simon Dick, 31 Salisbury Road, Bexley, Kent, England I will also be happy to try to help you if you can't work some function out, just write to me and I will try to help you out. If anyone is interested, I have just finished writing a test version of WNet, a file sender through the serial port, it also allows the sending of messages and commands, you can also get files from the other computer. If anyone would like to test it for me, I can't as I only have 1 Amiga, please send a disk and postage and I will send you a pre-release test version. kd_freq.library is Copyright 1990,1991 Khalid Aldoseri. Changes from V1.1 ================= - I added support for reqtools.library instead of the old req.library. - A much better file requester thanks to reqtools.library. - The search printed the records into the small window instead of opening a new window for it. - The 'Print Section' and 'Print Single' weren't actually included accidentally. - Before if you tried to load a crunched file which wasn't a WBase file it wouldn't delete it from disk which meant that you had a file called WB.tmp floating around somewhere. - You can now go forward AND backwards in the view and search sections. - You can now exit from viewing a section. - Some functions didn't let you cancel them, this is fixed now. - If you select cancel after selecting 'New' your file is now kept. - You are asked if you are ready to print before printing each record. - Changed the position of the window slightly as it got in my way. - You can now delete records while you are viewing. - You can also goto records while you are viewing all or a section. - And you can even edit records while you are viewing them instead of having to remember which number they where. - I have included the option of marking records. You mark records while you are viewing and you can then go back and either view or print the marked records. When you delete records the marks are all cleared. - If you have reqtools.library installed then choosing how many fields you want is made much easier (try it). - You now have the option of crunching files before you save them to disk. This only works if you have V35+ of powerpacker.library installed. (It should have been included with this program) - Apart from using the menu to quit you can also press escape or 'Q'. - WBase is now more multitasking friendly. In previous versions it just used a loop to check the menus, etc., but now it uses Wait() to wait for them. It also seems slightly faster this way as well. - The file requester remembers the last file and last directory which were used and puts them ready in the next file requester. - WBase can now use the kd_freq.library file requester if reqtools.library isn't found.