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


0