• Viernes 17 de Mayo de 2024, 06:58

Autor Tema:  Valor De Tiempo De Espera Caducado???q  (Leído 2831 veces)

kejos

  • Miembro activo
  • **
  • Mensajes: 55
    • Ver Perfil
Valor De Tiempo De Espera Caducado???q
« en: Miércoles 20 de Diciembre de 2006, 14:56 »
0
Hola a todos!!!!!!

Tengo un pequeño problema que sinceramente no he sabido a que se debe....
Es lo siguiente:
Yo en mi aplicación tengo que hacer unas consultas a la base de datos que estoy haciendo de la siguiente manera:

Código: Text
  1. DataSet dsTodo = new DataSet();
  2. dsTodo = sesion.obtenerDataSet("spObtenerBusquedaLibrosTCampos", parametroBuscar);
  3. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaOMaterialesTCampos", parametro2));
  4. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaOMaterialesTCampos", parametro4));
  5. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaOMaterialesTCampos", parametro5));
  6. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaOMaterialesTCampos", parametro7));
  7. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaOMaterialesTCampos", parametro9));
  8. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaOMaterialesTCampos", parametro10));
  9. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaOMaterialesTCampos", parametro12));
  10. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaOMaterialesTCampos", parametro13));
  11. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaTesisTCampos", parametroBuscar));
  12. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaPeliculasTCampos", parametroBuscar));
  13. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaArchivosTCampos", parametroBuscar));
  14. dsTodo.Merge(sesion.obtenerDataSet("spObtenerBusquedaSeriadasTCampos", parametroBuscar));
  15. return dsTodo;
  16.  


Cómo pueden ver son varias consultas que llevo a un mismo dataset, la cosa es que a cada consulta en el administrador corporativo de SQlServer 2000 les agrego una tabla por la cual también necesito hacer la consulta y en el Sql y en el analizador de consultas me funciona la consulta, es decir me muestra lo que me debe mostrar. Una de las consultas es cómo la siguiente:

