cancel
Showing results for 
Search instead for 
Did you mean: 

QUERY -VOLUMEN DE PEDIDOS MENSUALIZADO..

Former Member
0 Kudos

Hola a todos,

Necesito saber como debo diseñar un QUERY MENSUALIZADO de PEDIDOS DE VENTA por fecha de entrega de la línea del pedido (ShipDate). Quisiera saber si alguien me da una mano para conseguir instalarla. Tengo la idea de mostrarla parecida a algo como esto, aunque si puede diseñarse de otra manera mucho mejor, el caso es que no se que cómo hacer para que el importe se refleje mes a mes (que función uso?).

Alquien que pueda ayudarme?. MUCHAS GRACIAS ANTICIPADAS!!

Ejemplo:

Nº pedido Nº Linea Fecha Entrega Importe Línea EN 10 - FEB 10- MAR 10- ABR 10....DIC 10- ENE 11- FEB 11.....DIC 11

Accepted Solutions (0)

Answers (1)

Answers (1)

felipe_loyolarodriguez
Active Contributor
0 Kudos

Buenos Dias

La verdad no entiendo lo que quieres mostrar en el query.

Los campos que diste se pueden obtener de las tablas ORDR y RDR1, pero donde no entiendo es en los campos de meses que tienes ahi. En esos campos que quieres mostrar?

Debes considerar que cada NºPedido (DocNum) es unico, asi que solo aparecera en 1 columna que correspondera al mes donde se cerro en este caso.

Si pudieses aportar mas datos podria ayudarte,

Saludos

Former Member
0 Kudos

Hola FLR,

Antes que nada disculpa que no te haya seguido, estoy aún enganchada con la QUERY (con algunos avances claro) y a tráves de algunos trucos aprendidos en el foro he podido instalar algo muy parecido a lo que necesito, salvo que tengo un problemilla. Resulta que me encuentro con una duplicidad en el resultado ya que la query me está devolviendo TODAS la OFERTAS que tiene ese cliente y SOLO necesito el único documento que tiene vinculado en la ETAPA (LINEA) ABIERTA de la OPORTUNIDAD el cliente.

Por ejemplo:

#/Centro de Beneficio/Cod. de Ventas/Empleado de Ventas/Código IC/Interlocutor comercial/Nº Oportunidad/Nombre de Oportunidad/ Fecha de Inicio Previsto/AÑO/MES/Duración/Porcentaje de cierre/Etapa Abierta/Nombre de Etapa Abierta/Importe Ponderado de Etapa/Nº Oferta Vinculada/Total Importe Oferta

Resultado:

1/D1AT/-1/-Ningún empleado dep.ventas-/l0001/Oportunidad 4/ 15/02/10/ 2010 /2/ 6.000 /20,00 /3 /Elaboración de Oferta /695,40 /10006/4.318,80

2/D1AT/-1/-Ningún empleado dep.ventas-/l0001/Oportunidad 4/15/02/10/2010/2 /6.000/20,00/3/Elaboración de Oferta/695,40/10006/20.514,30

3/D1AT/-1/-Ningún empleado dep.ventas-/l0001/Oportunidad 4/15/02/10/2010/2/6.000/20,00/ 3/Elaboración de Oferta/695,40/10006/4.102,86

No se si me he explicado bien, pero necesito que solo me arroje la línea 3 y no todas las OFERTAS que tiene el cliente.

Comparto el Query para mejor comprensión´.

A ver si podeís darme una mano y conseguir ese resultado deseado. De antemano Muchas Gracias!!...

SELECT T1.U_Ex_Beneficio AS 'Centro de Beneficio',

T1.SlpCode AS 'Cod. de Ventas',

T2.SlpName AS 'Empleado de Ventas',

T0.CardCode, T0.CardName,

T1.OpprId AS 'Nº Oportunidad',

T0.Name AS 'Nombre de Oportunidad',

T0.U_Ex_Fecha AS 'Fecha de Inicio Previsto',

YEAR(T0.U_Ex_Fecha) AS AÑO, MONTH(T0.U_Ex_Fecha) AS MES,

T0.U_Ex_Duracion,

T0.CloPrcnt,

T3.Num AS 'Etapa Abierta',

T3.Descript AS 'Nombre de Etapa Abierta',

T1.WtSumLoc AS 'Importe Ponderado de Etapa',

T1.DocNumber AS 'Nº Oferta Vinculada',

T4.DocTotal AS 'Total Importe Oferta'

FROM OOPR T0

INNER JOIN OPR1 T1 ON T0.OpprId = T1.OpprId

INNER JOIN OSLP T2 ON T1.SlpCode= T2.SlpCode

INNER JOIN OOST T3 ON T0.StepLast= T3.Num

INNER JOIN OQUT T4 ON T0.CardCode= T4.CardCode

WHERE (T0.U_Ex_Fecha >= '[%0]' or '[%0]'='')

AND (T0.U_Ex_Fecha <= '[%1]' or '[%1]'='')

AND T1.Status <> 'C'

ORDER BY T0.U_Ex_Fecha...{code

felipe_loyolarodriguez
Active Contributor
0 Kudos

Hola

Si la linea esta abierta, no tiene una fecha de cierre (CloseDate) cierto?

si es asi, podrias filtrar por ese concepto.


WHERE T1.CloseDate !> '[%1]'

o con


WHERE T1.CloseDate >= '0'

Saludos

FLR

Former Member
0 Kudos

Hola,

Me temo que no puedo usar ese campo, la linea de una Oportunidad siempre tendrá fecha de cierre (CloseDate), por defecto la de inicio. Alguna otra idea que pueda funcionar??....

felipe_loyolarodriguez
Active Contributor
0 Kudos

Hola

Analizando mejor el tema, como cada linea se puede copiar a una OFERTA diferente y solo necesitas las ofertas que estan abiertas, puedes filtar por el status de la OFERTA.

Ademas deberias agregar otra union de campos en el OQUT


INNER JOIN OQUT T4 ON T0.CardCode= T4.CardCode AND T1.DocNumber = T4.DocEntry -- Prueba entre DocEntry y DocNum, no estoy seguro con cual se relaciona


WHERE T4.Status = 'O'

Pruebalo asi y me cuentas.

Saludos

Edited by: Floyola on Feb 24, 2011 9:34 AM

Former Member
0 Kudos

Ha funcionado. Es perfecto!!..

Muchas Gracias DE NUEVO!!

Former Member
0 Kudos

Cierro el post....:-)