| |||
Temporales en SQL Server 2005 Hola todos, tengo un problema y esperon q me ayuden, el problema es que he conectado SQL SERVER Y Basic 6 y en SQL Server 2005 he creado un procediemiento almacenado donde trabajo con tablas temporales y cuando cuando en basic ejecuto el procedimiento almacenado q he creado(trabajdno con las tabla stemporales) me sale un error diciendo algo asi"el objeto no esta permitido si el objeto esta cerrado" pero si el en procedimiento almacenado en sql hago un simple select como select * from tabla entonces si me jala los datos sin problemas pero elk problema esta cuando ese mismo procedimiento almacenado lo trabajo con tablas temporales, x favor alguien podria yudarme tralvez sea una configuracion en el sql, desde ya les agradesco... |
| |||
Respuesta: Temporales en SQL Server 2005 ok les copio el codigo, es el siguiente: --Alter Procedure [dbo].[STASetRptGastos] declare @FecIni Datetime ,@FecFin Datetime ,@Documento VarChar(5) ,@NroDoc VarChar(10) ,@Estado VarChar(1) Set @FecIni = '23/09/2010' Set @FecFin = '23/12/2010' Set @Documento = '' Set @NroDoc = '' Set @Estado = '' --As Select Row_Number() Over (Order By a.IddCodIdd) As Id ,a.IddCodIdd As Codigo ,b.DocNomDoc As Documento ,a.IddNroDoc As NroDocumento ,Convert(VarChar,a.IddFchCpa,103) As Fecha ,a.IddDscIdd As Descripcion ,a.IddPreUnt As Precio ,a.IddCntIdd As Cantidad ,a.IddTotPrd As Total ,Case When a.IddEstIdd = '0' Then 'Pagado' Else 'Por Pagar' End As Estado ,a.IddObsIdd As Observacion Into #TblTmp1 From STAM0012 a Inner Join STAM0014 b On a.CodCodDoc = b.DocCodDoc Where a.IddFlgEli = '0' And b.DocFlgEli = '0' And (Convert(VarChar,a.IddFchCpa,103) >= @FecIni And Convert(VarChar,a.IddFchCpa,103) <= @FecFin) And (Len(Rtrim(Ltrim(@Documento))) = 0 Or a.CodCodDoc = @Documento) And (Len(Rtrim(Ltrim(@NroDoc))) = 0 Or a.IddNroDoc = @NroDoc) And (Len(Rtrim(Ltrim(@Estado))) = 0 Or a.IddEstIdd = @Estado) Insert Into #TblTmp1 Select max(id + 1) ,Codigo ,'' ,'' ,'' ,'Total:' ,Null ,Null ,Sum(Total) ,'' ,'' From #TblTmp1 Group By Codigo Select * Into #TblTmp2 From #TblTmp1 Order By Codigo ,Id Insert Into #TblTmp2 Select Top 1 max(id + 2) ,Codigo ,'' ,'' ,'' ,'' ,Null ,Null ,Null ,'' ,'' From #TblTmp2 Group By Codigo Select * Into #TblTmp3 From #TblTmp2 Order By Codigo ,Id Insert Into #TblTmp3 Select max(id + 3) ,'' ,'' ,'' ,'' ,'' ,Null ,Null ,Sum(Total) ,'' ,'' From #TblTmp3 Where Descripcion = 'Total:' Select * Into #TblTmp4 From #TblTmp3 Order By Id Update #TblTmp4 Set Codigo = '' Where Descripcion = 'Total:' Update #TblTmp4 Set Codigo = '' Where Len(Rtrim(Ltrim(Documento))) = 0 And Len(Rtrim(Ltrim(NroDocumento))) = 0 Update #TblTmp4 Set Descripcion = 'Total General:' Where Len(Rtrim(Ltrim(Codigo))) = 0 And Len(Rtrim(Ltrim(Documento))) = 0 And Len(Rtrim(Ltrim(Descripcion))) = 0 And Total >= 0 Select Codigo ,Documento ,NroDocumento ,Fecha ,Descripcion ,Precio ,Cantidad ,Total ,Estado ,Observacion From #TblTmp4 Drop Table #TblTmp1 Drop Table #TblTmp2 Drop Table #TblTmp3 Drop Table #TblTmp4 pero como les digo yo modifico el store con un select cualquiera y no hay problema pero si trabajo con el temporal entonces me muestra error en el basic pero cuando ese mismo store(tablas temporales) lo ejecuto en el sql entonces me muestra tal y como quiero q me muestre pero en el bascu no pasa lo mismo. |
Etiquetas: |