&& Resumo de Desempenho Maior/Menor Valor (Relatório lojas) &&Mirian Massoni **************************************************************************************************************************** *********************************************** MÉTODO 1 *********************************************** **************************************************************************************************************************** Select COALESCE(Sum(Case When Vendas.Condicoes<>'999' Then Total End)::Numeric(10,2),0) as Total, COALESCE(Sum(Case When Vendas.Condicoes<>'999' Then 1 End)::Numeric(3,0),0) as Boletas, COALESCE(Sum(Case When Vendas.Condicoes<>'999' Then Pecas End)::Numeric(10,2),0) as Itens, COALESCE(Max(Case When Vendas.Condicoes<>'999' Then Total End)::Numeric(10,2),0) as Maior, COALESCE(Sum(Case When Vendas.Condicoes='999' Then Total End)::Numeric(10,2),0) as TotalDev, COALESCE(Sum(Case When Vendas.Condicoes='999' Then 1 End)::Numeric(3,0),0) as BoletasDev, COALESCE(Sum(Case When Vendas.Condicoes='999' Then -Pecas End)::Numeric(10,2),0) as ItensDev From Vendas Inner Join Pessoas Empresas on LPad(Vendas.Empresa,6,'0')::Char(6)=Empresas.Codigo Inner Join Pessoas Vendedor on Vendas.Vendedor=Vendedor.Codigo Where Vendas.Tipo = '01' And Vendas.Status='S' And cFiltro Group By ReportGroup **************************************************************************************************************************** *********************************************** MÉTODO 2 *********************************************** **************************************************************************************************************************** Lparameters oForm as Object Select ReportGroup, Total As Total, Boletas As Boletas, Itens As Itens,; Maior As Maior, Round(Total/Iif(Boletas=0,1,Boletas),2) as MediaVenda,; Round(Itens/Iif(Boletas=0,1,Boletas),2) as ItensVenda, Round(Total/8,2) as VendasHora,; TotalDev As TotalDev, BoletasDev As BoletasDev, (ItensDev*-1) As ItensDev, Total+TotalDev as Orderna ; From Temporario ; Into Cursor Temporario readwrite Select * ; From Temporario ; Order by Orderna desc ; Into Cursor Temporario ReadWrite **************************************************************************************************************************** *********************************************** MÉTODO 3 *********************************************** **************************************************************************************************************************** Lparameters oForm as Object oForm.DoAtivar('Todos',.F.) oForm.DoAtivar('Data',.T.) oForm.DoAtivar('Empresa',.T.) oForm.DoAtivar('Vendedor',.T.) oForm.Data.Campo='Vendas.Data' oForm.Data.Auxiliar='Vendas.Data' oForm.Empresa.Campo='Vendas.Empresa' oForm.Empresa.CampoAuxiliar="Cast(Substr(Empresas.Codigo,5,2)||' - '||Empresas.Apelido as Char(80))" oForm.Vendedor.Campo='Vendas.Vendedor' oForm.Vendedor.CampoAuxiliar='Vendedor.Apelido' oForm.Vendedor.Totalizar.Caption='Vendedor' oForm.Grade.Inicial.Value='' oForm.DoAgrupar('Vendedor')