Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/06/2013, 04:16
ROBERY
 
Fecha de Ingreso: junio-2013
Ubicación: Madrid
Mensajes: 2
Antigüedad: 10 años, 11 meses
Puntos: 0
Parámetros en DataSet en Reporting services con clausula WITH SELECT

Hola amigos,

estoy creándome unos reportes con el Reporting Server con el paquete sql 2005 y el problema me viene cuando introduzco parámetros en funciones complejas con subselects y WITH SELECT



Tengo que saber la duración que se encuentra una señal booleana que varia de 0 a 1, para ello me creo una tabla temporal y con los
select pregunto cuando cambia la señal a 0.....como se observa en la query mostrada debajo.

independientemente del funcionamiento, el problema es que si lo ejecuto en el Microsoft SQL Management Studio si
que me encuentra los valores deseados pero al pasarlo al Report Project y cambiar la variable

tagname ='SCI_Climatizadora2_Planta4.MARCHA_PARO'


por un parámetro--->


tagname =@parametro



se queda ejecutando la query mucho tiempo y no es capaz de realizarme la query para el parámetro solicitado.











With HistoryTemp (tagname,datetime,value)

as
(


SELECT tagname,datetime,value from history
where tagname ='SCI_Climatizadora2_Planta4.MARCHA_PARO' and datetime > '20130601'
)

SELECT *,DATEDIFF(ss,start,end_) as Duration FROM
(

select tagname,datetime as start
,(select top 1 datetime from HistoryTemp b where value=0 and datetime>a.datetime order by datetime asc) as end_


from HistoryTemp a
where datetime > '20130601'
and value=1
) b




Si uso sonsultas más sencillas de tipo select no tengo problemas con el parámetro pero los tiempos de ejecución del reporte son desorbitados asique necesito realizar este tipo de consulta ya que esta mucho más optimizada



Es posible que al ser una sentencia 'With select' no me permita trabajar con parámetros???


Por favor ayudenme ya que llevo más de una semana probando y no lo consigo