示例#1
0
 public void CancelarSesion(Minutas obj)
 {
     try
     {
         using (SqlCommand command = new SqlCommand("SPD_SESIONES_STATUS_CANCELAR", cn.Connection))
         {
             command.CommandType = CommandType.StoredProcedure;
             command.Parameters.AddWithValue("@idsesion", obj.IdSesion);
             command.Parameters.AddWithValue("@idusuario", obj.ObjUsuarios.User.IdUser);
             cn.OpenConnection();
             command.ExecuteNonQuery();
         }
     }
     catch (SqlException ex)
     {
         throw new Exception("Error BD no se pudo cancelar la minuta " + ex.Message);
     }
     catch (Exception ex)
     {
         throw new Exception("Error BD no se pudo cancelar la minuta " + ex.Message);
     }
     finally
     {
         cn.CloseConnection();
     }
 }
示例#2
0
    protected void gdvMinutas_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName.Equals("CancelarMinuta"))
        {
            try
            {
                int rowindex = Convert.ToInt32(e.CommandArgument);
                int idsesion = Convert.ToInt32(gdvMinutas.DataKeys[rowindex].Value);

                min = new Minutas()
                {
                    ObjUsuarios = new UsuariosDatos()
                    {
                        User = new Usuarios()
                    }
                };
                min.IdSesion = idsesion;
                min.ObjUsuarios.User.IdUser = Convert.ToInt32(Session["IdUser"]);
                mbl = new MinutasBL();
                mbl.CancelarSesion(min);
                LoadGridMinutas();
            }
            catch (Exception ex)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "bootbox.alert('<div class=\"alert alert-danger\">Proceso interrumpido! " + ex.Message.Replace("'", "") + "</div>');", true);
            }
        }
    }
示例#3
0
        public Minutas GetMinutasbyFolio(Minutas obj)
        {
            Minutas ent = new Minutas()
            {
                ObjTemas = new CatTemas(), ObjUsuarios = new UsuariosDatos()
                {
                    User = new Usuarios()
                }, ObjTipoSesion = new CatTipoSesion(), ObjStatus = new CatStatus()
            };

            try
            {
                using (SqlCommand command = new SqlCommand("SPD_SESIONES_GET", cn.Connection))
                {
                    command.CommandType = CommandType.StoredProcedure;
                    command.Parameters.AddWithValue("@idsesion", obj.IdSesion);
                    command.Parameters.AddWithValue("@iduser", obj.ObjUsuarios.User.IdUser);

                    cn.OpenConnection();
                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        if (reader.Read())
                        {
                            ent.IdSesion                  = (int)reader["idsesion"];
                            ent.Objetivo                  = (string)reader["objetivo"];
                            ent.Descripcion               = (string)reader["descripcion"];
                            ent.Fechafin                  = reader["fechafin"] == DBNull.Value ? null : (DateTime?)(DateTime)reader["fechafin"];
                            ent.FechaConclusion           = reader["fechaconclusion"] == DBNull.Value ? null : (DateTime?)(DateTime)reader["fechaconclusion"];
                            ent.Conclusion                = (string)reader["conclusiones"];
                            ent.Fecharegistro             = (DateTime)reader["fecharegistro"];
                            ent.ObjTemas.idtema           = (int)reader["idtema"];
                            ent.ObjTemas.descripcion      = (string)reader["nomtema"];
                            ent.ObjUsuarios.User.IdUser   = (int)reader["idusuario"];
                            ent.ObjUsuarios.User.Username = (string)reader["username"];
                            ent.ObjUsuarios.NombreUser    = (string)reader["nombreusuario"];
                            ent.ObjTipoSesion.IdTipo      = (int)reader["idtipo"];
                            ent.ObjTipoSesion.TipoSesion  = (string)reader["tiposesion"];
                            ent.ObjTipoSesion.Clave       = (string)reader["clave"];
                            ent.ObjStatus.idstatus        = (int)reader["idstatus"];
                            ent.ObjStatus.nomstatus       = (string)reader["nomstatus"];
                            ent.LabelDias                 = (string)reader["labeldias"];
                            ent.TiempoEntrega             = (string)reader["tiempoentrega"];
                        }
                    }
                }
            }
            catch (SqlException ex)
            {
                throw new Exception("Error BD No se pudo obtener la Minuta" + ex.Message);
            }
            catch (Exception ex)
            {
                throw new Exception("Error code No se pudo obtener la Minuta " + ex.Message);
            }
            finally
            {
                cn.CloseConnection();
            }
            return(ent);
        }
