Option Explicit On Option Strict On Imports System.Data Imports System.Linq Imports Extensiones Partial Class AC_PresupuestoEgresos Inherits ClsPaginas Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not Page.IsPostBack Then ViewState("Orden") = "" ViewState("OCvePresupuestoEgreso") = "CvePresupuestoEgreso DESC" ViewState("OCveProgramaOperativo") = " CveProgramaOperativo DESC" ViewState("OCveFuenteFinanciamiento") = "CveFuenteFinanciamiento DESC" ViewState("OCveTipoGasto") = "CveTipoGasto DESC " ViewState("OCveUnidadAdministrativa") = "CveUnidadAdministrativa DESC" ViewState("OCveOGClasificacion") = "CveOGClasificacion DESC" ViewState("OTotal") = "Total DESC" ViewState("OEnero") = "Enero DESC" ViewState("OFebrero") = "Febrero DESC" ViewState("OMarzo") = "Marzo DESC" ViewState("OAbril") = "Abril DESC" ViewState("OMayo") = "Mayo DESC" ViewState("OJunio") = "Junio DESC" ViewState("OJulio") = "Julio DESC" ViewState("OAgosto") = "Agosto DESC" ViewState("OSeptiembre") = "Septiembre DESC" ViewState("OOctubre") = "Octubre DESC" ViewState("ONoviembre") = "Noviembre DESC" ViewState("ODiciembre") = "Diciembre DESC" ViewState("OFechaIng") = "FechaIng DESC" ViewState("OCveUsuario") = "CveUsuario DESC" ViewState("OFechaIng") = "FechaIng DESC" ViewState("OUsuario") = "Usuario DESC" CargaDatos() CargarCombos() End If End Sub Public Sub CargarCombos() DdlProgramaOperativo.DataSource = GlobalDTAC_ProgramaOperativo() DdlProgramaOperativo.DataBind() DdlFuenteFinanciamiento.DataSource = GlobalDTAC_FuentesFinanciamiento(UsuarioActual.CveEmpresa) DdlFuenteFinanciamiento.DataBind() DdlTipoGasto.DataSource = GlobalDTAC_TipoGasto DdlTipoGasto.DataBind() DdlUnidadAdministrativa.DataSource = GlobalDTAC_UnidadesAdministrativas(UsuarioActual.CveEmpresa) DdlUnidadAdministrativa.DataBind() DdlClasificadorOG.DataSource = GlobalDTAC_ClasificadorOG(UsuarioActual.CveEmpresa).FiltraParametros("Afectable = 1") DdlClasificadorOG.DataBind() End Sub Public Sub CargaDatos() Dim ObjPresupuestoEgreso As New ClsAC If ObjPresupuestoEgreso.GetPresupuestoEgresos(UsuarioActual.CveEmpresa) Then ViewState("DT_AC_PresupuestosEgresos") = ObjPresupuestoEgreso.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) Else Me.GvDatos.DataSource = Nothing End If ObjPresupuestoEgreso.Dispose() If ViewState("Orden").ToString() <> String.Empty Then CargaGrid(ViewState("Orden").ToString()) Else CargaGrid("") End If End Sub Protected Sub LbAgregar_Click(sender As Object, e As System.EventArgs) Handles LbAgregar.Click Dim ObjPresupuestoEgreso As New ClsAC If ObjPresupuestoEgreso.AddPresupuestoEgresos(DdlProgramaOperativo.SelectedValue.ToEntero, DdlFuenteFinanciamiento.SelectedValue.ToEntero, DdlTipoGasto.SelectedValue.ToEntero, DdlUnidadAdministrativa.SelectedValue.ToEntero, DdlClasificadorOG.SelectedValue.ToEntero, TxtTotal.Text.Trim.ToDouble, TxtEnero.Text.Trim.ToDouble, TxtFebrero.Text.Trim.ToDouble, TxtMarzo.Text.Trim.ToDouble, TxtAbril.Text.Trim.ToDouble, TxtMayo.Text.Trim.ToDouble, TxtJunio.Text.Trim.ToDouble, TxtJulio.Text.Trim.ToDouble, TxtAgosto.Text.Trim.ToDouble, TxtSeptiembre.Text.Trim.ToDouble, TxtOctubre.Text.Trim.ToDouble, TxtNoviembre.Text.Trim.ToDouble, TxtDiciembre.Text.Trim.ToDouble, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then 'Limpia Controles DdlProgramaOperativo.SelectedIndex = 0 DdlFuenteFinanciamiento.SelectedIndex = 0 DdlTipoGasto.SelectedIndex = 0 DdlUnidadAdministrativa.SelectedIndex = 0 DdlClasificadorOG.SelectedIndex = 0 TxtTotal.Text = "" TxtEnero.Text = "" TxtFebrero.Text = "" TxtMarzo.Text = "" TxtAbril.Text = "" TxtMayo.Text = "" TxtJunio.Text = "" TxtJulio.Text = "" TxtAgosto.Text = "" TxtSeptiembre.Text = "" TxtOctubre.Text = "" TxtNoviembre.Text = "" TxtDiciembre.Text = "" Alert("El nuevo Registro se guardó correctamente.", TipoMensaje.MsgInformacion) UpTitulos.Update() ViewState("DT_AC_PresupuestosEgresos") = ObjPresupuestoEgreso.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) If ViewState("Orden").ToString() <> String.Empty Then CargaGrid(ViewState("Orden").ToString()) Else CargaGrid("") End If End If ObjPresupuestoEgreso.Dispose() End Sub #Region " O R D E N" Protected Sub LbCveProgramaOperativo_Click(sender As Object, e As System.EventArgs) Handles LbProgramaOperativo.Click, ImgProgramaOperativo.Click If ViewState("OCveProgramaOperativo").ToString() = "CveProgramaOperativo DESC" Then ViewState("OCveProgramaOperativo") = "CveProgramaOperativo ASC" ImgProgramaOperativo.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OCveProgramaOperativo") = "CveProgramaOperativo DESC" ImgProgramaOperativo.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OCveProgramaOperativo") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbCveFuenteFinanciamiento_Click(sender As Object, e As System.EventArgs) Handles LbFuenteFinanciamiento.Click, ImgFuenteFinanciamiento.Click If ViewState("OCveFuenteFinanciamiento").ToString() = "CveFuenteFinanciamiento DESC" Then ViewState("OCveFuenteFinanciamiento") = "CveFuenteFinanciamiento ASC" ImgFuenteFinanciamiento.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OCveFuenteFinanciamiento") = "CveFuenteFinanciamiento DESC" ImgFuenteFinanciamiento.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OCveFuenteFinanciamiento") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbCveTipoGasto_Click(sender As Object, e As System.EventArgs) Handles LbTipoGasto.Click, ImgTipoGasto.Click If ViewState("OCveTipoGasto").ToString() = "CveTipoGasto DESC" Then ViewState("OCveTipoGasto") = "CveTipoGasto ASC" ImgTipoGasto.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OCveTipoGasto") = "CveTipoGasto DESC" ImgTipoGasto.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OCveTipoGasto") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbCveUnidadAdministrativa_Click(sender As Object, e As System.EventArgs) Handles LbUnidadAdministrativa.Click, ImgUnidadAdministrativa.Click If ViewState("OCveUnidadAdministrativa").ToString() = "CveUnidadAdministrativa DESC" Then ViewState("OCveUnidadAdministrativa") = "CveUnidadAdministrativa ASC" ImgUnidadAdministrativa.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OCveUnidadAdministrativa") = "CveUnidadAdministrativa DESC" ImgUnidadAdministrativa.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OCveUnidadAdministrativa") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbCveOGClasificacion_Click(sender As Object, e As System.EventArgs) Handles LbOGClasificacion.Click, ImgOGClasificacion.Click If ViewState("OCveOGClasificacion").ToString() = "CveOGClasificacion DESC" Then ViewState("OCveOGClasificacion") = "CveOGClasificacion ASC" ImgOGClasificacion.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OCveOGClasificacion") = "CveOGClasificacion DESC" ImgOGClasificacion.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OCveOGClasificacion") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbTotal_Click(sender As Object, e As System.EventArgs) Handles LbTotal.Click, ImgTotal.Click If ViewState("OTotal").ToString() = "Total DESC" Then ViewState("OTotal") = "Total ASC" ImgTotal.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OTotal") = "Total DESC" ImgTotal.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OTotal") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbEnero_Click(sender As Object, e As System.EventArgs) Handles LbEnero.Click, ImgEnero.Click If ViewState("OEnero").ToString() = "Enero DESC" Then ViewState("OEnero") = "Enero ASC" ImgEnero.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OEnero") = "Enero DESC" ImgEnero.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OEnero") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbFebrero_Click(sender As Object, e As System.EventArgs) Handles LbFebrero.Click, ImgFebrero.Click If ViewState("OFebrero").ToString() = "Febrero DESC" Then ViewState("OFebrero") = "Febrero ASC" ImgFebrero.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OFebrero") = "Febrero DESC" ImgFebrero.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OFebrero") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbMarzo_Click(sender As Object, e As System.EventArgs) Handles LbMarzo.Click, ImgMarzo.Click If ViewState("OMarzo").ToString() = "Marzo DESC" Then ViewState("OMarzo") = "Marzo ASC" ImgMarzo.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OMarzo") = "Marzo DESC" ImgMarzo.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OMarzo") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbAbril_Click(sender As Object, e As System.EventArgs) Handles LbAbril.Click, ImgAbril.Click If ViewState("OAbril").ToString() = "Abril DESC" Then ViewState("OAbril") = "Abril ASC" ImgAbril.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OAbril") = "Abril DESC" ImgAbril.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OAbril") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbMayo_Click(sender As Object, e As System.EventArgs) Handles LbMayo.Click, ImgMayo.Click If ViewState("OMayo").ToString() = "Mayo DESC" Then ViewState("OMayo") = "Mayo ASC" ImgMayo.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OMayo") = "Mayo DESC" ImgMayo.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OMayo") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbJunio_Click(sender As Object, e As System.EventArgs) Handles LbJunio.Click, ImgJunio.Click If ViewState("OJunio").ToString() = "Junio DESC" Then ViewState("OJunio") = "Junio ASC" ImgJunio.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OJunio") = "Junio DESC" ImgJunio.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OJunio") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbJulio_Click(sender As Object, e As System.EventArgs) Handles LbJulio.Click, ImgJulio.Click If ViewState("OJulio").ToString() = "Julio DESC" Then ViewState("OJulio") = "Julio ASC" ImgJulio.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OJulio") = "Julio DESC" ImgJulio.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OJulio") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbAgosto_Click(sender As Object, e As System.EventArgs) Handles LbAgosto.Click, ImgAgosto.Click If ViewState("OAgosto").ToString() = "Agosto DESC" Then ViewState("OAgosto") = "Agosto ASC" ImgAgosto.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OAgosto") = "Agosto DESC" ImgAgosto.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OAgosto") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbSeptiembre_Click(sender As Object, e As System.EventArgs) Handles LbSeptiembre.Click, ImgSeptiembre.Click If ViewState("OSeptiembre").ToString() = "Septiembre DESC" Then ViewState("OSeptiembre") = "Septiembre ASC" ImgSeptiembre.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OSeptiembre") = "Septiembre DESC" ImgSeptiembre.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OSeptiembre") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbOctubre_Click(sender As Object, e As System.EventArgs) Handles LbOctubre.Click, ImgOctubre.Click If ViewState("OOctubre").ToString() = "Octubre DESC" Then ViewState("OOctubre") = "Octubre ASC" ImgOctubre.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OOctubre") = "Octubre DESC" ImgOctubre.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OOctubre") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbNoviembre_Click(sender As Object, e As System.EventArgs) Handles LbNoviembre.Click, ImgNoviembre.Click If ViewState("ONoviembre").ToString() = "Noviembre DESC" Then ViewState("ONoviembre") = "Noviembre ASC" ImgNoviembre.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("ONoviembre") = "Noviembre DESC" ImgNoviembre.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("ONoviembre") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbDiciembre_Click(sender As Object, e As System.EventArgs) Handles LbDiciembre.Click, ImgDiciembre.Click If ViewState("ODiciembre").ToString() = "Diciembre DESC" Then ViewState("ODiciembre") = "Diciembre ASC" ImgDiciembre.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("ODiciembre") = "Diciembre DESC" ImgDiciembre.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("ODiciembre") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbFechaIng_Click(sender As Object, e As System.EventArgs) Handles LbFechaIng.Click, ImgFechaIng.Click If ViewState("OFechaIng").ToString() = "FechaIng DESC" Then ViewState("OFechaIng") = "FechaIng ASC" ImgFechaIng.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OFechaIng") = "FechaIng DESC" ImgFechaIng.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OFechaIng") CargaGrid(ViewState("Orden").ToString()) End Sub Protected Sub LbUsuario_Click(sender As Object, e As System.EventArgs) Handles LbUsuario.Click, ImgUsuario.Click If ViewState("OUsuario").ToString() = "Usuario DESC" Then ViewState("OUsuario") = "Usuario ASC" ImgUsuario.ImageUrl = "/Imagenes/FlechasArriba.gif" Else ViewState("OUsuario") = "Usuario DESC" ImgUsuario.ImageUrl = "/Imagenes/FlechasAbajo.gif" End If ViewState("Orden") = ViewState("OUsuario") 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(92) 'POA e.Row.Cells(1).Width = Unit.Pixel(112) 'Fuente Finan e.Row.Cells(2).Width = Unit.Pixel(112) 'Tipo de Gasto e.Row.Cells(3).Width = Unit.Pixel(112) 'Unidad Admin e.Row.Cells(4).Width = Unit.Pixel(122) 'COG e.Row.Cells(5).Width = Unit.Pixel(66) 'Tot e.Row.Cells(6).Width = Unit.Pixel(66) 'Ene e.Row.Cells(7).Width = Unit.Pixel(66) 'Feb e.Row.Cells(8).Width = Unit.Pixel(66) 'Mar e.Row.Cells(9).Width = Unit.Pixel(66) 'Abr e.Row.Cells(10).Width = Unit.Pixel(66) 'May e.Row.Cells(11).Width = Unit.Pixel(66) 'Jun e.Row.Cells(12).Width = Unit.Pixel(66) 'Jul e.Row.Cells(13).Width = Unit.Pixel(66) 'Ago e.Row.Cells(14).Width = Unit.Pixel(80) 'Sep e.Row.Cells(15).Width = Unit.Pixel(66) 'Oct e.Row.Cells(16).Width = Unit.Pixel(75) 'Nov e.Row.Cells(17).Width = Unit.Pixel(70) 'Dic e.Row.Cells(18).Width = Unit.Pixel(100) 'Fecha e.Row.Cells(19).Width = Unit.Pixel(100) 'Usuario e.Row.Cells(20).Width = Unit.Pixel(100) 'Editar e.Row.Cells(21).Width = Unit.Pixel(100) 'Eliminar End If e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left End If End Sub Protected Sub GvDatos_RowDeleting(sender As Object, e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvDatos.RowDeleting Dim ObjPresupuestoEgreso As New ClsAC If ObjPresupuestoEgreso.RemovePresupuestoEgreso(GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero) Then GvDatos.EditIndex = -1 ViewState("DT_AC_PresupuestosEgresos") = ObjPresupuestoEgreso.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) Alert("El Presupuesto de Egresos se eliminó correctamente.", TipoMensaje.MsgInformacion) End If ObjPresupuestoEgreso.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 ObjPresupuestoEgreso As New ClsAC Dim Departamento As String = DirectCast(GvDatos.Rows(e.RowIndex).FindControl("TxtDepartamento"), TextBox).Text.Trim Dim Estatus As Boolean = GvDatos.Rows(e.RowIndex).FCCheckBox("ChkEstatus").Checked Dim CveDepartamento As Integer = GvDatos.DataKeys(e.RowIndex).Value.ToString.ToEntero If ObjPresupuestoEgreso.UpdatePresupuestoEgreso(Departamento, Estatus, CveDepartamento) Then GvDatos.EditIndex = -1 ViewState("DT_AC_PresupuestosEgresos") = ObjPresupuestoEgreso.DtResultados.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion) End If ObjPresupuestoEgreso.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("DT_AC_PresupuestosEgresos"), DataTable), "", Orden, DataViewRowState.CurrentRows) GvDatos.DataSource = DV.ToTable() DV.Dispose() Else GvDatos.DataSource = CType(ViewState("DT_AC_PresupuestosEgresos"), DataTable) End If GvDatos.DataBind() UpDatos.Update() End Sub Protected Sub BtnAfectarPresupuesto_Click(sender As Object, e As EventArgs) Handles BtnAfectarPresupuesto.Click Dim Conta As New ClsContPAQi(UsuarioActual.Empresa) Conta.IniciaTransacSQL() Dim AC As New ClsAC AC.IniciaTransacSQL() 'registro las cuentas prespuestales por cada movimiento, si existe la ignoro Dim dtCuentas As DataTable = Nothing Dim IDPoliza As Integer Dim IdCuentaAprobado, IdCuentaPorEjercer, IdCuentaComprometido, IdCuentaDevengado, IdCuentaEjercido, IdCuentaPagado As Integer Dim Codigo As String Dim TieneError As Boolean = False 'hay que registrar una poliza de cargo en 821, aprobado contra Ley de egresos, luego registrar o de por ejercer If Conta.GetCuentas(-1, "-1", 1) Then dtCuentas = Conta.DtResultados End If Dim Total As Double = GvDatos.Rows.Cast(Of GridViewRow)().Sum(Function(gvr) gvr.DataKey("Total").ToDouble) IDPoliza = Conta.AddPoliza(123456, 4, "Aprobado", Total, Total, UsuarioActual.CveUsuario, Now) If IDPoliza > 0 Then For Each gvr As GridViewRow In GvDatos.Rows Codigo = String.Format("{0}-{1}", gvr.DataKey("ClaveProgramaOperativo"), gvr.DataKey("CodigoCOG")) 'Registro las cuentas afectables IdCuentaAprobado = FNCIDCuenta(dtCuentas, String.Format("821-{0}", Codigo)) If IdCuentaAprobado = 0 Then IdCuentaAprobado = Conta.AddCuenta(String.Format("821-{0}", Codigo), gvr.DataKey("ClasificadorOG"), "K", 0, 0, 1, 1, 602) IdCuentaPorEjercer = FNCIDCuenta(dtCuentas, String.Format("822-{0}", Codigo)) If IdCuentaPorEjercer = 0 Then IdCuentaPorEjercer = Conta.AddCuenta(String.Format("822-{0}", Codigo), gvr.DataKey("ClasificadorOG"), "K", 0, 0, 1, 1, 603) IdCuentaComprometido = FNCIDCuenta(dtCuentas, String.Format("824-{0}", Codigo)) If IdCuentaComprometido = 0 Then IdCuentaComprometido = Conta.AddCuenta(String.Format("824-{0}", Codigo), gvr.DataKey("ClasificadorOG"), "K", 0, 0, 1, 1, 605) IdCuentaDevengado = FNCIDCuenta(dtCuentas, String.Format("825-{0}", Codigo)) If IdCuentaDevengado = 0 Then IdCuentaDevengado = Conta.AddCuenta(String.Format("825-{0}", Codigo), gvr.DataKey("ClasificadorOG"), "K", 0, 0, 1, 1, 606) IdCuentaEjercido = FNCIDCuenta(dtCuentas, String.Format("826-{0}", Codigo)) If IdCuentaEjercido = 0 Then IdCuentaEjercido = Conta.AddCuenta(String.Format("826-{0}", Codigo), gvr.DataKey("ClasificadorOG"), "K", 0, 0, 1, 1, 607) IdCuentaPagado = FNCIDCuenta(dtCuentas, String.Format("827-{0}", Codigo)) If IdCuentaPagado = 0 Then IdCuentaPagado = Conta.AddCuenta(String.Format("827-{0}", Codigo), gvr.DataKey("ClasificadorOG"), "K", 0, 0, 1, 1, 608) Total = gvr.DataKey("Total").ToDouble If Conta.AddMovimiento(123456, IDPoliza, IdCuentaAprobado, True, Total, "", "", 0, Now, "") Then 'actualizo el idcuenta del presupuesto If Not Conta.AddMovimiento(123456, IDPoliza, IdCuentaPorEjercer, False, Total, "", "", 0, Now, "") Then TieneError = True Exit For End If If Not AC.UpdateCuentasPresupuestoEgresos(IdCuentaAprobado, IdCuentaPorEjercer, IdCuentaComprometido, IdCuentaDevengado, IdCuentaEjercido, IdCuentaPagado, gvr.DataKey("CvePresupuestoEgreso").ToEntero) Then TieneError = True Exit For End If Else TieneError = True Exit For End If Next Else TieneError = True End If If Not TieneError Then 'actualizo las cuentas de cadapresupuesto AC.Commit() Conta.Commit() Alert("Movimientos Guardados") Else Conta.RollBack() AC.RollBack() End If Conta.Dispose() AC.Dispose() End Sub Private Function FNCIDCuenta(dt As DataTable, codigo As String) As Integer Dim Retorno As Integer = 0 Dim dr As DataRow dr = dt.FiltroPrimero(String.Format("Codigo ='{0}'", codigo)) If dr IsNot Nothing Then Retorno = dr("Id").ToString.ToEntero End If Return Retorno End Function End Class