Relatórios de produtos nao vendidos/movimentados

Fórum sobre interface com o Cliente.

Moderador: Moderadores

Avatar do usuário
rubens
Colaborador
Colaborador
Mensagens: 1520
Registrado em: 16 Ago 2003 09:05
Localização: Nova Xavantina - MT

Relatórios de produtos nao vendidos/movimentados

Mensagem por rubens »

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
"Eu e minha casa servimos ao Senhor e você ???"
MSDN
Usuário Nível 4
Usuário Nível 4
Mensagens: 741
Registrado em: 28 Nov 2003 15:55
Localização: CWB
Contato:

Relatórios de produtos nao vendidos/movimentados

Mensagem por MSDN »

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
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Relatórios de produtos nao vendidos/movimentados

Mensagem por JoséQuintas »

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
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
alexlucc
Usuário Nível 1
Usuário Nível 1
Mensagens: 49
Registrado em: 13 Nov 2016 19:19
Localização: Nova Iguaçu /rj

Relatórios de produtos nao vendidos/movimentados

Mensagem por alexlucc »

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
alexlucc
Usuário Nível 1
Usuário Nível 1
Mensagens: 49
Registrado em: 13 Nov 2016 19:19
Localização: Nova Iguaçu /rj

Relatórios de produtos nao vendidos/movimentados

Mensagem por alexlucc »

Rubens vou procurar aqui alguns que tenho nesse sentido e já te mando.
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2785
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP

Relatórios de produtos nao vendidos/movimentados

Mensagem por Jairo Maia »

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: Selecionar todos

/*
  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
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
alexlucc
Usuário Nível 1
Usuário Nível 1
Mensagens: 49
Registrado em: 13 Nov 2016 19:19
Localização: Nova Iguaçu /rj

Relatórios de produtos nao vendidos/movimentados

Mensagem por alexlucc »

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 376 vezes
O relatório gerado.
O relatório gerado.
Escolher a classificação por maior consumo.
Escolher a classificação por maior consumo.
Seleciona os produtos ref ao grupo selecionado anteriormente.
Seleciona os produtos ref ao grupo selecionado anteriormente.
Seleciona os grupos dos produtos
Seleciona os grupos dos produtos
3.PNG
Se  seu sistema for mutifilial, seleciona a filial.
Se seu sistema for mutifilial, seleciona a filial.
Seleciona o periodo do relatório
Seleciona o periodo do relatório
Avatar do usuário
rubens
Colaborador
Colaborador
Mensagens: 1520
Registrado em: 16 Ago 2003 09:05
Localização: Nova Xavantina - MT

Relatórios de produtos nao vendidos/movimentados

Mensagem por rubens »

Bom dia

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

obrigado a todos...


Rubens
"Eu e minha casa servimos ao Senhor e você ???"
Responder