SQL Server - Numero de registro en un Store procedure.

   
Vista:

Numero de registro en un Store procedure.

Publicado por Ivonne (50 intervenciones) el 23/10/2007 23:13:27
Buenas tardes amigos...Alguien sabe como agregar en un Store Procedure un campo que muestre el consecutivo o numero de fila del registro...si alguien me podria ayudar se lo agradeceré mucho..saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Numero de registro en un Store procedure.

Publicado por Isaias (3308 intervenciones) el 24/10/2007 00:05:58
Este tema ya ha respondido en estos foros.

Si tu base es un SQL SERVER 2000:

SELECT Tabla.PK, COUNT(*)
FROM Tabla
JOIN Tabla as T
ON Tabla.PK>=T.PK
GROUP BY Tabla.PK
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Numero de registro en un Store procedure.

Publicado por Ivonne (50 intervenciones) el 24/10/2007 15:33:38
Hola Isaias gracias por contestar...a esta consulta le necesito agregar la columna del numero de registro revise la consulta que me enviaste y efectivamente veo que si hace lo que necesito pero al agregarselo a mi consulta sale un mesaje de error que te muestro abajo.

SELECT dbo.inviar.art,dbo.inviar.des1,@tipo as tipo,dbo.invart.precio_vta0,@impuesto as impuesto,@fcad as fcad,@depto as depto,@grupo as grupo,@pendiente as pendiente,inviar.art as PLU,inviar.art as PLU1,@fechaact as fechaact,@user1 as user1,@user2 as user2,@user3 as user3,@ingre as ingrediente,@indice as indice,@serie as nserie,@ip as Ip,@idbas as Idbas,@tararef as tara,@idacceso as Idacceso,COUNT (*) as columna
FROM dbo.inviar inner join dbo.invars on dbo.inviar.art=dbo.invars.cve_art inner join dbo.invart on dbo.invart.art=dbo.invars.cve_art and
dbo.invars.alm=dbo.invart.alm
where dbo.invart.alm='J03'and dbo.invart.status='00'and dbo.inviar.lin='01'
GROUP BY inviar.art
order by inviar.art


ERROR:

Servidor: mensaje 8120, nivel 16, estado 1, procedimiento ListaProductosBascula, línea 36
La columna 'dbo.inviar.des1' de la lista de selección no es válida, porque no está contenida en una función de agregado ni en la cláusula GROUP BY.
Servidor: mensaje 8120, nivel 16, estado 1, procedimiento ListaProductosBascula, línea 36
La columna 'dbo.invart.precio_vta0' de la lista de selección no es válida, porque no está contenida en una función de agregado ni en la cláusula GROUP BY.

¿Como puedo hacer para que me lo refleje en mi consulta?..agradeceré mucho tu ayuda y gracias por seguir contestando mis preguntas....saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Numero de registro en un Store procedure.

Publicado por Ivonne (50 intervenciones) el 24/10/2007 18:03:16
Hola de nuevo Isaias...ya vi que el error se refiere a que debo de agregar a todos los datos que devuelva la consulta,pero e igual notó que no acepta tablas relacionadas....si le hechas una revisada a mi consulta que te puse en la nota anterior estoy relacionando 3 tablas invars,invart e inviar y el ejemplo que me pasate solo funciona con una tabla...¿Como le puedo hacer?..saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Numero de registro en un Store procedure.

Publicado por Isaias (3308 intervenciones) el 24/10/2007 20:21:39
¿No seria mejor construirlo en una tabla TEMPORAL con una columna de tipo IDENTITY?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Numero de registro en un Store procedure.

Publicado por Ivonne (50 intervenciones) el 25/10/2007 16:34:39
Hola de nuevo Isaias....disculpa la ignorancia la verdad soy relativamente nueva en esto de SQL SERVER y tengo duda en como insertar el resultado del SP en la tabla temporal y que cada vez que se ejecute el JOB que vaya actualizando la tabla para que esa información sea la que exporte a la tabla que tengo en access....gracias por tu ayuda en estos días...Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Numero de registro en un Store procedure.

Publicado por Isaias (3308 intervenciones) el 26/10/2007 00:42:16
En tu store procedure, creas tu tabla temporal

CREATE TABLE #TEMPTABLE (.....TUS CAMPOS.....)

En tus campos, incluyes uno de tipo IDENTITY, INT, haces el insert de tu consulta:

INSERT INTO #TEMPTABLE
SELECT........................BLA, BLA, BLA

Regresas el resultado de tu consulta, al final del store

SELECT * FROM #TEMPTABLE
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar