Pessoal, criei o relatório abaixo. Mas preciso as informações dele sejam mês a Mês. Alguém sabe o que eu devo acrescentar nele....
"Relatório de vendas 04"
Local npagina:=1
Local nlinha
setprint to lpt1
select1
use venda
select2
use receber
select1
go top
do while .t.
nlinha:=2
@nlinha.25 "RELATÓRIO DE VENDAS 04"
nlinha=nlinha+1
@nlinha,10 say "data"
@nlinha,16 say date()
@nlinha,70 say npagina
nlinha=nlinha+1
nlinha,0 say replicate ("-",80)
nlinha:=nlinha+1
@nlinha,1 say "CLIENTE"
@nlinha,8 say codigo+"-"+nom
nlinha:=nlinha+1
nlinha,0 say replicate ("-",80)
nlinha:=nlinha+1
@nilnha,1 say "PRODUTO"
@nlinha,10 say "QUANTIDADE"
@nlinha,20 say "TOTAL"
@nlinha,30 say "DESCONTO"
@nlinha,40 say "PAGO"
@nlinha,50 say "SALDO"
nlinha:=nlinha+1
do while .t.
cunit:=unit
cquant:=quant
ccodigo:=codigo
cproduto:=produto
select2
locate all from codigo==ccodigo.and.produto==cproduto
if eof()
exit
endif
@nlinha,1 say produto
@nlinha,10 quant
@nlinha,20 say unit*quant
@nlinha,30 say desconto
@nlinha,40 say baixa
@nlinha,50 say ((cunit*cquant)-desconto)-baixa
nlinha:=nlinha+1
skip()
if nlinha>56
exit
endif
if eof()
exit
endif
enddo
select1
skip()
if eof()
exit
endif
npagina:=npagina+1
enddo
select1
use
select2
use
set print to secreen
return
Valeu...
Preciso de ajuda.
Moderador: Moderadores
Eu só consegui entender este código acima graças ao recurso de REINDENTAR da xDev!! Bom... me diz 3 coisas sobre este relatório, para nós podermos entender:
* PQ vc usa LOCATE e não SEEK?
* E qual o nome do campo que contem o campo contendo a data ou o mes que você deseja agregar?
* Vc tem um índice no campo citado na pergunta acima?
* PQ vc usa LOCATE e não SEEK?
* E qual o nome do campo que contem o campo contendo a data ou o mes que você deseja agregar?
* Vc tem um índice no campo citado na pergunta acima?
ñ sei como funciona seu relatório amigo ...
mas vou explicar o seguinte ...
para filtrar por data vc tera de ter duas variaveis
data1 e data2
data=datcad // variavel igualando a data do seu arquivo
if data1>=data .and. data2 <=data
dae pra frente se tiver alguma duvida me manda seu e-mail que mando pra vc o relatório inteiro
ederxc@itelefonica.com.br
té +++
mas vou explicar o seguinte ...
para filtrar por data vc tera de ter duas variaveis
data1 e data2
data=datcad // variavel igualando a data do seu arquivo
if data1>=data .and. data2 <=data
dae pra frente se tiver alguma duvida me manda seu e-mail que mando pra vc o relatório inteiro
ederxc@itelefonica.com.br
té +++
C:\Xharbour\Xdev\Fw\VSX
Valeu Galera....O problema é que eu tô aprendendo, mas um dia eu chego lá..rsrsr. Eu usei o locate porque não conhecia o seek. O nome do campo de data é "vencimento".
Eder é isso mesmo que eu precisava. Mas a dúvida é aonde eu coloco, dentro do primeiro while ou do segundo. Cara, me manda um exemplo.
ricardo_sancar@ig.com.br
Valeu, brigado...
Eder é isso mesmo que eu precisava. Mas a dúvida é aonde eu coloco, dentro do primeiro while ou do segundo. Cara, me manda um exemplo.
ricardo_sancar@ig.com.br
Valeu, brigado...
Sancar
-
Eredterhadick7


