on 12-15-2010 5:16 PM
Jovenes, realice un query en el cual me desplegara facturas de ventas, las facturas como servicios, Notas de credito contables, las exentas, Debito Fiscal, y Bienes, pero tengo un problemas al momento de ejecutar el query me desplega lo que es pero hay facturas que las duplica y no se porque ya revise todo y a mi parecer esta correcto, espero me puedan ayudar, e indicarme en donde esta mi error.
Query
SELECT T0.[DocNum] AS 'Numero Documento',
T0.[DocDate] AS 'Fecha Contabilizacion',
T0.[NumAtCard] AS 'Numero de Referencia',
T0.[U_SerieDoc] AS 'Serie Factura',
T0.[U_NumDoc] AS 'Numero Factura',
T0.[CardName] AS 'Nombre Cliente',
T1.[U_Nit] AS 'NIT',
Case
When T2.[U_Tipo_Venta] like '%B%' THEN SUM(T2.LineTotal)
Else 0
End 'Bienes',
CASE
When T2.[U_Tipo_Venta] LIKE '%S%' THEN SUM(T2.LineTotal)
Else 0
END 'Servicios',
Case
When T3.[Series]= '3' Then (T3.[VatSum])*-1
Else 0
End 'Notas de Credito',
CASE
When T2.VatPrcnt = 12 THEN (T0.VatSum)
Else 0
END AS 'IVA Debito Fiscal',
CASE
When T2.[TaxCode] LIKE '%EXE%' THEN sum(T2.[LineTotal])
Else 0
END 'Exento'
FROM OINV T0
INNER JOIN OCRD T1 ON T0.CardCode = T1.CardCode
INNER JOIN INV1 T2 ON T0.DocEntry = T2.DocEntry
INNER JOIN ORIN T3 ON T1.CardCode = T3.CardCode
WHERE T0.[CardCode] Like '%C%' and
T0.[DocDate] >= '20100801' and
T0.[DocDate] <= '20100831'
GROUP BY T0.[DocNum], T0.[DocDate], T0.[NumAtCard],T0.[U_SerieDoc], T0.[U_NumDoc],
T0.[CardName], T2.[U_Tipo_Venta], T1.[U_Nit],T2.[TaxCode],T2.VatPrcnt,
T0.VatSum, T3.[Series], T3.[VatSum],T0.[DocTotal],T0.[CardCode]
ORDER BY T0.[CardName], T0.[U_SerieDoc], T0.[DocDate]
De antemano muy agradecido por su ayuda.
Hola, te sirve si le agregas DISTINCT
SELECT DISTINCT T0.DocNum AS 'Numero Documento',
T0.DocDate AS 'Fecha Contabilizacion',
T0.NumAtCard AS 'Numero de Referencia',
T0.U_SerieDoc AS 'Serie Factura',
T0.U_NumDoc AS 'Numero Factura',
T0.CardName AS 'Nombre Cliente',
T1.U_Nit AS 'NIT',
Case
When T2.U_Tipo_Venta like '%B%' THEN SUM(T2.LineTotal)
Else 0
End 'Bienes',
CASE
When T2.U_Tipo_Venta LIKE '%S%' THEN SUM(T2.LineTotal)
Else 0
END 'Servicios',
Case
When T3.Series= '3' Then (T3.VatSum)*-1
Else 0
End 'Notas de Credito',
CASE
When T2.VatPrcnt = 12 THEN (T0.VatSum)
Else 0
END AS 'IVA Debito Fiscal',
CASE
When T2.TaxCode LIKE '%EXE%' THEN sum(T2.LineTotal)
Else 0
END 'Exento'
FROM OINV T0
INNER JOIN OCRD T1 ON T0.CardCode = T1.CardCode
INNER JOIN INV1 T2 ON T0.DocEntry = T2.DocEntry
INNER JOIN ORIN T3 ON T1.CardCode = T3.CardCode
WHERE T0.CardCode Like '%C%' and
T0.DocDate >= '20100801' and
T0.DocDate <= '20100831'
GROUP BY T0.DocNum, T0.DocDate, T0.NumAtCard,T0.U_SerieDoc, T0.U_NumDoc,
T0.CardName, T2.U_Tipo_Venta, T1.U_Nit,T2.TaxCode,T2.VatPrcnt,
T0.VatSum, T3.Series, T3.VatSum,T0.DocTotal,T0.CardCode
ORDER BY T0.CardName, T0.U_SerieDoc, T0.DocDate
Saludos
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Gracias Quintaro soluciones la duplicidad de las facturas, una ultima duda y no la coloque en la primera consulta, pero al momento de generarlo lo que es la columna de las Notas de credito no esta respetando la fecha alguien me podría indicar como soluciono este problema.
De antemano muy agradecido.
Gracias Quintaro, una ultima consulta hay notas de credito que son denominadas como Internas esto quiere decir que no deben de aparecer en el reporte pero estas si aparecen y aparecen como Servicios y como Exentos, hay alguna forma de quitarlos tanto de Servicios como de Exentos.
Con respecto a las fechas te lo agradezco si funciono pero si yo deseo asignarle que pregunte las fechas hay alguna forma que solo la pregunte una vez y las tome en las dos tablas. Si se pudiera sino asi lo dejaría.
Agradezco tu tiempo y tu ayuda.
Hola, como comentario, generalmente es una pregunta a la vez, debe identificar el campo que los hace diferentes y filtrarlos quiza un DocSubType, series, o algo similar.
Para limitar la busqueda, puede definirlo así
T0.DOCDATE>= [%0] and T0.DOCDATE<=[%1] and T3.DOCDATE>= [%0] and T3.DOCDATE<=[%1]
Saludos.
User | Count |
---|---|
108 | |
12 | |
11 | |
6 | |
5 | |
4 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.