

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[reg_seg_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[reg_seg_usuario]
GO
CREATE PROCEDURE [reg_seg_usuario]
	@p_id INT
AS
BEGIN
	SELECT 	[id] AS [id],
		[uid] AS [uid],
		[eid] AS [eid],
		[id_usuario_modifico] AS [id_usuario_modifico],
		[id_usuario_creo] AS [id_usuario_creo],
		[fechaModificacion] AS [fechaModificacion],
		[fechaCreacion] AS [fechaCreacion],
		[active] AS [active],
		[usuario] AS [usuario],
		[usuario_codigo] AS [usuario_codigo],
		[intentosFallidos] AS [intentosFallidos],
		[numeroIngresos] AS [numeroIngresos],
		[fechaUltimoIngreso_fh] AS [fechaUltimoIngreso_fh],
		[fechaIntentoFallido_fh] AS [fechaIntentoFallido_fh],
		[clave] AS [clave],
		[nombre] AS [nombre],
		[profesion] AS [profesion],
		[email] AS [email],
		[direccion] AS [direccion],
		[telefono] AS [telefono],
		[costoHora] AS [costoHora],
		[porcentajeComision] AS [porcentajeComision],
		[accesoActivo] AS [accesoActivo],
		[cambiarClave] AS [cambiarClave],
		[fechaUltimoCambioClave_fh] AS [fechaUltimoCambioClave_fh],
		[aplicaRecargo] AS [aplicaRecargo],
		[sexo] AS [sexo],
		[id_perfil] AS [id_perfil],
		[id_cargo] AS [id_cargo],
		[id_grupo] AS [id_grupo],
		[id_zona] AS [id_zona],
		[identificacion] AS [identificacion],
		[id_usuario] AS [id_usuario],
		[preferencias] AS [preferencias],
		[habilitado] AS [habilitado]
	FROM [seg_usuario]
	WHERE	(id = @p_id)

END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
IF  EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[view_seg_usuario]')) DROP VIEW [dbo].[view_seg_usuario]
GO
CREATE  VIEW [view_seg_usuario] AS
SELECT 	[seg_usuario].[id] AS [id],
		[seg_usuario].[uid] AS [uid],
		[seg_usuario].[eid] AS [eid],
		[seg_usuario].[id_usuario_modifico] AS [id_usuario_modifico],
		[seg_usuario].[id_usuario_creo] AS [id_usuario_creo],
		[seg_usuario].[fechaModificacion] AS [fechaModificacion],
		[seg_usuario].[fechaCreacion] AS [fechaCreacion],
		[seg_usuario].[active] AS [active],
		[seg_usuario].[usuario] AS [usuario],
		[seg_usuario].[usuario_codigo] AS [usuario_codigo],
		[seg_usuario].[intentosFallidos] AS [intentosFallidos],
		[seg_usuario].[numeroIngresos] AS [numeroIngresos],
		[seg_usuario].[fechaUltimoIngreso_fh] AS [fechaUltimoIngreso_fh],
		[seg_usuario].[fechaIntentoFallido_fh] AS [fechaIntentoFallido_fh],
		[seg_usuario].[clave] AS [clave],
		[seg_usuario].[nombre] AS [nombre],
		[seg_usuario].[profesion] AS [profesion],
		[seg_usuario].[email] AS [email],
		[seg_usuario].[direccion] AS [direccion],
		[seg_usuario].[telefono] AS [telefono],
		[seg_usuario].[costoHora] AS [costoHora],
		[seg_usuario].[porcentajeComision] AS [porcentajeComision],
		[seg_usuario].[accesoActivo] AS [accesoActivo],
		[seg_usuario].[cambiarClave] AS [cambiarClave],
		[seg_usuario].[fechaUltimoCambioClave_fh] AS [fechaUltimoCambioClave_fh],
		[seg_usuario].[aplicaRecargo] AS [aplicaRecargo],
		[seg_usuario].[sexo] AS [sexo],
		[seg_usuario].[id_perfil] AS [id_perfil],
[seg_perfil].[perfil] as [seg_perfil_perfil],
[seg_perfil].[perfil_codigo] as [seg_perfil_perfil_codigo],
[seg_perfil].[descripcion] as [seg_perfil_descripcion],
[seg_perfil].[mostrarBotones] as [seg_perfil_mostrarBotones],
[seg_perfil].[paraCliente] as [seg_perfil_paraCliente],
[seg_perfil].[paraProveedor] as [seg_perfil_paraProveedor],
		[seg_usuario].[id_cargo] AS [id_cargo],
[seg_cargo].[cargo] as [seg_cargo_cargo],
[seg_cargo].[cargo_codigo] as [seg_cargo_cargo_codigo],
[seg_cargo].[esTecnico] as [seg_cargo_esTecnico],
[seg_cargo].[esComercial] as [seg_cargo_esComercial],
[seg_cargo].[esCoordinador] as [seg_cargo_esCoordinador],
[seg_cargo].[valorHora] as [seg_cargo_valorHora],
[seg_cargo].[esAdministrativo] as [seg_cargo_esAdministrativo],
		[seg_usuario].[id_grupo] AS [id_grupo],
[seg_grupo].[grupo] as [seg_grupo_grupo],
[seg_grupo].[grupo_codigo] as [seg_grupo_grupo_codigo],
[seg_grupo].[activo] as [seg_grupo_activo],
		[seg_usuario].[id_zona] AS [id_zona],
[gen_zona].[zona] as [gen_zona_zona],
[gen_zona].[zona_codigo] as [gen_zona_zona_codigo],
[gen_zona].[tiempoDesplazamiento] as [gen_zona_tiempoDesplazamiento],
[gen_zona].[nivel] as [gen_zona_nivel],
[gen_zona].[id_zona] as [gen_zona_id_zona],
[gen_zona].[codigoExterno] as [gen_zona_codigoExterno],
		[seg_usuario].[identificacion] AS [identificacion],
		[seg_usuario].[id_usuario] AS [id_usuario],
[seg_usuario_padre].[usuario] as [seg_usuario_padre_usuario],
[seg_usuario_padre].[usuario_codigo] as [seg_usuario_padre_usuario_codigo],
[seg_usuario_padre].[intentosFallidos] as [seg_usuario_padre_intentosFallidos],
[seg_usuario_padre].[numeroIngresos] as [seg_usuario_padre_numeroIngresos],
[seg_usuario_padre].[fechaUltimoIngreso_fh] as [seg_usuario_padre_fechaUltimoIngreso_fh],
[seg_usuario_padre].[fechaIntentoFallido_fh] as [seg_usuario_padre_fechaIntentoFallido_fh],
[seg_usuario_padre].[clave] as [seg_usuario_padre_clave],
[seg_usuario_padre].[nombre] as [seg_usuario_padre_nombre],
[seg_usuario_padre].[profesion] as [seg_usuario_padre_profesion],
[seg_usuario_padre].[email] as [seg_usuario_padre_email],
[seg_usuario_padre].[direccion] as [seg_usuario_padre_direccion],
[seg_usuario_padre].[telefono] as [seg_usuario_padre_telefono],
[seg_usuario_padre].[costoHora] as [seg_usuario_padre_costoHora],
[seg_usuario_padre].[porcentajeComision] as [seg_usuario_padre_porcentajeComision],
[seg_usuario_padre].[accesoActivo] as [seg_usuario_padre_accesoActivo],
[seg_usuario_padre].[cambiarClave] as [seg_usuario_padre_cambiarClave],
[seg_usuario_padre].[fechaUltimoCambioClave_fh] as [seg_usuario_padre_fechaUltimoCambioClave_fh],
[seg_usuario_padre].[aplicaRecargo] as [seg_usuario_padre_aplicaRecargo],
[seg_usuario_padre].[sexo] as [seg_usuario_padre_sexo],
[seg_usuario_padre].[id_perfil] as [seg_usuario_padre_id_perfil],
[seg_usuario_padre].[id_cargo] as [seg_usuario_padre_id_cargo],
[seg_usuario_padre].[id_grupo] as [seg_usuario_padre_id_grupo],
[seg_usuario_padre].[id_zona] as [seg_usuario_padre_id_zona],
[seg_usuario_padre].[identificacion] as [seg_usuario_padre_identificacion],
[seg_usuario_padre].[id_usuario] as [seg_usuario_padre_id_usuario],
[seg_usuario_padre].[preferencias] as [seg_usuario_padre_preferencias],
[seg_usuario_padre].[habilitado] as [seg_usuario_padre_habilitado],
		[seg_usuario].[preferencias] AS [preferencias],
		[seg_usuario].[habilitado] AS [habilitado],
		[empresaCodigo].[empresa] As [multiempresa]
FROM [seg_usuario]
	INNER JOIN [seg_usuario] AS [seg_usuario_modifico] ON [seg_usuario_modifico].id=[seg_usuario].[id_usuario_modifico]
	INNER JOIN [seg_usuario] AS [seg_usuario_creo] ON [seg_usuario_creo].id=[seg_usuario].[id_usuario_creo]
	INNER JOIN [seg_perfil] ON [seg_perfil].id=[seg_usuario].[id_perfil]
	INNER JOIN [seg_cargo] ON [seg_cargo].id=[seg_usuario].[id_cargo]
	INNER JOIN [seg_grupo] ON [seg_grupo].id=[seg_usuario].[id_grupo]
	INNER JOIN [gen_zona] ON [gen_zona].id=[seg_usuario].[id_zona]
	INNER JOIN [seg_usuario] AS [seg_usuario_padre] ON [seg_usuario_padre].id=[seg_usuario].[id_usuario]
	INNER JOIN [gen_empresa] AS empresaCodigo ON [seg_usuario].eid = [empresaCodigo].[codigo] and empresaCodigo.active=1
WHERE [seg_usuario].active=1
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXusuario_modifico]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXusuario_modifico]
GO
CREATE PROCEDURE [sel_seg_usuariosXusuario_modifico]
	@p_id_usuario_modifico INT
