Código: Selecionar todos
select (1)
USE CAD1
index on obra to c1ind_obra
select (2)
USE CAD2
SET DATE TO BRITISH
SET CENTURY ON
index on obra to c2ind_obra
INDEX ON NUMERO TO CAD2IND_NUMERO
INDEX ON left (DTOS(PAGAMENTO),6)TO CAD2_IND2
set relation to cad2->obra into cad1
V_SOMA=0
v_ANOMES=SPACE(6)
V_mesano=space(6)
dbselectarea (2)
SET COLOR TO "R+"
BORDA=CHR(177)+CHR(177)+CHR(177)+CHR(177)+CHR(177)+CHR(177)+CHR(177)+CHR(177)
CLEAR
@ 3,1,24,79 BOX BORDA
@ 1,1,24,79 BOX BORDA
@ 2,10 SAY "NOME DO CLIENTE - RELATORIO DE FATURAS PAGAS"
@ 18,20 SAY "DIGITE O MES E ANO: " GET v_MESANO PICT "@R 99/9999"
READ
V_MES = LEFT (v_MESANO,2)
V_ANO = RIGHT ( V_MESANO,4)
SEEK V_ANOMES
CL=66
CLEAR
SET PRINTER ON
SET DEVICE TO PRINTER
DO WHILE v_ANOMES = DTOS(PAGAMENTO).AND. !EOF()
V_SOMA+=VALOR
if cl>60
CL=1
@ CL,50
@ cl,30 say " NOME DO CLIENTE."
CL=CL+2
@ CL,1 SAY " LISTAGEM DE FATURAS PAGAS "
@ CL,50 SAY DATE()
@ CL,70 SAY TIME()
??chr(13)
??chr(15)
CL=CL+2
@ CL,1 SAY "OBRA"
@ CL,12 SAY "EMPRESA"
@ CL,61 SAY "NUMERO"
@ CL,70 SAY "VALOR"
@ CL,82 SAY "EMISSAO"
@ CL,98 SAY "VENCIMENTO"
@ CL,112 SAY "PAGAMENTO"
@ CL,125 SAY "VLR PAGO"
CL=CL+1
ENDIF
dbselectarea (1)
@ CL,1 SAY OBRA
dbselectarea (1)
@ CL,12 SAY EMPRESA
dbselectarea (2)
@ CL,61 SAY NUMERO
@ CL,66 SAY VALOR
@ CL,82 SAY EMISSAO
@ CL,98 SAY VENCIMENTO
@ CL,112 SAY PAGAMENTO
@ CL,123 SAY VPAGO
cl=cl+1
SKIP
ENDDO
@ CL,1 SAY REPLICATE ("-",133)
CL=CL+1
@ CL,40 SAY "TOTAL =>"
@ CL,63 SAY V_SOMA
eject
CLEAR
SET PRINT OFF
SET DEVICE TO SCREEN
RETURN
