Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-06-2008
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
ir a la posicion de un registro específico

Hola a Todos...

Estoy realizando una aplicación que me permite elegir los ganadores para un concurso.

Los ganadores se sortean de acuerdo a las personas que han comprados abonos. Los datos los tengo almacenados en una tabla de SQL Server. Para realizar la elección del numero, lo que realizo primero es obtener la cantidad de abonos vendidos, para lo cual realizo un

Código SQL [-]
 
Select Count(*) from vendidos

Luego aplico un Ramdon al valor anterior, lo que me dará el Numero (posición) del Ganador.

Código Delphi [-]
Ramdon(Total_Abonos_Vendidos)

Mi consulta es como me posiciciono en el Registro que fue Sorteado ???

Se que el RecNo me entrega la posición, pero como me posiciono en el registro del valor que me entrega el Ramdon???

Salu2
__________________
BlueSteel

Última edición por BlueSteel fecha: 16-06-2008 a las 20:43:02.
Responder Con Cita
  #2  
Antiguo 16-06-2008
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Cita:
Empezado por BlueSteel Ver Mensaje
Mi consulta es como me posiciciono en el Registro que fue Sorteado ???

Se que el RecNo me entrega la posición, pero como me posiciono en el registro del valor que me entrega el Ramdon???

RecNo?, Es una función? en que versión de SQlServer está?
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #3  
Antiguo 16-06-2008
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
Cool

Hola Poliburro...

Estoy en SQLServer 2000

si realizo

Código Delphi [-]
 
 Edit1.Text := IntToStr(ADQ_Select.RecNo);

me entregará la posición del registro en la cual me ubico....


pero lo que tengo como dato, es la posición... entonces lo que quiero realizar es alguna función que se posicione en la "posición", valga la redundancia, que le estoy entregando...


Sorry... pero lo estoy trabajando desde el Delphi 7..... a lo mejor eso te confundio,, y pensastes que RecNo es una función del SQL Server...

Salu2
__________________
BlueSteel

Última edición por BlueSteel fecha: 16-06-2008 a las 21:00:32. Razón: falto explicación
Responder Con Cita
  #4  
Antiguo 16-06-2008
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Código SQL [-]
 
-- =============================================
-- Create procedure basic template
-- =============================================
-- creating the store procedure
IF EXISTS (SELECT name 
    FROM   sysobjects 
    WHERE  name = N'GetIdByPos' 
    AND    type = 'P')
    DROP PROCEDURE GetIdByPos
GO
CREATE PROCEDURE GetIdByPos (@RecNo As Int, @RowId As Int Output)
 
AS

CREATE TABLE #Temporal (RecNo Int IDENTITY(1,1), 
                                    [RowId] [numeric](6, 0))
Insert 
  Into #Temporal  (rowId) 
  Select FieldId From Table
 
Select @RowId = RowId
  From #Temporal
 Where RecNo = @RecNo
 
Drop Table #Temporal

GO
Return
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #5  
Antiguo 16-06-2008
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
Cool

Gracias amigo poliburro

cada vez me impresionas más.....

ahora, donde agrego esto.. y como lo utilizo desde delphi ???

Al final los datos los estoy trabajando desde un Vista, en donde tienen todos los datos que necesitaba

Salu2
__________________
BlueSteel
Responder Con Cita
  #6  
Antiguo 16-06-2008
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Me explico,


Este procedimiento crea una tabla temporal con una columna identity que simula el RecNo de ADO y el RowNum de Oracle.

En esta tablatemporal vas a insertar el campo id de la tabla de donde deseas sacar el registro en la posición deseada.

A este procedimiento le pasas que número de registro que deseas y te devolverá el Id correspondiente a esa posición.

con el id puedes obtener toda la fila.

Espero haber comprendido tu problema, si no, con confianza pregunta
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
mover indicador de un dbgrid a un registro especifico thelibmx Conexión con bases de datos 7 09-11-2007 18:52:51
Posicionarme en un registro especifico de un record Carliviris Varios 1 20-11-2006 18:35:41
Posicion de un registro en un DBGrid VRO OOP 6 27-10-2004 10:22:57
Problemas al guardar la posicion de una ventana en el registro neon Varios 1 21-10-2004 11:01:15
Posicion del registro?? andresenlared Conexión con bases de datos 3 30-12-2003 08:08:07


La franja horaria es GMT +2. Ahora son las 08:06:22.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi