Category : Dbase (Clipper, FoxBase, etc) Languages Source Code
Archive   : TMKPDB3.ZIP
Filename : EXSUM.PRG

 
Output of file : EXSUM.PRG contained in archive : TMKPDB3.ZIP
CLEAR
SET TALK OFF
?"ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿"
?"³ EXPENSE FILE REPORTING SYSTEM ver. 1.0 ³"
?"ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ"
?" Press [C] to continue, any other key to abort."
WAIT "" TO CNT
IF UPPER(CNT) <> "C" THEN
RETURN
ENDIF
?"SELECT A LETTER FOR SUMMARY TYPE."
?" [R]EIMBURSABLE [N]ON-REIMBURSABLE [B]OTH"
WAIT "SELECTION:" TO TYP
TYP = UPPER(TYP)
?"PROCESSING..."
**************** BUILD LIST OF GL CODES
SET DEVICE TO PRINT
SET SAFETY OFF
USE EXPENSES
IF TYP = "R" THEN
COPY TO TEMP FIELDS GLCODE FOR REIMBURSE
STS = "REIMBURSABLE"
ENDIF
IF TYP = "N" THEN
COPY TO TEMP FIELDS GLCODE FOR .NOT. REIMBURSE
STS = "NON-REIMBURSABLE"
ENDIF
IF TYP <> "N" .AND. TYP <> "R" THEN
COPY TO TEMP FIELDS GLCODE
STS = "ALL"
ENDIF
SELECT 3
USE TEMP
SET UNIQUE ON
INDEX ON GLCODE TO TEMP
NBR = 10
GO TOP
DO WHILE .NOT. EOF()
NBR = NBR + 1
X = TRIM(STR(NBR,2,0))
STORE GLCODE TO CD&X
GLTOT&X = 0
SKIP 1
ENDDO
@ 1,50 SAY "TJKM SUMMARY OF " + STS + " EXPENSES"
@ 2,55 SAY DTOC(DATE())
WW = 11
@ 3,5 SAY "EMPLOYEE ----- GL CODE"
DO WHILE WW <= NBR
X = TRIM(STR(WW,2,0))
@ 3,34+(WW-10)*8 SAY CD&X
WW = WW + 1
ENDDO
@ PROW(),34+(WW-10)*8 SAY "TOTAL"
******************
GT = 0
SELECT 1
SET UNIQUE OFF
SET INDEX TO EXNUM
IF TYP = "R" THEN
SET FILTER TO REIMBURSE
ENDIF
IF TYP = "N" THEN
SET FILTER TO .NOT. REIMBURSE
ENDIF
GO TOP
SELECT 2
USE EMPLOYEE ALIAS EMP
SET INDEX TO EMPNUM
SELECT 1
SET RELATION TO EMPNUM INTO EMP
DO WHILE .NOT. EOF()
TOT = 0
STORE EMPNUM TO NUM
STORE RECNO() TO REC
SELECT 2
STORE NAME TO NM
SELECT 1
WW = 11
@ PROW()+ 1,0 SAY NM
DO WHILE WW <= NBR .AND. .NOT. EOF()
X = TRIM(STR(WW,2,0))
SUM AMOUNT TO SUB WHILE EMPNUM = NUM .AND. GLCODE = CD&X
IF TYPE = "M" THEN
SUB = SUB * .25
ENDIF
IF TYPE = "C" THEN
SUB = SUB * 30
ENDIF
GLTOT&X = GLTOT&X + SUB
TOT = TOT + SUB
@ PROW(),30+(WW-10)*8 SAY TRIM(STR(ROUND(SUB,2),7,2))
WW = WW + 1
ENDDO
@ PROW(),(NBR-9)*8+30 SAY TRIM(STR(ROUND(TOT,2),7,2))
GT = GT + TOT
GO REC
DO WHILE EMPNUM = NUM .AND. .NOT. EOF()
SKIP 1
ENDDO
ENDDO
WW = 11
@ PROW()+1,0 SAY " TOTAL "
DO WHILE WW <= NBR
X = TRIM(STR(WW,2,0))
@ PROW(),30+(WW-10)*8 SAY TRIM(STR(GLTOT&X,7,2))
WW = WW + 1
ENDDO
@ PROW()+1,10 SAY "GRAND TOTAL = "
@ PROW(),30 SAY GT
SELECT 3
USE
ERASE TEMP.NDX
ERASE TEMP.DBF
SET DEVICE TO SCREEN
ETURN


  3 Responses to “Category : Dbase (Clipper, FoxBase, etc) Languages Source Code
Archive   : TMKPDB3.ZIP
Filename : EXSUM.PRG

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/