Option Explicit On Option Strict On Imports System.Data Imports Extensiones Partial Class AC_RegComprometido Inherits ClsPaginas #Region "PROPIEDADES" Private Property DtDetalle As DataTable Get DtDetalle = DirectCast(ViewState("DtDetalle"), DataTable) End Get Set(ByVal value As DataTable) ViewState("DtDetalle") = value End Set End Property Private Property DtDetallePagar As DataTable Get DtDetallePagar = DirectCast(ViewState("DtDetallePagar"), DataTable) End Get Set(ByVal value As DataTable) ViewState("DtDetallePagar") = value End Set End Property Private Property DtPresupuestos As DataTable Get DtPresupuestos = DirectCast(ViewState("DtPresupuestos"), DataTable) End Get Set(ByVal value As DataTable) ViewState("DtPresupuestos") = value End Set End Property Private Property Opc As String Get Opc = ViewState("Opc").ToString End Get Set(value As String) ViewState("Opc") = value End Set End Property #End Region Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Not Page.IsPostBack Then Opc = IfNull(Request("Opc"), "Otro").ToString ViewState("Orden") = "" ViewState("OrdenPagar") = "" If Opc.ToUpper = "NOM" Then LbTitulo.Text = "Comprometido Nómina" Else LbTitulo.Text = "Comprometido Otros" End If Dim FechaI = $"01/01/{UsuarioActual.Empresa.EjercicioActual.ToString}" Dim FechaF = $"31/12/{UsuarioActual.Empresa.EjercicioActual.ToString}" TxtFechaComprometido.Text = FechaI RVFechaComprometido.MinimumValue = FechaI RVFechaComprometido.MaximumValue = FechaF CEFechaComprometido.StartDate = FechaI.ToDate CEFechaComprometido.EndDate = FechaF.ToDate CargaPresupuestos() CargaMeta() TxtImporte.Enabled = False CreaDTDetalles() BtnAgregar.Enabled = False 'CargaMetaPagar() 'TxtImportePagar.Enabled = False 'CreaDTDetallesPagar() 'BtnAgregarPagar.Enabled = False LtEjercicio.Text = UsuarioActual.Empresa.EjercicioActual.ToString End If End Sub Private Sub CargaPresupuestos() Dim AC As New ClsAC If AC.GetPresupuestoEgresos(-1, True, UsuarioActual.Empresa.EjercicioActual, UsuarioActual.CveEmpresa) Then DtPresupuestos = AC.DtResultados.Copy Else Alert("Ocurrio un error al cargar los Presupuestos. Por favor vuelva a cargar la página", TipoMensaje.MsgError) End If AC.Dispose() If Opc.ToUpper = "NOM" Then DtPresupuestos = DtPresupuestos.FiltraParametros("CodigoCOG like '1%'") Else DtPresupuestos = DtPresupuestos.FiltraParametros("NOT CodigoCOG like '1%'") End If End Sub #Region "C O M P R O M E T E R" #Region "CARGA COMBOS EN CASCADA" Private Sub CargaMeta() DdlMeta.DataSource = DtPresupuestos.FiltraParametros("", DistinctColumns:={"CveProgramaOperativo", "ProgramaOperativo"}) DdlMeta.DataBind() DdlMeta.Items.Insert(0, New ListItem("Seleccionar", "-1")) End Sub Protected Sub CargaUnidadAdministrativa(sender As Object, e As EventArgs) DdlUnidadAdministrativa.Items.Clear() DdlFuenteFinanciamiento.Items.Clear() DdlClasificacionOG.Items.Clear() DdlTipoGasto.Items.Clear() LtDisponible.Text = "$" TxtImporte.Enabled = False If DdlMeta.SelectedValue.ToEntero > 0 Then Dim Filtro As New StringBuilder Filtro.AppendFormat("CveProgramaOperativo= {0}", DdlMeta.SelectedValue.ToString) DdlUnidadAdministrativa.DataSource = (DtPresupuestos.FiltraParametros(Filtro.ToString)).FiltraParametros("", DistinctColumns:={"CveUnidadAdministrativa", "UnidadAdministrativa"}) DdlUnidadAdministrativa.DataBind() DdlUnidadAdministrativa.Items.Insert(0, New ListItem("Seleccionar", "-1")) End If End Sub Protected Sub CargaFuenteFinanciamiento(sender As Object, e As EventArgs) DdlFuenteFinanciamiento.Items.Clear() DdlClasificacionOG.Items.Clear() DdlTipoGasto.Items.Clear() LtDisponible.Text = "$" TxtImporte.Enabled = False If DdlUnidadAdministrativa.SelectedValue.ToEntero > 0 Then Dim Filtro As New StringBuilder Filtro.AppendFormat("CveProgramaOperativo= {0} and CveUnidadAdministrativa= {1}", DdlMeta.SelectedValue.ToString, DdlUnidadAdministrativa.SelectedValue.ToString) DdlFuenteFinanciamiento.DataSource = (DtPresupuestos.FiltraParametros(Filtro.ToString)).FiltraParametros("", DistinctColumns:={"CveFuenteFinanciamiento", "FuenteFinanciamiento"}) DdlFuenteFinanciamiento.DataBind() DdlFuenteFinanciamiento.Items.Insert(0, New ListItem("Seleccionar", "-1")) End If End Sub Protected Sub CargaClasificacionOG(sender As Object, e As EventArgs) DdlClasificacionOG.Items.Clear() DdlTipoGasto.Items.Clear() LtDisponible.Text = "$" TxtImporte.Enabled = False If DdlFuenteFinanciamiento.SelectedValue.ToEntero > 0 Then Dim Filtro As New StringBuilder Filtro.AppendFormat("CveProgramaOperativo= {0} and CveUnidadAdministrativa= {1} and CveFuenteFinanciamiento= {2}", DdlMeta.SelectedValue.ToString, DdlUnidadAdministrativa.SelectedValue.ToString, DdlFuenteFinanciamiento.SelectedValue.ToString) DdlClasificacionOG.DataSource = (DtPresupuestos.FiltraParametros(Filtro.ToString)).FiltraParametros("", "CodigoClasificacion", {"CveClasificacion", "CodigoClasificacion"}) DdlClasificacionOG.DataBind() DdlClasificacionOG.Items.Insert(0, New ListItem("Seleccionar", "-1")) End If End Sub Protected Sub CargaTipoGasto(sender As Object, e As EventArgs) DdlTipoGasto.Items.Clear() LtDisponible.Text = "$" TxtImporte.Enabled = False If DdlClasificacionOG.SelectedValue.ToEntero > 0 Then Dim Filtro As New StringBuilder Filtro.AppendFormat("CveProgramaOperativo= {0} and CveUnidadAdministrativa= {1} and CveFuenteFinanciamiento= {2} and CveClasificacion= {3}", DdlMeta.SelectedValue.ToString, DdlUnidadAdministrativa.SelectedValue.ToString, DdlFuenteFinanciamiento.SelectedValue.ToString, DdlClasificacionOG.SelectedValue.ToString) DdlTipoGasto.DataSource = (DtPresupuestos.FiltraParametros(Filtro.ToString)).FiltraParametros("", DistinctColumns:={"CveTipoGasto", "TipoGasto"}) DdlTipoGasto.DataBind() DdlTipoGasto.Items.Insert(0, New ListItem("Seleccionar", "-1")) End If End Sub Protected Sub CargaDisponible(sender As Object, e As EventArgs) CargaDisponible() End Sub Protected Sub CargaDisponible() Dim ContPaq As New ClsContPAQi(UsuarioActual.Empresa) Dim Filtro As New StringBuilder Dim disponible As Double Filtro.AppendFormat("CveProgramaOperativo= {0} and CveUnidadAdministrativa= {1} and CveFuenteFinanciamiento= {2} and CveClasificacion= {3} and CveTipoGasto= {4}", DdlMeta.SelectedValue.ToString, DdlUnidadAdministrativa.SelectedValue.ToString, DdlFuenteFinanciamiento.SelectedValue.ToString, DdlClasificacionOG.SelectedValue.ToString, DdlTipoGasto.SelectedValue.ToString) For Each dr As DataRow In DtPresupuestos.FiltraParametros(Filtro.ToString).Rows disponible = ContPaq.GetSaldoCuenta(dr("IdCuentaPorEjercer").ToString.ToEntero, 0, UsuarioActual.Empresa.EjercicioActual) HdnCuentaPorEjercer.Value = dr("IdCuentaPorEjercer").ToString HdnCuentaComprometido.Value = dr("IdCuentaComprometido").ToString Next Filtro.Clear() Filtro.AppendFormat("IdCuentaPorEjercer= {0}", HdnCuentaPorEjercer.Value) For Each dr As DataRow In DtDetalle.FiltraParametros(Filtro.ToString).Rows disponible -= dr("Importe").ToString.ToDouble Next If disponible <> 0 Then TxtImporte.Enabled = True BtnAgregar.Enabled = True End If LtDisponible.Text = disponible.FormatoNumero() 'UpAddComprometer.Update() ContPaq.Dispose() End Sub #End Region Protected Sub BtnAgregar_click(sender As Object, e As EventArgs) If DtDetalle IsNot Nothing Then If LtDisponible.Text.ToDouble >= TxtImporte.Text.ToDouble Then Dim dr As DataRow = DtDetalle.NewRow dr("Meta") = DdlMeta.SelectedItem.ToString dr("UnidadAdministrativa") = DdlUnidadAdministrativa.SelectedItem.ToString dr("FuenteFinanciamiento") = DdlFuenteFinanciamiento.SelectedItem.ToString dr("ClasificadorOG") = DdlClasificacionOG.SelectedItem.ToString dr("TipoGasto") = DdlTipoGasto.SelectedItem.ToString dr("Disponible") = LtDisponible.Text.ToDouble dr("Importe") = TxtImporte.Text.ToDouble dr("IdCuentaPorEjercer") = HdnCuentaPorEjercer.Value dr("IdCuentaComprometido") = HdnCuentaComprometido.Value DtDetalle.Rows.Add(dr) CargaDatosComprometer() Dim total As Double = LbTotal.Text.ToDouble LbTotal.Text = (total + dr("Importe").ToString.ToDouble).ToString.FormatoNumero DdlMeta.SelectedIndex = -1 DdlUnidadAdministrativa.Items.Clear() DdlFuenteFinanciamiento.Items.Clear() DdlClasificacionOG.Items.Clear() DdlTipoGasto.Items.Clear() LtDisponible.Text = "$" TxtImporte.Text = "" TxtImporte.Enabled = False BtnAgregar.Enabled = False 'UpAddComprometer.Update() Else Alert("El importe supera el capital disponible. Por favor de revisar y modificar", TipoMensaje.MsgAdvertencia) End If End If End Sub Protected Sub BtnGuardar_click(sender As Object, e As EventArgs) If DtDetalle.Rows.Count > 0 Then Dim TieneError As Boolean = False Dim IDPoliza As Integer Dim Conta As New ClsContPAQi(UsuarioActual.Empresa) Conta.IniciaTransacSQL() Dim Total As Double = LbTotal.Text.ToDouble IDPoliza = Conta.AddPoliza(4, TxtConcepto.Text.Trim, Total, Total, UsuarioActual.CveUsuario, TxtFechaComprometido.Text.ToDate) If IDPoliza > 0 Then For Each dr As DataRow In DtDetalle.Rows Dim Importe = dr("Importe").ToString.ToDouble If Conta.AddMovimiento(IDPoliza, dr("IdCuentaPorEjercer").ToString.ToEntero, True, Importe, TxtConcepto.Text.Trim, TxtConcepto.Text.Trim, 0, TxtFechaComprometido.Text.ToDate, "") Then 'actualizo el idcuenta del presupuesto If Not Conta.AddMovimiento(IDPoliza, dr("IdCuentaComprometido").ToString.ToEntero, False, Importe, TxtConcepto.Text.Trim, TxtConcepto.Text.Trim, 0, TxtFechaComprometido.Text.ToDate, "") Then TieneError = True Exit For End If Else TieneError = True Exit For End If Next Else TieneError = True End If If Not TieneError Then Conta.Commit() GvD.DataBind() UpComprometer.Update() DdlMetaPagar.SelectedValue = "-1" CargaUnidadAdministrativaPagar(DdlMetaPagar, EventArgs.Empty) UpPagar.Update() DtDetalle.Rows.Clear() LbTotal.Text = "0.00" Dim Descargas As New StringBuilder If IDPoliza > 0 Then Descargas.AppendFormat(" Poliza", IDPoliza) Dim Msg As String = String.Format("
La poliza se comprometio correctamente.


