Commit inicial Ventas Productivo
This commit is contained in:
654
AC/RegComprometido.aspx.vb
Normal file
654
AC/RegComprometido.aspx.vb
Normal file
@@ -0,0 +1,654 @@
|
||||
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("<a class=""Texto"" target='_blank' href=""/Contabilidad/RegPoliza.aspx?IdPoliza={0}""> Poliza</a>", IDPoliza)
|
||||
|
||||
Dim Msg As String = String.Format("<br />La poliza se comprometio correctamente.<br /><br /><br />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("<a class=""Texto"" target='_blank' href=""/Contabilidad/RegPoliza.aspx?IdPoliza={0}""> Poliza</a>", IDPoliza)
|
||||
|
||||
Dim Msg As String = String.Format("<br />La poliza se pago correctamente.<br /><br /><br />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
|
||||
Reference in New Issue
Block a user