AS
BEGIN
	SELECT * 
	FROM [view_seg_usuario]
	WHERE ([id_usuario_modifico]= @p_id_usuario_modifico)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXusuario_creo]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXusuario_creo]
GO
CREATE PROCEDURE [sel_seg_usuariosXusuario_creo]
	@p_id_usuario_creo INT
AS
BEGIN
	SELECT * 
	FROM [view_seg_usuario]
	WHERE ([id_usuario_creo]= @p_id_usuario_creo)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXperfil]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXperfil]
GO
CREATE PROCEDURE [sel_seg_usuariosXperfil]
	@p_id_perfil INT
AS
BEGIN
	SELECT * 
	FROM [view_seg_usuario]
	WHERE ([id_perfil]= @p_id_perfil)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXcargo]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXcargo]
GO
CREATE PROCEDURE [sel_seg_usuariosXcargo]
	@p_id_cargo INT
AS
BEGIN
	SELECT * 
	FROM [view_seg_usuario]
	WHERE ([id_cargo]= @p_id_cargo)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXgrupo]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXgrupo]
GO
CREATE PROCEDURE [sel_seg_usuariosXgrupo]
	@p_id_grupo INT
AS
BEGIN
	SELECT * 
	FROM [view_seg_usuario]
	WHERE ([id_grupo]= @p_id_grupo)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXzona]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXzona]
