W |!a 980227 Type desired information and press . W |#01a 930720 Enter COMPANY NAME. This appears on most screens & at the top of most reports. W |#02a 930720 This is for additional company information...appears on invoices & statements. W |#03a 930720 Enter the company's STREET ADDRESS. This appears on statements and invoices. W |#04a 930720 Enter the company's ZIP CODE. City & state display if they are on Z file. W |#05a 930720 Enter the company's zip EXTENSION. W |#07a 930720 Enter the TELEPHONE #. If you enter 7 or 10 numerals, it will auto-format. W |#09a 930401 Enter the MONTH NUMBER in which your financial YEAR ENDS. For December use 12. W |#10a 960912 Enter G/L Account # for ACCOUNTS RECEIVABLE. ABC's standard # is 500. W |#11a 960912 Enter G/L Account # for ACCOUNTS PAYABLE. ABC's standard # is 3040. W |#12a 960912 Enter # of PAYROLL ACCOUNT. If same as Business Acct, ABC's standard # is 303. W |#13a 980310port41126 Enter the first INVENTORY ACCOUNT #. ABC's standard Account # is 101. W |#14a 980216 Enter the last INVENTORY ACCOUNT #. ABC's standard Account # is 2799. W |#15a 960912 Enter the G/L # for Inventory Reversal. ABC's standard # is 8895. W |#16a 960912 Enter RETAINED EARNINGS ACCT.# (Proprietor's Capital) ABC's standard # is 4010. W |#17a 960912 Enter the first G/L Sales Account #. ABC's standard # is 5000. W |#18a 960912 Enter the first G/L Purchase Account #. ABC's standard # is 7000. W |#19a 960912 Enter the last G/L Purchase Account #. ABC's standard # is 8799. W |#20a 960306 The ACCOUNT NAME may be entered here or on the G screen. W |#21a 960912 Enter the G/L ACCOUNT # of your bank account. ABC's standard # is 303. W |#23a 960306 The ACCOUNT NAME may be entered here or on the G screen. W |#24a 960306 This is for additional bank ACCOUNT if needed, may be setup here or on G screen. W |#26a 960306 The ACCOUNT NAME may be entered here or on the G screen. W |#27a 960306 This is for additional bank ACCOUNT if needed, may be setup here or on G screen. W |#28a 930401 (Optional) For multi-company situations. Enter the # of this COMPANY. W |#29a 960306 The ACCOUNT NAME may be entered here or on the G screen. W |#30a 960306 This is for additional bank ACCOUNT if needed, may be setup here or on G screen. W |#32a 960306 The ACCOUNT NAME may be entered here or on the G screen. W |#33a 960306 This is for additional bank ACCOUNT if needed, may be setup here or on G screen. W |#34a 960912 Enter G/L Account # for FLOOR PLANNING. ABC's standard # is 3240. See . W |#35a 930810 (Optional) For departmental setup. Enter # where first DEPARTMENT begins. W |#65a 960912 Enter the G/L Account # for A/R DISCOUNTS. ABC's standard # is 6830. W |#72a 930720 Enter the company's EMPLOYER IDENTIFICATION NUMBER if there is one. W |#87a 930401 For AUTO-DEPOSIT POSTING enter A for Accrual or C for Cash. N= No Auto-posting W |#92a 930401 If PAYROLL & ACCOUNTS PAYABLE come from one LEDGER, enter # here. ABC's # is 3 W |#95a 930401 (Optional) For DEPARTMENTAL setup. Enter # that begins consolidated statements. W |#A32a 960912 Enter the G/L Account # for Customer PREPAYMENTS. ABC's standard # is 3200. W |#A36a 020204 (Optional) If you want to post SHIPPING TICKETS to G/L, enter Account# here. W |#A41a 930401 To Generate VENDOR Codes. Enter how many letters of LAST, FIRST & MIDDLE Name. W |#A42a 930401 To Generate VENDOR Codes. Enter how many letters of FIRST, SECOND & THIRD Words. W |#A43a 930401 To Generate CUSTOMER Codes. Enter how many letters of LAST, FIRST & MIDDLE Name. W |#A44a 930401 To Generate CUSTOMER Codes. Enter how many letters of FIRST,SECOND & THIRD Words W |#A45a 930401 To Generate NAME Codes. Enter how many letters of LAST, FIRST & MIDDLE Name. W |#A46a 930401 To Generate NAME Codes. Enter how many letters of FIRST, SECOND & THIRD Words. W |#A47a 930401 To Generate EMPLOYEE Codes. Enter how many letters of LAST, FIRST & MIDDLE Name. W |#A57a 000925 Enter date to lock out entering or posting into this G/L period or prior. W |#A60a 960913 Enter G/L Acct# where computer should post CREDIT CARD Sales. ABC's # is 310. W |#A91a 930401 Enter the name of the CITY. W |#A92a 930401 Enter the two-letter code for the STATE or Province. W |%J05a 981209 Type your selection; the next time you press R,...that selection appears. W |&25a 930903 Choose which printer port SALES ORDERS will print to. P= Parallel M= Modem. W |&31a 930903 Choose which printer port LABLES will print to. P= Parallel M= Modem. W |&36a 930831 (Optional - Enhanced) Enter a default CUSTOMER TYPE. Must be setup on Y screen. W |&37a 930831 Enter the minimum percentage of MARKUP for INVENTORY items. 10 = 10% W |&38a 930831 (Optional) Enter the SALES TAX CODE as setup on the I screen. W |&39a 930901 Enter the number of DAYS of "FREE" credit on an invoice. W |&40a 930901 You may enter a brief MESSAGE to identify the finance charge on statements. W |&41a 930831 Enter the MONTHLY finance charge RATE as a whole number. W |&42a 930831 Enter the minimum amount of a monthly finance charge. Do not use dollar sign. W |&43a 930831 Enter number of DAYS an invoice may be open before finance CHARGE is applied. W |&44a 960912 Enter the G/L ACCOUNT NUMBER for Finance Charges. ABC's standard # is 9840. W |&45a 930831 Enter N if you do NOT want finance charges on prior finance charges. W |&46a 930903 Enter a beginning DATE for FINANCE CHARGES. Then it automatically updates. W |&49a 930903 BLANK= Statement prints with any credit amount. -10 = Prints credit over $10. W |&50a 930903 BLANK = Statement prints with any debit amount. 10 = Prints debits over $10. W |&51a 930903 Enter LEDGER # of the main bank account used for writing checks. 3,4,5,6 or 7 W |&52a 960912 Enter G/L ACCOUNT number for A/P DISCOUNTS. ABC's standard # is 8830. W |&53a 930903 Enter G/L # of SUSPENSE ACCOUNT. ABC's standard SUSPENSE ACCOUNT # is 1. W |&54a 990305 A)vailable msg. S)tock msg. D)isable error message on customer invoices. W |&55a 960430 You may enter a default PRICE UPDATE CODE. Used with Report 2-10. See . W |&56a 960912 Enter # that shows relation between Sales and Purchase Accounts. See . W |&57a 930903 Enter number of hours worked per week before you begin paying OVERTIME. (40) W |&58a 930903 Enter the percentage over regular time paid for OVERTIME hours. .50 = 50% W |&61a 930903 M = 1 CLOSEOUT entry a month, D = 1 CLOSEOUT entry a day in General Ledger. W |&62a 931019 Use only with ENHANCED A=Auto Backorders O=Optional Backorders N=No Backorders W |&63a 930901 You may enter a MESSAGE to appear at the bottom of all invoices. W |&64a 930903 Tells which CUSTOMER MESSAGES to print on Invoice. 1=1 2=1&2 3=1&2&3 4=1&2&3&4 W |&66a 960912 Enter G/L SALES ACCOUNT # used if none is specified on Invoice. ABC's # is 6810. W |&67a 960912 Enter G/L PURCHASE # to use, when needed on A/P Bills (B). ABC's # is 8810. W |&68a 930901 Enter Y to OMIT COMPANY HEADING on Plain Paper Invoices (used with Letterhead) W |&69a 930903 Choose which printer port, A/P CHECKS will print to. P= Parallel M= Modem. W |&70a 930903 Choose which printer port, G/L CHECKS will print to. P= Parallel M= Modem. W |&71a 930903 Choose which printer port A/R INVOICES will print to. P= Parallel M= Modem. W |&73a 960912 Enter G/L SUBCONTRACT # to use, when needed on A/P Bills (B). ABC's # is 8815. W |&74a 930903 This plus A/P G/L ADDER is added to Inventory G/L # if A/P Bill is SUBCONTRACT W |&75a 930903 Enter 313 for plain paper INVOICES or 338 for NEBS 9040 INVOICES. W |&76a 960912 Enter G/L ACCOUNT number for LABOR SALES. ABC's standard Account # is 6850. W |&77a 960912 Enter G/L ACCOUNT number for MATERIAL SALES. ABC's standard Account # is 6810. W |&78a 960912 Enter G/L ACCOUNT # for SUBCONTRACT SALES. ABC's standard Account # is 6815. W |&79a 930903 Enter % of MARKUP for billing MATERIAL costs. Used with Report 5-31. W |&80a 930903 Enter % of MARKUP for billing SUBCONTRACTOR costs. Used with Report 5-31. W |&81a 930901 Enter default MULTIPLIER to use when Multiplier is blank on I screen. W |&82a 930903 Enter JOB CLASS to which you want to post total amount BILLED. ABC's # is 00. W |&83a 930903 (Enhanced) Y = Book PRICE from Inventory file will show on PURCHASE ORDERS. W |&84a 930831 Enter your BANK ACCOUNT NUMBER to print on Deposit Tickets with Report # 3-18. W |&85a 930903 (Enhanced) Y= CREATE new QUOTE RECORD when new item is entered on R screen. W |&88a 930903 Enter % over cost that you want as BOOK Price on the I screen. Used with 2-10. W |&89a 930903 (Special Programming) Used to identify style for POINT OF SALE Invoices. W |&93a 960912 Enter G/L SPECIAL DEPOSIT # for special prepayments. ABC's Standard # is 3220. W |&A31a 930903 Enter DEVICE to which you normally BACKUP. BLANK or A means drive A. W |&A33a 930903 (Networks) Specify which other computer AUTOSAVES info from this computer. W |&A35a 990303 Enter # of Copies of Invoice to print when saving invoice with Print option. W |&A48a 930903 Choose which printer port ENVELOPE Addresses print to. P= Parallel M= Modem. W |&A51a 930903 Type Y if you use letterhead paper & don't want company heading printed on P.O. W |&A58a 980216 Enter Y to calculate Sales Tax on Orders and Quotes. W |&A62a 980324 List Inventory Items separated by commas that are to appear on every invoice. W |&A63a 981012 Enter a printer number from 00-99 to be the default printer on the system. W |'014K10a 970430 this is W |'014Ka 970430s this is W |'014a 970430s tisssss W |'12908a 960829 This is an information field, you may enter a remark about these terms. W |'12909a 960829 If this is RECURRING PAYMENT, enter terms. 1M= once a month, 15D= every 15 days W |'12910a 960829 If you want to PAY this bill by Serial #, put a Y in this field. Blank = N. W |'12912a 960829 Enter DUE DAYS for Vendor or Bill. Or enter Date with slashes, 12\2 = Mo.& day. W |'12913a 960829 If you make partial payments, enter the PERCENT DUE with this payment, 5 = 5%. W |'12914a 960829 If there's a Discount, enter the number of days that you can get the Discount. W |'12915a 960829 Enter the DISCOUNT % or the Discount Amount followed by $. 15=15% 15$=$15.00. W |'12918a 960829 To change day, type 1 or 2 digits; day & month, 3 or 4; year also, 5 or 6. W |'12919a 960829 If making a partial payment, enter the AMOUNT here. W |'12920a 960829 To change day, type 1 or 2 digits; day & month, 3 or 4; year also, 5 or 6. W |'12921a 960829 Enter the discount AMOUNT. W |'240A01a 990707 Device to use. A-O for Direct Disk, P-Q Dos Files, - Any File, * Current Device W |'240K01a 990707 Device to use. A-O for Direct Disk, P-Q Dos Files, - Any File, * Current Device W |'254A08a 011109 To select , or and . To close ~AltC~. W |'254A23a 011109 To select , Arrows,, and .To close ~AltC~. W |*08a 930527 To change day, type 1 or 2 digits; day & month, 3 or 4; year also, 5 or 6. W |*J06a 930527 To change the time, type in the hours and minutes. Use P or PM for PM. W |*J08a 892072 Press for selection screen. Have fun. for more Help Information W |-J70a 960430 Type the # of your selection: next time you type L, this ledger appears. W |/J11a 960824 Choose the option you want, the computer auto-selects the most likely choice. W |/J13a 960824 Make sure this number agrees with the check number loaded in the printer. W |/J76a 960824 Enter Discount calculation date here, if it is different than the Check Date. W |/J77a 960824 Enter the DATE to be printed on your CHECKs, default date is the program date. W |/J78a 960824 Enter the DATE the computer should use to determine which bills should be paid. W |/J84a 960824 Enter the LEDGER #, 3 to 7, that you wish to use for writing checks. W |00 871022 Audit trail screen \,0,#,500,~,970,,1000 Audit Trail {A} { AB1006N0 } { BA1008N0R } { BB1N0R } User #:{C1007N0R} Hash #:{D1030N0R} A,0,N,1 W |02 890810 &"|"setscreen >A02 reject >A03 reject >A04 &0left$1,5gosub10:&0left$7,99=1006 &1031&"/"&1032&"/"&1030&" "&1033&":"&1034&":"&1035=1008 &2ascii=1007:&0left$6,1ascii=1030 >A10 ~1006:left$1,1asciimod,"16"*"8"=1030 ;bits 4-7 of year &1006left$2,1ascii~1031/"16"-".49"~1036+1030+"1980"=1030 ;T30 - year +1031mod,"16"=1031:&1006left$3,1ascii~1033/"4"-".49"~1036 ;T31 - month =1032:+1033mod,"4"*"8"=1033:&1006left$4,1 ;T32 - day ascii~1034/"16"-".49"~1036+1033=1033:+1034mod,"16"*"4"=1034 ;T33 - hours &1006left$5,1ascii~1035/"32"-".49"~1036+1034=1034:+1035 ;T34 - minutes mod,"32"*"2"=1035 ;T35 - seconds > W |=00a 960912 The computer automatically sets the reference number. Use or to page. W |=01a 950113 The DATE defaults to the system date but may be changed here. W |=02a 930907 Auto-load inventory items by ITEM or LOCATION. Enter first item to start. W |=04a 930907 You may enter any remark of your choice. W |=05a 950113 Enter INVENTORY ITEM # from I file for item you want to adjust. W |=07a 950113 Enter total quantity on physical inventory. W |@01a 930720 Enter the amount you want to bill per hour for Labor Type 1. W |@02a 930720 Enter the amount you want to bill per hour for Labor Type 2. W |@03a 930720 Enter the amount you want to bill per hour for Labor Type 3. W |@J05a 980216 Enter EMPLOYEE CODE as set up on the Employee file. W |@J06a 930720 Enter JOB CODE from J file, that these special billing rates apply to. W |A00a 930527 Enter the CODE for this ASSEMBLY as it was Setup on the Inventory file. W |A10a 930527 Enter CODE for individual items from Inventory file that are in this Assembly. W |A11a 930527 Enter the QUANTITY of this item that are included in this Assembly. W |A12a 930527 (Optional) Enter REMARK about the item if you wish, doesn't display elsewhere. W |B00a 960430 Enter NUMBER of the Bill you want to see. +C displays the next blank Bill. W |B01a 930527 Enter VENDOR CODE (setup on Vendor File) of the Vendor who the Bill is from. W |B02a 930527 Enter INVOICE DATE from the Vendor's Bill if different than the System Date. W |B03a 930527 Enter INVOICE # of Vendor's Bill. If there is no #, use the Date of the Bill. W |B04a 981019 * means TERMS are entered. Press to enter or edit this Bill's TERMS. W |B05a 000914 DUE DATE comes from Invoice Date and Terms (if set) but may be changed here. W |B06a 000914 DISCOUNT DATE comes from Invoice Date and Terms but may be changed here. W |B07a 000914 DISCOUNT AMOUNT comes from Invoice Amount and Terms but may be changed here. W |B08a 930527 (For Job Costing) Enter the JOB CODE if All items on this Bill are for 1 Job. W |B09a 960430 (Optional) PAY CODE, from Vendor File, changeable here. Y=Auto Pay, See . W |B10a 930527 (Optional) PURCHASE ORDER DATE loads automatically when the P/O # is entered. W |B11a 930527 (Optional) Enter the PURCHASE ORDER # of the Shipping Ticket here. W |B12a 930527 (Optional) Used with Shipping Tickets. Enter the Shipping Ticket # here. W |B13a 930527 Enter the total INVOICE AMOUNT from the Vendor's Bill. W |B14a 960430 (Optional-Job Costing) M=MATERIAL Bill S=SUBCONTRACT Bill D=DIRECT, See . W |B15a 930421 System Date - Determines in which G/L Period this Bill posts, can be changed. W |B16a 970205 Comes from P.O.,may be changed. Use code,preceded by C,E,J,N or V (screen code) W |B17a 960430 (Optional) TIME & MATERIAL or CONTRACT, determines how Job is billed. See . W |B18a 930527 Computer updates this field when Report 5-31 "Generate Inv. for Jobs" is run. W |B19a 020205 If Shipping Ticket, enter DATE shipping ticket was RECEIVED. W |B20a 930421 Type ITEM CODE-May be from Inventory File or New Item. If Remark,end with (.) W |B21a 930527 Enter QUANTITY (or number of Cases if a number is in the #/CASE field). W |B22a 930421 Enter the PRICE each (or price per case if you have a # in the #/Case field). W |B23a 960430 CAREFUL! If is used on blank AMOUNT field, Amt to Distribute inserts here. W |B24a 930527 G/L NUMBER for Item on this line, or you can use a G/L # without Item Code. W |B25a 930527 If bought by the CASE & sold individually, enter the NUMBER of Items per CASE. W |B26a 960430 The Price UPDATE CODE determines how Inventory prices update. See . W |B27a 930527 If you have Job # on a Bill, you MUST enter JOB CLASS (from 'J File) or use -. W |B29a 960430 FREIGHT & ADJUSTMENTS - calculated with F in UC field when Bill is saved . W |C00a 011101 Enter Customer CODE, can be partial code & or~F6~- Lookup, ~F1~- Help. W |C01a 011101 Type Customer Last Name, First. For Business name do not use commas. ~F1~- help. W |C02a 011101 Use ATTENTION line if ADDRESS line doesn't provide enough space. ~F6~- Lookup W |C03a 011101 Enter the Street ADDRESS and/or P.O. Box #. ~F6~- Lookup, ~F1~- Help. W |C04a 011101 Enter ZIP CODE. City & State will display if in Z File. ~F6~- Lookup,~F1~- Help. W |C05a 930527 (Optional) If the Zip Code has a 4-digit EXTENSION, type it here. W |C06a 011116 Enter the customer's E-mail address here. W |C07a 011101 Enter the TELEPHONE #. Enter 7 or 10 numerals, it will auto-format.~F6~- Lookup. W |C08a 011101 Enter a character to distinguish groups of customers. ~F6~- Lookup, ~F1~- Help. W |C09a 930527 (Optional) Enter as Dollars & Cents, triggers OVER CREDIT message on Invoice. W |C101a 011101 Blank means Default FINANCE CHARGES, N means No FINANCE CHARGES. ~F1~- Help. W |C10a 011101 Blank means Default FINANCE CHARGES, N means No FINANCE CHARGES. ~F1~- Help W |C11a 011101 Set Customer's Sales Tax. ~F1~- Help. W |C12a 011101 Choose A, B, C or D as DISCOUNT LEVEL for Customer. ~F1~- Help. W |C14a 930527 (Optional) Enter the Customer's SHIPPING Method. It will display on Invoice. W |C15a 011101 Enter TERMS. This calculates Due Date, Discount Date & Amount. ~F1~- Help. W |C16a 011101 (Optional) Enter Salesman Code (Set up on S File). ~F6~- Lookup, ~F1~- Help. W |C17a 930527 (Optional) ADVERTISER Some reports may be sorted by this information. W |C18a 011101 SHIPPING ADDRESS CODE, from Names File if different. ~F6~- Lookup, ~F1~- Help. W |C19a 011101 CUSTOMER TYPE, used for special Customer Terms. ~F6~- Lookup, ~F1~- Help W |C20a 930527 (Optional) MESSAGE 1 is used with Review Report # 3-26 and/or Customer Invoices W |C21a 930527 (Optional) MESSAGE 2 may be used for notes &/or displayed on Customer Invoice. W |C22a 930527 (Optional) MESSAGE 3 may be used for notes &/or displayed on Customer Invoice. W |C23a 930527 (Optional) MESSAGE 4 displays on R Screen when Customer's Code is entered W |C24a 930527 (Optional) Enter the name of the CONTACT PERSON you usually deal with. W |C25a 930527 (Optional) If you want to REVIEW Customer at some future DATE, enter DATE here W |C27a 011116 Enter the customer's home telephone number. ~F6~- Lookup W |C30a 930527 (Optional) If you enter Y, you'll need a P/O # to save their Order or Invoice. W |C31a 011101 If the Customer is TAX-EXEMPT, enter his TAX-EXEMPTION # here. ~F1~- Help W |C32a 930527 (Optional) Used with special programming. W |C33a 011101 Enter your Customer's DELIVERY ZONE if you use it. ~F1~- Help W |C34a 011101 Enter the FAX #. Enter 7 or 10 numerals, for auto format. ~F6~- Lookup. W |C35a 010223 (Optional) Used with Shipping Manifest Program, R - Residential, C - Commercial W |C36a 011015 (Optional) Used to transfer OLD data from other software. ~F6~ for lookup. W |C44a 011015 To assign a NEW Customer CODE, enter it here after making new record.~F6~Lookup W |CA01a 930527 Enter the name of the CITY. W |CA02a 011015 Enter the two-letter code for the STATE or Province. See ~F1~ for chart. W |D00a 011015 Computer sets the number. You may enter # to see former deposit. ~F6~ Lookup. W |D01a 011015 Enter CUSTOMER CODE. Computer displays Name, Address, Open Invoices. ~F6~Lookup W |D02a 940812 Enter the DATE of the DEPOSIT. Default is the system date. W |D03a 940108 Use this field, if Deposit is to go to Bank LEDGER other than default LEDGER. W |D04a 000124 ;used before field was split in version 9 Enter CHECK # or C=Cash, D=Discover, M=MasterCard, V=Visa, FC=Foreign Cash. W |D05a 930506 Enter amount of payment...if payment = Total of invoices, simply press Alt+Z! W |D08a 970101 Used to apply Deposit to G/L Account instead of paying Invoice. Lookup. W |D09a 930527 Enter the Amount you want to apply to the G/L Account. W |D16a 930712 Enter Amt.of PAYMENT APPLIED to Invoice, or use Alt+Z. Bal. displays on right W |D17a 930527 Enter the DISCOUNT APPLIED to the Invoice on this line if necessary. W |DJ12a 000124 Payment Type: #=Check, C=Cash, D=Discover, M=MasterCard, V=Visa. Lookup. W |DJ13a 000124 Enter check# or slip#. See F1. W |DJ14a 000124 Deposit Total (Y/N). Press Y to total, print deposit slip and/or post to G/L. W |E00a 940602 Enter first lettters of EMPLOYEE CODE. Press Enter. Use F7 or F8 if needed. W |E01a 940602 Enter Employee NAME like this: Last Name, comma, First Name. W |E02a 930527 Use ATTENTION line only if the ADDRESS line does not provide enough space. W |E03a 930527 Enter the Employee's Street ADDRESS or PO Box #. W |E04a 930506 Type ZIP CODE. Press Enter. City & State will display if they exist in Z File W |E05a 930527 (Optional) If the Zip Code has a 4-digit EXTENSION, type it here. W |E06a 930527 Enter the TELEPHONE #. If you enter 7 or 10 numerals, it will auto-format. W |E07a 930527 (Optional) Enter the WORKER'S COMPENSATION number if he has one. W |E08a 930506 Enter the Employee's SOCIAL SECURITY #. This prints on W-2 Form and Reports. W |E09a 930506 Enter Employee MARITAL STATUS. M=Married S=Single P=special Payment record W |E10a 930527 How often is Employee paid? W=Weekly B=Biweekly T=Twice Monthly M=Monthly etc W |E11a 930527 Enter # of DEPENDENTS Employee claims for calculating FEDERAL Tax Witholding. W |E13a 930527 (Optional) Enter the Employee's BIRTHDATE. This appears on some Reports. W |E14a 930527 (Optional) Enter the DATE Employee was HIRED. This appears on some Reports. W |E15a 930527 (Optional) Enter DATE employment was TERMINATED. Won't pay later Timecards. W |E16a 930527 (Optional) Enter Future DATE to REVIEW Employee's File. Used in some Reports. W |E17a 930527 (Optional) The computer updates this field when the employee's wages change. W |E18a 930527 If Employee requests an EXTRA AMOUNT to be deducted, enter that Amount here. W |E19a 930527 Enter "Y" here, if the Employee is EXEMPT from the FEDERAL INCOME TAX. W |E20a 930512 STATE TAX CODE This loads from the defaults on the F Screen, can be changed. W |E21a 930527 If Employee requests an EXTRA AMOUNT to be deducted, enter that Amount here. W |E22a 930527 Enter "Y" here, if the Employee is Exempt from STATE TAX. W |E23a 930527 OTHER STATE TAX CODE This loads from defaults on F Screen, can be changed. W |E24a 930527 If Employee requests an EXTRA AMOUNT to be deducted, enter that Amount here. W |E25a 930527 Enter "Y" here, if Employee is exempt from this tax. (OTHER STATE TAX) W |E26a 930527 LOCAL TAX CODE This loads from defaults on F Screen, can be changed here. W |E27a 930527 If Employee requests an EXTRA AMOUNT to be deducted, enter that Amount here. W |E28a 930527 Enter "Y" here if Employee is Exempt from LOCAL TAX. W |E29a 930512 MEDICARE TAX CODE This loads from defaults on F Screen, can be changed here. W |E30a 930527 If Employee requests an EXTRA AMOUNT to be deducted, enter that Amount here. W |E31a 930527 Enter "Y" here if Employee is Exempt from MEDICARE TAX. W |E32a 930527 OTHER TAX CODE This loads from defaults on F Screen, can be changed here. W |E33a 930527 If Employee requests an EXTRA AMOUNT to be deducted, enter that Amount here. W |E34a 930527 Enter "Y" here if Employee is Exempt from OTHER TAX. W |E35a 940111 Code of DEDUCTION or ADVANCE, loads from F screen,setup on K screen, changeable W |E36a 930514 Enter Paycheck DEDUCTION AMOUNT as Positive Number, ADVANCE AMOUNT as Negative W |E37a 950109 Enter TOTAL AMOUNT of Deduction or Advance if there is a limit. See F1. W |E38a 940111 Code of DEDUCTION or ADVANCE, loads from F screen,setup on K screen, changeable W |E39a 930514 Enter Paycheck DEDUCTION AMOUNT as Positive Number, ADVANCE AMOUNT as Negative W |E40a 950109 Enter TOTAL AMOUNT of Deduction or Advance if there is a limit. See F1. W |E41a 940111 Code of DEDUCTION or ADVANCE, loads from F screen,setup on K screen, changeable W |E42a 930514 Enter Paycheck DEDUCTION AMOUNT as Positive Number, ADVANCE AMOUNT as Negative W |E43a 950109 Enter TOTAL AMOUNT of Deduction or Advance if there is a limit. See F1. W |E44a 940111 Code of DEDUCTION or ADVANCE, loads from F screen,setup on K screen, changeable W |E45a 930517 Enter Paycheck DEDUCTION AMOUNT as Positive Number, ADVANCE AMOUNT as Negative W |E46a 950109 Enter TOTAL AMOUNT of Deduction or Advance if there is a limit. See F1. W |E47a 940111 Code of DEDUCTION or ADVANCE, loads from F screen,setup on K screen, changeable W |E48a 930517 Enter Paycheck DEDUCTION AMOUNT as Positive Number, ADVANCE AMOUNT as Negative W |E49a 950109 Enter TOTAL AMOUNT of Deduction or Advance if there is a limit. See F1. W |E50a 940111 Code of DEDUCTION or ADVANCE, loads from F screen,setup on K screen, changeable W |E51a 930517 Enter Paycheck DEDUCTION AMOUNT as Positive Number, ADVANCE AMOUNT as Negative W |E52a 950109 Enter TOTAL AMOUNT of Deduction or Advance if there is a limit. See F1. W |E53a 940111 Code of DEDUCTION or ADVANCE, loads from F screen,setup on K screen, changeable W |E54a 930517 Enter Paycheck DEDUCTION AMOUNT as Positive Number, ADVANCE AMOUNT as Negative W |E55a 950109 Enter TOTAL AMOUNT of Deduction or Advance if there is a limit. See F1. W |E56a 930527 PRIVILEGE TAX CODE This loads from defaults on F Screen, can be changed here. W |E57a 930527 OTHER TAX CODE loads from OTHER field on F Screen, used for 1-time deductions. W |E58a 930527 If Employee is Exempt from FICA Tax, enter "Y". If 4029 Exempt, enter "4". W |E59a 930527 If Employee is Exempt from Federal Unemployment Tax, enter "Y" here. W |E60a 930527 If Employee is Exempt from State Unemployment Insurance, enter "Y" here. W |E61a 930527 Enter INSURANCE amount deducted from each Paycheck...Code must be on F Screen. W |E62a 930527 (Optional) You can sort your Employees by CLASS, e.g. Office, Sales, Parttime. W |E65a 930514 Enter "Y" if you want "X" in the Pension Plan box of this Employee's W-2 Forms W |E66a 930527 (Optional) For States that don't use Federal Method of Calculating Dependents. W |E78a 930527 (Optional) Report 4-41 automatically enters the end of the Time PERIOD PAID. W |E79a 930527 (Optional) NEXT TIME CARD to PAY Report 4-41 updates this field automatically. W |E80a 930527 Enter CODE from K screen for the Wage or Deduction that applies to Employee. W |E81a 930527 Enter the WAGE or AMOUNT Employee receives, enter Deduction as a negative. W |E82a 950109 (Optional)Job Costing Enter Code for LABOR TYPE 1, 2, 3, B, I, or M. See F1. W |E91a 930527 Enter the name of the CITY. W |E92a 930527 Enter the two-letter code for the STATE or Province. W |G00a 930527 Enter the ACCOUNT NUMBER of the Account that you want to see or set up. W |G01a 930527 Enter the NAME of the Account if you are setting up a new Account. W |G02a 950109 This defines how G/L Account is used on Financial Statement 1. See F1. W |G03a 930527 (Optional) Enter Y to cause cursor to stop at Remark Field on L Screen. W |G04a 930519 To generate 1099 for payments in this Acct. 11= Misc, 12= Rent, 13= Interest W |G05a 940617 For Job Costing M=Material Acct. S=Subcontractor Acct. A=Any Blank=None W |G06a 930527 (Optional)You may use another # for the Account. Used with Statement 1,2,3 or S W |G07a 930527 (Optional) This field is for your convenience, make any comments you wish. W |G08a 951110 This defines how this G/L Account is used on Financial Statement 2. See F1. W |G09a 951110 This defines how this G/L Account is used on Financial Statement 3. See F1. W |GE97a 930527 How many PERIODS per YEAR? 12 = Monthly, 13 = Every 4 weeks, 4 = Quarterly W |GJ77a 930527 This field allows you to define the ENDing date for General Ledger PERIODS. W |I00a 970101 Enter Code (letters and/or numbers) used to access Inventory Item. Lookup W |I01a 930527 Enter description as it should appear on Bills, Invoices or Orders. W |I02a 970101 Enter the GENERAL LEDGER # of the Sales Account of this Item. for Lookup. W |I03a 960806 TAX Status of Item Blank= Taxable E= Exempt S= Sometimes See . W |I04a 960806 (Optional) Enter label for Item...LB, OZ, DOZ or for special Codes, See . W |I05a 930802 Enter % Book Price is of List Price, 85.5 = 85.5 % Report 2-10 updates prices W |I06a 930521 Enter LIST price per unit. (price each or per dozen, per hundred, per lb. etc) W |I07a 930527 (Optional) Report 2-10 updates DATE List Price CHANGED, you can change it here. W |I08a 941115 Enter the BOOK PRICE (Cost) of each item, not the cost per dozen, hundred, etc. W |I09a 941115 (Optional) Report 2-10 updates DATE Book Price CHANGED, you can change it here. W |I10a 960906 (Optional) Enter VENDOR Code of your supplier for this item. for Lookup. W |I11a 970101 You can sort Items by entering a PRINT CODE & using Report 1-1. for Lookup W |I12a 960806 (Optional) Enter MAXIMUM amount you want on hand. Can be seasonal, see . W |I13a 941215 (Optional) MINIMUM to have on hand. N disables Out-of-Stock message. I=Inactive. W |I14a 930521 LEVEL "A" DISCOUNT 5= 5% off 5L= $5 off 5$= Price is $5 E5= 5% over Cost W |I15a 930521 LEVEL "B" DISCOUNT 5= 5% off 5L= $5 off 5$= Price is $5 E5= 5% over Cost W |I16a 930521 LEVEL "C" DISCOUNT 5= 5% off 5L= $5 off 5$= Price is $5 E5= 5% over Cost W |I17a 930521 LEVEL "D" DISCOUNT 5= 5% off 5L= $5 off 5$= Price is $5 E5= 5% over Cost W |I18a 970101 (Optional Enhanced) Used for Special Discounts by GROUP. for Lookup. W |I19a 970101 (Optional) You can specify LOCATION of Item. Use for lookup by location. W |I20a 960806 (Optional) Enter CODE to tell how prices should UPDATE. A= Always See . W |I21a 930519 Enter ADDITIONAL DESCRIPTION if you need to. This prints on Invoices & Orders W |I22a 951110 (Optional)For REMARKS about Item or for distribution to multiple accts, see F1. W |I23a 930527 (Optional) Enter any special MESSAGE that should appear on Purchase Orders. W |I24a 970101 Enter Code (such as JL) from K screen if this is a Labor item. for Lookup W |I25a 970101 You may enter JOB CLASS from 'J file for item. "-" no Job Cost. Lookup. W |I27a 930527 Cost of FREIGHT and/or other ADJUSTMENTS. Updates when Report 2-10 is run. W |I28a 930527 If BOUGHT by the case & Sold by the piece, enter the QUANTITY per CASE here. W |I29a 930527 (Optional) Blank means any customer may buy. A code means item is restricted. W |I30a 930527 (Optional) Enter # of items per package. Report 3-7 prints 1 label per package W |I31a 930527 (Optional) * = CORE charge option on Invoice. Any Other # = Current REVISION # W |I32a 930527 (Optional) Enter ACTIVITY LOCATION, A1 to T255, on Matrix if tracking Revisions W |I33a 930527 (Optional) Enter Code of another Item to Auto-Order, when this Item is bought. W |I34a 930521 Enter letter, A to L, to specify COMMISSION for Item. Must be setup on S File W |I35a 930527 (Optional) This is for any comments you want to remember about this item. W |I38a 970101 (Optional) This is used with Special Programming. Use for Lookup. W |I39a 930527 (Optional) If DESCRIPTION should be different on Purchase Orders, enter it here W |I40a 960806 (Optional) Enter VENDOR'S ITEM# & VENDOR CODE of one supplier. for Lookup. W |I41a 960806 (Optional) Enter VENDOR'S ITEM# & VENDOR CODE of one supplier. for Lookup. W |I42a 960806 (Optional) Enter VENDOR'S ITEM# & VENDOR CODE of one supplier. for Lookup. W |I44a 970101 If Item# changes, enter as New Item, then enter New Item# here. for Lookup. W |I45a 941209 (Optional) Enter WEIGHT of item in lbs. Can be expressed to hundredths of a lb. W |I46a 930521 (Enhanced) Y means on B & R screens you will be asked for Serial Number of Item W |I48a 960806 For short-term SPECIAL DISCOUNTS, overriding lesser Discounts. See . W |I49a 930521 Optional- (P/O Module) Enter # of days, from ordering to receiving this Item. W |J00a 930607 Enter CODE you use to reference the JOB. It may be letters and/or numbers. W |J01a 930524 Enter JOB NAME unless it's the same as Customer Name, if it is, let this blank W |J02a 930527 Attention line....unless it's the same as Customer, if it is, let this blank. W |J03a 930527 Enter Job Street ADDRESS, unless same as Customer's, if it is, let this blank. W |J04a 930527 Enter Job ZIP CODE, unless same as Customer's, if it is, let this blank. W |J05a 930607 (Optional) If Job Address has +4 Code different than Customer's, enter it here W |J06a 930527 Enter the Code of the CUSTOMER (from the C screen) that this Job is for. W |J07a 930527 (Optional) Enter PHONE number for the job. 7 or 10 digits automatically format W |J08a 930527 (Optional) Enter the Code for the Salesman (from the S file) for this Job. W |J09a 930528 (Optional) Enter the date you were AWARDED the job. W |J10a 930528 Enter Date Job completed. With date entered, computer says "Job____Terminated" W |J14a 930527 (Optional) Y means Overtime won't be calculated on Time/in Time/out Time Cards W |J21a 940217 (Optional) Enter % of DISCOUNT you want to give for SUBCONTRACTORS used on Job W |J23a 930716 D= Detail, C= Condense, S= Subcontractors, J= Job Class Add L for Labor detail W |J24a 930527 (Optional) Enter comments about the inspection, if you wish to. W |J25a 930527 (Optional) Enter the DATE that the Job was INSPECTED. W |J26a 930527 (Optional) You may classify the Job by Type of BUILDING & sort with Report 5-16 W |J27a 930527 (Optional) You may classify the Job by GROUP and sort with Report 5-16. W |J28a 930527 (Optional) You may classify the Job by WORK CLASS and sort with Report 5-16. W |J29a 930527 (Optional) This is anOTHER way to identify the kind of Job and sort with 5-16 W |J30a 930527 (Optional) You may enter the number of HOURS ESTIMATED to do the job. W |J31a 930527 (Optional) You may enter the # of CHANGE ORDERS received for this Job. W |J32a 930527 (Optional) You may enter the total DOLLAR amount of CHANGE ORDERS. W |J33a 930527 Enter CONTRACT Price of Job. If left Blank, it means Job is Time + Material. W |J35a 930527 (Optional) COMMISSION % comes from S file, changeable here. Used by Report 5-33 W |J36a 930527 (Optional) If you bill on Installments & RETAIN % till final bill, enter % here W |J37a 000906 Blank means TAX Exempt. Otherwise enter the TAX CODE from the I file. W |J38a 930527 (Optional - Enhanced) CUSTOMER TYPE comes from the C file if entered there. W |J39a 930528 (Optional) Enter the date the job was actually STARTED. W |J40a 930527 (Optional) DEPARTMENT # is a way of sorting the Jobs. Report 5-33 uses this. W |J41a 930524 To calc.OVERHEAD 5S=5% of Sale 5C=5% of Cost 5H=$5 per Hr. 5L=5% of Material W |J42a 930524 To calc.OVERHEAD 5S=5% of Sale 5C=5% of Cost 5H=$5 per Hr. 5L=5% of Material W |J43a 930524 To calc.OVERHEAD 5S=5% of Sale 5C=5% of Cost 5H=$5 per Hr. 5L=5% of Material W |J44a 930524 To calc.OVERHEAD 5S=5% of Sale 5C=5% of Cost 5H=$5 per Hr. 5L=5% of Material W |J45a 930527 (Optional) If all jobs in Department have FIXED amt. of OVERHEAD, enter it here W |J46a 930527 Enter the LABOR Account # in your G/L under Income. ABC's standard # is 515. W |J47a 930524 Enter the MATERIAL Account # in your G/L under Income. ABC's standard # is 501 W |J48a 930527 Enter SUBCONTRACT Account # in your G/L under Income. ABC's standard # is 510 W |J49a 990119 SCALE WAGE rate (not used) W |J50a 990119 (Optional) You may enter the ADVERTISER who generated the lead for this job. W |J51a 990119 (Optional) Here you may enter the QUOTE # for this Job if you gave one. W |J52a 940217 (Optional) Enter the DATE you QUOTED the job. W |J53a 990119 (Optional) Here you may enter the name of the person who ANSWERED to the Quote W |J54a 930527 (Optional) You may enter the name of your FOREMAN. W |J55a 930527 You may enter 5 lines of DESCRIPTION that print on Contract Bill using 5-31. W |J56a 930528 You may enter 5 lines of DESCRIPTION that print on Contract Bill using 5-31. W |J57a 930528 You may enter 5 lines of DESCRIPTION that print on Contract Bill using 5-31. W |J58a 930528 You may enter 5 lines of DESCRIPTION that print on Contract Bill using 5-31. W |J59a 930528 You may enter 5 lines of DESCRIPTION that print on Contract Bill using 5-31. W |J60a 930524 Enter RATE Charged per HR on this Job for Employees with Labor Type 1 or Blank W |J61a 930527 Enter RATE Charged per Hour on this Job for Employees with Labor Type 2. W |J62a 930527 Enter RATE Charged per Hour on this Job for Employees with Labor Type 3. W |J63a 930527 (Optional) Enter % of DISCOUNT you want to give for MATERIAL used on this Job. W |J64a 930527 (Optional) If the Customer gave this Job a PURCHASE ORDER #, enter it here. W |J65a 930527 (Optional) Enter the TERMS you have with this customer for this job. W |J66a 930527 Optional- You may enter the DATE FIXTURES are to be hung on this job. W |J74a 930528 (Optional) DATE LAST BILLED is updated by Report 5-31 but may be changed here. W |J78a 930601 (Optional) You may enter the DATE the 1ST Phase of the Job was COMPLETED. W |J79a 930601 (Optional) You may enter the AMOUNT you billed for the 1ST Phase of the Job. W |J80a 930601 (Optional) You may enter a BILLING DESCRIPTION of Phase 1 of the Job. W |J81a 930601 (Optional) You may enter the DATE the 2ND Phase of the Job was COMPLETED. W |J82a 930601 (Optional) You may enter the AMOUNT you billed for the 2ND Phase of the Job. W |J83a 930601 (Optional) You may enter a BILLING DESCRIPTION of Phase 2 of the Job. W |J84a 930601 (Optional) You may enter the DATE the 3RD Phase of the Job was COMPLETED. W |J85a 930601 (Optional) You may enter the AMOUNT you billed for the 3RD Phase of the Job. W |J86a 930601 (Optional) You may enter a BILLING DESCRIPTION of Phase 3 of the Job. W |J87a 930601 (Optional) You may enter the DATE the 4TH Phase of the Job was COMPLETED. W |J88a 930601 (Optional) You may enter the AMOUNT you billed for the 4TH Phase of the Job. W |J89a 930601 (Optional) You may enter a BILLING DESCRIPTION of Phase 4 of the Job. W |JA91a 930524 Enter Job CITY unless it's the same as Customer's. If it is, let this blank. W |JA92a 980216 Enter the Job STATE Code unless same as Customer's. If it is, let this blank W |JB04a 930524 Type ZIP CODE. Press Enter. City & State will display if they exist in Z File W |K00a 930603 Enter a CODE used for a Wage Category, a Withholding Tax or a Deduction. W |K01a 930603 Enter a DESCRIPTION of the Wage, Tax or Deduction. W |K02a 930603 Enter an abbreviated DESCRIPTION to be used on the paycheck STUB. W |K03a 930603 Enter the GENERAL LEDGER ACCOUNT # that has been set up for this Category. W |K04a 930603 This code tells where to store Info specified by this Record. Use 026-040. W |K05a 930603 This code tells where to store Info specified by this Record. Use 001-025. W |K06a 020307 This code tells where to store Vacation, Sick, or Other Hours Due, use 096-099 W |K07a 930603 This code tells where to store Info on One-Time Annual Deductions, use 092or094 W |K08a 930603 1=Wages D=Deductions (Job Costing)-1, 2 or 3=Wages B=Benefits D=Deductions etc W |K09a 930603 (Optional) You may enter any REMARK you wish to remember about this category. W |K10a 930603 This code tells computer how to CALCULATE wage or tax deductions. Use 22-42. W |K12a 930603 (Optional) This is an information field used with some State Tax programs. W |K13a 930603 (Optional) Job Costing- Enter an AMOUNT per HOUR you pay as Labor Overhead. W |K14a 930603 (Optional) Job Costing- Enter a PERCENTAGE of WAGE you pay as Labor Overhead. W |K15a 930603 Enter DEPENDENT DEDUCTION AMOUNT for calculation of Federal & some State taxes W |K16a 930603 Enter PERCENT used to calculate TAX specified by this record. Use 5.00 for 5% W |K17a 930603 Tax calculates on WAGES that Exceed This Amount & are less than the line below W |K18a 930603 This AMOUNT will be added to Amount Calculated by Rate % and Over Wage fields. W |L02a 930603 This defaults to previous Check DATE. Enter 1 or 2 digits to change only DAY. W |L04a 930603 Enter VENDOR CODE for this check. You may enter Codes that haven't been setup. W |L05a 930603 Enter a Check AMOUNT as a Positive #. Enter a Deposit AMOUNT as a negative # W |L06a 930603 Enter the G/L ACCOUNT # to which an amount is being applied or credited. W |L07a 940801 Enter AMOUNT applied. F9=Apply Distribut.Amt.& Save. Alt+T=Print Check & Save W |L08a 930603 (Optional) You may use this field to enter a REMARK about this transaction. W |LG01a 930603 (Optional) You may enter the Vendor Name here. W |LJ12a 950907 This is the CHECK NUMBER. Use . for Deposits or Non-Check Debits. W |M00a 930603 The computer automatically sets the REFERENCE #. Type a REF. # to view it. W |M01a 930607 (Optional) This is automatically set to the system date, but may be changed. W |M02a 930603 (Optional) You may enter the # from the SLIP handed in for this Job. W |M03a 930603 Enter the JOB CODE as it was setup on the J Screen. W |M05a 930603 (Optional) This is an information field used with customized programming. W |M06a 930607 Enter the JOB CLASS DEFAULT here so you don't have to, with each item below. W |M07a 930607 The computer automatically sets this depending on how the material was billed. W |M08a 930607 The computer automatically inserts A/R INVOICE # when this Material is billed. W |M10a 930614 Enter ITEM Code from I File of Item used on Job or enter Remark followed by (.) W |M11a 930614 Enter the QUANTITY of this Item used on this Job. W |M12a 930614 (Optional) COST comes from Book Price on Inventory file but may be changed here W |M14a 930614 The General Ledger # comes from the Inventory File but may be changed here. W |M15a 930614 JOB CLASS comes from I file or from JOB CLASS Default above. W |M17a 930614 SELL Price comes from List Price on Inventory File but may be changed here. W |M19a 930614 (Optional) The UNIT Code comes from Inventory file but may be changed here. W |M20a 930614 Enter a "T" here if this Item is Taxable. W |N00a 930607 Type the first letters of desired Name CODE. Press ENTER. Use F7 or F8. W |N01a 930607 Type NAME. Anything after a comma, will print out first on invoice or label. W |N02a 930607 (Optional) This can be used as an additional name or address line. W |N03a 930607 Enter the person's street ADDRESS as it should appear on invoices or labels. W |N04a 930607 Type ZIP CODE. Press Enter. City & State will display if they exist in Z File. W |N05a 930607 (Optional) If the Zip Code has a 4-digit EXTENSION, type it here. W |N07a 930607 Enter the TELEPHONE #. If you enter 7 or 10 numerals, it will auto-format. W |N08a 930831 (Optional) You may enter a code to sort the Names using Reports # 6-5 & 6-9. W |NA01a 930607 Enter the name of the CITY. W |NA02a 930607 Type the two-letter code for the State or Province. W |NA03a 930607 Enter the name of the COUNTRY if it is a foreign country. W |O00a 930614 Enter the # of the Order you want to see. Computer sets the # for a new Order W |O01a 930615 Enter VENDOR CODE of Vendor as it was setup on the Vendor file. W |O04a 981019 * means TERMS are entered. Press to edit TERMS for Bills from this PO. W |O08a 930615 (Optional - Job Costing) Enter the JOB Code from J file this Order is for. W |O10a 930614 (Optional) This is set to the System DATE, but may be changed here. W |O14a 951110 (Optional-Job Costing) M = MATERIAL Bill S = SUBCONTRACT Bill D = DIRECT-See F1 W |O16a 970205 For drop shipments, enter code preceded by C,E,J,N or V to specify which file. W |O21a 930615 (Optional) SALESPERSON comes from Vendor file, but may be changed here. W |O22a 930615 (Optional) You may enter the DATE the Vendor plans to SHIP this Order. W |O23a 010605 Y or Blank = PRICES will carry across from Item N = PRICES will not fill in W |O25a 930614 S means STOCK ORDER, posts to Stock Order rather than Vendor Order on I file. W |O26a 930615 Vendor NAME comes from Vendor file but may be changed here. W |O27a 930615 (Optional) ATTENTION comes from Vendor file but may be changed here. W |O28a 930615 ADDRESS comes from the Vendor file but may be changed here. W |O29a 930615 The second Address line comes from the Vendor file but may be changed here. W |O30a 930615 (Optional) The PHONE NUMBER comes from Vendor file but may be changed here. W |O31a 930615 (Optional) This is # the Vendor assigns to you, comes from V file, changeable. W |O32a 930615 (Optional) You may enter the name of the REQUESTER, the one making the order. W |O33a 930615 (Optional) You may enter how this is to be shipped. W |O34a 930615 (Optional) You may enter the FOB (Free On Board) Point. W |O35a 930615 (Optional) This comes from Vendor file, may be changed. T=Taxable E=Exempt W |O36a 930615 (Optional) This comes from 1st line of PO Instructions on V file, changeable. W |O37a 930615 (Optional) This comes from 2nd line of PO Instructions on V file, changeable. W |O38a 930615 (Optional) This is an additional line for instructions to be printed on Order. W |O39a 930615 (Optional) This is an additional line for instructions to be printed on Order. W |O40a 930615 Enter ITEM CODE - from Inventory File or New Item. If Remark, end with (.) W |O41a 930617 Enter the QUANTITY you are ordering. W |O42a 930621 Enter PRICE you pay for item, if there's a quantity in #/Cs, price is per case W |O43a 930621 AMOUNT is calculated from Quantity and Price, but may be changed. W |O44a 951110 G/L # comes from I screen or DEFAULT PURCHASE ACCOUNT # is used, see F1. W |O45a 930621 # PER CASE if bought by case & sold individually, comes from I file, changeable W |O46a 951110 PRICE UPDATE CODE A=Cost & List D=Cost L=Cost & List if increased. See F1. W |O47a 930621 (Optional) Job CLASS comes from Inventory Screen, but may be changed here. W |O52a 930617 Loads from Buy DESCRIPTION on I file, if blank, it loads regular DESCRIPTION. W |O53a 930621 (Optional) Enter # of labels to print for this item. Used with Report 2-25. W |O54a 930621 Loads from P.O. Message on I file, but may be changed here. W |O55a 930617 Vendor ITEM # comes from Manufact.& Code on I screen. Use Alt+G to list next # W |O56a 930621 (Optional) UNIT comes from Inventory file, but may be changed here. W |O57a 930621 (Optional) Enter the date the Vendor plans to ship this item. W |P00a 930621 PayCHECK # is set by the computer, should match the # on Employee Paycheck. W |P01a 930621 Enter the last day of the Pay PERIOD covered by this check, prints on pay stub W |P02a 930621 Enter the DATE of PAYment. Prints on Paycheck, determines Posting & Rolling. W |P04a 930621 Enter Employee Code from E file. Loads name, wage categories, rates, deductions W |P06a 930621 Wage & Deduction CATEGORY Codes load from Defaults on E screen, can be changed W |P07a 941018 Enter Number of HOURS or Number of Pieces (TAXable WAGE is used for Deductions). W |P08a 930621 RATE loads from Employee file (E) but may be changed temporarily here. W |P09a 930621 WAGES/DEDUCTIONS auto-calculate, can be changed. Deductions are negative. W |PUT00 890822 P,0,#,500,p,940,~,970,,1000 [501 ] Sample # {A0N8} Report Date {AB19N0 } Requested By:{ AC1N0 } Location:{ AD11N0 } DER Description:{ AE80N0 } ================================================================================ Sample ----- Time - T.Col --- ORGANICS mg/l -------------- SECONDARIES --------- #1 {BA } {BB } {BC } Endrin {CL } Alkalinity {DB } #2 {BD } {BE } {BF } Lindane {CM } Calcium {DC } #3 {BG } {BH } {BI } Methoxych {CN } Chloride {DD } Toxaphene {CO } Color {DE } 2,4-D {CP } Copper {DF } 2,4,5-TP {CQ } Corrosivity {DG } --- INORGANICS mg/l Foaming Agents {DH } Arsenic {CA } -- REG.VOLATILE ORG.CONT. --- Iron {DI } Barium {CB } Trichloroethylene {CR } Manganese {DJ } Cadmium {CC } Tetrachloroethylene {CS } pH {DK } Chromium {CD } Carbon Tetrachloride {CT } Sulfate {DL } Flouride {CE } 1,1,1,-Trichloroethane {CU } Temperature {DM } Lead {CF } Vinyl Chloride {CV } T.D.S. {DN } Mercury {CG } 1,1-Dichloroethane {CW } Zinc {DO } Nitrate {CH } Benzene {CX } ---- RADIOLOGICAL ---- Selenium {CI } 1,1-Dichloroethylene {CY } Gross Alpha {DP } Silver {CJ } p-Dichlorobenzene {CZ } Gross Beta {DQ } Sodium {CK } TURBIDITY {DA } BA,81,N,0 BB,84,N,0 BC,87,N,0 BD,82,N,0 BE,85,N,0 BF,88,N,0 BG,83,N,0 BH,86,N,0 BI,89,N,0 CA,90,N,0 CB,91,N,0 CC,92,N,0 CD,93,N,0 CE,94,N,0 CF,95,N,0 CG,96,N,0 CH,97,N,0 CI,98,N,0 CJ,99,N,0 CK,100,N,0 CL,101,N,0 CM,102,N,0 CN,103,N,0 CO,104,N,0 CP,105,N,0 CQ,106,N,0 CR,107,N,0 CS,108,N,0 CT,109,N,0 CU,110,N,0 CV,111,N,0 CW,112,N,0 CX,113,N,0 CY,114,N,0 CZ,115,N,0 DA,116,N,0 DB,117,N,0 DC,118,N,0 DD,119,N,0 DE,120,N,0 DF,121,N,0 DG,122,N,0 DH,123,N,0 DI,124,N,0 DJ,125,N,0 DK,126,N,0 DL,127,N,0 DM,128,N,0 DN,129,N,0 DO,130,N,0 DP,131,N,0 DQ,132,N,0 W |PUT02 890821 &"|"setscreen >A02 save"P"&"P"setscreen >A03 always reject >A04 always >A05 +"80"setfield >A07 if1003eq"P":&1003=1019:&"P"setscreen > W |Q01a 930621 Enter the DATE the Quoted Price becomes effective, Blank means effective now. W |Q02a 930621 Enter DATE that Quoted Price is no longer effective. Blank means NO time limit W |Q03a 980216 Enter QUANTITY that is available to Customer at QUOTED Price. Blank = NO limit W |Q05a 951110 DISCOUNT 5=5% off 5L=$5 off 5$=Price is $5 E5=5% over Cost See F1. W |Q06a 951110 (Optional) Choose A, B, C or D as DISCOUNT LEVEL for Customer. See F1. W |Q07a 980216 E = Tax Exempt, Blank means Tax will be calculated if Invoice has a Tax Code. W |QJ06a 000912 Enter the CODE for Item or Group of Items you are discounting. Lookup W |QJ08a 000912 Enter CUSTOMER CODE to whom the special quote or discount applies. Lookup W |R00a 011109 ~F6~Lookup,~Alt-B~Previous,~Alt-F~Next,~Alt-C~Clear,~Alt-L~Load Last Customer. W |R01a 011109 ~F6~Lookup,~Alt-B~Previous,~Alt-F~Next,~Alt-C~Clear,~Alt-L~Load Last Customer. W |R02a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R03a 011109 ~F6~Lookup,~Alt-B~Customer's Previous,~Alt-F~Next,~Alt-C~Clear,~Alt-T~Print. W |R04a 960806 ENTRY DATE This is set from the System Date, but may be changed here. W |R05a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R06a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R07a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R08a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R10a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R14a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R15a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R16a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R17a 011109 ~F6~Lookup,~Alt-B~Customer's Previous,~Alt-F~Next,~Alt-C~Clear,~Alt-T~Print. W |R18a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R19a 011109 ~Alt-B~Customer's Previous,~Alt-F~Next,~Alt-C~Clear,~Alt-L~Load Last Customer. W |R20*a 011109 ~F6~Lookup,~Shift-F6~Images,~Ctrl-A~Add,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R21a 011109 ~F6~Lookup,~Alt-B~Customer's Previous,~Alt-F~Next,~Alt-C~Clear,~Alt-T~Print. W |R22a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R23a 011109 ~F6~Lookup,~Alt-B~Customer's Previous,~Alt-F~Next,~Alt-C~Clear,~Alt-T~Print. W |R26a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R28a 011109 ~F6~Lookup,~Alt-B~Previous,~Alt-F~Next,~Alt-C~Clear,~Alt-L~Load Last Customer. W |R29a 011109 ~Alt-B~Customer's Previous,~Alt-F~Customer's Next,~Alt-C~Clear,~Alt-T~Print. W |R30/a 011109 ~F6~Lookup,~Shift-F6~Images,~Ctrl-A~Add,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R30Va 970101 Enter image #, Prior, + Manufacturers, + Zoom in, - Zoom out. W |R31/a 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R31Va 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R32/a 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R32Va 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R33/a 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R33Va 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R34/a 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R34Va 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R35/a 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R35Va 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R38/a 011109 ~F6~Lookup,~Shift-F6~Images,~Ctrl-A~Add,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R38Va 960906 G/L # comes from Inventory file or Default Sales G/L #. Changeable. Lookup W |R39/a 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R39Va 011109 ~Shift-F6~for Images,~Ctrl-A~Add line,~Ctrl-E~Erase,~Ctrl-D~Down,~Ctrl-U~Up. W |R60a 930623 (Optional) Digitizer PAD This is used with special programming only. W |S00a 930623 Enter the CODE you use for this SALESMAN. This is used on the C and R screens W |S01a 930623 Enter the NAME of the SALESMAN. W |S02a 930623 5S=5% of Sale 5P=5% of Gross Profit 5T=$5 a Ton 5C=$5 a Cwt 5E=$5 Each W |S05a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S06a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S07a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S08a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S09a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S10a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S11a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S12a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S13a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S14a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S15a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |S16a 951110 Codes A-L for various rates. 5S=5% of Sale 5P=5% of Gr.Profit, etc. See F1. W |T01a 930623 Enter the ENDING DATE of the Time Card if it is different than this date. W |T02a 930623 Enter the EMPLOYEE'S Code as setup on the E file. The Employee's Name appears W |T03a 930623 Enter the TOTAL HOURS for which the employee is to be paid. Regular + Overtime W |T04a 930623 Hours not costed to a Job: Holiday, Vacation or Sick Pay. Use B,H or V as Type W |T05a 930623 The Computer calculates Overtime if it was setup on "&" Screen, may be changed W |T06a 930623 Comes from "&" Screen. If you pay time and a half, this should say .50 W |T10a 930623 Enter a code for the ITEM from the Inventory File, may be for a Labor Class. W |T11a 930623 Enter the JOB Code as setup on the J Screen. The Job Name will appear. W |T12a 930623 Enter the number of hours worked on this Job of this Job class. W |T13a 930623 Employee's RATE comes from the E file, but may be changed here. W |T14a 930623 BURDEN calculates from K screen. This is for calculating overhead on the Job. W |T15a 930623 The computer prorates the Overtime Hours according to the total hours worked. W |T18a 951110 Labor TYPE comes from E or K file, usually use 1, 2 or 3. See F1. W |T19a 930623 JOB CLASS comes from I file as set up on the 'J screen. Can be changed here. W |V00a 951110 Type the first letters of VENDOR CODE. Press Enter. Use F7 or F8. See F1. W |V01a 940602 Type VENDOR NAME as listed in phonebook, use comma between Last & First Name. W |V02a 930527 Use ATTENTION line only if the ADDRESS line does not provide enough space. W |V03a 930527 Enter the Vendor's Street and/or P.O. Box ADDRESS as it should be on checks. W |V04a 930421 Type ZIP CODE. Press Enter. City & State will display if they exist in Z File W |V05a 930527 Optional - If the Zip Code has a 4-digit EXTENSION, type it here. W |V07a 930527 Enter the TELEPHONE #. If you enter 7 or 10 numerals, it will auto-format. W |V08a 951110 Optional - Enter a character to distinguish groups of vendors. See F1. W |V10a 930506 G/L #'s used with Vendor on Bills. Place commas between. Use 'before Inv.Codes W |V11a 930527 For 1099's. Enter his FEDERAL EMPLOYER IDENTIFICATION # if he has one. W |V12a 930421 For 1099's. Enter the Vendor's FICA (Social Security) # if there is no EIN # W |V13a 930527 Optional - Enter the Vendor's SALESPERSON if you wish. W |V14a 930527 Optional- Enter SALESPERSON's PHONE #. 7 or 10 digits automatically format. W |V15a 930527 Optional - Enter the Customer # assigned to you by this VENDOR. W |V17a 930527 Enter Discount Terms- 30= 30 days, 30N= 30th of Next Mo. 30S= 30th of 2nd Mo. W |V18a 951110 Enter DISCOUNT as a Number. If necessary, press F1 for a Table of rates. W |V19a 930421 Optional-Enter the PURCHASE ORDER INSTRUCTIONS, this prints on Purchase Order W |V20a 930421 Optional-Enter the PURCHASE ORDER INSTRUCTIONS, this prints on Purchase Order W |V21a 930421 Optional-Enter PURCHASE ORDER ADDRESS Codes here. Must be set up in NAME File W |V22a 001109 AUTOPAY Bills Y = AUTOPAY if Due N = Manual Pay P = AUTOPAY, Due or not W |V23a 930527 Job Costing- D=Material to Job & Inventory, M=Material to Job, S=Subcontract W |V24a 981019 * means TERMS are entered. Press to enter or edit this Vendor's TERMS. W |V25a 930421 Optional - T = TAXABLE E = Exempt from Tax for things bought from this Vendor W |V26a 930527 Enter Terms- 30=Due in 30 days, 30N=Due 30th of Next Mo. 30S=30th of 2nd Mo. W |V27a 930527 Optional-For PURCHASE ORDERS Y=Delete N=Never delete C=Delete when filled W |V28a 930527 For 1099 Forms. N = NO 1099 I = Incorporated S = Subcontract, needs 1099. W |V29a 930421 Enter the FAX #. If you enter 7 or 10 numerals, it will automatically format W |V30a 010605 Optional - N means don't carry prices across from Item to Purchase Order entry W |V31a 930527 Optional- Enter SALESPERSON's FAX #. 7 or 10 digits automatically format. W |V32a 930527 Optional - This line is for any REMARK you want to remember about this Vendor. W |VA01a 930527 Enter the name of the CITY. W |VA02a 930527 Enter the two-letter code for the STATE or Province. W |Y00a 930629 Enter a one digit letter or number to distinguish this customer TYPE. W |Y01a 930629 Enter a DESCRIPTION for this Customer Type. W |Y02a 930629 Only this Customer Type may buy Items with the Restriction Codes entered here. W |Y03a 930706 (Optional) This # is added to the G/L # on the I file, specifying another G/L # W |Y04a 930706 If this (and above) is blank, Sale G/L # from I file or Default G/L # is used. W |Y06a 930706 (Optional) TERMS entered here are used if none have been entered on C file. W |Y07a 930706 The A/R DISCOUNT ACCOUNT # entered here overides the # setup on the & Screen. W |Y08a 930706 Enter Y for Back-Ordered amounts to be held or N not to be held. W |Y09a 930706 The PREPAYMENT ACCOUNT # entered here overides the # setup on the & Screen. W |Z00a 960906 Enter ZIPCODE without extension. Any change affects all the program. Lookup W |Z01a 960906 Enter the CITY. Any change affects ALL addresses with this Zip Code. Lookup W |Z02a 930706 Enter STATE CODE. Any changes will affect All addresses with this Zip Code. W |Z03a 930706 Enter the name of the COUNTRY if it is foreign. Do not abbreviate. W |Z04a 930706 (Optional) This is an information field for foreign addresses if needed. W |Z05a 950109 This field is used for bulk mailings, Report 6-10. See F1. W |^00a 930903 Enter a Code to identify this DEPARTMENT. It may be letters and/or numbers. W |^01a 930903 Enter the NAME for this DEPARTMENT. W |^03a 930903 To calc.OVERHEAD 5S=5% of Sale 5C=5% of Cost 5H=$5 per Hr. 5L=5% of Material W |^04a 930903 To calc.OVERHEAD 5S=5% of Sale 5C=5% of Cost 5H=$5 per Hr. 5L=5% of Material W |^05a 930903 To calc.OVERHEAD 5S=5% of Sale 5C=5% of Cost 5H=$5 per Hr. 5L=5% of Material W |^06a 930903 To calc.OVERHEAD 5S=5% of Sale 5C=5% of Cost 5H=$5 per Hr. 5L=5% of Material W |^07a 930903 (Optional) If all jobs in Department have FIXED amt. of OVERHEAD, enter it here W |^08a 930903 Enter the G/L # for LABOR SALES for this department. ABC's standard # is 515. W |^09a 930903 Enter G/L # for MATERIAL SALES for this department. ABC's standard # is 501. W |^10a 930903 Enter G/L # for SUBCONTRACT SALES for this department. ABC's standard # is 510. W |^11a 930903 Type DISCOUNT % to give Customers for MATERIALS used on jobs of this department W |d00a 930706 Enter the JOB Code/Job CLASS to see the costs for a particular Job and Class. W |d01a 930708 (Optional) Enter # of Type 1 Hours of this Job Class ESTIMATED for the Job. W |d02a 930708 (Optional) Enter # of Type 2 Hours of this Job Class ESTIMATED for the Job. W |d03a 930708 (Optional) Enter # of Type 3 Hours of this Job Class ESTIMATED for the Job. W |d04a 930708 (Optional) Enter ESTIMATED Cost of Labor of this Job Class for the Job. W |d05a 930708 (Optional) Enter ESTIMATED Subcontract costs of this Job Class for the Job. W |d06a 930708 (Optional) Enter ESTIMATED Material Quantity of this Job Class for the Job. W |d07a 930708 (Optional) Enter ESTIMATED Material Cost of this Job Class for the Job. W |d08a 930708 (Optional-Enhanced) ESTIMATED Quantity of Direct Material of this Class for Job W |d09a 930708 (Optional-Enhanced) ESTIMATED Cost of Direct Material of this Class for the Job W |dJ05a 930708 Enter the JOB Code from the J Screen to see expenses by Job Class W |dJ06a 930708 To see the expenses of a certain JOB CLASS, enter the JOB CLASS here. W |e01a 960902 Enter WAGE CATEGORY CODE from K file, 001 must be in Amount/Tax field on K file. W |e02a 960830 Enter WAGE CATEGORY CODE from K file, 002 must be in Amount/Tax field on K file W |e03a 960830 Enter WAGE CATEGORY CODE from K file, 003 must be in Amount/Tax field on K file W |e04a 960830 Enter WAGE CATEGORY CODE from K file, 004 must be in Amount/Tax field on K file W |e05a 960830 Enter WAGE CATEGORY CODE from K file, 005 must be in Amount/Tax field on K file W |e06a 960830 Enter WAGE CATEGORY CODE from K file, 006 must be in Amount/Tax field on K file W |e07a 960830 Enter WAGE CATEGORY CODE from K file, 007 must be in Amount/Tax field on K file W |e08a 960830 Enter WAGE CATEGORY CODE from K file, 008 must be in Amount/Tax field on K file W |e09a 960830 Enter CODE for FEDERAL TAX W\H. 009 must be in Amount/Tax field on K file. W |e10a 960830 Enter CODE for FICA TAX W\H. 010 must be in Amount/Tax field on K file. W |e11a 960830 Enter CODE for STATE TAX W\H. 011 must be in Amount/Tax field on K file. W |e12a 960830 Enter CODE for OTHER STATE TAX. 012 must be in Amount/Tax field on K file. W |e13a 960830 Enter CODE for LOCAL TAX W/H. 013 must be in Amount/Tax field on K file. W |e14a 960830 Enter CODE for MEDICARE TAX W/H. 014 must be in Amount/Tax field on K file. W |e15a 960830 Enter CODE for OTHER TAX W/H. 015 must be in Amount/Tax field on K file. W |e16a 960830 Enter DEDUCTION Code from K file. 016 must be in Amount/Tax field of K file. W |e17a 960830 Enter DEDUCTION Code from K file. 017 must be in Amount/Tax field of K file. W |e18a 960830 Enter DEDUCTION Code from K file. 018 must be in Amount/Tax field of K file. W |e19a 960830 Enter DEDUCTION Code from K file. 019 must be in Amount/Tax field of K file. W |e20a 960830 Enter DEDUCTION Code from K file. 020 must be in Amount/Tax field of K file. W |e21a 960830 Enter DEDUCTION Code from K file. 021 must be in Amount/Tax field of K file. W |e22a 960830 Enter DEDUCTION Code from K file. 022 must be in Amount/Tax field of K file. W |e23a 960830 Enter CODE for TIPS from K file. 023 must be in Amount/Tax field on K file. W |e24a 960830 Enter Code from K file for INSURANCE DEDUCTION, #24 must be in Amount/Tax field W |e25a 020307 Enter Code for PRIV. TAX DEDUC. from K file. 092 must be in Date/Amount field W |e26a 960902 Enter Code of OTHER Annual Deduct.from K file. 094 must be in Date/Amount field. W |e29a 960830 C = print Complete check & stub, S = print Stub only, A = print Address & stub. W |e30a 960830 Enter your FEDERAL EMPLOYER IDENTIFICATION Number here. Prints on W-2 forms. W |e31a 960830 Enter Employer's STATE UNEMPLOYMENT Number here. Prints on W-2 forms. W |e32a 960830 Enter the Employer's SOCIAL SECURITY TAX RATE as a decimal. Use .062 for 6.2%. W |e33a 960830 Enter the wage LIMIT per employee that is subject to SOCIAL SECURITY TAX. W |e34a 960830 Enter FEDERAL UNEMPLOYMENT TAX RATE that Employer pays as a decimal figure. W |e35a 960830 Enter the wage LIMIT per employee that is subject to FEDERAL UNEMPLOYMENT TAX. W |e36a 960830 Enter STATE UNEMPLOYMENT INSURANCE Rate Employer must pay as a decimal figure. W |e37a 960830 Enter wage LIMIT per employee that is subject to STATE UNEMPLOYMENT INSURANCE. W |e38a 960830 Enter MEDICARE TAX RATE that the Employer must pay as a decimal figure. W |e39a 960830 Enter wage LIMIT per employee that is subject to MEDICARE TAX. W |e51a 960830 Enter Code for AUTO VAC.CREDIT Table on K screen, #35 must be in Calculate #. W |f01a 930708 Enter a Code to indicate Physical location of the Item. Only changeable field. W |fJ05a 930708 To see the Serial Numbers, enter the INVENTORY CODE of the Item, use F8 or F7. W |fJ06a 930708 Enter the SERIAL # of the item you want to view or change the location. W |iJ31a 0000 Enter the number of YEARS of your investment. W |iJ40a 930708 Enter the TIME in MONTHS that the loan is for. W |iJ50a 930708 Enter the TOTAL AMOUNT of the LOAN. W |iJ51a 930708 Enter the INTEREST RATE as a whole number. 8 for 8 % 8.5 for 8 1/2 %. W |iJ52a 930712 Displays automatically. If this is changed, Time in Months is recalculated. W |iK00a 930712 Enter the value of the ORIGINAL INVESTMENT. W |iK01a 930712 Enter the ENDING VALUE of the investment. W |iK02a 980216 Enter the ANNUAL amount you ADD to your investment. W |j00a 930712 Enter a code by which you reference, or will reference this JOB CLASS. W |j01a 930712 Enter a DESCRIPTION for this Job Class. Press F9 to save. W |o02a 940425 Enter your 3-digit LOCAL AREA CODE. W |o03a 940425 Enter the 3-digit LOCAL EXCHANGE #'s in your TOLL-FREE calling area. Use commas W |o05a 940425 W |o19a 970317 Enter the PREFIX used for long distance calls within your area code, like 1717. W |p00a 930714 The code ! means the printer setup for the system. Use other codes for printers. W |p01a 930714 PRINTER TYPE means the Printer Brand Name and Model Number. W |p02a 930714 These fields are for professional use only. Do not change. W |p03a 930714 These fields are for professional use only. Do not change. W |p04a 930714 These fields are for professional use only. Do not change. W |p05a 930714 These fields are for professional use only. Do not change. W |p06a 930714 These fields are for professional use only. Do not change. W |p07a 930714 These fields are for professional use only. Do not change. W |p08a 930714 These fields are for professional use only. Do not change. W |p09a 930714 These fields are for professional use only. Do not change. W |p10a 930714 These fields are for professional use only. Do not change. W |p11a 930714 These fields are for professional use only. Do not change. W |p12a 930714 These fields are for professional use only. Do not change. W |p13a 930714 These fields are for professional use only. Do not change. W |p14a 930714 These fields are for professional use only. Do not change. W |p15a 930714 These fields are for professional use only. Do not change. W |p16a 930714 These fields are for professional use only. Do not change. W |p17a 930714 These fields are for professional use only. Do not change. W |p18a 930714 These fields are for professional use only. Do not change. W |p19a 930714 These fields are for professional use only. Do not change. W |p20a 930714 These fields are for professional use only. Do not change. W |p21a 930715 These fields are for professional use only. Do not change. W |p22a 930714 This tells where to send your documents. Single-user systems usually use P. W |p23a 930714 These fields are for professional use only. Do not change. W |p24a 930714 These fields are for professional use only. Do not change. W |p25a 930714 These fields are for professional use only. Do not change. W |p26a 930714 These fields are for professional use only. Do not change. W |p27a 930714 These fields are for professional use only. Do not change. W |p28a 930714 These fields are for professional use only. Do not change. W |t00a 930715 All the fields on this screen are only for use by professional technicians. W |t01a 930715 All the fields on this screen are only for use by professional technicians. W |t30a 930715 All the fields on this screen are only for use by professional technicians. W |t31a 930715 All the fields on this screen are only for use by professional technicians. W |t44a 950815 Modem initilization See the F1 help W |t46a 930715 All the fields on this screen are only for use by professional technicians. W |t47a 930715 All the fields on this screen are only for use by professional technicians. W |t81a 981012 Enter a printer number from 00-99 here to be the default for this user#. W |v00a 930719 Enter the REFERENCE # of the 1099 which you wish to see or correct. W |v04a 930719 The computer sets the DATE. It can be changed if necessary. W |v10a 930719 Enter the CODE of the Vendor if you are making or changing a 1099. W |v11a 930719 Enter the amount of MISCELLANEOUS payments to this Vendor for the year. W |v12a 930719 Enter the amount of RENT payments to this Vendor for the year. W |v13a 930719 Enter the amount of INTEREST payments to this Vendor for the year. W |v14a 930720 Enter the total amount paid to this vendor in royalties for the year. W |v17a 930720 This is only used with custom programming in special cases for some W-2 wages. W |v97a 930720 Enter the name of the city. W |v98a 950109 Enter the 2-digit code that identifies the state or province. See F1. W |vA51a 930719 Enter the Vendor's NAME if it was not entered on the Vendor file. W |vA53a 980216 Enter the Vendor's Street ADDRESS if it was not entered on the Vendor file. W |vA54a 930719 Enter the ZIP CODE. City and state autoload if they exist on Zip Code file. W |vA57a 930719 (Optional) Enter the TELEPHONE Number if desired. (This updates Vendor file). W |vA61a 930719 Enter the EMPLOYER IDENTIFICATION NUMBER if it was not entered on Vendor screen W |vA62a 930719 Enter the Vendor's SOCIAL SECURITY #, if he has no Employer Identification #. W } I 980509INVENTORY FILE 100,5,20,2,0 0 UC ITEM # For TFR For CQP 1 AC DESCRIPTION W-L-Color 2 IC G/L CATEGORY 3 UC TAXABLE blank or T)ax, E)xempt, M)anual, S)ometimes, X)tax 4 UC UNIT 5 UC1 MULTIPLIER NU 6 MC LIST PRICE Setup Charge 7 DC DT LIST CHNG 8 FC1 BOOK COST NU 9 DC DT BOOK CHNG NU 10 UC SUPPLIER Side Poles 11 UC Print Code 12 UC MAXIMUM Center Poles 13 UC MINIMUM Curtains 14 UC LEVEL A DISCOUNT NU 15 UC LEVEL B DISCOUNT NU 16 UC LEVEL C DISCOUNT NU 17 UC LEVEL D DISCOUNT NU 18 UC GROUP CODE NU 19 UC LOCATION 20 UC PRICE UPDATE CODE Also R CLE Royalty 21 AC Add Descr NU 22 AC Remark 23 AC P/O Descr Stakes Price Code 24 UC LABOR Category 25 UC Job Class 26 FC Labor Units Factor NU LAC Factory List WCT Roll Price 27 FC Frt&Adj Freight & Adjustments 28 FC Buy Qty/Case NU 29 UC RESTRICTION CODE NU 30 FC QTY PER LABEL NU 31 AC *CORECHRG / REVISION NU 32 UC ACTIVITY LOCATION NU 33 UC AUTO-ORDER ITEM # NU 34 UC COMMISSION CODE Condition LAC Factory Mult KOK Comm.Code 35 AC COMMENT Condition 36 DC PRICE CHANGE DATE NU 37 MC NEW PRICE Day Charge 38 UC STOCK CODE NU 39 AC BUY DESCR Mfg Dates 40 UC MNF & CODE 1 41 UC MNF & CODE 2 42 UC MNF & CODE 3 43 AC BAR CODE NU 44 UC NEW ITEM# 45 MC Weight Week Charge 46 UC Serial # 47 FC Pre-adjustment qty 48 UC SPECIAL DISCT KEY 49 IC lead time Days 50 UC Alternate unit ;CEB LAC 51 MC List price for alternate unit ;CEB 100 UC Alternate item# 101 UC Type (A)ftermarket, (M)anufacturer 104 UC spare W }! 020316 ;programmer's documentation & file structures 01 ABC Basic Programs 02 Sales Explanation 03 Problems 05 Programming Overview Text Editting Compiling hints Program Types 10 File structures 12 Variable ussage 15 Input screens 20 CRAM commands - alphabetical 25 CRAM commands - math operators 30 Print formats 35 SCAT formats 40 Index formats 45 Argument types 50 Report generator 53 Printer Macros 55 Control Keys 60 Ascii codes 65 Support-modem 70 Help One Liner, Tutor 80 Window Terminal 81 Palm Programing 90 Subrutines 95 Machine code R F11 reports [ Global linput (F1) Help W }!001 980824 :001 CRAM Versions 4.0, 5.0, 6.0, and 7.0 for i386 processors and Atari ST version Programmer's Guide Copyright 1994, 1995, 1996, 1997 by Advanced Business Computers Printed July 22, 1998 (9:42am) W }!002 980824 :002 Table of Contents Table of Contents. . . . . . . . . . . . . . . . . . . . . . . .2 Programming Overview . . . . . . . . . . . . . . . . . . . . . .3 Text Editing. . . . . . . . . . . . . . . . . . . . . . . .3 Compiling Hints . . . . . . . . . . . . . . . . . . . . . .3 Program Types . . . . . . . . . . . . . . . . . . . . . . .3 File Structures. . . . . . . . . . . . . . . . . . . . . . . . .5 Input Screens. . . . . . . . . . . . . . . . . . . . . . . . . .6 CRAM Commands - Alphabetical Listing . . . . . . . . . . . . . .7 CRAM Commands - Math Operators . . . . . . . . . . . . . . . . 23 Print Formats. . . . . . . . . . . . . . . . . . . . . . . . . 24 SCAT Formats . . . . . . . . . . . . . . . . . . . . . . . . . 24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Appendix A - Argument Types. . . . . . . . . . . . . . . . . . 27 Appendix B - Report Generator Variables And Routines . . . . . 28 Appendix C - Control Key Codes . . . . . . . . . . . . . . . . 34 Appendix D - ASCII Codes . . . . . . . . . . . . . . . . . . . 36 W }!025 980828 }!025 UPDATING IMAGES AND LIST PRICE FROM PLUS1 As long as Plus1 supplies parts images and list prices in a format compatible with 8.06 to the end user, ABC intends to support Plus1 in ABC's current version. PLUS1 SERVICE BULLETINS These are accessed from a terminal which has Plus1 software installed. ABC SERVER We recommend that the ABC server which handles all computations and data manipulations is run in DOS mode, because the occasional lockups in Windows compromises data integrity. We also highly recommend no other programs or other diskettes be inserted into the base computer to prevent the possibilities of virus contamination. Terminals may be run in a DOS or Windows environment. Lockups on a terminal do NOT compromise ABC data integrity. W }!05 980824 :05 Programming Overview This manual is written for those who are already familiar with the ABC Accounting system and wish to do custom programming in that environment. For more information on using ABC Accounting, see the ABC Accounting Reference Guide. Text Editing Source code for various types of programming is entered in the W screen. Each page must have a unique code. See the section for Naming Conventions for each type of program. Use K to compile the page currently loaded on the W screen. See the General Functions section in theABC Accounting Reference Guide for help with text editing in the W screen. Compiling Hints Use K on the W screen to compile your source code. Use the sprog command to save the object code (your FMT file). The name for the FMT file is usually found on the W record 'WSAVE' along with the proper sprog command. Position the cursor on the sprog command and hit C to save the program. C will execute the command in immediate mode. On a timeshare system, make sure all compiling is done with timeshare disabled. When compiling file structures, save the FMT file, then exit the program and reenter to initialize the new variables. When programming a new input screen, the input format with the offsets must be compiled before other formats for the screen can be compiled. Program Types There are five basic types of programs that are used in the ABC Accounting environment: file structures, input screens, CRAM formats, print formats and SCAT formats. File structures define the variable types used for each file. There can be as many as 128 files stored in the database. Each file is referenced by the ascii equivalent of the file number, between 0 and 127. Files in memory are referenced by 2 bytes allowing up to 65536 files. Input screens are the user interface for entering and editing records in the database. CRAM (compact reporting and multitasking) programs use a powerful database language to allow specialized input options, complex reports, and many other functions. Print formats are used to format data for output, such as to a printer. SCAT (sort combine and type) programs do sorting and combining for reports or automatic file posting. W }!10 980824 :10 File Structures File structures define the data types or fields that make up a record. The source code record must have a code beginning with a F to denote a file structure. Line 3 begins with contains a >V and up to five arguments separated by commas. The first argument (required) specifies the number of non-repeating fields. The second and third arguments (optional) contain the number of repeating fields and how many times to repeat. The fourth and fifth arguments (optional) contain special posting information. The data field types begin on line 4. First is the field number, followed by the data type. There are 8 basic data types: A ascii (alphanumeric) U uppercase ascii M money mode Q 4 decimal places H 6 decimal places F floating point D date P pointer string Optional modifiers are: C clear this field on new records R restrict entry on this field 1 restriction level 1 2 restriction level 2 After the field type you can enter your description of the field. Any field numbers not specified will be the same type as the field before it. Always specify field 0. When using repeating fields, such as item lines on an invoice, it is advisable to insert several spare fields in the non-repeating and repeating sections. W }!10a 000407 Documentation of new file layout Header 30, Repeat 12, Lines 200, Post Code 2,0 - # TRC Attr Name of Field Subfile Additions C T | | | | T)ypes Byte Value C)lear or on load Index, Index"A",&# A Ascii 128 C Clear field +4 Delimiter \ comma,\sp Space Comma U Upper Ascii 192 Attr)ibutes \0 chr$0, < skip if null 200 R Required +128 Post"!R2" +#,-# T Telephone 208 B Blank OK Option2 "A Aples,B Ball,C Cat,D Dog" Y Yes No 216 F Filter by Sub- 8 Option18 "1-999,A&B",1@30?64,{cram} P Pointer 224 file or Option Require18 1?66 "this is a message" D Date 8 U Update Suggest OPtion1 1=15,2=16 F Floating 16 A Allow another Var %# repeat, !# posted I Integer 0 M Multiple Entry 64 Change file stucture M Money 32 I Index 16 Q Four Place 64 N No Auto Lookup 32 H Hex 96 Subfile code chr R)estrict- Works or 0Name With Passwords Entry Table Data 1 Level 1 +1 2 bytes # header fields 2 Level 2 +2 1 byte repeat 3 Level 1 & 2 +3 1 byte # posted fields Out to WindTerm 1 byte type Restricted +1 1 byte attribute Auto Entry +2 File structures must allow for custom programming with capital suffix. 0 IC REF # 1 UC CUSTOMER # C Index,4:{if11<>!2}Index"O",4 :Total-1"C",4+11+12 2 UC SLIP # :Index> 3 U SALESPERSON S Index>,4 Total-1"S">,4+11+12 4 DR DATE 5 UC TAX CODE (T,E) ;Commands {cram false skips to next line} 6 UC SHIP VIA,SHD :Index> ;Index"x" this field, x Alt index 7 UC CUSTOMER PO# ; > index only if field > 8 IC ORIGINAL ORDER :Index> ;Total + & - Amts -0 add to lev0 9 DC ORDER DATE ; ,x additional fields to index 10 UC TERMS ; -m, split , comma del multi fld 11 MC TOTAL INVOICE ;Post f# Data 12 MC1 TOTAL COST ;Cram may not within an index cmd 13 MC B/O AMT HELD Disk Structure Machine Variable Structure FF Start of File FE Posted Fields FD Repeating Follows goes to next multi-field or repeat in file structure FC End repeating used to terminate a repeat unless at End of Record FBxx xx fields Skipped FA Add 128 to next character 80 Null Except pointer fields W }!10b 020114 Doc a way to get more variable in header & repeat fields 1. Make file table entry variable Place the Start and # repeat fields in the File table from file setup 2 on set screen scan variables for lowest & use to calculate Variable adder When line adder is > 0 use that for variable adder than InputRepeatAdder 2. New commands FileChr> FILEDEF,End,repeat start, repeat Adder = File Start PrevPtr> FILEADD,#Variables = New Pointer 3. Make Variable table Variable PrevPtr> VARADD, #Variables VarPtrWithinLine> LINEOFFSET ;lowest input repeat variable set to LineBeg ;if line offset before beg repeat Set var to header False & scan Scan ;Future set LINEOFSET from 1049 before going to Cram will prevent back use VariablePtr> VARLOC = Location of field on the screen Location > LOCVAR = variable pointer Track to buffer table - so buffer in memory need not be searched Table for 10 Bytes BegBuf Track#(2),Device(2), Use(2), dirty(2),Sectors(2) and 2 32 Bit pointers for next and previous track used Have some type of error checking to insure no broken links We must make sure the Delete & reuse track bug doesn't happen again Audit trail backup to when computer is on line & available group send without waiting to ACk first use pointers into out buffers Disk Structure Track ID FFFF Machine delimiter Structure FF Start of File FE Posted Fields FD Repeating Follows Goes to next multi-field or repeat in file structure FC End repeating End of Repeat group for multiple repeatgroupd/Record FBxx xx fields Skipped FA Add 128 to next character 80 Null in Ascii fields (may not include pointer fields) Field Compression (byte) Bit 7 high to Indicate beginning of field 6 low and bit 7 next byte low bits 0-5 high next 5 fields 6 low and bit 7 next byte High Start Repeat bits 0-5 high next 5 fields 6 High bit 7 next byte High bit 0-5 Skip fields 7-65 FC-FF Reserved 6 High bit 7 next byte low bit 0-5 2-60 # fields with data. Track type should indicate this type of data Differerant Checksum so old ProgErr save buffer should converted before insert into track &"z"asciilinput W }!12 990508 Variable for low level rutines Machine code allows 65536 variables. Garbage collection uses 2 bytes var# Limit for strings over 4 chrs long is 10752 for current 42 sector buffer. Low level Rutines should use temporary variables in the following order Integer Use 1020-1024,1043-1046,Don't use 1047,often 1048,1049,1025&up String Use 1002-1005,1002,1016 may not be clobbered in report headings, gosubp125 puts acc in 1002 as a string, clobbers 1003. Rutines from global 7&9, Keysub, localbackground may not change 1045-1049 Timer Variables 1000-1029 are available. Original values are preserved. For Variable usage in report generator see _REPORT3 W }!15 001103 :15 Input Screens Input screens are used for entering data from the keyboard. These are similar to print formats (see Section 2) with some additions. The first character of the code of the word processor record specifies the screen character when no >I s (s can be 1 or 2 chrs) near the top of the scrreen and at the start of a line specifies the screen. The offsets are in line 2. the mininum requirement for a screen \is a x,0 offset. If more than one line is required, end the first line with a comma and continue on line 3. The format for offsets is: File#,offset,file#,offset Example: I,0,#,500,,1000 Offsets must be in numberical order and are defined by a zero after the first , Version 9 >I Space xx at the start of line 3-29 uses the 1 or 2 characters for the screen code. Entry Offsets start on the next line Entry fields are designated by braces ({ and }). Input fields require 4 or 5 arguments. The first is the sequence number, usually a letter, and specifies the order of the fields. The next is the field number. Third is a 'Y' or 'N' to specify auto entry or not. Fourth is the math option number. Optional fifth argument is for miscellaneous options. Example: { B1N0 } Field 1, no auto entry, no math option. Special options are: Options for fifth arg: 1 - load record F - Force math option 2 - load subfile R - Restricted field 255 - subfile field U - Use previous field P - Primary subfile S - Secondary subfile Seven additional arguments are required on the first repeating field: Number of commands (input fields) to repeat Number of lines in file Number of lines on screen - 1 Window number X adder (vertical) Y adder (horizontal) Variable adder > codes >a math, >p Print, >I Specifies screen to compile W }!155 990531 :155 Characters entered at the keyboard are processed to the field input buffer. While waiting on the next key stroke the character is printed on the screen. When inserting characters in a long field the printing may take longer than entry. The characters are printed from the entry point to the end of the field. When another character is entered printing will stop and then start at the entry point. Printing keeps up with entry. Registers used in the entry and screen print: D0-Temporary X cursor position D1-Temporary Y cursor position D2-CURFLAG Flag for print cursor position, active when cleared D3-PNTFLDPS Print field position or char to print to screen D4-ENTCHRPS Print field end in field buffer. Negative reposition cursor D5-ENTCHRPS Entry character position. Next character in input buffer D6-FIELDLEN Field length. Length of valid data in input buffer D7-AUTOLEN Auto length. Low byte is field length. +32000 auto entry flag. A0-Temporary Variable location, getcdloc & getvarlc A1-CHRLIMIT Character limit pointer. Used to check for valid input characters A2-INSRTFLG Insert flag. 1-insert mode, 0-overstrike mode A3-Temporary Variable location, getcdloc & getvaric A4-Temporary Input command location, getcdloc & getvarlc A5-Temporary Used in input for CHRLIMIT in compare limit routine, getcdloc A6-USERBASE Start of memory for the user & field entry buffer A7-STACK W }!156 980824 :156 INPUT FORMAT LAYOUT Byte 0&1 LOCCOMND Start of command location relative from beginning of format 2&3 LOCALFC Local function table relative dispatch for math and print 4&5 TABTABLE tsb tsble 0-special per record, 1-none, >4 input format 6&7 INPTCMD# # of input commands 8&9 HELPSCRN Help screen for that format 10&11 CLRINDEF Enter default. Should line be cleared after first character. 16&up Start of the three tables and the input, math and print commands. OFFTABLE The offset table contains an entry for each file used as follows: 2 bytes- file number 2 bytes- Math and input string # * 6 starting from the highest to lowest inputint- generates a table that contains the variable offset for string # LOCCOMND Locate the command table used for the location of the input command quickly. The table contains 1 entry plus an additional entry for each set of repeating commands. 2 bytes- # of command 2 bytes- # of bytes to subtract from the command # * 6 gets relative offset LOCALFC Local function call table- has all of the dispatches for the math and print functions. The start of the input commands is always the first entry in the table. The others are for functions that only the input routines can access. The second entry is the print label functn TABTABLE High bit 0 skip char, 1 skip fields, bit 0-6 # chr or fields to skip. First byte 0 then character tab else field tab INPUTCMD The commands that control the entry and manipulation of screen data W }!157 980824 :157 Each command is 6 bytes as follows: Byte 0-1 Field #, top 5 bits, 0 string entry, 1-30 string functions Byte 2 X amount Byte 3 Y amount Byte 4 length, bits 6&7 set automatic entry Byte 5 Math option 0 to 127 global 128-255 local REPEAT FIELDS Byte 0 Repeat offset to save loc for screen strt 1 # of line printed on screen 2 X amount to add 3 Y amount to add 4 Number of commands to repeat 5 Number of variables to add per line MATHCMD Math commands, basic command is 2 bytes long. Byte 0-1 bits 11-15 command#, 0-10 variable# PRINTCMD Print commands are 2 & 4 bytes long. When the variable specifies the type of printing then the command is two bytes as follows: Bits 11-16 0-30 length of field to print. 31-extended Bits 0-10 Variable- When variable is indirect bits 11-16 are commands 4-byte Bytes 0-1 Variable Byte 2 Length Byte 3 Type of operation 4-byte commands are used when the print length is over 32 bytes or the type of print operation is different than that specified by the variable, or redundant printing such as underline. printfeld $FFFF repeat command to the next word from the previous $FFFE reverse video $FFFC normal videoAppendix A - Argument Types direct - The effective variable location is calculated directly from the number in the command using the offsets. The offsets specify arbitrary starting numbers for each file. A direct argument is attached directly to the command and may range from 0 to 1279. Examples: +1030 =1031 if10 indirect - The effective variable location is taken from the temporary variable pointed to by the argument. Offsets are not used. You may find the location using 'filestart' or 'pointer'. To calculate locations, add or subtract "6" to the temporary for each variable. Temporaries usually use an offset of '1000'. Indirect arguments are specified with parentheses and range from 0 to 255. Examples: +(30) =(31) if(25) immediate - Data is taken directly from the argument. Immediate arguments are specified with quotes. Examples: +"10" load"I" &"abc" one-byte - Data is taken directly from argument if it is less than 128. If 128 or greater, 128 is subtracted and the resulting temporary is used. Offsets are not used. Examples: goto10 gosub180 (uses temporary 52) Multiple arguments must be seperated with commas. Some commands require the first argument to be preceded by a comma if it is indirect or immediate. Appendix B - Report Generator Variables And Routines W }!20 980105 :20 CRAM Commands - Alphabetical Listing Machine code cram bit patterns bit 0-2 0-4 direct 5 indirect 6 imediate 7 one byte bits 3-7 31 variable commands 1 extended commands W }!20ABS 001103 10500201 ~ABS~ Number ABS Converts accumulator to numeric value and forces it to be a positive number. Number - positive or negative number# Sample: &"-10"abs Result: 10 W }!20ADD 001103 20500201 ~ADD~ ADD,Source,End,Destination Add two arrays of variables together. Source: Start of scource array. End: End of source array. Destination: Start of destination. Var.Types Required Direct Indirect Immediate Source _x_ 0-1279 0-127 ___ End _x_ " " ___ Destination_x_ " " ___ First arguement must be preceeded by a commma if any are indirect. Sample: add,1030,1031,1032 Result:1032 will have the total of 1030 and 1032, 1033 has the totals of 1031 and 1033. W }!20ALWAYS 001103 09500201 ~ALWAYS~ Always Start executing math commands regardless of condition, no argument is required. Sample: if"a"eq"a":else&"UNEQUAL"linput: always&"EQUAL"linput Result: EQUAL W }!20AND 001103 15500201 ~AND~ AND Arg Saves arguement for later comparison. Arg - string or number saved for later comparison. Var.Types Required Direct Indirect Immediate Arg _x_ 0-1279 0-127 "xxx" Loads the Arg into accumulator, sets accumulator to Arg type & sets operation to and. Sample: if"1"eq"1":and"2"eq"2":&"EQUAL"linput Result: EQUAL W }!20ASCII 001103 08500201 ~ASCII~ character ASCII Converts the first character in accumulator to the numeric ascii value. (Opposite of chr$.) Sample: &"J"asciilinput Result: 74 W }!20BAUD 001103 18500201 ~BAUD~ BAUD Rate Sets the baud rate on the modem. Rate - this programmed# will set the speed. Var.Types Required Direct Indirect Immediate Rate _x_ ___ ___ 0_18 This table sets the baud rate of the RS232 port. 0 - 19200 5 - 2000 10 - 200 15 - 50 1 - 9600 6 - 1800 11 - 150 16 - 38400 2 - 4800 7 - 1200 12 - 134 17 - 57600 3 - 3600 8 - 600 13 - 110 18 - 115200 4 - 2400 9 - 300 14 - 75 Sample: baud1 Result: 9600 W }!20BGRQUIT 001103 03500201 :bgrquit - (Atari only) Halts a background operation, use in foreground only. W }!20BGRSTART 001103 08500201 :bgrstart - (Atari only) Starts a background operation, requires a one-byte argument for the format number to cycle through. Use 'interrupt' commands in background to divide power with foreground. syntax: bgrstart10 W }!20BREAK 001103 08500201 ~BREAK~ break Runs illegal machine code to exit program. Executes an 'illegal' instruction in machine code to exit to debugger, such as DXDEBUG.EXE. Will not work without a debugger. W }!20CALLQ 001103 17500201 ~CALLQ~ CALLQ Number Executes a global subroutine with a format# greater than 383. Number - global format# of the subroutine. Var.Types Required Direct Indirect Immediate Number _x_ ___ ___ 0-255 Uses the format number minus 384;384-639 is used. Unlike other one-byte arguments, this command does not use a temporary variable if the argument is greater than 127. Sample: callq10 Result: Executes global format number 394. W }!20CAPITALIZEC 001103 08500201 ~CAPITALIZE~ String CAPITALIZE Capitalizes every letter in the accumulator. The accumulator is forced to a string type. Sample: &"asdf"capitalize Result: ASDF W }!20CAPTURE 000620 21500201 ~CAPTURE~ #Bytes CAPTURE,CramDevice,MemLoc Capture data from an I/O port and store it in memory. ACC - Number of bytes to capture CramDevice - The CRAM device to capture data from. MemLoc - The memory location to store the data. Var.Types Required Direct Indirect Immediate CramDevice _x_ 0-1279 (0-127) "xxx" MemLoc _x_ " " _x_ Used in network terminal emulator to receive image data. Sample: "8"capture,"1",1030 Result: 8bytes will be captured from device 1 and stored at location specified in 1030. Note- !45 and !B54 variables (1003,1020-1025) will not hold if print error occurs. W }!20CHANGEFILE 001103 16500201 ~CHANGEFILE~ OldFile CHANGEFILE NewFile Changes the character of a file structure. OldFile - The current file character. NewFile - The ASCII value of file character to change to. Var.Types Required Direct Indirect Immediate NewFile _x_ 128-255 ___ 0-126 Requires the current file character in the accumulator. Sample: &"R"changefile111 Result: o W }!20CHANGETO 001103 19500201 ~CHANGETO~ OldFile CHANGETO NewFile Changes the character of a file structure. and the input format. OldFile - The current file character. NewFile - Specify's what file to change to. Var.Types Required Direct Indirect Immediate NewFile _x_ 128-255 ___ 0-127 Requires the current file character in the accumulator. This command is the same as 'changefile' except it changes the input format also. Sample: &"R"changeto111 Result: o W }!20CHECKSUM 001103 18500201 ~CHECKSUM~ Bufloc CHECKSUM Recalculates and writes the checksum on a disk track. Bufloc - The address of the buffer containing the data to execute a checksum on. (Cannot use a money variable) Recalculates and writes the checksum on a disk track. Needs to be executed after changing data in a buffer before writing to disk. Sample: +1030checksum Result: a checksum is recalculated in the data in the buffer at the location specified by 1030 W }!20CHR$ 001103 12500201 ~CHR$~ Value CHR$ Changes the ASCII value in accumulator to a one-byte string. The accumulator is converted to a numeric value and then changed to an ascii character. (Opposite of 'ascii'.) Sample: +"33"chr$ Result: ! W }!20CLEAR 001103 13500201 ~CLEAR~ CLEAR File Clears a file's variable area. File: Specifying character of file to clear. Var.Types Required Direct Indirect Immediate File _x_ 0-1279 0-127 "xxx" Clears only those fields with a clear option on the file structure compiled into the program. Sample: clear"I" W }!20COLORBUTTON 001103 12500201 ~COLORBUTTON~ Attrib COLORBUTTON Specifies video attribute used for mouse but ton display.Attribute (0-255) in accumulator. For 386 version5 or newer. View chart of the ~COLOR ATTRIBUTES~. Sample: +"7"colorbutton Result: foreground color will be white & background will be black C }!19a W }!20COLORCURSOR 001103 12500201 ~COLORCURSOR~ Attrib COLORCURSOR Specifies video attribute used for the cur- rent field. Attribute (0-255) in accumulator. For 386 version5 or newer. View chart of the ~COLOR ATTRIBUTES~. Sample: +"20"colorcursor Result: foreground color will be red, background blue C }!19a W }!20COLORFIELD 001103 12500201 ~COLORFIELD~ Attrib COLORFIELD Specifies video attribute used for field display. Attribute (0-255) in accumulator. For 386 version5 or newer. View chart of the ~COLOR ATTRIBUTES~. Sample: +"46"colorfield Result: fourground color will be yellow, background green. C }!19a W }!20COLORLABEL 001103 13500201 ~COLORLABEL~ Attribute COLORLABEL Specifies video attribute used for label display and CRAM printing to console screen. Attribute (0-255) in accumulator. For 386 version5 or newer. View chart of the ~COLOR ATTRIBUTES~. Sample: +"111"colorlabel Result: foreground color will be bright white, background color will be brown. C }!19a W }!20COLORMESSAGE 001103 12500201 ~COLORMESSAGE~ Attrib COLORMESSAGE Specifies video attribute used for message line display. Attribute (0-255) in accumulator. For 386 version5 or newer. View chart of the ~COLOR ATTRIBUTES~. Sample: +"81"colormessage Result: foreground color will be blue, background magenta C }!19a W }!20COMPARE 001103 20500201 ~COMPARE~ Length COMPARE,Address,Address Compare 2 blocks of memory. Length - # of bytes to compare Address - first item to compare Address - second item to compare Var.Types Required Direct Indirect Immediate Address _x_ 0-1279 0-127 "xxx" Address _x_ " " " Set condition, true if data are identical, false if not. Put the number of bytes in the accumulator (divisible by four), and use two arguments for addresses of memory blocks (must be even addresses). Arguements must be preceded by commas. Sample: +"4"compare,1030,1031 W }!20COMPAREMEM 011026 20500201 ~COMPAREMEM~ Length COMPARE,Address,Address Compare 2 blocks of memory. Length - # of bytes to compare Address - first item to compare Address - second item to compare Var.Types Required Direct Indirect Immediate Address _x_ 0-1279 0-127 "xxx" Address _x_ " " " Set condition, true if data are identical, false if not. Put the number of bytes in the accumulator (divisible by four), and use two arguments for addresses of memory blocks (must be even addresses). Preceed arguements by comma. Sample: +"4"comparemem,1030,1031 Prior V9.47 command was COMPARE W }!20COMPAREREC 011026 20670201 ~COMPAREREC~ COMPAREREC,ChangePtr,Record1Ptr,Record2Ptr,BufferLen ChangePtr Pointer to buffer to put changes Record1Ptr Pointer to Record 1 in disk format Record2Ptr Optional Pointer to 2nd Record or uses a new record. BufferLen Optional length of ChangePtr buffer When not specified, BufferLen is Diskbuffer Size Compares 2 records in disk format and place the fields of record 1 that are different in a buffer at ChangePtr. The buffer containes: FF, FileChr,Code, FldFlg,Changes..., FldFlg,Changes... ,FF The Field Flag specifies fields present or skipped. Bit 7 Usually High Field delimiter for previous field Bit 7 next byte high bit 6 low bits 5-0 high Next 1-6 fields present low skipped bit 6 high bits 0-5 7-64 fields skipped, 65 another FldFlg (Bit patterns FF,FE,FD,FC,FB used for Disk Delimiters) Bit 7 next byte low bit 6 low Start Repeat Line bits 5-0 same as above bit 6 high bits 0-5 7-65 fields with data If codes don't match or no changes returns false & scans. V9.47 W }!20CONSOLE 001103 09500201 ~CONSOLE~ Device CONSOLE Sets the console device. CRAM device number (0-7) must be in the accumulator, no other argument required. Sample: +"2"console W }!20CONT 001103 04500201 :cont - (Atari only) Continues execution after a 'stop' command or after execution is paused during tracing. W }!20CRAM 001103 06640201 cram- 2 arguments first location, second length Location is Kompiled cram code and then executes it Kompile 1 with return will compile the cram line from text. 982+"3402" 80 Bytes RETURN for compile buffer W }!20CREATEKEY 001103 09500201 ~CREATEKEY~ CREATEKEY Number Creates a key from a SCAT load format. Number - the key number to use. The key num- ber must be specified in a SCAT load format (>K), that has been compiled into the CRAM format file. Var.Types Required Direct Indirect Immediate Number _x_ ___ ___ 0-127 W }!20DATE# 001103 11500201 ~DATE#~ String DATE# Converts a 10 character date string in the accumulator to a numeric date value minus or plus 01/01/2000. This command is the opposite of DATE$. Sample: &"09/05/1980"date# Result: -7057 W }!20DATE$ 001103 10500201 ~DATE$~ String DATE$ Converts the numeric date value of the accumulator to a date with a string type. No argument required. (Opposite of 'date#'.) Sample: &"-7057"date$ Result: 09/05/1980 W }!20DECOMPILE 001103 21500201 ~DECOMPILE~ DECOMPILE Location = Syntax Decompiles one CRAM instruction and stores the syntax in the accumulator. Location - where the item to be decompiled is. Var.Types Required Direct Indirect Immediate Location _x_ 128-255 ___ ___ Use a temporary variable +128. After execution, the variable is automatically updated. The programmer must check to make sure the address is evenly divisible by 2 before continuing with the next command. DECOMPILE is in the following source: !45 !CLP45 !ESF45 +CEB02 +GIL02 +POB02 WDECOMPILE, WUTICRASH, WUTLMATH W }!20DELETE 990308 21500201 ~DELETE~ DELETE File Delete a record on disk. File - Item to delete. Var.Types Required Direct Indirect Immediate File _x_ 0-1279 (0)-(127) "xxx" User# ___ " " " ___ ___ ___ ___ Posting ___ " " " Deletes the record with the same code as field 0 in memory. Optional arguments: 2nd is user #, 3rd is not used, 4th is posting 0 post or 1 don't post. Use "255" for the user number if you want local user. Deleting without posting does not work over a network. Sample: delete"R","255","0","1" Result: Deletes '543' from 'R' file, no posting. W }!20DISK 990308 21500201 ~DISK~ DISK ,Dev,BegSect,#Sect,BufLoc,R/W Transfers data directly from disk to memory or memory to disk. Dev - Device number, 0-14 accesses Dos drivers: 0=A,1=B etc.,15&16 accesses Dos files P&Q 128-255 access network, 128 = user0 etc. BegSect - Start of sector #Sect - Number of sectors BufLoc - Location of buffer R/W - Operation flag (2-read 3-write) Var.Types Required Direct Indirect Immediate Dev _x_ 0-1279 (0)-(127) "xxx" BegSect _x_ " " " #Sect _x_ " " " BufLoc _x_ " " " R/W _x_ " " " continued... W }!20DISKa 990304 21500201 386 version, device 16 reads and writes a dos file, the name is specified in the parameter file or changed with the 'poke' command. Sample: disk,"2","204","17","865960","2" W }!20DISPLAY 001103 13500201 ~DISPLAY~ String DISPLAY Displays the contents of the accumulator in ASCII at the current location. Displays immediately, does not wait for background print. This command does not check the length of the input field, and can print past the end. Sample: &"HI"display Result: HI W }!20DUMP 001103 07500201 ~DUMP~ DUMP Dumps all dirty disk buffers,a dirty disk buffer is a buffer with the information changed from the original no argument is required. W }!20ELSE 001103 13500201 ~ELSE~ ELSE Conditionally performs a function. Used after condition statements. Execution begins here if condition is false, otherwise scans for 'if', 'and', 'or', 'always', or 'then'. Clears accumulator when scanning. Sample: IF"1"EQ"2":&"EQUAL"LINPUT:ELSE&"UNEQUAL"LINPUT Result: UNEQUAL W }!20EQ 001103 12500201 ~EQ~ EQ Cmp Used in comparison logic to check equality. Cmp - item to compare. Var.Types Required Direct Indirect Immediate Cmp _x_ 0-1279 (0)-(127) "xxx" Sample: if"1"eq"1":&"EQUAL" Result: EQUAL W }!20FAX 001103 14500201 ~FAX~ Name FAX ,Number Fax a text file. Name - a Dos filename with path in accumulator Number - phone or fax number Var.Types Required Direct Indirect Immediate Number _x_ 0-1279 (0)-(127) "xxx" For 386 version 5+. Requires CAS compatible fax board and software. Sample: &1005fax,1002 W }!20FILELEN 001103 10500201 ~FILELEN~ File FILELEN = Length Returns length of DOS file. Specify file name in accumulator. Sets condition to else if the file does not exist. Sample: &"c:\abc\abc.par"filelen Result: 626 W }!20FILESTART 001103 20500201 ~FILESTART~ FILESTART File = Pointer Finds the location of a file. File - name of the file to locate Var.Types Required Direct Indirect Immediate File _x_ 0-1279 (0)-(127) "xxx" Finds the location of a file in memory and stores the location in the accumulator. Requires one direct, indirect, or immediate argument to specify the file character. Also puts posting specifications for the file in temp 20(1020), used by standard posting routines. Location of specifications in file table and change flag is stored in temp 21(1021). Sample: filestart"I"linput Result: 1280434 W }!20FIND 990531 21500201 ~FIND~ Acc FIND Byte Step #Bytes Search memory for a byte matching specified value. Acc - the accumulator contains the start loc Byte - the byte to search Step - the second argument is the step value. For example, use a value of 2 to check every second byte,or-1 to search back. #Bytes - the number of bytes to search Var.Types Required Direct Indirect Immediate Byte _x_ 0-1279 (0)-(127) "xxx" Step _x_ " " " #Bytes _x_ " " " Ver 9 Translates locations in assembly code see Poke continued... W }!20FINDa 001103 21500201 The second and third arguments default to 1 and 16777216 respectively if not specified. The condition is set to else and scans for else, or, or always if the byte is not found within the specified memory block. 386 version 5, if 4th argument is negative, searches untill it finds a byte less than or equal to, if positive, searches untill it finds a byte greater than or equal to. Acc: 900000 Sample: find,"255","-1","8000" Result: Searches backwards 8000 bytes for 255 starting at location 900000. Accumulator returns with location. W }!20FLOPPY 001103 09500201 :floppy - (Atari only) Formats tracks on floppy disk and attempts to read 10 sectors. Put the location of first track buffer in the accumulator. Buffers are $A000 bytes long and contain all formatting and sector information. Four more arguments (direct, indirect, or immediate) are required: Device (1 or 2), track # (0- 159), # of tracks, and single-sided or double-sided (0 or 1). W }!20FLUSH 001103 10500201 ~FLUSH~ FLUSH Forces dirty buffers to be dumped to disk & sets the index flag to reload the directory. A dirty buffer is one that the information has changed but has not been saved back to disk. Sample: flush W }!20FORMAT 001103 14500201 :format - (Atari only, 386 use 8 screen option 8) Formats the disk space available to the program. One argument, direct, indirect, or immediate, specifies the length of format in bytes. This argument is optional on floppy disk programs. ************ * WARNING! * ************ This command will completely erase all existing data. syntax: format,"10000000" result: Will format 10 million bytes of disk space. W }!20FORMPRINT 001103 20500201 ~FORMPRINT~ FORMPRINT Operation# Prints a format starting on next line Operation# - use one of these programmed#'s 0 - print 4 - print '=' 1 - print and add to total 5 - not used 2 - print total 6 - add only 3 - print '-' 7 - extract totals Totals are stored at variables 1199 and below. Types and values may be changed in these variables. Var.Types Required Direct Indirect Immediate Format ___ ___ ___ 0-7 If it's one line it puts it in the accumulator. If it's more than one line it prints everything except the last line which it puts in the accumulator. continued... W }!20FORMPRINTa 990308 21500201 Variable 1042 is decremented for each line that is printed. Print format comes directly after the 'formprint' command in the math format. Use a print command after a formprint to print the last line. A 'formprint' command must be at the end of a math format. No math commands may follow. You must use it in a subroutine. Use with a one- byte argument. See ~Section 2~ for more information on print formats. syntax: formprint0 [ 0 , 1 ][ 32 ] S }!30 W }!20FREE 001103 06500201 ~FREE~ FREE Forces garbage collection and puts the number of bytes of string space available for this user into the accumulator. W }!20GETBUTTON 001103 14500201 ~GETBUTTON~ GETBUTTON X Y Returns mouse location. X - mouse location horizontally Y - mouse location vertically Var.Types Required Direct Indirect Immediate X _x_ 0-1279 0-127 ___ Y _x_ " " ___ 386 version 5. Returns with button text in accumulator. Removes leading and trailing spaces. W }!20GETBUTTONG 001103 14500201 ~GETBUTTONG~ GETBUTTONG X Y Returns a global mouse location. X - mouse location horizontally Y - mouse location vertically Var.Types Required Direct Indirect Immediate X _x_ 0-1279 0-127 ___ Y _x_ " " ___ 386 version 5. Returns with button text in accumulator. Removes leading and trailing spaces. W }!20GETCONSOLE 001103 07500201 ~GETCONSOLE~ GETCONSOLE Load the current console device into the accumulator. Sample: W }!20GETFILE 001103 14500201 ~GETFILE~ GETFILE File 386 version 5. Get the file and field number of the variable at the input command number specified in accumulator. File - the file to retrieve Var.Types Required Direct Indirect Immediate File _x_ 0-1279 0-127 "xxx" Returns with field in accumulator. Sample: getfile,1030 W }!20GETFREE 001103 12500201 ~GETFREE~ New with version 8. Get drive free space. Accumulator in specifies drive number (0-A, 1-B, 2-C, etc). Accumulator out contains number of bytes of free space on drive. If invalid drive, condition set to 'else', but execution continues with next instruction. Sample: W }!20GETINPUT 990304 21500201 ~GETINPUT~ GETINPUT ,X ,Y 386 version 5. Get the input command number of the field at X, Y on the screen. X - Y - Var.Types Required Direct Indirect Immediate X _x_ 0-1279 0-127 "xxx" Y _x_ " " " Sample: getinput,1021,1022 W }!20GETKEY 990304 21500201 ~GETKEY~ GETKEY Used in posting and sorted report routines to split the next key into temporary variables 90 and following. Sample: getkey:else:quit: W }!20GETLOCATION 990304 21500201 ~GETLOCATION~ Acc GETLOCATION ,X,Y,Len Acc - item to evaluate X - vertical location Y - horizontal location Len - field length Var.Types Required Direct Indirect Immediate X _x_ 0-1279 0-127 "xxx" Y _x_ " " " Len _x_ " " " 386 version 5. Get screen location and length of input command specified in accumulator. Sets condition else if not on screen. Sample: 1023getlocation,1024,1025,1026 W }!20GETPRINT 990304 21500201 ~GETPRINT~ GETPRINT Load the current printer device into the accumulator. Sample: getprint=1023 W }!20GETREF 990308 21500201 ~GETREF~ Acc GETREF Ref# Used to extract a reference number from a string of encoded reference numbers. Acc - location Ref# - the string of reference numbers Var.Types Required Direct Indirect Immediate Ref# _x_ 0-1279 0-127 ___ Put the location, divisible by three, into the accumulator. Sets condition flag, does not scan. Accumulator will be 0 if code not found. When using an indirect argument it must be preceded by a comma. Sample: 6getref15 Result: reference# at location 6 W }!20GETSTACK 001103 14500201 ~GETSTACK~ GETSTACK Temp Used to set the machine code stack pointer from a temporary variable. Temp - specify which temporary variable Var.Types Required Direct Indirect Immediate Temp _x_ 128-255 ___ 0-127 May use accumulator if variable is a string type. See also 'putstack'. Sample: getstack50 W }!20GETTIME 001103 15500201 ~GETTIME~ GETTIME Opt = D&T Opt=0 D&T is bits 0-4 #2 seconds, 5-10 minutes, 11-15 hours, 16-20 days 0-31, 21-24 Months, 25-31 Year-1980 1 v5 D&T is byte 1 1/100 seconds, 2 seconds, 3 minutes, 4 hours 2 v5 D&T is bios (00:4ch) timer tick D&T - date and time Var.Types Required Direct Indirect Immediate Opt _x_ ___ ___ 0-2 W }!20GETTIMEa 990304 21500201 syntax: gettime0 result in accumulator: bits 0- 4 Seconds in two-second increments bits 5-10 Minutes bits 11-15 Hours bits 16-20 Day 1-31 bits 21-24 Month 1-12 bits 25-31 Year minus 1980 386 version 5, gettime1: bits 0-7 hundredths of seconds bits 8-15 seconds bits 16-23 minutes bits 24-31 hours 386 version 5, gettime2 returns bios timer tick (from 00:46Ch) in accumulator. W }!20GOSCREEN 001103 09500201 ~GOSCREEN~ Scrn GOSCREEN Sets the current screen format number but does not change the offsets for it. Scrn - Screen character, or Ver 9 Memory pointer Sample: &"I"goscreen W }!20GOSUB 001103 15500201 ~GOSUB~ Gosub Number Executes a subroutine. Number - Specify format number of subroutine. Var.Type Required Direct Indirect Immediate Number _x_ ___ ___ xxx Uses 1-128 to specify format#. After performing the subroutine the Gosub command will return to the calling routine. Sample: gosub10 Result: Executes format number 10. W }!20GOSUBG 001103 14500201 ~GUSUBG~ Gosubg Number Executes a global subroutine. Number - Specify global format number of the subroutine. Uses 1-128 to specify format#. Var.Type Required Direct Indirect Immediate Number _x_ ___ ___ xxx Sample: gosubg10 Result: Executes global format number 10. W }!20GOSUBP 001103 18500201 ~GOSUBP~ Gosubp Number Executes a global subroutine with a format# greater than 127. Number: Specify global format number of the subroutine. Uses the format number minus 128,129-383 is used. Var.Type Required Direct Indirect Immediate Number _x_ ___ ___ xxx Unlike other one-byte arguments, this command does not use a temporary variable if the argument is greater than 127. Sample: gosubp10 Result: Executes global format number 138. W }!20GOSUBQ 001103 03500201 ~GOSUBQ~ use CallQ W }!20GOSUBX 001103 18500201 ~GOSUBX~ Gosubx Number Executes a local subroutine with a format# greater than 127. Number - Specify local format number of the subroutine. Uses the format number minus 128,129-383 is used. Var.Type Required Direct Indirect Immediate Number _x_ ___ ___ xxx Unlike other one-byte arguments, this command does not use a temporary variable if the argument is greater than 127. Sample: gosubp10 Result: Executes local format number 138. W }!20GOTO 001103 14500201 ~GOTO~ Goto Number Go to a math format. Number - Specify math format#, same as a Gosub except this does not return to the calling routine. Var.Type Required Direct Indirect Immediate Number _x_ ___ ___ xxx Sample: Goto19 Result: Goes to local math format# 10. W }!20GOTOG 001103 12500201 ~GOTOG~ Gotog Number Go to a global subroutine. Number - Specify a global subroutine. Var.Type Required Direct Indirect Immediate Number _x_ ___ ___ xxx Sample: Gotog10 Result: Goes to global format#10. W }!20GOTOP 001103 06500201 ~GOTOP~ GOTOP Number Go to a global subroutine with a format number greater than 127, uses argument same as 'gosubp'. W }!20GOTOQ 001103 17500201 ~GOTOQ~ GOTOQ Number Go to a global subroutine with a format number greater than 383. Number - subroutine to run Var.Type Required Direct Indirect Immediate Number _x_ ___ ___ "xxx" format number minus 384. Unlike other one-byte arguments, this command does not use a temporary variable if the argument is greater than 127. Sample: callq10 Result: Executes global format number 394. W }!20GOTOX 001103 06500201 ~GOTOX~ GOTOX Number Go to a local subroutine with a number greater than 127, uses argument same as 'gosubp'. W }!20HOG 000407 09500206 ~HOG~ HOG 386 version 5. Disable timeshare user switching at goto's, gosub's, jump, and call. Used with pointer load,loadnext,loadprev to insure that no other user can change data position between loads. Between hog and unhog the bell will ring continously. See also ~UNHOG~. W }!20IF 001103 18500201 ~IF~ If("Acc"eq"Var") Used in a comparison statement. Acc - item to compare Var - item to compare with Acc Var.Type Required Direct Indirect Immediate Var _x_ 0-1279 0-127 "xxx" Item to compare. A true statement returns a true condition flag, otherwise condition flag is set to false. Sample: if"a"eq"b":&"EQUAL"linput:else&"UNEQUAL": linput Result: UNEQUAL W }!20INKEY$ 001103 18500201 ~INKEY$~ Acc INKEY Reads a character from specified device. Acc - Accumulator must have device number. Var.Type Required Direct Indirect Immediate Arg Opt. ___ ___ "1" Character read in is stored in accumulator as an integer between 0 and 255. Condition is set true if character was read, set false if there is no character available. An optional argument of "1" bypasses the character conversion and provides access to the raw data. Sample: "2"inkey$ Result: character read from device W }!20INPORT 010704 13500201 ~INPORT~ INPORT, Port Reads an I/O port. Port - Specify port in argument. Var.Type Required Direct Indirect Immediate Port _x_ 0-1279 0-127 "xxx" 386 version 5.Returns with data in accumulator. Sample: inport,"888" see _386PORTS for port Addr Result:Gets data from port A of LPT1 in Acc. W }!20INSTR 990308 21500201 ~INSTR~ Acc INSTR ,String,Char,Ign Used to search for a pattern in a string. search for. First argument is string to search. The second argument (optional) is character location to start search. The third argument (optional) if greater than zero specifies ignore case difference. When the string is found the location is put in the accumulator and the condition is true, when it is not found the accumulator is zero and the condition is false. accumulator: A temp 30: 10 syntax: instr,1,1030 accumulator: location of first 'A' in 1 at location 10 or higher W }!20INTERRUPT 001103 03500201 :interrupt - Used to divide power in background math formats. W }!20JUMP 001103 19500201 :jump - relative jump. Argument is number of bytes divided by 2. 0-127 is forward xxx 2-byte commands. 128-255 is backwards xxx 2-byte commands Exp. jump0 is forward 1 2-byte command jump127 is forward 128 2-byte commands jump128 is backwards 127 2-byte commands jump255 jumps to itself, is an endless loop +"2" - 1 command =1005 - 1 command +"22" - 2 commands +"222" - 2 commands if1005 - 1 command &"2" - 1 command if1003eq"2" - 2 commands &"*"instr,1005 - 3 commands &"*"instr,1005,1030 - 4 commands &(30)left$155,127 - 3 commands Programer note: mark jump point with :: W }!20JUMP! 000512 21500201 :jump - continued Use decompiler and subtract value of command after jump from destination of jump/2 for forward jumps, or subtract difference between destination and jump/2 from 255 for reverse jumps. >A28 forward jump IF1010: EQ1200: JUMP11: ALWAYS: ;0 2 4 6 &1006: LENGTH: =1025: IF6: TAB153: ;8 10 12 14 16 <>1006: GOTOG81: IF1010: EQ"o": ;18 20 22 24 GOTOG82::IF1204: <=" ": GOSUB27: ;26 28 30 32 PRINT: ;34 > ;36 >A31 reverse jump =1030::+"1": `1030: &1030: DISPLAY ;0 2 4 6 8 IF1030: <"100000": JUMP246: ALWAYS ;10 12 20 22 &1030: LINPUT: ;24 26 > ;28 W }!20JUMPL 011012 09460201 JUMPL Arg Arg 897 to 1791 is 1 to 895 commands forward 0 to 895 is 896 to 1 commands backward Don't use " around the argument Branch0 to Branch31 will calculate offset to label0 to label 31 and then comile as Jumpl. W }!20KEYSUB 020105 19500201 ~KEYSUB~ Sub KEYSUB Specifies a local subroutine to be used for processing non-control keystrokes. Sub - routine to jump into when key is pressed. Variables- 1045 to 1049 may not be changed, Other variables must work with screen (Version 5 9/13/95 and later). The entered keystroke is in 1003 when the routine is entered. Window terminal need the chr in ACC & callq137 q127 checks for WinTerm. 1004 is changed. Sample: +"326"keysub:&"+"callq137 W }!20KOMPILE 011018 20550201 ~KOMPILE~ KOMPILE Arg Compiles math instructions. Var.Type Required Direct Indirect Immediate Arg _x_ ___ ___ 0-127 Arg - Operations of Kompile 0-compiles W screen,math and print formats 1-compiles & executes the cram in accumulator 2-execute formula variables (Next page) Arg 1 & 2 uses the buffer at +982+"3402" 3-Compiles W screen. Acc is memory pointer. Shift 1 50-open file and return handle 80-initilize scanner 90-open or close space in a format +/- length, Memory pointer 93-99-Preliminary graphic routines 127 XOR Function Kompile3 Compiling cram to buffer & executing example: callq73~1030+"4"~1031+"6"=1028 ;q74 GetBuffer,Cram Starts 4 byte up poke,1030,"0","22","0","22" ;poke format length Byte -4,-3 poke,1031,"0","16","0","18","0","1" ;poke Start format 0-1 LocCmd poke,1028,"0","1","0","0","0","1":+"6"`1028 ;2-3 GotoTable, poke,1028,"0","0","0","0","0","0":+"6"`1028 poke,1028,"0","0","0","2":+1031kompile3 ;no Formats 1 entry in GotoTable ............ Callq74 ;release buffer when done > W }!20KOMPILEa 011018 20550201 Kompile2 Variable A-Z (1228-1253,a-z (1254-1279) Commands + * / = & "x" ` # $ Abs instr Tilde ; if and or eq then else always <= >= <> < > Only the first 2 characters commands are used. Uses Kompile buffer, so it won't continue in immediate mode. A formula is a series of commands. Each command may perform an operation on the accumulator or on a variable. The accumulator, similar to that of an adding machine, is a temporary holding place for a calculated value. A variable is designated with a single upper- or lower-case letter. This makes a total of 52 available. A constant is a fixed number such as 36 or -2.75. An alpha-numeric string can be used for a constant if enclosed in quotes. Commands may be separated by spaces or commas (,) to make the formula more readable and avoid confusion. You may append a remark to a formula by using a semi- colon (;) as shown. W }!20LASTKEY$ 001103 12500201 Reads the last character received from device specified by the accumulator. The character is returned in the accumulator as an integer from 0 to 255. The character is not removed from the device buffer. This command is used to check for keystrokes that allow to abort a program, such as a report. The condition flag is set to true if a character was read; set to false and scans if no character is available. Leadin characters from terminals are not converted. This may be added in a future version. W }!20LEFT$ 001103 04500201 :left$ - Used to extract a string from the accumulator. Has two one-byte arguments, the first is displacement, the second is length. W }!20LENGTH 001103 07500201 length - Used to get the length of a string in the accumulator. Puts the length in the accumulator, no argument is required. accumulator: abc syntax: length accumulator: 3 W }!20LINEREJECT 001103 04500201 :linereject - Used in a SCAT load math format to stop the loading of a line of repeating fields. No argument is required. W }!20LINPUT 011031 21500201 :linput - Used to input a string from the console. Prints the accumulator on the bottom line of the screen, and uses the rest of the bottom line as an input field. Entered data is stored in the accumulator. Optional argument specifies length of input field, uses auto entry and forces entries to be upper case. accumulator: Enter record code syntax: linput,"6" accumulator: Entered data no longer than 6 characters, upper case. Variables changed in global & local 7 logic. 1003 command chr that is entered 1004, 1020-1023 use by global 7 1024-1025 used in W07 logic Other 7 logic may use different variables. Version 8, 11/9/98. Added 3 optional arguments: X & Y linput locations, and flag, 0-Neither 1 or 2 1-Auto entry, 2-Upper case, 3-Both 1 & 2 W }!20LOAD 001103 21500201 :load - Used to load a record from disk, uses one to three arguments, Version 5 & up may have 4th and version 9 may also have 5th and 6th arguments The accumulator contains the record code. The first argument is 1 or 2 file character. The next four arguments preceded by commas, The user number to load from (255 is default user), the number of fields to load or Ver5 & up memory pointer when used with the fourth argument, mask pointer, Ver7 & Up the 5th argument is Plus/minus number of tracks from current track, the 6th is the Offset of the desired data into the track accumulator: 2ESG001 syntax: load"I","3","2" result: Load '2ESG001' from 'I' file, user 3, 2 fields. 386 version 5. The fourth argument can be a load mask string. Any fields specified in the load mask are then loaded into the variables following the mask. Field 0 is always loaded. The load mask specifies which other fields to load. Each byte, >=48 (ascii 0), specifies a number of fields to skip. A '~' specifies the start of posted fields. A '+' specifies fields to load instead of skip. In this mode, the third argument (integer variable) is used as a pointer from which to start the load. This eliminates the need of doing a search on every execution of the 'load' command in sequential record access. The pointer mode can also be used with 'loadnext' and 'loadprev'. When the pointer is zero, a normal search is performed. The location of the current record is updated in 1024. When 'loadnext' or 'loadprev' reaches the end or beginning of a data block the condition flag is set to 'else' as if no more records exist in that file. It is then necessary to zero the pointer and execute the command again. This will perform a normal search, load another data block and update 1024. Be sure to use the 'hog' command to prevent other users from reusing the data block buffer while it is being accessed with a pointer. If a record is not found all fields are cleared except the first one (the code) and the condition is set to 'else'. January 11, 1995 Loading Repeating Fields Example: Load R file Ref, Customer Code, Item, Qty A header mask '0K' and repeat repeat mask '30,09' are needed. The header loads Ref# (Fld 0 always loaded), Customer Code ( Fld1 Skip 0), and the last one before the first repeat field, (fld 29 skip 27 Ascii K-48) Repeate mask specifies the start field for variable types (30,), Item field, (1st field always loaded), qty,(skip 0),and the last field before the next repeat line (skip 9) tells where to start the next line. The header mask is used with a loadnext, loadprev, or load with the pointer (third argument) zero. 1024 returns with a pointer to end of data loaded. Repeat uses the load with the pointer specifying the place in the buffer to load. When a 'load' command (not next or prev) is used with a pointer or number of fields to skip and there are no more fields to load all fields are cleared (including the first one) and the condition is set to 'else'. Bug must check 1023<1024 to insure that it quits properly Version 9 W }!20LOADNEXT 001103 03500201 :loadnext - Uses the same arguments as 'load'. Used to load the next record from disk. W }!20LOADPREV 001103 03500201 :loadprev - Used to load the previous record from disk, uses the same arguments as 'load'. W }!20LOCALBACKGROUND 001103 20550201 ~LOCALBACKGROUND~ Format# Localbackground Local Format# gets power after other user requirements Version 9.11 Power is given after other user needs are satisfied. 1002 is updated when character is typed. LOCALBACKGROUND with nothing in accumulator suspends operation until another character is entered. -"1"LOCALBACKGROUND quits executions. An INTERRUPT RETURN give the power slice to other users. The Cram must be short enough to allow character entry. LINPUT may not be used and follow SETLOC with REJECT. Varialble are shared with other screen cram. Variables- 1045 to 1049 may not be changed, Screen Printing: Use printscreen, printloc, Printfield Applications- ; screen polling scale port. W screen formating text. '254 screen changing lookup during entry W }!20LOCK 001103 08500201 ~LOCK~ LOCK Locks the printer for use by this user. Returns with the condition false if the printer is already locked by another user. No argument is required. W }!20MACRO 990225 21500201 :macro - Atari: Loads data into the keyboard buffer to emulate characters typed on the keyboard. Use a one-byte argument 0 to compile. 386 versions: One-byte argument, 0, 1, 3, or 4 0 - get macro buffer location, returns in accumulator. Condition 'then' if already recording a macro. 1 - Start executing a macro. Before using this command, CRAM must load the keystroke data into the macro buffer with 'poke'. Put length of keystroke data in accumulator. Macro1 returns to the input screen, not to CRAM. 3 - Start recording a macro. Keystrokes are saved in the macro buffer. 4 - Get data length, stop recording or execution of macro. Returns length of macro data in accumulator. CRAM can use 'peek' to get the keystroke data from the buffer. MACRO is in the following source: !386B55 *38605 *CMD05 *CQP05 *LAC05 W }!20MAPTO 000606 21700201 ~MAPTO~ MAPTO Arg (386 only) Map a port number (in accumulator) to a cram device (in one-byte argument). Var.Type Required Direct Indirect Immediate Arg _x_ ___ ___ 0-7 Arg - Listing of Device Functions 0-Default Printer Device 1-Modem Device on Base or Console Device on many terminals (This device uses a space compression protocol.) 2-Default Console Device 3-RS232 Workstation. Load and Save commands to user 64 use this. 4-RS232 Server. Runs in background on the base user only, to process file requests from remote serial users. 5-Temporary device. Use freely for temporary purposes. 6-Reserved for Future use. Used for Scales at CLP 7-Reserved for Future use. Note: See field help on the corresponding 't fields for ports typically used for each of these devices. The devices are by default mapped to the ports listed in 0-7 in the 't record for each user. On a base, typically 0-4 are set, on a terminal 0-2 are usually set. Port 5 is very temporary and is used for the devices that list a port# (cashdrawer, POS, scales, etc) on the 't screen in addition to hardwired ports in custom programming. W }!20MAPUSER 001103 03500201 :mapuser - (386 only) Map a user# (in accumulator) to a cram device (in one-byte argument). W }!20MEMLOAD 001103 02500201 :memload - This is an unused command. W }!20MEMPRINT 001103 11500201 length MEMPRINT,printdev,MemoryPtr - Print data from a memory location. Acc Length # of bytes to print Arg1 printdev Cram device. May not be DOS File Arg2 MemoryPtr Memory location to start print Note- !45 and !B54 variables (1003,1020-1025) will not hold if an Error when printing occurs. Used to send image data to network terminals. W }!20MERGECHANGE 011026 09630201 ~MERGECHANGE~ MERGECHANGE,ChangePtr,RecordPtr,BufferLen ChangePtr Pointer to buffer with changes from COMPAREREC Record1Ptr Pointer to Record to merge in disk format BufferLen Optional length of ChangePtr buffer When not specified, BufferLen is Diskbuffer Size MERGECHANGE merges changes from COMPAREREC into a disk file and Stores the merge record in a buffer at ChangePtr. If the codes do not match returns false and scans. See COMPAREREC W }!20MERGEREC 001103 10500201 :mergerec - Used to merge a disk record into current data file. Location of the record to merge must be in the accumulator. Comes back with accumulator set to end of record + 1. accumulator: location of record in memory (disk format) syntax: mergerec accumulator: end of record + 1 result: Record merged into current data file. W }!20MOD 001103 12500201 :mod - Divides the accumulator by the argument. The argument can be indirect, immediate or direct. It must be preceded by a comma. The remainder is put in the accumulator. If there is a second argument, (direct or indirect), the quotient is stored in that variable. accumulator: 150 syntax: mod,"4",1025 accumulator: 2 temp 25: 37 W }!20MOVE 001103 18500201 ~MOVE~ MOVE ,Len,Source,Dest Used to move blocks of memory. Len - the length Source - the source address Dest - the destination address Var.Type Required Direct Indirect Immediate Len _x_ 0-1279 (0)-(127) "xxx" Source _x_ " " " Dest _x_ " " " Ver 9 Translates locations in assembly code see Poke Sample: move,"18",1024,1025 1024: location of variable 10 1025: location of variable 13 Result: moves 10, 11, and 12 to 13, 14, and 15 W }!20OFFSET 001103 09500201 ~OFFSET~ Scrn OFFSET Sets the offsets to that of a different screen. Scrn - Screen chrs or Ver 9 memory pointer Sample: 1003offset W }!20ONJUMP 011012 07460201 Acc ONJUMP Arg,Arg,Arg,Arg,etc Acc is a 1 to number or args to jump to Arg 897 to 1791 is 1 to 895 commands forward 0 to 895 is 896 to 1 commands backward Don't use " around the argument W }!20OR 001103 09500201 :or - Used in comparison statements. Saves argument, clears the accumulator, sets the operation to or. May have direct, indirect, or immediate argument. when an or is encountered with the condition flag true no commands are executed untill after the next logical operator (<=,>=,eq,<,>,=) W }!20OUTPORT 010704 05500201 :outport - 386 version 5. Writes to an I/O port. Specify port in argument, data in accumulator. Parallel port LPT1 888, LPT2 632 See _386ports Example:+"0"Outport,"888" W }!20PEEK 001103 13500201 ~PEEK~ PEEK ,Val Puts the value of the memory location pointed to by the argument into the accumulator. Val - value of the memory location Var.Type Required Direct Indirect Immediate Val _x_ 0-1279 (0)-(127) "xxx" Ver 9 Translates locations in assembly code see Poke Sample: peek,1023 W }!20POINTER 001103 04500201 :point - Requires an argument (direct), puts the memory location of the variable in the accumulator. W }!20POKE 001103 20500201 POKE,StLoc,Data,Data Changes RAM. StLoc - the starting memory location Data - value to poke Var.Type Required Direct Indirect Immediate StLoc _x_ 0-1279 (0)-(127) "xxx" Data _x_ " " " Requires 2 to 20 arguments, The first argument is the starting location. This sets the memory locations to the values in the 2nd through 20th argument. First arg must be preceded by a comma if any argument is indirect or immediate. Sample: Poke,"231256","0","0" Ver 9 translates Assembly locations from 1047 460 byte @+1047-"45056",160@-"36864",390@"24576" W }!20POST 001103 03500201 :post - Halts foreground execution until all background posting is done, requires no argument. W }!20PRINT 001103 09500201 :print - Converts the accumulator to a string and outputs it to the print device. Also outputs a carriage return and line feed. The accumulator is cleared. Variable 1042 is decremented with each 'print' command. See also 'sprint' and 'printdev'. Note- !45 and !B54 variables (1003,1020-1025) will not hold if an Error when printing occurs. W }!20PRINTDEV 001103 19500201 :printdev - Sets the print device to the numerical value in the accumulator. When the print device is greater than 127 printing prints to a user on the net. The user number is print device minus 128. When the print device is greater than 255 printing will execute a global routine number print device minus 256. 'Sprint' uses global routine number print device minus 255. If the accumulator is a negative value, 'printdev' opens a file for printing to disk. An argument (preceded by a comma) is added to the 'printdev' command to specify the file name. A second, optional argument if 1, creates a new file or zeroes existing file, if 2, appends to existing file. If 'printdev' is used without the second argument to open a file and the file already exists, condition flag is set to false. W }!20PRINTFIELD 001103 07500201 :printfield - Prints the contents of the field specified by the argument, which may be immediate, direct, or indirect. Do not use in repeating fields. See also 'printloc'. syntax: printfield"6" W }!20PRINTLOC 001103 06500201 :printloc - Prints the contents of the field in a specified location on the screen. The argument may be immediate, direct, or indirect. See also 'to'. syntax: printloc1030 W }!20PRINTSCREEN 001103 03500201 :printscreen - Reprints all fields on the screen, does not require any arguments. W }!20PUTSTACK 001103 06500201 :putstack - Puts the value of the machine code stack pointer into a temporary variable. Requires a one-byte argument to specify which temporary. May use accumulator if variable type is integer. See also 'getstack'. W }!20QUIT 001103 04500201 :quit - Halts math format execution, no argument required. Automatically restores stack pointer so it may be used in subroutines. W }!20READ 010305 With Machine Control Syntax- File Buf Loc 'Read' TempArray,Filechr, Len, BufStart, Device, FileSec Data buffer loc location in buffer to start reading Temp Array Field 0 Cmd mask if null defaults to to cmd 4 Byte 1 - Load Command (Normally strips off leading & trailing spaces) * 0 goto cram format byte 2L & 3H cram format# 1 & 2 spare 3-6 Skip data of unpecified length, can skip # fields 3 Don't word search to next delimiters * 4 Do word search only, no 1 byte delimiter compares * 5 Search for word to a delimiters * 6 Search for word in length or to a delimiter 10 to 15 Temp Array Variables Commands * 10 Strip Leading & trailing spaces * 11 Don't strip spaces (doesn't work with string srch) readfilek * 11/18/96 12 Strip trailing spaces, but not leading * 11/18/96 13 Strip trailing N and space (for Plus1 files) Future 14 strip a leading and trailing " 16 to 47 Reserved for future expansion 48 to 63 File array Varialble commands * 48 File Array (strips spaces) 49 File array divide by 100 50 File array divide by 1000 51 BCD divided by 100 +64 Do not update if already loaded Byte 2 - Variable # relative the file begin or temp array Byte 3 - Length of Input in Bytes Search & Delimiter mask Temp Field 1. PTR relative to beginning Mask * Byte 0L&1H Cram ofset, Byte 2 1 byte delimiter PTR, Byte 3 1st 1byte cmd Byte 4 Cmd PTR @ srch end when < 64. >=64 it is a 1 byte command byte 5-6 Compare Chr &<>PTR if Capitalized compare not equal go to PTR Compare chr, <>PTR repeat till Cmd Ptr @ 4. Cmd Ptr,Compare chrs,<>PTR,Cmd repeat for additional searches * Srch Cmd Byte 0 F Field delimiter, set field advances to nxt cmd * 1 L Line Record delimiter, starts cram mask at beginning * 2 E Exits read command File delimiter * 3 S Skip leading & trailing Chr Usually a space * 4 I Ignore character * 5 T Toggle Use of 1 byte delimiters, Skip Character 6 Rx Replace with next chr 7 Sub 32 from chr Capitalize 8 to 19 reserved for future Commands * 20-63 Gxx +cram offset is format#, restarts Cmd mast Places DOS file location in 1020 * +64 Cmd and 1 byte delimiter is next byte Example search for Saw,Sale, pin. CR is the 1 byte feild delimiter 0 '024'001'026'064 ;0&1 Crm280,2 BytePTR,3 byte cmd at BytePTR 4 '011S'018A'004W'012'020 ;4 CmdPtr, 5,7,9 CmpChr,6,8,10 <>PTR,11 Cmd 12 '017L'004E'004'020 ;12 Ptr,13,15 Cmp,14,16 <>PTR, 17 Cmd goto300 18 '025P'026I'004N'004'020 ;18 End PTR,19,21,23 Cmp,10,22,24 <>PTR,25 Cmd 26 '064'013'000 ;26 1 byte field delimiter,27 CR,28 Terminator Desired features Cram rutine to compile search mask One byte low-high range search use all the time Search cmd that sets of another srch msk Delimeters search - For processing names Machine code Rutines- Uses stack for variables Readfile Dispatch command getfile3 BX file chr machine code filestart diskrw1a Machine code get data from disk from disk savacc Acc string data pointing into temp data, ebp variable pointer options Dispatch back into a local cram format EAX is Format# savrecrd bx file, dx user# Clear for default W }!20READ1 001103 :read - (Atari only) Reads a text file into the 'W' (word processor) file, stops at '@'. The first use must have an argument to specify the file name. May be direct or indirect and must be preceded by a comma if indirect. syntax first use: read1006 subsequent uses: read W }!20REBOOT 001103 03500201 :reboot - 386 version 5. Reboot the computer. No argument, no questions asked, never returns. W }!20RECORDREJECT 001103 04500201 :recordreject - Requires no argument. Used in Scat load math formats to reject an entire record from the loadup. W }!20REFERENCE 990225 21500201 :reference - Used to insert reference numbers in an encoded string, extract them, or find the location. Requires reference # in the accumulator and three arguments. The first argument (direct or indirect, preceded by a comma if any arguments are indirect or immediate) is the encoded string. Second and third arguments may be direct, indirect, or immediate. When the second argument is 0 it finds the location in the string. When it's positive, it inserts the reference number in the string. When it's negative, it deletes the reference number from the string. The accumulator, after returning, contains the location of the reference number in the string. The third argument is the maximum string length and is needed only if inserting (second argument is positive). This argument may not be greater than 8190. accumulator: 543 syntax: reference,(30),"1","600" result: inserts 543 in proper position in encoded string. Accumulator contains location the reference number was inserted W }!20REJECT 001103 10500201 :reject - Halts math format execution, goes back to input and rejects the entered string. Requires no argument. May be used at any level of subroutines. 386 versions, if argument is 1, load field with data in variable T02. 386 version 5, if argument is 2, load field with data in variable T02 and enter the field. W }!20RELEASE 001103 03500201 :release - Requires no argument. Unlocks the printer for use by other users. W }!20RESCREEN 001103 04500201 :rescreen - (Atari only) Requires no argument. Performs a reject and reprints entire screen contents. W }!20RETURN 001103 04500201 :return - Returns from a subroutine, requires no argument. A return is not needed at the end of a format. W }!20RIGHT$ 001103 04500201 :right$ - Works the same as 'left$', but starts from the right side of the string. Requires two one-byte arguments. W }!20RSCONSOLE 001103 09500201 :rsconsole - Sets a flag to input data from the RS-232 the same as from the keyboard. This flag is cleared whenever an $FF comes through the RS-232 port. An optional argument "64" preceded by a comma, sets the remote computer by the RS-232 port to respond to commands through the RS-232 port. This is used to operate a computer through a modem. W }!20SAVE 001103 19500201 ~SAVE~ Save (file,user#,savelast,postopt) Saves a record to disk. USES - 2BYTE ARGS ARG Required Direct Indirect Immediate #1 _x_ _x_ _x_ _x_ Any valid file character. #2 ___ _x_ _x_ _x_ 255 - Default user#, Otherwise specify actual network user#. (Cannot save to timeshare user#) #3 ___ _x_ _x_ _x_ 0 - Disable save last 1 - Enable save last #4 ___ _x_ _x_ _x_ 0 - Normal posting, 1 - No edit post 2 - No post, 3 - Edit post only sample save"R","255","0","1" W }!20SCAT 001103 13500201 :scat - Initializes a SCAT sorted loadup in background, requires a one-byte argument for the format number to execute in background. Condition set to false if report is already running. syntax: scat9 See also 'sload' and the section entitled 'SCAT Formats'. SCAT9 !75 !75N !SHD75 SCAT11 WSCATCOUNT W }!20SCREENGOSUB 990531 21500201 ~SCREENGOSUB~ SCREENGOSUB Scrn ,For# Execute a subroutine in a different screen. Scrn - screen to go to For# - subroutines format# Var.Type Required Direct Indirect Immediate Scrn _x_ 0-1279 (0)-(127) ___ For# _x_ " " " 386 version 5. Subsequent arguments are decoded into variables 1023 and following. Version 9: if the first argument is 3 characters, it is converted to the character string of the numeric value of the 3 characters. Example: "254" is converted to chr$(254). For Windowing screens (see '25402) "254","15" Linputs in centering Box acc screengosub,"254","8","len","1 auto entry +2 Upper, 3 auto entry & upper. Ver 9.13 allow a memory pointer over 10,000 to a screen format Sample: &"Enter Name"screengosub"256","8","2" W }!20SCREENHEIGHT 001103 04500201 :screenheight - 386 version 5. Set visible portion of screen. Requires 2 arguments for vertical start and end positions. W }!20SCREENOFFSET 001103 04500201 :screenoffset - 386 version 5. Set offset for displaying screen fields and labels. Requires 2 arguments for X (horizontal), Y (vertical). W }!20SCREENWIDTH 001103 04500201 :screenwidth - 386 version 5. Set visible portion of screen. Requires 2 arguments for horizontal start and end positions. W }!20SETFIELD 001103 05500201 :setfield - Sets the field number to return to after the math function. The argument is in the accumulator. Do not use in repeating fields. See also 'setloc'. W }!20SETFORMAT 001103 12500201 ~SETFORMAT~ Scrn SETFORMAT Set screen format for local goto's, gosub's, showscreen, etc. Scrn - Screen Character or Ver 9 memory pointer Sets 974 same as setscreen. Does not change offsets. 386 version 5. Sample: &"I"setformat W }!20SETKEY 001103 05520201 :setkey - Used from global or local 7 format to change control key action on commands machine code executes. For cram executed commands 1003 is set and gotog7 Put key code in accumulator as 1 byte string. W }!20SETLOC 001103 03500201 :setloc - Sets the screen location to go to after math function. The argument is in the accumulator. W }!20SETSCREEN 001103 11500201 ~SETSCREEN~ ScrnSETSCREEN Halts math operation, executes input screen. Scrn - input screen specified This changes the input format and the offsets. Ver 9.13 Scrn can be a memory ptr over 10,000 Sample: &"a"setscreen W }!20SETTIME 001103 18500201 :settime - Sets the computer's time and date according to the data in the accumulator. Uses same format as 'gettime0'. Requires a one-byte argument (not currently used) to compile. syntax: settime0 SETTIME is in the following source: *08 *12 *38605 *CMD05 *LAC05 *VAF05 *38608 *38612 *CQP12 *AMIDI *ATIME *COP *G/L W }!20SHOWSCREEN 001103 11500201 :showscreen - Prints screen labels on the screen, requires a one-byte argument for format number. If accumulator is positive number, don't clear screen. Put label printing at a lower priority in the power divider (after global 9 field instead of before. If accumulator is negative number, don't clear the screen. W }!20SHOWSCREENG 001103 03500201 :showscreeng - Same as 'showscreen' but uses global formats. W }!20SLOAD 001103 14500201 :sload - Loads data into SCAT memory for sorted reports. The starting record number is in the accumulator. First argument is a one-byte argument to specify the SCAT load format number. Second (optional) argument is the ending record number. Third (optional) argument is an alternate file number, used to load data from a different file than the one for which the format is compiled. accumulator: start# syntax: sload2,1025,1006 See also 'scat' and the section entitled 'SCAT Formats'. W }!20SORTQUIT 001103 04500201 :sortquit - Stops the operation of a background format or a sorted load. Use only in the background user. W }!20SPEED 001103 06500201 :speed - (Atari only) Used to slow down screen output and checking of the console for demonstrations. The number of delay loops is in the accumulator. The higher the number the slower the speed. W }!20SPRINT 001103 08500201 :sprint - Works the same as print but does not output a carriage return and line feed. See also 'print' and 'printdev'. Note- !45 and !B54 variables (1003,1020-1025) will not hold if an Error when printing occurs. W }!20SPROG 001103 06500201 :sprog - Saves the program to disk, requires one argument preceded by a comma (direct, or indirect) to specify the filename. File must already exist. syntax: sprog,1 W }!20STOP 001103 06500201 :stop - (Atari only) Stops the execution of a math format temporarily, goes into a linput to input any math commands to do in immediate mode. Continues execution after you hit with no other characters in the linput. W }!20SUM 001005 21500201 :sum - Requires two arguments (direct, indirect). The first argument points to the first variable in the array, the second argument points to the last variable. This command gets the sum of the variables and puts it in the accumulator. Arguments must be preceded by a comma. syntax: sum,23,25 result: adds variables 23 - 25 and stores result in the accumulator W }!20SWAP 001103 04500201 :swap - Requires two arguments preceded by a comma (direct or indirect). These arguments must be the same type. Swaps contents of variables. W }!20SYSTEMTRAP 001103 05500201 :Systemtrap,Trp#,Arg1,Arg2,Arg3,Arg4,Arg5 Calls Palm OS API. May have up to 5 arguments A negative argument is used for 16 bits See Palm OS Reference for API Documentation. W }!20TAB 001103 08500201 :tab - Requires a one-byte argument, forces th1 accumulator to be a specified length by adding spaces or deleting characters. accumulator: This is a test of 'tab' syntax: tab9 accumulator: This is a W }!20TERMINAL 001103 04500201 :terminal - Requires no argument, starts termina1 emulation mode. Use Control Home (or ? on 386 version) to exit terminal emulation. W }!20THEN 001103 05500201 :then - Used in comparison statements, execution begins here if condition is true, otherwise scans for 'if', 'or', 'always', or 'else'. Requires no argument. W }!20TIFF 001103 08500201 :tiff - Display tiff image data. The accumulator contains a pointer to tiff data in memory. There are 9 arguments: number of rows, video offset (from screen beginning), scale, width, compression type, vertical start, horizontal start, horizontal end, video adder,group 4 buffer start, group 4 buffer end. For more info see '25438 and '25441. W }!20TIMER 001103 12500201 :timer - 386 version 5. Set a timer, accumulator specifies number of timer ticks (1/18th second). T00 - T29 are swapped out, error routine (!45) is called with error number 47. Timer is automatically cleared. Optional: This command can also be used to set the timer in another time-share user. Add an argument to specify the user number. Use 0 for the base time-share user and the logical user number for other users. W }!20TO 001103 04500201 :to - May be used in 'printloc' to print more than one location. Use direct, indirect, or immediate argument to specify last field. W }!20TRACE 001103 15500201 trace - Starts tracing of all math commands that are executed. Atari: while tracing you may use 0-9 on the keyboard to change the speed of the trace or any other key to halt the trace and input math commands. 386: use 1 - 7 to set trace speed, 8 to stop, 9 to abort CRAM, 0 to turn off tracing. On 386 versions, set accumulator to 0 - 9 to get same functions when starting trace. Caution: When using 'trace' during dual output (remote) modem access, the 0 - 9 keys will work only from the local keyboard. Use rsconsole,"64":+"1"console to disable dual output and communicate via the modem. W }!20UNHOG 001103 03500201 :unhog - 386 version 5. Re-enable timeshare switching. See hog. W }!20UNTRACE 001103 02500201 :untrace - Stops the tracing of math commands. W }!20USER 990531 Proposed function Machine code And Cram dispatch Should use internal variables so var Variable types be defined at beginning of Cram or assembly rutine use a ,"xxxxx" for a cram rutine Chr 1 Accumulator type Ascii, Number, Integer, Money, 4 place, 6 place 2&Up Argument type Pointer,String, Two byte Command Dispatch screen, User dispatch screen, and Goto screen. Need indirect variables to work on the screen W }!20WAITDISPLAY 001103 08500201 :waitdisplay - 386 version 5. Halt CRAM execution until screen printing (fields and labels) is done. In Versions prior to V9.29 Variable used in !45 and !B54 will not hold if an Error printing to the Console occurs. V9.29 ignores console printing errors. W }!20ZERO 001103 05500201 :zero Clears an array of variables. Requires on1 or two arguments preceded by commas, (direct or indirect). The start variable is first argument, the end variable is in the second argument. W }!25 990225 21500201 :25 CRAM Commands - Math Operators + Plus, adds argument to accumulator. - Minus, substracts argument from accumulator. * Multiplication, multiplies accumulator by argument. / Divide, divides accumulator by argument. & Concatenate, converts accumulator to string, concatenates argument to accumulator. = Equals. Saves accumulator in argument, clears the accumulator. ~ Saves accumulator in argument without clearing the accumulator. Do not use with a string longer than 4 characters. ` Tally. Add accumulator to argument. In comparison statements you may use >=, <>, >, <=, <, or eq. W }!30 990308 21500201 Print Formats Print formats are used with the 'formprint' command to format data for printing. Input screens also use print formats to display screen labels. Brackets ([ and ]) are used to designate field lengths. Example: [ 0 ] This means 'print field 0 inside these brackets'. Variable locations are calculated using current offsets. Any characters outside brackets are printed as they appear on the screen. Example: Customer # [ 1 ] This would print "Customer # " followed by field 1. Field numbers may be preceded by a modifier. Example: [ R10 ] This would print field 10 right justified with in the brackets. Modifiers available are: W }!30a 990308 21500201 Syntax Number Description C 3 Center E 6 Extend pack L 2 Left justify N 4 Name (reverse first and last name seperated by commas) O 7 Overwrite P 8 Printer control code (does not count as spaces) R 1 Right justify Z 5 Zero (prints even if zero) Use 'formprint' with a one-byte argument: 0 - print 4 - print '=' 1 - print and add to total 5 - not used 2 - print total 6 - add only 3 - print '-' 7 - extract totals Totals are stored at variables 1199 and below. Types and values may be changed in these variables. W }!30b 990308 21500201 Command Object Coding: Byte0: bits 0-5 most significant bits of variable 6 immediate 7 extended command bits 3-6 length character (immediate) command #, see table above (extended) bit 7 line feed Byte 1: variable length (extended command) Bytes 2 & 3: variable (extended commands only) Characters for immediate commands: # * + - . < = > X _ x SP W }!35 011030 :35 SCAT (Sort, Combine, And Type) formats are used to load and sort data for printing sorted reports or for posting purposes. Input uses >A math, >P print, >I Screen: File compiler uses >V screen >L S or P (Scat or Post), load format#, file code, header logic (optional), line logic (optional) >N Fields to negate (for posting deleted records) >F Fields to load that are not used elsewhere >T Specifies types of temporaries, will start after loaded fields. >K create key #, N or C (New or Continued, default is continued) >C field#, low limit, high limit, operation (OS/OK/IS/IK) O - skip if outside limits I - skip if inside limits S - standard skip (quit load if field number is 0, skip record if header field, skip key if repeating field) K - skip key Default operation is 'OS'. Limits are temporary variables, or immediate data in quotes. >S Sort mask#, field#, field#, ... Defines data to load into sort key. Field modifiers available are: R - Reverse sort high to low S - sort low to high F - use first L - substitute low* H - substitute high* G - get last (replace)* D - combine, delete key if all 'D' fields are zero* DE used for Indexing C - combine* P - combine & delete, limits -1 to 1* PE used in repeat Fld for PtrPost * - fixed numeric or dates only Alternate filed designators: T - temporary field, followed by number E - post edit flag # - repeating line number >R number of header fields, number of repeating fields. The current line number can be accessed in variable 1261 from the line logic (cram). Commands >C, >F, >K, >N, >R and >T are optional. >K must be followed by >C or >S. >C must be followed by >C or >S. >K, >C, and >S may repeat. The position of >R determines the start of repeating keys. There may be continued keys, but no new keys, before the >R. Immediate string within quotes may be used instead of field numbers in compares and keys. These may contain non-ascii characters, specified by apostrophe (') followed by 3 digits to specify the value. See also 'scat' and 'sload' the section entitled 'CRAM Commands'.Entry And Screen Printing Variables And Registers (Atari) W }!50 980824 :50 Report Generator Variables INTEGERS 1020-1027 Temporary valiables May be used by commands to store arguments 1028 pointer to field 0, or level that changed if SCAT, or field# if T88eq"84" 1029 character size (1 to 12) Prints control characters at 941+T29 1030 flag 0=80Col,1=wide or condensed, 2=wide & condensed,+2 Scrn Pnt No Message 1031 # columns, x100 # of line between underline 1032 line spacing (6/8) 1033 # lines / page 1034 # lines needed on paper for record 1035 # lines needed for each repeating line, or variable type for SCAT totals 1036 pointer to first repeating field, or pointer to string of codes 1037 # repeat fields/line, or # of non-tot fields if SCAT,a46 checks to set 1038 1038 #repeating lines- Auto Calculates in !a46, or # of totals if SCAT 1039 page # 1040 Last valid line pointer, Last 3-byte code in ref String, Max# Scat Levels 1041 # Extra lines, 1-4 Time in Setup logic, R screen Flag or format# 1042 # lines before new page formprint & print Decrements this variable 1043 Set when entering data- numeric Keyboard code for control & esc Keys 1044 Cursor position in the entry field 1045 LOCCOMND pointer 1046 Repeat inp command Ptr 0 if not on repeat 1047 Start of the entry format set only with the setscreen command 1048 Location of the next input command 1049 Location of the variable to store entered data 1080 setup logic # or 0 to get name for report selection screen 1081 column#, starting with 1 (0 means don't put string into columns) 1082 line#, starting with 0 1083 line pointer 1084 pointer to repeating fields,position in string of codes,or SCAT level# 1085 stack pointer for top level get next record, or Scat header dispatch !65 1086 stack pointer for logic level skip line printing, or Scat line dispatch !66 1087 used to save 1086 from heading logic 1088 Rep format# 95 norm,1 lev,117 key,2 bgr,79 single,166 Word list (Next Page) 1089 Longterm available for Report Programer use 1100-1103 used on the r screen 1261 Line# Scat load up, 0 header, 1-XX Repeat Line STRINGS 1003 Temporary- Alt or Cntrl Character from keyboard entry, Print on Word files 1004 Used for chr$ 13 in !07 1005 Temporary variable,used by macro logic 1006 Longterm available for report programer use 1007 Flag F No heading with Form feed, N No Heading & formfeed. (Next Page) 1008 flag for screen or printer output (S/P) or net user 0-9 1009 flag for normal or scat (S), or (B) for backward pointer 1010 file code 1011 report name 1012 starting # 1013 ending # 1014 report date (chars.1-40), time (chars.41+) 1015 subfile for PTRs, or lowest SCAT level subfile, null flag for repeat lines 1016 SCAT load format # (setup logic), or flag to skip SCAT total (total logic) Word File for repeat lines 1017 !166 for multiple copies, Start Scat load rec, Screen Chr for function Temporary in dispatching Help screens 1018 Used in global Temp,End Scat load,Save Access Code,help-screens>ascii 128 1019 Entry Screen code- !07 Clears it when from F10 Screen 1090 Date flag C,F 2 dates or D,G 4 Dates. G,F Force to be start & end periods H acts like G but restricts dates, use for posting I acts like C but defaults Start to first of year 1090-1198 set to string when entering report generator, used to get report title 1101-1198 Used by report generator to columnize data 1199-1279 Temporaries may be used in reports and word spreadsheet calculation DATES 1075 Operator Entry Start Date 1076 Operator Entry End Date 1077 report date LONG-TERM 977 submenu screen code 978 print flag W }!502 980824 :502 1041 Number of extra lines need for printing, Set to 0 except for footnote logic Positive number allows more lines and negative less lines per page Set to 1-4 set by report generator to indicate which pass in setup logic 1- Getting name for report screen, 2- Starting the report For scat reports 3- Before loadup, 4 after loadup & before printing Option or Flags set in Setup logic to designate options on the r screen and/or scat loadup. Dates normally default to beginning of year (1078), beginning or month (1075) and end of the month (1076 & 1079). If forground report the start & end number are loaded but not in scat. 7 use 1012 and 1013 to limit scat loadup as ascii Codes Rep 630,9ROD03 8 Load alternate file with file character in 1010 forces start at null and end at 999999 integer code, Rep 419 9 Start (1012)/End (1013) are integer code, Doesn't change Dates 1075-1079 Rep 5MES26,9CMH09 10 Start (1012)/End (1013) are integer code, Sets dates as normal Rep 334 23 Set 1075 same as report date, set 1076 to 6 days after 1075 24 Set dates to the same as report Dates 5MES18 26 Set 1075 to last date of previous month 27 Set 1075 to null date 28 Set 1079 to null date, 1075 to beginning of the century 511 29 Set 1075 to 1 year before 1076 30 HUE set 1076 to 2 years earlier 30-34 ROD get End of month ahead 1 to 4 months Scat load flag used in report !B95 to save scat loadup for loading multiple dir 1088 Report format# that loads the next record to process 1- Scat Background Report (g121) get next key and check level change. 2- Background (BGR) Report but uses normal logic (95) for loading records 79- Single record Don't try loading another. Goes directly to total logic. 84- Indexed report, put field# in T28 95- Normal logic loads the next or when a B in 1009 the previous record 117- Get next key and load 1010 record from 1094 5th key 166- Use a list on the Word file, Access by a ' at the start# 1007 Heading Flag- Null Standard Heading, F No Heading but Formfeed N No Heading and Form Feed. Used in !70 temporarily before setup logic. report generator documentation W }!504 980824 :504 Report Generator Routines ------------------------- 70. Load report names & setup submenu (print instead if print flag set) 73. Process menu selection & goto report preparation 75. Print Report 79. End of report 80. Do logic specified by accumulator 81. Skip printing record 82. Skip printing line 83. Check if record will fit on page 84. 85. Check if # lines in accumulator +1 will fit on page 86. Find last valid repeating line & # of lines 88. Start new page 89. Printer initialization 90. Print columnar page 92. Print footnote 93. Form feed or clear screen, only if standard heading 94. Print line or add to columnar report 95. Load next record 96. Get next repeating line 98. Initialization for 96 99. Exit 100. Form feed 101. Clear screen 102. Create string of hyphens 103. Print page or column heading 104. String up city, state zip-ext 105. Format 8-char. date 106. Loop to pad column before starting new one 107. Change variable types 108. Print string centered in 80 columns 109. Print # of line feeds in T42 113. Set variable types for SCAT totals 114. Get variable types from T110-T129 116. Set T79 to first day of month in T77 117. Get SCAT key and load record (substitute for 95) 118. Convert date string to YYYYMM string 119. Convert 3-byte code to integer P18 Screen Dispatched ecr##cr##.... e-Entry Chr,c-code in 1003,r-Report Chr ## Screen Report # ,+50 hardcopy printer,A-E Output Specified in 1008 P39 Rolls Standerd fields, 1 month ahead of 1077, uses 1089 for flag W }!506 980824 :506 Dispatching Report with Alt Keys when 1003 has Alt Code. gosubp18 with acc set, Acc 'SKRNNKRNN...' S -Screen to return to K -Alt Key in 1003 to start the report R -Report screen # NN-Report # +0 screen Print, +50 local printer 1008 (S,P,0-9) Specify printer when A-E (0-4) 10's digit W }!508 980824 :508 Report uses 6 routines Start at Report # * 6 +8 >a +0 Setup logic Executed up to 4 times at the beginning of reports ; Get report name for Report Menu ; Set variables for report ; Scat only Allow processing after date entry ; In background before printing sorted data if1080>"0" ;1080>0 Means computer if 0 Means only getting Name &"B"=1010 ;1010 if file character to process always:&"Report Name" ;Report name must be last in the format >a +1 Heading Executes once per page &"HEADING" ;Heading in the accumulator >a +2 Record Logic ;Executes once per Record &200 ;Line to print is left in accumulator >a +3 Line logic ;Used only for repeating field reports &220 ; only active when 1036 > 0 not used otherwise >a +4 Footnote or when 1036 >"0" it Record total gotog82 >a +5 Rport total Logic Executes once at end of report Entry points gotog82 ;Do not print gotog81 ;skip record & get next one W }!55 980824 :55 Appendix C - Control Key Codes Control The following section is for functions keys, Keys alternate keys, etc. In Cram format 7, the code is in T03. From inkey$ 128 is added. On serial 0 Ctrl 2 interfaces is sent before the code. 1 A 2 B 3 C A0 32 - 47 Shift F1 - F16 4 D B0 48 - Alternate 0 DB 91 5 E B1 49 1 DC 92 6 F B2 50 2 DD 93 - Ctrl M * 7 G B3 51 3 DE 94 - Shift Help ** 8 H B4 52 4 DF 95 - Home 9 I B5 53 5 E0 96 - Insert 10 J B6 54 6 E1 97 - Undo * 11 K B7 55 7 E2 98 - Help ** 12 L B8 56 8 E3 99 - Up Arrow 13 M B9 57 9 E4 100 - Left Arrow 14 N BA 58 - E5 101 - Right Arrow 15 O BB 59 lead-in, 60 unused E6 102 - Down Arrow 16 P BD 61 - Alternate = E7 103 - Shift Up 17 Q 62 - 63 unused E8 104 - Shift Left 18 R 64 - rsrvd for key files E9 105 - Shift Right 19 S C1 65 - Alternate A EA 106 - Shift Down 20 T C2 66 B EB 107 - F1 21 U C3 67 C EC 108 - F2 22 V C4 68 D ED 109 - F3 23 W C5 69 E EE 110 - F4 24 X C6 70 F EF 111 - F5 25 Y C7 71 G F0 112 - F6 26 Z C8 72 H F1 113 - F7 27 [ C9 73 I F2 114 - F8 28 \ *** CA 74 J F3 115 - F9 29 ] CB 75 K F4 116 - F10 30 6 CC 76 L F5 117 - F11 31 - CD 77 M F6 118 - F12 CE 78 N F7 119 - F13 32 - 127 CF 79 O F8 120 - F14 corresponding D0 80 P F9 121 - F15 character D1 81 Q FA 122 - F16 D2 82 R FB 123 - Page Up D3 83 S FC 124 - Page Down D4 84 T FD 125 - End D5 85 U FE 126 D6 86 V FF 127 - Delete D7 87 W D8 88 X D9 89 Y DA 90 Z * - Not available on terminals ** - Atari ST only ***- Alternate escape code for terminals, do not use W }!55D 980824 :55D Appendix D - ASCII Codes 32 - Space 64 - @ 96 - ` 33 - ! 65 - A 97 - a 34 - " 66 - B 98 - b File: R:\ABCDOCS\CRAM.TXT continued continued continued continued continued continued continued continued continued continued continued continued continued continued continued 35 - # 67 - C 99 - c 36 - $ 68 - D 100 - d 37 - % 69 - E 101 - e 38 - & 70 - F 102 - f 39 - ' 71 - G 103 - g 40 - ( 72 - H 104 - h 41 - ) 73 - I 105 - i 42 - * 74 - J 106 - j 43 - + 75 - K 107 - k 44 - , 76 - L 108 - l 45 - - 77 - M 109 - m 46 - . 78 - N 110 - n 47 - / 79 - O 111 - o 48 - 0 80 - P 112 - p 49 - 1 81 - Q 113 - q 50 - 2 82 - R 114 - r 51 - 3 83 - S 115 - s 52 - 4 84 - T 116 - t 53 - 5 85 - U 117 - u 54 - 6 86 - V 118 - v 55 - 7 87 - W 119 - w 56 - 8 88 - X 120 - x 57 - 9 89 - Y 121 - y 58 - : 90 - Z 122 - z 59 - ; 91 - [ 123 - { 60 - < 92 - \ 124 - | 61 - = 93 - ] 125 - } 62 - > 94 - ^ 126 - ~ 63 - ? 95 - _ 127 - Delete W }!55K 011012 ABC Global Key Functions To: Clair,Robert,Andrew,Malon,Tim }!55K Keys that changed (D,F,K,J,U) Flag show Cmd for fnction & Press Enter for New Other that aren't used display new command Key Move Reports to F11 report menu, F4 Should Drop Macro Menu Function Shift Function F1 Field Help Screen Help F2 Index Forward F3 Index Backward Calculator F4 Macro Start/End Macro F5 Close lookup Exit All Lookups F6 Lookup Alternate Lookup F7 Load Previous F8 Load Next F9 Save Delete Record/AuditTrailUndo F10 Selection Screen Drop Down Menu F11 Reports F12 Calculator Insert Insert/Overstrike Alt-V Untrace Window Function PageUp Upscreen UpScreen PageDn DownScreen DownScreen Home BegLine BegLine End EndLine EndLine Shift+CsrMove Highlight Ctrl ABCFunction ABCPrior Window Funct ABC Change Home ExitTerminalMode TopRepeat ABc Shift Up End BotRepeat ABC Shift Down Del DeleteWord ABC Space Enter A AddLine B PrevByCust/Item AuditTrailUndo B to Shift F9 & Added Msg C CompileCode Copy Text D Duplicate DownLine Remove Down Line E Erase F NextByCust/Item PhoneDialing F to T G Goto Loc/Field H Backspace I Tab Tab J Journal Jump line J to G K Journal Cram Compile K to V L Journal M Mail Merge N New Record Load Next New Record Use F8 to Load Next O Open Subfile Screen Open P Print LoadPrev Print Use F7 to load Previous Q Reserved for Query R (W) Run S Save ShipToUPS Save S to U T Telephone U UPS UpLine Remove Up Line V Paste W PlaceOnWordList (W) compile X Cut Y Compile (W) Set Colors Change Crtl-Y on W screen Z UndoPreviousField Undo Add Undo Previous Field W }!55L 020520 ;keystroke logic change for version 11 16 bit var-locchange 'validate' command to execute field option from cram (global 7) set flag so cram knows it is executing a 'validate' reject checks flag, if not same inputloc, do a 'return' if same, process reject validate enters after 'getfield' in 'nosubfi1b' return in 'editinpt' W }!70 011031 Setting Up Help screen Help Coding |snn One line help s Screen character ! is prograning Documentation nn Field# based on screen offset 100 A00,200 B00, etc }snn Screen & Field Help & Menus s Screen character ! is prograning Documentation nn Same as above or }s# Reserved for new file structure }s( Drop Down Menu File,Load,Edit,Option,View,Macro,Print,Tutor,Help }s* Screen Help }s+cnn Tutor c is Tutor code. (Enter New Customer, Change Customer,etc) nn Same as nn above or [ Linput Message [code] }s+cnn~x x 2nd chr of '254 59 var Lookup window for field x>" " indexing }s[mm F1 Message Box Help mm is 2&up of mesage Id ? }s[+mm Default Tutor Message Help Example message code is [C01] F1 Message Help is }C[C01 Tutor Default Help }C[+C01 When Screen is C & Tutor Code x Tutor Help is }C+x[C01 { Reserve for Custom Help W }!80 000327 Window Terminal Between DOS & Window Terminal Macro- May not start, Pause or End on a Partial Field Must be acessed through the Drop Down Macro Menu Macro must be Recorded on DOS terminal p W }!81 001103 Palm Documentation CrawRecInfo Cmd Esc,R,Port#,TotLen,Ordinal#,StackLen,StackData,CraWRecInfo Err.l SyncDeleteRec (CrawRecInfoPtr) Err.l SyncDeleteResourseRec (CrawRecInfoPtr) Err.l SyncReadNextModifiedRec (CrawRecInfoPtr) Err.l SyncReadNextModifiedRecInCategory (CrawRecInfoPtr) Err.l SyncReadNextRecInCategory (CrawRecInfoPtr) Err.l SyncReadRecordById (CrawRecInfoPtr) Err.l SyncReadRecordByIndex (CrawRecInfoPtr) Err.l SyncWriteRecord (CrawRecInfoPtr) Err.l SyncWriteResourseRec (CrawRecInfoPtr) Protocal Esc,Command,Port#,TotLen,RetLen+Ptr,Ordinal#,Len,DllName,StackLn,Buffer Bytes 1 1 1 2 2 2 2 1 x 1 Commands: Modified, Next, Write, Delete Open, Close, Purge all rec, ResetSyncFlags, Log error Bytes Header Palm CrawRecordInfro 1 File handle-Open data base to use (11/00 only allowed 1) 4 Record ID Is assinged by Palm, New record is 0 and returns with ID 2 Record Index Optional way to access record, May change between syncs 1 Attributes Hbit 7 deleted, 6 Dirty, 5-Busy, 4 secret, 3 archive, 0-2 Spare 1 bits 7-4 Category ID 3-0 spare 1 Spare 4 Conduit Id 4 record length (Intel) Can be larger than the buffer 2 Buffer size (Intel) 4 Pointer to record location (Intel) 4 Spare Palm Address Book Data Structure 4 Options ????? display of Name, Company, and Phone Number for list 4 Field Mask Each Lbit 0-31 (Motorola) indicate missing fields in data stream 1 Pointer from itself to Company Name x to record length pack ascii field data with null (chr0) terminator Fields Palm Address ABC 0 Last Name 1 if (,) set last name, first Else in company 1 First Name 2 Company 2 if no (,) in 1, else 1 if comms set last,first name 3 Work Phone # 7 4 Home Phone # 27 5 Fax # 34 6 Other Phone # 24 Contact Person 7 E-Mail 6 8 Address 2 9 City Z1 10 State Z2 11 Zipcode 4 12 Country Z3 13 Title 43 14 Custom 1 20 15 Custom 2 21 16 Custom 3 22 17 custom 4 23 18 Note 1st page Alt K screen Category (0-15) W }!81a 010709 Category for customer,vendor,name,Employee,Job,+10 others New Device and slow sync 1- Hog add 1 to sync# unhog 2- Archive and delete all in category not in index 3 Purge the device 4- Save whole list 5- Save record Id for device 6- Update palm sync# Slow Sync 1- Hog add 1 to sync# unhog 2- Get next record 3- Compare if record is modifies 4- Proceed with fast sync 3 Fast Sync Implemented 12/00 1 Hog add 2 to sync# Record (} !,Field2) unhog set sync to CurrentSync-1 Sync transfers to other Palm devices, sync-1 also writes back to palm 2 Read modified records from device a New record Generate code & Indexes, and update set PC&Palm to Sync b Changed also on PC ifPC sync equal Palm then palm updated it if not then set PC to sync-1 to write to palm & Palm to sync, Check for a duplicate Record by adding ! to PalmID if none Duplicate record set PalmToABCIndex with an ! after the PalmID and ABCtoPalmIndex with a ! before the ABCFileCode. Set PC&Palm to Sync-1 c No change on PC update record set PC&PALM to sync d Delete - set PC to Sync-1 Write to Palm (Palm may not delete) 4 From 0 file Index delete records on palm (user deleted on Desktop) 5. write records from previous sync to current sync-2 to palm 7 purge delete records on device 8 reset sync flag on Device 9 Place current sync on palm pilot record on desktop Operation All ABC changes are sent to the Palm Deletions may only be made in ABC (Palm May not Delete PC Rec) Changes on Palm Change ABC. if ABC also changed it, PalmRec is Duplicated if Palm is Sync with another PC, Changes on the Palm are lost to ABC Field data may not be more than 256 bytes Filter with a P in print code ABC Palm Hot Sync Files ABCFile 0 Field0 Field1 Sync# ABC Sync# } ! Current Sync# PalmUserName }Space,FullPalmUserName ABCNameName(!! to }}) PalmToABCIndex }ABCNameCode(2),PalmID(9) ABCFileCode Prior Sync# When PC & Palm Change Duplicate adds a ! to PalmID ABCToPalmIndex }ABCNameCode(2),ABCFileCode PalmID When PC & Palm Both Change Duplicate adds a ! before ABCFileCode ABCDeleteIndex |Sync#(7),ABCFileCode W }!81b 010709 ABC side Receive Data >version#,UserName Esc V Port# MsgId Length(2) Version#(2) CSyncPropertiesClass 4 SyncType 0 fast, 1 slow, 2 Device to Pc, 3 PC to Device 4 instal, 6 do nothing, 7 Profile install 256 Path Name 256 Local File Name 256 User Name 128 Remote Name [SYNC_DB_NAMELEN] 4 CDbListPtr 4 Remote Count Int 4 Creator 2 Card# 4 DbType 4 ApplicationInfoSize 4 Sort info size 4 First device 4 Connection type 256 Registery 4 HKey 4 Reserved 1198 < Commands from ABC to Palm, > Data From the Palm Command Data Format Esc C Port#(1) Msgd(1) Length(2) Cmd(1) Spare(2) Data 0 Command To Palm Cmd Data Command To Palm Cmd Data < Error code to Log Esc C 5 Error < Close DataBase Esc C 2 < Open DataBase Esc C 1 AddressDB < Close Conduit Esc C 0 < Send Modified data Esc C 6 < Purge Esc C 3 < Delete Esc R 0 CrawRecordInfo < ResetSyncFlags Esc C 4 < Write Esc R 7 CrawRecordInfo Data Sent from Palm to ABC > Send Records Esc R Port#(1) Msgd(1) Length(2) Table(2) CrawRecordInfo > Version# Esc V See Above W }!90 980824 :90 GENERAL-PURPOSE ENTRY ROUTINES 15 error message in acc & reject entry 19 error message in acc, allow C or 1 to override reject 27 Acc date#, return with Day name,Month day & year in acc 30 Beep and do global 31 31 Display 1018 & give Y/N option without beep and set condition flag 32 Error message Item ........ 'not found. press return & reject entry 33 error message ....... are the options, reject 34 Get 4 bytes number motorola format 35 error message in acc, return with response in acc 44 get 2 bytes number motorola format 49 Acc file chr. check if changes on file. True- Changes, False no changes 101 clearscreen of console device p43 Checks for a control C to allow F10 to abort p109 print message on screen bottom p110 beep & Print Message on screen bottom p125 Change 1002 to string and set to the accumulator p146 Gets time in accumulator p170 enter single-char field - acc.=string of possible entries:&"34567"gosubp170 p146 Return with current time in the accumulator p155 Toggle condition flag p156 Set condition to true p199 In Acc File Chr, Save Record status p200 restore file status saved in p199 p201 get 2 bytes in intel if on 386 or motorola if on 68000 p202 return true with version# if 386, false if 68000 p205 Check Entry agains field selection choices entered on the 0W screen p206 Acc File chr. Check if it is a new record. True new, false old p217 Get user number in the accumulator & false if timeshare user p218 Check if in current period p219 Do not allow to skip reference# p220 Do you really want to change this field q8 Acc-Fxx Dispatch Lookup screen, F File Char,xx Subrutine Option# q9 Fxx Ckeck for valid G/L inf not lookup screen F File Chr, xx Subrutine # q10 &"fll"gotoq10 Make sure f record or dispatches to lookup q30 poke Q filename. filename in acc, if acc eq"." q30 will ask for file name. returns true if file found, returns false if file doesn't exist q31 get 4 bytes Intel format. put address in accum. q32 peeks 'Q filename, returns with filename in acc q50 Loop to delete Temporary sort file for user# W }!9520 980826 ;machine code - indexing logic flow Save D record savrecrd chkpstme check post memory, post all keys if not enough memory getrecrd contsrch to find existing record TempA, TempB,TempM, TempE indxdsk on old record (can re-enter save logic) postload on old record savfield to create record in save buffer insrtrec auditrail movtrck, splittrk if necessary insrtrec6 update load pointers movem16 to insert the new record auto backup send new ref# on net indxdsk postload savaudit, save audit trail record save record index save index split track, messes up TempA TempB for original save stack for TempB for each level of indexing (2 total) save in indxdsk5 for cram and disk indxnext needs to update it instead of esp+50 index4a, remove it from stack (cram and disk), restore tempA save tempM instead of tempB at esp+50 Andrew can change to index4a W }!9530 011025 Directory Directory Structure Error 9530 More Files are in the multiple Master directioreis, than can fit on the 0 directory Track. Some Master Directories in Dir0 must be removed Bytes 0-1 1010h Master Dir, 00 directory, ffff data track 20xxh Write Prote 2-3 EOF End of File ptr, Master Dir Dev & Offset start 16 bytes up 4-7 - undefined 8-9 - *256 (Intel Format) is block or buffer size 10-11 - checksum of block 12-15 - 10/01 Ptr to Track Index Master Directory Entries for splitting files amoung directories: - Entry format: first byte - file code, - Entries must be sorted in reverse alphabetical order. - Entry list must start with FFFFH and end with an entry consisting of a null filecode and a directory of 1 (00008001H). - Entries start immediately after Header (at byte 16). Master Directory Device Listing starts at FFFF (EOF) terminator 2-3 #Dir Number of Directories 4-15 undefined 16-17 Start First Device table 16 bytes each Motorola Format 0-1 Device (254-use handle, 255-use same as master dir device) 2-5 Offset 6 0-unlisted, 1-List Company in company selection 7-9 Undefined Initilized to Zero 10-11 Device if there is a 255 to use default device 12-15 Directory Memory location (set when master Directory is loaded DOS File Listing #Dir*16+EOF+16 0-1 Length DOS File Listing 2-7 Not defines Initiilized to Zero Dos File Names 96 bytes each Used also by disk command Entry 0 MasterDir 0-1 DOS handle When device is 254 Firs Entry 2-3 Time share User# 4-15 Undefined 16-95 File Name - W }!9540 000512 Printing With Pass through Ports Start 255 Port# 0-227,command >228 ,228 start,229 stop, 230-254 undefined Length of data Data Pass through printing Does not work with RS-Transfer or packed data because the leadin is the same and high bits can be set with command or port# W }!a 960510 Help screens Index P 4/96 Loans B 5/95 412 Balance doesn't Equal L screen see }412a B 5/95 Deposit doesn't post of change Balance Prior Period, Not set up right W }"*a 980604 21600410 Shipping Zones (") ABC SHIPPING MANIFEST MODULE - The Shipping screen (;) uses this file to determine which pricing record (:) the shipping charges are calculated from. The calculating program uses the Ship Method Code and the first three characters of the zip code and tries to load the Shipping Zone record. If the record is not found, it loads the previous record. If the first three digits of the zip code are the same as or between the last three digits of the Code of this file and that entered in the End Zip field, the computer calculates the shipping charge using the zone in the Freight Zone field. Otherwise the ship charge is cleared to 0. These files are supplied with the program for a particular shipping location and should not be changed. W }"00a 980604 06520615 Code, Start Zip (") This is the Ship Method Code, which must be set up on the pricing screen (:), followed by the first three digits of the zip code. Example: LR000 W }"01a 980604 05520615 End Zip (") This is the first three digits of the last zip code for this zone section. W }"02a 980604 05520615 Freight Zone (") This is the freight zone and is used to calculate shipping charges. W }"03a 980604 05520615 Country (") Enter the name of the foreign country to which this record applies. W }"04a 980604 05520615 Maximum Weight (") Enter the maximum weight you may ship on this ship method and zone. W }#(*a 000121 File Load Edit Options View Macro Help W }#(Ea M03280303 # ~EDIT- more help~ # Journals~Alt J~~Alt K~~Alt L~ # Entry Location ~Ctrl J~ E }#*e W }#(Fa 000424 M04270303 # Save Record ~F9~ # Sub File ~F6~ # Selection Screen ~F10~ # Exit ~Ctrl X~ W }#(Ha M02360303 # Field Help ~F1~ # Account Structure requirements ~ A ~ # * ~QUESTIONS- how to...~ * * ~F1~ Field Help * ~Shift F1~ Screen Help A }#a W }#(Oa M03280303 # ~OPTIONS- more help~ # Dial Phone ~Ctrl F~ # Place on W List ~Alt W~ O }#*o W }#(Va M01160303 # ~VIEW- more help~ V }#*v W }#*a 991025 21600410 SETUP COMPANY AND GENERAL LEDGER SCREEN (#) This screen is used for entering Setup information such as, Company Name, Address, and Phone Number, Bank Accounts, and the Code Generator, and General Ledger Numbers. * ~OPTIONS- more help~ Field Help ~F1~ * Dial Phone ~Ctrl F~~EDIT- more help~ * Place on W List ~Alt W~Journals~Alt J~~Alt K~~Alt L~ * ~FILE- more help~ Entry Location ~Ctrl J~ * Selection Screen ~F10~~VIEW- more help~ * ~QUESTIONS- more help...~ * * For additional~Help~enter H or click on~Help~. Q }#*q E }#*e F }#*f O }#*o H }R*h V }#*v W }#*e 981019 21600410 SETUP SCREEN EDIT HELP ~Alt J~~Alt K~~Alt L~ This gives you three notepads to keep on file anything you want to remember about this entry. Alt J files it with the date and time. ~Ctrl D~or~Shift Up-Arrow~ Move the cursor to the last field on the screen. ~Ctrl J~ You will receive a message telling you what entry location and field number your cursor is at. Type in the number of the entry location you want your cursor to be moved to and press enter, and your cursor will be moved to that location. W }#*f 981019 21600410 SETUP SCREEN FILE HELP ~F7~or~Ctrl P~ Open/Load previous record ~F8~or~Ctrl N~ Open/Load next record ~F9~or~Ctrl S~ Save Record ~Shift F9~ Delete Record ~F10~ Selection Screen W }#*oa 981019 21600410 SETUP SCREEN OPTIONS HELP ~Alt W~ Place the currently loaded company's code on a Word Processor list that is coded #LABELS. See under "Procedures for Entry & Editing - Global Functions (*) in your manual. *Or press ~W~to see the same information on the screen. ~Ctrl F~ Dial Phone. For detailed help, see under "Procedures for Entry & Editing - Global Functions (*)" in the manual. Or, press ~P~to see the same information on the screen. P }*tne W }*tna W }#*ob 991025 21600410 ~Ctrl K~ Execute CRAM program entered on the bottom line. Drastic results will occur if this command is used wrong. ~F4~ Start macro from the line the cursor is on. Hit and the macro name. ~Shift F4~ Record macro. Hit to begin recording.Then enter the macro keystrokes. Hit to end the macro. Press ~M~ for more information. ~Shift F3~ Calculator. Use / to divide and * to multiply. M }*m W }#*q 991025 21600410 * ~QUESTIONS- how to...~ * * Account Structure requirements ~ A ~ * * ~F1~ Field Help * ~Shift F1~ Screen Help A }#a W }#*v 981019 21600410 SETUP SCREEN VIEW HELP ~F5~ Exit Lookup ~F6~ Open Lookup ~Shift F5~ Exit all Lookup ~Shift F6~ Indexed Lookup W }#01a 980604 06520615 Company Name (#) Enter your company name. The name will appear on most screens and will be printed at the top of each page on most reports. W }#02a 980604 06520615 Company Name - Second Line (#) This line is for additional company information. It prints on plain paper statements and invoices as part of the heading. W }#03a 981019 06440621 Street Address (#) Enter your company's street address. The address will print on plain paper invoices and statements. W }#04a 980604 07520615 Zip Code (#) Enter your company's zip code without the extension. A separate field is provided for the extension. The address will print on plain paper invoices and statements. W }#05a 980604 06440619 Zip Extension (#) Enter your company's zip extension. The address will print on plain paper invoices and statements. W }#07a 981113 10440620 Phone Number(#) Enter your company's phone number. The phone number will print on plain paper invoices and statements. Seven or ten digits format automatically. There is room to put additional phone or fax numbers. W }#08a 980604 05420620 System Date (#) This is the date that has been set on the Startup screen (*). W }#09a 010629 07520615 Year End Month Number (#) Enter the month number in which your financial year ends. It may be left blank for Calendar year. The annual totals on the customer and inventory file are rolled based on the fiscal year. W }#10a 980604 09520615 A/R Account Number (#) Enter the G/L account number for accounts receivable. This is used by Report # 3-14, CUSTOMER PAYMENT LEDGER, and Report # 3-27, A/R SALES BY G/L# when posting. ABC's standard A/R account number is 500. W }#11a 980604 08520615 A/P Account Number (#) Enter the G/L account number for accounts payable. This is used by Report # 2-11, PAYABLES BY G/L#, when posting. ABC's standard A/P Account number is 3040. W }#12a 980604 12520615 Payroll Cash Account Number (#) Enter the G/L account number for the payroll cash account. This is used by Report # 4-39, PAYROLL CATEGORY REPORT, when posting. Use the number of the account that the payments are made from. In many cases, that is the same account that other bills are paid from, the business account. ABC's standard Business and Payroll Account # is 303. W }#13a 980604 08520615 Inventory Start Account Number (#) Enter the first G/L account number for inventory. This account is used by Report # 1-7, Inventory Value, when the Posting option is chosen. ABC's standard Inventory Start Account # is 1000. W }#14a 980604 06500616 Inventory End Account Number (#) Enter the last G/L account number for inventory. ABC's standard Inventory End Account # is 2799. W }#15a 980604 10520615 Inventory Reversal Account Number (#) Enter the G/L account number for inventory reversal. This account is used by Report # 1-7, Inventory Value, when the Posting option is chosen. ABC's standard Inventory Reversal Account # is 8895. W }#16a 980604 18520515 Retained Earnings Account Number (#) Enter the G/L account number for retained earnings. The Retained Earnings Account is the account in which the cumulative profits are stored. It is sometimes called the Proprietor's Capital Account. It is a different account from the Year-to-date Earnings Account. After the end of the year, the Year-to-date Earnings Account is usually closed out to the Retained Earnings Account. Therefore, the Retained Earnings Account shows the cumulative profits for every year except the current year. Presently the end- of-year adjustment is a manual adjustment. ABC's standard Retained Earnings Account # is 4010. W }#17a 980604 09520615 Sales Start Account Number (#) Enter the first G/L account number for sales. This marks the break between the Balance Sheet and the Income Statement when a Financial Statement is printed. ABC's standard Sales Start Account # is 5000. W }#18a 980604 11510615 Purchase Start Account Number (#) Enter the first G/L account number for purchases. The purchase accounts are where all costs of purchases are tracked. You may use only one count, (we suggest Account number 8810), or you could have your sales split up among a number of accounts. ABC's standard Purchase Start Account # is 7000. W }#19a 980604 06500616 Purchase End Account Number (#) Enter the last G/L account number for purchases. ABC's standard Purchase End Account # is 8799. W }#20a 960306 }#21a W }#21a 980604 13600610 Bank Account Number and Name (#) Up to five different bank accounts can be setup using Ledgers 3 to 7. In the Account # column enter the G/L # of the bank account. If the G/L # account has already been setup on the G screen, the Name of the account will be displayed in the Name field. If the G/L account has not been setup on the G screen, it can be setup here by entering the G/L # in the Account # field and entering the account Name in the Name field. Save the record with . ABC's standard G/L # for the Business Bank Account is 303. W }#23a 960306 }#21a W }#24a 960306 }#21a W }#26a 960306 }#21a W }#27a 920909 }#21a W }#28a 000727 08520515 Company Number (#) Enter a number from one to nine to indicate for which company this accounting system is being used. Used in multi-company situations. The company number is appended to computer entries reference numbers. W }#29a 960306 }#21a W }#30a 920909 }#21a W }#32a 960306 }#21a W }#33a 920909 }#21a W }#34a 980604 09600810 Floor Plan Account Number (#) A floor plan is an agreement with a supplier who displays his product at your place of business (on your floor). When it is sold you collect the money and pay the supplier. This account is for tracking the value of his product which you have on hand. Enter that account number here. ABC's standard floor plan account # is 3240. W }#35a 980604 21600410 Department Multiplier (#) This is used in conjunction with deparmentalized financial statements. This is the number of accounts for each department, and may be 100, 1000 or 10000. It is the account number where the consolidated statement stops, and the first department begins. The accounts between Department Start # and Department Multiplier # are reserved for the consolidated accounts, and may not have data directly entered into them. For example, if the number of accounts in each department was 10000, the Department Start # would possibly be 5000. The numbers from 5000 to 10000 would be reserved for the consolidated accounts which would be a summary of the accounts 15000 to 20000, 25000 to 30000, 35000 to 40000 and so on. In this case the DEPARTMENT MULTIPLIER would be 10000. That's where the first Department would start. The second Department would start with 20000, the third Department with 30000 and so on. W }#65a 980604 07520815 A/R Discount Account Number (#) Enter the G/L Account number for Accounts Receivable Discounts. The computer will use this account when posting Deposits (D) that have cash discounts. ABC's standard number is 6830. W }#72a 980604 05520815 Employer Identification Number (#) Enter here the company's Employer Identification Number if you have one. W }#87a 000124 19600510 Automatic Deposit Posting (#) Enter a C if you are on the Cash Basis of Accounting and you want the computer to automatically update your bank balance when you save a deposit on the D screen that has a Y in Deposit Total. Enter an A if you are on the Accrual Basis of Accounting and you want the computer to automatically update your bank balance when you save a deposit on the D screen that has a Y in Deposit Total. Enter an N if you do not want the computer to automatically update your bank balance. This means, to update your bank balance you will need to do it manually by making an entry on the Ledger screen (L), or by running Report # 3-14 Customer Payment Ledger (accrual basis) or Report # 3-37 Cash Deposits by G/L# (cash basis). W }#92a 980604 12520815 Payroll and Accounts Payable Ledger Number (#) ABC PAYROLL MODULE If your Payroll checks come from the same ledger as your Accounts Payable checks, enter that ledger number here. ABC's standard Ledger number is 3. Let this field blank if the Payroll checks are not written from the same Bank Account as your Accounts Payable checks. W }#94a 981113 12520615 Multi-Loc Pars (#) Multiple Location Parameters is used wuth systems that have the multiple Location Software installed. Enter the Location number (1-9) followed by a comma the start reference# followed by a - and the Ending Reference # that is valid for that location on the (B)ill, (D)eposit, (R)eceivable Invoice screens. Example 1,10000-199999 W }#95a 981019 07440821 Department Start Number (#) This is the account number that starts the consolidated financial statements. Do not put any number here if you have a single department situation. W }#A32a 980604 07480717 Prepayment Account Number (#) Enter the G/L Account number where Customer Prepayments will be entered. The computer will automatically track this. ABC's standard number is 3200. W }#A36a 020204 16600610 Vendor Shipping Ticket Account (#) Vendor shipping tickets can be entered on the Bill screen (B) to add items you have received to stock, even before you receive a bill. If you want to include these shipping tickets in inventory value (report 1-7) and purchases (report 2-11), enter an account number here. This will cause both reports to include shipping tickets, whether posting to G/L or not. When you post report 2-11, Open Payables by G/L#, the shipping tickets total will post to this account. If you leave this field blank, shipping tickets will not be included on these reports. W }#A41a 980604 12600710 Vendor Code Generator - Individual (#) The computer will suggest a Code for any new Vendor when you set them up, if you specify in this field how you want the code to be generated. LFM means Last name, First name, Middle name. If you put the numbers 220 below the letters LFM, the computer will use the first 2 letters of the Last name, the first 2 letters of the First name and will not use any of the Middle name to generate the Code. W }#A41b 980604 12600710 The person's Name must be entered in this order: Last Name, First Name, Middle Name with a comma between the last name and the first name. (The computer will attach a 0 to the Code unless that Code has been used already. In that case it would attach a 1 unless that was used before and so on. Brown, John would have the Code BRJO0 and Brubacher, Jonas would have BRJO1, if the Code Generator had the numbers 220 in this field.) W }#A42a 980604 14600510 Vendor Code Generator - Company (#) The computer will suggest a Code for any new Vendor when you set them up, if you specify in this field how you want the code to be generated. Do not include a comma in a Vendor Company Name. 123 means First word, Second word, Third word. If you put the numbers 221 below the numbers 123, the computer will use the first 2 letters of the First Word, the first 2 letters of the Second Word and the first letter of the Third Word to generate the Code. W }#A42b 980604 14600510 (The computer will attach a 0 to the Code unless that Code has been used already. In that case it would attach a 1 unless that was used before and so on. For example, Smith Auto Parts would use the code SMAUP0 and Smiff's Auto Place would use the code SMAUP1, if the Code Generator had the numbers 221 in this field.) If you put an S (for State) as the 4th character of the code, the computer will add the 2-letter State code to the Vendor code when you save the record. This is used in situations where there are many vendors with the same name. For example, First National Bank with a PA address would be FINABPA0. W }#A43a 980604 12600610 Customer Code Generator - Individual (#) The computer will suggest a Code for any new Customer when you set them up, if you specify in this field how you want the code to be generated. LFM means Last name, First name, Middle name. If you put the numbers 221 below the letters LFM, the computer will use the first 2 letters of the Last name, the first 2 letters of the First name and the first letter of the Middle name to generate the Code. W }#A43b 980604 12600610 The person's Name must be entered in this order: Last Name, First Name, Middle Name with a comma between the last name and the first name. (The computer will attach a 0 to the Code unless that Code has been used already. In that case it would attach a 1 unless that was used before and so on. Brown, John D would have the Code BRJOD0 and Brubacher, Jonas D would have BRJOD1, if the Code Generator had the numbers 221 in this field.) W }#A44a 980604 14600610 Customer Code Generator - Company (#) The computer will suggest a Code for any new Customer when you set them up, if you specify in this field how you want the code to be generated. Do not include a comma in a Customer Company Name. 123 means First word, Second word, Third word. If you put the numbers 221 below the numbers 123, the computer will use the first 2 letters of the First Word, the first 2 letters of the Second Word and the first letter of the Third Word to generate the Code. W }#A44b 980604 14600610 (The computer will attach a 0 to the Code unless that Code has been used already. In that case it would attach a 1 unless that was used before and so on. For example, Smith Auto Parts would use the code SMAUP0 and Smiff's Auto Place would use the code SMAUP1, if the Code Generator had the numbers 221 in this field.) If you put an S (for State) as the 4th character of the code, the computer will add the 2-letter State code to the Vendor code when you save the record. This is used in situations where there are many vendors with the same name. For example, First National Bank with a PA address would be FINABPA0. W }#A45a 980604 12600510 Name Code Generator - Individual (#) The computer will suggest a Code for any new Name when you set them up, if you specify in this field how you want the code to be generated. LFM means Last name, First name, Middle name. If you put the numbers 221 below the letters LFM, the computer will use the first 2 letters of the Last name, the first 2 letters of the First name and the first letter of the Middle name to generate the Code. W }#A45b 980604 12600510 The person's Name must be entered in this order: Last Name, First Name, Middle Name with a comma between the last name and the first name. (The computer will attach a 0 to the Code unless that Code has been used already. In that case it would attach a 1 unless that was used before and so on. Brown, John D would have the Code BRJOD0 and Brubacher, Jonas D would have BRJOD1, if the Code Generator had the numbers 221 in this field.) W }#A46a 980604 14600610 Name Code Generator - Company (#) The computer will suggest a Code for any new Name when you set them up in the Names File (N) if you specify in this field how you want the code to be generated. Do not include a comma in a Company Name. 123 means First word, Second word, Third word. If you put the numbers 221 below the numbers 123, the computer will use the first 2 letters of the First Word, the first 2 letters of the Second Word and the first letter of the Third Word to generate the Code. W }#A46b 980604 14600610 (The computer will attach a 0 to the Code unless that Code has been used already. In that case it would attach a 1 unless that was used before and so on. For example, Smith Auto Parts would use the code SMAUP0 and Smiff's Auto Place would use the code SMAUP1, if the Code Generator had the numbers 221 in this field.) If you put an S (for State) as the 4th character of the code, the computer will add the 2-letter State code to the Vendor code when you save the record. This is used in situations where there are many vendors with the same name. For example, First National Bank with a PA address would be FINABPA0. W }#A47a 980604 12600610 Employee Code Generator - Individual (#) ABC PAYROLL MODULE The computer will suggest a Code for any new Employee when you set them up, if you specify in this field how you want the code to be generated. LFM means Last name, First name, Middle name. If you put the numbers 221 below the letters LFM, the computer will use the first 2 letters of the Last name, the first 2 letters of the First name and the first letter of the Middle name to generate the Code. W }#A47b 980604 12600610 The person's Name must be entered in this order: Last Name, First Name, Middle Name with a comma between the last name and the first name. (The computer will attach a 0 to the Code unless that Code has been used already. In that case it would attach a 1 unless that was used before and so on. Brown, John D would have the Code BRJOD0 and Brubacher, Jonas D would have BRJOD1, if the Code Generator had the numbers 221 in this field.) W }#A57a 000925 07520815 G/L Lock Date (#) To prevent changing a prior General Ledger period, enter the last date of the period to lock. The computer will not allow entering or posting into this period or prior. W }#A60a 980604 16600610 Credit Card Deposit Account (#) When you use Automatic Deposit Posting, the computer posts the credit card sales to the Account specified in this field. This is done because banks handle credit card income in a variety of ways and normally credit card sales are not included on your deposit tickets. ABC's standard Credit Card Deposit Account # is 310. When your bank credits your account with credit card income, you need to make a manual deposit on the Ledger screen (L), using a negative figure, like any other deposit. Use the Credit Card Deposit Account number. W }#A60b 991025 16600610 If there is a credit card service charge or credit card discount withheld from the credit card income, you should enter that as a positive amount using the Credit Charges Account #. Here is an example of entering a Credit Card Deposit on the Ledger screen (L): # ---------------------------------------------------------- # |Check# Date Vendor Code & Name Amount Distribution| # |1277.1 2/28/97 DEPOSIT -436.00 | # | | # | _ _Acct_#_ _ _ Description_ _ _ _ _Amount_ _ _ _Remark_| # 310 Credit Card Deposits -445.00 # 9600 Credit Card Charges 9.00 W }#A91a 930401 }CA01a W }#A92a 930401 }CA02a W }#a 980604 21600410 Account Structure Requirements There are certain requirements for numbering G/L accounts. If these requirements are not met, an error message may appear when you attempt to save the setup data. Balance sheet accounts, including inventory, must come before sales accounts and sales accounts must come before purchase accounts. The sales accounts are assumed to end where the purchase accounts start. This is why there is no Sales End Account # field. Inventory categories must have corresponding sales and purchases categories. This involves two requirements: 1. Sales and purchaes must cover a wide enough range to include all the inventory categories. W }#ab 980604 21600410 2. The ranges for sales and purchases must contain account numbers with the last digit or digits corresponding to those of the inventory account numbers. The number of digits that must correspond is determined by the number of inventory accounts. For example, inventory accounts could start at 1000 and end at 2799, sales accounts could start at 5000 and purchase accounts could start at 7000 and end at 8799. In this case, sales accounts 5000 to 6799 and purchase accounts 7000 to 8799 would correspond to inventory accounts 1000 to 2799. The last THREE digits must correspond, in this case, because there are more than 100 inventory accounts. W }%(*a 000121 File Load Edit Options View Macro Help W }%(Fa 000424 M02270303 # Selection Screen ~F10~ # Exit ~Ctrl X~ W }%*a 991025 21600410 Invoicing Mode (%) The Receivable Invoice screen (R) has several different modes. These modes are selected in a special submenu, the Invoicing Mode selection screen (%). NOTE: The Workorder Mode (M) is the same mode as the Order Mode. The biggest is difference is, one uses the word "Workorder" and the other one uses "Order". The submenu shows a list of the modes: # (ABC ENHANCED) # # O - Order # C - Order Check # I - Invoice Once in the Receivable Invoice screen (R), you can tell what mode you are in by looking at the upper left corner of the screen. W }%*b 980604 21600410 If you wish to change the mode you are in, you must return to the submenu. Press followed by %, then select the mode you wish to be in. Example: If you wish to enter some orders, and then some invoices, first go to the Invoicing Mode selection screen (%), select O for orders, then enter your orders. Then return to the Invoicing Mode selection screen (%), select I for Invoices, and enter your invoices. W }%J05a 980604 08440518 Enter Your Selection ... (%) ABC ENHANCED - Type O for Order mode, C for Order Check mode or I for Invoice mode. W }&(*a 000121 File Load Edit Options View Macro Help W }&(Ea M04280303 # ~EDIT- more help~ # Entry Location ~Ctrl J~ # GoTo Last Field ~Ctrl D~ # Journals~Alt J~~Alt K~~Alt L~ E }&*e W }&(Fa 000424 M04270303 # Save Record ~F9~ # Sub File ~F6~ # Selection Screen ~F10~ # Exit ~Ctrl X~ W }&(Oa M02280303 # ~OPTIONS- more help~ # Place on W List ~Alt W~ O }&*o W }&(Va M01160303 # ~VIEW- more help~ V }&*v W }&*a 991025 21600410 Accounts Payable and Accounts Receivable Setup Screen (&) This is a screen for setting up Accounts Recievable Defaults, Finance Charge Information, some details on Receivable Invoices, Accounts Payable Defaults, Accounts Receivable Statement Limits, Time Entry Defaults, Job Defaults and Printer Selection. For additional help on any field, press when the cursor is in that field. * ~OPTIONS- more help~ Field Help ~F1~ * Place on W List ~Alt W~~EDIT- more help~ * ~FILE- more help~ Entry Location ~Ctrl J~ * Selection Screen ~F1~GoTo Last Field ~Ctrl D~ * ~VIEW- more help~ Journals~Alt J~~Alt K~~Alt L~ * ~QUESTIONS- how to...~ * * For additional~Help~enter H or click on~Help~ E }&*e F }&*f H }R*h O }&*o Q }&*q V }&*v W }&*e 981019 21600410 A/P & A/R SETUPUP SCREEN EDIT HELP ~Alt J~~Alt K~~Alt L~ This gives you three notepads to keep on file anything you want to remember about this entry. Alt J files it with the date and time. ~Ctrl D~or~Shift Up-Arrow~ Move the cursor to the last field on the screen. ~Ctrl J~ You will receive a message telling you what entry location and field number your cursor is at. Type in the number of the entry location you want your cursor to be moved to and press enter, and your cursor will be moved to that location. W }&*f 981019 21600410 A/P & A/R SETUPUP SCREEN FILE HELP ~F1~ Field Help ~Shift F1~ Screen Help ~F7~or~Ctrl P~ Open/Load previous record ~F8~or~Ctrl N~ Open/Load next record ~F9~or~Ctrl S~ Save Record ~Shift F9~ Delete Record ~F10~ Selection Screen W }&*oa 020506 21600410 A/P & A/R SETUP SCREEN OPTIONS HELP ~Alt W~ This places the Customer Code on Word Processor &LIST. See under "Procedures for entry and editing - Global Functions" *in your manual. Or press~W~to see the same information on the screen. ~Ctrl K~ Execute CRAM program entered on the bottom line. Drastic results will occur if this command is used wrong. ~F4~ Start macro from the line the cursor is on. Hit and the macro name. ~Shift F4~ Record Macro. Hit to begin recording.Then enter the macro keystrokes. Hit to end the macro. Press ~M~ for more information. ~Shift F3~ Calculator. Use / to divide and * to multiply. M }*m W }*tna W }&*v 981019 21600410 A/P & A/R SETUPUP SCREEN VIEW HELP ~F5~ Exit Lookup ~F6~ Open Lookup ~Shift F5~ Exit all Lookup ~Shift F6~ Indexed Lookup W }&+N55a 011011 1177 Price Update Code (&) Used used with Report # 2-10, INVENTORY PRICE UPDATE. It is overridden by the Update Code on the Inventory file (I), and the UC on the A/P Bill screen (B). The pricing code may be any one of the following: N No price update. A Always update cost (Book) and list D Always update cost. B Update cost (Book) if increased. P Price from Inventory file. L Update cost and List if increased. I Always update cost (Book). Update list if it increased S Skip to Amount when Entering Item on (B) screen O Omit Order posting. (Don't post this line to P.O.) Z Use zero amount on Inventory Value Report (1-8). W }&25a 981113 17600610 }t70a W }&31a 981113 :}t70a W }&36a 980604 12520615 Customer Type (&) This is the Type the computer defaults to when an invoice is entered for a customer who does not have a specified Type. Customer Types are setup in the Customer Type screen (Y). With Customer Type, you have the option to sell certain inventory items to certain customers, for example, poison to farmers that have license to use it. W }&37a 980604 14520715 Inventory Markup (&) This is a "safety guard" that triggers an error message when you try to sell an item at a price that is less than a certain percentage above Book Price on the Inventory file (I). Enter that percentage here. For example, to set the minimum price to 10% above cost, enter 10. If you leave this field blank, the minimum price will be the cost of the item. To disable this feature, enter -100, which will allow any price down to zero. W }&38a 980604 08520715 Tax Default (&) Enter the code for Sales Tax, as set up on the Inventory screen (I). Usually the 2-letter code for the state is used. For example, PA for Pennsylvania or KS for Kansas. The use of this field is optional. W }&39a 980604 07520715 Free Days (&) Enter the number of days after the invoice date the customers will have "free" credit on an invoice. Finance charges will be applied for each day after this day. Example: 0. W }&40a 980604 05520715 Message (&) You may enter a brief message to appear on your statements, identifying your finance charges. W }&41a 980604 10520815 Monthly Interest Rate (&) Enter the monthly interest rate which you wish to charge on overdue accounts. For 2 %, simply enter 2 as a whole number without the percent sign. The monthly and annual interest rates are displayed on Receivable Invoices. W }&42a 980604 07520815 Minimum Charge (&) Enter the minimum charge for an overdue account. Do not use a dollar sign. This charge will apply whenever it is larger than the calculated charge, if there is one. W }&43a 000925 15520615 Days Till Charge (&) Enter the number of days an invoice may be open before a finance charge is applied. Often this is set for 5 days more than the number of Free Days to allow for mail time. For information on Finance Charges, press ~ F ~. When this field added to the date of the first open invoice, or the invoice due date, is before the system date, a warning is displayed on the (R) screen when the customer is entered. W }&43f 930831 }320a W }&43g 930831 }320b W }&44a 980604 07520615 G/L Account Number (&) Enter the G/L account number for finance charges. ABC's standard G/L account number for finance charges is # 9840. W }&45a 980604 06520615 Compound Interest (&) Enter "N" if you do NOT want compound interest; in other words, finance charges on overdue finance charges. W }&46a 980604 13520615 Last Finance Charge Date (&) Enter the date finance charges were last calculated. This must be set for finance charges to work. Once this is set up initially, the computer will maintain it by updating it whenever finance charges are run. If finance charges were never run, enter a starting date. The computer will start calculating finance charges from that date. Usually this is set at least one month prior to the current date. W }&49a 980604 20520415 Low Balance Limit, High Balance Limit (&) The computer will NOT issue statements to customers whose balance due is within these two limits, inclusive. For example, if you would enter -.50 for the Low Balance Limit and 1.00 for the High Balance Limit, the computer would print only statements with a balance due of more than $1.00 or a credit balance of more than $.50. If these fields are left blank, statements will be printed for all customers with nonzero balances. To print all statements, including those with a zero balance, enter a Low Balance Limit that is higher than the High Balance Limit. To skip all statements with credit balances, enter a large negative amount for the Low Balance Limit, such as -10000000.00. W }&50a 920914 }&49a W }&51a 010717 09520615 Default Ledger Number (&) Enter a number from 3 to 7 to indicate out of which bank ledger A/P checks are normally written. This will set the default Ledger # (3-7) in the Check Writing screen (/) and Deposit posting to Gl. ABC's standard Default Ledger number is # 3. W }&52a 980604 08520615 Discount Account Number (&) Enter the G/L account number for A/P discounts. The checkwriting program will use this account for any automatic discounts that it takes. ABC's standard Discount Account # is 8830. W }&53a 980604 13520615 Suspense Account Number (&) Enter the G/L account number for the suspense account. The checkwriting program will use this account where no account number has been specified on an A/P invoice, or when the A/P invoices paid by one check contain more than 150 different G/L account numbers. This is also used for those amounts you don't know where to put till you ask your accountant. ABC's standard Suspense Account # is 1. W }&54a 990309 11520615 Stock Error Message (&) on workorder & invoice screen Enter an "S" here if you want the system to warn your operators when Ship Quantity exceeds Stock Quantity. Enter an "A" to warn when Ship Quantity exceeds Available Quantity. Enter a "D" if you do NOT want either of these warnings. A "Y" was used to disable the out of stock error message prior to version 9. This functions like the "D". W }&55a 980604 20600410 Price Update Code (&) This is used with Report # 2-10, INVENTORY PRICE UPDATE. This field is overridden by Update Code on the Inventory file (I), and by the Update Code (UC) on the A/P Bill screen (B). The pricing code may be any one of the following: No price update. Update the cost if it increased. Update the cost if it increased. Update the list price if it increased. Always update the cost. Always update the cost and the list price. W }&55b 980604 20600410 Always update the cost. Update the list price if it increased. Skip Quantity & Price and go to Amount when entering A/P bills.

