DECLARE @id varchar(1000) 
DECLARE @ui varchar(1000)
DECLARE @p_eid varchar(1000) = '01'
DECLARE @p_id_usuario_modifico varchar(1000) = '01'
DECLARE @p_id_usuario_creo varchar(1000) = '01'
DECLARE @id_funcionalidad varchar(1000) = ''
DECLARE @p_funcionalidad varchar(1000) = 'Editar en estado cerrado';
DECLARE @p_funcionalidad_codigo varchar(1000) = '';
DECLARE @p_urlImagen varchar(1000) = '';
DECLARE @p_urlFormulario varchar(1000) = '';
DECLARE @p_targetUrl varchar(1000) = '';
DECLARE @p_url varchar(1000) = '';
DECLARE @p_toolTip varchar(1000) = '';
DECLARE @p_esMenu bit= 0;
DECLARE @p_nombreControlInsert varchar(1000) = 'editarCerrado';
DECLARE @p_nombreControl varchar(1000) = '';
DECLARE @p_nombreComando varchar(1000) = 'archivos';
DECLARE @p_esMvc varchar(1000) = '';
DECLARE @p_id_aplicacion int = 0;
DECLARE @p_orden bit= 4;
DECLARE @idFuncionalidadDoc int
DECLARE @idFuncionalidadArchivo int
DECLARE @funcionalidadPermisoCargar varchar(1000) = 'cargar archivos'
DECLARE @p_nombreComandoPermisoCargar varchar(1000) = 'crear'
DECLARE @funcionalidadPermisoAdjunto varchar(1000) = 'Adjuntar Archivo'
DECLARE @p_nombreComandoPermisoAdjunto varchar(1000) = 'adjuntarArchivo'
DECLARE @funcionalidadPermisoEliminar varchar(1000) = 'Elimininar Archivos'
DECLARE @p_nombreComandoPermisoEliminar varchar(1000) = 'eliminar'
DECLARE @funcionalidadArchivo varchar(1000) = 'Archivo'
DECLARE @p_urlImagenArchivo varchar(1000) = 'archivos.jpg'
DECLARE @p_urlArchivo varchar(1000) = '/forms/general/formNuevo.aspx'
DECLARE @p_nombreControlArchivo varchar(1000) = 'pop_archivos'
DECLARE @p_nombreComandoArchivo varchar(1000) = 'archivos'
DECLARE @id_tipoFuncionalidadArchivo varchar(1000) = ''
DECLARE @i int = 0;
set @ui =  (select [uid]  FROM [gui_funcionalidad] where id = '1') 
set @id_funcionalidad = 5--(select top 1 id from gui_tipoFuncionalidad where tipoFuncionalidad = 'Accin')
set @id_tipoFuncionalidadArchivo = 2 --(select top 1 id from gui_tipoFuncionalidad where tipoFuncionalidad = 'Botn Barra')
 WHILE (@i <= (SELECT count(id) FROM doc_tipoDocumento))
   --------------1
   BEGIN
   SET @i = @i + 1;
   if  ( @i <> 10)
   --------------2
   BEGIN
   set @p_nombreControl = (SELECT tipoDocumento_codigo FROM doc_tipoDocumento WHERE id = @i)
   set @idFuncionalidadDoc =  (select top  1 id from [gui_funcionalidad] where nombreControl = @p_nombreControl or nombreComando = @p_nombreControl and id_tipoFuncionalidad = @id_tipoFuncionalidadArchivo)
   if ( @idFuncionalidadDoc > 0 )
   --------------3
   BEGIN
   if not exists (select top  1 * from [gui_funcionalidad] where nombreComando = @p_nombreComando and id_funcionalidad = @idFuncionalidadDoc)
   --------------4
	        BEGIN
	        exec   [dbo].[ins_gui_funcionalidad]
            @ui,
	     	@p_eid,
			@p_id_usuario_modifico,
			@p_id_usuario_creo,		
			@funcionalidadArchivo,
			@p_funcionalidad_codigo,
			@p_urlImagenArchivo,
			@p_urlFormulario,
			@p_targetUrl,
			@p_urlArchivo,
			@p_toolTip,
			@p_esMenu,
			@p_nombreControlArchivo,
			@p_nombreComandoArchivo,
			@p_orden,
			@idFuncionalidadDoc,
			@id_tipoFuncionalidadArchivo,
			@p_esMvc,
			@p_id_aplicacion
	       set @idFuncionalidadArchivo =  (select top  1 id from [gui_funcionalidad] where nombreComando = @p_nombreComandoArchivo and id_funcionalidad = @idFuncionalidadDoc)
	  END
	  --------------4
	  --------------5
	  BEGIN
      set @idFuncionalidadArchivo =  (select top  1 id from [gui_funcionalidad] where nombreComando = @p_nombreComando and id_funcionalidad = @idFuncionalidadDoc)
	  --editar estado cerrado
	  if not exists ( select * FROM [gui_funcionalidad] where   nombreComando = @p_nombreControlInsert
      and active = 1 and id_tipoFuncionalidad = @id_funcionalidad and id_funcionalidad = @idFuncionalidadArchivo)
	  --------------6
	  BEGIN
	 EXECUTE  [dbo].[ins_gui_funcionalidad]
     @ui,
	 @p_eid,
	 @p_id_usuario_modifico,
	 @p_id_usuario_creo,		
	 @p_funcionalidad,
	 @p_funcionalidad_codigo,
	 @p_urlImagen,
	 @p_urlFormulario,
	 @p_targetUrl,
	 @p_url,
	 @p_toolTip,
	 @p_esMenu,
	 @p_nombreControl,
	 @p_nombreControlInsert,
	 @p_orden,
	 @idFuncionalidadArchivo,
	 @id_funcionalidad,
	 @p_esMvc,
	 @p_id_aplicacion
	 END
	 ---------------6
	 --Permisos de archivo cargar			
