Clipper On Line • Ver Tópico - Relatórios de produtos nao vendidos/movimentados
Mudar para estilo Clássico
Discussão sobre interface com o Cliente.
Postar uma resposta

Relatórios de produtos nao vendidos/movimentados

20 Mar 2019 11:32

Bom dia...
Pessoal...
um cliente me pediu um relatório de produtos não movimentados...
Tô quebrando a cabeça aqui porque não tô conseguindo visualizar esse relatório.. Não tô pegando bem o conceito.
Que dados vou apresentar, como vou filtrar isso.
Na minha tabela de produtos ficar armazenado a data da última compra e data da última venda.. Já fica mais fácil..
Mas blz... alguém tem relatórios nesse sentido? Pode dar uma ajuda...

Obrigado
Rubens

Relatórios de produtos nao vendidos/movimentados

20 Mar 2019 18:41

Rubens, o mais simples que eu vejo a principio, é pesquisar na tabela de vendas, pq se vendeu o produto, o código/ID dele vai estar registrado em alguma tabela de venda, então se vc pegar como base a tabela de produtos e pesquisar nessa tabela de vendas e não achar o produto, sabe que nunca vendeu, ou encontrando, saber a quanto tempo não vende mais.

Abraços

Relatórios de produtos nao vendidos/movimentados

20 Mar 2019 19:45

Lembrando que provavelmente vão querer um período... por exemplo, produtos não vendidos há mais de um ano.

SQL?
SELECT Código, Nome, UltimaVenda FROM PRODUTOS WHERE UltimaVenda < '20180101'

DBF?
SET FILTER TO UltimaVenda < Stod( "20180101" )

O que vai colocar no relatório? quem sabe o que o cliente quer é o cliente.

Talvez há quanto tempo: Date() - UltimaVenda

Relatórios de produtos nao vendidos/movimentados

20 Mar 2019 20:36

Boa noite pessoal!

Gostaria de uma ajuda. Preciso acelerar minha pesquisa e o dbsetfilter está um pouco lento em rede, como poderia aumentar essa velocidade.
Uso para compilação harbour 3.2 +bcc5.5. e RDD CDX Desde já agradeço.

Estou postando o trecho do meu código que trata a questão:

SETCURSOR(1)

SETCOLOR(Mcor[1])
Sombra(08,24,15,57,frame[3])
@ 10,26 SAY PADC("Procurar Por:",30) COLOR "B/W"
@ 11,26 SAY PADC(cab,30) COLOR "R*/W"
@ 13,26 GET COD PICT "@!"
READ

SETCURSOR(0)
DBSELECTAR("Pro")
INDEX ON NOMPRO+CODPRO TAG "NOM1" TO nompro1 //NOMPRO=COD // .AND. NUMERO=cNUMERO

DBSETORDER("NOM1")
DBSETFILTER( { || trim(COD) $ NOMPRO}, trim(COD) $ NOMPRO)
DBGOTOP()

IF LASTKEY() = K_ESC
SETCOLOR(cor)
RESTSCREEN(05,15,20,65,t)
dbsetfilter()
// DBGOTO(reg)
RETURN
ENDIF

if ! trim(cod) $ nompro //(cod $ nome'1_2_3')
alert("Informacao nao encontrada!!!;Pesquise Novamente !!!")
dbsetfilter()
endif

Relatórios de produtos nao vendidos/movimentados

20 Mar 2019 20:38

Rubens vou procurar aqui alguns que tenho nesse sentido e já te mando.

Relatórios de produtos nao vendidos/movimentados

20 Mar 2019 20:54

rubens escreveu:Na minha tabela de produtos ficar armazenado a data da última compra e data da última venda..
Vou dizer como faço:

1-Registro em produtos, a última compra (em atualização de estoque) e também a última venda (a cada venda);
2-Tenho um índice com o campo "ultvenda";
3-No menu de relatórios tem a opção de "Produtos não movimentados";
4-Apresenta uma janela perguntando há quantos MESES (01 a 99 - trabalho com 2 dígitos).

Se ele coloca por exemplo 6 (parados há 6 meses ou mais), pesquisa o indice +- dessa forma:

Código:
/*
  Considerando que sua função abre o arquivo e índices,
  e já deixa o índice desejado selecionado...
*/
AbreArquivo( "PRODUTOS", nOrdem )

dData := AddMonth( Date(), -nMeses )  // pega data inicial da pesquisa (nMeses foi o número de meses digitado)
DbSeek( dData, .T. ) // se não acha a data exata, para na mais próxima

aProdutos := {}
While ultvenda <= dData  // inicia o loop
AaDd( aProdutos, { codprod, descprod, ultvenda, estoque } )
Skip
EndDo

If Len( aProdutos ) = 0

Hb_Alert( "Nenhum produto parado no período" )

Else

// monta o relatório...

EndIf

Relatórios de produtos nao vendidos/movimentados

20 Mar 2019 21:13

Segue as telas na ordem.

O relatório vai um pouco além da sua expectativa, ele mostra os produtos vendidos na ordem decrescente, ou seja, do mais vendido para o menos vendido, sendo assim, os menos vendidos os menos movimentados.

To enviando o fonte se precisar das funções internas que são todas do clipper 5.0 te mando.

Abraço.
Anexos
vendaspro.prg
(17.72 KiB) Baixado 138 vezes
7.PNG
O relatório gerado.
6.PNG
Escolher a classificação por maior consumo.
5.PNG
Seleciona os produtos ref ao grupo selecionado anteriormente.
4.PNG
Seleciona os grupos dos produtos
3.PNG
2.PNG
Se seu sistema for mutifilial, seleciona a filial.
1.PNG
Seleciona o periodo do relatório

Relatórios de produtos nao vendidos/movimentados

21 Mar 2019 08:51

Bom dia

Obrigado pessoal...
Vou analisar isso aí e fazer um compilaççã..

obrigado a todos...

Rubens
Postar uma resposta