Descargar: {0}", Descargas.ToString) 'TipoMensaje.MsgInformacion Msg.Alert(Msg, TipoMensaje.MsgInformacion) Else Conta.RollBack() End If Conta.Dispose() Else Alert("No hay registros que guardar", TipoMensaje.MsgInformacion) End If End Sub Protected Sub GvD_RowDeleting(sender As Object, e As GridViewDeleteEventArgs) Handles GvD.RowDeleting Dim Filtro As New StringBuilder Filtro.AppendFormat("IdCuentaPorEjercer= {0} and Importe= {1}", GvD.Rows(e.RowIndex).DataKey("IdCuentaPorEjercer").ToString.ToEntero, GvD.Rows(e.RowIndex).DataKey("Importe").ToString.ToDouble) Dim dr As DataRow() = DtDetalle.Select(Filtro.ToString) Dim total As Double = LbTotal.Text.ToDouble LbTotal.Text = (total - dr(0).Item("Importe").ToString.ToDouble).ToString.FormatoNumero dr(0).Delete() If Not LtDisponible.Text = "$" Then CargaDisponible() End If CargaDatosComprometer() End Sub Private Sub CreaDTDetalles() DtDetalle = New DataTable DtDetalle.Columns.Add("Meta", GetType(String)) DtDetalle.Columns.Add("UnidadAdministrativa", GetType(String)) DtDetalle.Columns.Add("FuenteFinanciamiento", GetType(String)) DtDetalle.Columns.Add("ClasificadorOG", GetType(String)) DtDetalle.Columns.Add("CodigoClasificacion", GetType(String)) DtDetalle.Columns.Add("TipoGasto", GetType(String)) DtDetalle.Columns.Add("Disponible", GetType(Double)) DtDetalle.Columns.Add("Importe", GetType(Double)) DtDetalle.Columns.Add("IdCuentaPorEjercer", GetType(Integer)) DtDetalle.Columns.Add("IdCuentaComprometido", GetType(Integer)) End Sub #Region "O R D E N A M I E N T O C O M P R O M E T E R" Private Sub CargaGridComprometer(Orden As String) If Orden <> String.Empty Then Dim DV As New DataView(CType(ViewState("DTComprometer"), DataTable), "", Orden, DataViewRowState.CurrentRows) GvD.DataSource = DV.ToTable() DV.Dispose() Else GvD.DataSource = CType(ViewState("DTComprometer"), DataTable) End If GvD.DataBind() End Sub Protected Sub CargaDatosComprometer() ViewState("DTComprometer") = DtDetalle If ViewState("Orden").ToString() <> String.Empty Then CargaGridComprometer(ViewState("Orden").ToString()) Else CargaGridComprometer("") End If UpComprometer.Update() End Sub Public Sub BtnAgregarComprometer_Click(sender As Object, e As EventArgs) DdlMeta.SelectedIndex = -1 DdlUnidadAdministrativa.Items.Clear() DdlFuenteFinanciamiento.Items.Clear() DdlClasificacionOG.Items.Clear() DdlTipoGasto.Items.Clear() LtDisponible.Text = "$" TxtImporte.Text = "" TxtImporte.Enabled = False BtnAgregar.Enabled = False 'UpAddComprometer.Update() RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarComprometer")) End Sub #End Region #End Region #Region "P A G A R" #Region "CARGA COMBOS EN CASCADA" Private Sub CargaMetaPagar() DdlMetaPagar.DataSource = DtPresupuestos.FiltraParametros("", DistinctColumns:={"CveProgramaOperativo", "ProgramaOperativo"}) DdlMetaPagar.DataBind() DdlMetaPagar.Items.Insert(0, New ListItem("Seleccionar", "-1")) End Sub Protected Sub CargaUnidadAdministrativaPagar(sender As Object, e As EventArgs) DdlUnidadAdministrativaPagar.Items.Clear() DdlFuenteFinanciamientoPagar.Items.Clear() DdlClasificacionOGPagar.Items.Clear() DdlTipoGastoPagar.Items.Clear() LtDisponiblePagar.Text = "$" TxtImportePagar.Enabled = False If DdlMetaPagar.SelectedValue.ToEntero > 0 Then Dim Filtro As New StringBuilder Filtro.AppendFormat("CveProgramaOperativo= {0}", DdlMetaPagar.SelectedValue.ToString) DdlUnidadAdministrativaPagar.DataSource = (DtPresupuestos.FiltraParametros(Filtro.ToString)).FiltraParametros("", DistinctColumns:={"CveUnidadAdministrativa", "UnidadAdministrativa"}) DdlUnidadAdministrativaPagar.DataBind() DdlUnidadAdministrativaPagar.Items.Insert(0, New ListItem("Seleccionar", "-1")) End If End Sub Protected Sub CargaFuenteFinanciamientoPagar(sender As Object, e As EventArgs) DdlFuenteFinanciamientoPagar.Items.Clear() DdlClasificacionOGPagar.Items.Clear() DdlTipoGastoPagar.Items.Clear() LtDisponiblePagar.Text = "$" TxtImportePagar.Enabled = False If DdlUnidadAdministrativaPagar.SelectedValue.ToEntero > 0 Then Dim Filtro As New StringBuilder Filtro.AppendFormat("CveProgramaOperativo= {0} and CveUnidadAdministrativa= {1}", DdlMetaPagar.SelectedValue.ToString, DdlUnidadAdministrativaPagar.SelectedValue.ToString) DdlFuenteFinanciamientoPagar.DataSource = (DtPresupuestos.FiltraParametros(Filtro.ToString)).FiltraParametros("", DistinctColumns:={"CveFuenteFinanciamiento", "FuenteFinanciamiento"}) DdlFuenteFinanciamientoPagar.DataBind() DdlFuenteFinanciamientoPagar.Items.Insert(0, New ListItem("Seleccionar", "-1")) End If End Sub Protected Sub CargaClasificacionOGPagar(sender As Object, e As EventArgs) DdlClasificacionOGPagar.Items.Clear() DdlTipoGastoPagar.Items.Clear() LtDisponiblePagar.Text = "$" TxtImportePagar.Enabled = False If DdlFuenteFinanciamientoPagar.SelectedValue.ToEntero > 0 Then Dim Filtro As New StringBuilder Filtro.AppendFormat("CveProgramaOperativo= {0} and CveUnidadAdministrativa= {1} and CveFuenteFinanciamiento= {2}", DdlMetaPagar.SelectedValue.ToString, DdlUnidadAdministrativaPagar.SelectedValue.ToString, DdlFuenteFinanciamientoPagar.SelectedValue.ToString) DdlClasificacionOGPagar.DataSource = (DtPresupuestos.FiltraParametros(Filtro.ToString)).FiltraParametros("", "CodigoClasificacion", {"CveClasificacion", "CodigoClasificacion"}) DdlClasificacionOGPagar.DataBind() DdlClasificacionOGPagar.Items.Insert(0, New ListItem("Seleccionar", "-1")) End If End Sub Protected Sub CargaTipoGastoPagar(sender As Object, e As EventArgs) DdlTipoGastoPagar.Items.Clear() LtDisponiblePagar.Text = "$" TxtImportePagar.Enabled = False If DdlClasificacionOGPagar.SelectedValue.ToEntero > 0 Then Dim Filtro As New StringBuilder Filtro.AppendFormat("CveProgramaOperativo= {0} and CveUnidadAdministrativa= {1} and CveFuenteFinanciamiento= {2} and CveClasificacion= {3}", DdlMetaPagar.SelectedValue.ToString, DdlUnidadAdministrativaPagar.SelectedValue.ToString, DdlFuenteFinanciamientoPagar.SelectedValue.ToString, DdlClasificacionOGPagar.SelectedValue.ToString) DdlTipoGastoPagar.DataSource = (DtPresupuestos.FiltraParametros(Filtro.ToString)).FiltraParametros("", DistinctColumns:={"CveTipoGasto", "TipoGasto"}) DdlTipoGastoPagar.DataBind() DdlTipoGastoPagar.Items.Insert(0, New ListItem("Seleccionar", "-1")) End If End Sub Protected Sub CargaDisponiblePagar(sender As Object, e As EventArgs) CargaDisponiblePagar() End Sub Protected Sub CargaDisponiblePagar() Dim ContPaq As New ClsContPAQi(UsuarioActual.Empresa) Dim Filtro As New StringBuilder Dim disponible As Double Filtro.AppendFormat("CveProgramaOperativo= {0} and CveUnidadAdministrativa= {1} and CveFuenteFinanciamiento= {2} and CveClasificacion= {3} and CveTipoGasto= {4}", DdlMetaPagar.SelectedValue.ToString, DdlUnidadAdministrativaPagar.SelectedValue.ToString, DdlFuenteFinanciamientoPagar.SelectedValue.ToString, DdlClasificacionOGPagar.SelectedValue.ToString, DdlTipoGastoPagar.SelectedValue.ToString) For Each dr As DataRow In DtPresupuestos.FiltraParametros(Filtro.ToString).Rows disponible = ContPaq.GetSaldoCuenta(dr("IdCuentaComprometido").ToString.ToEntero, 0, UsuarioActual.Empresa.EjercicioActual) HdnCuentaComprometidoPagar.Value = dr("IdCuentaComprometido").ToString HdnCuentaDevengadoPagar.Value = dr("IdCuentaDevengado").ToString HdnCuentaEjercidoPagar.Value = dr("IdCuentaEjercido").ToString HdnCuentaPagadoPagar.Value = dr("IdCuentaPagado").ToString Next Filtro.Clear() Filtro.AppendFormat("IdCuentaComprometido = {0}", HdnCuentaComprometidoPagar.Value) For Each dr As DataRow In DtDetallePagar.FiltraParametros(Filtro.ToString).Rows disponible -= dr("Importe").ToString.ToDouble Next If disponible <> 0 Then TxtImportePagar.Enabled = True BtnAgregarPagar.Enabled = True End If LtDisponiblePagar.Text = disponible.FormatoNumero() ContPaq.Dispose() End Sub #End Region Protected Sub BtnAgregarPagar_click(sender As Object, e As EventArgs) If DtDetallePagar IsNot Nothing Then If LtDisponiblePagar.Text.ToDouble >= TxtImportePagar.Text.ToDouble Then Dim dr As DataRow = DtDetallePagar.NewRow dr("Meta") = DdlMetaPagar.SelectedItem.ToString dr("UnidadAdministrativa") = DdlUnidadAdministrativaPagar.SelectedItem.ToString dr("FuenteFinanciamiento") = DdlFuenteFinanciamientoPagar.SelectedItem.ToString dr("ClasificadorOG") = DdlClasificacionOGPagar.SelectedItem.ToString dr("TipoGasto") = DdlTipoGastoPagar.SelectedItem.ToString dr("Disponible") = LtDisponiblePagar.Text.ToDouble dr("Importe") = TxtImportePagar.Text.ToDouble dr("IdCuentaComprometido") = HdnCuentaComprometidoPagar.Value dr("IdCuentaDevengado") = HdnCuentaDevengadoPagar.Value dr("IdCuentaEjercido") = HdnCuentaEjercidoPagar.Value dr("IdCuentaPagado") = HdnCuentaPagadoPagar.Value DtDetallePagar.Rows.Add(dr) CargaDatosPagar() Dim total As Double = LbTotalPagar.Text.ToDouble LbTotalPagar.Text = (total + dr("Importe").ToString.ToDouble).ToString.FormatoNumero DdlMetaPagar.SelectedIndex = -1 DdlUnidadAdministrativaPagar.Items.Clear() DdlFuenteFinanciamientoPagar.Items.Clear() DdlClasificacionOGPagar.Items.Clear() DdlTipoGastoPagar.Items.Clear() LtDisponiblePagar.Text = "$" TxtImportePagar.Text = "" TxtImportePagar.Enabled = False BtnAgregarPagar.Enabled = False Else Alert("El importe supera el capital disponible. Por favor de revisar y modificar", TipoMensaje.MsgAdvertencia) End If End If End Sub Protected Sub BtnGuardarPagar_click(sender As Object, e As EventArgs) If DtDetallePagar.Rows.Count > 0 Then Dim TieneError As Boolean = False Dim IDPoliza As Integer Dim Conta As New ClsContPAQi(UsuarioActual.Empresa) Conta.IniciaTransacSQL() Dim Total As Double = LbTotalPagar.Text.ToDouble IDPoliza = Conta.AddPoliza(4, "Devengado-Ejercido-Pagado", Total, Total, UsuarioActual.CveUsuario, Now) If IDPoliza > 0 Then For Each dr As DataRow In DtDetallePagar.Rows Dim Importe = dr("Importe").ToString.ToDouble 'Devengado If Conta.AddMovimiento(IDPoliza, dr("IdCuentaComprometido").ToString.ToEntero, True, Importe, "", "", 0, String.Format("01/01/{0}", Now.Year).ToDate, "") Then If Not Conta.AddMovimiento(IDPoliza, dr("IdCuentaDevengado").ToString.ToEntero, False, Importe, "", "", 0, String.Format("01/01/{0}", Now.Year).ToDate, "") Then TieneError = True Exit For End If Else TieneError = True Exit For End If 'Ejercido If Conta.AddMovimiento(IDPoliza, dr("IdCuentaDevengado").ToString.ToEntero, True, Importe, "", "", 0, Now, "") Then If Not Conta.AddMovimiento(IDPoliza, dr("IdCuentaEjercido").ToString.ToEntero, False, Importe, "", "", 0, Now, "") Then TieneError = True Exit For End If Else TieneError = True Exit For End If 'Pagado If Conta.AddMovimiento(IDPoliza, dr("IdCuentaEjercido").ToString.ToEntero, True, Importe, "", "", 0, Now, "") Then If Not Conta.AddMovimiento(IDPoliza, dr("IdCuentaPagado").ToString.ToEntero, False, Importe, "", "", 0, Now, "") Then TieneError = True Exit For End If Else TieneError = True Exit For End If Next Else TieneError = True End If If Not TieneError Then Conta.Commit() GvDPagar.DataBind() UpPagar.Update() DtDetallePagar.Rows.Clear() LbTotalPagar.Text = "0.00" Dim Descargas As New StringBuilder If IDPoliza > 0 Then Descargas.AppendFormat(" Poliza", IDPoliza) Dim Msg As String = String.Format("
La poliza se pago correctamente.


