316 lines
14 KiB
C#
316 lines
14 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using System.Web.UI.WebControls;
|
|
using Extensiones;
|
|
using System.Data;
|
|
using static Extensiones.ModExtensiones;
|
|
using Microsoft.Reporting.WebForms;
|
|
using System.Web.UI.HtmlControls;
|
|
using System.Text;
|
|
|
|
public partial class Compras_RepCxPPeriodo : ClsPaginas
|
|
{
|
|
#region PROPIEDADES
|
|
|
|
private DataTable DtDatos
|
|
{
|
|
get { return DtDatos = (DataTable)ViewState["DtDatos"]; }
|
|
set { ViewState["DtDatos"] = value; }
|
|
}
|
|
private int TipoCambio
|
|
{
|
|
get { return (ViewState["TipoCambio"] == null) ? -1 : Convert.ToInt32(ViewState["TipoCambio"]); }
|
|
set { ViewState["TipoCambio"] = value; }
|
|
}
|
|
private double TCEspecifico
|
|
{
|
|
get { return (ViewState["TCEspecifico"] == null) ? 0 : Convert.ToDouble(ViewState["TCEspecifico"]); }
|
|
set { ViewState["TCEspecifico"] = value; }
|
|
}
|
|
|
|
#endregion
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
InicializaValores();
|
|
}
|
|
}
|
|
|
|
private void InicializaValores()
|
|
{
|
|
TipoCambio = 1;
|
|
TCEspecifico = -1;
|
|
|
|
|
|
|
|
|
|
//DdlProveedor.DataSource = get_GlobalDTCompProveedores(UsuarioActual.CveEmpresa);
|
|
//DdlProveedor.DataBind();
|
|
|
|
|
|
|
|
if (UsuarioActual.Empresa.Funcionalidad(105) == "1") {
|
|
DdlProveedor.setEsWebService(true);
|
|
DdlProveedor.Attributes.Add("data-metodo", "getproveedores");
|
|
DdlProveedor.SelectedText = "Todos";
|
|
DdlProveedor.SelectedValue = "-1";
|
|
}
|
|
else {
|
|
DdlProveedor.setEsWebService(false);
|
|
DdlProveedor.ddl.DataSource = get_GlobalDTCompProveedores(UsuarioActual.CveEmpresa);
|
|
DdlProveedor.ddl.DataBind();
|
|
DdlProveedor.ddl.Items.Insert(0, new ListItem("Todos", "-1"));
|
|
}
|
|
|
|
|
|
|
|
DdlUsuarioResponsable.DataSource = get_GlobalDTUsuarioResponsable ( UsuarioActual.CveEmpresa );
|
|
DdlUsuarioResponsable.DataBind();
|
|
|
|
DdlSubProyecto.DataSource = get_GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1);
|
|
DdlSubProyecto.DataBind();
|
|
|
|
DdlProveedoresClasificaciones.DataSource = get_GlobalDTProveedorClasificacion(UsuarioActual.CveEmpresa);
|
|
DdlProveedoresClasificaciones.DataBind();
|
|
DdlProveedoresClasificaciones.Items.Insert(1, new ListItem("Sin Clasificación", "0"));
|
|
|
|
DdlEstatusCompra.DataSource = GlobalDTCompEstatusFactura.FiltraParametros("CveEstatusFactura IN (1, 2)");
|
|
|
|
if (UsuarioActual.CveEmpresa == 66) { DdlEstatusCompra.SelectedIndex = 2; DdlGrupo.SelectedValue = "8"; }
|
|
|
|
DdlUsuarioRegistro.DataSource = get_GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros( "", "Nombre");
|
|
DdlUsuarioRegistro.DataBind();
|
|
DdlUsuarioRegistro.Items.Insert(0, new ListItem("Todos", "-1"));
|
|
|
|
txtCorteA.Text = $"31/12/{NowADS().Year}";
|
|
}
|
|
|
|
private void Consulta()
|
|
{
|
|
if (RblTipoCambio.SelectedValue.ToEntero() == 3 && TxtEspecifico.Text != "") { TCEspecifico = TxtEspecifico.Text.ToDouble(); } else { TCEspecifico = -1; }
|
|
|
|
|
|
int CveProveedor = DdlProveedor.SelectedValue.ToEntero() > 0 ? DdlProveedor.SelectedValue.ToEntero() : -1;
|
|
|
|
string TipoDocto = (DdlTipoDocto.GetSelectedValuesM() == "") ? "-1" : DdlTipoDocto.GetSelectedValuesM();
|
|
|
|
ClsMovimientos ObjMov = new ClsMovimientos();
|
|
if (ObjMov.GetCxPPeriodo(CveProveedor, DdlSubProyecto.SelectedValue.ToEntero(),DdlProveedoresClasificaciones.SelectedValue.ToEntero(),
|
|
DdlUsuarioResponsable.SelectedValue.ToEntero(),DdlUsuarioRegistro.SelectedValue.ToEntero(),DdlEstatusCompra.SelectedValue.ToEntero(),UsuarioActual.CveEmpresa,
|
|
DdlGrupo.SelectedValue.ToEntero(),DdlSubProyecto.SelectedValue.ToEntero(),TipoCambio,TCEspecifico,txtCorteA.Text.ToDate(),UsuarioActual.CveUsuario,
|
|
DdlTipoProveedor.SelectedValue.ToEntero(), TipoDocto: TipoDocto))
|
|
{
|
|
GvDatos.DataSource = ObjMov.DtResultados;
|
|
DtDatos = ObjMov.DtResultados;
|
|
}
|
|
ObjMov.Dispose();
|
|
GvDatos.DataBind();
|
|
UpDatos.Update();
|
|
}
|
|
|
|
protected void BtnTipoCambio_Click(object sender, EventArgs e)
|
|
{
|
|
Consulta();
|
|
}
|
|
|
|
protected void RblTipoCambio_SelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
TipoCambio = RblTipoCambio.SelectedValue.ToEntero();
|
|
if (TipoCambio == 3)
|
|
{
|
|
LiEspecifico.Visible = true;
|
|
TCEspecifico = get_GlobalTipoCambio(NowADS());
|
|
TxtEspecifico.Text = TCEspecifico.ToString();
|
|
}
|
|
else
|
|
{
|
|
LiEspecifico.Visible = false;
|
|
}
|
|
UpBodyTipoCambio.Update();
|
|
}
|
|
|
|
protected void LnkVerGrafica_Click(object sender, EventArgs e)
|
|
{
|
|
if (DtDatos != null)
|
|
{
|
|
if (DtDatos.Rows.Count > 0)
|
|
{
|
|
DataTable Dt = new DataTable();
|
|
Dt.Columns.Add("mes");
|
|
|
|
DataTable Dt2 = new DataTable();
|
|
Dt2.Columns.Add("balloonText");
|
|
Dt2.Columns.Add("bullet");
|
|
Dt2.Columns.Add("title");
|
|
Dt2.Columns.Add("valueField");
|
|
Dt2.Columns.Add("fillAlphas");
|
|
|
|
foreach (DataRow Row in DtDatos.Rows)
|
|
{
|
|
if (Row["GPO"].ToString() != "")
|
|
{
|
|
Dt.Columns.Add($"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}");
|
|
DataRow Row2 = Dt2.NewRow();
|
|
Row2["balloonText"] = "Saldo [[category]]: [[value]]";
|
|
Row2["bullet"] = "round";
|
|
Row2["title"] = $"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}";
|
|
Row2["valueField"] = $"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}";
|
|
Row2["fillAlphas"] = 0;
|
|
Dt2.Rows.Add(Row2);
|
|
}
|
|
}
|
|
|
|
DataRow RowEnero = Dt.NewRow();
|
|
DataRow RowFebrero = Dt.NewRow();
|
|
DataRow RowMarzo = Dt.NewRow();
|
|
DataRow RowAbril = Dt.NewRow();
|
|
DataRow RowMayo = Dt.NewRow();
|
|
DataRow RowJunio = Dt.NewRow();
|
|
DataRow RowJulio = Dt.NewRow();
|
|
DataRow RowAgosto = Dt.NewRow();
|
|
DataRow RowSeptiembre = Dt.NewRow();
|
|
DataRow RowOctubre = Dt.NewRow();
|
|
DataRow RowNoviembre = Dt.NewRow();
|
|
DataRow RowDiciembre = Dt.NewRow();
|
|
|
|
foreach (DataRow Row in DtDatos.Rows)
|
|
{
|
|
if (Row["GPO"].ToString() != "")
|
|
{
|
|
RowEnero[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Enero"].ToString();
|
|
RowEnero["mes"] = "Enero";
|
|
RowFebrero[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Febrero"].ToString();
|
|
RowFebrero["mes"] = "Febrero";
|
|
RowMarzo[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Marzo"].ToString();
|
|
RowMarzo["mes"] = "Marzo";
|
|
RowAbril[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Abril"].ToString();
|
|
RowAbril["mes"] = "Abril";
|
|
RowMayo[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Mayo"].ToString();
|
|
RowMayo["mes"] = "Mayo";
|
|
RowJunio[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Junio"].ToString();
|
|
RowJunio["mes"] = "Junio";
|
|
RowJulio[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Julio"].ToString();
|
|
RowJulio["mes"] = "Julio";
|
|
RowAgosto[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Agosto"].ToString();
|
|
RowAgosto["mes"] = "Agosto";
|
|
RowSeptiembre[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Septiembre"].ToString();
|
|
RowSeptiembre["mes"] = "Septiembre";
|
|
RowOctubre[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Octubre"].ToString();
|
|
RowOctubre["mes"] = "Octubre";
|
|
RowNoviembre[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Noviembre"].ToString();
|
|
RowNoviembre["mes"] = "Noviembre";
|
|
RowDiciembre[$"{Row["GPO"].ToString()} {Row["Abreviatura"].ToString()}"] = Row["Diciembre"].ToString();
|
|
RowDiciembre["mes"] = "Diciembre";
|
|
}
|
|
}
|
|
|
|
Dt.Rows.Add(RowEnero);
|
|
Dt.Rows.Add(RowFebrero);
|
|
Dt.Rows.Add(RowMarzo);
|
|
Dt.Rows.Add(RowAbril);
|
|
Dt.Rows.Add(RowMayo);
|
|
Dt.Rows.Add(RowJunio);
|
|
Dt.Rows.Add(RowJulio);
|
|
Dt.Rows.Add(RowAgosto);
|
|
Dt.Rows.Add(RowSeptiembre);
|
|
Dt.Rows.Add(RowOctubre);
|
|
Dt.Rows.Add(RowNoviembre);
|
|
Dt.Rows.Add(RowDiciembre);
|
|
|
|
RegistraScript($"CargaGraficaLineas({Dt.ToJson()},{Dt2.ToJson()})", "11");
|
|
RegistraScript(String.Format("$('#{0}').modal();", "DivModalGrafica"), "22");
|
|
UpGrafica.Update();
|
|
}
|
|
else
|
|
{
|
|
Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia);
|
|
}
|
|
}
|
|
|
|
protected void LnkPdf_Click(object sender, EventArgs e)
|
|
{
|
|
GenerarPDF("PDF");
|
|
}
|
|
|
|
protected void LnkExcel_Click(object sender, EventArgs e)
|
|
{
|
|
GenerarPDF("EXCEL");
|
|
}
|
|
|
|
private void GenerarPDF(string Opcion)
|
|
{
|
|
if (DtDatos.Rows.Count < 1)
|
|
{
|
|
Alert("Tiene que haber datos consultados para imprimir.", TipoMensaje.MsgAdvertencia);
|
|
return;
|
|
}
|
|
StringBuilder StrFiltro = new StringBuilder();
|
|
if (txtCorteA.Text != "")
|
|
StrFiltro.AppendFormat(" <b>Fecha Corte</b>: {0}", txtCorteA.Text.ToDate().ToShortDateString());
|
|
if (DdlSubProyecto.SelectedValue != "-1")
|
|
StrFiltro.AppendFormat(" <b>Sucursal</b>: {0}", DdlSubProyecto.SelectedItem.Text);
|
|
if (DdlGrupo.SelectedValue != "-1")
|
|
StrFiltro.AppendFormat(" <b>Grupo</b>: {0}", DdlGrupo.SelectedItem.Text);
|
|
if (DdlProveedor.SelectedValue != "-1")
|
|
StrFiltro.AppendFormat(" <b>Proveedor</b>: {0}", DdlProveedor.ddl.SelectedItem.Text);
|
|
if (DdlProveedoresClasificaciones.SelectedValue != "-1")
|
|
StrFiltro.AppendFormat(" <b>Clasificación Proveedor</b>: {0}", DdlProveedoresClasificaciones.SelectedItem.Text);
|
|
if (DdlTipoProveedor.SelectedValue != "-1")
|
|
StrFiltro.AppendFormat(" <b>Tipo Proveedor</b>: {0}", DdlTipoProveedor.SelectedItem.Text);
|
|
if (DdlEstatusCompra.SelectedValue != "-1")
|
|
StrFiltro.AppendFormat(" <b>Estatus Compra</b>: {0}", DdlEstatusCompra.SelectedItem.Text);
|
|
if (DdlUsuarioResponsable.SelectedValue != "-1")
|
|
StrFiltro.AppendFormat(" <b>Responsable</b>: {0}", DdlUsuarioResponsable.SelectedItem.Text);
|
|
if (DdlUsuarioRegistro.SelectedValue != "-1")
|
|
StrFiltro.AppendFormat(" <b>Registro</b>: {0}", DdlUsuarioRegistro.SelectedItem.Text);
|
|
|
|
string RutaPDF = "";
|
|
string Ruta = UsuarioActual.Empresa.Ruta;
|
|
RutaPDF = $"{Ruta}/Formatos/RepCxPPeriodo.rdlc";
|
|
if (!System.IO.File.Exists(RutaPDF))
|
|
{
|
|
RutaPDF = "Empresas/Grales/Formatos/RepCxPPeriodo.rdlc";
|
|
}
|
|
|
|
System.IO.FileInfo Imagen = new System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png");
|
|
string logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa);
|
|
List<ReportParameter> para = new List<ReportParameter>();
|
|
para.Add(new ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa));
|
|
para.Add(new ReportParameter("UsuarioImprimio", UsuarioActual.Nombre));
|
|
para.Add(new ReportParameter("FechaImpresion", NowADS().ToShortDateString()));
|
|
para.Add(new ReportParameter("Filtros", StrFiltro.ToString()));
|
|
if (Imagen.Exists)
|
|
{
|
|
para.Add(new ReportParameter("LogoPath", logouri));
|
|
}
|
|
else
|
|
{
|
|
para.Add(new ReportParameter("LogoPath", ""));
|
|
}
|
|
ImprimirPDF(RutaPDF, DtDatos, para, "RepCxPPeriodo" + NowADS().ToString("yyyyMMddhhmmss"), Opcion);
|
|
}
|
|
protected void GvDatos_RowDataBound(object sender, GridViewRowEventArgs e)
|
|
{
|
|
if (e.Row.RowType == DataControlRowType.DataRow)
|
|
{
|
|
if (e.Row.DBCampo("GPO").ToString() == "")
|
|
{
|
|
e.Row.CssClass = "Totales";
|
|
e.Row.Cells[0].Text = e.Row.DBCampo("Moneda");
|
|
}
|
|
}
|
|
}
|
|
|
|
protected void BtnConsultar_Click(object sender, EventArgs e)
|
|
{
|
|
Consulta();
|
|
}
|
|
} |