MPSET MPSET is a management model for PortaCalc which is designed to give a manager an idea how many employees he needs to man various jobs. A total of 24 time periods are provided, and space exists for 40 jobs (shop orders) at a time. To load, bring up PortaCalc and get it into wide screen mode (usually with the PF1 key). Set the default format to F7.1 when asked at startup, or use the S command to go back and reset it once you start. Then enter the command @MPSET.FRM and wait for the sheet to be loaded and the screen redrawn. Jobs are entered in lines 2-41, giving the fraction of each that are in different skill levels (1 to 4), the total revenue to be produced by the job, and the fraction of the job to be done as a function of time. Use the CR function to copy and relocate lines of job template down if needed. It is expected that the fractions of the job in skill levels 1-4 add to 1.0 (100%), and that the fractions of the job to be done in each time period add to 1.0 (100%) also. This is not checked, permitting "other" classes to be defined if needed. Rows 44-83 should be left entered but not used; they are work locations that are filled in with the amount of money used by existing employees for each job and time period. This is done automatically. Cells B96 through E96 are the costs per unit time of the employees at skill levels 1 through 4 respectively. Rows 100 through 199 are for existing employees. Every line should have an employee rate and a job identifier, and is filled in (from columns H to AF) with the fraction of that employee's time to be devoted to the job for that line. The remainder of the sheet is reports. Rows 208 through 227 are amounts of money available for the various skill levels from jobs listed, without correction for existing employees. As more jobs are entered, new rows should be added in this area to account for them. The AR command to add rows should be used to do this. One new line is needed per job entered, in each of the skill areas. Rows 228-231 are money available after existing employee rates are removed. This is done by pro-rating total employee costs across resources available for all 4 skill levels and subtracting costs of current employees from available money. While this is crude and does not reflect current employee skill levels, it gives some idea of the left over money in each skill level. Rows 233 through 236 give numbers of employees needed at each skill level as a function of time. The final line totals the number of employees needed over all skill levels, again as a function of time. It may be desirable to build a larger screen version of PortaCalc to run this package; making a longer and narrower version is desirable. The only cells really used past column AF are BA260 and BB260, which should be near the bottom right of the sheet but whose locations are not critical. NOTE: A later version allows entry in lines 100-199 of skill level for existing employees in column D. This version has 32 job slots pre filled in and requires a sheet of at least 70 col by 370 rows (easily created by editing HVKLUGPRM.FTN and using the COMPILVMX.COM procedure to build PortaCalc-VM on a VAX). In this version the summary lines are located at approximately line 350 and following; the intermediate information is not of great interest. However, the current employee expenses are allocated to the correct skill level, so needs figures for the 4 skill levels are more accurate. Use the MPSET.FMT command file to load the newer version. The MPSET.CLC command file is the command file used by this version in its updates. Both versions need 2 Recalculate commands (preferably 2 RAF commands to avoid redoing constants) to converge on the correct results. It is a good idea to leave the sheet in RM mode (which MPSET.FMT sets) while doing entries, to speed things up. You will probably want to edit the keypad command files (ak*.cmd and ky*.cmd) to make sure they don't do R or RAF commands except where told to (the KYS.CMD file has the function of recalculate so the RAF there is OK). Many of them as distributed have the R or RAF commands there and will slow you down as they force complete recalculations. The model is rather huge (around 10,000 cells filled in), so recalculation is NOT done in an eyeblink. Be sure and put -1. entries in columns B and C after the last employee entry if you fill in less than all 100 possible rows, to get the calculation to terminate more quickly. MPSET is a reasonable example of PortaCalc's indirect commands and shows its addressing schemes. The commented sources to MPSET.CLC and MPSET.CMD are included. They would also work Ok, but since the comment lines have to be skipped, the comments were omitted from the working versions. MPSET assumes some knowledge of the operation of portacalc to enter data, and you'll want to create some files, or maybe assign an alternate keypad key or three, to move to interesting regions of the model. The [003005.auxkpd] directory is recommended to your attention since it allows PF1 to act as a "gold" key and change the meaning of other keys to run command files of your choice. This allows the usual keypad meanings to coexist with your special ones. The +J filename and +N commands start and stop the saving of your commands to journal files. I use this to create command files while I can watch what's happening, then use the $@TT: command to PortaCalc to get a $ prompt and then use EDT (or other favorite editor) to edit the file, adding a VM command at the start to turn off repainting the screen every time, and a V command at the end to turn it back on. Now I can play back the journal file and repeat my actions quickly, since a ^Z to the $ prompt in the subprocess gets me back to my sheet without a reload. (The $@TT: trick is handy for reading mail in the middle of other things too.) Be sure and go over the tutorial for a quick intro to some of the simpler PortaCalc commands. Plug: I intend to do a version of PortaCalc for 8088 based machines soon, with (hopefully) full functionality. It won't be free, but it'll be MUCH cheaper than anything else around; current target price is about $50.00. It'll work on Rainbow, Chameleon, IBM, or other 8088 machines if there's enough memory. The MSDOS linker's limitations are the major possible glitch; it is MUCH worse than the RSX linker at handling complex programs with lots of separate pieces. Glenn Everhart