GO
CREATE PROCEDURE [sel_seg_usuariosXzona]
	@p_id_zona INT
AS
BEGIN
	SELECT * 
	FROM [view_seg_usuario]
	WHERE ([id_zona]= @p_id_zona)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXusuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXusuario]
GO
CREATE PROCEDURE [sel_seg_usuariosXusuario]
	@p_id_usuario INT
AS
BEGIN
	SELECT * 
	FROM [view_seg_usuario]
	WHERE ([id_usuario]= @p_id_usuario)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuarios]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuarios]
GO
CREATE PROCEDURE [sel_seg_usuarios]
	
	@p_filtro as varchar (8000) = '1=1',
	@p_orden as varchar (8000) = 'id',
	@p_campos as varchar (8000) = '*' AS
BEGIN
exec ('SELECT '+ @p_campos +
' FROM [view_seg_usuario]
WHERE (' + @p_filtro + ') ORDER BY ' + @p_orden)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------

SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[lis_seg_usuarios]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[lis_seg_usuarios]
GO
CREATE PROCEDURE [lis_seg_usuarios]
	AS
BEGIN
	SELECT id AS id,
[usuario] AS [seg_usuario]
	FROM [seg_usuario]
	WHERE active = 1
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[upd_seg_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[upd_seg_usuario]
GO
CREATE PROCEDURE [upd_seg_usuario]
	@p_id int = null,
		@p_uid varchar(500) = null,
		@p_eid varchar(50) = null,
		@p_id_usuario_modifico int = null,
		@p_id_usuario_creo int = null,
		@p_fechaCreacion smalldatetime = null,
		@p_usuario varchar(300) = null,
		@p_usuario_codigo varchar(100) = null,
		@p_intentosFallidos int = null,
		@p_numeroIngresos int = null,
		@p_fechaUltimoIngreso_fh smalldatetime = null,
		@p_fechaIntentoFallido_fh smalldatetime = null,
		@p_clave varchar(48) = null,
		@p_nombre varchar(100) = null,
		@p_profesion varchar(100) = null,
		@p_email varchar(100) = null,
		@p_direccion varchar(300) = null,
		@p_telefono varchar(100) = null,
		@p_costoHora money = null,
		@p_porcentajeComision float = null,
		@p_accesoActivo bit = null,
		@p_cambiarClave bit = null,
		@p_fechaUltimoCambioClave_fh smalldatetime = null,
		@p_aplicaRecargo bit = null,
		@p_sexo bit = null,
		@p_id_perfil int = null,
		@p_id_cargo int = null,
		@p_id_grupo int = null,
		@p_id_zona int = null,
		@p_identificacion varchar(100) = null,
		@p_id_usuario int = null,
		@p_preferencias image = null,
		@p_habilitado bit = null
AS
BEGIN
		UPDATE [seg_usuario]
		SET	[uid] = isnull(@p_uid,[uid]),
			[eid] = isnull(@p_eid,[eid]),
			[id_usuario_modifico] = isnull(@p_id_usuario_modifico,[id_usuario_modifico]),
			[id_usuario_creo] = isnull(@p_id_usuario_creo,[id_usuario_creo]),
			[fechaModificacion] = GETDATE(),
			[usuario] = isnull(@p_usuario,[usuario]),
			[usuario_codigo] = isnull(@p_usuario_codigo,[usuario_codigo]),
			[intentosFallidos] = isnull(@p_intentosFallidos,[intentosFallidos]),
			[numeroIngresos] = isnull(@p_numeroIngresos,[numeroIngresos]),
			[fechaUltimoIngreso_fh] = isnull(@p_fechaUltimoIngreso_fh,[fechaUltimoIngreso_fh]),
			[fechaIntentoFallido_fh] = isnull(@p_fechaIntentoFallido_fh,[fechaIntentoFallido_fh]),
			[clave] = isnull(@p_clave,[clave]),
			[nombre] = isnull(@p_nombre,[nombre]),
			[profesion] = isnull(@p_profesion,[profesion]),
			[email] = isnull(@p_email,[email]),
			[direccion] = isnull(@p_direccion,[direccion]),
			[telefono] = isnull(@p_telefono,[telefono]),
			[costoHora] = isnull(@p_costoHora,[costoHora]),
			[porcentajeComision] = isnull(@p_porcentajeComision,[porcentajeComision]),
			[accesoActivo] = isnull(@p_accesoActivo,[accesoActivo]),
			[cambiarClave] = isnull(@p_cambiarClave,[cambiarClave]),
			[fechaUltimoCambioClave_fh] = isnull(@p_fechaUltimoCambioClave_fh,[fechaUltimoCambioClave_fh]),
			[aplicaRecargo] = isnull(@p_aplicaRecargo,[aplicaRecargo]),
			[sexo] = isnull(@p_sexo,[sexo]),
			[id_perfil] = isnull(@p_id_perfil,[id_perfil]),
			[id_cargo] = isnull(@p_id_cargo,[id_cargo]),
			[id_grupo] = isnull(@p_id_grupo,[id_grupo]),
			[id_zona] = isnull(@p_id_zona,[id_zona]),
			[identificacion] = isnull(@p_identificacion,[identificacion]),
			[id_usuario] = isnull(@p_id_usuario,[id_usuario]),
			[preferencias] = isnull(@p_preferencias,[preferencias]),
			[habilitado] = isnull(@p_habilitado,[habilitado])
		WHERE (id = @p_id)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[ins_seg_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[ins_seg_usuario]
GO
CREATE PROCEDURE [ins_seg_usuario]
	@p_uid varchar(500),
		@p_eid varchar(50),
		@p_id_usuario_modifico int,
		@p_id_usuario_creo int,
		@p_usuario varchar(300),
		@p_usuario_codigo varchar(100),
		@p_intentosFallidos int,
		@p_numeroIngresos int,
		@p_fechaUltimoIngreso_fh smalldatetime,
		@p_fechaIntentoFallido_fh smalldatetime,
		@p_clave varchar(48),
		@p_nombre varchar(100),
		@p_profesion varchar(100),
		@p_email varchar(100),
		@p_direccion varchar(300),
		@p_telefono varchar(100),
		@p_costoHora money,
		@p_porcentajeComision float,
		@p_accesoActivo bit,
		@p_cambiarClave bit,
		@p_fechaUltimoCambioClave_fh smalldatetime,
		@p_aplicaRecargo bit,
		@p_sexo bit,
		@p_id_perfil int,
		@p_id_cargo int,
		@p_id_grupo int,
		@p_id_zona int,
		@p_identificacion varchar(100),
		@p_id_usuario int,
		@p_preferencias image,
		@p_habilitado bit
AS
BEGIN
	DECLARE @v_id int
		INSERT INTO [seg_usuario]
			([uid],
			[eid],
			[id_usuario_modifico],
			[id_usuario_creo],
			[fechaModificacion],
			[fechaCreacion],
			[usuario],
			[usuario_codigo],
			[intentosFallidos],
			[numeroIngresos],
			[fechaUltimoIngreso_fh],
			[fechaIntentoFallido_fh],
			[clave],
			[nombre],
			[profesion],
			[email],
			[direccion],
			[telefono],
			[costoHora],
			[porcentajeComision],
			[accesoActivo],
			[cambiarClave],
			[fechaUltimoCambioClave_fh],
			[aplicaRecargo],
			[sexo],
			[id_perfil],
			[id_cargo],
			[id_grupo],
			[id_zona],
			[identificacion],
			[id_usuario],
			[preferencias],
			[habilitado])
		VALUES(	@p_uid,
			@p_eid,
			@p_id_usuario_modifico,
			@p_id_usuario_creo,
			GETDATE(),
			GETDATE(),
			@p_usuario,
			@p_usuario_codigo,
			@p_intentosFallidos,
			@p_numeroIngresos,
			@p_fechaUltimoIngreso_fh,
			@p_fechaIntentoFallido_fh,
			@p_clave,
			@p_nombre,
			@p_profesion,
			@p_email,
			@p_direccion,
			@p_telefono,
			@p_costoHora,
			@p_porcentajeComision,
			@p_accesoActivo,
			@p_cambiarClave,
			@p_fechaUltimoCambioClave_fh,
			@p_aplicaRecargo,
			@p_sexo,
			@p_id_perfil,
			@p_id_cargo,
			@p_id_grupo,
			@p_id_zona,
			@p_identificacion,
			@p_id_usuario,
			@p_preferencias,
			@p_habilitado)
		SET @v_id = scope_identity()
UPDATE [seg_usuario] set [uid] = [uid] + '_' + convert(varchar(20),@v_id) where [id]=@v_id
SELECT @v_id as id
RETURN @v_id
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[act_seg_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[act_seg_usuario]
GO
CREATE PROCEDURE [act_seg_usuario]
	@p_active BIT,
	@p_id INT,
@p_id_usuario_modifico int = null
AS
BEGIN
	UPDATE [seg_usuario]
	SET active=@p_active,
	[id_usuario_modifico] = isnull(@p_id_usuario_modifico,[id_usuario_modifico]),
	[fechaModificacion] = GETDATE()
	WHERE	(id = @p_id)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------

SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[reg_seg_usuario_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[reg_seg_usuario_m]
GO
CREATE PROCEDURE [reg_seg_usuario_m]
	@p_id INT,
	@p_eid as varchar(50) = ''
AS
BEGIN
	SELECT 	[id] AS [id],
		[uid] AS [uid],
		[eid] AS [eid],
		[id_usuario_modifico] AS [id_usuario_modifico],
		[id_usuario_creo] AS [id_usuario_creo],
		[fechaModificacion] AS [fechaModificacion],
		[fechaCreacion] AS [fechaCreacion],
		[active] AS [active],
		[usuario] AS [usuario],
		[usuario_codigo] AS [usuario_codigo],
		[intentosFallidos] AS [intentosFallidos],
		[numeroIngresos] AS [numeroIngresos],
		[fechaUltimoIngreso_fh] AS [fechaUltimoIngreso_fh],
		[fechaIntentoFallido_fh] AS [fechaIntentoFallido_fh],
		[clave] AS [clave],
		[nombre] AS [nombre],
		[profesion] AS [profesion],
		[email] AS [email],
		[direccion] AS [direccion],
		[telefono] AS [telefono],
		[costoHora] AS [costoHora],
		[porcentajeComision] AS [porcentajeComision],
		[accesoActivo] AS [accesoActivo],
		[cambiarClave] AS [cambiarClave],
		[fechaUltimoCambioClave_fh] AS [fechaUltimoCambioClave_fh],
		[aplicaRecargo] AS [aplicaRecargo],
		[sexo] AS [sexo],
		[id_perfil] AS [id_perfil],
		[id_cargo] AS [id_cargo],
		[id_grupo] AS [id_grupo],
		[id_zona] AS [id_zona],
		[identificacion] AS [identificacion],
		[id_usuario] AS [id_usuario],
		[preferencias] AS [preferencias],
		[habilitado] AS [habilitado]
	FROM [seg_usuario]
	WHERE	(id = @p_id)
	AND	(eid LIKE @p_eid+'%')

END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXusuario_modifico_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXusuario_modifico_m]
GO
CREATE PROCEDURE [sel_seg_usuariosXusuario_modifico_m]
	@p_id_usuario_modifico INT,
	@p_eid as varchar(50) = ''
AS
BEGIN
	SELECT *
	FROM [view_seg_usuario]
	WHERE ([id_usuario_modifico]= @p_id_usuario_modifico)
	AND	(eid LIKE @p_eid+'%')
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXusuario_creo_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXusuario_creo_m]
GO
CREATE PROCEDURE [sel_seg_usuariosXusuario_creo_m]
	@p_id_usuario_creo INT,
	@p_eid as varchar(50) = ''
AS
BEGIN
	SELECT *
	FROM [view_seg_usuario]
	WHERE ([id_usuario_creo]= @p_id_usuario_creo)
	AND	(eid LIKE @p_eid+'%')
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXperfil_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXperfil_m]
GO
CREATE PROCEDURE [sel_seg_usuariosXperfil_m]
	@p_id_perfil INT,
	@p_eid as varchar(50) = ''
AS
BEGIN
	SELECT *
	FROM [view_seg_usuario]
	WHERE ([id_perfil]= @p_id_perfil)
	AND	(eid LIKE @p_eid+'%')
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXcargo_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXcargo_m]
GO
CREATE PROCEDURE [sel_seg_usuariosXcargo_m]
	@p_id_cargo INT,
	@p_eid as varchar(50) = ''
AS
BEGIN
	SELECT *
	FROM [view_seg_usuario]
	WHERE ([id_cargo]= @p_id_cargo)
	AND	(eid LIKE @p_eid+'%')
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXgrupo_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXgrupo_m]
GO
CREATE PROCEDURE [sel_seg_usuariosXgrupo_m]
	@p_id_grupo INT,
	@p_eid as varchar(50) = ''
