Perguntas Relatório Ranking Venda por Produto

Mais
11 anos 8 meses atrás #12088 por Faccio
boa tarde colegas.
Alguém conhece ou desenvolveu algum relatório que tragas as informações do Ranking de Vendas por Produto em determinado período?
Se puder me ajudar agradeço.

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 7 meses atrás #12101 por henry.charriere
Flavio, bom dia! Pode usar essa consulta e agrupar da forma que vc quizer! Acho que vai lhe antender, no meu caso estou pegando por item, mas como vc vai agrupar não tem problema.
Lembrando que pego por grupo de produtos aqui na minha empresa, qualquer coisa vc pode tirar.



SELECT
*
FROM dbo.SB1010 PRO
INNER JOIN dbo.SD2010 ITN ON PRO.B1_COD = ITN.D2_COD
INNER JOIN dbo.SF2010 NFS ON ITN.D2_DOC = NFS.F2_DOC AND ITN.D2_SERIE = NFS.F2_SERIE AND ITN.D2_CLIENTE = NFS.F2_CLIENTE AND ITN.D2_LOJA = NFS.F2_LOJA AND ITN.D2_FILIAL = NFS.F2_FILIAL
INNER JOIN dbo.SA1010 CLI ON NFS.F2_CLIENTE = CLI.A1_COD AND NFS.F2_LOJA = CLI.A1_LOJA
INNER JOIN dbo.SC6010 ITP ON ITN.D2_PEDIDO = ITP.C6_NUM AND ITN.D2_ITEMPV = ITP.C6_ITEM AND ITN.D2_FILIAL = ITP.C6_FILIAL
INNER JOIN dbo.SF4010 NAT ON ITN.D2_TES = NAT.F4_CODIGO
WHERE (ITN.D2_GRUPO = '052' OR ITN.D2_GRUPO = '050' OR ITN.D2_GRUPO = '051' OR ITN.D2_GRUPO = '053') AND (NFS.D_E_L_E_T_ <> '*') AND
(ITN.D_E_L_E_T_ <> '*') AND (NAT.F4_TIPO = 'S') AND (NAT.D_E_L_E_T_ <> '*') AND NFS.D_E_L_E_T_ <> '*' AND CLI.D_E_L_E_T_ <> '*'


Sem uso esse modelo de rel. como parametro;

#include "protheus.ch"
#Include "TopConn.ch"
#Include "Colors.ch"

User Function VENDVEND()

Local oReport

If TRepInUse()
dGet3 := FirstDay(dDatabase)
dGet4 := LastDay(dDatabase)

Pergunte("MTS0000002",.F.)

oReport := ReportDef()
oReport:PrintDialog()

EndIf

Return

Static Function ReportDef()

Local oReport
Local oSection
Local oBreak
Local sTitulo := "Vendas por vendedor - Período de " + dtoc(mv_par01) + ' a ' + dtoc(mv_par02)


oReport := TReport():New("VENDVEND", sTitulo ,"MTS0000002",{|oReport| PrintReport(oReport)},"Vendas por Vendedor")
oSection := TRSection():New(oReport,"Vendas por Vendedor",{"SD2"})


TRCell():New(oSection,"VENDEDOR","SD2")
/*TRCell():New(oSection,"DATA","SD2")
TRCell():New(oSection,"D2_TES","SD2")
TRCell():New(oSection,"F4_FINALID","SD2")
TRCell():New(oSection,"D2_DOC","SD2")
TRCell():New(oSection,"D2_CLIENTE","SD2")
TRCell():New(oSection,"A1_NOME","SD2")
TRCell():New(oSection,"D2_COD","SD2")
TRCell():New(oSection,"B1_DESC","SD2")
TRCell():New(oSection,"D2_UM","SD2")
TRCell():New(oSection,"D2_QUANT","SD2")
TRCell():New(oSection,"D2_PRCVEN","SD2")
TRCell():New(oSection,"D2_TOTAL","SD2") */


Return oReport

Static Function PrintReport(oReport)
Local oSection := oReport:Section(1)
Local cPart
Local cFiltro

#IFDEF TOP

MakeSqlExpr("MTS0000002")

oSection:BeginQuery()
BeginSql alias "QRYSD2"
//coloque sua query aqui
EndSql

oSection:EndQuery(mv_par04)

#ELSE

MakeAdvplExpr("MTS0000002")

#ENDIF

oSection:Print()

Return

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.116 segundos
Joomla templates by a4joomla