diff --git a/Acumuladores/RepAcumuladoresVigencia.aspx b/Acumuladores/RepAcumuladoresVigencia.aspx new file mode 100644 index 000000000..2ec474f82 --- /dev/null +++ b/Acumuladores/RepAcumuladoresVigencia.aspx @@ -0,0 +1,104 @@ +<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/Site.master" CodeFile="RepAcumuladoresVigencia.aspx.cs" Inherits="Acumuladores_RepAcumuladoresVigencia" %> + + + + + + + Reporte de Vigencia de Acumuladores + + + + +<%--
  • + Generar PDF +
  • --%> +
  • + Exportar Excel +
  • +
    + + + + + +
    +
    +
    + + +
    +
    +
    + +
    + +
    + +
    + +
    + +
    +
    + + + + +
    + + + + + + +
    + +
    +
    + + + + +
    + + + + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    + " style="display: inline-block; margin-right: -20px; width: 200px;" /> + " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> +
    +
    +
    +
    + + + + + + + + + + + + + + +
    + + + diff --git a/Acumuladores/RepAcumuladoresVigencia.aspx.cs b/Acumuladores/RepAcumuladoresVigencia.aspx.cs new file mode 100644 index 000000000..1d388aa4c --- /dev/null +++ b/Acumuladores/RepAcumuladoresVigencia.aspx.cs @@ -0,0 +1,99 @@ +using Extensiones; +using System; +using System.Web.UI.WebControls; + +public partial class Acumuladores_RepAcumuladoresVigencia : ClsPaginas +{ + #region PROPIEDADES + private bool Consultado + { + get { return Consultado = (bool)ViewState["Consultado"]; } + set { ViewState["Consultado"] = value; } + } + #endregion + + #region Exporta Excel PDF + protected void LnkExcel_Click(object sender, EventArgs e) + { + if (Consultado) + { + GvAcum.ExportToExcelG("RepAcumuladoresVigencia " + DateTime.Now.ToString("dd-MM-yyyy"), "Reporte de Vigencia de Acumuladores", UsuarioActual); + } + else + { + Alert("Por favor realice una consulta primero."); + } + } + /* + protected void LnkPdf_Click(object sender, EventArgs e) + { + if (Consultado) + { + GvAcum.GenerarReportePDF("Reporte de Autorizaciones de Ventas"); + } + else + { + Alert("Por favor realice una consulta primero."); + } + }*/ + public override void VerifyRenderingInServerForm(System.Web.UI.Control control) + { + } +#endregion + + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + InicializaValores(); + } + } + + private void InicializaValores() + { + Consultado = false; + CargaCombos(); + txtFechaI.Text = DateTime.Now.FirstDayOfMonth().AddMonths(-24).ToShortDateString(); + txtFechaF.Text = DateTime.Now.LastDayOfMonth().AddMonths(-6).ToShortDateString(); + UpFiltros.Update(); + } + + private void CargaCombos() + { + CargarCentrosDeCosto(null, DdlSubProyecto, null, LblSubProyecto); + DdlClasificaciones.DataSource = get_GlobalDTClasificaciones(UsuarioActual.CveEmpresa); + DdlClasificaciones.DataBind(); + DdlClasificaciones.Items.Insert(0, new ListItem("Todos", "-1")); + } + + protected void BtnConsultar_Click(object sender, EventArgs e) + { + Consulta(); + Consultado = true; + } + + private void Consulta() + { + ClsAcumuladores ObjAcum = new ClsAcumuladores(); + + if (ObjAcum.GetVigencias(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), DdlClasificaciones.SelectedValue.ToEntero(), UsuarioActual.CveEmpresa, DdlSubProyecto.SelectedValue.ToEntero())) + { + GvAcum.DataSource = ObjAcum.DtResultados; + } + ObjAcum.Dispose(); + GvAcum.DataBind(); + UpDatos.Update(); + } + + /*protected void GvAcum_RowDataBound(object sender, GridViewRowEventArgs e) + { + if (e.Row.RowType == DataControlRowType.DataRow) + { + if (e.Row.RowIndex == 0) + { + e.Row.Cells[0].Text = "Total"; + e.Row.CssClass = "Totales"; + } + } + }*/ +} \ No newline at end of file diff --git a/App_Code/ClsAcumuladores.vb b/App_Code/ClsAcumuladores.vb index 1fbcf36dd..354172fa2 100644 --- a/App_Code/ClsAcumuladores.vb +++ b/App_Code/ClsAcumuladores.vb @@ -1312,11 +1312,35 @@ Public Class ClsAcumuladores End Try Return Retorno - End Function - - + End Function + +#Region "VIGENCIA ACUMULADORES" + Public Function GetVigencias(FechaInicio As Date, FechaFin As Date, CveClasificacion As Integer, CveEmpresa As Integer, CveSubProyecto As Integer) As Boolean + Dim Retorno As Boolean = False + SqlDataAdapter("PA_Inv_ProductosFechasComprasSerie") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CveClasificacion", SqlDbType.Int).Value = CveClasificacion + .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto + .Add("@FechaIni", SqlDbType.Date).Value = FechaInicio + .Add("@FechaFin", SqlDbType.Date).Value = FechaFin + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch ex As Exception + OnError("Ocurrió un error al consultar los productos por serie.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + End Function + +#End Region + #Region " IDisposable Support " - ' IDisposable + ' IDisposable Protected Overridable Sub Dispose(ByVal disposing As Boolean) If Not disposedValue Then If disposing Then diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index bf0830527..6458bcae7 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -9354,6 +9354,8 @@ Public Class ClsPaginas PaginaDict.Add("/Acumuladores/RepEntradasUsadosClientes.aspx".ToUpper(), 543) PaginaDict.Add("/Acumuladores/EntradasUsadosResumenRep.aspx".ToUpper(), 1032) PaginaDict.Add("/Acumuladores/RepPolizasVirtuales.aspx".ToUpper(), 1322) + PaginaDict.Add("/Acumuladores/RepAcumuladoresVigencia.aspx".ToUpper(), 174) + #End Region 'Antes de aquí. Application("GlobalSIGAppPaginas") = PaginaDict diff --git a/Bancos/ProveedoresAbonar.aspx.vb b/Bancos/ProveedoresAbonar.aspx.vb index 27467a8c7..6d4a4732f 100644 --- a/Bancos/ProveedoresAbonar.aspx.vb +++ b/Bancos/ProveedoresAbonar.aspx.vb @@ -1861,6 +1861,9 @@ Partial Class Bancos_ProveedoresAbonar Dim EsContabilizable As Boolean = If(UsuarioActual.CveEmpresa.Contiene(13, 83), False, True) + CvePrePoliza = ObjConta.AddPrePolizas("Bancos/ProveedoresAbonar/Saldar", 98, 0, 0, 1, TxtFechaIncobrable.Text.ToDate, "Saldado de facturas", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + + For Each gr As GridViewRow In GvCxP.Rows If gr.FCCheckBox("Chk").Checked Then Dim IdCtaContable As Integer = CtaProveedor @@ -1889,7 +1892,6 @@ Partial Class Bancos_ProveedoresAbonar Dim ConceptoPartida As String = String.Format("Saldar compra {0}", gr.DataKey("SerieFolio").ToString) - CvePrePoliza = ObjConta.AddPrePolizas("Bancos/ProveedoresAbonar/Saldar", 98, gr.DataKey("Saldo").ToDecimal, gr.DataKey("Saldo").ToDecimal, gr.DataKey("CveMoneda").ToEntero, TxtFechaIncobrable.Text.ToDate, ConceptoPartida, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) If CveMoneda > 1 AndAlso (IdCtaContComplementaria > 0 Or UsaComplementariaProveedores) Then IdCtaContable = IdCtaContComplementaria diff --git a/Bancos/Transferencias.aspx.vb b/Bancos/Transferencias.aspx.vb index e198bbd5b..e649693cd 100644 --- a/Bancos/Transferencias.aspx.vb +++ b/Bancos/Transferencias.aspx.vb @@ -404,6 +404,21 @@ Partial Class Bancos_Transferencias End If End If + + If MsgError = "" Then + If ObjMov.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then + If ObjMov.ValorPolizaDescuadre > 0 Then + MsgError = ObjMov.MensajePolizaDescuadre + GuardaLogAD($"Bancos/Transferencias | Error:{ObjMov.MensajePolizaDescuadre} Diferencia:{ObjMov.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas") + End If + Else + MsgError = "No se pudo validar la prepoliza de cuadre." + End If + End If + + + + If MsgError = "" Then 'Conta ContPAQ @@ -449,16 +464,7 @@ Partial Class Bancos_Transferencias - If MsgError = "" Then - If ObjMov.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then - If ObjMov.ValorPolizaDescuadre > 0 Then - MsgError = ObjMov.MensajePolizaDescuadre - GuardaLogAD($"Bancos/Transferencias | Error:{ObjMov.MensajePolizaDescuadre} Diferencia:{ObjMov.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas") - End If - Else - MsgError = "No se pudo validar la prepoliza de cuadre." - End If - End If + If MsgError = "" Then diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index aa2a73f8c..7c6924bcf 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -16597,7 +16597,7 @@ Partial Class Compras_Compras 'HACEMOS CALCULOS SubTotalIVA = TmpDT.SUM("IVA") SubTotalIEPSIVA = TmpDT.SUM("IEPSPSIVA") - SubTotal = TmpDT.SUM("Total") + TmpDT.SUM("Descuento") + SubTotal = (TmpDT.SUM("Total") + TmpDT.SUM("Descuento")).RoundSQL(6) RetIVA = TmpDT.SUM("RetIVA") RetISR = TmpDT.SUM("RetISR") IEPSPS = TmpDT.SUM("IEPSPS") diff --git a/Compras/RepNotasCredito.aspx.vb b/Compras/RepNotasCredito.aspx.vb index 927d8eaea..e406e456b 100644 --- a/Compras/RepNotasCredito.aspx.vb +++ b/Compras/RepNotasCredito.aspx.vb @@ -130,6 +130,8 @@ Partial Class Compras_RepNotasCredito Dim UsaComplementaria As Boolean = UsuarioActual.CveEmpresa.Contiene(119) Dim MensajeAlert = New StringBuilder + CvePrePoliza = ObjConta.AddPrePolizas("Compras/RepNotasCredito", 103, 0, 0, 1, TxtFechaSaldar.Text.ToDate, Concepto, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + For Each gr As GridViewRow In GvDatos.Rows If gr.FCCheckBox("Chk").Checked Then IdCtaContable = 0 @@ -139,9 +141,6 @@ Partial Class Compras_RepNotasCredito TCCompra = gr.DataKey("TipoCambio").ToDecimal CveMoneda = gr.DataKey("CveMoneda").ToEntero - CvePrePoliza = ObjConta.AddPrePolizas("Compras/RepNotasCredito", 103, gr.DataKey("Saldo").ToDecimal, gr.DataKey("Saldo").ToDecimal, gr.DataKey("CveMoneda").ToEntero, TxtFechaSaldar.Text.ToDate, "Saldado manual", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) - - If CveMoneda > 1 Then IdCtaContable = gr.DataKey("IdCtaContExtranjera").ToEntero ImporteMN = (gr.DataKey("Saldo").ToDecimal * TCCompra).RoundSQL diff --git a/Contabilidad2/RepEstadoResultadosHorizontal.aspx b/Contabilidad2/RepEstadoResultadosHorizontal.aspx index 5f9ffb583..30ee612d3 100644 --- a/Contabilidad2/RepEstadoResultadosHorizontal.aspx +++ b/Contabilidad2/RepEstadoResultadosHorizontal.aspx @@ -65,24 +65,25 @@
    +
    -
    -
      +
      +
      - +
      - +
      - +
      @@ -101,39 +102,53 @@
      -
      - -
      - - NO - Trimestre - Cuatrimestre - -
      - -
    +
    + + diff --git a/Contabilidad2/RepEstadoResultadosHorizontal.aspx.vb b/Contabilidad2/RepEstadoResultadosHorizontal.aspx.vb index 31d2fdcd8..646220e6c 100644 --- a/Contabilidad2/RepEstadoResultadosHorizontal.aspx.vb +++ b/Contabilidad2/RepEstadoResultadosHorizontal.aspx.vb @@ -1958,6 +1958,8 @@ Partial Class Contabilidad_RepEstadoResultadosHorizontal DtGastosSubProyectoH = DtDatosSubProyectoH.FiltraParametros("Tipo ='G' ") DTTotalesSubProyectoH = DtDatosSubProyectoH.Clone() + + Dim Row As DataRow = DtIngresosSubProyectoH.NewRow Dim TotalActual = 0.0, TotalAnterior = 0.0 @@ -1988,81 +1990,80 @@ Partial Class Contabilidad_RepEstadoResultadosHorizontal Next listaCampos.Clear() - If DtIngresosSubProyectoH.Rows.Count > 0 Then + Dim DTProcesaColumnas As DataTable = If(DtIngresosSubProyectoH.Rows.Count > 0, DtIngresosSubProyectoH, DtGastosSubProyectoH) - For Each dColumn As DataColumn In DtIngresosSubProyectoH.Columns + For Each dColumn As DataColumn In DTProcesaColumnas.Columns + + If IndexData >= 13 Then + + If IndexSubProyecto <= IndexSubProyectoMax Then + + If GvIngresosSubProyectoH.Columns(IndexGv).GetType.Name = "BoundField" Then + + CType(GvIngresosSubProyectoH.Columns(IndexGv), BoundField).DataField = dColumn.ColumnName + GvIngresosSubProyectoH.Columns(IndexGv).Visible = True + + CType(GvTotalesSubProyectoH.Columns(IndexGv), BoundField).DataField = dColumn.ColumnName + GvTotalesSubProyectoH.Columns(IndexGv).Visible = True + + CType(GvGastosSubProyectoH.Columns(IndexGv), BoundField).DataField = dColumn.ColumnName + GvGastosSubProyectoH.Columns(IndexGv).Visible = True + + If IndexSubProyecto <= IndexSubProyectoMax Then + + Dim TxtSub As String = GlobalDTSubProyectos(-1, CveSubProyecto:=dColumn.ColumnName.ToEntero, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("SubProyecto") + + If dColumn.ColumnName = "SinSubProyecto" Then + TxtSub = "Sin SubProyecto" + End If + CType(GvIngresosSubProyectoH.Columns(IndexGv), BoundField).HeaderText = TxtSub + CType(GvTotalesSubProyectoH.Columns(IndexGv), BoundField).HeaderText = TxtSub + CType(GvGastosSubProyectoH.Columns(IndexGv), BoundField).HeaderText = TxtSub + CType(GvIngresosSubProyectoH.Columns(IndexGv + 1), BoundField).HeaderText = "%" + CType(GvTotalesSubProyectoH.Columns(IndexGv + 1), BoundField).HeaderText = "%" + CType(GvGastosSubProyectoH.Columns(IndexGv + 1), BoundField).HeaderText = "%" + If (dColumn.ColumnName.ToString.ToEntero > 0 Or dColumn.ColumnName = "SinSubProyecto") Then + CType(GvIngresosSubProyectoH.Columns(IndexGv + 1), BoundField).DataField = $"Porcentaje{dColumn.ColumnName}" + GvIngresosSubProyectoH.Columns(IndexGv + 1).Visible = True + CType(GvTotalesSubProyectoH.Columns(IndexGv + 1), BoundField).DataField = $"Porcentaje{dColumn.ColumnName}" + GvTotalesSubProyectoH.Columns(IndexGv + 1).Visible = True + CType(GvGastosSubProyectoH.Columns(IndexGv + 1), BoundField).DataField = $"Porcentaje{dColumn.ColumnName}" + GvGastosSubProyectoH.Columns(IndexGv + 1).Visible = True + End If - If IndexData >= 13 Then - - If IndexSubProyecto <= IndexSubProyectoMax Then - - If GvIngresosSubProyectoH.Columns(IndexGv).GetType.Name = "BoundField" Then - - CType(GvIngresosSubProyectoH.Columns(IndexGv), BoundField).DataField = dColumn.ColumnName - GvIngresosSubProyectoH.Columns(IndexGv).Visible = True - - CType(GvTotalesSubProyectoH.Columns(IndexGv), BoundField).DataField = dColumn.ColumnName - GvTotalesSubProyectoH.Columns(IndexGv).Visible = True - - CType(GvGastosSubProyectoH.Columns(IndexGv), BoundField).DataField = dColumn.ColumnName - GvGastosSubProyectoH.Columns(IndexGv).Visible = True - - If IndexSubProyecto <= IndexSubProyectoMax Then - - Dim TxtSub As String = GlobalDTSubProyectos(-1, CveSubProyecto:=dColumn.ColumnName.ToEntero, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("SubProyecto") - - If dColumn.ColumnName = "SinSubProyecto" Then - TxtSub = "Sin SubProyecto" - End If - - - CType(GvIngresosSubProyectoH.Columns(IndexGv), BoundField).HeaderText = TxtSub - CType(GvTotalesSubProyectoH.Columns(IndexGv), BoundField).HeaderText = TxtSub - CType(GvGastosSubProyectoH.Columns(IndexGv), BoundField).HeaderText = TxtSub - - CType(GvIngresosSubProyectoH.Columns(IndexGv + 1), BoundField).HeaderText = "%" - CType(GvTotalesSubProyectoH.Columns(IndexGv + 1), BoundField).HeaderText = "%" - CType(GvGastosSubProyectoH.Columns(IndexGv + 1), BoundField).HeaderText = "%" - - If (dColumn.ColumnName.ToString.ToEntero > 0 Or dColumn.ColumnName = "SinSubProyecto") Then - CType(GvIngresosSubProyectoH.Columns(IndexGv + 1), BoundField).DataField = $"Porcentaje{dColumn.ColumnName}" - GvIngresosSubProyectoH.Columns(IndexGv + 1).Visible = True - CType(GvTotalesSubProyectoH.Columns(IndexGv + 1), BoundField).DataField = $"Porcentaje{dColumn.ColumnName}" - GvTotalesSubProyectoH.Columns(IndexGv + 1).Visible = True - CType(GvGastosSubProyectoH.Columns(IndexGv + 1), BoundField).DataField = $"Porcentaje{dColumn.ColumnName}" - GvGastosSubProyectoH.Columns(IndexGv + 1).Visible = True - End If - - End If - listaCampos.Add(New String() {dColumn.ColumnName.ToString(), DTSubProyectosCabecerasH.Rows(IndexSubProyecto)(0).ToString()}) End If - - Else - If IndexGv < GvIngresosSubProyectoH.Columns.Count Then - GvIngresosSubProyectoH.Columns(IndexGv).Visible = False - GvTotalesSubProyectoH.Columns(IndexGv).Visible = False - Else - Exit For - End If - + listaCampos.Add(New String() {dColumn.ColumnName.ToString(), DTSubProyectosCabecerasH.Rows(IndexSubProyecto)(0).ToString()}) End If - IndexGv = IndexGv + 2 - IndexSubProyecto = IndexSubProyecto + 1 - IndexMax = IndexMax + 1 + Else + If IndexGv < GvIngresosSubProyectoH.Columns.Count Then + GvIngresosSubProyectoH.Columns(IndexGv).Visible = False + GvTotalesSubProyectoH.Columns(IndexGv).Visible = False + Else + Exit For + End If End If - IndexData = IndexData + 1 - If dColumn.ColumnName = "SinSubProyecto" Then - Exit For - End If + IndexGv = IndexGv + 2 + IndexSubProyecto = IndexSubProyecto + 1 + IndexMax = IndexMax + 1 - Next + End If + IndexData = IndexData + 1 + + If dColumn.ColumnName = "SinSubProyecto" Then + Exit For + End If + + Next + + + If DtIngresosSubProyectoH.Rows.Count > 0 Then For Each dr As DataRow In DtIngresosSubProyectoH.FiltraParametros("Not CtaMayor In (3,4)").Rows @@ -2074,7 +2075,12 @@ Partial Class Contabilidad_RepEstadoResultadosHorizontal For IndexData = 13 To IndexTotales If DtIngresosSubProyectoH.Columns(IndexData).ColumnName.ToEntero > 0 Then 'filtro solo los que tienen número Row.Item(IndexData) = DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "Not CtaMayor In (3,4)") - Row.Item($"Porcentaje{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}") = DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (3,4)") * 100 / DtIngresosSubProyectoH.SUM("ImporteAcumulado", "NOT CtaMayor in (3,4)") + + If DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (3,4)") <> 0 Then + Row.Item($"Porcentaje{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}") = DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (3,4)") * 100 / DtIngresosSubProyectoH.SUM("ImporteAcumulado", "NOT CtaMayor in (3,4)") + Else + Row.Item($"Porcentaje{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}") = "0" + End If End If Next @@ -2091,6 +2097,15 @@ Partial Class Contabilidad_RepEstadoResultadosHorizontal CountDinamicoSubProyecto = DtIngresosSubProyectoH.MAX("CountDinamico").ToEntero DtIngresosSubProyectoH.Rows.Add(Row) Else + + + + Row.Item("Nombre") = "INGRESOS " + Row.Item("ImporteActual") = "0.00" + Row.Item("ImporteAcumulado") = "0.00" + Row.Item("CtaMayor") = -1 + DtIngresosSubProyectoH.Rows.Add(Row) + Row.Item("Nombre") = "TOTAL INGRESOS " Row.Item("ImporteActual") = "0.00" Row.Item("ImporteAcumulado") = "0.00" @@ -2113,14 +2128,22 @@ Partial Class Contabilidad_RepEstadoResultadosHorizontal For IndexData = 13 To IndexTotales If DtIngresosSubProyectoH.Columns(IndexData).ColumnName.ToEntero > 0 Then 'filtro solo los que tienen número Row.Item(IndexData) = DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "Not CtaMayor In (-1,3,4)") - DtGastosSubProyectoH.SUM($"[{DtGastosSubProyectoH.Columns(IndexData).ColumnName}]", "Not CtaMayor In (-1,3,4)") - Row.Item($"Porcentaje{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}") = DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (-1, 3,4)") * 100 / DtIngresosSubProyectoH.SUM("ImporteAcumulado", "NOT CtaMayor in (-1,3,4)") + + 'Row.Item($"Porcentaje{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}") = DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (-1, 3,4)") * 100 / DtIngresosSubProyectoH.SUM("ImporteAcumulado", "NOT CtaMayor in (-1,3,4)") + + If DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (-1, 3,4)").ToDecimal <> 0 Then + Row.Item($"Porcentaje{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}") = DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (-1, 3,4)") * 100 / DtIngresosSubProyectoH.SUM("ImporteAcumulado", "NOT CtaMayor in (-1,3,4)") + Else + Row.Item($"Porcentaje{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}") = "0" + End If + End If Next Row.Item("Nombre") = "Resultado del ejercicio" Row.Item("ImporteAcumulado") = DtIngresosSubProyectoH.SUM($"ImporteAcumulado", "Not CtaMayor In (-1,3,4)") - DtGastosSubProyectoH.SUM($"ImporteAcumulado", "Not CtaMayor In (-1,3,4)") Row.Item("CtaMayor") = -2 - Row.Item("CountDinamico") = DtIngresosSubProyectoH.MAX("CountDinamico") + Row.Item("CountDinamico") = DtIngresosSubProyectoH.MAX("CountDinamico").ToString.ToEntero DTTotalesSubProyectoH.Rows.Add(Row) diff --git a/CxC/RepCxCDetalle.aspx b/CxC/RepCxCDetalle.aspx index 74f316653..461834c4f 100644 --- a/CxC/RepCxCDetalle.aspx +++ b/CxC/RepCxCDetalle.aspx @@ -536,16 +536,17 @@ - - + + - - + + + @@ -675,7 +676,8 @@ - + + diff --git a/CxC/RepCxCDetalle.aspx.vb b/CxC/RepCxCDetalle.aspx.vb index 5ba337a5c..a62db7b56 100644 --- a/CxC/RepCxCDetalle.aspx.vb +++ b/CxC/RepCxCDetalle.aspx.vb @@ -265,7 +265,7 @@ Partial Class RepCxCDetalle DdlSubProyecto.DataBind() 'CargaUsuarios - DdlUsuario.DataSource = GlobalDTUsuarios.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) + DdlUsuario.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa) DdlUsuario.DataBind() 'CargaResponsable @@ -878,6 +878,12 @@ Partial Class RepCxCDetalle GvDatos.Columns(46).Visible = False End If + If ChkContrato.Checked Then + GvDatos.Columns(47).Visible = True + SePersonalizo = 1 + Else + GvDatos.Columns(47).Visible = False + End If If SePersonalizo = 1 Then diff --git a/Empresas/119/Formatos/RepIVAAcreditable.rpt b/Empresas/119/Formatos/RepIVAAcreditable.rpt index 33999cb6e..2874e9072 100644 Binary files a/Empresas/119/Formatos/RepIVAAcreditable.rpt and b/Empresas/119/Formatos/RepIVAAcreditable.rpt differ diff --git a/Finanzas/RepEstadoResultadosHorizontal.aspx b/Finanzas/RepEstadoResultadosHorizontal.aspx index b0e8ca8ee..e7d6ed794 100644 --- a/Finanzas/RepEstadoResultadosHorizontal.aspx +++ b/Finanzas/RepEstadoResultadosHorizontal.aspx @@ -76,7 +76,13 @@
  • SubProyecto:
  • -
  • Divisor: + + + + + - + + diff --git a/Inventarios/EntradasSalidas.aspx b/Inventarios/EntradasSalidas.aspx index 35e7c1ee6..0f41c1d1d 100644 --- a/Inventarios/EntradasSalidas.aspx +++ b/Inventarios/EntradasSalidas.aspx @@ -35,10 +35,6 @@ } } - #C_myhidenbutton { - display: none; - } - .psagregar { width: 100%; text-align: center; @@ -1790,12 +1786,12 @@
    - + -
    - - + <%--
    --%> + +
    diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb index 4dbb0e04f..c30cfc4bb 100644 --- a/Inventarios/EntradasSalidas.aspx.vb +++ b/Inventarios/EntradasSalidas.aspx.vb @@ -3464,7 +3464,6 @@ Partial Class Inventarios_EntradasSalidas DdlAlmacen.SelectedValueExist(UsuarioActual.CveAlmacen) End If - If UsuarioActual.Empresa.Funcionalidad(590) = "1" Then TrSubProyectoActivoFijo.Visible = True CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyecto, "Seleccione Uno") @@ -3473,6 +3472,11 @@ Partial Class Inventarios_EntradasSalidas CargaCultivos() End If + If UsuarioActual.Empresa.Funcionalidad(267) = "1" Then 'citrícola + TrSubProyectoActivoFijo.Visible = True + CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyecto, "Seleccione Uno") + End If + TrActivoFijo.Visible = True DdlActivoFijo.Items.Clear() diff --git a/Nomina/ConceptoNomina.aspx.cs b/Nomina/ConceptoNomina.aspx.cs index a77ff6052..db804f5e9 100644 --- a/Nomina/ConceptoNomina.aspx.cs +++ b/Nomina/ConceptoNomina.aspx.cs @@ -296,10 +296,14 @@ public partial class Nomina_CatConcepto : ClsPaginas DdlCtaContable.DataSource = ObjConta.DtResultados; DdlCtaContable.DataBind(); + DdlCtaContableB.DataSource = ObjConta.DtResultados; + DdlCtaContableB.DataBind(); } } DdlCtaContable.Items.Insert(0, new ListItem("Seleccione", "-1")); DdlCtaContable.SelectedValueExist("-1"); + DdlCtaContableB.Items.Insert(0, new ListItem("Seleccione", "-1")); + DdlCtaContableB.SelectedValueExist("-1"); } } diff --git a/Nomina/Nomina.aspx b/Nomina/Nomina.aspx index 42f536c76..4a1ef2c08 100644 --- a/Nomina/Nomina.aspx +++ b/Nomina/Nomina.aspx @@ -413,6 +413,14 @@ DataTextField="TipoTrabajadorB" DataValueField="CveTipoTrabajador" ValidationGroup="GrpGuardar">
    + + +
    + + + + +
    diff --git a/Nomina/Nomina.aspx.cs b/Nomina/Nomina.aspx.cs index c61970803..0cc9067cb 100644 --- a/Nomina/Nomina.aspx.cs +++ b/Nomina/Nomina.aspx.cs @@ -249,7 +249,8 @@ public partial class Nomina_Nomina2 : ClsPaginas if (!IsPostBack) { - LnkCargaNetos.Visible = (UsuarioActual.Empresa.Funcionalidad(267) == "1") ||(UsuarioActual.CveRol == 1); + LnkCargaNetos.Visible = (UsuarioActual.Empresa.Funcionalidad(267) == "1") || (UsuarioActual.CveRol == 1); + if (UsuarioActual.CveEmpresa == 141) { ddlfiniquito.SelectedValueExist("2"); } using (ClsRH objrh = new ClsRH()) { if (objrh.TiposTrabajadorGet(-1, UsuarioActual.CveEmpresa)) @@ -555,7 +556,7 @@ public partial class Nomina_Nomina2 : ClsPaginas LnkFormatoTabular.Visible = true; HypPDFSTimbrados.Visible = true; - if (objnom.GetNominaEmpleado(FiltCveProyecto, FiltCveSubProyecto, FiltCveTurno, FiltCvePeriodo, CveEmpresa, FiltAgrupador, DdlRegimenContratacion.SelectedValue.ToEntero(), CveTipoTrabajador: CveTipoTrabajador) && objnom.DTSetResultados.Tables.Count > 4) + if (objnom.GetNominaEmpleado(FiltCveProyecto, FiltCveSubProyecto, FiltCveTurno, FiltCvePeriodo, CveEmpresa, FiltAgrupador, DdlRegimenContratacion.SelectedValue.ToEntero(), CveTipoTrabajador: CveTipoTrabajador,Neto: ddlfiniquito.SelectedValue.ToEntero()) && objnom.DTSetResultados.Tables.Count > 4) { dtempleados = objnom.DTSetResultados.Tables[3]; dtempleadosConceptos = objnom.DTSetResultados.Tables[4]; @@ -1210,41 +1211,68 @@ public partial class Nomina_Nomina2 : ClsPaginas objrh.GetPersonal(-1, UsuarioActual.CveEmpresa); dtpersonal = objrh.DtResultados.FiltraParametros("", "", new string[] { "CvePersonal", "Correo", "NombreCompleto" }); } - foreach (GridViewRow gvRow in GvNominas.Rows) + using (ClsRH objrh = new ClsRH()) + using (ClsNominas ObjNomina = new ClsNominas()) { - CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero(); - int CvePersonal = gvRow.DataKey("CvePersonal").ToEntero(); - int CveNomina = gvRow.DataKey("CveNomina").ToEntero(); - int SeTimbro = (gvRow.DataKey("SeTimbro").ToUpper() == "TRUE" ? 1 : gvRow.DataKey("SeTimbro").ToEntero()); - LinkButton LnkTimbrar = gvRow.FCLinkButton("LnkTimbrar"); - string Correo = string.Empty; - string NombreCompleto = string.Empty; - if (dtpersonal.Rows.Count > 0 && (drow = dtpersonal.FiltroPrimero(string.Format("CvePersonal = {0}", CvePersonal))) != null) + foreach (GridViewRow gvRow in GvNominas.Rows) { - Correo = drow["Correo"].ToString(); - NombreCompleto = drow["NombreCompleto"].ToString(); - } - if (CvePersonal > 0 && SeTimbro == 1) - { - - if (Correo.Trim().Length > 0) + CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero(); + int CvePersonal = gvRow.DataKey("CvePersonal").ToEntero(); + int CveNomina = gvRow.DataKey("CveNomina").ToEntero(); + int SeTimbro = (gvRow.DataKey("SeTimbro").ToUpper() == "TRUE" ? 1 : gvRow.DataKey("SeTimbro").ToEntero()); + LinkButton LnkTimbrar = gvRow.FCLinkButton("LnkTimbrar"); + string Correo = string.Empty; + string NombreCompleto = string.Empty; + if (dtpersonal.Rows.Count > 0 && (drow = dtpersonal.FiltroPrimero(string.Format("CvePersonal = {0}", CvePersonal))) != null) { - byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta); - if (pdf != null) - { - List objarch = new List(); - objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" }); - Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch); - // Mail.SendMail(ClsPaginas.EmpresaNotificaciones, "caudillo.90d@gmail.com", string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy} ", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), Correo.Trim(), "", objarch); - using (ClsRH objrh = new ClsRH()) - { - objrh.NomBitacoraCorreoAdd(CvePeriodoSeleccionado, CvePersonal, Correo.Trim(), UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario); - } - - } + Correo = drow["Correo"].ToString(); + NombreCompleto = drow["NombreCompleto"].ToString(); } + if (CvePersonal > 0 && SeTimbro == 1) + { + + if (Correo.Trim().Length > 0) + { + byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta); + if (pdf != null) + { + List objarch = new List(); + objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" }); + + if (ObjNomina.GetNom_Nominas(-1, TxtCvePersonal.Text.ToEntero(), TxtCvePeriodo.Text.ToEntero(), -1, UsuarioActual.CveEmpresa)) + { + string Ruta = ""; + string PathXML = ""; + string PathXMLF = ""; + string Xmlname = ""; + string XmlnameF = ""; + string empleado = ""; + Ruta = UsuarioActual.Empresa.Ruta; + PathXML = $"{Ruta}XML\\Nomina\\{ObjNomina.SerieFolio}.xml"; + PathXMLF = $"{Ruta}XML\\Nomina\\{ObjNomina.Serie}F-{ObjNomina.Folio}.xml"; + Xmlname = $"{ObjNomina.SerieFolio}.xml"; + XmlnameF = $"{ObjNomina.Serie}F-{ObjNomina.Folio}.xml"; + + if (!string.IsNullOrEmpty(PathXML) && System.IO.File.Exists(PathXML)) + { + objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXML, NombreArchivo = Xmlname }); + } + if (!string.IsNullOrEmpty(PathXMLF) && System.IO.File.Exists(PathXMLF)) + { + objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXMLF, NombreArchivo = XmlnameF }); + } + } + + Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch); + // Mail.SendMail(ClsPaginas.EmpresaNotificaciones, "caudillo.90d@gmail.com", string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy} ", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), Correo.Trim(), "", objarch); + + objrh.NomBitacoraCorreoAdd(CvePeriodoSeleccionado, CvePersonal, Correo.Trim(), UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario); + + } + } + } } } Alert("se reenviaron los recibos timbrados"); @@ -1298,7 +1326,8 @@ public partial class Nomina_Nomina2 : ClsPaginas objrh.GetPersonal(-1, UsuarioActual.CveEmpresa); dtpersonal = objrh.DtResultados.FiltraParametros("", "", new string[] { "CvePersonal", "Correo", "NombreCompleto", "RFC", "CURP" }); } - foreach (GridViewRow gvRow in GvNominas.Rows) + using (ClsNominas ObjNomina = new ClsNominas()) { + foreach (GridViewRow gvRow in GvNominas.Rows) { CvePeriodo = gvRow.DataKey("CvePeriodo").ToEntero(); int CvePersonal = gvRow.DataKey("CvePersonal").ToEntero(); @@ -1347,6 +1376,30 @@ public partial class Nomina_Nomina2 : ClsPaginas { List objarch = new List(); objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" }); + + if (ObjNomina.GetNom_Nominas(-1, TxtCvePersonal.Text.ToEntero(), TxtCvePeriodo.Text.ToEntero(), -1, UsuarioActual.CveEmpresa)) + { + string Ruta = ""; + string PathXML = ""; + string PathXMLF = ""; + string Xmlname = ""; + string XmlnameF = ""; + string empleado = ""; + Ruta = UsuarioActual.Empresa.Ruta; + PathXML = $"{Ruta}XML\\Nomina\\{ObjNomina.SerieFolio}.xml"; + PathXMLF = $"{Ruta}XML\\Nomina\\{ObjNomina.Serie}F-{ObjNomina.Folio}.xml"; + Xmlname = $"{ObjNomina.SerieFolio}.xml"; + XmlnameF = $"{ObjNomina.Serie}F-{ObjNomina.Folio}.xml"; + + if (!string.IsNullOrEmpty(PathXML) && System.IO.File.Exists(PathXML)) + { + objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXML, NombreArchivo = Xmlname }); + } + if (!string.IsNullOrEmpty(PathXMLF) && System.IO.File.Exists(PathXMLF)) + { + objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXMLF, NombreArchivo = XmlnameF }); + } + } Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch); //Mail.SendMail(ClsPaginas.EmpresaNotificaciones, "caudillo.90d@gmail.com", string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy} ", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), Correo.Trim(), "", objarch); using (ClsRH objrh = new ClsRH()) @@ -1362,6 +1415,7 @@ public partial class Nomina_Nomina2 : ClsPaginas } } + } if (msggral.Length > 0) { @@ -1438,11 +1492,39 @@ public partial class Nomina_Nomina2 : ClsPaginas if (Correo.Trim().Length > 0) { - byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta); + byte[] pdf = GeneraPDFNomina(CvePersonal, CvePeriodo, UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta); if (pdf != null) { List objarch = new List(); objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" }); + + using (ClsNominas ObjNomina = new ClsNominas()) + { + + if (ObjNomina.GetNom_Nominas(-1, TxtCvePersonal.Text.ToEntero(), TxtCvePeriodo.Text.ToEntero(), -1, UsuarioActual.CveEmpresa)) + { + string Ruta = ""; + string PathXML = ""; + string PathXMLF = ""; + string Xmlname = ""; + string XmlnameF = ""; + string empleado = ""; + Ruta = UsuarioActual.Empresa.Ruta; + PathXML = $"{Ruta}XML\\Nomina\\{ObjNomina.SerieFolio}.xml"; + PathXMLF = $"{Ruta}XML\\Nomina\\{ObjNomina.Serie}F-{ObjNomina.Folio}.xml"; + Xmlname = $"{ObjNomina.SerieFolio}.xml"; + XmlnameF = $"{ObjNomina.Serie}F-{ObjNomina.Folio}.xml"; + + if (!string.IsNullOrEmpty(PathXML) && System.IO.File.Exists(PathXML)) + { + objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXML, NombreArchivo = Xmlname }); + } + if (!string.IsNullOrEmpty(PathXMLF) && System.IO.File.Exists(PathXMLF)) + { + objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXMLF, NombreArchivo = XmlnameF }); + } + } + } Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch); using (ClsRH objrh = new ClsRH()) { @@ -1522,6 +1604,34 @@ public partial class Nomina_Nomina2 : ClsPaginas { List objarch = new List(); objarch.Add(new ClsSisMail.ArchivoMail() { ArchivoBinario = pdf, NombreArchivo = "Nomina.pdf" }); + + using (ClsNominas ObjNomina = new ClsNominas()) + { + + if (ObjNomina.GetNom_Nominas(-1, TxtCvePersonal.Text.ToEntero(), TxtCvePeriodo.Text.ToEntero(), -1, UsuarioActual.CveEmpresa)) + { + string Ruta = ""; + string PathXML = ""; + string PathXMLF = ""; + string Xmlname = ""; + string XmlnameF = ""; + string empleado = ""; + Ruta = UsuarioActual.Empresa.Ruta; + PathXML = $"{Ruta}XML\\Nomina\\{ObjNomina.SerieFolio}.xml"; + PathXMLF = $"{Ruta}XML\\Nomina\\{ObjNomina.Serie}F-{ObjNomina.Folio}.xml"; + Xmlname = $"{ObjNomina.SerieFolio}.xml"; + XmlnameF = $"{ObjNomina.Serie}F-{ObjNomina.Folio}.xml"; + + if (!string.IsNullOrEmpty(PathXML) && System.IO.File.Exists(PathXML)) + { + objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXML, NombreArchivo = Xmlname }); + } + if (!string.IsNullOrEmpty(PathXMLF) && System.IO.File.Exists(PathXMLF)) + { + objarch.Add(new ClsSisMail.ArchivoMail() { Ruta = PathXMLF, NombreArchivo = XmlnameF }); + } + } + } Mail.SendMail(ClsPaginas.EmpresaNotificaciones, Correo.Trim(), string.Format("Empleado {0} Nomina del {1:dd/MM/yyyy} al {2:dd/MM/yyyy}", NombreCompleto, FechaInicioPeriodo, FechaFinPeriodo), "", "", objarch); using (ClsRH objrh = new ClsRH()) { @@ -1768,9 +1878,9 @@ public partial class Nomina_Nomina2 : ClsPaginas } protected void LnkCargarNominaNetos_Click(object sender, EventArgs e) { - LnkCargarNomina_Click(sender, e); + LnkCargarNomina_Click(sender, e); } - protected void LnkFormatoNetos_Click(object sender, EventArgs e) + protected void LnkFormatoNetos_Click(object sender, EventArgs e) { try { @@ -2119,7 +2229,7 @@ public partial class Nomina_Nomina2 : ClsPaginas { StringBuilder str = new StringBuilder("0"); bool continuar = true; - str.AppendFormat(",{0}", DdlUnConcepto.SelectedValue.ToEntero()); + str.AppendFormat(",{0}", DdlUnConcepto.SelectedValue.ToEntero()); string msgerror = ""; if (dtConceptos == null || dtConceptos.Columns.Count <= 2) { @@ -2132,12 +2242,12 @@ public partial class Nomina_Nomina2 : ClsPaginas ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook(); var libro = wb.AddWorksheet("Nomina"); - int column = 1; + int column = 1; libro.Cell(1, column).Value = "Codigo"; column++; libro.Cell(1, column).Value = "Empleado"; libro.Column(column).Width = 35; - DataTable dtcP = dtConceptos.FiltraParametros(string.Format(" CveConcepto in({0})", str)); + DataTable dtcP = dtConceptos.FiltraParametros(string.Format(" CveConcepto in({0})", str)); foreach (DataRow row in dtcP.Rows) { column++; @@ -2736,7 +2846,7 @@ public partial class Nomina_Nomina2 : ClsPaginas e.Row.FCDropDownList("DdlTipoAsistencias").SelectedValue = e.Row.DBCampo("CveAsistenciasInasistencias"); // Carga Motivos Horas Extras - e.Row.FCDropDownList("DdlMotivoHoraExtra").DataSource = GlobalDTMotivosHorasExtras.FiltraParametros("CveEmpresa = " + UsuarioActual.CveEmpresa); + e.Row.FCDropDownList("DdlMotivoHoraExtra").DataSource = get_GlobalDTMotivosHorasExtras(UsuarioActual.CveEmpresa).FiltraParametros("CveEmpresa = " + UsuarioActual.CveEmpresa); e.Row.FCDropDownList("DdlMotivoHoraExtra").DataBind(); if (e.Row.DBCampo("CveMotivoHoraExtra") != "-1") e.Row.FCDropDownList("DdlMotivoHoraExtra").SelectedValue = e.Row.DBCampo("CveMotivoHoraExtra"); @@ -6828,7 +6938,7 @@ public partial class Nomina_Nomina2 : ClsPaginas } if (DdlMotivoHoraExtra.Items.Count == 1) { - DdlMotivoHoraExtra.DataSource = GlobalDTMotivosHorasExtras.FiltraParametros(string.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa)); + DdlMotivoHoraExtra.DataSource = get_GlobalDTMotivosHorasExtras(UsuarioActual.CveEmpresa).FiltraParametros(string.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa)); DdlMotivoHoraExtra.DataBind(); } @@ -6947,7 +7057,7 @@ public partial class Nomina_Nomina2 : ClsPaginas while (Neto != NetoSimulado && continuarV) { - if (objnom.GetNominaEmpleado(CveProyecto, CveSubProyecto, CveTurno, CvePeriodo, CveEmpresa, Agrupador, -1, 1, Neto) + if (objnom.GetNominaEmpleado(CveProyecto, CveSubProyecto, CveTurno, CvePeriodo, CveEmpresa, Agrupador, -1, 1, Neto,ddlfiniquito.SelectedValue.ToEntero()) && objnom.DTSetResultados.Tables.Count > 1) { dtempleadosSimula = objnom.DTSetResultados.Tables[3]; @@ -8466,7 +8576,7 @@ public partial class Nomina_Nomina2 : ClsPaginas DateTime fechai = TxtRIFechaInicio.Text.ToDateTime(); DateTime fechaf = TxtRIFechaFin.Text.ToDateTime(); ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook(); - int CveTipoPeriodo=0; + int CveTipoPeriodo = 0; using (ClsNominas nom = new ClsNominas()) { if (nom.GetPeriodos(-1, UsuarioActual.CveEmpresa, -1, -1, CvePeriodoSeleccionado, -1) && (nom.DtResultados.Rows.Count > 0)) @@ -8476,7 +8586,7 @@ public partial class Nomina_Nomina2 : ClsPaginas CveTipoPeriodo = -nom.DtResultados.Rows[0]["CveTipoPeriodo"].ToString().ToEntero(); } - if (nom.ReportedeincidenciasGET(UsuarioActual.CveEmpresa, fechai, fechaf, CveTipoPeriodo)) + if (nom.ReportedeincidenciasGET(UsuarioActual.CveEmpresa, fechai, fechaf, CveTipoPeriodo)) { var libro = wb.AddWorksheet(nom.DTSetResultados.Tables[2], "Incidencias"); diff --git a/Nomina/RepConceptosAcumulados.aspx b/Nomina/RepConceptosAcumulados.aspx deleted file mode 100644 index bbd16b73a..000000000 --- a/Nomina/RepConceptosAcumulados.aspx +++ /dev/null @@ -1,169 +0,0 @@ -<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepConceptosAcumulados.aspx.vb" Inherits="Nomina_RepConceptosAcumulados" %> - - - - - - - - - - - - Reporte Conceptos Acumulados - - - - - -
    - - - - -
    -
    -
    -
    - -
    - - - -
    - - -
    - - - - - - -
    - - -
    - - - -
    - -
    - - - -
    -
    -
    -
    -
    - - - - - - - - -
    -
    - Datos del Concepto - - - - - - - - - - - -
    Tipo: - Codigo: -
    -
    -
    -
    -
    - Datos del Periodo - - - - - - - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    - - - - - - - Nombre - - - - - - - - - Acumulado Actual - - - - - - - - - - Acumulado Anterior - - - - - - - - - - Acumulado Anual - - - - - - - - - - - - - -
    - - diff --git a/Nomina/RepConceptosAcumulados.aspx.vb b/Nomina/RepConceptosAcumulados.aspx.vb deleted file mode 100644 index 972345d63..000000000 --- a/Nomina/RepConceptosAcumulados.aspx.vb +++ /dev/null @@ -1,133 +0,0 @@ -Option Explicit On -Option Strict On - -Imports Extensiones -Imports System.Data - -Partial Class Nomina_RepConceptosAcumulados - Inherits ClsPaginas - -#Region "Propiedades" - - Private ReadOnly Property CveConcepto As Integer - Get - Return ViewState("CveConcepto").ToString.ToEntero - End Get - End Property - - Private ReadOnly Property CveTipoPeriodo As Integer - Get - Return ViewState("CveTipoPeriodo").ToString.ToEntero - End Get - End Property -#End Region - - Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load - If Not IsPostBack Then - CargaConceptos() - CargaTiposPeriodos() - - If Request("CveConcepto") IsNot Nothing AndAlso IsNumeric(Request("CveConcepto")) AndAlso Request("CveConcepto").ToEntero > 0 Then - ViewState("CveConcepto") = Request("CveConcepto") - DdlConcepto.SelectedValue = CveConcepto.ToString - Else - ViewState("CveConcepto") = -1 - End If - - If Request("CveTipoPeriodo") IsNot Nothing AndAlso IsNumeric(Request("CveTipoPeriodo")) AndAlso Request("CveTipoPeriodo").ToEntero > 0 Then - ViewState("CveTipoPeriodo") = Request("CveTipoPeriodo") - DdlTipoPeriodo.SelectedValue = CveTipoPeriodo.ToString - Else - ViewState("CveTipoPeriodo") = -1 - End If - - CargaDatos() - End If - End Sub - - Private Sub CargaConceptos() - DdlConcepto.DataSource = GlobalDTNomConceptos(UsuarioActual.CveEmpresa).FiltraParametros("", "Concepto") - DdlConcepto.DataBind() - End Sub - - Private Sub CargaTiposPeriodos() - Dim ObjTiposPeriodos As New ClsNominas - - If ObjTiposPeriodos.GetTiposPeriodos() Then - DdlTipoPeriodo.DataSource = ObjTiposPeriodos.DtResultados - - End If - - ObjTiposPeriodos.Dispose() - DdlTipoPeriodo.DataBind() - End Sub - - Private Sub CargaDatos() - If CveConcepto > 0 And CveTipoPeriodo > 0 Then - Dim ObjNomina As New ClsNominas() - - 'If ObjNomina.GetRepConceptosAcumulados(CveConcepto, DDlEjercicio.SelectedValue.ToEntero, CveTipoPeriodo, DdlPeriodo.SelectedValue.ToEntero, UsuarioActual.CveEmpresa) Then - ' GvDatos.DataSource = ObjNomina.DtResultados - 'Else - ' GvDatos.DataSource = Nothing - 'End If - ObjNomina.Dispose() - GvDatos.DataBind() - - UPDatos.Update() - End If - End Sub - - Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound - If e.Row.RowType = DataControlRowType.DataRow Then - Dim Css As String = "Texto" - If e.Row.RowIndex = 0 Then - 'e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left - 'e.Row.Cells(0).Width = Unit.Pixel(200) - 'e.Row.Cells(1).Width = Unit.Pixel(100) - 'e.Row.Cells(2).Width = Unit.Pixel(100) - 'e.Row.Cells(3).Width = Unit.Pixel(100) - e.Row.CssClass = "Totales" - Css = "Totales" - End If - End If - End Sub - - Protected Sub ImgExcel_Click(sender As Object, e As System.Web.UI.ImageClickEventArgs) Handles ImgExcel.Click - GvDatos.ExportToExcel("ReporteConceptosAcumulados" & Now.ToShortDateString) - End Sub - - Protected Sub DdlTipoPeriodo_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlTipoPeriodo.SelectedIndexChanged - ViewState("CveTipoPeriodo") = DdlTipoPeriodo.SelectedValue - - 'Saca el periodo activo - CargaPeriodos(DDlEjercicio.SelectedValue.ToEntero, DdlTipoPeriodo.SelectedValue.ToEntero) - CargaDatos() - End Sub - - Private Sub CargaPeriodos(Ejercicio As Integer, CveTipoPeriodo As Integer) - Dim ObjTiposPeriodos As New ClsNominas - - If ObjTiposPeriodos.GetPeriodos(CveTipoPeriodo, UsuarioActual.CveEmpresa, Ejercicio, -1, -1) Then - DdlPeriodo.DataSource = ObjTiposPeriodos.DtResultados - End If - - ObjTiposPeriodos.Dispose() - DdlPeriodo.DataBind() - End Sub - - Protected Sub DdlConcepto_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlConcepto.SelectedIndexChanged - ViewState("CveConcepto") = DdlConcepto.SelectedValue - - Dim Concepto As DataRow = GlobalDTNomConceptos(UsuarioActual.CveEmpresa).FiltraParametros("CveConcepto = " & CveConcepto)(0) - LblCodigo.Text = Concepto("Codigo").ToString - LblFormula.Text = Concepto("Formula").ToString - LblTipo.Text = Concepto("TipoD").ToString - - CargaDatos() - End Sub - - Private Sub DdlPeriodo_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlPeriodo.SelectedIndexChanged - CargaDatos() - End Sub -End Class diff --git a/OC/OC.aspx b/OC/OC.aspx index 6bfa5fdb7..4b0f83c28 100644 --- a/OC/OC.aspx +++ b/OC/OC.aspx @@ -2424,7 +2424,12 @@ - + + + + + + <%-- @@ -2433,7 +2438,7 @@ - + --%> <%-- diff --git a/OC/RepOC.aspx b/OC/RepOC.aspx index 23093ba9d..6e00d9bcb 100644 --- a/OC/RepOC.aspx +++ b/OC/RepOC.aspx @@ -266,53 +266,37 @@
    -
    -
    -
    +
    +
    -
    -
    -
    -
    -
    -
    -

    - $ - - - -

    - TOTAL ORDENES DE COMPRA -
    -
    - -
    -
    -
    + + +
    +
    +
    + +
    +
    + " style="display: inline-block; width: 200px;" /> + " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info">
    -
    -
    - " style="display: inline-block; width: 150px;" /> - " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> -
    +
    + " style="display: inline-block; width: 200px;" /> + " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> +
    -
    - " style="display: inline-block; width: 150px;" /> - " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> -
    - -
    - " style="display: inline-block; width: 150px;" /> - " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> -
    +
    + " style="display: inline-block; width: 200px;" /> + " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info">
    +
    diff --git a/OC/RepOC.aspx.vb b/OC/RepOC.aspx.vb index fca85e652..73dbec805 100644 --- a/OC/RepOC.aspx.vb +++ b/OC/RepOC.aspx.vb @@ -385,10 +385,17 @@ Partial Class RepOC GvConsultar.DataSource = OC.DtResultados DtOC = OC.DtResultados DtPorAtender = OC.DtResultados - LblTotal.Text = OC.DtResultados.SUM("Total").FormatoNumero If UsuarioActual.TienePermisoProceso(227) Then - DivTotalOC.Visible = True + DivIndicadores.Visible = True + DivIndicadores.InnerHtml = String.Empty + Dim Cantidad As Integer = DtOC.COUNT("CveOrdenCompra") + Dim TotalPesos As Double = DtOC.SUM("Total", "CveMoneda = 1") + Dim TotalDolares As Double = DtOC.SUM("Total", "CveMoneda = 2") + Dim Total As Double = TotalPesos + (TotalDolares * GlobalTipoCambio) + + MuestraIndicador(DivIndicadores, "green-haze", "fa fa-money", "Órdenes de Compra", Cantidad.ToString, "Cantidad", "$" + Total.FormatoNumero, "Total", "$" + TotalPesos.FormatoNumero, "Pesos", "$" + TotalDolares.FormatoNumero, "Dólares") + UPPIndicador.Update() End If 'SI NO TIENE DATOS, NO MOSTRAR LA COLUMNA @@ -603,6 +610,17 @@ Partial Class RepOC End Sub #End Region - +#Region "Indicadores" + Private Sub MuestraIndicador(DIV As HtmlGenericControl, Color As String, Icono As String, Titulo As String, C1 As String, CT1 As String, C2 As String, CT2 As String, C3 As String, CT3 As String, C4 As String, CT4 As String) + Dim htmldiv As New StringBuilder + htmldiv.AppendFormat("{0}
    ", DIV.InnerHtml, Color, Icono) + htmldiv.AppendFormat("
    {0}
    ", Titulo, CT1, C1) + htmldiv.AppendFormat("", CT2, C2) + htmldiv.AppendFormat("", CT3, C3) + htmldiv.AppendFormat("", CT4, C4) + htmldiv.AppendFormat("
    ") + DIV.InnerHtml = htmldiv.ToString + End Sub +#End Region End Class diff --git a/RH/CalculoSBC.aspx b/RH/CalculoSBC.aspx index 63b3a9af1..ed40d0ff9 100644 --- a/RH/CalculoSBC.aspx +++ b/RH/CalculoSBC.aspx @@ -28,9 +28,6 @@
  • Descargar
  • -
  • - Formato carga masiva -
  • Carga masiva
  • @@ -46,7 +43,6 @@ - <%-- --%> @@ -203,7 +199,8 @@ Salario -
    SUA +
    + SUA
    @@ -839,7 +836,7 @@ - + - + + + diff --git a/RH/CalculoSBC.aspx.cs b/RH/CalculoSBC.aspx.cs index 95bc6b0d9..66359a12a 100644 --- a/RH/CalculoSBC.aspx.cs +++ b/RH/CalculoSBC.aspx.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Data; using System.Linq; +using System.Net.Http.Headers; using System.Text; using System.Web; using System.Web.UI; @@ -237,12 +238,92 @@ public partial class RH_CalculoSBC : ClsPaginas UpCargarm.Update(); RegistraScript("$('#DmodalCargaMasiva').modal();"); } + protected void LnkFormatocMasivaRegistroPatronal_Click(object sender, EventArgs e) + { + try + { + bool continuar = true; + string msgerror = ""; + if (dtsalario == null || dtsalario.Rows.Count == 0) + { + msgerror = "favor de calcular primero"; + continuar = false; + } + if (continuar) + { + + ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook(); + + var libro = wb.AddWorksheet("Salario"); + int column = 1; + libro.Cell(1, column).Value = "Codigo"; + column++; + libro.Cell(1, column).Value = "Empleado"; + column++; + libro.Cell(1, column).Value = "RegistroPatronal"; + //column++; + //libro.Cell(1, column).Value = "SDI"; + libro.Row(1).CellsUsed().Style.Font.FontColor = ClosedXML.Excel.XLColor.White; + libro.Row(1).CellsUsed().Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189)); + + int Fila = 1; + foreach (DataRow erow in dtsalario.Rows) + { + Fila++; + column = 1; + libro.Cell(Fila, column).Value = string.Format("'{0}", erow["Codigo"]); + column++; + libro.Cell(Fila, column).Value = erow["Nombre"]; + + column++; + libro.Cell(Fila, column).Value = erow["RegistroPatronal"]; + //column++; + //////libro.Cell(Fila, column).Value = erow["SDI"]; + ////column++; + ////libro.Cell(Fila, column).Value = erow["SalarioVariable"]; + } + + libro.Columns().AdjustToContents(); + System.IO.Stream fs = new System.IO.MemoryStream(); + wb.SaveAs(fs); + fs.Position = 0; + System.IO.MemoryStream memoryStream = new System.IO.MemoryStream(); + using (System.IO.Stream input = fs) + + { + input.CopyTo(memoryStream); + } + memoryStream.Position = 0; + + Response.Clear(); + Response.Buffer = true; + + Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; + Response.AddHeader("content-disposition", string.Format("attachment;filename={0}.xlsx", "Plantilla Salario ")); + Response.BinaryWrite(memoryStream.ToArray()); + Response.End(); + } + else + { + Alert(msgerror, TipoMensaje.MsgAdvertencia); + } + } + catch (Exception ex) + { + Alert("Ocurrio un error al generar el Formato de nominas" + ex.ToString(), TipoMensaje.MsgAdvertencia); + } + } protected void LnkFormatocMasiva_Click(object sender, EventArgs e) { try { bool continuar = true; string msgerror = ""; + if (dtsalario == null || dtsalario.Rows.Count == 0) + { + msgerror = "favor de calcular primero"; + continuar = false; + } if (continuar) { @@ -274,8 +355,8 @@ public partial class RH_CalculoSBC : ClsPaginas column++; libro.Cell(Fila, column).Value = erow["SalarioDiario"]; - column++; - libro.Cell(Fila, column).Value = erow["SDI"]; + //column++; + //libro.Cell(Fila, column).Value = erow["SDI"]; column++; libro.Cell(Fila, column).Value = erow["SalarioVariable"]; } @@ -313,24 +394,26 @@ public partial class RH_CalculoSBC : ClsPaginas protected void LnkProcesarArchvo_Click(object sender, EventArgs e) { - DataTable dttempsalario = null; - using (ClsNominas objnom = new ClsNominas()) + if (ddltipoCarga.SelectedValue.ToEntero() == 1) { - if (objnom.GetCalculoSBC(UsuarioActual.CveEmpresa, DdlTipo.SelectedValue.ToEntero(), txtfechacargamasiva.Text, DdlRegistroPatronal.SelectedValue.ToEntero())) - { - dttempsalario = objnom.DTSetResultados.Tables[0]; - } - } - try - { - List Filesgral = TxtArchivoNomina.getfiles().Archivos; - Archivo fileItem = Filesgral.Count > 0 ? Filesgral[0] : null; - DataTable DTEXcel = Extensiones.ModExtensiones.ReadExcelFile(fileItem.FileUrl, true); - StringBuilder str = new StringBuilder(); - bool rollback = false; - using (ClsRH objpersonal = new ClsRH()) + DataTable dttempsalario = null; + using (ClsNominas objnom = new ClsNominas()) { + if (objnom.GetCalculoSBC(UsuarioActual.CveEmpresa, DdlTipo.SelectedValue.ToEntero(), txtfechacargamasiva.Text, DdlRegistroPatronal.SelectedValue.ToEntero())) + { + dttempsalario = objnom.DTSetResultados.Tables[0]; + } + } + try + { + List Filesgral = TxtArchivoNomina.getfiles().Archivos; + Archivo fileItem = Filesgral.Count > 0 ? Filesgral[0] : null; + DataTable DTEXcel = Extensiones.ModExtensiones.ReadExcelFile(fileItem.FileUrl, true); + + StringBuilder str = new StringBuilder(); + bool rollback = false; + using (ClsRH objpersonal = new ClsRH()) using (ClsNominas objNomina = new ClsNominas(objpersonal.IniciaTransacSQL())) { @@ -380,10 +463,50 @@ public partial class RH_CalculoSBC : ClsPaginas } } } - } - catch (Exception) { } + catch (Exception) { } - RegistraScript("$('#ModalDoctos').modal('hide');"); + } + if (ddltipoCarga.SelectedValue.ToEntero() == 2) + { + + List Filesgral = TxtArchivoNomina.getfiles().Archivos; + Archivo fileItem = Filesgral.Count > 0 ? Filesgral[0] : null; + DataTable DTEXcel = Extensiones.ModExtensiones.ReadExcelFile(fileItem.FileUrl, true); + + StringBuilder str = new StringBuilder(); + bool rollback = false; + using (ClsClaseBase objNomina = new ClsClaseBase( )) + using (ClsRH objpersonal = new ClsRH()) + { + + foreach (DataRow row in DTEXcel.FiltraParametros("LEN(Codigo)>0 ").Rows) + { + string Codigo = row["Codigo"].ToString(); + int CvePersonal = -1; // row["CvePersonal"].ToString().ToEntero(); + string RegistroPatronal = row["RegistroPatronal"].ToString() ; + int CveMetodoPago = 0; + if (Codigo != "-1" && objpersonal.GetPersonal(CvePersonal, Codigo, "-1", "-1", "-1", -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "-1", -1, -1, -1, -1, -1, -1, "-1", "-1", "-1", "-1", UsuarioActual.CveEmpresa) && + objpersonal.DtResultados.Rows.Count == 1) + { + CvePersonal = objpersonal.CvePersonal; + CveMetodoPago = objpersonal.CveMetodoPago; + } + else + { + CvePersonal = 0; + str.AppendLine(string.Format("No se encontro el codigo {0}
    ", Codigo)); + } + if (CvePersonal > 0) + { + objNomina.runQuerystr(string.Format("EXEC PA_RH_PersonalRPUpdate {0},'{1}'", CvePersonal, RegistroPatronal)); + } + } + + + + } + } + RegistraScript("$('#DmodalCargaMasiva').modal('hide');"); } protected void LnkDownArchivosSua_Click(object sender, EventArgs e) { diff --git a/RH/Personal.aspx.vb b/RH/Personal.aspx.vb index f44258e3d..f86f4b1d8 100644 --- a/RH/Personal.aspx.vb +++ b/RH/Personal.aspx.vb @@ -5545,8 +5545,7 @@ Partial Class RH_Personal Dim objConstancias As New ClsConstancias Dim DocumenBitArray As Byte() = Nothing - Dim RutaDocumento As String = Server.MapPath("~") - 'RutaDocumento = Path.Combine(RutaDocumento, "Empresas\Grales\FormatoDC3.docx") + Dim RutaDocumento As String = DirectorioBaseEmpresas Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow) Dim _CveCurso As Integer = GvRow.DataKey("CveCurso").ToEntero() diff --git a/SAT/SolicitudesIngresoSat.aspx.cs b/SAT/SolicitudesIngresoSat.aspx.cs index 3ce158f5d..03036deb7 100644 --- a/SAT/SolicitudesIngresoSat.aspx.cs +++ b/SAT/SolicitudesIngresoSat.aspx.cs @@ -488,7 +488,7 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas e.Row.Cells[1].BackColor = System.Drawing.Color.FromName("#3598dc"); //Azul e.Row.Cells[2].BackColor = System.Drawing.Color.FromName("#C46B06"); //Rojo - + e.Row.Cells[3].BackColor = System.Drawing.Color.FromName("#3598dc"); //Rojo e.Row.Cells[4].BackColor = System.Drawing.Color.FromName("#3598dc"); //Azul e.Row.Cells[5].BackColor = System.Drawing.Color.FromName("#3598dc"); //Azul e.Row.Cells[6].BackColor = System.Drawing.Color.FromName("#3598dc"); //Azul @@ -514,15 +514,12 @@ public partial class SAT_SolicitudesIngresoSat : ClsPaginas e.Row.Cells[15].BackColor = System.Drawing.Color.FromName("#C46B06"); //Rojo e.Row.Cells[16].BackColor = System.Drawing.Color.FromName("#C46B06"); //Rojo e.Row.Cells[17].BackColor = System.Drawing.Color.FromName("#C46B06"); //Rojo - - - - - + e.Row.Cells[1].ForeColor = System.Drawing.Color.FromName("white"); e.Row.Cells[2].ForeColor = System.Drawing.Color.FromName("white"); + e.Row.Cells[3].ForeColor = System.Drawing.Color.FromName("white"); e.Row.Cells[4].ForeColor = System.Drawing.Color.FromName("white"); e.Row.Cells[5].ForeColor = System.Drawing.Color.FromName("white"); e.Row.Cells[6].ForeColor = System.Drawing.Color.FromName("white"); diff --git a/Ventas/CatMetasVendedores.aspx.vb b/Ventas/CatMetasVendedores.aspx.vb index 22cad0f55..ffc9ae574 100644 --- a/Ventas/CatMetasVendedores.aspx.vb +++ b/Ventas/CatMetasVendedores.aspx.vb @@ -13,6 +13,15 @@ Partial Class CatMetasVendedores End Set End Property + Private Property DtDatos() As DataTable + Get + Return ViewState("DtDatos") + End Get + Set + ViewState("DtDatos") = Value + End Set + End Property + Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not IsPostBack Then txtMesAnio.Text = Now.FirstDayOfMonth.ToShortDateString @@ -33,6 +42,7 @@ Partial Class CatMetasVendedores Dim ObjVentas As New ClsVentas If ObjVentas.GetMetasVendedores(UsuarioActual.CveEmpresa, CveSubProyecto:=DdlSubProyecto.SelectedValue.ToEntero(), CveVendedor:=DdlVendedor.SelectedValue.ToEntero(), CveMarca:=DdlMarca.SelectedValue.ToEntero(), Mes:=Mes, Anio:=Anio) Then GvDatos.DataSource = ObjVentas.DtResultados + DtDatos = ObjVentas.DtResultados End If ObjVentas.Dispose() GvDatos.DataBind() @@ -164,10 +174,26 @@ Partial Class CatMetasVendedores DtExcel.Columns.Add(New DataColumn("Mes", GetType(String))) DtExcel.Columns.Add(New DataColumn("Año", GetType(String))) DtExcel.Columns.Add(New DataColumn("Cantidad", GetType(Decimal))) - DtExcel.Columns.Add(New DataColumn("Importe", GetType(Decimal))) - - SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet) - + DtExcel.Columns.Add(New DataColumn("Importe", GetType(Decimal))) + DtExcel.Columns.Add(New DataColumn("Ventas", GetType(Decimal))) + + Dim dttE As DataTable = DtDatos.Copy + dttE.TableName = "Metas" + For Each drr As DataRow In DtDatos.Rows + Dim dr As DataRow = DtExcel.NewRow + dr("Vendedor") = drr("Vendedor") + dr("Clasificación Superior") = drr("ClasificacionSup") + dr("Clasificación") = drr("Clasificacion") + dr("Marca") = drr("Marca") + dr("Cantidad") = drr("MetaCantidad") + dr("Importe") = drr("MetaImporte") + dr("Mes") = drr("MesAño").ToString.ToDate.Year + dr("Año") = drr("MesAño").ToString.ToDate.Month + dr("Ventas") = drr("VentaCantidad") + + DtExcel.Rows.Add(dr) + Next + Dim FileExcel As New ExcelFile() Dim worksheet = FileExcel.Worksheets.Add(DtExcel.TableName) diff --git a/Ventas/RepVentasAutorizaciones.aspx.cs b/Ventas/RepVentasAutorizaciones.aspx.cs index 63655bfe1..18f5a7129 100644 --- a/Ventas/RepVentasAutorizaciones.aspx.cs +++ b/Ventas/RepVentasAutorizaciones.aspx.cs @@ -23,7 +23,7 @@ public partial class Ventas_RepVentasAutorizaciones : ClsPaginas { if (Consultado) { - GvDatos.ExportToExcelG("RepVentasAutorizaciones" + DateTime.Now, "Reporte de Autorizaciones de Ventas", UsuarioActual); + GvDatos.ExportToExcelG("RepVentasAutorizaciones" + DateTime.Now.ToString("dd-MM-yyyy"), "Reporte de Autorizaciones de Ventas", UsuarioActual); } else {