AS
BEGIN
	SELECT *
	FROM [view_seg_usuario]
	WHERE ([id_grupo]= @p_id_grupo)
	AND	(eid LIKE @p_eid+'%')
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXzona_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXzona_m]
GO
CREATE PROCEDURE [sel_seg_usuariosXzona_m]
	@p_id_zona INT,
	@p_eid as varchar(50) = ''
AS
BEGIN
	SELECT *
	FROM [view_seg_usuario]
	WHERE ([id_zona]= @p_id_zona)
	AND	(eid LIKE @p_eid+'%')
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuariosXusuario_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuariosXusuario_m]
GO
CREATE PROCEDURE [sel_seg_usuariosXusuario_m]
	@p_id_usuario INT,
	@p_eid as varchar(50) = ''
AS
BEGIN
	SELECT *
	FROM [view_seg_usuario]
	WHERE ([id_usuario]= @p_id_usuario)
	AND	(eid LIKE @p_eid+'%')
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_seg_usuarios_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_seg_usuarios_m]
GO
CREATE PROCEDURE [sel_seg_usuarios_m]
	@p_eid as varchar (50)='',
	@p_filtro as varchar (8000) = '1=1',
	@p_orden as varchar (8000) = 'id',
	@p_campos as varchar (8000) = '*' AS
