llg@we53.UUCP (llg) (01/15/86)
This program is written in MBasic extended and was written on a CP/M machine. All data is taken from your check register and entered as data statements in the program. Have encluded sample data for format purposes. It works! on my little 48K Sorcerer. Feel free to modify and expand it for your needs. I feel it is a versatile little program. However, as in all other written software, there are no expressed or implied warantees It would be great if many of us would submit good programs we have written to add to the public domain. Consider this as a contribution from me. I think the net is great and should be used even more. cut here cut here ------------------------------------------------------------------------- 10 print 20 clear 1000 30 sum=0:tc=0:a=0:sumdep=0:rbal=0:current=0:tnd=0 40 print" CHECK PROGRAM" 50 print" ----------------------------" 60 print 70 print" this program will allow you to examine your checking" 80 print" account in different ways -- select what you would" 90 print" like to examine and enter the number." 100 print 110 print" 1. account - no more than 13 letters" 120 print" 2. category - no more than 13 letters" 130 print" 3. month" 140 print" 4. check number (search for info on" 150 print" 1 or more checks)" 160 print" 5. complete check list" 170 print" 6. terminate program" 180 print" 7. month and category" 182 print" 8. month and account" 184 print" 9. current balance with charges & deposits" 187 print 190 print" c$ = check #" 200 print" m = month #" 210 print" d = date" 220 print" a$ = account name(13)" 230 print" k$ = categaory name(13)" 240 print" a = $ amount(####.##)" 250 print 260 print" please use and spell following `categories' exactly:" 270 print" food, misc, medical, mortgage, clothes, fun, car, etc." 280 print 290 print 300 print" please use and spell following `account names' exactly:" 310 print" kmart, fireside, national, cash, avco, visa, krogers" 320 print" dierbergs, shoneys,(cash or check)" 330 input n 340 on n goto 370,600,690,790,900,350,480,1010,1100 350 print:print:print:print "program terminated": end 370 input "enter name of account";p$ 390 read c$,m,d,a$,k$,a 395 if c$="0" then gosub 1084 400 if p$=a$ then gosub 1080 450 goto 390 460 print 470 print 480 input "enter `month' and `category' you wish to examine"; e,p$ 500 read c$,m,d,a$,k$,a 505 if c$="0" then gosub 1084 510 if p$=k$ and e=m then gosub 1080 520 goto 500 530 print 600 input "enter `category' you wih to examine"; p$ 610 read c$,m,d,a$,k$,a 615 if c$="0" then gosub 1084 620 if p$=k$ then gosub 1080 630 goto 610 640 print 690 input "enter month (by number)"; e 700 read c$,m,d,a$,k$,a 705 if c$="0" then gosub 1084 710 if e=m then gosub 1080 720 goto 700 730 print 740 print 790 input "enter check number"; f$ 800 read c$,m,d,a$,k$,a 810 if f$=c$ then gosub 1080 815 if f$=c$ then goto 830 820 goto 800 830 input "do you want info on another check? use Y or N"; p$ 840 if p$="Y" then goto 790 845 if p$="N" then goto 30 850 if c$="0" goto 30 870 print 880 print 900 input "to list completely hit `return'"; p$ 910 read c$,m,d,a$,k$,a 915 if c$="0" then gosub 1084 920 gosub 1080 930 goto 910 940 print 950 print 1010 input "enter `month' and `account' you wish to examine"; e,p$ 1020 read c$,m,d,a$,k$,a 1025 if c$="0" then gosub 1084 1030 if e=m and p$=a$ then gosub 1080 1040 goto 1020 1050 print 1060 print 1070 print 1080 if c$="..." then return 1081 print c$,m;"/";d,a$,k$,using "####,.##"; a 1082 sum=sum+a: tc=tc+1 1083 return 1084 print"---------------------------------------------------------------" 1086 print tc;"checks",,"total",spc(14)using "####,.##"; sum 1088 return 1092 print 1094 c$="0":k$="0":a=0:sumdep=0:current=0:bnkchg=0:rbal=0:tnt=0:sum=0 1100 print" CURRENT BALANCE SECTION" 1110 print" ---------------------------------------" 1120 print 1130 print" Use This Template" 1140 print 1150 print" c$, m; `/'; d, a$, k$, a" 1160 print" ... +++(deposit)" 1170 print" ... ---(bank charges)" 1180 print 1190 print"if you want detail printing enter `dp' or `return'" 1200 input"for totals only"; dp$ 1205 k$="0": c$="0" 1210 read c$,m,d,a$,k$,a 1215 if c$="0" goto 1360 1220 if k$="---" then let bnkchg=bnkchg+a: let bc=bc+1 1260 if k$="+++" then let sumdep=sumdep+a:let rbal=rbal+a:let tnd=tnd+1 1290 if c$ <> "..." then let sumchk=sumchk+a:let tc=tc+1:let rbal=rbal-a 1300 let current = rbal - bnkchg 1325 if dp$="dp" and c$="..." then gosub 1340 1330 goto 1205 1335 print 1340print c$,m;"/";d,a$,k$,using "####,.##"; a 1345 return 1350 print 1360 print"---------------------------------------------------------------" 1370 print"total deposits";spc(25)tnd,using "#####,.##"; sumdep 1380 print"total checks";spc(26)tc,using"#####,.##"; sumchk 1400 print"gross balance";spc(43)using"#####,.##"; rbal 1410 print"total bank charges";spc(21)bc,using"#####,.##"; bnkchg 1420 print"---------------------------------------------------------------" 1430 print 1440 print"net balance";spc(45)using"#####,.##"; current 1450 end 1452 data ...,1,5,check,+++,1000.00 1453 data ...,1,7,cash,+++,500.00 1454 data ...,1,8,cash,---,100.00 1455 data ...,1,9,cash,---,200.00 1456 data ...,3,10,cash,---,100.00 1457 data ...,3,10,check,+++,1200.00 1458 data ...,4,30,check,+++,10000.00 1460 data 705,1,1,straw hat,fastfood,24.25 1470 data 706,1,2,cash,misc,25.00 1480 data 707,1,4,builders,house,20.61 1490 data 708,1,4,nob hill,food,63.15 1500 data 709,1,9,fireside,car,452.70 1510 data 710,1,10,singhal,2ndmort,103.43 1512 data ...,1,10,check,+++,1000.00 1514 data ...,1,12,cash,---,50.00 1520 data 711,1,11,miracle,car,8.00 1530 data 712,1,14,safeway,food,28.51 1540 data 713,1,14,kmart,misc,17.74 1550 data 714,1,18,contel,phone,158.60 1560 data 715,1,26,finserv,misc,13.28 1600 data 0,0,0,dummy,dummy,0 1620 end