Descargar: {0}", Descargas.ToString) 'TipoMensaje.MsgInformacion Msg.Alert(Msg, TipoMensaje.MsgInformacion) Else Conta.RollBack() End If Conta.Dispose() Else Alert("No hay registros que guardar", TipoMensaje.MsgInformacion) End If End Sub Protected Sub GvDPagar_RowDeleting(sender As Object, e As GridViewDeleteEventArgs) Handles GvDPagar.RowDeleting Dim Filtro As New StringBuilder Filtro.AppendFormat("IdCuentaEjercido= {0} and Importe= {1}", GvDPagar.Rows(e.RowIndex).DataKey("IdCuentaEjercido").ToString.ToEntero, GvDPagar.Rows(e.RowIndex).DataKey("Importe").ToString.ToDouble) Dim dr As DataRow() = DtDetallePagar.Select(Filtro.ToString) Dim total As Double = LbTotalPagar.Text.ToDouble LbTotalPagar.Text = (total - dr(0).Item("Importe").ToString.ToDouble).ToString.FormatoNumero dr(0).Delete() If Not LtDisponiblePagar.Text = "$" Then CargaDisponiblePagar() End If CargaDatosPagar() End Sub Private Sub CreaDTDetallesPagar() DtDetallePagar = New DataTable DtDetallePagar.Columns.Add("Meta", GetType(String)) DtDetallePagar.Columns.Add("UnidadAdministrativa", GetType(String)) DtDetallePagar.Columns.Add("FuenteFinanciamiento", GetType(String)) DtDetallePagar.Columns.Add("ClasificadorOG", GetType(String)) DtDetallePagar.Columns.Add("CodigoClasificacion", GetType(String)) DtDetallePagar.Columns.Add("TipoGasto", GetType(String)) DtDetallePagar.Columns.Add("Disponible", GetType(Double)) DtDetallePagar.Columns.Add("Importe", GetType(Double)) DtDetallePagar.Columns.Add("IdCuentaComprometido", GetType(Integer)) '8 DtDetallePagar.Columns.Add("IdCuentaDevengado", GetType(Integer)) '9 DtDetallePagar.Columns.Add("IdCuentaEjercido", GetType(Integer)) '10 DtDetallePagar.Columns.Add("IdCuentaPagado", GetType(Integer)) '11 End Sub Protected Sub CargaGridPagar() GvDPagar.DataSource = DtDetallePagar GvDPagar.DataBind() UpPagar.Update() End Sub #Region "O R D E N A M I E N T O P A G A R" Private Sub CargaGridPagar(Orden As String) If Orden <> String.Empty Then Dim DV As New DataView(CType(ViewState("DTPagar"), DataTable), "", Orden, DataViewRowState.CurrentRows) GvDPagar.DataSource = DV.ToTable() DV.Dispose() Else GvDPagar.DataSource = CType(ViewState("DTPagar"), DataTable) End If GvDPagar.DataBind() End Sub Protected Sub CargaDatosPagar() ViewState("DTPagar") = DtDetallePagar If ViewState("OrdenPagar").ToString() <> String.Empty Then CargaGridPagar(ViewState("OrdenPagar").ToString()) Else CargaGridPagar("") End If UpPagar.Update() End Sub Public Sub BtnAddPagar_Click(sender As Object, e As EventArgs) DdlMetaPagar.SelectedIndex = -1 DdlUnidadAdministrativaPagar.Items.Clear() DdlFuenteFinanciamientoPagar.Items.Clear() DdlClasificacionOGPagar.Items.Clear() DdlTipoGastoPagar.Items.Clear() LtDisponiblePagar.Text = "$" TxtImportePagar.Text = "" TxtImportePagar.Enabled = False BtnAgregarPagar.Enabled = False RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarPagar")) End Sub #End Region #End Region End Class