if not exists ( select * FROM [gui_funcionalidad] where   nombreComando = @p_nombreComandoPermisoCargar 
    and active = 1 and id_tipoFuncionalidad = @id_funcionalidad and id_funcionalidad = @idFuncionalidadArchivo)
	 ---------------7
	BEGIN
    EXECUTE  [dbo].[ins_gui_funcionalidad]
    @ui,
   	@p_eid,
	@p_id_usuario_modifico,
	@p_id_usuario_creo,		
	@funcionalidadPermisoCargar,
	@p_funcionalidad_codigo,
	@p_urlImagen,
	@p_urlFormulario,
	@p_targetUrl,
	@p_url,
	@p_toolTip,
	@p_esMenu,
	@p_nombreControl,
	@p_nombreComandoPermisoCargar,
	@p_orden,
	@idFuncionalidadArchivo,
	@id_funcionalidad,
	@p_esMvc,
	@p_id_aplicacion
    END
	 ---------------7
	 --Permisos de archivo adjunto			
if not exists ( select * FROM [gui_funcionalidad] where   nombreComando = @p_nombreComandoPermisoAdjunto 
 and active = 1 and id_tipoFuncionalidad = @id_funcionalidad and id_funcionalidad = @idFuncionalidadArchivo)
 BEGIN
	 ---------------8
 EXECUTE  [dbo].[ins_gui_funcionalidad]
            @ui,
	     	@p_eid,
			@p_id_usuario_modifico,
			@p_id_usuario_creo,		
			@funcionalidadPermisoAdjunto,
			@p_funcionalidad_codigo,
			@p_urlImagen,
			@p_urlFormulario,
			@p_targetUrl,
			@p_url,
			@p_toolTip,
			@p_esMenu,
			@p_nombreControl,
			@p_nombreComandoPermisoAdjunto,
			@p_orden,
			@idFuncionalidadArchivo,
			@id_funcionalidad,
			@p_esMvc,
			@p_id_aplicacion
    END
	 ---------------8
	 --Permisos de archivo Eliminar					
if not exists ( select * FROM [gui_funcionalidad] where   nombreComando = @p_nombreComandoPermisoEliminar
 and active = 1 and id_tipoFuncionalidad = @id_funcionalidad and id_funcionalidad = @idFuncionalidadArchivo)
	 ---------------9
 BEGIN
 EXECUTE  [dbo].[ins_gui_funcionalidad]
            @ui,
	     	@p_eid,
			@p_id_usuario_modifico,
			@p_id_usuario_creo,		
			@funcionalidadPermisoEliminar,
			@p_funcionalidad_codigo,
			@p_urlImagen,
			@p_urlFormulario,
			@p_targetUrl,
			@p_url,
			@p_toolTip,
			@p_esMenu,
			@p_nombreControl,
			@p_nombreComandoPermisoEliminar,
			@p_orden,
			@idFuncionalidadArchivo,
			@id_funcionalidad,
			@p_esMvc,
			@p_id_aplicacion
    END
	 ---------------9

	 END
	  --------------5
     END
   	 --------------3 
   END 
   --------------2
END
--------------1
