Option Explicit On Option Strict On Imports System.Data Imports System.Linq Imports Extensiones Partial Class Prospectos_Solicitudes_CatProspectosSolicitudesApoyos Inherits ClsPaginas Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not Page.IsPostBack Then ViewState("Orden") = "" ViewState("OCveProspectoApoyo") = "CveProspectoApoyo DESC" ViewState("OEstatus") = "Estatus DESC" ViewState("OCantidad") = "Cantidad DESC" ViewState("OImporte") = "Importe DESC" CargarProspectos() CargaDatos() End If End Sub Public Sub CargaDatos() Dim ObjProspectosSolicitudesApoyos As New ClsProspectos If ObjProspectosSolicitudesApoyos.GetProspectosSolicitudesApoyos(-1, -1) Then ViewState("DTProspectosSolicitudesApoyos") = ObjProspectosSolicitudesApoyos.DtResultados GlobalDTProspectosSolicitudesApoyos(-1) = ObjProspectosSolicitudesApoyos.DtResultados Else Me.GvDatos.DataSource = Nothing End If ObjProspectosSolicitudesApoyos.Dispose() If ViewState("Orden").ToString() <> String.Empty Then CargaGrid(ViewState("Orden").ToString()) Else CargaGrid("") End If End Sub Private Sub CargarProspectos() DdlProspectoApoyo.DataSource = GlobalDTProspectosApoyos(UsuarioActual.CveEmpresa) DdlProspectoApoyo.DataBind() End Sub Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles LbAgregar.Click Dim ObjProspectosSolicitudesApoyos As New ClsProspectos If ObjProspectosSolicitudesApoyos.AddProspectosSolicitudesApoyos(1, DdlProspectoApoyo.SelectedValue.ToEntero, TxtCantidad.Text.Trim.ToDouble, TxtImporte.Text.Trim.ToDouble, 1) Then TxtCantidad.Text = "" TxtImporte.Text = "" Alert("La nueva Solicitud de Apoyo se guardó correctamente.", TipoMensaje.MsgInformacion) UpTitulos.Update() ViewState("DTProspectosSolicitudesApoyos") = ObjProspectosSolicitudesApoyos.DtResultados GlobalDTProspectosSolicitudesApoyos(-1) = ObjProspectosSolicitudesApoyos.DtResultados If ViewState("Orden").ToString() <> String.Empty Then CargaGrid(ViewState("Orden").ToString()) Else CargaGrid("") End If End If ObjProspectosSolicitudesApoyos.Dispose() End Sub #Region "O R D E N" Protected Sub LbCveProspectoApoyo_Click(sender As Object, e As System.EventArgs) Handles LbCveProspectoApoyo.Click, ImgCveProspectoApoyo.Click If ViewState("OCveProspectoApoyo").ToString() = "CveProspectoApoyo DESC" Then ViewState("OCveProspectoApoyo") = "CveProspectoApoyo ASC" ImgCveProspectoApoyo.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OCveProspectoApoyo") = "CveProspectoApoyo DESC" ImgCveProspectoApoyo.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OCveProspectoApoyo") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbCantidad_Click(sender As Object, e As System.EventArgs) Handles LbCantidad.Click, ImgCantidad.Click If ViewState("OCantidad").ToString() = "Cantidad DESC" Then ViewState("OCantidad") = "Cantidad ASC" ImgCantidad.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OCantidad") = "Cantidad DESC" ImgCantidad.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OCantidad") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbImporte_Click(sender As Object, e As System.EventArgs) Handles LbImporte.Click, ImgImporte.Click If ViewState("OImporte").ToString() = "Importe DESC" Then ViewState("OImporte") = "Importe ASC" ImgImporte.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OImporte") = "Importe DESC" ImgImporte.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OImporte") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbEstatus_Click(sender As Object, e As System.EventArgs) Handles LbEstatus.Click, ImgEstatus.Click If ViewState("OEstatus").ToString() = "Estatus DESC" Then ViewState("OEstatus") = "Estatus ASC" ImgEstatus.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OEstatus") = "Estatus DESC" ImgEstatus.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OEstatus") CargaGrid(ViewState("Orden").ToString()) End Sub #End Region Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.RowIndex = 0 Then e.Row.Cells(0).Width = Unit.Pixel(210) e.Row.Cells(1).Width = Unit.Pixel(105) e.Row.Cells(2).Width = Unit.Pixel(105) e.Row.Cells(3).Width = Unit.Pixel(105) e.Row.Cells(4).Width = Unit.Pixel(50) e.Row.Cells(5).Width = Unit.Pixel(50) End If e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left If e.Row.RowState = DataControlRowState.Edit OrElse e.Row.RowState = 5 Then e.Row.FCDropDownList("DdlProspectoApoyo").DataSource = GlobalDTProspectosApoyos(UsuarioActual.CveEmpresa) e.Row.FCDropDownList("DdlProspectoApoyo").DataBind() e.Row.FCDropDownList("DdlProspectoApoyo").SelectedValue = e.Row.DBCampo("CveProspectoApoyo") End If End If End Sub Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting Dim ObjProspectosSolicitudesApoyos As New ClsProspectos If ObjProspectosSolicitudesApoyos.RemoveProspectosSolicitudesApoyos(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then GvDatos.EditIndex = -1 ViewState("DTProspectosSolicitudesApoyos") = ObjProspectosSolicitudesApoyos.DtResultados GlobalDTProspectosSolicitudesApoyos(-1) = ObjProspectosSolicitudesApoyos.DtResultados Alert("El Apoyo se eliminó correctamente.", TipoMensaje.MsgInformacion) End If ObjProspectosSolicitudesApoyos.Dispose() If ViewState("Orden").ToString() <> String.Empty Then CargaGrid(ViewState("Orden").ToString()) Else CargaGrid("") End If End Sub Protected Sub GvDatos_RowCancelingEdit(sender As Object, e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GvDatos.RowCancelingEdit GvDatos.EditIndex = -1 If ViewState("Orden").ToString() <> String.Empty Then CargaGrid(ViewState("Orden").ToString()) Else CargaGrid("") End If End Sub Protected Sub GvDatos_RowUpdating(sender As Object, e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GvDatos.RowUpdating Dim ObjProspectosSolicitudesApoyos As New ClsProspectos Dim CveProspectoApoyo As Integer = DirectCast(GvDatos.Rows(e.RowIndex).FindControl("DdlProspectoApoyo"), DropDownList).SelectedValue.ToEntero Dim Cantidad As Double = DirectCast(GvDatos.Rows(e.RowIndex).FindControl("TxtCantidad"), TextBox).Text.Trim.ToDouble Dim Importe As Double = DirectCast(GvDatos.Rows(e.RowIndex).FindControl("TxtImporte"), TextBox).Text.Trim.ToDouble Dim Estatus As Boolean = CBool(GvDatos.Rows(e.RowIndex).FCCheckBox("ChkEstatus").Checked) Dim CveProspectoSolicitud As Integer = GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero If ObjProspectosSolicitudesApoyos.UpdateProspectosSolicitudesApoyos(CveProspectoApoyo, Cantidad, Importe, If(Estatus = True, 1, 0), CveProspectoSolicitud) Then GvDatos.EditIndex = -1 ViewState("DTProspectosSolicitudesApoyos") = ObjProspectosSolicitudesApoyos.DtResultados GlobalDTProspectosSolicitudesApoyos(-1) = ObjProspectosSolicitudesApoyos.DtResultados Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion) End If ObjProspectosSolicitudesApoyos.Dispose() If ViewState("Orden").ToString() <> String.Empty Then CargaGrid(ViewState("Orden").ToString()) Else CargaGrid("") End If End Sub Protected Sub GvDatos_RowEditing(sender As Object, e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles GvDatos.RowEditing GvDatos.EditIndex = e.NewEditIndex If ViewState("Orden").ToString() <> String.Empty Then CargaGrid(ViewState("Orden").ToString()) Else CargaGrid("") End If End Sub Private Sub CargaGrid(Orden As String) If Orden <> String.Empty Then Dim DV As New DataView(CType(ViewState("DTProspectosSolicitudesApoyos"), DataTable), "", Orden, DataViewRowState.CurrentRows) GvDatos.DataSource = DV.ToTable() DV.Dispose() Else GvDatos.DataSource = CType(ViewState("DTProspectosSolicitudesApoyos"), DataTable) End If GvDatos.DataBind() UpDatos.Update() End Sub End Class