Option Explicit On Option Strict On Imports Extensiones Imports System.Data Partial Class AF_RepDepreciacion Inherits ClsPaginas #Region "PROPIEDADES" #End Region Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not Page.IsPostBack Then txtFechaI.Text = DateTime.Now.AddMonths(1).AddDays(-1).ToString("dd/MM/yyyy") End If End Sub Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click CargaDatos() If GvDatos.Rows.Count = 0 Then Alert("No se encontraron Registros con los filtros actuales.", TipoMensaje.MsgAdvertencia) End Sub Protected Sub BtnGenerarDepreciacion_Click(sender As Object, e As System.EventArgs) Handles BtnGenerarDepreciacion.Click If GvDatos.Rows.Count > 0 Then Dim CveActivoFijo As Integer Dim ObjInventario As New ClsInventarios Dim ObjConta As New ClsContabilidad(ObjInventario.IniciaTransacSQL()) Dim ErrorMovInv As Boolean = False Dim ConceptoPoliza As String = String.Format("Depreciación - {0}", txtFechaI.Text) Dim CveSubProyecto As Integer = DdlSubProyecto.SelectedValue.ToEntero Dim CvePrePoliza = ObjConta.AddPrePolizas("Depreciacion", 74, 0, 0, 1, txtFechaI.Text.ToDate, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) For Each RowsDt As GridViewRow In GvDatos.Rows CveActivoFijo = RowsDt.DataKey("CveActivoFijo").ToEntero Dim MontoDepreciacion As Decimal = RowsDt.FCLiteral("LtlDepreciacionMensual").Text.ToDecimal If MontoDepreciacion > 0 And CveActivoFijo <> 0 Then Dim ConceptoPolizaDetalle As String = String.Format("Depreciación - {0} - {1}", txtFechaI.Text, RowsDt.FCLiteral("LtlDescripcion").Text) If CvePrePoliza > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, -MontoDepreciacion, -MontoDepreciacion, 270, ConceptoPolizaDetalle, ConceptoPolizaDetalle, 0, CveActivoFijo:=CveActivoFijo, CveSubProyecto:=CveSubProyecto) Then ErrorMovInv = True Exit For End If If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, MontoDepreciacion, MontoDepreciacion, 101, ConceptoPolizaDetalle, ConceptoPolizaDetalle, 0, CveActivoFijo:=CveActivoFijo, CveSubProyecto:=CveSubProyecto) Then ErrorMovInv = True Exit For End If Else ErrorMovInv = True Exit For End If End If Next If ErrorMovInv = False Then ObjInventario.Commit() ObjInventario.Dispose() ObjConta.Dispose() Dim MensajeAlert As New StringBuilder MensajeAlert.Append("Se ha generado la depreciación") MensajeAlert.AppendFormat("

ver PrePóliza", CvePrePoliza) Alert(MensajeAlert.ToString, TipoMensaje.MsgInformacion) Else ObjInventario.RollBack() ObjInventario.Dispose() ObjConta.Dispose() End If Else Alert("Debera consultar la informacion previo a la generacion de la depreciación", TipoMensaje.MsgAdvertencia) End If End Sub Protected Sub BtnDepreciacion_Click(sender As Object, e As EventArgs) Handles BtnDepreciacion.Click CargaProyecto() UpModalTiposD.Update() RegistraScript(String.Format("$('#{0}').modal();", "DivDepreciacion")) End Sub Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles DdlProyecto.SelectedIndexChanged CargaSubProyecto() End Sub #Region " C A R G A - D A T O S " Public Sub CargaDatos() Dim ObjAF As New ClsAF If ObjAF.GetRepActivosFijosDepreciacion(UsuarioActual.CveEmpresa, txtFechaI.Text.ToDate) Then GvDatos.DataSource = ObjAF.DtResultados GvDatos.DataBind() UPDatos.Update() End If ObjAF.Dispose() End Sub #End Region #Region "G V - D A T O S " 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.DataKey("CveActivoFijo") = "0" Then e.Row.BackColor = System.Drawing.Color.LightGray e.Row.Font.Bold = True e.Row.Font.Size = 10 e.Row.FCLiteral("LtlDepreciacion").Text = "%" End If End If End Sub #End Region #Region "CARGA COMBOS FILTRO" Private Sub CargaProyecto() DdlProyecto.DataSource = GlobalDTProyectos(UsuarioActual.Empresa.CveEmpresa).FiltraParametros("", "", {"CveProyecto", "Proyecto"}) DdlProyecto.DataBind() CargaSubProyecto() End Sub Private Sub CargaSubProyecto() DdlSubProyecto.Items.Clear() DdlSubProyecto.DataSource = GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero) DdlSubProyecto.DataBind() DdlSubProyecto.Items.Insert(0, New ListItem("Seleccione", "-1")) End Sub #End Region #Region "DDLS SELECTED INDEX CHANGED" #End Region End Class