Bring price from Inventory file. Omit Order posting. (Don't post this line to purchase orders.) ABC P.O. MODULE Use zero amount on Inventory Value Report. W }&56a 980604 10520615 Accounts Payable General Ledger Adder (&) Enter the number to add to sales G/L account numbers on the Inventory file (I) to determine purchase account numbers. The computer uses this number to set the G/L# in the A/P Bill Entry screen (B). For example, if Sales accounts begin at 5000 and Purchase accounts begin at 7000, enter 2000 here. W }&57a 980604 09520615 Overtime Base (&) ABC PAYROLL MODULE - Enter the normal number of hours worked per week before you begin paying overtime. This defaults the entry on the Time Card Entry screen (T). The computer uses this figure to determine the overtime hours. The standard amount is 40. W }&58a 980604 08520615 Overtime Factor (&) ABC PAYROLL MODULE - Enter the additional percentage over regular time that is paid to the employee and costed to the job. This is also carried across to the Time Card Entry screen (T). Example: For 50% enter .50. W }&61a 980604 09520615 Accounts Payable Closeout (&) When checks are written, the computer puts totals into the ledger which appear on the Trial Balance Detail for the Bank Account. An "M" in this field makes one entry per month. A "D" in this field makes one entry for each day checks are written. Normal setting for this option is "M" for month. W }&62aa 020330 15600610 Automatic or Optional Back-orders (&) You may enter one of the following three options in this field. The computer uses "N" if there is nothing entered. "A" enables automatic back-ordering on the Receivable Invoice screen (R). When you enter a Ship Quantity that is greater than the inventory stock, the computer puts the quantity in Order when the order Qty is Zeero and Ships the available stock on hand. Pressing O will ship the amount you entered in the Ship field and will not back-order any. This works when the cursor is to the right of the Ship field on the line you want it to affect, or to the left of the Ship field on the next line. ~PgDn~ W }&62ab 020330 15600610 "I" places the quantity entered in shipped in the Order if it is greater then the prevoius order quantity and ships the available stock on hand on both the Make Workorder screen (M) and Receivable Invoice screen (R). "O" enables optional back-ordering on the Receivable Invoice screen (R). If you want to put an item on back-order, you will need to enter the quantity in the Order field manually. "N" means no back-ordering. W }&63a 980604 08520615 Message (&) You may enter a message here that will print on all invoices. This option is for purposes such as special announcements or reminders that you want to appear on all customer invoices. This prints near the bottom of the invoice. W }&64a 980604 10520615 Number of Customer Messages (&) You may specify here how many of the message fields on the Customer screen (C) you want to print on A/R invoices. If you enter "1" here, Message 1 will print. If you enter "2" here, Message 1 and 2 will print. If you enter "3", Message 1, 2 and 3 will print. If you enter "4", all 4 Message lines will print. W }&66a 980604 08520615 Default Sales Account Number (&) This is the G/L account number the computer uses when an item is entered on the Receivable Invoice screen (R) that has no G/L account # specified. ABC's standard Default Sales Account # is 6810. W }&67a 980604 09520615 Default Purchase Account Number (&) This is the G/L account number the computer uses when an item is entered on the A/P Bill screen (B) that has no G/L account number specified. ABC's standard Default Purchase Account Number is 8810. W }&68a 980604 07520615 Omit Company Heading (&) Enter "Y" here if you wish to omit the company heading on Report # 3-13, CUSTOMER INVOICES ON PLAIN PAPER. This option allows you to print invoices on your company letterhead paper. W }&69a 981113 :}t70a W }&70a 981113 :}t70a W }&71a 981113 :}t70a W }&73a 980604 12520615 Subcontract Purchase Account Number (&) If you have an "S" for subcontract in the M)aterial,D)irect,S)ub field on the A/P Bill screen (B), the computer will override the Inventory G/L number and use this number instead, providing there is no Adder entered in the Subcontract Adder field. ABC's Standard Subcontract Purchase Account # is 8815. W }&74a 980604 09520615 Subcontract Adder (&) This field overrides the Subcontract Purchase Account number, and adds the amount entered here plus the A/P G/L Adder to the G/L number on the Inventory screen if the A/P Bill is a subcontract. ABC's standard Subcontract Adder is 5. W }&75a 011011 17580511 A/R Invoices Report Number (&) Specify the report number you want the computer to use when you print a receivable invoice from the Receivable Invoice screen (R). This must be three digits. For example, if you wish to use Report # 3-38, CUSTOMER INVOICES ON NEBS 9040, you would enter 338 in this field. This specifies which report to use when you press +T on the Receivable Invoice screen (R), or when you save a receivable invoice and press "P" to print it. If there is nothing specified here, the computer will use Report # 3-13, CUSTOMER INVOICES ON PLAIN PAPER. Note: Report # 3-38 is often custom programmed and is titled CUSTOM INVOICE or some other similar title. W }&76a 980604 09520615 Labor Sales Account Number (&) ABC JOB COSTING MODULE - Enter the G/L account number for Labor Sales. ABC's standard Labor Sales Account # is 6850. This field must be set up before using Report # 5 - 31 GENERATE INVOICES FOR JOBS. W }&77a 980604 09520615 Material Sales Account Number (&) ABC JOB COSTING MODULE - Enter the G/L account number for Material Sales. ABC's standard Material Sales Account # is 6810. This field must be set up before using Report # 5 - 31 GENERATE INVOICES FOR JOBS. W }&78a 980604 09520615 Subcontract Sales Account Number (&) ABC JOB COSTING MODULE - Enter the G/L account number for Subcontract Sales. ABC's standard Subcontract Sales Account # is 6815. This field must be set up before using Report # 5-31, GENERATE INVOICES FOR JOBS. W }&79a 980604 12520615 A/P Material Markup % (&) ABC JOB COSTING MODULE - This field allows you to specify how much you will charge for material purchased for a Job. Enter the percentage of markup over cost. The computer will use this percentage with Report 5-31 (Generate Invoices for Jobs) if there is no list price entered for the billed items. If this field is left blank and no list price exists on the Inventory screen, the computer bills at cost. W }&80a 980604 12520615 A/P Subcontract Markup Percent (&) ABC JOB COSTING MODULE - This field allows you to specify how much you will charge for Job Subcontract costs. Enter the percentage of markup over cost. The computer will use this percentage with Report 5-31 (Generate Invoices for Jobs) if there is no list price entered for the billed items. If this field is left blank and no list price exists on the Inventory screen, the computer bills at cost. W }&81a 980604 16520615 List Price Multiplier (&) This is the default multiplier which is used by Report # 2-10, INVENTORY PRICE UPDATE, whenever no Multiplier is specified on the Inventory file (I). List Price on the Inventory file (I) is set to the A/P Bill Price divided by Multiplier, multiplied by 100, multiplied by the Unit quantity. For example, if the A/P Bill Price is $3.00, the multiplier is 80, and the unit field is blank, then the list price would be $3.75. Or, if the A/P Bill Price is $1.50, the multiplier is 60, and the unit is 12, then the list price per dozen would be $30.00. W }&82a 980604 08520615 Job Class for Billing (&) ABC JOB COSTING MODULE - Enter the job class for the computer to use when the total billed amount is posted. ABC's standard Billing Job Class is 00. W }&83a 980604 11520615 Price P.O.'s (&) Enter "Y" here if you want the Book Price to carry over to purchase orders from the Inventory file (I). Enter "N" if you do NOT want the Book Price to carry across from the Inventory file (I). If this field is left blank, the computer will automatically carry the Book Price across. This field may be overidden by the Vendor file (V) or the purchase order itself. W }&84a 980604 05520615 Bank Deposit Number (&) Enter your bank account number to print on Report # 3-18, DEPOSIT TICKET. W }&85a 980604 12520615 Create Quote Record (&) This field is for businesses who use the Quoted Prices file (Q) for pricing individual items per customer. A "Y" in this field will create a new Quote record when an item is entered on the Receivable Invoice screen (R) that was not previously purchased by the customer. If you are not using this feature, put an N in this field. W }&88a 980604 16520615 Book Increase % (&) This works with Report # 2-10, INVENTORY PRICE UPDATE. Enter the percent over cost on the A/P Bill screen (B) that you want to appear as Book Price on the Inventory file (I). For example, if you want Book Price on the Inventory file to include sales tax, enter 6.00 here. When you run Report # 2-10, the computer will add 6% to the cost on the A/P Bill screen (B) and update Book Price on the Inventory file (I). This works for any inventory item with a Price Update Code that updates cost. Report # 2-10 only updates items that have been saved on an A/P Bill since the last time the report was run. W }&89a 020402 11520615 Point Of Sale Invoice Report Number (&) Enter a three-digit number to specify which report you want the computer to use when you save a Receivable Invoice (R) and press "C" to print it. Enter one digit for the screen the report is found on, followed by two digits for the Report Number. The POS PrtDev must be set up for each terminal on 'T screen or else a Plain Paper Invoice will be printed on the system default printer. W }&93a 980604 11520615 Special Deposit Account Number (&) This field allows the tracking of customer prepayments for a special purpose. Entering this account number in the G/L# field on the Deposit screen (D) will post the G/L amount to the Special Deposit field on the Customer screen (C). ABC's standard Special Deposit Account number is 3220. W }&A31a 980604 12520715 Backup Device (&) Enter the device to which you normally back up. This may be any of the following: A - floppy Disk B - floppy Disk D to Q - hard Disk or Disk partition If nothing is entered here, it will automatically default to device A. W }&A33a 980604 08520715 Auto Save User (&) This field is used only when there is more than one computer hooked together in a network. It specifies which other computer will automatically save any information saved to disk by this computer. W }&A34a 981113 08520615 Prepayment Account # the G/L account # for prepayments to vendors. this is used by the (/) checkwriting when making NBA Non-Bill Amount payments. W }&A35a 990303 08520615 # of Copies of Invoice (&) Enter the number of copies of invoice you want to print when saved on the (R)eceivable Invoice and the P or Print option is chosen. This option is often used when printing invoices on laser printers. W }&A48a 981113 :}t70a W }&A51a 980604 07520915 Omit Purchase Order Heading (&) Entering "Y" in this field means that your company's heading will not be printed at the top of a printed Purchase Order. This option is used when you are using letterhead paper. W }&A58a 980604 09520815 Tax on Order (&) Putting a Y here means that Sales Tax will be calculated on Orders or Quotes if a Sales Tax Code has been setup on the I screen and the Customer has been setup as taxable. (Use the Tax Status field on the C screen to show if a Customer needs to pay Sales Tax or not.) W }&A61 981113 08520615 Allow Negative Discounts N in this field does not calculate the A/P Bill cash discount on lines that have a negative amount. Press ~$~ for help on not calculating discounts on line amounts. }I21a W }&A62a 991206 14600410 AUTO Add Inventory Items List the inventory items, separated by commas, that you want included on every invoice. Exp: IC05T,DIS10,CDRT Each of these items will be added to every order/invoice when is pressed if they are not already on the order/invoice. If they are on the invoice already they will remain where they are. Items in this list which are not found on the order/invoice will be appended. Zone and superseded items do not operate with auto add inventory. Programming information: See RLB18 for variables to use or avoid # 1. On save, check if items are on order/invoice # a. If it is not on it will be appended. # b. if it is on it is left where it exists. # 2. During save totalling a call to >a218 (x90) # is made for each line on the invoice. Check for these # items and do any logic desired. # 3. Condition flag must be true on return from subroutine or # item will be removed from order/invoice. W }&A63a 981012 }t81a W }'008*a 000512 port# 16 Par 17-127 hardware or passthrough ports Standard User 11 - 22 to 16 on remote, printer 23 to 18 on remote W }'00801 000512 Type- 0 Uart (serial) with no handshaking. Usually used with terminas 1 Uart with handshaking on output only (Use for printer ports 2 Reserved 3 Parallel printer port Bypasses network Software, directly to hardware 4 Bios parallel printer port can be used to access network printers 5 Uart (serial with W }'014*a 980604 21600410 Color Options Screen (`O) This screen is used to select the colors used in ABC Accounting. To access the Color Options Screen, press , ` (accent mark), O. To change the Foreground color (the color of the letters and other symbols), press the or . The Foreground colors available are Yellow, Bright White, Black, Blue, Green, Cyan, Red, Magenta, Brown, White, Gray, Bright Blue, Bright Green, Bright Cyan, Bright Red and Bright Magenta. To change the Background color, press +. The Background colors are White, Black, Blue, Green, Cyan, Red, Magenta and Brown. You can select the Blink mode by pressing +B. (Who would want that?) W }'014*b 980604 21600410 Save your color choices by pressing . Following is an explanation of the seven fields, on this screen, where you can set the colors. This gives you the possiblity of 14 different colors on one screen although usually you will want the background to be the same color for the first two fields; LABELS and FIELDS. LABELS are the words that identify the fields. FIELDS are the spaces after the labels where information is entered and/or displayed. CURSOR is the blinking symbol, usually an "_", that indicates your current position on the screen. The cursor and any letters in that field are always the same color. W }'014*c 980604 21600410 MESSAGE LINE is the bottom line of the screen. ERROR BOXES appear to alert you of a mistake or offer a choice. LOOKUP WINDOWS are the windows that show lists of information when you press on certain fields. MOUSE BUTTONS are the places on the Selection Screen where you can click with the mouse to access screens. Mouse Buttons also appear on the Lookup Screen for choosing various options. There is a Mouse Button Sample shown on the Color Selection Screen to indicate what your choice of colors would look like. W }'014J10a 970430 asdfdfas This doesn't work either W }'014K10a 970430 this is not working W }'039*a 991025 21600410 * MACRO SCREEN KEYBOARD FUNCTIONS * * ~OPTIONS- more help~ Field Help ~F1~ * Duplicate Record ~Alt D~ ~EDIT- more help~ * Edit Macro ~Alt E~ Journal~Alt J~~Alt K~~Alt L~ * Mark Macro ~Alt M~ Entry Location ~Ctrl J~ * Place on (W) file ~Alt W~ ~File- more help~ * * ~QUESTIONS- how to... ~ * * For additional~Help~enter H or click on~Help~ Q }'039*q E }'039*e F }'039*f H }R*h O }'039*o W }'039*e 981113 21600410 MACRO SCREEN EDIT HELP ~Alt J~~Alt K~~Alt L~ This gives you three notepads to keep on file anything you want to remember about this entry. Alt J files it with the date and time. ~Ctrl D~or~Shift Up-Arrow~ Move the cursor to the last field on the screen. ~Ctrl J~ You will receive a message telling you what entry location and field number your cursor is at. Type in the number of the entry location you want your cursor to be moved to and press enter, and your cursor will be moved to that location. W }'039*f 981113 21600410 MACRO SCREEN FILE HELP ~F7~or~Ctrl P~ Open/Load previous record ~F8~or~Ctrl N~ Open/Load next record ~F9~or~Ctrl S~ Save Record ~Shift F9~ Delete Record ~F10~ Selection Screen W }'039*o 981113 21600410 MACRO SCREEN OPTIONS HELP ~Alt D~ Duplicate Macro ( used with Alt M) ~Alt E~ Display Keystrokes and Edit macro ~Alt M~ Mark Macro to Duplicate (used with Alt D) ~Alt W~ This places the Reference Code on Word Processor YLIST. See under "Procedures for entry and editing - Global Functions" *in your manual. Or press~W~to see the same information on the screen. W }*tna W }'039*q 991025 21600410 * QUESTIONS-how to... * * * Macro Screen Overview ~ O ~ * * Detailed Help for Macro Screen ~ D ~ O }039*o D }*h W }'03900a 991112 05520615 Macro Code ('') The computer maintains this field automatically, so you need not enter anything here. W }'03901a 981113 04440424 Macro Description ('') Enter a description of the macro. W }'039K10a 980604 16600510 Macro Name ('') Enter the letter(s) or number(s) which will be used to activate your macro. Often only one character is used in order to save time when starting the macro. Note: Some planning needs to be done when Macro Names are selected. When you try to activate a macro with a name of 2 or more characters and there is another macro (of the same Type) with a shorter name that is identical to the beginning character(s) of the longer macro, the shorter macro will be activated instead of the longer one. For example, if F and F1 are the names of same Type macros, only F will work, or if R12 and R1 are the names of same Type macros, only R1 will work. W }'039K10b 980604 16600510 See "Setting up Macros" and "Macro Types" in your manual for further help. Or you may press S to see "Setting up Macros" or press T to see "Macro Types" on your screen. W }'039K12a 980604 07520615 Screen ('') Enter the Screen where the Macro is used. If this is a Global or User Macro, or in other words a Macro that can be used in various screens, let this field blank. W }'039K13a 980604 09520615 User ('') Enter the User number if this is a User Macro. A User Macro is a macro which is setup to be used on only on one terminal in the computer system. The User Number is displayed in the bottom left corner of the screen. W }'039s 971212 }*m W }'039sa 971212 }*ma W }'039t 971212 }*mb W }'039ta 971212 }*mba W }'039tb 971212 }*mc W }'12908a 980604 06520915 Remark This is an information field for your convenience. You may enter a remark about the terms you are setting up. W }'12909a 980604 16600410 Recurring Payment The RECURRING PMT field is used to enter terms for bills of the same amount from the same vendor that are repeated periodically. This could be mortgage payments, rent payments or other periodic payments. Enter 1M for payments due once a month, or 3M for payments every 3 months. Enter 15D for payments due every 15 days. For more information, see "Recurring Payments" or press ~ R ~. If the bill is not a Recurring Payment, let this field blank. R }B09r W }'12910a 001109 16600610 Pay by S/N Put a "Y" in the PAY BY S/N field if you want to select individual items on the A/P Bill for payment by serial number. Letting the field blank works the same as using an "N". See Paying Bills by ~Serial Number~ for more infor- mation. NOTE: Whether you pay by serial number determines what kind of partial payments you may set up on the bottom part of the Terms window. See Entering A/P Terms for ~Partial~ ~Payments.~ P }B04p S }In W }'12912a 001108 16600610 Due Days If you enter Due Days in Column 1, the computer enters the Due Date in Column 2, based on the A/P Invoice date in the top right corner of the Bill Entry screen (B). You can enter the Due Date in Column 1 or Column 2. To change only the month, enter the month number followed by a forward slash (/), in the Due Days column. For example, 10/ means October. To change month and day, enter the month number followed by a forward slash (/), then the day, in the Due Days column. Entering 10/2 means the 2nd of October. If the date you enter is before Invoice Date, the computer will advance the year of the due date. W }'12912b 001108 16600610 You can also specify a due date that is a certain day of the following month. To do that, enter a number followed by an "N" (for next). To specify a due date that is a certain day of the second month after the invoice date, enter a number followed by an "S". To specify a due date that is determined by the day of month on which the invoice date falls, use the pattern shown in the examples that follow. Example 1: 15-20M Example 2: 15-20M,31-5N Example 3: 16-15N,31-3S W }'12912c 980604 16600610 Example 1 means, invoices from the 1st through the 15th of the month have a due date on the 20th of the same month. The "M" means the due date is in the same month as the invoice date. Example 2 means, invoices from the 1st through the 15th have a due date on the 20th of the same month, and invoices from the 16th through the 31st have a due date on the 5th of the next month. Items in a series like this must be in numerical order to work properly. Example 3 means, invoices from the 1st through the 16th have a due date on the 15th of the next month, and invoices from the 17th through the 31st have a due date on the 3rd of the second month after the invoice date. W }'12913a 001109 17600610 % Due (Percent Due) The third and fourth columns are used for setting up partial payments on bills. If you enter the Percent Due in Column 3, the computer enters the Amount Due in Column 4. (The computer also calculates how much remains due after the first payment and enters its calculations on the second line in columns 1 to 4.) You can also enter the Amount Due in column 3 if you put a $ after the amount, for example 25$. You can also enter a "V" for variable in the % Due column. See Entering A/P Terms for~Partial Payments.~ If the bill is to be paid all at once, don't put anything in columns 3 or 4. P }B04p W }'12914a 001108 17600610 Discount Days The fifth and sixth columns work similar to columns 1 and 2. If you enter Discount Days in Column 5, the computer enters the Discount Date in Column 6. You can enter the Discount Date in Column 5 or Column 6. To change only the month, enter (in the Discount Day Column), the month number followed by a forward slash (/), for example 7/ means July. To change month and day, enter the month number followed by a forward slash (/), then the day, for example 7/4 means the 4th of July. If the date you enter is before Invoice Date, the computer will advance the year of the discount date. W }'12914b 991025 17600610 You can also specify a discount date that is a certain day of the following month. To do that, enter a number followed by an "N" (for next). To specify a discount date that is a certain day of the second month after the invoice date, enter a number followed by an "S". To specify a discount date that is determined by the day of month on which the invoice date falls, use the pattern shown in the examples that follow. # Example 1: 15-20M # Example 2: 15-20M,31-5N # Example 3: 16-15N,31-3S W }'12914c 980604 17600610 Example 1 means, invoices from the 1st through the 15th of the month have a discount date on the 20th of the same month. The "M" means the discount date is in the same month as the invoice date. Example 2 means, invoices from the 1st through the 15th have a discount date on the 20th of the same month, and invoices from the 16th through the 31st have a discount date on the 5th of the next month. Items in a series like this must be in numerical order to work properly. Example 3 means, invoices from the 1st through the 16th have a discount date on the 15th of the next month, and invoices from the 17th through the 31st have a discount date on the 3rd of the second month after the invoice date. W }'12915a 980604 14520715 Discount % (Discount Percent) The seventh and eighth columns work similar to columns 3 and 4. If you enter the Discount % in Column 7, the computer enters the Discount Amount in Column 8. You can also enter the Discount Amount in column 7 if you put a $ after the amount. (This only works on the Bill Entry screen (B) and you must have an amount entered in the Inv Amt field, just above the Terms field.) W }'12918a 980604 13520815 Due Date If you enter Due Days in Column 1, the computer enters the Due Date in Column 2, based on the A/P Invoice date in the top right corner of the Bill Entry screen (B). You can enter the Due Date in Column 1 or Column 2. To change the date in the Due Date column, enter one or two digits to change only the day. Enter 3 or 4 digits to change the month and the day. Enter 5 or 6 digits to change month day and year. W }'12919a 001109 16600610 Amount Due The third and fourth columns are used for setting up ~Partial Payments~on bills. If you enter the Percent Due in Column 3, the computer enters the Amount Due in Column 4. Or, you can let the Percent Due column blank and simply enter the Amount Due in this field. (The computer calculates how much remains due after this payment and enters its calculations on the next blank line in columns 1 to 4.) If the bill is to be paid all at once, don't put anything in columns 3 or 4. P }B04p W }'12920a 980604 17600610 Discount Date The fifth and sixth columns work similar to columns 1 and 2. If you enter Discount Days in Column 5, the computer enters the Discount Date in Column 6. You can enter the Discount Date in Column 5 or Column 6. To change the date in the Discount Date column, enter one or two digits to change only the day. Enter 3 or 4 digits to change the month and the day. Enter 5 or 6 digits to change month day and year. If the Discount Date field is blank, you can enter the date by typing 5 or 6 digits for month, day and year. W }'12921a 980604 15600610 Discount Amount The seventh and eighth columns work similar to columns 3 and 4. If you enter the Discount % in Column 7, the computer enters the Discount Amount in Column 8. You can let the Discount % column blank and enter the Discount Amount in Column 8. (This only works on the Bill Entry screen (B) and you must have an amount entered in the Inv Amt field, just above the Terms field.) W }'140*BRRA 000427 10280310 Change Schedule Date ~Alt D~ Change Alarm Date ~Alt A~ Return to U screen ~Alt S~ Select Top-Bottom ~Alt E~ Emp Start-End Time ~Alt T~ Mark Job Finished ~Alt F~ Move to Next Job ~Alt M~ Clear Prev Schedule ~Alt C~ Unmark finished Job ~Alt U~ W }'240*a 991102 21600410 MASTER DIRECTORY EDITING SCREEN ~OPTIONS- more help~ Field Help ~F1~ Clear Screen ~Alt C~ Duplicate Dir ~Alt D~ Entry Location ~Ctrl J~ Load Current Dir ~Alt L~ Load Specific Dir ~Alt S~ ~File- more help~ Save Directory ~F9~ ~QUESTIONS- how to... ~ For additional~Help~enter H or click on~Help~ Q }'240*q F }'240*f H }R*h O }'240*o W }'240*f 990707 21600410 MASTER DIRECTORY SCREEN FILE HELP ~F9~or~Ctrl S~ Save Directory ~F10~ Selection Screen W }'240*o 990707 21600410 MASTER DIRECTORY EDITING SCREEN ~Alt C~ Clears All the Fields on the Screen ~Alt D~ Duplicate Record. Next time you save this directory it will prompt you for a device and offset to save it to. ~Alt L~ Loads Active Directory ~Alt S~ Load Specific Dir. This will prompt for Device and offset to load a directory to edit from. Q }'039*q F }'240*f H }R*h O }'039*o W }'240*q 990707 21600410 To edit an existing master directory, 1st load it using Alt-L or Alt-S. Make changes and save back to disk with F9. To create a new directory, type the directory in as desired on the screen and when you save it, it will ask for the device and offset to save the directory to. If editing Dos files, use device Q. The computer scans from the bottom up when reading the table on the bottom, so be sure to list these files in reverse alphabetical order. Q }'039*q F }'240*f H }R*h O }'240*o W }'241*a 981014 18270420 HEX EDITOR Summary Mode On/Off~Alt S~ Next Screen ~PgUp~ Previous screen ~PgDn~ Previous Block ~F7~ Next Block ~F8~ Selection Screen ~F10~ Arrow Up a Line ~Up~ Arrow Down a Line ~Dn~ Enter Block to Edit~Alt E~ Device & Offset ~Alt D~ Print ~Alt P~ Search Hex ~Alt H~ Search Ascii ~Alt A~ Jump to location ~Alt J~ Mode Block/Sector ~Alt M~ W }'254*a 991025 21600410 * * * * * * * KEYBOARD FUNCTIONS FOR LOOKUP SCREEN * * ~OPTIONS- more help~ Help ~F1~ * Add New Code ~Alt A~ ~EDIT- more help~ * Index ~Alt I~ Up one line ~Up Arrow~ * Mark Start To Print~Alt M~ Down one line ~Down Arrow~ * Print Lookup ~Alt P~ Up ten lines ~Page Up~ * Search ~Alt S~ Down ten lines ~Page Down~ * ~A/P Bill Help~ ~VIEW- more help~ * * ~LOOKUP SCREEN EXPLANATION~ * * For additional~Help~enter H or click on~Help~ * * * * * * A }'254t O }'254*o E }'254*e H }R*h V }'254*v L }'254l W }'254*e 980604 21600410 LOOKUP SCREEN EDIT HELP and Arrows, and - On all of the Lookups you can use the and Arrow keys and the and keys to view the list and place the cursor on your selection. When you hit on your choice, you are either given another Lookup screen with further choices or you are taken back to the former screen with your choice entered onto the screen. When in help screens and choosing options you can then press to go back one l