示例#4
0
    protected void CargarDatos(int foliominuta)
    {
        MinutasBL bl  = new MinutasBL();
        Minutas   min = new Minutas()
        {
            ObjUsuarios = new UsuariosDatos()
            {
                User = new Usuarios()
            }
        };

        min.IdSesion = foliominuta;
        min.ObjUsuarios.User.IdUser = Convert.ToInt32(Session["IdUser"]);
        min = bl.GetMinutasbyFolio(min);
        if (min.IdSesion > 0)
        {
            idusuariosesion     = min.ObjUsuarios.User.IdUser;
            lblobjetivos.Text   = HttpUtility.HtmlDecode(min.Objetivo);
            lbldescripcion.Text = HttpUtility.HtmlDecode(min.Descripcion);
            txtfoliominuta.Text = string.Format("{0:D8}", foliominuta);
            txtfoliominuta.Text.Trim();
            txtfechacierre.Text = min.Fechafin.ToString();
            txttiposesion.Text  = min.ObjTipoSesion.TipoSesion;
            LoadUsuariosSesion(foliominuta);
            LoadStatus();
        }
        else
        {
            ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "bootbox.alert('<div class=\" alert alert-warning\">El folio ingresado no es válido</div>')", true);
        }
    }
示例#5
0
 public int InsMinuta(Minutas obj)
 {
     try
     {
         return(dal.InsMinuta(obj));
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
示例#6
0
 public Minutas GetMinutasbyFolio(Minutas obj)
 {
     try
     {
         return(dal.GetMinutasbyFolio(obj));
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
示例#7
0
 public void CancelarSesion(Minutas obj)
 {
     try
     {
         dal.CancelarSesion(obj);
     }
     catch (Exception ex)
     {
         throw new Exception(ex.Message);
     }
 }
示例#8
0
        public int InsMinuta(Minutas obj)
        {
            int idminuta = 0;

            try
            {
                using (SqlCommand command = new SqlCommand("SPD_SESIONES_SET", cn.Connection))
                {
                    command.CommandType = CommandType.StoredProcedure;
                    command.Parameters.AddWithValue("@idtema", obj.ObjTemas.idtema);
                    command.Parameters.AddWithValue("@objetivo", obj.Objetivo);
                    command.Parameters.AddWithValue("@descripcion", obj.Descripcion);
                    command.Parameters.AddWithValue("@fechafin", obj.Fechafin);
                    command.Parameters.AddWithValue("@idusuario", obj.ObjUsuarios.User.IdUser);
                    command.Parameters.AddWithValue("@idtipo", obj.ObjTipoSesion.IdTipo);
                    if (obj.IdSesion > 0)
                    {
                        command.Parameters.AddWithValue("@idsesion", obj.IdSesion);
                    }
                    SqlParameter ParamEstatus = new SqlParameter("@idnew", DbType.Int32);
                    ParamEstatus.Direction = ParameterDirection.ReturnValue;
                    command.Parameters.Add(ParamEstatus);
                    cn.OpenConnection();
                    command.ExecuteNonQuery();
                    idminuta = Convert.ToInt32(command.Parameters["@idnew"].Value);
                }
            }
            catch (SqlException ex)
            {
                throw new Exception("Error BD Insertar la Minuta. " + ex.Message);
            }
            catch (Exception ex)
            {
                throw new Exception("Error Code al Insertar la Minuta. " + ex.Message);
            }
            finally
            {
                cn.CloseConnection();
            }

            return(idminuta);
        }
示例#9
0
    protected void gdvMinutas_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.Pager && (gdvMinutas.DataSource != null))
        {
            //TRAE EL TOTAL DE PAGINAS

            Label _TotalPags = (e.Row.FindControl("lblTotalNumberOfPagesMinutas") as Label);
            _TotalPags.Text = gdvMinutas.PageCount.ToString();

            //LLENA LA LISTA CON EL NUMERO DE PAGINAS
            DropDownList list = (e.Row.FindControl("pageMinutasDropDownList") as DropDownList);
            for (int i = 1; i <= Convert.ToInt32(gdvMinutas.PageCount); i++)
            {
                list.Items.Add(i.ToString());
            }
            list.SelectedValue = Convert.ToString(gdvMinutas.PageIndex + 1);
        }
        else if (e.Row.RowType == DataControlRowType.DataRow && (gdvMinutas.DataSource != null))
        {
            string id = gdvMinutas.DataKeys[e.Row.RowIndex].Value.ToString();
            min = new Minutas()
            {
                ObjUsuarios = new UsuariosDatos()
            };
            min = (e.Row.DataItem as Minutas);
            HyperLink link = (e.Row.FindControl("linkresumen") as HyperLink);
            link.NavigateUrl = GetRouteUrl("VistaSesionApp", new { idsesion = min.IdSesion });

            HyperLink linkseg = (e.Row.FindControl("linkseguimiento") as HyperLink);
            linkseg.NavigateUrl = GetRouteUrl("MinutasSeguimientoApp", new { idsesion = min.IdSesion });

            LinkButton linkdel = (e.Row.FindControl("linkeliminar") as LinkButton);
            if (Convert.ToInt32(Session["IdUser"]) != min.ObjUsuarios.IdUser)
            {
                linkdel.Visible = false;
            }
        }
    }
示例#10
0
    protected void btnGuardarSesion_Click(object sender, EventArgs e)
    {
        try
        {
            Minutas ent = new Minutas()
            {
                ObjTemas = new CatTemas(), ObjUsuarios = new UsuariosDatos()
                {
                    User = new Usuarios()
                }, ObjTipoSesion = new CatTipoSesion()
            };
            MinutasBL bl = new MinutasBL();
            ent.ObjTemas.idtema         = Convert.ToInt32(ddltema.SelectedValue);
            ent.Objetivo                = txtobservaciones.InnerHtml;
            ent.Descripcion             = txtdescripcion.InnerHtml;
            ent.Fechafin                = Convert.ToDateTime(txtfechacierre.Text);
            ent.ObjUsuarios.User.IdUser = Convert.ToInt32(Session["IdUser"].ToString());
            ent.ObjTipoSesion.IdTipo    = Convert.ToInt32(ddltiposesion.SelectedValue);
            ent.IdSesion                = (string.IsNullOrEmpty(hd_idsesion.Value) ? 0 : Convert.ToInt32(hd_idsesion.Value));
            idsesion          = bl.InsMinuta(ent);
            hd_idsesion.Value = idsesion.ToString();

            if (ent.IdSesion > 0)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "bootbox.alert('<div class=\" alert alert-success\">Datos Actualizados con éxito</div>')", true);
            }
            else
            {
                LoadParticipantes();
                ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "bootbox.alert('<div class=\" alert alert-success\">Sesión Guardada. Agregue a los participantes de la sesión</div>')", true);
            }
        }
        catch (Exception ex)
        {
            ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "bootbox.alert('<div class=\"alert alert-danger\">Proceso interrumpido! " + ex.Message.Replace("'", "") + "</div>');", true);
        }
    }