BEGIN
exec ('SELECT '+ @p_campos +
' FROM [view_seg_usuario]
WHERE  (eid like '''+@p_eid+'%'+''' ) AND (' + @p_filtro + ') ORDER BY ' + @p_orden)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------

SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[lis_seg_usuarios_m]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[lis_seg_usuarios_m]
GO
CREATE PROCEDURE [lis_seg_usuarios_m]
	@p_eid as varchar(50) = ''
AS
BEGIN
	SELECT id AS id,
[usuario] AS [seg_usuario]
	FROM [seg_usuario]
	WHERE active = 1
	AND	(eid LIKE @p_eid+'%')
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------

SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[aud_seg_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[aud_seg_usuario]
GO
CREATE PROCEDURE [aud_seg_usuario]
	@p_filtro as varchar (8000) = '1=1'
AS
BEGIN
exec(	'SELECT [seg_usuario].id as id_tabla,
	[seg_usuario].id_usuario_modifico as id_usuario_modifico,
	[seg_usuario].id_usuario_creo as id_usuario_creo,
	[seg_usuario].fechaModificacion as fechaModificacion,
	[seg_usuario].fechaCreacion as fechaCreacion,
	[seg_usuario].active as active,
	[seg_usuario].[usuario] as campoPrincipal,
	[seg_usuario_creo].usuario as usuarioCreo,
	[seg_usuario_modifico].usuario as usuarioModifico

	FROM [seg_usuario]
	INNER JOIN [seg_usuario] AS [seg_usuario_modifico] ON [seg_usuario_modifico].id=[seg_usuario].[id_usuario_modifico]
	INNER JOIN [seg_usuario] AS [seg_usuario_creo] ON [seg_usuario_creo].id=[seg_usuario].[id_usuario_creo]
	where ' + @p_filtro)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_gen_bodegasXusuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_gen_bodegasXusuario]
GO
CREATE PROCEDURE [sel_gen_bodegasXusuario]
	@p_id_seg_usuario INT
AS
BEGIN
	SELECT 	[gen_bodega_usuario].[id] AS [I_id],
		[gen_bodega_usuario].[uid] AS [I_uid],
		[gen_bodega_usuario].[eid] AS [I_eid],
		[gen_bodega_usuario].[fechaModificacion] AS [I_fechaModificacion],
		[gen_bodega_usuario].[fechaCreacion] AS [I_fechaCreacion],
		[gen_bodega_usuario].[active] AS [I_active],
		[gen_bodega_usuario].[bodega_usuario] AS [I_bodega_usuario],
		[gen_bodega_usuario].[sugerir] AS [I_sugerir]
	FROM gen_bodega_usuario INNER JOIN gen_bodega
	 ON [gen_bodega_usuario].[id_bodega] = [gen_bodega].id
	WHERE	([gen_bodega_usuario].[id_usuario]= @p_id_seg_usuario)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[ins_gen_bodega_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[ins_gen_bodega_usuario]
GO
CREATE PROCEDURE [ins_gen_bodega_usuario]
	@p_uid varchar(500),
		@p_eid varchar(50),
		@p_id_usuario_modifico int,
		@p_id_usuario_creo int,
		@p_bodega_usuario varchar(300),
		@p_id_usuario int,
		@p_id_bodega int,
		@p_sugerir bit
AS
BEGIN
	DECLARE @v_id int
		INSERT INTO [gen_bodega_usuario]
			([uid],
			[eid],
			[id_usuario_modifico],
			[id_usuario_creo],
			[fechaModificacion],
			[fechaCreacion],
			[bodega_usuario],
			[id_usuario],
			[id_bodega],
			[sugerir])
		VALUES(	@p_uid,
			@p_eid,
			@p_id_usuario_modifico,
			@p_id_usuario_creo,
			GETDATE(),
			GETDATE(),
			@p_bodega_usuario,
			@p_id_usuario,
			@p_id_bodega,
			@p_sugerir)
		SET @v_id = scope_identity()
UPDATE [gen_bodega_usuario] set [uid] = [uid] + '_' + convert(varchar(20),@v_id) where [id]=@v_id
SELECT @v_id as id
RETURN @v_id
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[upd_gen_bodega_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[upd_gen_bodega_usuario]
GO
CREATE PROCEDURE [upd_gen_bodega_usuario]
	@p_id int = null,
		@p_uid varchar(500) = null,
		@p_eid varchar(50) = null,
		@p_id_usuario_modifico int = null,
		@p_id_usuario_creo int = null,
		@p_fechaCreacion smalldatetime = null,
		@p_bodega_usuario varchar(300) = null,
		@p_id_usuario int = null,
		@p_id_bodega int = null,
		@p_sugerir bit = null
AS
BEGIN
		UPDATE [gen_bodega_usuario]
		SET	[uid] = isnull(@p_uid,[uid]),
			[eid] = isnull(@p_eid,[eid]),
			[id_usuario_modifico] = isnull(@p_id_usuario_modifico,[id_usuario_modifico]),
			[id_usuario_creo] = isnull(@p_id_usuario_creo,[id_usuario_creo]),
			[fechaModificacion] = GETDATE(),
			[bodega_usuario] = isnull(@p_bodega_usuario,[bodega_usuario]),
			[id_usuario] = isnull(@p_id_usuario,[id_usuario]),
			[id_bodega] = isnull(@p_id_bodega,[id_bodega]),
			[sugerir] = isnull(@p_sugerir,[sugerir])
		WHERE (id = @p_id)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_ter_sucursalesXusuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_ter_sucursalesXusuario]
GO
CREATE PROCEDURE [sel_ter_sucursalesXusuario]
	@p_id_seg_usuario INT
AS
BEGIN
	SELECT 	[ter_sucursal_usuario].[id] AS [I_id],
		[ter_sucursal_usuario].[uid] AS [I_uid],
		[ter_sucursal_usuario].[eid] AS [I_eid],
		[ter_sucursal_usuario].[fechaModificacion] AS [I_fechaModificacion],
		[ter_sucursal_usuario].[fechaCreacion] AS [I_fechaCreacion],
		[ter_sucursal_usuario].[active] AS [I_active],
		[ter_sucursal_usuario].[sucursal_usuario] AS [I_sucursal_usuario]
	FROM ter_sucursal_usuario INNER JOIN ter_sucursal
	 ON [ter_sucursal_usuario].[id_sucursal] = [ter_sucursal].id
	WHERE	([ter_sucursal_usuario].[id_usuario]= @p_id_seg_usuario)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[ins_ter_sucursal_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[ins_ter_sucursal_usuario]
GO
CREATE PROCEDURE [ins_ter_sucursal_usuario]
	@p_uid varchar(500),
		@p_eid varchar(50),
		@p_id_usuario_modifico int,
		@p_id_usuario_creo int,
		@p_sucursal_usuario varchar(300),
		@p_id_sucursal int,
		@p_id_usuario int
AS
BEGIN
	DECLARE @v_id int
		INSERT INTO [ter_sucursal_usuario]
			([uid],
			[eid],
			[id_usuario_modifico],
			[id_usuario_creo],
			[fechaModificacion],
			[fechaCreacion],
			[sucursal_usuario],
			[id_sucursal],
			[id_usuario])
		VALUES(	@p_uid,
			@p_eid,
			@p_id_usuario_modifico,
			@p_id_usuario_creo,
			GETDATE(),
			GETDATE(),
			@p_sucursal_usuario,
			@p_id_sucursal,
			@p_id_usuario)
		SET @v_id = scope_identity()
UPDATE [ter_sucursal_usuario] set [uid] = [uid] + '_' + convert(varchar(20),@v_id) where [id]=@v_id
SELECT @v_id as id
RETURN @v_id
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[upd_ter_sucursal_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[upd_ter_sucursal_usuario]
GO
CREATE PROCEDURE [upd_ter_sucursal_usuario]
	@p_id int = null,
		@p_uid varchar(500) = null,
		@p_eid varchar(50) = null,
		@p_id_usuario_modifico int = null,
		@p_id_usuario_creo int = null,
		@p_fechaCreacion smalldatetime = null,
		@p_sucursal_usuario varchar(300) = null,
		@p_id_sucursal int = null,
		@p_id_usuario int = null
AS
BEGIN
		UPDATE [ter_sucursal_usuario]
		SET	[uid] = isnull(@p_uid,[uid]),
			[eid] = isnull(@p_eid,[eid]),
			[id_usuario_modifico] = isnull(@p_id_usuario_modifico,[id_usuario_modifico]),
			[id_usuario_creo] = isnull(@p_id_usuario_creo,[id_usuario_creo]),
			[fechaModificacion] = GETDATE(),
			[sucursal_usuario] = isnull(@p_sucursal_usuario,[sucursal_usuario]),
			[id_sucursal] = isnull(@p_id_sucursal,[id_sucursal]),
			[id_usuario] = isnull(@p_id_usuario,[id_usuario])
		WHERE (id = @p_id)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sel_ter_tercerosXusuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[sel_ter_tercerosXusuario]
GO
CREATE PROCEDURE [sel_ter_tercerosXusuario]
	@p_id_seg_usuario INT
AS
BEGIN
	SELECT 	[ter_tercero_usuario].[id] AS [I_id],
		[ter_tercero_usuario].[uid] AS [I_uid],
		[ter_tercero_usuario].[eid] AS [I_eid],
		[ter_tercero_usuario].[fechaModificacion] AS [I_fechaModificacion],
		[ter_tercero_usuario].[fechaCreacion] AS [I_fechaCreacion],
		[ter_tercero_usuario].[active] AS [I_active],
		[ter_tercero_usuario].[tercero_usuario] AS [I_tercero_usuario]
	FROM ter_tercero_usuario INNER JOIN ter_tercero
	 ON [ter_tercero_usuario].[id_tercero] = [ter_tercero].id
	WHERE	([ter_tercero_usuario].[id_usuario]= @p_id_seg_usuario)
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[ins_ter_tercero_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[ins_ter_tercero_usuario]
GO
CREATE PROCEDURE [ins_ter_tercero_usuario]
	@p_uid varchar(500),
		@p_eid varchar(50),
		@p_id_usuario_modifico int,
		@p_id_usuario_creo int,
		@p_tercero_usuario varchar(300),
		@p_id_tercero int,
		@p_id_usuario int
AS
BEGIN
	DECLARE @v_id int
		INSERT INTO [ter_tercero_usuario]
			([uid],
			[eid],
			[id_usuario_modifico],
			[id_usuario_creo],
			[fechaModificacion],
			[fechaCreacion],
			[tercero_usuario],
			[id_tercero],
			[id_usuario])
		VALUES(	@p_uid,
			@p_eid,
			@p_id_usuario_modifico,
			@p_id_usuario_creo,
			GETDATE(),
			GETDATE(),
			@p_tercero_usuario,
			@p_id_tercero,
			@p_id_usuario)
		SET @v_id = scope_identity()
UPDATE [ter_tercero_usuario] set [uid] = [uid] + '_' + convert(varchar(20),@v_id) where [id]=@v_id
SELECT @v_id as id
RETURN @v_id
END
GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON
GO
----------------------
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO

IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[upd_ter_tercero_usuario]') AND type in (N'P', N'PC'))DROP PROCEDURE [dbo].[upd_ter_tercero_usuario]
GO
CREATE PROCEDURE [upd_ter_tercero_usuario]
	@p_id int = null,
		@p_uid varchar(500) = null,
		@p_eid varchar(50) = null,
		@p_id_usuario_modifico int = null,
		@p_id_usuario_creo int = null,
		@p_fechaCreacion smalldatetime = null,
		@p_tercero_usuario varchar(300) = null,
		@p_id_tercero int = null,
		@p_id_usuario int = null
AS
BEGIN
		UPDATE [ter_tercero_usuario]
		SET	[uid] = isnull(@p_uid,[uid]),
			[eid] = isnull(@p_eid,[eid]),
			[id_usuario_modifico] = isnull(@p_id_usuario_modifico,[id_usuario_modifico]),
			[id_usuario_creo] = isnull(@p_id_usuario_creo,[id_usuario_creo]),
			[fechaModificacion] = GETDATE(),
			[tercero_usuario] = isnull(@p_tercero_usuario,[tercero_usuario]),
			[id_tercero] = isnull(@p_id_tercero,[id_tercero]),
			[id_usuario] = isnull(@p_id_usuario,[id_usuario])
		WHERE (id = @p_id)
END

