SQL Server - dudas en uso de OUTPUT.

 
Vista:

dudas en uso de OUTPUT.

Publicado por Ivonne (50 intervenciones) el 25/10/2007 18:56:16
Hola amigos, sigo con mi problema de que en el resultado del SP haya un campo que muestre el numero de registro ( numero consecutivo) me dijeron que si se podia, realizando los 3 puntos que menciono abajo y en la sintaxis del SP hago referencia e igual quisiera que me dijeran si es correcto en donde lo anote:

1.creando una variable tipo entero y la deje como OUTPTU
2.dentro del procedimiento le asignas el valor a la variable @dato1=scope_identity
3. cuando ejecutes el SP, tienes que declarar la variable de salida = para obtener el valor del SP (Esta parte no entiendo)

SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

ALTER procedure ListaProductosBascula

(

@ttipo varchar(1)='2',
@depto char(2)='1',
@grupo char(2)='1',
@impuesto char(3)='000',
@fcad char(3)='60',
@ingre char(3)='0',
@user1 char(6)='000000',
@user2 char(6)='000000',
@user3 char(6)='000000',
@pendiente char(1)='0',
@tipo char(1)='2',
@serie char(7)='F701449',
@indice char(5)='1',
@ip char(15)='192.168.0.189',
@idbas char(1)='1',
@tararef char(1)='0',
@idacceso char(3)='1',
@dato1 int output -------------------->(1)

)
as
declare @fechaact char(10)
Select @fechaact = CONVERT(varchar(12), getdate(), 111)
select @dato1=scope_identity--------------------------------------------->(2)

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
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'



GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO

El punto 3 no entendi que me quisieron decir,por lo que si alguien sabe que es lo que me falta para obtener lo deseado les agradeceria la ayuda....la verdad soy nueva en empezar a utilizar SQL SERVER 2000 y si tengo muchas dudas en lo que voy realizando...Saludos.

exec listaproductosbascula
go
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:dudas en uso de OUTPUT.

Publicado por Isaias (3308 intervenciones) el 26/10/2007 00:45:34
Creo que nos falta comprender que es lo que quieres, a ver.

Si tu consulta devuelve (COMO EJEMPLO)

Nombre, Sueldo, Fecha
JOEL 10.00 2007/01/01
MARTA 20.00 2007/02/20

¿tu quieres agregar una columna que te indique el numero de registro?

Consecutivo, Nombre, Sueldo, Fecha
1 JOEL 10.00 2007/01/01
2 MARTA 20.00 2007/02/20
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:dudas en uso de OUTPUT.

Publicado por Ivonne (50 intervenciones) el 26/10/2007 17:11:29
Sí, es lo que necesito...asi como tambien necesitaria agregarle otra columna que muestre lo que esta en la columna accesodirecto que cada 12 registros termine ese block e inicialice el conteo de N+1,01 hasta N+1,12

Consecutivo, Nombre, Sueldo, Fecha, accesodirecto

1 JOEL 10.00 2007/01/01 1,01
2 MARTA 20.00 2007/02/20 1,02
.
.
.
12 ANDREA 12.00 2007/05/25 1,12
13 MIGUEL 5.00 2007/05/23 2,01

Eso lo necesito para cargar la informacion del server del grupo a cada bascula del super por medio de un Job.

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