¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Como migrar relatórios do XL para Crystal Reports e extrair vendas mensais por linhas

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 2 Vistas
0
Cargando...

Olá, estou escrevendo para solicitar ajuda com relação a um relatório de vendas. Atualmente, onde trabalho, alguns relatórios eram feitos com o XL Reporter, mas estamos na versão 8.82 e agora vamos atualizar para a 9.1. Precisamos de uma maneira de migrar os relatórios do XL para o Crystal Reports, ou pelo menos preciso neste caso de uma consulta para extrair as vendas mensais por linha. Fiz uma consulta pelo gerador, mas não produz o mesmo resultado do relatório que sempre usamos; há vendas que não são refletidas aqui e sim no XL. Além disso, as notas não aparecem aqui. No filtro que fiz, as notas são filtradas por [TargetType], se for 14 são notas. Agradeço sua ajuda para obter uma consulta e exportá-la para o Crystal.

SELECT T1.[DocStatus], T1.[DocNum], T1.[DocDate], T1.[CardCode], T2.[CardName], T0.[ItemCode], T0.[Dscription], T0.[Quantity], T0.[LineTotal], T0.[TargetType], T0.[TrgetEntry], T3.[U_BKV_LINEA], T3.[U_BKV_SERIE], T3.[U_BKV_COLECCION], T4.[SlpName], T4.[Memo]

FROM INV1 T0 INNER JOIN OINV T1 ON T0.DocEntry = T1.DocEntry INNER JOIN OCRD T2 ON T0.BaseCard = T2.CardCode INNER JOIN OITM T3 ON T0.ItemCode = T3.ItemCode INNER JOIN OSLP T4 ON T0.SlpCode = T4.SlpCode

WHERE T1.[CardCode] = T2.[CardCode] AND T3.[ItemCode] = T0.[ItemCode] AND T0.[SlpCode] = T4.[SlpCode] AND T0.[DocDate] >=[%0] AND T0.[DocDate] <=[%1]

Desde já, muito obrigado.

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Experimente com este código:

SELECT T1.[DocStatus], T1.[DocNum], T1.[DocDate], T1.[CardCode], T2.[CardName], T0.[ItemCode], T0.[Dscription], T0.[Quantity], T0.[LineTotal], T0.[TargetType], T0.[TrgetEntry], T3.[U_BKV_LINEA], T3.[U_BKV_SERIE], T3.[U_BKV_COLECCION], T4.[SlpName], T4.[Memo]

FROM INV1 T0 INNER JOIN OINV T1 ON T0.DocEntry = T1.DocEntry INNER JOIN OCRD T2 ON T1.Cardcode = T2.CardCode LFT JOIN OITM T3 ON T0.ItemCode = T3.ItemCode INNER JOIN OSLP T4 ON T0.SlpCode = T4.SlpCode

WHERE T0.[DocDate] >=[%0] AND T0.[DocDate] <=[%1]

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Certifique-se de encerrar a discussão e avaliar as respostas em destaque.

Saudações,

Manuel Díaz

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá, já os testei e funcionam excelente, mostram a quantidade e o valor corretos. Ambos têm sido de grande ajuda para mim, agora só preciso adicionar alguns campos que faltam para as estatísticas e estará pronto. Muito obrigado mesmo.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Pedro:

Teste estas duas consultas:

----- CONSULTA 1-------

SELECT

T1.DocNum 'Número Interno SAP',

T1.CardCode AS 'Código de deudor/acredor',

T1.CardName AS 'Nombre de deudor/acredor',

T3.StateB 'Región',

T1.FolioNum, month(T1.DocDate) AS 'mes de contabilización',

year(T1.DocDate) 'Año',Max (T0.ItemCode) AS 'Número de artículo',

T0.Dscription AS 'Descripción artículo/serv.',

sum(T0.Quantity) AS 'Cantidad',

AVG(T0.Price) AS 'Precio',

sum(T0.LineTotal) AS 'Total líneas'

FROM [dbo].[INV1] T0

INNER JOIN [dbo].[OINV] T1 ON T1.DocEntry = T0.DocEntry

inner join [dbo].[OITM] T2 on T0.ItemCode = t2.ItemCode

INNER JOIN [dbo].[INV12] T3 on T1.[DocEntry] = T3.[DocEntry]

WHERE (T1.docdate >= '[%1]') AND (T1.docdate <= '[%2]')

group by T1.CardCode, T1.CardName, month(T1.DocDate), year(T1.DocDate),T0.ItemCode,T0.Dscription, T1.FolioNum, T3.StateB, T1.DocNum

Union All

SELECT

T1.DocNum 'Número Interno SAP',

T1.CardCode AS 'Código de deudor/acredor',

T1.CardName AS 'Nombre de deudor/acredor',

T3.StateB 'Región',

T1.FolioNum, month(T1.DocDate) AS 'mes de contabilización',

year(T1.DocDate) 'Año',max (T0.ItemCode) AS 'Número de artículo',

T0.Dscription AS 'Descripción artículo/serv.',

sum(T0.Quantity *-1) AS 'Cantidad',

AVG(T0.Price) AS 'Precio',

sum(T0.LineTotal *-1) AS 'Total líneas'

FROM [dbo].[rin1] T0

INNER JOIN [dbo].[orin] T1 ON T1.DocEntry = T0.DocEntry

inner join [dbo].[OITM] T2 on T0.ItemCode = t2.ItemCode

INNER JOIN [dbo].[INV12] T3 on T1.[DocEntry] = T3.[DocEntry]

WHERE (T1.docdate >= '[%1]' )and (T1.docdate <= '[%2]')

group by T1.CardCode, T1.CardName, month(T1.DocDate), year(T1.DocDate),T0.ItemCode,T0.Dscription, T1.FolioNum, T3.StateB, T1.DocNum

-------CONSULTA 2------

/* Relatório de Faturas e Notas de Crédito por Data com o custo do artigo*/

select

CASE T0.DocSubType

WHEN 'DN' THEN 'Nota de Débito'

WHEN 'IB' THEN 'Boleto'

WHEN 'IE' THEN 'Fatura Isenta'

WHEN 'IX' THEN 'Fatura de Exportação'

ELSE 'Fatura'

END as TipoDoc,

T0.DocNum as '[Num Interno]',

T0.FolioNum as '[Folio Fiscal]',

T1.DocDate as '[Fecha ContabilizaciÛn]',

T6.GroupName as '[Grupo Cliente]',

T2.CardCode as '[Código Cliente]',

T2.CardName as '[Nome Cliente]',

T1.itemcode as '[Código Items]',

T1.Dscription as '[Descrição de Artigo]',

T1.WhsCode as '[Sucursal]',

T1.PriceBefDi as '[Preço Unitário]',

T1.DiscPrcnt as '[Desconto]',

T1.Price as '[Preço Final]',

T1.Quantity as '[Quantidade]',

T1.LineTotal as '[Total]',

T8.SlpName as '[Vendedor]',

T0.DiscPrcnt as '[Porcentagem Total Desconto]',

((100-T0.DiscPrcnt)/100)*T1.LineTotal as '[Total Final]',

T1.[StockPrice] as '[Custo Artigo]',

T1.[StockPrice]*T1.Quantity as '[Total Custo]',

T0.[GrossProfit] as '[Lucro Bruto]'

from INV1 T1 inner join

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?