示例#11
0
        public List <Minutas> GetMinutas(MinutasFiltros obj)
        {
            List <Minutas> list = new List <Minutas>();
            Minutas        ent;

            try
            {
                using (SqlCommand command = new SqlCommand("SPD_SESIONES_GET", cn.Connection))
                {
                    command.CommandType = CommandType.StoredProcedure;
                    command.Parameters.AddWithValue("@idtema", string.IsNullOrEmpty(obj.TemasCadena) ? (object)DBNull.Value: obj.TemasCadena);
                    command.Parameters.AddWithValue("@fechaini", obj.FechaIni.HasValue ? obj.FechaIni.Value.Date : (object)DBNull.Value);
                    command.Parameters.AddWithValue("@fechafin", obj.FechaFin.HasValue ? obj.FechaFin.Value.Date : (object)DBNull.Value);
                    command.Parameters.AddWithValue("@idusuarios", string.IsNullOrEmpty(obj.UsuariosCadena)? (object)DBNull.Value:obj.UsuariosCadena);
                    command.Parameters.AddWithValue("@idtipos", string.IsNullOrEmpty(obj.TipoSesionCadena) ? (object)DBNull.Value : obj.TipoSesionCadena);
                    command.Parameters.AddWithValue("@idstatus", string.IsNullOrEmpty(obj.StatusCadena)? (object)DBNull.Value:obj.StatusCadena);
                    command.Parameters.AddWithValue("@tipoentrega", string.IsNullOrEmpty(obj.TiempoEntregaCadena)?(object)DBNull.Value:obj.TiempoEntregaCadena);
                    command.Parameters.AddWithValue("@iduser", obj.IdUser);
                    command.Parameters.AddWithValue("@origen", string.IsNullOrEmpty(obj.Origen) ? (object)DBNull.Value : obj.Origen);

                    cn.OpenConnection();
                    using (SqlDataReader reader = command.ExecuteReader())
                    {
                        while (reader.Read())
                        {
                            ent = new Minutas()
                            {
                                ObjTemas = new CatTemas(), ObjUsuarios = new UsuariosDatos()
                                {
                                    User = new Usuarios()
                                }, ObjTipoSesion = new CatTipoSesion(), ObjStatus = new CatStatus()
                            };
                            ent.IdSesion                  = (int)reader["idsesion"];
                            ent.Objetivo                  = (string)reader["objetivo"];
                            ent.Descripcion               = (string)reader["descripcion"];
                            ent.Fechafin                  = reader["fechafin"] == DBNull.Value ?null:(DateTime?)(DateTime)reader["fechafin"];
                            ent.FechaConclusion           = reader["fechaconclusion"] == DBNull.Value?null: (DateTime?)(DateTime)reader["fechaconclusion"];
                            ent.Conclusion                = (string)reader["conclusiones"];
                            ent.Fecharegistro             = (DateTime)reader["fecharegistro"];
                            ent.ObjTemas.idtema           = (int)reader["idtema"];
                            ent.ObjTemas.descripcion      = (string)reader["nomtema"];
                            ent.ObjUsuarios.User.IdUser   = (int)reader["idusuario"];
                            ent.ObjUsuarios.User.Username = (string)reader["username"];
                            ent.ObjUsuarios.NombreUser    = (string)reader["nombreusuario"];
                            ent.ObjTipoSesion.IdTipo      = (int)reader["idtipo"];
                            ent.ObjTipoSesion.TipoSesion  = (string)reader["tiposesion"];
                            ent.ObjTipoSesion.Clave       = (string)reader["clave"];
                            ent.ObjStatus.idstatus        = (int)reader["idstatus"];
                            ent.ObjStatus.nomstatus       = (string)reader["nomstatus"];
                            ent.LabelDias                 = (string)reader["labeldias"];
                            ent.TiempoEntrega             = (string)reader["tiempoentrega"];
                            ent.Origen = (string)reader["origen"];
                            list.Add(ent);
                        }
                    }
                }
            }
            catch (SqlException ex)
            {
                throw new Exception("Error BD No se pudo obtener la lista de minutas " + ex.Message);
            }
            catch (Exception ex)
            {
                throw new Exception("Error code No se pudo obtener la lista de minutas " + ex.Message);
            }
            finally
            {
                cn.CloseConnection();
            }
            return(list);
        }