Código: Text
  1. CREATE PROCEDURE dbo.spObtenerBusquedaOMaterialesTCampos
  2.   @CamposBuscar varchar(250),
  3.   @IDTipoMaterial int
  4. AS
  5. DECLARE @NombreAutor VARCHAR(1000)
  6. DECLARE @NAutores varchar(250)
  7. DECLARE @IDLibro int
  8. DECLARE @IDLibro2 int
  9. DECLARE @NIDLibro int
  10. DECLARE @Clasif varchar(20)
  11. DECLARE @Clasif2 VARCHAR(20)
  12. DECLARE @IDTMat int
  13. DECLARE @IDTMat2 int
  14. DECLARE @LibAnt INT
  15. DECLARE @LibSig INT
  16. DECLARE @Titulo VARCHAR(250)
  17. DECLARE @Titulo2 VARCHAR(250)
  18. SET @NombreAutor = ''
  19. SET @NAutores = ''
  20. SET @Clasif2 = ''
  21. set @IDLibro2 = 0
  22. SET @IDTMat2 = 0
  23. CREATE TABLE #LibAut (IDLibro INT, Titulo VARCHAR(250), Autores VARCHAR(2000), Clasificacion VARCHAR(20), IDTipoMaterial INT)
  24. DECLARE Autores_Cursor CURSOR FOR
  25. SELECT TOP 300 dbo.OtrosMateriales.IDMaterial, dbo.OtrosMateriales.Titulo, dbo.Autores.Nombre + ' ' + dbo.Autores.Apellidos AS Autor, dbo.OtrosMateriales.Clasificacion, dbo.OtrosMateriales.IDTipoMaterial
  26. FROM Materias RIGHT OUTER JOIN dbo.OtrosMaterialesMaterias ON dbo.Materias.IDMateria = dbo.OtrosMaterialesMaterias.IDMateria RIGHT OUTER JOIN dbo.OtrosMateriales ON dbo.OtrosMaterialesMaterias.IDMaterial = dbo.OtrosMateriales.IDMaterial LEFT OUTER JOIN  dbo.OtrosMaterialesAutores ON dbo.OtrosMateriales.IDMaterial = dbo.OtrosMaterialesAutores.IDMaterial LEFT OUTER JOIN dbo.Autores ON dbo.OtrosMaterialesAutores.IDAutor = dbo.Autores.IDAutor
  27. WHERE (dbo.OtrosMateriales.IDMaterial IN (SELECT OtrosMateriales.IDMaterial FROM OtrosMateriales LEFT OUTER JOIN Ejemplares ON Ejemplares.IDMaterial = OtrosMateriales.IDMaterial LEFT OUTER JOIN OtrosMaterialesAutores ON OtrosMateriales.IDMaterial = OtrosMaterialesAutores.IDMaterial LEFT OUTER JOIN   Autores ON OtrosMaterialesAutores.IDAutor = Autores.IDAutor WHERE (Ejemplares.CodigoAcceso = @CamposBuscar OR OtrosMateriales.Titulo LIKE '%' + @CamposBuscar + '%'  OR Autores.Nombre LIKE '%' + @CamposBuscar + '%' OR Autores.Apellidos LIKE '%' + @CamposBuscar + '%' OR OtrosMateriales.Clasificacion LIKE @CamposBuscar + '%' OR (Autores.Nombre + ' ' + Autores.Apellidos) LIKE '%' + @CamposBuscar + '%' OR Materias.Materia LIKE '%' + @CamposBuscar + '%') AND  OtrosMateriales.IDTipoMaterial = @IDTipoMaterial AND OtrosMateriales.Titulo IS NOT NULL GROUP BY   OtrosMateriales.IDMaterial))
  28. OPEN Autores_Cursor
  29. FETCH NEXT FROM Autores_Cursor INTO @IDLibro,@Titulo,@NombreAutor, @Clasif,  @IDTMat
  30.   SET @LibAnt = @IDLibro
  31.   SET @LibSig = @IDLibro
  32.   WHILE  @@FETCH_STATUS = 0
  33.   BEGIN
  34.        IF  @LibAnt = @LibSig AND @NAutores <> ''
  35.        BEGIN
  36.       SET @NAutores = @NAutores +   ', '
  37.        END
  38.        IF  @LibAnt = @LibSig
  39.        BEGIN
  40.       SET @NAutores = @NAutores +  @NombreAutor
  41.       SET @LibAnt = @LibSig        
  42.       SET @IDLibro2 = @IDLibro
  43.       SET @Titulo2 =  @Titulo
  44.       SET @Clasif2 =  @Clasif
  45.       SET @IDTMat2 = @IDTMat
  46.        END
  47.        ELSE
  48.        BEGIN
  49.       INSERT INTO #LibAut (IDLibro, Titulo, Autores, Clasificacion,     IDTipoMaterial)
  50.       Select  @IDLibro2,@Titulo2 ,@NAutores, @Clasif2, @IDTMat2
  51.       SET @NAutores = ''
  52.           SET @NAutores = @NombreAutor  
  53.       SET @LibAnt = @LibSig
  54.       SET @IDLibro2 = @IDLibro
  55.       SET @Titulo2 =  @Titulo
  56.       SET @Clasif2 =  @Clasif
  57.       SET @IDTMat2 = @IDTMat
  58.        END
  59. FETCH NEXT FROM Autores_Cursor INTO @IDLibro, @Titulo, @NombreAutor,  @Clasif, @IDTMat
  60.        SET @LibSig = @IDLibro
  61.   END
  62. CLOSE Autores_Cursor
  63. DEALLOCATE Autores_Cursor
  64. INSERT INTO  #LibAut (IDLibro, Titulo, Autores, Clasificacion, IDTipoMaterial)
  65. Select  @IDLibro2,@Titulo2 ,@NAutores,@Clasif2, @IDTMat2
  66. delete from  #LibAut where Titulo is null or Titulo = ''
  67. select  IDLibro as IDMaterial,Titulo, Autores as Nombre, Clasificacion, IDTipoMaterial   from   #LibAut
  68. --DROP TABLE #LibAut
  69. GO
  70.  


Mi problema comienza cuando ejecuto la aplicación porque la ejecución funciona normalmente toda a excepción de las consultas porque cuando las voy a realizar me sale el siguiente error:

"Valor de tiempo de espera caducado. El período de tiempo de espera caducó antes de completar la operación o el servidor no responde.
Descripción: Excepción no controlada al ejecutar la solicitud Web actual. Revise el seguimiento de la pila para obtener más información acerca del error y dónde se originó en el código.

Detalles de la excepción: System.Data.SqlClient.SqlException: Valor de tiempo de espera caducado. El período de tiempo de espera caducó antes de completar la operación o el servidor no responde.

Error de código fuente:


Línea 83:          SqlDataAdapter ObjDataAdapter=new SqlDataAdapter();
Línea 84:          ObjDataAdapter.SelectCommand=objcommand;
Línea 85:          ObjDataAdapter.Fill(dsGeneral);
Línea 86:          objConnection.Close();
Línea 87:
 

Archivo de origen: c:\inetpub\wwwroot\sabio\libreriaclasessabio\sql.cs    Línea: 85"


Aqui es donde yo no entiendo el porque de ese error si las consultas me funcionan en el Sql Server y el analizador de consultas, he intentado muchas cosas pero nada me funciona y me sigue saliendo el error, es más en el código llega a la primera consulta y cuando va a llenar el dataset es cuando me sale el error.

A quien me pueda a yudar a resolver este gran problema se lo agradezco de antemano.
[size=109]Kelly Johana[/size]