call spMante_Usuario_Permisos(29, '01','N','N','N',1);call spMante_Usuario_Permisos(29, '0101','N','N','N',1);call spMante_Usuario_Permisos(29, '02','N','N','N',1);call spMante_Usuario_Permisos(29, '0211','N','N','N',1);call spMante_Usuario_Permisos(29, '021101','N','N','N',1);call spMante_Usuario_Permisos(29, '021102','N','N','N',1);

call spMante_Usuario_Permisos(29, '021103','S','S','S',1);

call spMante_Usuario_Permisos(29, '021104','S','S','S',1);call spMante_Usuario_Permisos(29, '021105','S','S','S',1);call spMante_Usuario_Permisos(29, '021106','S','S','S',1);call spMante_Usuario_Permisos(29, '021107','S','S','S',1);

DROP PROCEDURE IF EXISTS spMante_Usuario_Permisos;
CREATE PROCEDURE spMante_Usuario_Permisos(	
	varUsuario  int,
  varMenu     varchar(10),
  varInserta  char(1),
  varModifica char(1),
  varElimina  char(1),
  varUser     int
)
BEGIN
  DECLARE varExiste int;
  
  select count(*) into varExiste
  from _sys_menu_usuario
  where id_menu = varMenu and id_usuario=varUsuario;
  
  if varExiste>0 then
    update _sys_menu_usuario
    set flag_inserta = varInserta, flag_modifica = varModifica, flag_elimina = varElimina, 
        _modificado = NOW(), _id_usuario = varUser
    where id_menu = varMenu and id_usuario=varUsuario;
  else
    insert into _sys_menu_usuario(id_menu, id_usuario, flag_inserta, flag_modifica, flag_elimina, _registrado, _modificado, _id_usuario)
    values (varMenu, varUsuario, varInserta, varModifica, varElimina, NOW(), NOW(), varUser);
  end if;
END;