示例#12
0
    protected void MailTemplate()
    {
        try
        {
            if (gdvParticipantes.Rows.Count > 0)
            {
                StringBuilder    sb  = new StringBuilder();
                UserControl      ctr = (UserControl)LoadControl("~/Minutas/TemplateMailMinuta.ascx");
                StringWriter     sw  = new StringWriter(sb);
                Html32TextWriter htw = new Html32TextWriter(sw);
                ctr.RenderControl(htw);
                string templete = sb.ToString();
                idsesion = Convert.ToInt32(hd_idsesion.Value);
                MinutasUsuarios mu = new MinutasUsuarios()
                {
                    ObjMinutas = new Minutas(), ObjUsuarios = new UsuariosDatos()
                    {
                        User = new Usuarios()
                    }
                };
                mu.ObjMinutas.IdSesion     = idsesion;
                mu.ObjUsuarios.User.IdUser = Convert.ToInt32(Session["IdUser"]);
                MinutasBL blmu = new MinutasBL();


                MinutasBL bl  = new MinutasBL();
                Minutas   min = new Minutas()
                {
                    ObjUsuarios = new UsuariosDatos()
                    {
                        User = new Usuarios()
                    }
                };
                min.IdSesion = idsesion;
                min.ObjUsuarios.User.IdUser = Convert.ToInt32(Session["IdUser"]);
                min = bl.GetMinutasbyFolio(min);

                templete = templete.Replace("#Foliominuta#", string.Format("{0:D8}", idsesion));
                templete = templete.Replace("#Fechacreacion#", min.Fecharegistro.ToShortDateString());
                templete = templete.Replace("#Usuariocreador#", min.ObjUsuarios.NombreUser);
                templete = templete.Replace("#Tematica#", min.ObjTemas.descripcion);
                templete = templete.Replace("#Fechaentrega#", min.Fechafin.HasValue ? min.Fechafin.Value.ToShortDateString() : "");
                templete = templete.Replace("#Tiposesion#", min.ObjTipoSesion.TipoSesion);

                templete = templete.Replace("#Objetivo#", HttpUtility.HtmlDecode(min.Objetivo));
                templete = templete.Replace("#Descripcion#", HttpUtility.HtmlDecode(min.Descripcion));

                string minutacompleta = "";

                Email   objemail = new Email();
                EmailBL blmail   = new EmailBL();
                objemail.Principal = true;
                objemail.IdMail    = 0;
                objemail.Usermail  = string.Empty;

                objemail        = blmail.GetEmail(objemail);
                objemail.Asunto = "Notificación de nueva Sesión de minuta. Folio " + string.Format("{0:D8}", idsesion);


                foreach (MinutasUsuarios item in blmu.GetUsuariosSesion(mu))
                {
                    MinutasUsuarios obj = new MinutasUsuarios()
                    {
                        ObjMinutas = new Minutas(), ObjUsuarios = new UsuariosDatos()
                        {
                            User = new Usuarios()
                        }
                    };
                    obj.ObjMinutas.IdSesion     = idsesion;
                    obj.ObjUsuarios.User.IdUser = item.IdUserMinuta;
                    MinutasBL mbl = new MinutasBL();

                    StringBuilder    sb1  = new StringBuilder();
                    UserControl      ctr1 = (UserControl)LoadControl("~/Minutas/TemplateMailMinuta.ascx");
                    StringWriter     sw1  = new StringWriter(sb1);
                    Html32TextWriter htw1 = new Html32TextWriter(sw1);
                    ctr1.RenderControl(htw1);
                    string templeteaux = sb1.ToString();

                    templeteaux = templeteaux.Replace("#Usuario#", item.ObjUsuarios.NombreCompleto);
                    templeteaux = templeteaux.Replace("#Foliominuta#", string.Format("{0:D8}", idsesion));
                    templeteaux = templeteaux.Replace("#Fechacreacion#", min.Fecharegistro.ToShortDateString());
                    templeteaux = templeteaux.Replace("#Usuariocreador#", min.ObjUsuarios.NombreUser);
                    templeteaux = templeteaux.Replace("#Tematica#", min.ObjTemas.descripcion);
                    templeteaux = templeteaux.Replace("#Fechaentrega#", min.Fechafin.HasValue ? min.Fechafin.Value.ToShortDateString() : "");
                    templeteaux = templeteaux.Replace("#Tiposesion#", min.ObjTipoSesion.TipoSesion);

                    templeteaux = templeteaux.Replace("#Objetivo#", HttpUtility.HtmlDecode(min.Objetivo));
                    templeteaux = templeteaux.Replace("#Descripcion#", HttpUtility.HtmlDecode(min.Descripcion));

                    StringBuilder                  sbltvUsuariosMinuta = new StringBuilder();
                    System.IO.StringWriter         stringWrite         = new System.IO.StringWriter(sbltvUsuariosMinuta);
                    System.Web.UI.Html32TextWriter htmlWrite           = new Html32TextWriter(stringWrite);

                    ltvUsuariosSesion.DataSource = mbl.GetUsuariosSesion(obj);
                    ltvUsuariosSesion.DataBind();
                    ltvUsuariosSesion.RenderControl(htmlWrite);

                    minutacompleta += sbltvUsuariosMinuta.ToString();
                    templeteaux     = templeteaux.Replace("#Acuerdos#", sbltvUsuariosMinuta.ToString());

                    generales gral = new generales();
                    if (gral.IsValidEmail(item.ObjUsuarios.User.Username))
                    {
                        objemail.Body    = templeteaux;
                        objemail.MailTo  = item.ObjUsuarios.User.Username;
                        objemail.MailCC  = string.Empty;
                        objemail.MailBcc = string.Empty;
                        generales.enviarMail(objemail);
                    }
                    stringWrite.Dispose();
                    htmlWrite.Dispose();

                    sw1.Dispose();
                    htw1.Dispose();
                }

                ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "$('.modalfinsesion').modal('show')", true);
            }
            else
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "bootbox.alert('<div class=\" alert alert-warning\">No existe participantes para ésta sesión. Para enviar la notificación es necesario incluir a los participantes.</div>')", true);
            }
        }
        catch (Exception ex)
        {
            ScriptManager.RegisterStartupScript(this, this.GetType(), "script", "bootbox.alert('<div class=\"alert alert-danger\">Se produjo un error al enviar el mail! " + ex.Message.Replace("'", "") + "</div>');", true);
        }
    }
示例#13
0
    protected void Page_Load(object sender, EventArgs e)
    {
        if (RouteData.Values["idsesion"] != null)
        {
            idsesion = Convert.ToInt32(RouteData.Values["idsesion"]);
        }
        if (!ValidarSesion.sesionactiva())
        {
            Response.Redirect("~/Default.aspx");
        }

        StringBuilder    sb  = new StringBuilder();
        UserControl      ctr = (UserControl)LoadControl("~/Minutas/TemplateDetalleSesion.ascx");
        StringWriter     sw  = new StringWriter(sb);
        Html32TextWriter htw = new Html32TextWriter(sw);

        ctr.RenderControl(htw);
        string templete = sb.ToString();

        templete = templete.Replace("#FOLIOSESION#", string.Format("{0,22:D8}", idsesion));

        MinutasBL bl  = new MinutasBL();
        Minutas   min = new Minutas()
        {
            ObjUsuarios = new UsuariosDatos()
            {
                User = new Usuarios()
            }
        };

        min.IdSesion = idsesion;
        min.ObjUsuarios.User.IdUser = Convert.ToInt32(Session["IdUser"]);
        min = bl.GetMinutasbyFolio(min);

        templete = templete.Replace("#STATUSMINUTA#", min.ObjStatus.nomstatus);
        templete = templete.Replace("#FECHAREGISTRO#", min.Fecharegistro.ToShortDateString());
        templete = templete.Replace("#FECHAPROGRAMADA#", min.Fechafin.HasValue ? min.Fechafin.Value.ToShortDateString() : "");
        templete = templete.Replace("#FECHACONC#", min.FechaConclusion.HasValue ? min.FechaConclusion.Value.ToShortDateString():"");
        templete = templete.Replace("#TIPOSESION#", min.ObjTipoSesion.TipoSesion);
        templete = templete.Replace("#COACHING#", min.ObjUsuarios.NombreCompleto);
        templete = templete.Replace("#DETALLEENTREGA#", min.LabelDias);

        templete = templete.Replace("#OBJETIVO#", HttpUtility.HtmlDecode(min.Objetivo));
        templete = templete.Replace("#DESCRIPCION#", HttpUtility.HtmlDecode(min.Descripcion));


        //usuarios sesion
        /*AGREGAMOS EL DETALLE DE PAGO A PROVEEDORES*/
        StringBuilder sbltvUsuariosMinuta = new StringBuilder();

        System.IO.StringWriter         stringWrite = new System.IO.StringWriter(sbltvUsuariosMinuta);
        System.Web.UI.Html32TextWriter htmlWrite   = new Html32TextWriter(stringWrite);

        MinutasUsuarios mu = new MinutasUsuarios()
        {
            ObjMinutas = new Minutas(), ObjUsuarios = new UsuariosDatos()
            {
                User = new Usuarios()
            }
        };

        mu.ObjMinutas.IdSesion     = idsesion;
        mu.ObjUsuarios.User.IdUser = Convert.ToInt32(Session["IdUser"]);
        MinutasBL blmu = new MinutasBL();

        ltvUsuariosSesion.DataSource = blmu.GetUsuariosSesion(mu);
        ltvUsuariosSesion.DataBind();
        ltvUsuariosSesion.RenderControl(htmlWrite);
        templete = templete.Replace("#LISTAUSUARIOS#", sbltvUsuariosMinuta.ToString());

        stringWrite.Dispose();
        htmlWrite.Dispose();

        ltvUsuariosSesion.Visible = false;
        htmlMinutas.InnerHtml     = templete;
    }