Error tiempo espera agotado

12/12/2007 - 01:21 por Oscar | Informe spam
Hola a todos, tengo un select diseñado, el cual compruebo su sintaxis y es
correcta, pero al ejecutar no me devuelve ningún valor por que excede el tiempo
de espera.


Un select muy similar lo ejecuto sin problemas (además devuelve un número mayor
de registro)


¿que está pasando?


Incluyo la sentencia:

StrSelect = "SELECT min(ALMFECCOMPRA) AS Fecha, ALMREFMODOPERADOR
AS [Modelo SAP], ALMMODELO AS Modelo, " _
& " ALMALMACEN AS Tienda, ALMCODIGO_SAP_OPERADOR AS [Codigo
SAP], SUM(ALMUNIDADES) AS Unidades, " _
& " ALM_SFID_TIENDA AS SFID" _
& " FROM " _
& " ALMACEN AS T" _
& " WHERE " _
& " (ALMDISTRIBUIDOR IN (SELECT DISTINCT DISNOMBRE FROM
DISTRIBUIDOR WHERE DISACTIVADO = 1 AND DISCADENA = '" & AuxCadena & "')) " _
& " AND ( ALM_FECHA_HIS = (SELECT MAX(ALM_FECHA_HIS) AS
Expr1 FROM ALMACEN WHERE (ALMDISTRIBUIDOR = T.ALMDISTRIBUIDOR) AND
(ALM_FECHA_HIS <= CONVERT(DATETIME, '" & Cmb_Dia_Desde.SelectedValue & "/" &
Cmb_Mes_Desde.SelectedValue & "/" & ano_actual.ToString & "', 103)))) " _
& " AND (ALMALMACEN IN (SELECT DISTINCT LICALMACEN FROM
LICENCIAS WHERE LICACTIVADO = 1))" _
& " AND (almclase='POSPAGO' OR ALMCLASE='PREPAGO') " _
& " AND NOT ALMMODELO LIKE '%LIBRE%' " _
& " AND NOT ALMMODELO LIKE '%SIM%' " _
& " AND NOT ALMMODELO LIKE '%SIN TERMINAL%' " _
& " GROUP BY " _
& " ALMREFMODOPERADOR, ALMMODELO, ALMALMACEN,
ALMCODIGO_SAP_OPERADOR, " _
& " ALM_SFID_TIENDA " _
& " ORDER BY " _
& " ALMALMACEN, ALMCODIGO_SAP_OPERADOR, MIN(ALMFECCOMPRA) DESC"


Todo esrto ocurre desde que añadí :

( ALM_FECHA_HIS = (SELECT MAX(ALM_FECHA_HIS) AS Expr1 FROM ALMACEN WHERE
(ALMDISTRIBUIDOR = T.ALMDISTRIBUIDOR) AND (ALM_FECHA_HIS <= CONVERT(DATETIME, '"
& Cmb_Dia_Desde.SelectedValue & "/" & Cmb_Mes_Desde.SelectedValue & "/" &
ano_actual.ToString & "', 103))))

el cual utilizo para obtener de la tabla almacen solo aquellos registros de cada
distribuidor que tenga la fecha mas cercana o igual a la indicada!!!

estoy completamente perdido!!!
 

Leer las respuestas

#1 Maxi
12/12/2007 - 13:34 | Informe spam
Oscar, si excede el tiempo de espera entonces usted en principio deberia
optimizar su query (indices por ejemplo) y tambien revisar desde su
aplicacion en cuanto esta en commandtiemout


-
Microsoft M.V.P en SQLServer
SQLTotal Consulting - Servicios en SQLServer
Email:
"Oscar" escribió en el mensaje
news:
Hola a todos, tengo un select diseñado, el cual compruebo su sintaxis y es
correcta, pero al ejecutar no me devuelve ningún valor por que excede el
tiempo de espera.


Un select muy similar lo ejecuto sin problemas (además devuelve un número
mayor de registro)


¿que está pasando?


Incluyo la sentencia:

StrSelect = "SELECT min(ALMFECCOMPRA) AS Fecha,
ALMREFMODOPERADOR AS [Modelo SAP], ALMMODELO AS Modelo, " _
& " ALMALMACEN AS Tienda, ALMCODIGO_SAP_OPERADOR AS
[Codigo SAP], SUM(ALMUNIDADES) AS Unidades, " _
& " ALM_SFID_TIENDA AS SFID" _
& " FROM " _
& " ALMACEN AS T" _
& " WHERE " _
& " (ALMDISTRIBUIDOR IN (SELECT DISTINCT DISNOMBRE FROM
DISTRIBUIDOR WHERE DISACTIVADO = 1 AND DISCADENA = '" & AuxCadena & "')) "
_
& " AND ( ALM_FECHA_HIS = (SELECT
MAX(ALM_FECHA_HIS) AS Expr1 FROM ALMACEN WHERE (ALMDISTRIBUIDOR =
T.ALMDISTRIBUIDOR) AND (ALM_FECHA_HIS <= CONVERT(DATETIME, '" &
Cmb_Dia_Desde.SelectedValue & "/" & Cmb_Mes_Desde.SelectedValue & "/" &
ano_actual.ToString & "', 103)))) " _
& " AND (ALMALMACEN IN (SELECT DISTINCT LICALMACEN FROM
LICENCIAS WHERE LICACTIVADO = 1))" _
& " AND (almclase='POSPAGO' OR ALMCLASE='PREPAGO') " _
& " AND NOT ALMMODELO LIKE '%LIBRE%' " _
& " AND NOT ALMMODELO LIKE '%SIM%' " _
& " AND NOT ALMMODELO LIKE '%SIN TERMINAL%' " _
& " GROUP BY " _
& " ALMREFMODOPERADOR, ALMMODELO, ALMALMACEN,
ALMCODIGO_SAP_OPERADOR, " _
& " ALM_SFID_TIENDA " _
& " ORDER BY " _
& " ALMALMACEN, ALMCODIGO_SAP_OPERADOR,
MIN(ALMFECCOMPRA) DESC"


Todo esrto ocurre desde que añadí :

( ALM_FECHA_HIS = (SELECT MAX(ALM_FECHA_HIS) AS Expr1 FROM ALMACEN
WHERE (ALMDISTRIBUIDOR = T.ALMDISTRIBUIDOR) AND (ALM_FECHA_HIS <=
CONVERT(DATETIME, '" & Cmb_Dia_Desde.SelectedValue & "/" &
Cmb_Mes_Desde.SelectedValue & "/" & ano_actual.ToString & "', 103))))

el cual utilizo para obtener de la tabla almacen solo aquellos registros
de cada distribuidor que tenga la fecha mas cercana o igual a la
indicada!!!

estoy completamente perdido!!!

Preguntas similares