From 5eec0bb39715e6b09ecb1bf66ea5d632d430521f Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Wed, 18 Dec 2019 10:55:51 -0700 Subject: [PATCH 1/4] --- Empresas/Grales/RepInversionNomina.rdlc | 1600 +++++++++++++++++++++++ 1 file changed, 1600 insertions(+) create mode 100644 Empresas/Grales/RepInversionNomina.rdlc diff --git a/Empresas/Grales/RepInversionNomina.rdlc b/Empresas/Grales/RepInversionNomina.rdlc new file mode 100644 index 000000000..367195937 --- /dev/null +++ b/Empresas/Grales/RepInversionNomina.rdlc @@ -0,0 +1,1600 @@ + + + + + + + + + 1.38205cm + + + 2.83362cm + + + 7.8771cm + + + 2.3356cm + + + 2.74165cm + + + + + 0.6cm + + + + + true + true + + + + + Cant. + + + + + + + Textbox7 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Código + + + + + + + Textbox9 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Descripción + + + + + + + Textbox11 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Serie/Lote + + + + + + + Textbox13 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Unidad Medida + + + + + + + Textbox25 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.36717cm + + + + + true + true + + + + + =Fields!Cantidad.Value + + + + + + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + true + true + + + + + =Fields!Codigo.Value + + + + + + + Codigo + + + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + true + true + + + + + =Fields!PS.Value + + + + + + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + true + true + + + + + =Fields!SerieLote.Value + + + + + + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + true + true + + + + + =Fields!UnidadMedida.Value + + + + + + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + + + + + + + + + + + + + + After + + + + + + + DsInventarios + 0.17639cm + 0.12931cm + 0.96717cm + 17.17002cm + + + + + + true + true + + + + + I.V.A. + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Descuentos + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Total + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!IVA.Value + + + + + + + Textbox12 + 1.88467cm + 14.75349cm + 0.6cm + 2.5cm + 4 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Descuentos.Value + + + + + + + Textbox12 + 1.28467cm + 14.75349cm + 0.6cm + 2.5cm + 5 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Total.Value + + + + + + + Textbox12 + 2.48467cm + 14.75349cm + 0.6cm + 2.5cm + 6 + + + 2pt + 2pt + 2pt + 2pt + + + + 1.21412cm + 0.2141cm + 0cm + 17.08525cm + 7 + + + + + + 1.30208in + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Folio: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Fecha: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Fecha Impresion: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Almacen.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Folio.Value + + + + + + + Textbox31 + 3.47223cm + 12.27227cm + 0.59999cm + 3.22321cm + 5 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Fecha.Value + + + + + + + Textbox32 + 4.14278cm + 12.28992cm + 0.59999cm + 3.20556cm + 6 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!FechaImpresion.Value + + + + + + + Textbox33 + 0.77639cm + 14.49067cm + 0.6cm + 2.80868cm + 7 + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!Concepto.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Factura: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!FacturaProveedor.Value + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Domicilio Fiscal: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!DomicilioFiscal.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Expedido en: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!ExpedidoEn.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Facturado a + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!FacturadoA.Value + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Enviar a: + + + + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Parameters!EnviarA.Value + + + 2pt + 2pt + 2pt + 2pt + + + + Embedded + compuproveedores + FitProportional + 0.05556in + 0.70014in + 0.86019in + 19 + + + + + + + + + + + 1.42875cm + true + true + + + 0.2468cm + 1.12979cm + 0cm + 4.95004cm + + + + + + true + true + + + + + =Parameters!NombreRecibio.Value + + + + Textbox31 + 0.4232cm + 0.65145cm + 0.6cm + 5.95755cm + 1 + + + 2pt + 2pt + 2pt + 2pt + + + + 0.2468cm + 12.56889cm + 0cm + 4.95004cm + 2 + + + + + + true + true + + + + + =Parameters!Almacen.Value + + + + Textbox31 + 0.38792cm + 12.17202cm + 0.6cm + 5.95755cm + 3 + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 27.94cm + 21.59cm + 1cm + 1cm + 1cm + 1cm + 0.13cm + - - - - - - Textbox7 - - - - Black - - 1pt - - - Black - - 1pt - - White - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - Código - - - - - - - Textbox9 - - - - Black - - 1pt - - - Black - - 1pt - - White - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - Descripción - - - - - - - Textbox11 - - - - Black - - 1pt - - - Black - - 1pt - - White - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - Serie/Lote - - - - - - - Textbox13 - - - - Black - - 1pt - - - Black - - 1pt - - White - 2pt - 2pt - 2pt - 2pt - - - - - - - - true - true - - - - - Unidad Medida - - - - - - - Textbox25 - - - - Black - - 1pt - - - Black - - 1pt - - White - 2pt - 2pt - 2pt - 2pt - - - - - - - - 0.36717cm - - - - - true - true - - - - - =Fields!Cantidad.Value - - - - - - 2pt - 2pt - =IIf(RowNumber(Nothing)=1,"1pt","0pt") - - - - - - - - true - true - - - - - =Fields!Codigo.Value - - - - - - - Codigo - - - 2pt - 2pt - =IIf(RowNumber(Nothing)=1,"1pt","0pt") - - - - - - - - true - true - - - - - =Fields!PS.Value - - - - - - 2pt - 2pt - =IIf(RowNumber(Nothing)=1,"1pt","0pt") - - - - - - - - true - true - - - - - =Fields!SerieLote.Value - - - - - - 2pt - 2pt - =IIf(RowNumber(Nothing)=1,"1pt","0pt") - - - - - - - - true - true - - - - - =Fields!UnidadMedida.Value - - - - - - 2pt - 2pt - =IIf(RowNumber(Nothing)=1,"1pt","0pt") - - - - - - - - - - - - - - - - - - - - - After - - - - - - - DsInventarios - 0.17639cm - 0.12931cm - 0.96717cm - 17.17002cm - - - - - - true - true - - - - - I.V.A. - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Descuentos - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Total - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!IVA.Value - - - - - - - Textbox12 - 1.88467cm - 14.75349cm - 0.6cm - 2.5cm - 4 - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!Descuentos.Value - - - - - - - Textbox12 - 1.28467cm - 14.75349cm - 0.6cm - 2.5cm - 5 - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!Total.Value - - - - - - - Textbox12 - 2.48467cm - 14.75349cm - 0.6cm - 2.5cm - 6 - - - 2pt - 2pt - 2pt - 2pt - - - - 1.21412cm - 0.2141cm - 0cm - 17.08525cm - 7 - - - - - - 1.30208in - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Folio: - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Fecha: - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Fecha Impresion: - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!Almacen.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!Folio.Value - - - - - - - Textbox31 - 3.47223cm - 12.27227cm - 0.59999cm - 3.22321cm - 5 - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!Fecha.Value - - - - - - - Textbox32 - 4.14278cm - 12.28992cm - 0.59999cm - 3.20556cm - 6 - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!FechaImpresion.Value - - - - - - - Textbox33 - 0.77639cm - 14.49067cm - 0.6cm - 2.80868cm - 7 - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!Concepto.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Factura: - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!FacturaProveedor.Value - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Domicilio Fiscal: - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!DomicilioFiscal.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Expedido en: - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!ExpedidoEn.Value - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Facturado a - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!FacturadoA.Value - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - Enviar a: - - - - - - 2pt - 2pt - 2pt - 2pt - - - - true - true - - - - - =Parameters!EnviarA.Value - - - 2pt - 2pt - 2pt - 2pt - - - - Embedded - compuproveedores - FitProportional - 0.05556in - 0.70014in - 0.86019in - 19 - - - - - - - - - - - 1.42875cm - true - true - - - 0.2468cm - 1.12979cm - 0cm - 4.95004cm - - - - - - true - true - - - - - =Parameters!NombreRecibio.Value - - - - Textbox31 - 0.4232cm - 0.65145cm - 0.6cm - 5.95755cm - 1 - - - 2pt - 2pt - 2pt - 2pt - - - - 0.2468cm - 12.56889cm - 0cm - 4.95004cm - 2 - - - - - - true - true - - - - - =Parameters!Almacen.Value - - - - Textbox31 - 0.38792cm - 12.17202cm - 0.6cm - 5.95755cm - 3 - - - 2pt - 2pt - 2pt - 2pt - - - - - - - - 27.94cm - 21.59cm - 1cm - 1cm - 1cm - 1cm - 0.13cm - + + + + + + Textbox7 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Departamento + + + + + + + Textbox9 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Puesto + + + + + + + Textbox11 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Neto + + + + + + + Textbox13 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Obligaciones + + + + + + + Textbox25 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Total + + + + + + + Textbox2 + + + + Black + + 1pt + + + Black + + 1pt + + White + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.43773cm + + + + + true + true + + + + + =Fields!SubProyecto.Value + + + + + + =IIF( Fields!Tipo.Value=1,"Gray",IIF( Fields!Tipo.Value=2, "Silver",IIF( Fields!Tipo.Value=3, "LightGrey","No Color"))) + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + true + + + + + + true + true + + + + + =Fields!Departamento.Value + + + + + + + Departamento + + + =IIF( Fields!Tipo.Value=1,"Gray",IIF( Fields!Tipo.Value=2, "Silver",IIF( Fields!Tipo.Value=3, "LightGrey","No Color"))) + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + true + true + + + + + =Fields!Puesto.Value + + + + + + =IIF( Fields!Tipo.Value=1,"Gray",IIF( Fields!Tipo.Value=2, "Silver",IIF( Fields!Tipo.Value=3, "LightGrey","No Color"))) + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + true + true + + + + + =Fields!Neto.Value + + + + + + + Neto + + + =IIF( Fields!Tipo.Value=1,"Gray",IIF( Fields!Tipo.Value=2, "Silver",IIF( Fields!Tipo.Value=3, "LightGrey","No Color"))) + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + true + true + + + + + =Fields!Obligaciones.Value + + + + + + + Obligaciones + + + =IIF( Fields!Tipo.Value=1,"Gray",IIF( Fields!Tipo.Value=2, "Silver",IIF( Fields!Tipo.Value=3, "LightGrey","No Color"))) + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + true + true + + + + + =Fields!Total.Value + + + + + + + Total + + + =IIF( Fields!Tipo.Value=1,"Gray",IIF( Fields!Tipo.Value=2, "Silver",IIF( Fields!Tipo.Value=3, "LightGrey","No Color"))) + 2pt + 2pt + =IIf(RowNumber(Nothing)=1,"1pt","0pt") + + + + + + + + + + + + + + + + + + + + + + After + + + + + + + + + + DsInventarios + 0.17639cm + 0.12931cm + 1.03773cm + 17.93733cm + + + + + + 1.21412cm + 0.2141cm + 0cm + 17.08525cm + 1 + + + + + + 0.72916in + + + + + + + + + =Parameters!Empresa.Value + + + + + + + Textbox1 + 2.46711cm + 1.54368cm + 12.83495cm + + + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + =Globals!PageNumber + + + + / + + + + =Globals!TotalPages + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + 1.42875cm + true + true + + + + + 27.94cm + 21.59cm + 1cm + 1cm + 1cm + 1cm + 0.13cm + + + + Reporte de inversión de nómina + + + + +
  • + Exportar +
  • +
  • + Exportar +
  • +
    + + + + + + +
    +
    +
    + + <%-- --%> +
    +
    + +
    + + + +
    + + +
    + + + +
    + + +
    + + +
    + +
    + + + + + +
    +
    + +
    + +
    + + + + + +
    +
    + +
    +
    +
    +
    + +
    +
    + + + + + + + + + + + + + + + + + + + + <%-- + + + + --%> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + diff --git a/Nomina/RepInversiondeNomina.aspx.cs b/Nomina/RepInversiondeNomina.aspx.cs new file mode 100644 index 000000000..e0ba2d0b3 --- /dev/null +++ b/Nomina/RepInversiondeNomina.aspx.cs @@ -0,0 +1,427 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.UI; +using System.Web.UI.WebControls; +using Extensiones; + +using Microsoft.VisualBasic; +using System.Data; +using System.Data.SqlClient; +using System.Configuration; +using Microsoft.Reporting.WebForms; + +public partial class Nomina_RepInversiondeNomina : ClsPaginas +{ + #region Propiedades + private string RfechaInicio + { + get { return (ViewState["RfechaInicio"] == null) ? "" : Convert.ToString(ViewState["RfechaInicio"]); } + set { ViewState["RfechaInicio"] = value; } + } + private string RfechaFin + { + get { return (ViewState["RfechaFin"] == null) ? "" : Convert.ToString(ViewState["RfechaFin"]); } + set { ViewState["RfechaFin"] = value; } + } + private int RcveProyecto + { + get { return (ViewState["RcveProyecto"] == null) ? 0 : Convert.ToInt32(ViewState["RcveProyecto"]); } + set { ViewState["RcveProyecto"] = value; } + } + private int RcveSubProyecto + { + get { return (ViewState["RcveSubProyecto"] == null) ? 0 : Convert.ToInt32(ViewState["RcveSubProyecto"]); } + set { ViewState["RcveSubProyecto"] = value; } + } + private int Ragrupador + { + get { return (ViewState["Ragrupador"] == null) ? 0 : Convert.ToInt32(ViewState["Ragrupador"]); } + set { ViewState["Ragrupador"] = value; } + } + private int RCveDepartamento + { + get { return (ViewState["RCveDepartamento"] == null) ? 0 : Convert.ToInt32(ViewState["RCveDepartamento"]); } + set { ViewState["RCveDepartamento"] = value; } + } + private string RcveStr1 + { + get { return (ViewState["RcveStr1"] == null) ? "" : Convert.ToString(ViewState["RcveStr1"]); } + set { ViewState["RcveStr1"] = value; } + } + private string RcveStr2 + { + get { return (ViewState["RcveStr2"] == null) ? "" : Convert.ToString(ViewState["RcveStr2"]); } + set { ViewState["RcveStr2"] = value; } + } + + #endregion + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + + DdlSubProyecto.DataSource = get_GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, 1); + DdlSubProyecto.DataBind(); + DdlSubProyecto.Items.Insert(0, new ListItem("Todos", "-1")); + DdlDepartamento.DataSource = GlobalDTDepartamentos.FiltraParametros(string.Format("CveEmpresa ={0} AND Departamento <> 'Seleccione' ", UsuarioActual.CveEmpresa)); + DdlDepartamento.DataBind(); + DdlDepartamento.Items.Insert(0, new ListItem("Todos", "-1")); + + TxtFechaInicio.Text = Request["fechaInicio"] == null ? DateTime.Now.ToString("01/MM/yyyy") : Request["fechaInicio"].ToString().ToDateTime().ToString("dd/MM/yyyy"); + TxtFechaFin.Text = Request["fechaFin"] == null ? "" : Request["fechaFin"].ToString().ToDateTime().ToString("dd/MM/yyyy"); + + + + RfechaFin = TxtFechaFin.Text.Length > 9 ? TxtFechaFin.Text.ToDate().ToString("yyyyMMdd") : ""; + RfechaInicio = TxtFechaInicio.Text.Length > 9 ? TxtFechaInicio.Text.ToDate().ToString("yyyyMMdd") : ""; + + RcveProyecto = Request["cveProyecto"] == null ? 0 : Request["cveProyecto"].ToString().ToEntero(); + RcveSubProyecto = Request["cveSubProyecto"] == null ? -1 : Request["cveSubProyecto"].ToString().ToEntero(); + Ragrupador = Request["agrupador"] == null ? 0 : Request["agrupador"].ToString().ToEntero(); + RCveDepartamento = Request["CveDepartamento"] == null ? -1 : Request["CveDepartamento"].ToString().ToEntero(); + RcveStr1 = Request["cveStr1"] == null ? "0" : Request["cveStr1"].ToString(); + RcveStr2 = Request["cveStr2"] == null ? "0" : Request["cveStr2"].ToString(); + + //TxtFiltrocveProyecto.Text = RcveProyecto.ToString(); + DdlSubProyecto.SelectedValueExist(RcveSubProyecto.ToString()); + //TxtFiltroagrupador.Text = Ragrupador.ToString(); + CargaInversionNominaGET(); + } + + } + + protected void CargaInversionNominaGET() + { + using (ClsNominas ObjPA_N = new ClsNominas()) + { + ObjPA_N.GetInversionNomina(UsuarioActual.CveEmpresa, RfechaInicio, RfechaFin, RcveProyecto, RcveSubProyecto, Ragrupador, RCveDepartamento, RcveStr1, RcveStr2); + GVInversionNomina.DataSource = ObjPA_N.DtResultados; + if (ObjPA_N.DTSetResultados.Tables.Count > 1 && 0 == 1) + { + DataTable dtConceptos = ObjPA_N.DTSetResultados.Tables[1]; + int CurrentColumn = 4; + BoundField bf; + foreach (DataRow row in dtConceptos.Rows) + { + int CveConcepto = row["CveConcepto"].ToString().ToEntero(); + string Concepto = row["Concepto"].ToString(); + GVInversionNomina.Columns[CurrentColumn].ItemStyle.BackColor = System.Drawing.Color.Transparent; + GVInversionNomina.Columns[CurrentColumn].Visible = true; + bf = (BoundField)GVInversionNomina.Columns[CurrentColumn]; + bf.DataField = string.Format("C_{0}", CveConcepto); + bf.HeaderText = Concepto; + CurrentColumn++; + } + while (CurrentColumn < 34) + { + bf = (BoundField)GVInversionNomina.Columns[CurrentColumn]; + bf.DataField = ""; + GVInversionNomina.Columns[CurrentColumn].Visible = false; + + CurrentColumn++; + } + + } + ObjPA_N.Dispose(); + } + GVInversionNomina.DataBind(); + upDatosPA_N.Update(); + } + + protected void GVInversionNomina_RowDataBound(object sender, GridViewRowEventArgs e) + { + if (e.Row.RowType == DataControlRowType.DataRow) + { + string tipo = e.Row.DBCampo("Tipo").ToString(); + e.Row.CssClass = string.Format("Tipo{0}", tipo); + } + } + + protected void BtnConsultar_Click(object sender, EventArgs e) + { + RfechaFin = TxtFechaFin.Text.Length > 9 ? TxtFechaFin.Text.ToDate().ToString("yyyyMMdd") : ""; + RfechaInicio = TxtFechaInicio.Text.Length > 9 ? TxtFechaInicio.Text.ToDate().ToString("yyyyMMdd") : ""; + RCveDepartamento = DdlDepartamento.SelectedValue.ToEntero(); + RcveSubProyecto = DdlSubProyecto.SelectedValue.ToEntero(); + CargaInversionNominaGET(); + } + + protected void LnkExportarEXcel_Click(object sender, EventArgs e) + { + DataTable DtMovimientos = new DataTable(); + List parametross = new List(); + parametross.Add(new ReportParameter("Empresa", UsuarioActual.Empresa.Empresa)); + + using (ClsNominas ObjPA_N = new ClsNominas()) + { + ObjPA_N.GetInversionNomina(UsuarioActual.CveEmpresa, RfechaInicio, RfechaFin, RcveProyecto, RcveSubProyecto, Ragrupador, RCveDepartamento, RcveStr1, RcveStr2); + DtMovimientos = ObjPA_N.DtResultados; + } + + ImprimirPDF("Empresas/Grales/RepInversionNomina.rdlc", DtMovimientos, parametross, String.Format("Reporte de Inversión de Nómina {0}", ""), "Excel", "DsInventarios", null); + } + + protected void LnkExportarPDF_Click(object sender, EventArgs e) + { + + DataTable DtMovimientos = new DataTable(); + List parametross = new List(); + parametross.Add(new ReportParameter("Empresa", UsuarioActual.Empresa.Empresa)); + + using (ClsNominas ObjPA_N = new ClsNominas()) + { + ObjPA_N.GetInversionNomina(UsuarioActual.CveEmpresa, RfechaInicio, RfechaFin, RcveProyecto, RcveSubProyecto, Ragrupador, RCveDepartamento, RcveStr1, RcveStr2); + DtMovimientos = ObjPA_N.DtResultados; + } + + ImprimirPDF("Empresas/Grales/RepInversionNomina.rdlc", DtMovimientos, parametross, String.Format("Reporte de Inversión de Nómina {0}", ""), "PDF", "DsInventarios", null); + } +} + + +//public class ClsNominasZ : IDisposable +//{ +// #region CLASE + +// // SQL ClsNominas_Nominas +// private SqlConnection SqlConexion; +// private SqlDataAdapter SqlAdapter; +// private SqlCommand SqlCommand; +// private SqlTransaction SqlTransacc; +// private DataTable Data; +// private bool disposedValue = false; // Para detectar llamadas redundantes +// protected DataSet DTSet; + +// public DataSet DTSetResultados +// { +// get +// { +// return DTSet; +// } +// } // REGISTRAR CONEXIONES ABIERTAS +// private int CveConexion = 0; + + +// public int CveNomina { get; set; } +// public int CveNominaTipo { get; set; } +// public string FolioFiscal { get; set; } +// public string Serie { get; set; } +// public int Folio { get; set; } +// public string RegistroPatronal { get; set; } +// public string SerieFolio { get; set; } +// public string NominaFolio { get; set; } +// public double DiasPagados { get; set; } +// public double SubTotal { get; set; } +// public double Descuento { get; set; } +// public double RetISR { get; set; } +// public double Total { get; set; } +// public string FormaPago { get; set; } +// public DateTime Fecha { get; set; } +// public string MotivoDescuento { get; set; } +// public string EnvioMail { get; set; } +// public string SeTimbro { get; set; } +// public int CvePeriodo { get; set; } +// // Public Property TipoPeriodo As String +// public int CvePersonal { get; set; } +// public string Codigo { get; set; } +// public string Nombre { get; set; } +// public string RFC { get; set; } +// public int CveMetodoPago { get; set; } +// public string MetodoPago { get; set; } +// public int CveEstatusCFDi { get; set; } +// public string EstatusCFDi { get; set; } +// public int CveUsuario { get; set; } +// public string Usuario { get; set; } +// public int CveEmpresa { get; set; } + +// public DataTable DtResultados +// { +// get +// { +// return Data; +// } +// } + + +// public int CveTipoPeriodo { get; set; } +// public string TipoPeriodo { get; set; } +// public int Ejercicio { get; set; } +// public int Mes { get; set; } +// public int Numero { get; set; } +// public DateTime FechaInicio { get; set; } +// public DateTime FechaFin { get; set; } +// public bool EsInicioMes { get; set; } +// public bool EsFinMes { get; set; } +// public bool EsInicioSS { get; set; } +// public bool EsFinSS { get; set; } +// public bool EsInicioAño { get; set; } +// public bool EsFinAño { get; set; } +// public bool FueCalculado { get; set; } +// public int Estatus { get; set; } +// public int NumPeriodo { get; set; } +// public DateTime FechaIng { get; set; } +// public DateTime FechaPago { get; set; } + +// public void IniciaTransacSQL() +// { +// SqlTransacc = SqlConexion.BeginTransaction(); +// } +// public void Commit() +// { +// SqlTransacc.Commit(); +// } +// public void RollBack() +// { +// SqlTransacc.Rollback(); +// } +// public ClsNominasZ() +// { +// SqlConexion = new SqlConnection(); +// SqlConexion.ConnectionString = ConfigurationManager.ConnectionStrings["Conexion"].ConnectionString; +// SqlAdapter = new SqlDataAdapter("", SqlConexion); +// try +// { +// SqlConexion.Open(); +// } +// catch (Exception ex) +// { +// this.OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex); +// } +// ConexionAdd(); +// } +// public ClsNominasZ(SqlTransaction TransaccionCompartida = null) +// { +// if (TransaccionCompartida == null) +// { +// SqlConexion = new SqlConnection(); +// SqlConexion.ConnectionString = ConfigurationManager.ConnectionStrings["Conexion"].ConnectionString; +// try +// { +// SqlConexion.Open(); +// } +// catch (Exception ex) +// { +// this.OnError("Ocurrió un error al intentar conectarse a la base de datos.", ex); +// } +// } +// else +// { +// SqlConexion = TransaccionCompartida.Connection; +// SqlTransacc = TransaccionCompartida; +// } + +// SqlAdapter = new SqlDataAdapter("", SqlConexion); +// ConexionAdd(); +// } +// private void DataAdapter(string pStrSQL, CommandType TipoComando = CommandType.StoredProcedure) +// { +// { +// var withBlock = SqlAdapter.SelectCommand; +// withBlock.Parameters.Clear(); +// withBlock.CommandText = pStrSQL; +// withBlock.CommandType = TipoComando; +// } +// Data = new DataTable(); +// if (SqlTransacc != null) +// SqlAdapter.SelectCommand.Transaction = SqlTransacc; +// } + +// private void ConexionAdd() +// { +// if (ConfigurationManager.AppSettings["RegistraConexion"] != null && ConfigurationManager.AppSettings["RegistraConexion"].ToString() == "1") +// { +// try +// { +// DataAdapter("PA_Sis_RegistrarConexion"); +// { +// var withBlock = SqlAdapter.SelectCommand.Parameters; +// withBlock.Add("@Clase", SqlDbType.VarChar).Value = this.GetType().Name; +// withBlock.Add("@Modulo", SqlDbType.VarChar).Value = string.Format("{0}?{1}", HttpContext.Current.Request.Url.AbsolutePath.ToString(), HttpContext.Current.Request.QueryString.ToString()); +// withBlock.Add("@IDConexion", SqlDbType.Int).Direction = ParameterDirection.Output; +// } +// SqlAdapter.Fill(Data); +// CveConexion = SqlAdapter.SelectCommand.Parameters["@IDConexion"].Value.ToString().ToEntero(); +// } +// catch (Exception ex) +// { +// this.OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()); +// } +// } +// } + +// private void ConexionClose() +// { +// if (CveConexion > 0 && ConfigurationManager.AppSettings["RegistraConexion"] != null && ConfigurationManager.AppSettings["RegistraConexion"].ToString() == "1") +// { +// DataAdapter(string.Format("UPDATE Sis_Conexiones SET FechaCierre = GETDATE() WHERE CveConexion = {0}", CveConexion), CommandType.Text); + +// try +// { +// SqlAdapter.Fill(Data); +// } +// catch (Exception ex) +// { +// this.OnError("Ocurrió un error registrar la conexión.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()); +// } +// CveConexion = 0; +// } +// } +// #endregion +// public bool GetInversionNomina(int CveEmpresa, string FechaInicio = "", string FechaFin = "", int CveProyecto = -1, int CveSubProyecto = -1, int Agrupador = -1, int CveDepartamento = -1, string CveStr1 = "-1", string CveStr2 = "-1") +// { +// bool Retorno = false; +// DataAdapter("PA_Nom_InversionNominaGET"); +// { +// var withBlock = SqlAdapter.SelectCommand.Parameters; +// withBlock.Add("FechaInicio", SqlDbType.VarChar).Value = FechaInicio; +// withBlock.Add("FechaFin", SqlDbType.VarChar).Value = FechaFin; +// withBlock.Add("CveProyecto", SqlDbType.Int).Value = CveProyecto; +// withBlock.Add("CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto; +// withBlock.Add("Agrupador", SqlDbType.Int).Value = Agrupador; +// withBlock.Add("CveDepartamento", SqlDbType.Int).Value = CveDepartamento; +// withBlock.Add("CveStr1", SqlDbType.VarChar).Value = CveStr1; +// withBlock.Add("CveStr2", SqlDbType.VarChar).Value = CveStr2; +// withBlock.Add("CveEmpresa", SqlDbType.Int).Value = CveEmpresa; +// } +// try +// { +// DTSet = new DataSet(); +// SqlAdapter.Fill(DTSet); +// Data = DTSet.Tables[0]; +// Retorno = true; +// } +// catch (SqlException Ex1) +// { +// this.OnError("Ocurrió un error al obtener el reporte de inversión de nomina.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()); +// } +// return Retorno; +// } + +// // IDisposable +// protected virtual void Dispose(bool disposing) +// { +// if (!disposedValue) +// { +// if (disposing) +// { +// SqlConexion.Close(); +// SqlConexion.Dispose(); +// if (Data != null) +// Data.Dispose(); +// if (SqlAdapter != null) +// SqlAdapter.Dispose(); +// if (SqlTransacc != null) +// SqlTransacc.Dispose(); +// } +// } +// disposedValue = true; +// } +// public void Dispose() +// { +// ConexionClose(); +// Dispose(true); +// GC.SuppressFinalize(this); +// } +//} From c039a0c82141f84091e01f303a70213678efbdc8 Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Wed, 18 Dec 2019 12:25:47 -0700 Subject: [PATCH 3/4] --- Nomina/RepInversiondeNomina.aspx.cs | 33 ++++++++++++++++++++++++++++- RH/SolicitudViaticos.aspx.cs | 4 ++-- 2 files changed, 34 insertions(+), 3 deletions(-) diff --git a/Nomina/RepInversiondeNomina.aspx.cs b/Nomina/RepInversiondeNomina.aspx.cs index e0ba2d0b3..61569ef53 100644 --- a/Nomina/RepInversiondeNomina.aspx.cs +++ b/Nomina/RepInversiondeNomina.aspx.cs @@ -57,6 +57,37 @@ public partial class Nomina_RepInversiondeNomina : ClsPaginas } #endregion + + protected override void Page_PreInit(object sender, EventArgs e) + { + if (!User.Identity.IsAuthenticated || UsuarioActual == null) + { + bool AuthorizeRequest = false; + var statusCode = 200; + + AuthorizeRequest = false; + + Response.StatusCode = statusCode; + if (!AuthorizeRequest) + { + Usuario.CerrarSession(); + Response.End(); + } + } + else + { + if (!Page.IsPostBack) + { + + CveModulo = 906; + if (!UsuarioActual.TienePermisoPagina(CveModulo)) + Response.Redirect(System.Web.Security.FormsAuthentication.DefaultUrl); + } + if (UsuarioActual.CveEmpresa == 42) + this.MasterPageFile = "~/Masters/Site42.master"; + } + } + protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) @@ -83,7 +114,7 @@ public partial class Nomina_RepInversiondeNomina : ClsPaginas RCveDepartamento = Request["CveDepartamento"] == null ? -1 : Request["CveDepartamento"].ToString().ToEntero(); RcveStr1 = Request["cveStr1"] == null ? "0" : Request["cveStr1"].ToString(); RcveStr2 = Request["cveStr2"] == null ? "0" : Request["cveStr2"].ToString(); - + //TxtFiltrocveProyecto.Text = RcveProyecto.ToString(); DdlSubProyecto.SelectedValueExist(RcveSubProyecto.ToString()); //TxtFiltroagrupador.Text = Ragrupador.ToString(); diff --git a/RH/SolicitudViaticos.aspx.cs b/RH/SolicitudViaticos.aspx.cs index 3c3968c5e..26109a0d1 100644 --- a/RH/SolicitudViaticos.aspx.cs +++ b/RH/SolicitudViaticos.aspx.cs @@ -719,11 +719,11 @@ public partial class RH_SolicitudViaticos : ClsPaginas if (DesgargaArchivo) { - ImprimirPDF("Empresas/72/Formatos/SolicitudViaticos.rdlc", DTConceptosDetalles, @params, String.Format("Solicitud de Viáticos - {0} - {1}", TxtFolio.Text, DdlPersonal.SelectedItem), Formato); + ImprimirPDF(string.Format("Empresas/{0}/Formatos/SolicitudViaticos.rdlc",UsuarioActual.CveEmpresa), DTConceptosDetalles, @params, String.Format("Solicitud de Viáticos - {0} - {1}", TxtFolio.Text, DdlPersonal.SelectedItem), Formato); } else { - retorno = StreamPDF("Empresas/72/Formatos/SolicitudViaticos.rdlc", DTConceptosDetalles, @params, String.Format("Solicitud de Viáticos - {0} - {1}", TxtFolio.Text, DdlPersonal.SelectedItem), Formato); + retorno = StreamPDF(string.Format("Empresas/{0}/Formatos/SolicitudViaticos.rdlc", UsuarioActual.CveEmpresa), DTConceptosDetalles, @params, String.Format("Solicitud de Viáticos - {0} - {1}", TxtFolio.Text, DdlPersonal.SelectedItem), Formato); } } else From ed8f1fb334405d3d8cb16197ea0e79ce55a1bc3d Mon Sep 17 00:00:00 2001 From: JORGE LUIS CAUDILLO ESPARZA Date: Wed, 18 Dec 2019 12:51:58 -0700 Subject: [PATCH 4/4] --- Empresas/Grales/Lista de Raya.docx | Bin 0 -> 18855 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Empresas/Grales/Lista de Raya.docx diff --git a/Empresas/Grales/Lista de Raya.docx b/Empresas/Grales/Lista de Raya.docx new file mode 100644 index 0000000000000000000000000000000000000000..5ae3419c22350031e178a36fe3cc1f844d2824c0 GIT binary patch literal 18855 zcmeHvWpo`$vZk1sSr#)hvt%(dTg;3WGcz+YGqc6aXfaEcEVOv#?wN77r+3f(fA5}C zd2UtKmzlTj7m*Q}5hW)H41xjx1^@v706+j>;y_N93DF1qGBG9v?K;JROWN`>aT>pr3;|8gmPkz* z+_88<J!4Ky8*C-?mzK`TYLx4^j;E{tyP=2AdKWL#wcc^wzR7Gi_$|7XOa4yZ_h~sOj z=@u%OkUEM}(cK!NQ3&U_-o!jz*Y~#QF7jrr27w7t9rbfmtQ%_lR!mH2y+YZr#3KZ( zYQi^`CE3ydDmkxe6s;R#{N%PClU?K>oA=WDdyjOuZpBGZx1raM%sHbFOUgt$xMbFmn0`t7)5(`8szNO6=+E zE%y})r3BcrtMf3z>z#^kZ@>U@f0JjtSghuY_ZpdZafN=DXI*h7gXuMl6>tbmaVg}rW%H%i7w+X{Anjv)v9Z~? z_-S{C3{j`81no<#BxTsJPRPXvoqo-y4p)H0z>Y!&*G1bMnDm1?n1>v?$ zVtPRt^VKFZ(ZodeeXY|TP&$ckVT?4VxTVIjq^Bdvi2YOng>~66bK;)gUHm09kQy=< zGL-Jg!&nPRHVDT3X;@qcIXj&HdR;Oe6GG8e9)3N6Oq*XUZb$!oUJ-&2ZxAX2b=J6 z%N2#(M@a*93?0hDw26ZW-_`n*^F>drV3Z@B>$UL^2BM#PQk~PqtD8?-I@5PH@6h7M%`GKn>lVEIH5l52NcVS%v8SN}$4$^N~ zW6QAIn^c5$ma3R{nl?ABO2K z*Gjg(l+;?}nfvzXdf|bPR zL=l%>*#cC<MTQU%|0GsptAZ#hRqSi^~QMBkM{Z$}X=&JbY%mCdC&k~jK#VrnB8 zUEz6KLSvZxTscyQ1!r_nMGQLc$CS9g}SRmYV)5QWzGRp$q8^qA_dnVIAY zKzo4hLN*%f)wS^E>7@wFj_C|Zz?H7DMA$@i&+9*xQxE!n8wK(*8mNd}qImP`Hn{j@xIrOqC6@jN8?FQ(YD78xZl5 zk5!V#MsW`U{j^CCNL7m0gP_mrnXRxetqNZQlM-SiY3i zrSren@PGpV-~d1X{vj-X&M1EsnSakNfbUk~``!PuKMjdv*8V@Oq{K(~;ipd@tRCg0 zSd|McH6H=t@bD;?hqHKpJZT6J6o{yx8FQe!ebfJ@$GVo?1lh%(t|2bELr(}etQD$} z6wzTq#|BSKKU}yK8Q1d>KFD(Jw0we!8RwipaUm1Z65R}=6rr6=LRv>)OuB?K=1x4< zacm~3tpIn5&lQq6G>>Ir4v(1U6!Q#($epahd(p*K+(sG232ut=%~D_|0+c2}aJq?T ziR1&35N>c2V(#_p_fax{)q2}2z6AfHfXmTK*e5pr2FP^e5n)H)^(T;0pKvoQp-lF< zkIz;90}&VL;)MBod6!W7uSRxC8UB}HKAymeK0@bpx^&&(->PR%pQd!7snB~eWxZnr zHHO52#J+I&n?4|9Ftyxf_GS}A#6j=aJ&0h~5WC;aNqYYy1M9Q&V*=mRbsiJ|0MftJ zwXuzjqqU8rk;6}YJ)bmTollQ2bU}5_^4e+T>o;lL^PoaLb(cGjZQjE3QdAil(51t7J+G7KAtRx3lHh+43%z0Iy)K?8yLxAZX_ z<>Slc5uH_>_~!&Z)RYOeVT!hGX)#BjIE&Zo7l>v+SKsi7mx`sy=1+~552Z%AG7V=I4MU3O$=_H!Ku=Sg4iojdjK{~K$W0+L z2BS3zSlq^X35N;bXM4(JdbGEdxK$lZo$e~P5^H(L)vQwp)6_~4VOrzyK^Fu;XU)zI z@bqolTH$S89zc}yr$Z~TGjY9Tpzvu&u8|&IIny5b@|;a46cqNFxUTntjPJcrL~ny+ zS2rREQMCL;h#O%ZGcG{f4*YOs)`AcF9weZs5Orv5sj4v}Wp5Lz(3O@3-@ zl>I#(xM*JkYXY{7cg5<1--xKuH=d}4P2i1hvH!`&h$5ug4|*qU#ye^MV`CUu8~%l} zYxb-32tgNIb1s)ZvW8jpLcoWaNsjku;~U^}hJl!C;fO}qJ3Li?2wS8v9F%GO_+Z9& z{<^B&(ekvF+FZO!Pm$#1iu?l)Rk%pXGWoSSJ37Dh0yA7BjEUlCmQQYXv$D%e9R(7# zG$siP9-)sokWkXwq*4Nb(NK(ol`R92CUSiln~)+_+z!m4WXs^EQSH?z8AoCD<< zgMEP+n8rtaXDJrc$>3Q%dsU&kY|z?6_0B3e{VDqg)z2Eq3Qaw{-&7y3D{h`0K4ILj zBLWK-wU*EPg&i!2BdMP$&PO|en~yzR}H8NyUj4%emGYjU^{jp zTc|R^4#OsO8?&KwVwe5>7J?`%Y7&wJ+nze1#%D3@)?6eJVJCtN>UJDl{DC7_rwC%{k>4Wtw z@xhG6nF2Sr5$zK8=2@|FQ1fv~QCvli!ZFYx3)EK*k`R=n(C1}b-8U5ycA`;39A4r3 z-QYK&g!*kyLb)ePmF|Dkv}duQGj#8yy?I|3Lio3)H8s*VG_q&-(=J|%`h&Anx449x z{_(b!!fMJQYxb&6&G1`JFtv+hD?vSLE=Wj%iO#4%=nN6p-dUJa7}Z%a3Ls*}xJ#5G zGwi~Eib^J0=ZZH^w{8u>zSqJ=!lqvo9F5_4D*3!MP{p%W0Om(Y0&^)wJJ}!yqYk8y z*pf0d&Tl58OOwD2jL=cw0R#f<=0&8xiB8xZD}yuRf&f)>7Oc?E^7*C16MfO1{e)pQOF|PI z%ehb74q64PNZ&fAf&|ZZjwktP6W$m^Pl(%l*YAmmzTeHCK&un}5<*GUFT>CU8BOgZ zB2;`)&M^#5g{0BTaUr>i4BeB58ETE}HQX@&Sb%ZAe7M#K$UZl5thLp-1xLbvq{A17 z4{C>8ZUkrWZv&c0jheKnr#$+}nIf6|Cs&qGONpa1|*F&RS`}BwOPxc*^myoCgh!wavI$x`zN992B=4a+=LN=*<~>xXBEk zL>w)iinc4@(W8aPH)(S+Kfx;Eg@(w?Jl3`8jBlz6MVSE*iP&L!frNf>xH!z_rD@ae zVTmcqYybGn#3MCVV1dyGZx=COCgm{+l3rBI8xG5wiG+_0JqVnyuVH+bWP4yhpjS$e z2mkSiBjc?FSEFYJD1ao#>IcCNg_qVRH77FRu4Me2^33 zJ|o56K+;P$`v?ShZTcgAOoXswTE@&Z8ldixXCjwdPUSspNFU2ixQcUE9XX5^^s~wD zM&dAeOqSLiy_{Ji@q1}@2vrFa}^H_W~V%$L9!S-ztVE&R4vj1vKHcN z_Qs(&pd->aK*NhgC>&r#QCXr+89)de3%qBP{?f9T1X%!JIuD?gZHYMx8dOJm1RRHo z{oxAz4oWL+0D7?m~ zuAtb-rs(Xf&&ORSNWwn_ReOc2;6bH2r)$N_N~x%Ede&bwQd>k8o;n73?(ek4m7U_q z&Tvbd5-nL^kvz1q9V-SvJJB*g(NE<|NN?fgm-;|{`~l+Zo{fwmK3yX#(s&-8m&-i1 z7r8H(QF|OB2~L3>0wQ=t8YuL!>uWl?w&R!0K++nv>#W>?(i_xyA2Az0lT>7-i)&^v zW>>a2#(F0aKaUUbw$$|AJ?^sYqNS`|ZLP=VE}Es6uSsBoyJ{iuHkV(US;B@6ZKsq` zkEA;Y*fG3RIYz7!F>OdJ8Z?S{OkuAgR1G6lUR^ROz9;M6JlYn#sM?1r@Q!7s#fWeTNNvCwY>J?TqU!$y&8cyi~l-(((@*<8Ef$k#pmKE&{P&~ey?yX44Y!*U_OYkh+|+$2#2c)_>iYq)nB}Ohd|jd@ifO|s$)UWn_EtkJ9fA@{H`ss%d zr#_#vhR=NFCTd7|@I6AJRPciS{<044{`RTBY&E;vR5gF(%kYzx{X+KwF+atFuAOg> zy-V>Aa-Ezr4bsKVyfsc0!wcCfOk@LPR*4-kmlp^9j@-d{-mHzF!`8;n!M+=K%g#@4 z32&1Wd`}67>@1^Y^U|eAYK0WVFzBPi z>^H#Ok42Gr;~Huw*s&&`x1PbwcHngC&YYv%JIw?qHdzMl6F7pXE$JprQM33+7;+O%O{JjY8~f6?1$N z7=IF%1*iz!wc$Se1|{Xaq6d+DLBtKDEQwIRr{4z!omk_M#EgQPA0I1UnceU>dwWz= z9W1IJG~gY7hQb3$s*TFQN*%04ZpKu#28V87MxV+Ob1f#2A@a3D^+->z{rSRmbwgnV zFt|ncPWr@~XBcnVKn%>oi1IF~6Ld zZSq6{8xB_xmOTMX*9Eu)*=5vfOU{NsO+Tn8vm10W6W5of`xJ6wnW zr3R`G99xFtZ-=ShBX%doL~Jj{BPJ3fk)Uo804iKaLSk^2%28QK`b zb((a$EyKv227wzJ>x7?(hzr-3ynbh380^0tJ`yIK_CcW{AtZuF&YO7RdJ_1 zP#`)^V$gO!zCl=XM7=xw<#q+?$qjg7CkgRKXf3l+eTHQbAK<*wh|mT+GHyV6(psK* z4qMxS=5$#x;>My8@qFK>+ImBJ{lGv8jBFBEkuOJvhDxVoE}qBkj&n;w`ShMU-Qvz+ zSs?LMVK~@>1n3g0)JymO;g*R&2B^(fD#z)1?N=A>bL&z|U(faGYq}p3*HfXsn+9SM z1KKk~f!#}%+=z04=Y9DK*D>okhk&yHeQ*IEDO)C0v9zc7?I(Yb(GZy|tR5&$N4b@xl3dD8cxNL^27Y<7~_U?3NY7(+7eV`R|5(!84Yxn%q_Od zG<*73hQzHrOCyPFc7cP`3bp$mfzBXLCSTjA(2-I25!FXoB<7l8<@r#QIaJ+YKE9lu z8ioQLhK`0#hZ!A>mI6}3wbb!szcKAPd5--X~r49CLmjwL!qLm|)#M4Ey&;O=~aF|!fF;WaqMOO6K! z1ixDnowgCFu{BzTM~(>!RPJ8zz&^{Dp&3E+#dCI!eYQeYBZ}yDRQwKF3%f|qp}3M5 z&uf(@X`l;#9Hb}6^>q;R-b61b98IXj9bX^OR2$MhX;a#@PvKB%{3V{19 zW%TAIZo^;IeeBXVY?+vX1 zb--{8-J#tm=wp1OqT4d!*|mEPOU$u#D7t1;-??|huVt0*dq3zj)eG3z7eLmV1?gv%0BR}w^%{GcE!ga zlr@wiun*8r{-L+NKRytP*cvX{RVtuJ3!%`9I1MiFigbH-N~w_BW|c%hRH}tdj^`du z9LkrRDW~j@LUg?IpHT94TFpIrNff9N?VdFlw1+?YF}Syk#?BF`DdE z&<*883dX|Wfz3BcO88La;~)k7iHFN6;>da!$h)`vC%OC}{za~x(Q-UfUMLWq+mGRP z1>PXdIAUQ>1;y`r>*vIHk{Ex6-oh%?YgqNqJ|{`UwGDZael2WqePv*P0zdm0*g_f9a(SOtNrqHbqv@(-ZXJgW%gwLB zzYa`Ifv+}8vl}NJ0-nHzGxV*WS|fsMtZG5B-n&AhOVg7cHi6i|Amf4S27E7#O8~vj@6)cJ>v&?2TRvYPq^s?8-hks521D3p&v6xSjXU?}NiNR2^shD(reF)8%m-_|7z#KMs8 zs#Y=(5;Pc^D|M+KIK59Wg32o?LFZ9x! zpa~UG%tABN-`|*X_@I;DzE};YWW5VEAz(1Ab~*>ZjMXcnNLw^%OmmsEj6-gv;dr0^ z;=a&xc(c@esjce?(*af}Z3E4R1C|QwkkfE%v;CsezQlHGA-8I2xt*S9y=j5v3L8c) zUZi;xwpjvRzEMShEJ~-jZMBKbY9Z+wM0uD;l_+Z{U-9J#Z&wJw^pH>-NsQLm)lbw1 z8i6D@gT0+N;=`pexjs-3RpV%lLh#$k?s3u`IcK!I3@0vDXeGgyAw(h>8L(#gtk4~+3P3uMp0dB2qe4f`+b99;A-cR2r;%&}dV~4t5_sf^O zpC5Ej3I$HvO{%l`KHt79dA~dl0A1KSrUc{1U_c*o@;Y1BVz8R31K?lX$FqkZj7U1h z%jJMjU_!fpAOiOE^d+y`a$j!P#f3ZW1M6V!HbM9r{X+{0`ceZ0yN74cG}`VotE#l| zN+pFX*VB%7YS)^;(NL3X`SMDS*T02~HBle{HjRy<1t*ZbcUIoPGOSkQjFuos`+hit zsh4!NRWbvQP$eEGMu;elF?Wm@tee^rq<1sO>h2pmkEqqj(~n`{z7_uYA|%EBh~#Ol zyya1hFU-;FB8+vh>$;b*`nCkUa|A`>m=U!Itf|-@`qQ0YW`p1Ec-lgwiIWY@g}xCE zUJdi6gCT~Qs7w-vUM*97f+7gZNSD$Or@sy;;r#(f68No4sAl_HbN2aKOwbu%p7FuD zGci5W)UKZlLKDTs)$+$$ZJCOhne<>$(~D11GYnV;XX{;``s-8muOn_2AnHbqEbAwf z4F}6k$kg~N3&OC&4MOP!o$-S!e5SsBBKl4(heV`P@bEYflM1NiRLi1sY-(Ph(6^A= z7~ewh$-p~M!$x!%f@%T%&Q;sC-}}OTkpJK-`0&_w$7r1=}WjYOkZNm&;%S>Gkl>rX03vm9zbJfyaJ4C zq?D@>!U|91*qKOkY-jsbHq8AdcX?Q4#L5>I9HbHW8L@-=ELh--(xk+&C(Z!BYIJ@J zd=xkh^NI7sM{4~dh2#VsdSHG@LwqwS6DYFQmsdECUN@~PS>3b0_u=;A`n`fEf;Gad z!G5ul*Zzj$y<;rHgw+!Dngvx=@vfP_Fzvb&QY(GL*3~i&uaRyuQ!>^~0!5PlDh@aJ<0CX17nMFg3y(BXWoPZ*sD2%BW$YzVr;l^er&a!x$wQ##w2brd zLTuOIFlO?B1|;YzUD>FI0ny%Sf?>OLYqFvxwkk<%#&t6eS6 z?4b)rX*8t>NHa9ajfqN|7po!cC20m5&*0jvHuoCOmqCA0Rz3N;7;fe43QyP#zi^Tv zkz3kVjTYs%KsCaQd^Dr%+)9_pL56!T@a4i?U;ddL@}qSLK9w8e{W<&8To_i%t?+@|wE z=kD!Ggz}*XYypEYfuy<{@Jr*z;g`zAF5<2;LN6o8+ zMXKdaoyN^9mu>LLO+lH}U8)BQ9nP=sYsUY*>QGu8bFK>l01ycCm;E&dBS%LwYm-0r zgd0@Xtan)vJn5#r>2I`#;;5;j5KIu)?BYe%X%;CoZX%J)(jn-8#8~a z)+ZjD9FW1}VEl1Xr0e-+K;1+rp-3UZ?}!?PQy2wFu@(!|n|r*iKPMj+34?)Rn0y%# z*Q4$6p?J)yD3l?mh>M@VaWGuIhP7ziokzO@QtVMGNf@9dA&dxEv+=~P0I$4G^P>)- zki%%n%Iyxllz)(Dl%GUsMedQk26^fJtXjMjZF0kh2|k-#neUqEQbzK2gb~-viU9&J z3P&t7jV8MnM!>e`;;ej}13^sH&5?b`QSFIPe3}_ZSuEs<)FF$P{231brKY%K)gf7) z*}fMCAyH7{`O}qmMED(%AG}0j&``P~iLBV&^;(DWN7hWivP3V~-L8bwGVL2#9AzB> zl`>l!Pm%DTMVC$_Vbq(zzIAL8Sfi7PNEg ziUe=op+*!4B{ZKW4C@2Yzg`AeBFtayUN-vHS~GqM-)YqG~eZoXWIt9#?t< zcW*635g3-3ID?pM{s*{t=&@-o(b|b51uO#C2krBV4{+%pHcIYZ1kb7}?`M-Bp3SfQ z4&_eF;9yR_%~zp06$2ytvUhwFxKERmIs;Y?%gPE`?9sO0+uSK3g3MHxm%_7Dp&5^g z#q5~z^CDUT@~&#g?K#5x;Vpcb5AeaW=Ni4lKUiDb7$g;{ZreYjH6WcqW3p61VFMC| zs^J#C-p{-a3_;kBG5|E`IiTmS%m8ts1sNjW&WS^gQH za+WFSvet$;bk9?~=_^+5y#4V?NXEX(AsXNAe2)ElWJZx@NC5Rbac-QF<^3EwfH>qV z0t$GB`-1eR&@_C&@n>)hUhk(Dl2CtL?y*3rDX?9ae1V=hIZ;ASZtQ2*7G76Ah%3KB z#Bih0DX?m8{O8x>DeuSg2LqjsL2h`Ica1{2y`m?NG8Wyhk4Nj;cjaO~qS$ChTOWXW zVsOVUrFPe#ffvB2UMDy%OdYngy=}^jsgzOyEi!pXxTngfMZ!%J@j|~_OE}7`8)Bq0 zm(@O+)E54ib*$9DnduVM)$=DK&Dh?}+|CW|s@1^?d3K=R+EKK!} zjLIFtCH(rQibpk1#y9P;hGGB1XlnRCSGh>}0b%kV6K-kYzN>xeIvIz4EY?~_d|1r^ zZu*{{1cVG2Cp-sl^4Q+BKP+us)w~@_HEV9Q$7hEgxw7!rU*@bsA1Qf$Ff8a!pxj&b z)cGH`vf`-VQoS{|wXeSzI(Hc6(m&~6`<1ug%Zg%QLDSUt$HU(SUr_N(TPhEmlYz;- zb`Qe!hEQ>k+et}AmQ{MZiUi4Wr=gkmuk@TrdOqyl@gg%Sa&lvP&_5~Z%D53)3!{9W zf7EY7KzwW6I*!f|OTTz)Vbv(>g4m~2_QubYkwO`8yLlklldP0#WHDML(`^)}@a{xP z&&0m=UaGO%4<&s9HR0p|-PH~-KZpHD_Wz3iJ)6p2O-Mj-ZVjrgt z1FKGeIN%R<>=H{Ax^4R19>a&qj^NZ#DDVjAcfU|NM1;snnRrYxWd&t0)*R=wA;HWl zGZKYNkbEXK_|8m-*Om4$4rLLr^5ifOE%XD#NkCxg*(USI@Kry0>^(jeEF`Up-FT>) zu9@I?&Epan*jzU=eadU1Z|@Bq40X0Vth@*jR%w_hvmR=s>H6r80<7lu6YHNRlp1e# zpAkeX6*@XkFkJYYT`(m*6FObEigp-`%mJsp+e)KS!S1OIqA@jTfjpJkFfHye+q0oD zJHg;l99GkW8>`p|>`UEgW|iLnH}d2|EhdQKmeRzCYgnqg2focSs?$wdo1UZ|o2xK~ zEyi$$I*;xsx8|Hzv#Q)g*F*wTi6q63$-q^DMhgwlHe<7th4SK3Q>@QdPxDrO80=3^7(_;<1T zd6q@Tme;WW8m%`Hzwbq9c#h9Vj?U0a-SwL6Ws^FC)Kh`iC}nKXW$i4{ZQU>7-C<+~ zsS~OU8vu*^b%+(dhC<}K%5et?JgnS(aM*ZG-jG6rmk@9xm|r&;5o0;}drG+V^^~mX z=_&CsFiL?Rb#o1RA9ag<7Uhb4AxQve5tNf3i@o#exqp6x`O6Vi1;m?OE<(S7Vn9&( zX;N@jn%S&3zHnUaP9oqL=UPnE)~BIh!^FPoA~D9y4Ur8{0Y5(q5`B#%YIKC}A)>-8 zO=N}Ek0_5is*sqosVUVqV*jqu;%R(56Q?uX7Qa4*&JgGO_zYQdWm$6Zz7=Ns1lz=s z4k|IWBYEb8i|w8_5@0N{-aOk76tN z23G5JE6op;H0gqu4K!g*1xOjexxAVHopaJm)=$;o78z+Mw5Ihb==n7PJN|M(%Q}D+X)BUrh7O}e0GhAM(exF92+f& znb%R+GaP`eh?$JBb2y1{>j{&sBaufL1?v!wO@2&3w3-5+wVM3ycvqklJnEFAm3^>h z+&H#Ga{{3dO>^(mC|VH7bAcS_as{C@N)UX}D23l^(Dm4J1wUuV<#tBP5quFViShgM z`a41pg#0{}DCt?3{55*3@9LR(j@rh2gZQ_OI<=cG^U4b)7k8EGtS2R0 zW!8!53okkW&=lEzgV^xVQk^rfgvPZo2MCS34Q&%F$-+4@9$xL1-TgyF_Z~+IPILhr zCQw^L+BCfkiMvfP%`^hBF6(H=O(begc+Ez-Ye-W5LssHTM|EA~BGO_#Ei@Bqg9gEF znoUjP+X&73reg?EwwlIGFxvpl`vzl|#M2{gOOFM+?9z)%$v}dd>>2@zY`HYlxz#6* zFo81*X4ZnL7p;)m8%Lx$&&LB>xTm7IJZGX0tyrTlr{>a*e zAy*D8QW5XhfEE{CM^>aS?OA$$v}5IUXv4~TRRt+xE-u9QII$4xX>T|PI)8e8zx=f- zh@4Ng{|oMas$d~?s=zS3RfQ6o%LzuO7IGv++p&;ps)9f&$_aYM765iH-aB$;5pHZ< z#SvMtXBq8J;;=?E#@rz_979OXpb?5TAE~>mNTT*LX$0|9e!@|uS&?x-ZgZcKJ~|O) z1KgJ-1G`XTgF4q|dvCtQymVyYRnQ5!rfN`GQbu*RtWf3O1xa(c-GV~=pT$djefrkE zxmM%+$-j#|XO=1rbNgR~(-h=N=y#W&7o6S;`*ti<8kW|-6&%`;car42tN}0GXytCK+iLIRo%+KTZ?UH_V+S(*y0z3pEsxBo*n?^^9(%re zac$5x>r(Fxu9?ePQ$mxq^sVLE#-dX7C3$cx#SL2~xX+p6Xn8lCc(Me=)8jM(-dY+@ zCx$d!Ib@T&cy^d!JkR{w?SRik%_U_KDEH6$X`ns8_3iss|-_wHk z&?)?+>YI}|#x|v@ohjp%HNBdD)2W}mVh!drE+6v&cChN5+W^b+vS}Nw?n>QS;)yhE ziYcY|TQsQ>v-+R6Zkm=oKZ(xVC@)U=ET2c-xJ}g9X-(%0v-Idm81YM5)ks{kL7IlgwO~P6Ms!+j_ z)h8_&rRQ)Wi0~w#zeS~F_lXq-Mt^#ws-oVkdQgNRQH)e4Pi{^P_};Jyg4gMR(r=8= z?dx(6S!JiN1;rvk9N>W#e47n?<1OF#(E*I01t9~ASxPuZS4qD8W66>6k(aMHpPmPp zRAl87=3IWR{Q-V(EW3UYEs#$T77@8@$b7Wf5|+sc2v^;WNGwslXxIr z+hUC#CFlbD1zzwz(&#Whvs7`l%C~p<%aNB)-f&Y2Z$uOl+nbkIT|BH{j(*I_hl2Z$ z(NQ{+Zmu3|X=erC`<5ctkom$I+pMFks4ovqZJos+K+V`ynTe9X*i>Ri}9 zTW-*Wh^SUVN2AohGZOv!JDg?=YFsw1J%u)m{V&y4E>s!Eu5uQI%F8C82GE?Jp2f(k zsuE*#GnTQ;ggCR^N@I_x8_N8FE8ie0UA*Sp$cO>DR*rm4TI$54c)0*ENjiX4gCTj1 z$H{XqT_|>f;Yb;Bmvhmg%Fs^$Qr6ppwpfu@9Z|dE)R^ZVXW%TKy1^4Ifp{UY zc_^QXhl++8%Wjqmj}yy2#N%qh%5J+ekj{uS?6MM%KWY1UFxHP|I+WuPF*8+XFGP0T z+hy;Ymlvv77CnvUV6e%JKI@`rS@fG6=F*k^8RC^RixvACMJ->|Dut}-X@VWl*ycYv z_!g_W9bWHDfPD{bMSRbKdQW|lv$wHzpfj+s|APqciM9Wm`t<(jBI4v_`#-#=PD($+ z!(QMzD&|Wsk(l4@At9SEcM+_!vO<9@w>_K|p0BR7U~IB~+udy;Nz|GxZ%tmY$mtQqLe9Ap%(?WHI38NF&raqBv_u0waAgBuZkEvv5U29h$xWLoUER zt_&C?Z!MnX_9R{j6W_4l4}af!)AX~WPGnrQr2QP61=A9~-i!L;X%4WFla9Mm-Oc{(l&Z7xLgWUSCq75 z)=Fz8oBZIR2b6uGxb-h1^rZP51jm=GBzyT~O)js*)KQ?%L#{lse%AABO@2lCFYp=O z{}^#if7-t?^-kKQ_gaL%l2+f=_NVgtU(UW0_WhHgC}6!tkI;dBgb(u7U{xR;4QwLE zR&H;a6|92z5Vo-{RDoE)I-;feLZM8#b%KI(0w%eCo3^k@ms1s&-U$0yg4)VY5=jmW$|LOR2m8qS$!N;^G65L=e(8##&jO%7?X}Ow?f!b z;7@7Jj1846uE^sK!C8Cz9$qBh1E<-RwFYM7V4}u=I~N)ti}uFgZyD;cRal&70CQjE zo!iurOBC&ulyM=nthna!`D%F?8+~z&JLT*FP8bSEPg~=FaX{aP-*Kq_hi!!3EZ zZ1|0p?CA<@5GJ%*_au3MYv4`GeN=AhcCAa!bN7oVG@!EcG3<@U7zLX(KxZP+*0ew4 zxx$kfD_ZsL4yN@xd>uu! z^Y=b@QVUMMqJ6!&)XErto|*N+?uF@hQ&!bfsol1VLdFDj8hePR`qr^@QNywD+%5NY zuKzOoKgNcktO?IW2%dH1CGcKfm7O&%gXv`42BUk(2y;1Al*?!Y?QQ z!1TLh{pIZnzXN|yH2(#?e77k6EA9Mu_}^1+e}Mr2aNo1a{$Gi>zqj;z3gxf1vfo#& z|7huN36;O&f6r$7g;#oC?*0S+*W9+>;lJk<{enZjn^k|n|B_|&JNoy;kzZ)zcWd`A z=s!Y2e@Fiwp8N~Vi}jbE{;y!=-_gGZp#DOq;rtE#kA43hV)zSvhxfOU{}C1Td*8oD zk^Mr;6a203e?fXVZ(7L4EDbMzlm{&)P}O}<}f001IB0D%88 o0Dp)7ee(S)d|BWx@PAFka+09$8sX>bmyiJ(-nX?kgnyp>AMTNi1poj5 literal 0 HcmV?d00001