StockList - Version 2.0 © 1993 Trevor Parker This is Version 2.0 of StockList, Version 1 having been a limited private issue. StockList is a fully functional, feature-packed inventory management database program. It should meet most of the requirements of any type of business, even in this, its initial stage of development. It is available in both PAL and NTSC versions and a smaller copy is available in both versions for users who have the CanDo.library. If you don't get the version you prefer in the PD distribution you first obtain, registering with me will get you the version you want. The PAL version has a combination of menus and buttons while the NTSC version is fully menu-driven in order to maximise main screen space. Wherever both versions are issued in the one distribution they should be in separate sub-directories labelled "StockList_PAL" and "StockList_NTSC". NOTE: The subdeck named "ReportLink" differs in size for the PAL and NTSC versions, so be careful not to get them mixed up. This version has been written "on the road" during my present trip around Australia and because I haven't all the normal facilities with me (eg printer), some intended features will have to be added in the next version. However, I am confident that these future embellishments will merely enhance what is, I believe, already a very useful program. There seems to be a gap in the PD, Freeware,etc market in relation to dedicated stock control/inventory management programs, so I hope StockList will find some appreciative users. As both the PAL and NTSC versions are the same program, the terms "button" and "menu item" are interchangeable throughout this document. MAIN FEATURES OF StockList. * Separate windows for data entry and report viewing. * Scrollable list of stock items allowing users to click/highlight any item to display its full details and edit them. * Automatic sorting and placement in the alphabetical stock list of new items entered. * All data relevant to the item selected from the stock list are displayed concurrently in the appropriate fields. * Automatic calculation of key values such as stock on hand, average cost per unit, cumulative costs, etc and automatic updating of all non-entry fields. * "Save As" and "Load" menu items to provide for specialised data files for user-defined stock categories, eg electrical, softgoods, etc. * Fail-safe "Save" facilities including auto-save timer which can be turned ON or OFF by menu selection. * Flexible user-choice settings for stock re-order (min stock) levels. * Comprehensive search functions using full or partial words and user- selected fields. * Searching is assisted and the need for it minimised by the scrollable stock list feature. * Reporting of stock items which require replenishment and of key values such as cumulative costs and total value of all current stock, including optional calculation of the latter at either average or current purchase price. * Reports (eg stock re-order lists) are displayed in a separate window and there is a "Save As" function for naming and saving them however you wish. * "Clear Fields" facilities for resetting appropriate fields at the start of a new accounting period or to clear abortive data entries. * Automatic logical cursor movement between fields. * Requesters to protect or warn against unsaved changes, suspect entries and "delete" actions. * Customised versions will be attempted upon request for registered users (see the note at the end of this document). INSTALLING STOCKLIST. Copy to the directory of your choice the following files: StockList, StockList.info, Mixedgoods.SL, Empty.SL and the SubDecks directory with its 4 files - StockWarn, ReportLink, StockSearch & SimpleReq. NOTE: The "Mixedgoods.SL" file is a partially completed example data file which is included for tutorial and practice purposes only. The "Empty.SL" file must remain PERMANENTLY in the same drawer as the program so that you can Load it whenever you want to start a fresh data file - it is an empty StockList-format file. USING STOCKLIST - Condensed Tutorial NOTE: 1. Do not make alterations to the first 6 entries in the sample file "Mixedgoods.SL" as they are used in demonstrating the differences between the various report options. 2. The entries in the example file is not intended to reflect reality - they are solely for demo and tutorial purposes. Many of them are only partial entries, simply to pad the list so that you can scroll it. 3. All buttons in the StockList windows operate on the "Click/ Release" principle, but NOTE that the scrollable Item List has "click", "release" and "drag" scripts and it will respond to any of these mouse actions. Menu items operate on the normal LMB "select/release" principle. 4. Read this entire document FIRST, particularly the DO's and DONT's section !! Double click the icon to start the program and use "Load" to bring up a file requester showing the contents of the directory you started StockList from. Load the sample file "Mixedgoods.SL" first. When it is loaded, the full details of the first entry (item) in the stock list will be displayed and this item's place in the list will be highlighted. Note that the file has entries for different types of businesses. The first 6 entries demonstrate some of the different ways in which the "Part" field can be used (some types of business wont need it at all). To view the various items simply click on them in the list. If the wrong item is sometimes displayed, simply click again on the one you want or while holding the mouse button down, move the pointer slightly. I haven't found the reason for this little quirk yet, but I'll try to fix it for your first upgrade. To activate a particular field or document click in it. Add a new item - Use "Add" then enter your data starting with the "Item" field. NOTE 1. The default setting for the auto-save function is OFF. Leave it off until you are satisfied that you have practised with the example files sufficiently or the program will save changes that you really don't want saved at this stage. NOTE 2: Although it is possible to enter or alter data in any of the main window objects, some of them are intended for data entry and some are not - each object is fully explained later in this document: Data Entry Objects - "Item", "Part", "Source", "No.Purchased", "PurchaseCost", "No.Used/Sold", "LastUnitCost", "WkNo." and "Wks" fields and "Comments and Other Information" document. Non-entry Objects - The "Stock List" and all objects not named above. These will accept data direct from the keyboard, but it is best to let the program look after them. NOTE 3: Fill any unused RH portion of the "Item", "Part" and "Source" fields with "spaces" before pressing "Return" as this facilitates alignment of entries in the reports later. As soon as you press "Return" in the "Item" field, the new entry will be placed in its correct alphabetical order in the stock list and displayed. When you have entered the data you want in the "Item", "Part", "Source" and "Comments......." objects, enter a number in "No.Purchased" and press "Return". Note what happens in other fields including the setting of the cursor asking for cost input. Enter a cost figure and press "Return" noting the additional field entries that have been generated for you, including "AveItemCost" Enter a dollar and cents figure (eg 5.43) in "LastUnitCost" - make it a few cents above the "AveItemCost" figure (inflation!). Now click in "No.Used/Sold" and enter a figure a little less than "StockOnHand" and press"Return". Note the calculation and setting of the remaining three sales-related fields. After entering sales transactions, always set or reset the "WkNo." and "Wks" fields. Do so now, using low values such as 2 and 3. Note that pressing "Return" after entering these values causes average usage (or sales) rate and reorder level (minimum required stock level) to be calculated and set in the appropriate fields. The key here is that StockList uses the week number (WkNo.) to calculate average usage rate, which is in turn multiplied by the number of "WKs" you set. The result is the reorder (or minimum stock) level. If you enter a number in "Wks" which will cause the reorder level to equal or exceed stock on hand, StockList will automatically multiply the reorder level by the "LastCost" value and set the result in "OrderCost", thus telling you: (a) This stock should be reordered, and (b) The expected cost of purchasing the "ReOrderLevel" quantity. Next, play around with the entry fields for this item noting that: * entry of sales equalling or exceeding stock on hand invokes a warning requester which blocks data entry. Follow its instructions. * you MUST reset "WkNo." and "Wks" following sales entries. * entry of sufficient purchases to make stock on hand exceed reorder level will clear the "OrderCost" field, if set. Select the "Save" menu item if you wish to save changes at any time. The "Save As" menu item invokes a file requester enabling you to name the file however you wish and save it to wherever you wish. I prefer to keep data files in the StockList home directory and to use the ".SL" suffix to identify them. Use "Search" and respond to the resultant requester by selecting "Item" and typing "gra" (without the inverted commas) into the search field. Either press "Return" or click "Search" and then repeat until all items containing the search string "gra" have been found. Note that you can drag the requester out of the way and continue to edit the database if you wish, ie data entry is not blocked. Try the other search fields. You only need the main window "SearchNext" facility if the requester has been closed. Select an insignificant but unique item (eg Xtra-1) and use "delete", then respond to the requester to clear the item from the list. Display the first item (Apples) and select "Report1" in the Reports menu - a requester will ask you to wait while the relevant report is compiled. NOTE: 1. Always save the current data file before using your first choice of the "Report" menu items - otherwise, your changes will be lost. This does not apply to the "NewReOrders" item. 2. The delay currently experienced in compiling reports should be reduced in future versions once I solve a "Loop/Save" puzzle. However, bear in mind that generation of the report depends on the following time-consuming actions: * Masking the window with a requester * Examining every record in the database * Performing field value comparisons in every record * Doing calculations * Creating temporary documents in memory * Formatting and entering information in the documents Also, two of the four reports available should be required weekly at the most and one of the remaining two should be needed only annually. The other one (NewReOrders) is produced instantly. 3. DO NOT use "GoToReport" to view the reports until you have finished this session with the loaded file. If you read the description of this button later in this document, you will understand why. Now select "Report2" and when the report mask clears, select "Report3...AveCost". Ensure that the first entry in the stock list is displayed before selecting each of these menu items. Use "GoToReport" to transfer to the Reports window. Note that StockList saves the file before leaving the Entry window. This feature, along with the auto-save function (saves every 15 minutes) which you can activate from the Functions menu, protects your work from loss. When the Reports window is displayed, click the "List1", "List2" and "List3 buttons in turn and then toggle between them. The "Clear" button merely clears the reports document on the screen - it does not clear the reports from memory - click the List buttons again to verify this. Click the "Save As" button and use the resultant requester to name and save the report which is currently displayed. You can set the cursor and align or adjust report entries however you wish before using "Save As". The Reports window object is actually a crude text editor. Click the "Go To Entry" button. Now that you are back in the main window you have to use "Load" to load another file or to reload "Mixedgoods.SL" if you wish. I have assumed that users will complete their updating of any particular file BEFORE producing and viewing reports. This seems the logical approach and it will avoid the necessity to reload the same file. NOTE: Before loading "Empty.SL" read the first "DO" item under the heading "DO's and DON'Ts FOR USING StockList". See later explanations of the "NewReOrders" buttons for both windows. Use a directory utility or text editor to examine the saved report file which you saved with the "Save As" feature. You will note that the last two columns of the first two reports are not perfectly aligned. I haven't solved this little problem yet, but it shouldn't cause any concern as you will be doing any printing from a text editor or word processor at this stage, not from StockList, and I wanted to avoid unnecessary delay in getting this program into the hands of users. In any event, you can realign them yourself in the Reports window as already explained, if you wish. Once you have again loaded a file, change any item of data in it or add a record (just the item name will suffice) and click the close gadget (top LH corner). Respond to the "Save" requester to close StockList. If you save changes before using the close gadget, you can avoid the save requester. NOTE ESPECIALLY: Whenever you start a new data file by loading "Empty.SL" DO NOT turn auto save on (Functions menu) or use "Save" until you have first used "Save As" to give the file a unique name. Otherwise, you will no longer have an "Empty.SL" file in StockList's directory and you will have to create one by copying and loading one of your other StockList files, deleting its contents and saving it as "Empty.SL" or whatever naming convention you adopt. EXPLANATION OF StockList OBJECTS. ENTRY WINDOW (ie Main Window) Buttons/Menu Items: "Load": The first thing you should do after starting StockList is use this menu item to call a file requester with a listing of the files in the directory that StockList was started from. This is why it is easier to keep your data files in the same drawer as the program. Use the requester to select and load the file of your choice NOTE: If you make a mistake causing a "Wrong File Type" requester to appear, don't click "Cancel" in this requester as StockList doesn't like it! Load a StockList data file instead. "Save": Saves the database file currently loaded. "Save As": Gives you a file requester enabling you to flexibly name and save files. "Quit": Quits the program - via a requester if there are unsaved entries. "Auto Save..ON": Activates the timer which is set to save the currently loaded file every 15 minutes. "Auto Save..OFF": Turns the timer off again. "Add": Use this to insert a new record (item} into the stock list. You will be presented with a blank record and the cursor will be in the "Item" field ready for input. StockList automatically places the new entry in the list in proper alphabetical order. "Delete": Deletes the currently displayed item from the file and RESAVES the file , but only if you respond positively to the requester it calls. "Clear1": Clears the first column of value fields, ie the purchase and usage/sales fields. I have assumed that at the start of a fresh financial year most users will want to clear these fields while retaining the contents of the second column of fields. If you want to clear both columns of fields for any reason, use "Clear2". "Clear2" Button: See above NOTE: "Clear1" and "Clear2" affect ONLY the currently displayed field so, if you want to clear fields in every record, you will need to start at the top of the list and your way through it (should be necessary only once each year). I am working on a looping "clearfields" script, but couldn't make it work in time for this version's release - any suggestions?? Also, I have found that it pays to use this feature methodically rather than in a hurriedly. "Search": Brings up the Search Requester which can be dragged - this is because this requester does NOT block data entry while it is open. Therefore, you can leave it open and switch between edit and search modes at will. The requester allows you to search the Item, Source or Part fields for the text you type into the "Search For..." field. Only part-words are necessary and the search will activate upon pressing "Return" or clicking the "Search" button in the requester. To find other matching entries simply keep pressing "Return" or clicking "Search". However, the scrollable stock list should reduce markedly the need to search. "SearchNext": Performs repetitive searches after you have closed the search requester. "Report1": Causes compilation of a list of stocks which are at or below reorder level. This item is for users who don't need to use the "Part" field. The data entry area of the window is masked during report compilation. The "List1" button in the Reports window displays the report which includes details of the "Item", "Supplier", "ReOrderLevel" and "OrderCost" fields for each record involved. "Report2": Same as "Report1" but the contents of the "Part" field are included. If you have a file which uses the "Part" field for all or some items, you will probably want to use this, but not "Report1". There isn't much point in using both. The "List2 button in the Reports window displays the report. "Report3": Generates a three line report showing the total cost of purchases and usage/sales to date and the total value of current stock calculated at either average unit cost or last cost, depending upon whether you select the "AveCost" or "CurrCost" option. The report is displayed with the "List3" button in the Reports window. This facility should be especially useful for end-of-year accounting purposes. "NewReorders": Every time the "ReOrderCost" field is either set with a value or has its value changed in response to pressing "Return" in the "Wks" field, YOU MUST USE "NewReOrders". Doing so will enter appropriate details of the item concerned in a document in memory which is used to compose a list of stock items which have either reached reorder level or had their reorder details changed IN THE CURRENT SESSION. When the session is finished, you can use "GoToReport" and then (in the Reports Window) the "NewReOrders" button to view the list. As is the case with the other report files, you can use "Save As" in the Reports window to ensure that this report will be available at your leisure to load it into your text editor and use it to update or supplement your previous reorder list. Using "Save As", you could date the reports by appropriate naming, eg "BoltsReOrders.Nov30", etc. Note: "NewReOrders" will add reorder details to the report FOR THE RECORD DISPLAYED AT PRESENT regardless of whether the "OrderCost" details were changed. Therefore, be careful to use it correctly, ie. ONLY AND ALWAYS when the "OrderCost" field gets changed! "GoToReport": Takes you to the Reports window. Avoid viewing reports until you have completed an updating session, ie do it last thing before you want to either close StockList or load a different file. The current file is saved automatically when this function is used. If you try to "GoToReport" before loading a file, StockList will close. Close Gadget: Quits the program - via a requester if unsaved changes exist. The Reports window also has a close gadget. Field and Document Objects: "Stock List" Document: This is the unlabelled "list" type document which displays your alphabetical list of stock items. It is a scrollable, non-entry document which is used to "click-select" items for display and editing. "Item" Field: Displays title and/or description details of selected items and is an entry field for new items (ie after using "Add"). NOTE: Fill any unused RH portion with "spaces". "Part" Field: For entry and display of part numbers, item numbers, serial numbers, model numbers or any identifying information you want to use to supplement the information in the "item" field. You can regard "Part" as an abbreviation of "Particulars" if you wish. Fill any unused RH portion with "spaces". "Source" Field: For entry and display of the name of the primary supplier of each item. Fill any unused RH portion with "Spaces". "Comments and Other Information" Document: A scrollable document for entry and display of any further information you need about each item, eg other suppliers, addresses, phone & fax numbers, storage instructions, etc. You will note that the "Item" field sends the cursor here rather than to the "Part" field - another insignificant thing that I will fix later. The complexity of argument-passing within the program needs a little unravelling to clean this one up. NOTE: I have not included an "Address" field as I assume that any business user of this program would probably keep a separate up-to-date list of supplier's addresses. However, StockList will serve this need also if you make appropriate use of the "Comments......." object. For example, you could always make the first entry in this object the address, phone and fax details of the primary supplier. "No.Purchased" Field: For entry of the number of units received in each stock acquisition. Pressing "Return" following data entry causes recalculation of the cumulative purchases and stock on hand fields. It will also clear the "ReOrderCost" field if the latter contains a value AND stock on hand has once more exceeded reorder level. "PurchaseCost" Field: For entry of the cost of each purchase of stock. It must be used immediately after each use of the "No.Purchased" field. Pressing "Return" will cause updating of cumulative purchase cost, average unit cost and value of stock on hand. NOTE: If you want to limit your use StockList to controlling stock volumes - not values - you can ignore the value fields (except "LastUnitCost") which is used in producing the re-orders report. If you take this option, make sure that you clear the "No.Purchased" field of the last entry you made in it before pressing "Return" in it again. "CmPurchases" Field: A non-entry field which is automatically updated to show the number of stock units purchased to date. "CmPurchCost" Field: A non-entry field - automatically updated to show the total cost of purchases to date. "No.Used/Sold" Field: When sales or issues of stock are entered and "return" is pressed, the "UsageCost", "CmUsage", "CmUsageCost", "StockOnHand" and "StockValue" fields will be updated and the cursor will move to the "WkNo." field to remind you to reset this and the "Wks" field if the entry of sales transactions is completed - if not, click in "No.Used/Sold" to continue entry of usage/sales data. NOTE: Even if the week number and/or the minimum stock level you desire have not changed, you should still freshen (ie press "Return" in) these fields before moving to another item. This is because sales affect average usage rate which in turn affects reorder level... "UsageCost" Field: A non-entry field which is automatically calculated using average unit cost to show the cost of stock used or sold in the current transaction. "CmUsage" Field: A non-entry field - automatically updated to show total usage/sales to date. "CmUsageCost" Field: A non-entry field - automatically updated to show the total cost of units used or sold to date (calculated at average unit cost). "StockOnHand" Field: A non-entry field which reveals the current number of stock units held - automatically updated as the result of entries in the purchases and usage/sales fields. "StockValue" Field: A non-entry field - automatically shows the value of current stock on hand, calculated at average unit cost. Costing options are possible for registered users. "AverageWklyUsage" Field: A non-entry field - cumulative usage/sales are divided by the value in the "WkNo." field each time you press "Return" in the latter field. "ReOrderLevel" Field: A non-entry field - automatically calculated in response to pressing "Return" in the "Wks" field. Average weekly usage is multiplied by the "Wks" value to calculate the minimum stock level (ie the number of weeks you choose to calculate your minimum stock requirements). "AveUnitCost" Field: A non-entry field - automatically set by dividing the cumulative purchase cost by cumulative purchases when an entry is made in the "PurchaseCost" field and "return" is pressed. "LastUnitCost" Field: Each time you finish entering a "Used/Sold" transaction you should enter the CURRENT unit cost in this field as this is used to calculate the reorder cost when stock reaches reorder level. "ReOrderCost" Field: A non-entry field - when you press "Return" in the "Wks" field, StockList calculates the reorder level, compares it with stock on hand and ,if necessary, multiplies the reorder level value by "lastUnitCost" to arrive at the expected cost of re-ordering your minimum stock volume. Naturally, no calculation is performed unless the reorder level is equal to or greater than stock on hand. "WkNo." Field: After completing the entry of "Usage/Sales" data for any item, update this field to show the number of the current week in the current financial period, then press "Return" (eg. for a 1 July - 30 June year, the first week in July should be shown as 1). This value is used in calculating average weekly usage which WILL NOT be accurate unless you action this field after each sale or batch of usage/sales. "Wks" Field: After entering "Usage/Sales" data and "WkNo", enter in this field the number of weeks worth of stock you want to use as your minimum stock or reorder level for the stock item concerned. When you press "Return", the value in the "AveWklyUsage" field will be multiplied by the "Wks" value and the result will be placed in the "ReOrderLevel" field. The latter field will be compared automatically with the "StockOnHand" field and, if necessary, a reorder cost will be set in the "ReOrderCost" field. NOTE: You need to observe whether the "ReOrderCost" field gets set or reset with a new value whenever you press "Return in the "Wks" field. If so, click the "NewReOrders" button BEFORE SELECTING ANOTHER ITEM to generate an entry in the "NewReOrders" report - see explanation under "NewReOrders" below. REPORTS WINDOW This window consists of a scrollable document for display of reports and the buttons necessary to load them, view them and to clear the window or save them "As" whatever and wherever you choose. The "List" Buttons and the "NewReOrders" button have already been explained above. The "Clear" button merely clears the window - it does not affect the report files. The "Go To Entry" button returns you to the main window where you can load another file or quit the program. Of course, you can quit from here with the close gadget if you wish. NOTE: 1. You must actually use the List buttons (ie display the reports) to make the "Save As" function available. 2. Each button displays ONLY its own report. 3. Use of the "Clear" button is not necessary for toggling between reports - it is only there for cosmetic reasons. 4. Some of the items in reports (particularly "List2" report) might extend under the scroll bar, so use the cursor "->" key to scroll across to ensure that all is visible. 5. You can adjust any slight alignment problems in the reports within the Reports window before saving them. DO's and DONT's FOR USING StockList * DO use "Save As" immediately you load "Empty.SL" to ensure that you don't lose that file. Also, keep a spare copy of it just in case! * DO be careful to ensure that the item you select from the stock list is the one displayed - if not, click it again! * DO update the "WkNo." and "Wks" fields every time you finish entering usage/sales data for each item. * DO select and display the first (top) item before selecting any of the Report options. * Do use "NewReOrders" each time a stock item gets a "ReOrderCost" value set or altered during the session - ie. unless you intend to produce and save fresh overall reports at the end of the session anyway. * DO save any reports you want to keep before quitting the program. * DO fill unused areas of the Item, Part and Source fields with "spaces" * DO make a note of any problems or improvement suggestions and contact me about them. * DON'T try to start a new data file without first loading "Empty.SL". * DON'T select your first-choice Reports menu item (except NewReOrders) without first saving your file. * DON'T enter or alter data in non-entry fields. * DON'T forget to update "LastUnitCost" after entering usage/sales data or you will never get an entry in the "ReOrderCost" field. * DON'T use "GoToReport" until you have finished your session with the currently loaded file or you will have to reload it. * DON'T turn auto save on before you "Save As" when starting a fresh file with "Empty.SL". * DON'T click "cancel" in any "Wrong File Type" requester - load a StockList data file from this requester to prevent the program from locking up. PROGRAM "QUIRKS" or PROBLEMS As already explained, I have had limited opportunity so far to test StockList intensively, but the only little "quirks" I have noted are: * A tendency to display the wrong item sometimes . If this happens, just click the required item again or hold the mouse button down and move the pointer slightly and it will display OK. * The need to speed up report compilation - but bear in mind that you will need to produce a full reorder list only periodically (say, once each month) and a value totals report only at the start and end of each accounting period. * A slight misalignment of RH end items in the first two reports. This is because I haven't yet found a way to go to a specified column in the background (invisible) document which the reports have to be compiled in and I don't want users to fill unused areas of the "ReOrderLevel" and "OrderCost" fields with "spaces". Anyway, you can realign them easily as already explained. None of the above detract from StockList's ability to perform its functions. CONDITIONS OF ISSUE StockList is issued as shareware, but may be freely redistributed, provided it is accompanied by all of the files in this distribution, namely: StockList, StockList.info, StockList.doc, Empty.SL, Mixedgoods.SL, and the SubDecks directory holding StockWarn, SimpleReq, StockSearch and ReportLink. All of these files are to remain unaltered. Any fee charged for redistribution of StockList should be restricted to a moderate fee for disk copying charges, disk, postage and handling costs, etc in line with the levels applicable in the public domain market. This software is provided as is. No warranty as to the performance or validity of data obtained with it is stated or implied. This program and all the associated files are copyright material. Bug reports and suggestions for improvement are welcomed, and every effort will be made to evaluate such reports. Although StockList is shareware, no monetary donation or usage fee is solicited, but if you use it, please pay me the courtesy of giving me feedback about any problems or suggestions to assist in future tuning of the program to reflect user's needs. If you want to register with me as a user, please follow the procedure set out below regarding updates and requests for customising StockList. This is an ongoing project and will continue to be as long as interest in it is shown. FUTURE ENHANCEMENTS I hope to include in future versions the following features: * Automatic "clear fields" facility * Report printing * Automatic production of the "ReOrders Update" reports. * An Arexx port. * Graphics on the report mask windows * A colour editor tool * Further value calculation options (for users who want them). * My own File Requester if I can successfully create one - unless some clever CanDoer has done so and kindly sends me the deck!! NOTE - UPDATES, CUSTOMISING AND REGISTERING If you want to register for updates OR want me to attempt some degree of customising StockList's interface or functions for you, please explain your requirements clearly and send me sufficient QUALITY diskettes to GENEROUSLY cover disk and safe (eg "PostPak") postage costs to wherever you live. Let your head go and send a whole box of Nashua or equivalent - it's the best program of this type you will get at this price! If you can fill some disks with your favourite PD, clipart, pics or programming tutorials & scripts, etc, all the better - and if you are already into CanDo or Arexx, please make contact regardless! Did you know that you can buy international postage vouchers at any major post office ? Well, you can here anyway - they cost $1.75 each and can be used by either local or overseas recipients to purchase stamps for their reply to you. I hope you enjoy StockList and that it benefits you. ADDRESS: Trevor Parker, 4 Skinner St, Ballina NSW, Australia 2478 Phone 066-867660 ACKNOWLEDGMENTS Congratulations to Innovatronics for creating CanDo - I know that I will appreciate it increasingly as my ability to use it improves. The support arrangements so far are appreciated. I gained much inspiration from the Innovatronics "NewPhone" deck in developing StockList and must pay tribute to such example decks as that. Finally, thanks to CBM for introducing the A1200 !! Now, roll on PMCIA card and slot developments such as modems, emulators, etc!!