Facturas con Subtotal, Iva y Total

Estimada comunidad buen día,

Me dirijo a ustedes con el fin de que alguien con su sabiduría me pueda ayudar, resulta que se me solicito un informe en el que me muestre las facturas de venta, pero que lleve (Codigo Cliente-Nombre Cliente-subtotal-iva- total documento y cuidad), realice un mini query pero veo que me esta duplicado las facturas, ¿Como puedo hacer para que no se me muestre este duplicado? tengo un consecutivo como 15 veces repetido.Este es lo que llevo del query

SELECT 
T0."DocNum", 
T0."CardCode", 
T0."CardName", 
T1."VatSum", 
T1."LineTotal", 
T0."DocTotal", 
T2."CityB"
FROM OINV T0 
LEFT JOIN INV1 T1 ON T0."DocEntry" = T1."DocEntry" 
LEFT JOIN INV12 T2 ON T0."DocEntry" = T2."DocEntry"

A espera de su pronta respuesta

Gracias

Esto sucede porque estas involucrando el detalle de la factura. Si necesitas conocer subtotal-iva- total documento lo puedes obtener unicamente del encabezado. OINV

1 me gusta

Hola @GiancarloB

Intenta así para el tema de totales

case T0.[DocCur] when 'MXP' then T0.[DocTotal] else T0.[DocTotalFC] end 'Total',
case T0.[DocCur] when 'MXP' then T0.[VatSum] else T0.[VatSumFC] end 'Impuesto'
FROM OINV T0 

El sub total lo obtienes restando el impuesto del total

Respecto a la ciudad podrías obtener el dato de la dirección del cliente

LEFT JOIN CRD1 T2 ON T2.CardCode = T0.CardCode and T0.PaytoCode = T2.Address and T2.AdresType = 'B'

Saludos.

1 me gusta

Prueba solo adaptalo a HANA con la ‘’

SELECT T0.[DocNum], T0.[DocDate], T0.[CardCode], T0.[CardName], T0.[DocTotal], T0.[VatSum], T0.[RoundDif]‘Redondeo’ , ( T0.[DocTotal]-T0.[VatSum]-T0.[RoundDif])‘SubTotal’, T1.[City] FROM OINV T0 INNER JOIN OCRD T1 ON T0.[CardCode] = T1.[CardCode] WHERE T0.[CANCELED] =‘N’ AND T0.[DocDate] >=‘20191001’

1 me gusta

Creo que esto te sirve:

SELECT
	T0."DocNum" 
	,T0."CardCode" 
	,T0."CardName" 
	,T0."DocCur"
	,CASE 
		WHEN T0."DocCur" = T3."MainCurncy" THEN T0."DocTotal" 
		ELSE T0."DocTotalFC" 
	END AS "DocTotal"
	,CASE 
		WHEN T0."DocCur" = T3."MainCurncy" THEN T0."VatSum" 
		ELSE T0."VatSumFC" 
	END AS "VatSum"
	,CASE 
		WHEN T0."DocCur" = T3."MainCurncy" THEN T0."DocTotal" - T0."VatSum" 
		ELSE T0."DocTotalFC" - T0."VatSumFC" 
	END AS "Sub-Total"
	,T2."CityB" 
FROM 
	OINV T0
	LEFT JOIN INV12 T2 ON T0."DocEntry" = T2."DocEntry"
	INNER JOIN OADM T3 ON T0."DocEntry" = T0."DocEntry"

Juliancab, gracias por la información

Slds

Hola Un_Tal_Erik_J, muchas gracias por tu ayuda.

Slds

Hola epr06, gracias por la información,pero quería saber si me puedes dar una ayuda, como puedo hacer para que la búsqueda la realice por fecha en este caso de contabilización, es decir al ejecutar el query me pida una fecha de inicio y una fecha final, a espera de sus comentarios

Gracias

Hola pcarrasco, mil gracias por la colaboración.

Slds

WHERE T0.DocDate BETWEEN [%0] AND [%1]

1 me gusta

Mil Gracias epr06 por la ayuda, ya me muestra la información solicitada.

Slds

@GiancarloB, por favor leer: Cómo usar el foro de Consultoria-SAP

El código no estaba formateado, y estabas respondiendo 4 veces seguidas (una respuesta por usuario), busca cómo mencionar usuarios y responde en un mensaje a todos :wink: