Option Explicit On Option Strict On Imports System.Data Imports Extensiones Imports System.IO Imports MKB.TimePicker Partial Class OI_SoporteADS Inherits ClsPaginas #Region "Propiedades" Private Property CveEvento As Integer Get Return ViewState("CveEvento").ToString.ToEntero End Get Set(value As Integer) ViewState("CveEvento") = value End Set End Property Private Property CveEventoPadre As Integer Get Return ViewState("CveEventoPadre").ToString.ToEntero End Get Set(value As Integer) ViewState("CveEventoPadre") = value End Set End Property Private Property CveUsuarioPadre As Integer Get Return ViewState("CveUsuarioPadre").ToString.ToEntero End Get Set(value As Integer) ViewState("CveUsuarioPadre") = value End Set End Property Private Property OrdenEstatus As Integer Get Return ViewState("OrdenEstatus").ToString.ToEntero End Get Set(value As Integer) ViewState("OrdenEstatus") = value End Set End Property Private Property CveEventoEstatusSiguiente As Integer Get If ViewState("OrdenEstatus") Is Nothing Then Return -1 Else Return ViewState("CveEventoEstatusSiguiente").ToString.ToEntero End If End Get Set(value As Integer) ViewState("CveEventoEstatusSiguiente") = value End Set End Property Private Property EventoEstatusSiguiente As String Get Return ViewState("EventoEstatusSiguiente").ToString End Get Set(value As String) ViewState("EventoEstatusSiguiente") = value End Set End Property Private Property CveEventoEstatusAnterior As Integer Get Return ViewState("CveEventoEstatusAnterior").ToString.ToEntero End Get Set(value As Integer) ViewState("CveEventoEstatusAnterior") = value End Set End Property Private Property EventoEstatusAnterior As String Get Return ViewState("EventoEstatusAnterior").ToString End Get Set(value As String) ViewState("EventoEstatusAnterior") = value End Set End Property Private Property CveTipoEvento As Integer Get If ViewState("CveTipoEvento") Is Nothing Then Return -1 Else Return ViewState("CveTipoEvento").ToString.ToEntero End If End Get Set(value As Integer) ViewState("CveTipoEvento") = value End Set End Property Private Property CveTipoEventoAnterior As Integer Get If ViewState("CveTipoEventoAnterior") Is Nothing Then Return -1 Else Return ViewState("CveTipoEventoAnterior").ToString.ToEntero End If End Get Set(value As Integer) ViewState("CveTipoEventoAnterior") = value End Set End Property Private Property Nuevo As Boolean Get Return CType(ViewState("Nuevo"), Boolean) End Get Set(value As Boolean) ViewState("Nuevo") = value End Set End Property Private Property CveSeguimiento As Integer Get Return ViewState("CveSeguimiento").ToString.ToEntero End Get Set(value As Integer) ViewState("CveSeguimiento") = value End Set End Property Private ReadOnly Property ArchConsecutivo As String Get Return ViewState("ArchConsecutivo").ToString End Get End Property Private Property DTComentarios As DataTable Get Return CType(ViewState("DTComentarios"), DataTable) End Get Set(value As DataTable) ViewState("DTComentarios") = value End Set End Property Private Property ArchivoReenvio As String Get Return ViewState("ArchivoReenvio").ToString End Get Set(value As String) ViewState("ArchivoReenvio") = value End Set End Property Private Property ArchivoActual As String Get Return ViewState("ArchivoActual").ToString End Get Set(value As String) ViewState("ArchivoActual") = value End Set End Property #End Region #Region "Propiedades Correo" Private Property EnviarCorreoTerminada() As Boolean Get Return CBool(ViewState("EnviarCorreoTerminada")) End Get Set(ByVal value As Boolean) ViewState("EnviarCorreoTerminada") = value End Set End Property Private Property EnviarCorreoRegresada() As Boolean Get Return CBool(ViewState("EnviarCorreoRegresada")) End Get Set(ByVal value As Boolean) ViewState("EnviarCorreoRegresada") = value End Set End Property Private Property UsuarioDe() As String Get Return ViewState("UsuarioDe").ToString() End Get Set(ByVal value As String) ViewState("UsuarioDe") = value End Set End Property Private Property TipoCorreo As Integer Get Return ViewState("TipoCorreo").ToString.ToEntero End Get Set(ByVal value As Integer) ViewState("TipoCorreo") = value End Set End Property Private Property CveUsuarioDe() As Integer Get Return CType(ViewState("CveUsuarioDe").ToString(), Integer) End Get Set(ByVal value As Integer) ViewState("CveUsuarioDe") = value End Set End Property Private Property CorreoDe() As String Get Return ViewState("CorreoDe").ToString() End Get Set(ByVal value As String) ViewState("CorreoDe") = value End Set End Property Private Property UsuarioPara() As String Get Return ViewState("UsuarioPara").ToString() End Get Set(ByVal value As String) ViewState("UsuarioPara") = value End Set End Property Private Property CveUsuarioPara() As Integer Get Return CType(ViewState("CveUsuarioPara").ToString(), Integer) End Get Set(ByVal value As Integer) ViewState("CveUsuarioPara") = value End Set End Property Private Property CveUsuarioParaNuevo() As Integer Get If ViewState("CveUsuarioParaNuevo") Is Nothing Then Return -1 Else Return CType(ViewState("CveUsuarioParaNuevo").ToString(), Integer) End If End Get Set(ByVal value As Integer) ViewState("CveUsuarioParaNuevo") = value End Set End Property Private Property CveEmpresaOI As Integer Get If ViewState("CveEmpresaOI") Is Nothing Then Return -1 Else Return DirectCast(ViewState("CveEmpresaOI"), Integer) End If End Get Set(ByVal value As Integer) ViewState("CveEmpresaOI") = value End Set End Property Private Property CorreoPara() As String Get Return ViewState("CorreoPara").ToString() End Get Set(ByVal value As String) ViewState("CorreoPara") = value End Set End Property Private Property UsuariosCCP() As List(Of String) Get Return CType(ViewState("UsuarioCCP"), List(Of String)) End Get Set(ByVal value As List(Of String)) ViewState("UsuarioCCP") = value End Set End Property Private Property CorreosCCP() As List(Of String) Get Return CType(ViewState("CorreosCCP"), List(Of String)) End Get Set(ByVal value As List(Of String)) ViewState("CorreosCCP") = value End Set End Property Private Property Titulo() As String Get Return ViewState("Titulo").ToString() End Get Set(ByVal value As String) ViewState("Titulo") = value End Set End Property Private Property Fecha() As String Get Return ViewState("Fecha").ToString() End Get Set(ByVal value As String) ViewState("Fecha") = value End Set End Property Private Property TipoNotificacion As Integer Get Return ViewState("TipoNotificacion").ToString.ToEntero End Get Set(value As Integer) ViewState("TipoNotificacion") = value End Set End Property Private Property Prioridad() As Integer Get Return CType(ViewState("Prioridad"), Integer) End Get Set(ByVal value As Integer) ViewState("Prioridad") = value End Set End Property Private ReadOnly Property Attchment() As String Get Return ViewState("Attachment").ToString() End Get End Property Private Property Descripcion() As String Get Return ViewState("Descripcion").ToString() End Get Set(ByVal value As String) ViewState("Descripcion") = value End Set End Property Private ReadOnly Property EsBitacora() As Boolean Get Return CBool(ViewState("EsBitacora")) End Get End Property Private Property Referencia() As String Get Return ViewState("REFERENCIA").ToString() End Get Set(value As String) ViewState("REFERENCIA") = value End Set End Property Private ReadOnly Property CveUsuarioRealizo() As Integer Get Return ViewState("CveUsuarioRealizo").ToString().ToEntero() End Get End Property Private Property TipoEvento As String Get Return ViewState("TipoEvento").ToString() End Get Set(value As String) ViewState("TipoEvento") = value End Set End Property Private ReadOnly Property CvePendientePadre As Integer Get Return ViewState("CvePendientePadre").ToString.ToEntero End Get End Property Private Property ReferenciaDescripcion As String Get Return ViewState("ReferenciaDescripcion").ToString() End Get Set(value As String) ViewState("ReferenciaDescripcion") = value End Set End Property Private ReadOnly Property URL As String Get Return ViewState("URL").ToString() End Get End Property Private ReadOnly Property Variables As String Get Return ViewState("Variables").ToString() End Get End Property Private Property DTDatos As DataTable Get If ViewState("DTDatos") Is Nothing Then Return New DataTable Else Return DirectCast(ViewState("DTDatos"), DataTable) End If End Get Set(value As DataTable) ViewState("DTDatos") = value End Set End Property Private Property DTBitacora As DataTable Get If ViewState("DTBitacora") Is Nothing Then Return New DataTable Else Return DirectCast(ViewState("DTBitacora"), DataTable) End If End Get Set(value As DataTable) ViewState("DTBitacora") = value End Set End Property Private Property Asunto As String Get If ViewState("Asunto") Is Nothing Then Return "-1" Else Return ViewState("Asunto").ToString End If End Get Set(value As String) ViewState("Asunto") = value End Set End Property Private Property EmpresaSop As String Get If ViewState("EmrpesaSop") Is Nothing Then Return "-1" Else Return ViewState("EmrpesaSop").ToString End If End Get Set(value As String) ViewState("EmrpesaSop") = value End Set End Property Private Property Telefono As String Get If ViewState("Telefono") Is Nothing Then Return "-1" Else Return ViewState("Telefono").ToString End If End Get Set(value As String) ViewState("Telefono") = value End Set End Property Private Property Extension As String Get If ViewState("Extension") Is Nothing Then Return "" Else Return ViewState("Extension").ToString End If End Get Set(value As String) ViewState("Extension") = value End Set End Property Private Property Persona As String Get If ViewState("Persona") Is Nothing Then Return "" Else Return ViewState("Persona").ToString End If End Get Set(value As String) ViewState("Persona") = value End Set End Property Private Property Modulo As String Get If ViewState("Modulo") Is Nothing Then Return "" Else Return ViewState("Modulo").ToString End If End Get Set(value As String) ViewState("Modulo") = value End Set End Property Private Property Email As String Get If ViewState("Emial") Is Nothing Then Return "" Else Return ViewState("Emial").ToString End If End Get Set(value As String) ViewState("Emial") = value End Set End Property Private Property Datos As String Get If ViewState("Datos") Is Nothing Then Return "" Else Return ViewState("Datos").ToString End If End Get Set(value As String) ViewState("Datos") = value End Set End Property #End Region 'Private Property UsuarioPara() As String = String.Empty 'Private Property UsuariosCCP() As String = String.Empty 'Private Property CorreoPara() As String = String.Empty 'Private Property CorreosCCP() As String = String.Empty Private Property StrPrioridad() As String = String.Empty Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load If Not IsPostBack Then If Request("CveEmpresa") IsNot Nothing And UsuarioActual.CveRol = 1 Then CveEmpresaOI = Request("CveEmpresa").ToEntero Else CveEmpresaOI = UsuarioActual.CveEmpresa End If Dim calendarios As New AjaxControlToolkit.CalendarExtender ViewState("FName") = "" CargaCombosSoporte() CveEvento = -1 CveEventoPadre = -1 ArchivoReenvio = "-1" TxtFechaInicio.Text = DateTime.Now.ToShortDateString TxtFechaFin.Text = DateTime.Now.ToShortDateString Dim am_pm As MKB.TimePicker.TimeSelector.AmPmSpec Dim hora As DateTime = Now.AddMinutes(15) If hora.ToString("tt") = "AM" Then am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.AM Else am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.PM TxtHoraFin.SetTime(hora.Hour, hora.Minute, am_pm) Nuevo = True UsuarioDe = "" CveUsuarioDe = -1 CveUsuarioPara = -1 CveTipoEvento = 1 UsuariosCCP = New List(Of String) UsuarioPara = "" CargaRevision() CargaAgendaTipo() CargaEstatusEventos(-1) CveUsuarioPadre = -1 CargaUsuarios() 'ChkSoporte.Visible = False 'ChkSoporte.Checked = False 'MostrarOcultarControlesSoportes() 'If Request("FI") IsNot Nothing AndAlso Request("FI").ToEntero > 0 Then ' TxtFechaInicio.Text = Request("FI").ToString.ToDate.ToString("dd-MM-YYYY") 'End If 'Alert("CveEvento" & Request("CveTipoEvento").ToEntero & " FechaIncicio= " & Request("FI").ToString.ToDate.ToString("dd-MM-yyyy") & "FF= " & Request("FF").ToString.ToDate.ToString("dd-MM-yyyy"), TipoMensaje.MsgInformacion, "") 'Alert("CveTipoEvento = " & Request("CveTipoEvento").ToEntero & "Fecha Inicio = " & Request("FI").ToString & " Fecha Fin = " & Request("FF").ToString & "", TipoMensaje.MsgInformacion, "") 'If Request("CveTipoEvento") IsNot Nothing AndAlso Request("CveTipoEvento").ToEntero > 0 Then 'CveTipoEvento = Request("CveTipoEvento").ToEntero Tarea() ' End If If Request("CveEvento") IsNot Nothing AndAlso IsNumeric(Request("CveEvento")) AndAlso Request("CveEvento").ToEntero > 0 Then CveEvento = Request("CveEvento").ToEntero 'btnGuardar.Visible = False CargaDatos() A1.Visible = False TxtOBs.Attributes.Add("onclick", "MostrarOpcionesObs();") TxtOBs.Attributes.Add("onfocus", "idConFocus='" + TxtOBs.ClientID + "'") TxtOBs.Attributes.Add("onmouseover", "this.style.cursor='pointer';") TxtOBs.Attributes.Add("onmouseout", "this.style.cursor='default';") ' TxtOBs.Attributes.Add("onblur", "$get('divObs').focus();") 'TxtOBs.Attributes.Add("onblur", "setTimeout(OcultarOpcionesObs, 500);")} ChkPasarEstatusSiguiente.Attributes.Add("onfocus", "idConFocus='" + ChkPasarEstatusSiguiente.ClientID + "'") ChkPasarEstatusSiguiente.Attributes.Add("onblur", "setTimeout(OcultarOpcionesObs, 100);") ChkPasarEstatusSiguiente.Attributes.Add("onclick", "idConFocus='" + ChkPasarEstatusSiguiente.ClientID + "'") ChkRegresaraEstatusAnterior.Attributes.Add("onfocus", "MostrarOpcionesObs();idConFocus='" + ChkRegresaraEstatusAnterior.ClientID + "'") ChkRegresaraEstatusAnterior.Attributes.Add("onclick", "idConFocus='" + ChkRegresaraEstatusAnterior.ClientID + "'") ChkPasarEstatusCancelado.Attributes.Add("onclick", "idConFocus='" + ChkRegresaraEstatusAnterior.ClientID + "'") ChkRegresaraEstatusAnterior.Attributes.Add("onchange", "chkCambioEstatus('ChkRegresaraEstatusAnterior');") ChkPasarEstatusSiguiente.Attributes.Add("onchange", "chkCambioEstatus('ChkPasarEstatusSiguiente');") ChkPasarEstatusCancelado.Attributes.Add("onchange", "chkCambioEstatus('ChkPasarEstatusCancelado');") 'Configuración de Modalidad Update btnGuardar.Text = "Guardar Cambios" 'deshabilitar los campos que no se pueden editar 'LtlTitulo.Text = "Consulta del Evento:" ' EditarUusarios() Else CargaFolios() DdlEventoEstatus.Enabled = False lbCambiaEstatus.Visible = False HabilitaTipoEvento(CveTipoEvento) ' LblEstatusEvento.Text = DdlEventoEstatus.SelectedItem.Text If Request("R") IsNot Nothing AndAlso IsNumeric(Request("R")) AndAlso Request("R").ToEntero > 0 AndAlso Request("U") IsNot Nothing AndAlso IsNumeric(Request("U")) AndAlso Request("U").ToEntero >= 0 Then CveEventoPadre = Request("R").ToEntero ' CveUsuarioPadre = Request("U").ToEntero CargaReenvio() End If 'GetUsuarios() End If End If End Sub Private Sub CargaReenvio() Dim ObjEventos As New ClsOIEventos Dim Msg As New StringBuilder If ObjEventos.GetEvento(CveEventoPadre, UsuarioActual.CveUsuario, CveEmpresaOI) Then TxtAsunto.Text = ObjEventos.Asunto TxtDescripcion.Text = ObjEventos.Descripcion DdlPrioridad.SelectedValue = ObjEventos.CvePrioridad.ToString UsuarioDe = ObjEventos.UsuarioDe CorreoDe = ObjEventos.CorreoDe 'CveUsuarioPara = ObjEventos.CveUsuarioPara UsuarioPara = ObjEventos.UsuarioPara CorreoPara = ObjEventos.CorreoPara Descripcion = ObjEventos.Descripcion Prioridad = ObjEventos.CvePrioridad If ObjEventos.CveRevision > 0 Then DdlRevision.SelectedValue = ObjEventos.CveRevision.ToString 'Mostrar Archivo Adjunto TxtArchivo.Enabled = False A1.Visible = False If Not IsDBNull(ObjEventos.Archivo) AndAlso ObjEventos.Archivo <> "" AndAlso ObjEventos.Archivo <> "-1" Then A2.HRef = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=OI&CveEmpresa={0}&Archivo={1}", If(ObjEventos.RolIngreso = 1037, 70, ObjEventos.CveEmpresa), ObjEventos.Archivo))) : A2.Visible = True Else A1.Visible = True ArchivoReenvio = ObjEventos.Archivo TxtFechaInicio.Text = ObjEventos.FechaInicio.ToShortDateString If ObjEventos.FechaInicio.Year > 1900 Then TxtFechaInicio.Text = ObjEventos.FechaInicio.ToString Dim am_pm As MKB.TimePicker.TimeSelector.AmPmSpec If ObjEventos.FechaInicio.ToString("tt") = "AM" Then am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.AM Else am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.PM TxtHoraInicio.SetTime(ObjEventos.FechaInicio.Hour, ObjEventos.FechaInicio.Minute, am_pm) End If TxtFechaFin.Text = ObjEventos.FechaFin.ToShortDateString If ObjEventos.FechaFin.Year > 1900 Then TxtFechaFin.Text = ObjEventos.FechaFin.ToString Dim am_pm As MKB.TimePicker.TimeSelector.AmPmSpec If ObjEventos.FechaFin.ToString("tt") = "AM" Then am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.AM Else am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.PM TxtHoraFin.SetTime(ObjEventos.FechaFin.Hour, ObjEventos.FechaFin.Minute, am_pm) End If End If ObjEventos.Dispose() End Sub Private Sub CargaUsuarios() DdlUsuarios.DataSource = GlobalDTUsuarios.FiltraParametros("CveEmpresa = 2 ") DdlUsuarios.DataBind() DdlUsuarios.Items.Insert(0, New ListItem("Seleccione uno", "-1")) End Sub Private Sub CargaFolios() RowFolio.Visible = True Dim ObjFolios As New ClsGralFolios() If ObjFolios.GetFolios("OIS", 2) Then Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros("Estado = 'Activo'") 'Verificar primero en la sucursal del usuario If DT.FiltraParametros("CveSubproyecto = " + UsuarioActual.CveSubProyecto.ToString).Rows.Count > 0 Then ' ViewState("CveFolio") = DT.FiltraParametros("CveSucursal = 2 ").Rows(0)("CveFolio").ToString.ToEntero 'ViewState("FolioActual") = DT.FiltraParametros("CveSucursal = 2 ").Rows(0)("FActual").ToString lblFolio.Text = DT.Rows(0)("FActual").ToString ElseIf DT.Rows.Count > 0 Then 'ViewState("CveFolio") = DT.Rows(0)("CveFolio").ToString.ToEntero 'ViewState("FolioActual") = DT.Rows(0)("FActual").ToString lblFolio.Text = DT.Rows(0)("FActual").ToString Else Alert("No tiene registrados Folios en esta sucursal.", TipoMensaje.MsgAdvertencia) End If DT.Dispose() End If ObjFolios.Dispose() End Sub #Region "C A R G A - T I P O - E V E N T O" Private Sub Tarea() '1 CveTipoEvento = 1 'TrAgendaTipo.Visible = True TrAsunto.Visible = True TrDescripcion.Visible = True TrPrioridad.Visible = True TrFechaInicio.Visible = True TrFechaFin.Visible = True TrArchivo.Visible = True TdUsuarios.Visible = True TrRevision.Visible = True End Sub Private Sub Agenda() '2 CveTipoEvento = 2 TrAgendaTipo.Visible = True TrAsunto.Visible = True TrDescripcion.Visible = True TrPrioridad.Visible = True TrFechaInicio.Visible = True TrFechaFin.Visible = True End Sub Private Sub Proyecto() '3 CveTipoEvento = 3 TrAsunto.Visible = True TrDescripcion.Visible = True TrPrioridad.Visible = True TdUsuarios.Visible = True TrFechaInicio.Visible = True TrFechaFin.Visible = True 'TrRevision.Visible = True TrArchivo.Visible = True End Sub Private Sub ControlVersiones() '4 CveTipoEvento = 4 TrAsunto.Visible = True TrDescripcion.Visible = True TrArchivo.Visible = True End Sub Private Sub Minuta() '5 CveTipoEvento = 5 TrAsunto.Visible = True TrPrioridad.Visible = True TrDescripcion.Visible = True TdUsuarios.Visible = True TrFechaInicio.Visible = True TrArchivo.Visible = True End Sub Private Sub Bitacora() '6 CveTipoEvento = 6 TrDescripcion.Visible = True TrFechaInicio.Visible = True TrFechaFin.Visible = True End Sub #End Region Private Sub CargaDatos() ' rfvDdlEmpresa.Enabled = False ' rfvcDdlEmpresa.Enabled = False rfvcDdlUsuario.Enabled = False rfvDdlUsuario.Enabled = False rfvTxtPersona.Enabled = False rfvcTxtPersona.Enabled = False If CveEvento <= 0 Then Exit Sub Dim ObjEventos As New ClsOIEventos With ObjEventos 'If ObjEventos.GetEventos(CveEvento, -1, "-1", "-1", -1, -1, -1, -1, -1, -1, "-1", -1, -1, -1, -1, -1, -1, -1, -1, UsuarioActual.CveUsuario, -1, CveEmpresaOI, "01/01/1900".ToDateTime, "01/01/2030".ToDateTime, "01/01/2030".ToDateTime) Then Dim CveEmpresaRol As Integer = If(UsuarioActual.CveRol = 1, -1, CveEmpresaOI) If ObjEventos.GetEvento(CveEvento, UsuarioActual.CveUsuario, CveEmpresaRol) Then DTDatos = ObjEventos.DtResultados If ObjEventos.DtResultados.Rows.Count > 0 Then LinkImp.Visible = True Nuevo = False Asunto = .Asunto EmpresaSop = .EmpresaSop Telefono = .Telefono Extension = .Extension Fecha = .FechaIng.ToShortDateString Persona = .Persona Modulo = .Modulo Email = .Email Datos = .Datos TxtDatos.Text = .Datos CveTipoEvento = .CveTipoEvento LblTitulo.Text = "Soporte" Titulo = .Asunto lblFolio.Text = .Folio.ToString TxtAsunto.Text = .Asunto TxtDescripcion.Text = .Descripcion DdlPrioridad.SelectedValue = .CvePrioridad.ToString UsuarioDe = .UsuarioDe CveUsuarioDe = .CveUsuarioDe CorreoDe = .CorreoDe CveUsuarioPara = .CveUsuarioPara UsuarioPara = .UsuarioPara CorreoPara = .CorreoPara Descripcion = .Descripcion Prioridad = .CvePrioridad CveSeguimiento = .CveSeguimiento TxtFechaInicio.Text = .FechaInicio.ToShortDateString TxtOrden.Text = .Orden.ToString If .CveEmpresaSop > 0 Then DdlEmpresaSop.SelectedValueExist(.CveEmpresaSop) DdlUsuarioSop.DataSource = GlobalDTUsuarios().FiltraParametros($"CveEmpresa = { DdlEmpresaSop.SelectedValue.ToEntero }") DdlUsuarioSop.DataBind() DdlUsuarioSop.Items.Insert(0, New ListItem("Seleccione uno", "-1")) rfvDdlUsuario.Enabled = True DdlUsuarioSop.SelectedValueExist(.CveUsuarioSop) rfvTxtPersona.Enabled = False rfvcTxtPersona.Enabled = False TxtPersona.Enabled = False Else DdlUsuarioSop.DataSource = Nothing DdlUsuarioSop.DataBind() rfvDdlUsuario.Enabled = True rfvTxtPersona.Enabled = True TxtPersona.Enabled = True End If If .CveUsuarioSop > 0 Then DdlUsuarioSop.SelectedValueExist(.CveUsuarioSop) rfvDdlUsuario.Enabled = True rfvcDdlUsuario.Enabled = True rfvTxtPersona.Enabled = False rfvcTxtPersona.Enabled = False Else rfvcDdlUsuario.Enabled = False rfvDdlUsuario.Enabled = False rfvTxtPersona.Enabled = False rfvcTxtPersona.Enabled = False End If TxtPersona.Text = .Persona TxtEmail.Text = .Email DdlModulo.SelectedValueExist(.CveModulo) TxtTelefono.Text = .Telefono TxtExtension.Text = .Extension DdlClasificacion.SelectedValueExist(.Clasificacion) ChkDesarrollo.Checked = If(.Desarrollo = 1, True, False) TxtFechaFin.Text = .FechaFin.ToShortDateString If ObjEventos.FechaFin.Year > 1900 Then TxtFechaFin.Text = ObjEventos.FechaFin.ToShortDateString Dim am_pm As MKB.TimePicker.TimeSelector.AmPmSpec If ObjEventos.FechaFin.ToString("tt") = "AM" Then am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.AM Else am_pm = MKB.TimePicker.TimeSelector.AmPmSpec.PM TxtHoraFin.SetTime(ObjEventos.FechaFin.Hour, ObjEventos.FechaFin.Minute, am_pm) End If TxtFechaRealTermino.Text = .FechaRealTermino.ToShortDateString TxtTipoReferencia.Text = .TipoReferencia TxtReferencia.Text = .Referencia 'Mostrar Archivo Adjunto If Not IsDBNull(ObjEventos.Archivo) AndAlso ObjEventos.Archivo <> "" AndAlso ObjEventos.Archivo <> "-1" Then A2.HRef = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=OI&Archivo=\Empresas\{0}\OI\{1}", If(ObjEventos.RolIngreso = 1037, 70, ObjEventos.CveEmpresa), ObjEventos.Archivo))) : A2.Visible = True Else A1.Visible = True ' If Not IsDBNull(.Archivo) AndAlso .Archivo <> "" AndAlso .Archivo <> "-1" Then A2.HRef = String.Format("\Empresas\{0}\OI\{1}", If(.RolIngreso = 1037, 70, .CveEmpresa), .Archivo) : A2.Visible = True Else A1.Visible = True ArchivoActual = ObjEventos.Archivo If .CveRevision > 0 Then If DdlRevision.Items.FindByValue(.CveRevision.ToString) Is Nothing Then DdlRevision.Items.Insert(1, New ListItem(.Revision.ToString, .CveRevision.ToString)) End If DdlRevision.SelectedValue = .CveRevision.ToString End If If .CveAgendaTipo > 0 Then DdlAgendaTipo.SelectedValue = .CveAgendaTipo.ToString DdlPrioridad.SelectedValue = .CvePrioridad.ToString 'Dejar en la lista de Estatus solo el Anterior y el Siguiente CargaEstatusEventos(.CveEventoEstatus) DdlEventoEstatus.SelectedValue = .CveEventoEstatus.ToString 'LblEstatusEvento.Text = String.Format("Estatus: {0}", .EventoEstatus) uppEstatus.Update() TrEstatus.Visible = True If .CveOC > 0 Then TrReferenciaLiga.Visible = True HplReferencia.Text = "Requisición" HplReferencia.NavigateUrl = String.Format("/OC/OC.aspx?OC={0}", .CveOC) End If ViewState("OrdenEstatus") = GlobalDTOIEstatusEventos().FiltraParametros(String.Format("CveEventoEstatus = {0}", .CveEventoEstatus)).Rows(0)("Orden") 'Sacar el estatus siguiente Dim EstatusAdelante As Integer = GlobalDTOIEstatusEventos().FiltraParametros(String.Format("Orden > {0} AND CveEventoEstatus <> 5", OrdenEstatus), "Orden").Rows.Count EnviarCorreoTerminada = If(EstatusAdelante = 2, True, False) EnviarCorreoRegresada = If(EstatusAdelante = 1, True, False) If EstatusAdelante > 0 Then Dim drEstatusSiguiente As DataRow = GlobalDTOIEstatusEventos().FiltraParametros(String.Format("Orden > {0}", OrdenEstatus), "Orden").Rows(0) ViewState("CveEventoEstatusSiguiente") = drEstatusSiguiente("CveEventoEstatus") ViewState("EventoEstatusSiguiente") = drEstatusSiguiente("EventoEstatus") ChkPasarEstatusSiguiente.Text = "Pasar a " + EventoEstatusSiguiente ChkPasarEstatusSiguiente.Visible = True If (EstatusAdelante = 1 And CveUsuarioDe = UsuarioActual.CveUsuario) Or (EstatusAdelante > 1 And CveUsuarioPara = UsuarioActual.CveUsuario) Then ChkPasarEstatusSiguiente.Visible = True Else ChkPasarEstatusSiguiente.Visible = False Else ChkPasarEstatusSiguiente.Visible = False End If 'Sacar el estatus anterior If GlobalDTOIEstatusEventos().FiltraParametros(String.Format("Orden < {0}", OrdenEstatus), "Orden Desc").Rows.Count > 0 Then Dim drEstatusSiguiente As DataRow = GlobalDTOIEstatusEventos().FiltraParametros(String.Format("Orden < {0}", OrdenEstatus), "Orden Desc").Rows(0) ViewState("CveEventoEstatusAnterior") = drEstatusSiguiente("CveEventoEstatus") ViewState("EventoEstatusAnterior") = drEstatusSiguiente("EventoEstatus") 'ChkRegresaraEstatusAnterior.Text = "Regresar a " + EventoEstatusAnterior ChkRegresaraEstatusAnterior.Visible = True If (EstatusAdelante = 1 And CveUsuarioDe = UsuarioActual.CveUsuario) Or (EstatusAdelante > 1 And CveUsuarioPara = UsuarioActual.CveUsuario) Then ChkRegresaraEstatusAnterior.Visible = True Else ChkRegresaraEstatusAnterior.Visible = False Else ChkRegresaraEstatusAnterior.Visible = False End If ChkRegresaraEstatusAnterior.Checked = False ChkPasarEstatusSiguiente.Checked = False 'Si es el Usuario que la ingreso la podra cancelar, pero no podra usar el Combo del estatus ChkPasarEstatusCancelado.Visible = If(.CveUsuarioIng = UsuarioActual.CveUsuario, True, False) TxtOBs.Enabled = If(.CveEventoEstatus = 5, False, True) 'cargo los ususarios If .GetEventosUsuario(CveEvento, CveEmpresaOI) Then ' divUsuarios.Visible = True DdlUsuarios.SelectedValueExist(CveUsuarioPara) 'For Each Dr As DataRow In .DtResultados.FiltraParametros("CveEvento > 0").Rows ' If UsuariosCCP Is Nothing Then UsuariosCCP = New List(Of String) ' UsuariosCCP.Add(Dr("Nombre").ToString) ' If CorreosCCP Is Nothing Then CorreosCCP = New List(Of String) ' CorreosCCP.Add(Dr("Correo").ToString) 'Next End If ' TdObservaciones.Visible = True PnlEncObs.Visible = True UPPObs.Update() ' SI es el Usuario que la ingreso la podra cancelar, pero no podra usar el Combo del estatus 'O SI, los checkbox pasar a siguiente o pasar a anterior estan desabilitados es un usuario al que no le pertenece la tarea 'O SI, ya esta cancelada If (.CveUsuarioIng = UsuarioActual.CveUsuario And .CveUsuarioIng <> .CveUsuarioPara) Or (ChkPasarEstatusSiguiente.Visible = False And ChkRegresaraEstatusAnterior.Visible = False) Or (.CveEventoEstatus = 5) Then DdlEventoEstatus.Enabled = False lbCambiaEstatus.Visible = False Else DdlEventoEstatus.Enabled = True lbCambiaEstatus.Visible = True End If If UsuarioActual.CveRol = 1 And CveTipoEvento = 9 And .CveEventoEstatus <> 5 Then DdlEventoEstatus.Enabled = True lbCambiaEstatus.Visible = True End If lblFechaObs.Text = Now.ToString("dd/MM/yyyy") lblUsuarioObs.Text = UsuarioActual.Nombre If .GetEventosComentarios(CveEvento) Then DTComentarios = ObjEventos.DtResultados GvObservaciones.DataSource = .DtResultados DTBitacora = .DtResultados GvObservaciones.DataBind() UPPDatosObs.Update() Else DTBitacora = Nothing End If 'LinkReenviar.DescriptionUrl = String.Format("EventoDetalle.aspx?CveTipoEvento={0}&R={1}&U={2}", CveTipoEvento, CveEvento, CveUsuarioDe) Else rfvDdlUsuario.Enabled = False rfvDdlEmpresa.Enabled = False rfvTxtPersona.Enabled = True TxtPersona.Enabled = True LinkImp.Visible = False End If If Not UsuarioDe = UsuarioActual.Nombre Then TxtAsunto.Enabled = False TxtDescripcion.Enabled = False DdlPrioridad.Enabled = False TxtFechaInicio.Enabled = False TxtFechaFin.Enabled = False TxtHoraInicio.ReadOnly = False TxtHoraFin.Enabled = False ImgCalendario.Visible = False ImgCalFechaFin.Visible = False DdlRevision.Enabled = False TxtArchivo.Enabled = False A1.Visible = False End If HabilitaTipoEvento(.CveTipoEvento) 'SI ES TAREA PARA MI NO PUEDO ADJUNTAR ARCHIVO If UsuarioPara = UsuarioActual.Nombre And Not UsuarioDe = UsuarioActual.Nombre Then A1.Visible = False End If 'SI ES TAREA ECHA POR MI Y ESTATUS <> "PENDIENTE" NO LA PUEDO REENVIAR 'If UsuarioDe = UsuarioActual.Nombre AndAlso DdlEventoEstatus.SelectedValue <> "1" Then ' LinkReenviar.Visible = False 'Else ' If CveTipoEvento = 1 Then ' LinkReenviar.Visible = True ' End If 'End If 'SI ES TAREA ECHA POR MI Y ESTATUS = (TERMINADA O CANCELADA O REVISADA) PUEDO CAMBIAR ESTATUS DESDE DDL If UsuarioDe = UsuarioActual.Nombre AndAlso (DdlEventoEstatus.SelectedValue = "3" Or DdlEventoEstatus.SelectedValue = "5" Or DdlEventoEstatus.SelectedValue = "4") Then DdlEventoEstatus.Enabled = True lbCambiaEstatus.Visible = True ChkPasarEstatusSiguiente.Visible = True ChkRegresaraEstatusAnterior.Visible = True If DdlEventoEstatus.SelectedValue = "4" Then DdlEventoEstatus.Items.Remove(DdlEventoEstatus.Items.FindByValue("5")) ChkPasarEstatusSiguiente.Visible = False End If End If ImgAddRevision.Visible = False Else rfvDdlUsuario.Enabled = False rfvDdlEmpresa.Enabled = False rfvTxtPersona.Enabled = True TxtPersona.Enabled = True DTDatos = Nothing End If End With ObjEventos.Dispose() End Sub Private Sub HabilitaTipoEvento(pCveTipoEvento As Integer) CveTipoEvento = pCveTipoEvento 'Tarea = 1 Agenda = 2 Proyecto = 3 ControlVersiones = 4 Minuta = 5 Bitacora = 6 Select Case pCveTipoEvento Case 1 Tarea() LblTitulo.Text = "Tarea" Case 2 Agenda() LblTitulo.Text = "Agenda" Case 3 Proyecto() LblTitulo.Text = "Proyecto" Case 4 ControlVersiones() LblTitulo.Text = "Control de Versiones" TrRevision.Visible = False TrArchivo.Visible = False 'btnRevision.Text = "Regresar a Revisión" ' btnTerminada.Text = "Por Aprobar" 'btnRevisada.Text = "Revisada" Case 5 Minuta() LblTitulo.Text = "Minuta" Case 6 Bitacora() LblTitulo.Text = "Bitácora" End Select End Sub 'Private Sub GetUsuarios() ' Dim DT As DataTable = GlobalDTUsuarios.FiltraParametros(String.Format("CveEmpresa = {0} ", 2), "Rol ASC") 'Solo se cargan usuarios ADSISTemas ' GVUsuarios.DataSource = AgregaGrupos(DT) ' DT.Dispose() ' GVUsuarios.DataBind() 'End Sub Private Function AgregaGrupos(ByRef DT As DataTable) As DataTable If Not DT Is Nothing AndAlso DT.Rows.Count > 0 Then DT.Columns.Add(New DataColumn("Grupo", GetType(String))) Dim i As Integer = 0 Dim Gpo As String = String.Empty Dim dbRow As DataRow While i < DT.Rows.Count dbRow = DT.NewRow() If i = 0 Then Gpo = DT.Rows(0)("Rol").ToString() dbRow("Rol") = DT.Rows(i)("Rol") dbRow("Grupo") = "S" DT.Rows.InsertAt(dbRow, i) Gpo = DT.Rows(i)("Rol").ToString() Else If Gpo <> DT.Rows(i)("Rol").ToString() Then dbRow("Rol") = DT.Rows(i)("Rol") dbRow("Grupo") = "S" DT.Rows.InsertAt(dbRow, i) End If Gpo = DT.Rows(i)("Rol").ToString() End If i += 1 End While End If Return DT End Function 'Protected Sub gvUsuarios_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles GVUsuarios.RowDataBound ' If e.Row.RowType = DataControlRowType.DataRow Then ' If (Not IsDBNull(DataBinder.Eval(e.Row.DataItem, "Grupo"))) AndAlso CStr(DataBinder.Eval(e.Row.DataItem, "Grupo")) = "S" Then ' e.Row.CssClass = "SubTotales" ' e.Row.Attributes.Add("style", "background:#CCCCCC !important") ' e.Row.Cells(0).Visible = False ' e.Row.Cells(1).Visible = False ' e.Row.Cells(2).Visible = False ' e.Row.Cells(3).ColumnSpan = 3 ' Else ' e.Row.Cells(3).Visible = False ' End If ' If Not Nuevo AndAlso e.Row.DBCampo("Empresa").ToString <> "" AndAlso e.Row.DBCampo("CveUsuario") = CveUsuarioPara.ToString Then ' e.Row.Cells(0).Enabled = False ' e.Row.FCCheckBox("ChkPara").Checked = True ' End If ' If Nuevo = True AndAlso e.Row.DBCampo("CveUsuario") = UsuarioActual.CveUsuario.ToString Then ' e.Row.Cells(1).Enabled = False ' e.Row.FCCheckBox("ChkCCP").Checked = True ' End If ' If Nuevo = True AndAlso e.Row.DBCampo("CveUsuario").ToEntero = CveUsuarioPadre Then ' e.Row.Cells(1).Enabled = False ' e.Row.FCCheckBox("ChkCCP").Checked = True ' End If ' If CveEvento > 0 And divSeleccionUsuarios.Visible = False Then ' 'viene de BD ' e.Row.FCCheckBox("ChkPara").Enabled = False ' e.Row.FCCheckBox("ChkCCP").Enabled = False ' 'si se cumple esta condición que decir que fue selecccionado ' If e.Row.DBCampo("CveEvento") <> "" Then ' e.Row.FCCheckBox("ChkCCP").Checked = True ' ElseIf Nuevo = False And e.Row.DBCampo("CveUsuario").ToEntero <> CveUsuarioPara Then ' e.Row.Visible = False ' End If ' End If ' End If 'End Sub 'Protected Sub gvUsuariosVista_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs) Handles gvUsuariosVista.RowDataBound ' If e.Row.RowType = DataControlRowType.DataRow Then ' If CveEvento > 0 Then ' 'viene de BD ' 'si se cumple esta condición que decir que fue selecccionado ' If e.Row.DBCampo("CveEvento").ToEntero = 0 Then ' e.Row.Visible = False ' End If ' End If ' End If 'End Sub Protected Sub btnGuardar_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnGuardar.Click Dim Asunto As String = TxtAsunto.Text.Trim Descripcion = TxtDescripcion.Text.Trim 'Dim CveUsuarioPara As Integer = CveUsuarioPara.ToString.ToEntero 'Dim FechaInicio As DateTime = TxtFechaInicio.Text.ToDateTime Dim FechaInicio As String = "" Dim FechaFin As String = "" If TxtFechaInicio.Text <> String.Empty Then FechaInicio = String.Format("{0} {1}:{2} {3}", TxtFechaInicio.Text, TxtHoraInicio.Hour, TxtHoraInicio.Minute, TxtHoraInicio.AmPm) If TxtFechaFin.Text <> String.Empty Then FechaFin = String.Format("{0} {1}:{2} {3}", TxtFechaFin.Text, TxtHoraFin.Hour, TxtHoraFin.Minute, TxtHoraFin.AmPm) Dim Attachment As String = String.Empty Dim CveUsuarioCCP As Integer = -1 'Dim CveUsuarioPara As Integer = -1 Dim CveUsuarioIng As Integer = UsuarioActual.CveUsuario 'Dim FechaFin As DateTime = TxtFechaFin.Text.ToDateTime 'Dim Orden As Integer = TxtOrden.Text.ToString.ToEntero Dim CveRevision As Integer = DdlRevision.SelectedValue.ToString.ToEntero Dim Archivo As String = TxtArchivo.Text Dim CveEmpresa As Integer = CveEmpresaOI '----------------------------------------- 'Dim CveTipoEvento As Integer Dim CveAgendaTipo As Integer = DdlAgendaTipo.SelectedValue.ToEntero Dim Prioridad As Integer Dim CveUsuarioDe As Integer = UsuarioActual.CveUsuario 'Dim CveEventoEstatus As Integer ' Dim FechaRealTermino As Integer ' Dim CveEventoPadre As Integer ' Dim Orden As Integer ' Dim Acuerdos As Integer ' Dim CveEventoComentario As Integer ' Dim Geom As Integer Dim CveActivoFijo As Integer = -1 Dim CveIE As Integer = -1 Dim CveProspecto As Integer = -1 Dim CveCliente As Integer = -1 Dim CveOS As Integer = -1 Dim CveOC As Integer = -1 Dim CvePersonal As Integer = -1 Dim CveProveedor As Integer = -1 Dim CveUsuario As Integer = -1 Dim CveUsuarioSop As Integer = DdlUsuarioSop.SelectedValue.ToEntero Dim Persona As String = If(TxtPersona.Text.Trim.Length = 0, "-1", TxtPersona.Text.Trim) Dim Telefono As String = If(TxtTelefono.Text.Trim.Length = 0, "-1", TxtTelefono.Text.Trim) Dim Extencion As String = If(TxtExtension.Text.Trim.Length = 0, "-1", TxtExtension.Text.Trim) Dim Clasificacion As Integer = DdlClasificacion.SelectedValue.ToEntero Dim Desarrollo As Integer = If(ChkDesarrollo.Checked, 1, 0) Dim Email As String = If(TxtEmail.Text.Trim.Length = 0, "-1", TxtEmail.Text.Trim) Dim Datos As String = If(TxtDatos.Text.Trim.Length = 0, "-1", TxtDatos.Text.Trim) Dim CveEmpresaSop = DdlEmpresaSop.SelectedValue.ToEntero Dim CveModulo = DdlModulo.SelectedValue.ToEntero CveUsuarioPara = DdlUsuarios.SelectedValue.ToEntero '------------------------------------------ 'Recorrro Grid para obtener el usuario PARA 'For Each RowPara As GridViewRow In GVUsuarios.Rows ' If RowPara.FCCheckBox("ChkPara").Checked Then ' CveUsuarioPara = GVUsuarios.DataKeys(RowPara.RowIndex).Values("CveUsuario").ToString.ToEntero ' UsuarioPara = GVUsuarios.DataKeys(RowPara.RowIndex).Values("Nombre").ToString ' Exit For ' End If 'Next If Not CveUsuarioPara > 0 Then Alert("Debe Seleccionar a quien se le asigna la tarea", TipoMensaje.MsgAdvertencia) Exit Sub End If Dim ObjEventos As New ClsOIEventos() Dim HuboError As Boolean = False ObjEventos.IniciaTransacSQL() Titulo = TxtAsunto.Text.Trim() UsuarioDe = UsuarioActual.Nombre Prioridad = DdlPrioridad.SelectedValue.ToEntero CveRevision = DdlRevision.SelectedValue.ToEntero Fecha = Now.ToLongDateString 'CveUsuarioPara = DdlUsuarioPara.SelectedValue.ToEntero 'UsuarioPara = DdlUsuarioPara.SelectedItem.Text Dim dru As DataRow = GlobalDTUsuarios(CveUsuarioPara).FiltroPrimero("") If dru IsNot Nothing Then CorreoPara = dru("Correo").ToString Dim RutaGuardar = "" RutaGuardar = String.Format("{0}OI\", UsuarioActual.Empresa.Ruta) Dim RutaArchivo = "" Dim EsNuevo = False If CveEvento = -1 Then 'Dim RutaGuardar As String = String.Format("{0}Empresas\{1}\OI\", GlobalDTParametros(SisParametros.DirectorioSitio).Cadena1, CveEmpresaOI) 'Dim RutaArchivo As String = String.Format("{0}Empresas\{1}\OI\Temp\{2}", GlobalDTParametros(SisParametros.DirectorioSitio).Cadena1, CveEmpresaOI, Session("Eventos")) EsNuevo = True 'CUANDO ES REENVIO If CveEventoPadre > 0 Then If A2.HRef <> "" Then RutaArchivo = String.Format("{0}{1}", Request.PhysicalApplicationPath, A2.HRef.Substring(1)) If File.Exists(RutaArchivo) Then Archivo = Path.GetExtension(ArchivoReenvio) End If If UsuarioActual.CveRol = 1037 Then RutaGuardar = String.Format("{0}Empresas\70\OI\", Request.PhysicalApplicationPath) RutaGuardar.DirectoryExistsCreate End If Else RutaArchivo = String.Format("{0}OI\Temp\{1}", UsuarioActual.Empresa.Ruta, ViewState("FName").ToString) If Session("Eventos") IsNot Nothing AndAlso File.Exists(RutaArchivo) Then If Not Directory.Exists(RutaGuardar) Then Directory.CreateDirectory(RutaGuardar) Archivo = Path.GetExtension(Session("Eventos").ToString) End If End If 'Agregar Evento OI Soporte If ObjEventos.AddEventoSoporte(Asunto, Descripcion, Prioridad, CveUsuarioDe, CveUsuarioPara, FechaInicio.ToDateTime, FechaFin.ToDateTime, CveEventoPadre, TxtOrden.Text.ToDouble, CveRevision, Archivo, CveActivoFijo, CveIE, CveProspecto, CveCliente, CveOS, CveOC, CvePersonal, CveProveedor, CveUsuarioIng, CveUsuario, 2, CveUsuarioSop, Persona, Telefono, Extencion, Clasificacion, Desarrollo, CveEmpresaSop, CveModulo, Email, Datos) Then CveEvento = ObjEventos.CveEvento Alert("La Nueva Tarea se guardó correctamente.", TipoMensaje.MsgInformacion, "document.location.href=""/OI/RepSoporteADS.aspx"";") Else HuboError = True End If If HuboError = False And CveEvento > 0 Then If Archivo <> "" Then If CveEventoPadre > 0 Then File.Copy(RutaArchivo, String.Format("{0}OI{1}{2}", RutaGuardar, CveEvento, Archivo)) Else File.Move(RutaArchivo, String.Format("{0}OI{1}{2}", RutaGuardar, CveEvento, Path.GetExtension(Archivo))) Session("Eventos") = "" End If End If TipoNotificacion = 1 'For Each RowCCP As GridViewRow In GVUsuarios.Rows ' If HuboError = False And RowCCP.FCCheckBox("ChkCCP").Checked Then ' CveUsuarioPara = GVUsuarios.DataKeys(RowCCP.RowIndex).Values("CveUsuario").ToString.ToEntero ' If ObjEventos.AddEventoUsuario(CveEvento, CveUsuarioPara) Then ' 'Genero las claves, nombres y correos aquíen se le enviará correo ' CveUsuarioCCP = RowCCP.DataKey("CveUsuario").ToString().ToEntero() ' If CveUsuarioCCP <> UsuarioActual.CveUsuario Then ' If UsuariosCCP Is Nothing Then UsuariosCCP = New List(Of String) ' UsuariosCCP.Add(RowCCP.DataKey("Nombre").ToString) ' If CorreosCCP Is Nothing Then CorreosCCP = New List(Of String) ' CorreosCCP.Add(RowCCP.DataKey("Correo").ToString) ' End If ' Else ' HuboError = True ' Exit For ' End If ' End If 'Next If HuboError = False Then Dim Cadena As String = String.Format("location.href='/OI/EventoDetalle.aspx?CveEvento={0}'", CveEvento) Select Case CveTipoEvento Case 4 : Cadena = "location.href='/OI/RepDocumentos.aspx'" Exit Select Case 9 : Cadena = "location.href='/OI/RepSoporteADS.aspx'" End Select 'Alert("El Nuevo Evento se guardó correctamente.", TipoMensaje.MsgInformacion, Cadena) End If End If Else RutaArchivo = String.Format("{0}OI\Temp\{1}", UsuarioActual.Empresa.Ruta, Session("Eventos")) If CveUsuarioParaNuevo > 0 Then CveUsuarioPara = CveUsuarioParaNuevo End If If Session("Eventos") IsNot Nothing AndAlso File.Exists(RutaArchivo) Then If Not Directory.Exists(RutaGuardar) Then Directory.CreateDirectory(RutaGuardar) Archivo = Path.GetExtension(Session("Eventos").ToString) End If If ObjEventos.UpdateEvento(Asunto, Descripcion, Prioridad, -1, CveUsuarioPara, FechaInicio.ToDateTime, FechaFin.ToDateTime, CveRevision, Archivo, CveEvento, Orden:=TxtOrden.Text.ToDouble, CveUsuarioSop:=CveUsuarioSop, Persona:=Persona, Telefono:=Telefono, Extension:=Extension, Clasificacion:=Clasificacion, Desarrollo:=Desarrollo, CveEmpresaSop:=CveEmpresaSop, CveModulo:=CveModulo, Email:=Email, Datos:=Datos) Then If CveUsuarioPara = CveUsuarioParaNuevo Then If ObjEventos.RemoveEventoUsuario(CveEvento) Then If Not ObjEventos.AddEventoUsuario(CveEvento, CveUsuarioPara) Then HuboError = True Else CveUsuarioParaNuevo = 0 End If Else HuboError = True End If End If Else HuboError = True End If If HuboError = False Then If Archivo <> "" Then 'ELIMINA ARCHIVO If ArchivoActual <> "" Then If File.Exists(String.Format("{0}{1}", RutaGuardar, ArchivoActual)) Then File.Delete(String.Format("{0}{1}", RutaGuardar, ArchivoActual)) End If End If If CveEventoPadre > 0 Then File.Copy(RutaArchivo, String.Format("{0}OI{1}{2}", RutaGuardar, CveEvento, Archivo)) Else File.Move(RutaArchivo, String.Format("{0}OI{1}{2}", RutaGuardar, CveEvento, Path.GetExtension(Archivo))) Session("Eventos") = "" End If End If End If End If If HuboError = False Then ObjEventos.Commit() 'EnviarCorreoNueva(True) If Not EsNuevo Then Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion) End If Else ObjEventos.RollBack() Alert("Ocurrió un error al guardar los cambios. Por favor vuelva a intentar", TipoMensaje.MsgError) End If ObjEventos.Dispose() CargaDatos() ' EditarUusarios() End Sub Private Sub CargaRevision() DdlRevision.DataSource = GlobalDTOIRevision(CveEmpresaOI).FiltraParametros(String.Format("CveUsuario = {0}", UsuarioActual.CveUsuario)) DdlRevision.DataBind() DdlRevision.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub Private Sub CargaAgendaTipo() DdlAgendaTipo.DataSource = GlobalDTOIAgendaTipo DdlAgendaTipo.DataBind() End Sub Private Sub CargaEstatusEventos(CveEventoEstatus As Integer) Dim Dt As DataTable = GlobalDTOIEstatusEventos.FiltraParametros("CveEventoEstatus = 0") If CveEventoEstatus = -1 Then Dt = GlobalDTOIEstatusEventos Else Dim Orden As Integer Dim Row As DataRow = GlobalDTOIEstatusEventos.FiltroPrimero(String.Format("CveEventoEstatus = {0}", CveEventoEstatus)) Dim RowA As DataRow = Dt.NewRow RowA("CveEventoEstatus") = Row("CveEventoEstatus") RowA("EventoEstatus") = Row("EventoEstatus") RowA("Orden") = Row("Orden") Dt.Rows.Add(RowA) Orden = Row("Orden").ToString.ToEntero Row = GlobalDTOIEstatusEventos.FiltroPrimero(String.Format("Orden < {0}", Orden)) If Not Row Is Nothing Then RowA = Dt.NewRow RowA("CveEventoEstatus") = Row("CveEventoEstatus") RowA("EventoEstatus") = Row("EventoEstatus") RowA("Orden") = Row("Orden") Dt.Rows.Add(RowA) End If Row = GlobalDTOIEstatusEventos.FiltroPrimero(String.Format("Orden > {0}", Orden)) If Not Row Is Nothing Then RowA = Dt.NewRow RowA("CveEventoEstatus") = Row("CveEventoEstatus") RowA("EventoEstatus") = Row("EventoEstatus") RowA("Orden") = Row("Orden") Dt.Rows.Add(RowA) End If End If DdlEventoEstatus.DataSource = Dt.FiltraParametros("", "Orden") DdlEventoEstatus.DataBind() End Sub Protected Sub BtnAddObs_Click(sender As Object, e As EventArgs) Handles BtnAddObs.Click Dim OI As New ClsOIEventos OI.IniciaTransacSQL() Dim RutaGuardar As String = String.Format("{0}OI\Comentarios\", UsuarioActual.Empresa.Ruta) Dim RutaArchivo As String = String.Format("{0}OI\Temp\{1}", UsuarioActual.Empresa.Ruta, Session("Eventos2")) Dim tCveSeguimiento As Integer Dim Archivo As String = "" Dim TieneError = False If TxtOBs.Text.Trim = "" AndAlso Not File.Exists(RutaArchivo) Then Alert("Indique una Observación o Adjunte un Archivo", TipoMensaje.MsgAdvertencia) Exit Sub End If If Session("Eventos2") IsNot Nothing AndAlso File.Exists(RutaArchivo) Then If Not Directory.Exists(RutaGuardar) Then Directory.CreateDirectory(RutaGuardar) Archivo = Path.GetExtension(Session("Eventos2").ToString) End If tCveSeguimiento = OI.AddEventoComentario(CveEvento, TxtOBs.Text, Archivo, UsuarioActual.CveUsuario) If tCveSeguimiento > 0 Then If Archivo <> "" Then If File.Exists(RutaGuardar & Archivo) Then File.Delete(RutaGuardar & Archivo) File.Move(RutaArchivo, RutaGuardar & "OI" & tCveSeguimiento & Path.GetExtension(Archivo)) Session("Eventos2") = "" End If If ChkRegresaraEstatusAnterior.Checked Then CveEventoEstatusAnterior = 1 If Not OI.UpdateEstatusEvento(CveEventoEstatusAnterior, tCveSeguimiento, CveEvento, UsuarioActual.CveUsuario) Then TieneError = True End If End If If ChkPasarEstatusSiguiente.Checked Then If Not OI.UpdateEstatusEvento(CveEventoEstatusSiguiente, tCveSeguimiento, CveEvento, UsuarioActual.CveUsuario) Then TieneError = True End If End If If ChkPasarEstatusCancelado.Checked Then If Not OI.UpdateEstatusEvento(5, tCveSeguimiento, CveEvento, UsuarioActual.CveUsuario) Then TieneError = True End If End If 'If ChkPasarEstatusSiguiente.Checked And CveUsuarioDe = UsuarioActual.CveUsuario Then ' If Not OI.UpdateEstatusEvento(3, CveSeguimiento, CveEvento, UsuarioActual.CveUsuario) Then ' OI.RollBack() ' Else ' 'hago una copia del archivo del comentario ' 'File.Copy(RutaArchivo, RutaGuardar & tCveSeguimiento & Path.GetExtension(Archivo)) ' End If 'End If Fecha = Now.ToLongDateString Alert("La observación se guardó correctamente.", TipoMensaje.MsgInformacion) TxtOBs.Text = "" 'registrascript la imagen DTComentarios = OI.DtResultados 'GvObservaciones.DataSource = DTComentarios.FiltraParametros("", "FechaIng Desc") 'GvObservaciones.DataBind() 'UPPObs.Update() 'UPPDatosObs.Update() Else TieneError = True End If If Not TieneError Then OI.Commit() OI.Dispose() 'Enviar correo 'If (EnviarCorreoTerminada = True And ChkPasarEstatusSiguiente.Checked = True) Or (EnviarCorreoRegresada = True And ChkRegresaraEstatusAnterior.Checked = True) Then ' EnviarCorreoCambioEstatus(False) 'End If CargaDatos() Else OI.RollBack() OI.Dispose() End If End Sub Protected Sub GvObservaciones_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvObservaciones.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.DBCampo("Archivo") <> "" Then 'ANTERIOR 20 FEBRERO 'e.Row.FCHyperLink("HplA").NavigateUrl = String.Format("\Empresas\{0}\OI\Comentarios\OI{1}", e.Row.DBCampo("CveEmpresa"), e.Row.DBCampo("Archivo")) e.Row.FCHyperLink("HplA").NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=OI&Archivo=\Empresas\{0}\OI\Comentarios\OI{1}", e.Row.DBCampo("CveEmpresa"), e.Row.DBCampo("Archivo")))) End If End If End Sub Protected Sub lbCambiaEstatus_Click(sender As Object, e As System.EventArgs) Handles lbCambiaEstatus.Click Dim objOI As New ClsOIEventos If objOI.UpdateEstatusEvento(DdlEventoEstatus.SelectedValue.ToEntero, -1, CveEvento, UsuarioActual.CveUsuario) Then CargaEstatusEventos(DdlEventoEstatus.SelectedValue.ToEntero) ' If DdlEventoEstatus.SelectedValue.ToEntero = 3 Or DdlEventoEstatus.SelectedValue.ToEntero = 1 Then EnviarCorreoCambioEstatus(False) CargaDatos() Alert("Se cambio el Estatus", TipoMensaje.MsgInformacion) End If objOI.Dispose() End Sub Protected Sub BtnAgregarRevision_Click(sender As Object, e As EventArgs) Dim ObjEventos As New ClsOIEventos If ObjEventos.AddRevisionesEventos(TxtDescripcionRevision.Text.Trim, UsuarioActual.CveUsuario, CveEmpresaOI) Then Alert("Revisión agregada con éxito.", TipoMensaje.MsgInformacion) RegistraScript("$get('DivRevision').style.display='none';") TxtDescripcionRevision.Text = "" GlobalDTOIRevision(-1) = ObjEventos.DtResultados CargaRevision() UpRevision.Update() Else Alert("Ocurrió un error al agregar la revisión. Por favor vuelva a intentar.", TipoMensaje.MsgError) End If ObjEventos.Dispose() End Sub Protected Sub LinkReenviar_Click(sender As Object, e As ImageClickEventArgs) Response.Redirect(String.Format("EventoDetalle.aspx?CveTipoEvento={0}&R={1}&U={2}", CveTipoEvento, CveEvento, CveUsuarioDe)) End Sub '#Region " ENVIAR CORREO " ' Private Sub MandarMailsX(ByVal ObjTipo As Object) ' Dim Tipo As Integer = ObjTipo.ToString().ToEntero() ' If Prioridad = 1 Then ' StrPrioridad = "Baja" ' ElseIf Prioridad = 2 Then ' StrPrioridad = "Media" ' ElseIf Prioridad = 3 Then ' StrPrioridad = "Alta" ' Else ' StrPrioridad = "No definida" ' End If ' Dim OI As New ClsOIEventos ' Dim DT As DataTable = Nothing ' If OI.GetEventosUsuario(CveEvento, CveEmpresaOI) Then ' DT = OI.DtResultados.FiltraParametros("CveEvento > 0") ' End If ' OI.Dispose() ' ' Dim Mail As New ClsSisMail() ' If Nuevo Then ' 'Mail.Mandacorreo(UsuarioActual.Empresa, CorreoPara, ": Te asignó una tarea " & UsuarioActual.Nombre & " en SIG.", GeneraContenido(CveEvento, Titulo, UsuarioDe, UsuarioPara, UsuariosCCP.ToString, Fecha, StrPrioridad, Descripcion, "", Tipo).ToString) ' 'Manda correo CCP. ' 'If CorreosCCP.Length >= 1 Then CorreosCCP = CorreosCCP.Substring(0, CorreosCCP.Length - 1) ' If CorreosCCP IsNot Nothing AndAlso CorreosCCP.Count > 1 Then ' Dim ArrCCP As String() = CorreosCCP.ToArray ' If ArrCCP.Length > 0 Then ' 'Dim SB As StringBuilder = GeneraContenido(CveEvento, Titulo, UsuarioActual.Nombre, UsuarioPara, UsuariosCCP, Now.ToString(), StrPrioridad, Descripcion, "", 1) ' For i As Integer = 0 To ArrCCP.Length - 1 ' If ArrCCP(i) <> "" Then ' 'Mail.Mandacorreo(UsuarioActual.Empresa, , ArrCCP(i), " " & UsuarioActual.Nombre & " le asignó una tarea a " & UsuarioPara & " en SIG.", SB.ToString) ' End If ' Next ' End If ' End If ' Else ' If DT.Rows.Count > 0 Then ' Dim Str As String = "" ' Select Case Tipo ' Case 1 : Str = "El usuario: " & UsuarioActual.Nombre & " registró una tarea: " & Titulo ' Case 2 : Str = "El usuario: " & UsuarioActual.Nombre & " agregó una observación en la tarea: " & Titulo ' Case 3 : Str = "El usuario: " & UsuarioActual.Nombre & " concluyó la tarea: " & Titulo ' Case 4 : Str = "El usuario: " & UsuarioActual.Nombre & "regresó a estatus pendiente la tarea: " & Titulo ' Case 5 : Str = "El usuario: " & UsuarioActual.Nombre & " revisó la tarea: " & Titulo ' End Select ' 'If UsuarioActual.CveUsuario <> CveUsuarioDe Then Mail.Mandacorreo(UsuarioActual.Empresa.SendMail, UsuarioActual.Empresa.SendMailPassword, CorreoDe, Str, GeneraContenido(CveEvento, Titulo, UsuarioDe, UsuarioPara, UsuariosCCP.ToString, Fecha, StrPrioridad, Descripcion, "", Tipo).ToString) ' 'If UsuarioActual.CveUsuario <> CveUsuarioPara Then Mail.Mandacorreo(UsuarioActual.Empresa.SendMail, UsuarioActual.Empresa.SendMailPassword, CorreoPara, Str, GeneraContenido(CveEvento, Titulo, UsuarioDe, UsuarioPara, UsuariosCCP.ToString, Fecha, StrPrioridad, Descripcion, "", Tipo).ToString) ' For i As Integer = 0 To DT.Rows.Count - 1 ' If Not DT.Rows(i)("CveUsuario").ToString.ToEntero.Contiene(UsuarioActual.CveUsuario, CveUsuarioDe, CveUsuarioPara) Then ' ' Mail.Mandacorreo(UsuarioActual.Empresa.SendMail, UsuarioActual.Empresa.SendMailPassword, DT.Rows(i)("Correo").ToString(), Str, GeneraContenido(CveEvento, Titulo, UsuarioDe, UsuarioPara, UsuariosCCP, Fecha, StrPrioridad, Descripcion, "", Tipo).ToString) ' End If ' Next ' End If ' End If ' End Sub ' Protected Sub EnviarCorreoNueva(IncluirCCP As Boolean) ' Dim Body As StringBuilder ' Try ' TipoCorreo = 1 ' Body = GeneraContenido(CveEvento) ' ''String.Join(";", CorreosCCP.Distinct().ToArray) ' ViewState("Para") = CorreoPara ' ViewState("ArrayCC") = If(IncluirCCP = True And Not CorreosCCP Is Nothing, String.Join(";", CorreosCCP.Distinct().ToArray), "") ' 'ViewState("ArrayCC") = CorreosCCP.Distinct().ToArray ' ViewState("Asunto") = String.Format("Te asignó una tarea {0} en SIG.", UsuarioActual.Nombre) ' ViewState("Body") = Body ' Dim Hilo As New System.Threading.Thread(AddressOf MandaCorreo) ' Hilo.Start() ' Catch ex As Exception ' OnError("Ocurrió error al mandar MAIL", ex) ' End Try ' End Sub ' Protected Sub EnviarCorreoCambioEstatus(IncluirCCP As Boolean) ' Dim Body As StringBuilder ' Try ' TipoCorreo = 2 ' Body = GeneraContenido(CveEvento) ' ViewState("Para") = If(EnviarCorreoRegresada = True, CorreoPara, CorreoDe) ' ViewState("ArrayCC") = If(IncluirCCP = True, String.Join(";", CorreosCCP.Distinct().ToArray), "") ' ViewState("Asunto") = String.Format("Cambio de Estatus en una tarea, {0} la cambio.", UsuarioActual.Nombre) ' ViewState("Body") = Body ' Dim Hilo As New System.Threading.Thread(AddressOf MandaCorreo) ' Hilo.Start() ' Catch ex As Exception ' OnError("Ocurrió error al mandar MAIL", ex) ' End Try ' End Sub ' Private Function GeneraContenido(CveEvento As Integer) As StringBuilder ' Dim StrSB As New StringBuilder() ' Dim DireccionURL As String = GlobalDTParametros(SisParametros.URL).Cadena1 ' Dim Variables As String = "" ' Dim Tarea As String ' Dim De As String ' Dim Para As String ' 'Dim CCP As String ' Dim Fecha As String ' Dim Prioridad As String ' Dim Descripcion As String ' Dim Tipo As Integer ' Dim objEvento As New ClsOIEventos ' If objEvento.GetEvento(CveEvento, UsuarioActual.CveUsuario, CveEmpresaOI) Then ' Tarea = objEvento.Asunto ' De = objEvento.UsuarioDe ' Para = objEvento.UsuarioPara ' Fecha = objEvento.FechaIng.ToString("dd/MM/yyyy") ' Prioridad = objEvento.Prioridad ' Descripcion = objEvento.Descripcion ' Tipo = objEvento.CveTipoEvento ' StrSB.Append(" ") ' StrSB.Append(" ") ' 'StrSB.AppendFormat(" ", DireccionURL) ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append("
") ' StrSB.Append("
") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' Dim Desc As String = String.Empty ' If Tipo = 1 Then ' Desc = "Notificación de tarea" ' ElseIf Tipo = 2 Then ' Desc = "Notificación de nueva observación" ' ElseIf Tipo = 3 Then ' Desc = "Notificación de tarea concluida" ' ElseIf Tipo = 4 Then ' Desc = "Notificación de tarea devuelta a estatus pendiente" ' ElseIf Tipo = 5 Then ' Desc = "Notificación de tarea finalizada" ' End If ' StrSB.AppendFormat(" ", Desc) ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.AppendFormat(" ", De) ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.AppendFormat(" ", Para) ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.AppendFormat(" ", If(UsuariosCCP.Count > 0, String.Join(", ", UsuariosCCP.ToArray()), "-").ToString()) ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.AppendFormat(" ", Tarea) ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.AppendFormat(" ", Fecha) ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.AppendFormat(" ", Prioridad) ' StrSB.Append(" ") ' If CveTipoEvento = 1 Then ' Variables = "/OI/EventoDetalle.aspx?CveEvento=" & CveEvento ' End If ' 'If Imagen <> "" Then ' ' StrSB.Append(" ") ' ' StrSB.Append(" ") ' ' StrSB.Append(" ") ' ' StrSB.Append(" ") ' 'End If ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.AppendFormat(" ", Descripcion) ' StrSB.Append(" ") ' 'Observaciones ' Dim DT As DataTable = DTComentarios.FiltraParametros("", "FechaIng DESC") ' If Not DT Is Nothing AndAlso DT.Rows.Count > 0 Then ' 'StrSB.Append(" ") ' 'StrSB.Append(" ") ' 'StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' StrSB.Append(" ") ' DT.Dispose() ' End If ' 'If Tipo = 1 Then ' ' StrSB.Append(" ") ' ' StrSB.Append(" ") ' ' StrSB.Append(" ") ' 'End If ' 'Liga tarea ' StrSB.Append(" ") ' StrSB.AppendFormat(" ", DireccionURL, Variables) ' StrSB.Append(" ") ' StrSB.Append("
SIG
{0}
 De {0}
 Para {0}
 Con Copia Para (CCP) {0}
 Titulo {0}
 Fecha {0}
 Prioridad {0}
 Imagen Ver imagen
 Descripción
{0}
 Comentarios
") ' StrSB.Append("
") ' StrSB.Append(" Comentarios ") ' StrSB.Append(" ") ' 'StrSB.Append("
FechaUsuarioComentario
") ' For i As Integer = 0 To DT.Rows.Count - 1 ' StrSB.AppendFormat(" ", If(i Mod 2 = 0, "Texto", "TextoAlterno")) ' StrSB.AppendFormat(" ", DT.Rows(i)("FechaIng")) ' StrSB.AppendFormat(" ", DT.Rows(i)("NombreUsuario")) ' StrSB.AppendFormat(" ", DT.Rows(i)("EventoComentario")) ' StrSB.Append(" ") ' Next ' StrSB.Append("
FechaUsuarioComentario
{0}{0}{0}
") ' StrSB.Append("
") ' StrSB.Append("
 NOTA IMPORTANTE: Si usted asignó la tarea es importante que la de como finalizada en el módulo de tareas.
  de click para ir al evento
") ' StrSB.Append("
") ' StrSB.Append("
") ' StrSB.Append(" ") ' StrSB.Append(" ") ' End If ' Return StrSB ' End Function ' Private Sub MandaCorreo() ' Dim Mail As New ClsSisMail() ' '' TIpoCorreo = 1: Nueva Tarea ' If TipoCorreo = 1 Then ' 'Mail.MandaCorreo(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, ViewState("Body").ToString, CType(ViewState("ArrayCC"), String()), DisplayName:=UsuarioActual.Nombre) ' Mail.SendMail(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, ViewState("Body").ToString, CCP:=ViewState("ArrayCC").ToString, Displayname:=UsuarioActual.Nombre) ' 'Mail.MandaCorreo(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, IfNull(ViewState("RutaPDF"), "").ToString, IfNull(ViewState("RutaXML"), "").ToString, CType(ViewState("ArrayCC"), String()), ViewState("Body").ToString) ' Else ' 'Mail.MandaCorreo(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, CType(ViewState("ArrayCC"), String()), ViewState("Body").ToString) ' Mail.SendMail(ClsPaginas.EmpresaNotificaciones, ViewState("Para").ToString, ViewState("Asunto").ToString, ViewState("Body").ToString, CCP:=ViewState("ArrayCC").ToString) ' End If ' End Sub '#End Region Protected Sub BtnGuardarArchivo_Click1(sender As Object, e As EventArgs) Handles BtnGuardarArchivo.Click Dim FileExtension As String = "-1" Dim Filesgral As List(Of Archivo) = Anexo.getfiles().Archivos Dim Filename As String = "" For Each fileItem As Archivo In Filesgral FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "") 'Filename = fileItem.filename Dim tempArray() As String tempArray = fileItem.filename.ToString().Split("-".ToCharArray()) Session("Eventos") = tempArray(1) ViewState("FName") = fileItem.filename File.Move(fileItem.FileUrl, Path.Combine(UsuarioActual.Empresa.Ruta, "OI", "Temp", ViewState("FName").ToString)) TxtArchivo.Text = Session("Eventos").ToString ' imgFileOk.Visible = True ImgArchivo.Src = "/imagenes/accept.png" Next UPAFUL.Update() RegistraScript("$('#ModalUpload').modal('hide')", "hidemodal1") A1.Visible = True 'UsuarioActual.Empresa.Ruta 'Session("Eventos") ' If Filename <> "" Then ' Filename.FilesMove(String.Format("OI{0}", ObjEventoBitacora.CveEvento.ToString), String.Format("Empresas\{0}\OI", CveEmpresaOI)) ' End If ' GvEB.DataSource = ObjEventoBitacora.DtResultados ' TxtEventoDescripcion.Text = "" ' Anexo.Text = "[]" ' Alert("La bitácora/observación se guardó correctamente", TipoMensaje.MsgInformacion) ' RegistraScript("$('#ModalBitacora').modal('hide')", "hidemodal") ' ObjEventoBitacora.Dispose() ' GvEB.DataBind() ' UPEventoBitacora.Update() ' CargaEventoBitacora() ' UPAddEventoBitacora.Update() End Sub Protected Sub btnFileBit_Click(sender As Object, e As EventArgs) Handles btnFileBit.Click Dim FileExtension As String = "-1" Dim Filesgral As List(Of Archivo) = txtFileBit.getfiles().Archivos Dim Filename As String = "" For Each fileItem As Archivo In Filesgral FileExtension = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "") 'Filename = fileItem.filename Dim tempArray() As String tempArray = fileItem.filename.ToString().Split("-".ToCharArray()) 'Session("Eventos2") = tempArray(1) Session("Eventos2") = fileItem.filename File.Move(fileItem.FileUrl, Path.Combine(UsuarioActual.Empresa.Ruta, "OI", "Temp", Session("Eventos2").ToString)) ' TxtArchivo.Text = Session("Eventos").ToString ImgArchivoObs.Src = "/imagenes/accept.png" Next UpImgBit.Update() RegistraScript("$('#ModalUploadBit').modal('hide')", "hidemodal2") 'A1.Visible = True End Sub 'Private Sub MostrarOcultarControlesSoportes() ' If ChkSoporte.Checked Then ' rfvDdlUsuario.Enabled = True ' rfvcDdlUsuario.Enabled = True ' If Not DdlUsuarioSop.SelectedIndex > 0 Then ' rfvTxtPersona.Enabled = True ' rfvcTxtPersona.Enabled = True ' TxtPersona.Enabled = True ' Else ' rfvTxtPersona.Enabled = False ' rfvcTxtPersona.Enabled = False ' TxtPersona.Enabled = False ' End If ' rfvTxtTelefono.Enabled = True ' rfvcTxtTelefono.Enabled = True ' rfvDdlClasificacion.Enabled = True ' rfvcDdlClasificacion.Enabled = True ' rfvDdlModulo.Enabled = True ' rfvcDdlModulo.Enabled = True ' DvMonulo.Visible = True ' DvUsuarioSop.Visible = True ' DVPersona.Visible = True ' DvTelefono.Visible = True ' DvExtencion.Visible = True ' DvEmail.Visible = True ' DvClasificacion.Visible = True ' DvDesarrollo.Visible = True ' CveEventoEstatusAnterior = CveTipoEvento ' CveTipoEvento = 9 ' Else ' rfvDdlUsuario.Enabled = False ' rfvcDdlUsuario.Enabled = False ' If DdlUsuarioSop.SelectedIndex = 0 Then ' rfvTxtPersona.Enabled = True ' rfvcTxtPersona.Enabled = True ' TxtPersona.Enabled = True ' Else ' rfvTxtPersona.Enabled = False ' rfvcTxtPersona.Enabled = False ' TxtPersona.Enabled = False ' End If ' rfvTxtTelefono.Enabled = False ' rfvcTxtTelefono.Enabled = False ' rfvDdlClasificacion.Enabled = False ' rfvcDdlClasificacion.Enabled = False ' rfvDdlModulo.Enabled = False ' rfvcDdlModulo.Enabled = False ' DvMonulo.Visible = False ' DvUsuarioSop.Visible = False ' DVPersona.Visible = False ' DvTelefono.Visible = False ' DvExtencion.Visible = False ' DvEmail.Visible = False ' DvClasificacion.Visible = False ' DvDesarrollo.Visible = False ' CveTipoEvento = If(CveTipoEventoAnterior = -1, 1, CveTipoEventoAnterior) ' End If ' UpGeneral.Update() 'End Sub 'Private Sub DdlUsuario_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlUsuarioSop.SelectedIndexChanged ' MostrarOcultarControlesSoportes() 'End Sub Private Sub CargaCombosSoporte() DdlEmpresaSop.DataSource = GlobalDTEmpresas() DdlEmpresaSop.DataBind() DdlEmpresaSop.Items.Insert(0, New ListItem("Seleccione una", "-1")) DdlModulo.DataSource = GlobalDTModulos DdlModulo.DataBind() DdlModulo.Items.Insert(0, New ListItem("Seleccione uno", "-1")) End Sub Private Sub DdlUsuarioSop_SelectedIndexChanged(sender As Object, e As EventArgs) 'Handles DdlUsuarioSop.SelectedIndexChanged If DdlUsuarioSop.SelectedIndex > 0 Then TxtPersona.Enabled = False rfvTxtPersona.Enabled = False rfvcTxtPersona.Enabled = False rfvDdlUsuario.Enabled = True rfvcDdlUsuario.Enabled = True Else TxtPersona.Text = "" TxtPersona.Enabled = True rfvTxtPersona.Enabled = True rfvcTxtPersona.Enabled = True rfvDdlUsuario.Enabled = False rfvcDdlUsuario.Enabled = False End If UpGeneral.Update() End Sub Private Sub DdlEmpresaSop_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlEmpresaSop.SelectedIndexChanged If DdlEmpresaSop.SelectedIndex = 0 Then DdlUsuarioSop.Items.Clear() DdlUsuarioSop.DataSource = Nothing DdlUsuarioSop.DataBind() rfvDdlUsuario.Enabled = False rfvcDdlUsuario.Enabled = False rfvDdlEmpresa.Enabled = False rfvcDdlEmpresa.Enabled = False rfvTxtPersona.Enabled = True rfvcTxtPersona.Enabled = True TxtPersona.Enabled = True Else DdlUsuarioSop.DataSource = GlobalDTUsuarios().FiltraParametros($"CveEmpresa = { DdlEmpresaSop.SelectedValue.ToEntero }") DdlUsuarioSop.DataBind() rfvDdlUsuario.Enabled = True rfvcDdlUsuario.Enabled = True rfvDdlEmpresa.Enabled = True rfvcDdlEmpresa.Enabled = True rfvTxtPersona.Enabled = False rfvcTxtPersona.Enabled = False TxtPersona.Enabled = False CveEmpresaOI = DdlEmpresaSop.SelectedValue.ToEntero End If DdlUsuarioSop.Items.Insert(0, New ListItem("Seleccione uno", "-1")) UpGeneral.Update() End Sub Private Sub ImprimirReporte() Dim RutaDocumento As String = System.IO.Path.Combine(Server.MapPath("/"), "Empresas/Grales/FS.docx") If File.Exists(RutaDocumento) Then Dim GemDocumen As New clsGemBoxDocument(RutaDocumento) Dim listaTags As New List(Of TagsDocumentos) listaTags.Add(New TagsDocumentos("{Atendio}", UsuarioDe)) listaTags.Add(New TagsDocumentos("{Fecha}", Fecha)) listaTags.Add(New TagsDocumentos("{Responsable}", UsuarioPara)) listaTags.Add(New TagsDocumentos("{Persona}", Persona)) listaTags.Add(New TagsDocumentos("{Modulo}", Modulo)) If Prioridad = 1 Then listaTags.Add(New TagsDocumentos("{Prioridad}", "Baja")) Else If Prioridad = 2 Then listaTags.Add(New TagsDocumentos("{Prioridad}", "Media")) Else listaTags.Add(New TagsDocumentos("{Prioridad}", "Alta")) End If End If listaTags.Add(New TagsDocumentos("{Empresa}", EmpresaSop)) listaTags.Add(New TagsDocumentos("{Telefono}", Telefono)) listaTags.Add(New TagsDocumentos("{Extension}", Extension)) listaTags.Add(New TagsDocumentos("{Asunto}", Asunto)) listaTags.Add(New TagsDocumentos("{Descripcion}", Descripcion)) listaTags.Add(New TagsDocumentos("{Folio}", lblFolio.Text)) listaTags.Add(New TagsDocumentos("{Email}", Email)) listaTags.Add(New TagsDocumentos("{Datos}", Datos)) ' listaTags.Add(New TagsDocumentos("{}", "")) Dim SolucionDescripcion As String = "" For Each dr As DataRow In DTBitacora.Rows Dim SFecha As String = dr("FechaIng").ToString Dim SComentario As String = dr("EventoComentario").ToString SolucionDescripcion = SolucionDescripcion & $"{ SFecha } {SComentario}" Next listaTags.Add(New TagsDocumentos("{Solucion}", SolucionDescripcion)) GemDocumen.SustituirTags(listaTags) GemDocumen.GuardarStreamPDF() Dim memoryStream As New System.IO.MemoryStream(GemDocumen.GetBytesDocumento()) GemDocumen.Dispose() Response.Clear() Response.ContentType = "application/pdf" Response.AddHeader("content-disposition", $"attachment;filename=Soporte_{ lblFolio.Text }.pdf") Response.Buffer = True memoryStream.WriteTo(Response.OutputStream) Response.End() Else Alert("No se encontro la plantilla", TipoMensaje.MsgAdvertencia) End If End Sub Private Sub LinkImp_Click(sender As Object, e As EventArgs) Handles LinkImp.Click ImprimirReporte() End Sub Private Sub DdlUsuarios_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlUsuarios.SelectedIndexChanged CveUsuarioParaNuevo = DdlUsuarios.SelectedValue.ToEntero End Sub End Class