Commit inicial Ventas Productivo

This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2019-08-14 16:40:54 -07:00
commit c35cf91883
13328 changed files with 3711549 additions and 0 deletions

View File

@@ -0,0 +1,570 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI.WebControls;
using Extensiones;
using System.Data;
using Microsoft.Reporting.WebForms;
public partial class CGame_AsignacionEmpaque2 : ClsPaginas
{
#region PROPIEDADES
private DataTable DtCant
{
get { return DtCant = (DataTable)ViewState["DtCant"]; }
set { ViewState["DtCant"] = value; }
}
private DataTable DtAsignado
{
get { return DtAsignado = (DataTable)ViewState["DtAsignado"]; }
set { ViewState["DtAsignado"] = value; }
}
private DataTable DtBins
{
get { return DtBins = (DataTable)ViewState["DtBins"]; }
set { ViewState["DtBins"] = value; }
}
private DataTable DtCajas
{
get { return DtCajas = (DataTable)ViewState["DtCajas"]; }
set { ViewState["DtCajas"] = value; }
}
private int CveProduccionResultado
{
get { return CveProduccionResultado = (int)ViewState["CveProduccionResultado"]; }
set { ViewState["CveProduccionResultado"] = value; }
}
private double Cantidad
{
get { return Cantidad = (double)ViewState["Cantidad"]; }
set { ViewState["Cantidad"] = value; }
}
private int CvePS
{
get { return CvePS = (int)ViewState["CvePS"]; }
set { ViewState["CvePS"] = value; }
}
private int Tipo
{
get { return Tipo = (int)ViewState["Tipo"]; }
set { ViewState["Tipo"] = value; }
}
private int FechaCorteNum
{
get { return FechaCorteNum = (int)ViewState["FechaCorteNum"]; }
set { ViewState["FechaCorteNum"] = value; }
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CreaDt();
CargaFiltros();
CargaOrdenProduccionDetalle(false);
CargaResultado();
}
}
#region CARGAS
protected void CreaDt()
{
DtCant = new DataTable();
DtCant.Columns.Add("CveOrdenProduccionDetalle");
DtCant.Columns.Add("Folio");
DtCant.Columns.Add("CantRest");
DtCant.Columns.Add("Cantidad");
DtCant.Columns.Add("FolioOP");
DtCant.Columns.Add("TipoProducto");
DtCant.Columns.Add("TipoMaduracion");
DtCant.Columns.Add("Tamaño");
DtCant.Columns.Add("FechaNum");
DtAsignado = new DataTable();
DtAsignado.Columns.Add("CveOrdenProduccionDetalle");
DtAsignado.Columns.Add("CveProduccionResultado");
DtAsignado.Columns.Add("CantidadAsignada");
DtAsignado.Columns.Add("CveOrdenProduccion");
DtAsignado.Columns.Add("FolioOP");
DtAsignado.Columns.Add("TipoProducto");
DtAsignado.Columns.Add("TipoMaduracion");
DtAsignado.Columns.Add("Tamaño");
DtAsignado.Columns.Add("Id");
}
protected void CargaFiltros()
{
ClsCGame ObjCGame = new ClsCGame();
int CveEmpresa = UsuarioActual.CveEmpresa;
if (ObjCGame.GetHuerta(CveEmpresa))
{
DdlHuerta.DataSource = ObjCGame.DtResultados;
DdlHuerta.DataBind();
}
if (ObjCGame.GetPS(CveEmpresa))
{
DdlFruto.DataSource = ObjCGame.DtResultados;
DdlFruto.DataBind();
}
if (ObjCGame.GetTipoMaduracion(-1, -1, -1, CveEmpresa))
{
DdlVariedad.DataSource = ObjCGame.DtResultados;
DdlVariedad.DataBind();
}
if (ObjCGame.GetTipoProducto(CveEmpresa))
{
DdlTipoProduccion.DataSource = ObjCGame.DtResultados;
DdlTipoProduccion.DataBind();
}
if (ObjCGame.GetTamaños(CveEmpresa))
{
DdlTamaño.DataSource = ObjCGame.DtResultados;
DdlTamaño.DataBind();
}
if (ObjCGame.GetCalidad(CveEmpresa))
{
DdlCalidad.DataSource = ObjCGame.DtResultados;
DdlCalidad.DataBind();
}
if (ObjCGame.GetTipoCaja(CveEmpresa))
{
DdlEtiqueta.DataSource = ObjCGame.DtResultados;
DdlEtiqueta.DataBind();
}
if (ObjCGame.GetTipoEmpaque(-1, -1, CveEmpresa))
{
DdlTipoEmpaque.DataSource = ObjCGame.DtResultados;
DdlTipoEmpaque.DataBind();
}
ObjCGame.Dispose();
}
protected void CargaResultado()
{
ClsCGame ObjCGame = new ClsCGame();
Double TotalCajas = 0, TotalBins = 0;
int CveHuerta = DdlHuerta.SelectedValue.ToEntero();
int CveFruto = DdlFruto.SelectedValue.ToEntero();
int CveTipoProduccion = DdlTipoProduccion.SelectedValue.ToEntero();
int CveVariedad = DdlVariedad.SelectedValue.ToEntero();
int CveTipoEmpaque = DdlTipoEmpaque.SelectedValue.ToEntero();
int CveTamaño = DdlTamaño.SelectedValue.ToEntero();
int CveCalidad = DdlCalidad.SelectedValue.ToEntero();
int CveEtiqueta = DdlEtiqueta.SelectedValue.ToEntero();
if (ObjCGame.GetProduccionResultado(-1, -1, -1, UsuarioActual.CveEmpresa, -1, CveHuerta, CveFruto, CveVariedad, CveTipoProduccion, CveTamaño, CveCalidad, CveEtiqueta, CveTipoEmpaque))
{
DtCajas = ObjCGame.DtResultados.FiltraParametros("CveOrdenProduccionDetalle IS NULL AND Tipo = 1");
GvCajas.DataSource = DtCajas;
TotalCajas = ObjCGame.DtResultados.FiltraParametros("CveOrdenProduccionDetalle IS NULL AND Tipo = 1").SUM("Cantidad");
DtBins = ObjCGame.DtResultados.FiltraParametros("CveOrdenProduccionDetalle IS NULL AND Tipo = 2");
GvBins.DataSource = DtBins;
TotalBins = ObjCGame.DtResultados.FiltraParametros("CveOrdenProduccionDetalle IS NULL AND Tipo = 2").SUM("Cantidad");
ObjCGame.Dispose();
}
GvCajas.DataBind();
GvBins.DataBind();
UpDatos.Update();
LblCajas.Text = TotalCajas.FormatoNumero(2);
LblBins.Text = TotalBins.FormatoNumero(2);
UpIndicadores.Update();
}
private void CargaOrdenProduccionDetalle(bool SoloFiltra, int CvePS = -1, int Tipo = -1, int CveProduccionResultado = -1, double Cantidad = 0, int FechaCorteNum=0)
{
if (SoloFiltra)
{
DdlOrdenProduccionDetalle.Items.Clear();
DdlOrdenProduccionDetalle.DataSource = DtCant.FiltraParametros($"CvePS = {CvePS} AND Tipo = {Tipo} AND CantRest > 0 AND FechaNum >= {FechaCorteNum} ");
DdlOrdenProduccionDetalle.Items.Insert(0, new ListItem("Seleccione", "-1"));
DdlOrdenProduccionDetalle.DataBind();
double CantidadAsignada = 0;
foreach (DataRow Dr in DtAsignado.FiltraParametros($"CveProduccionResultado = {CveProduccionResultado}").Rows)
{
CantidadAsignada += Dr["CantidadAsignada"].ToString().ToDouble();
}
if (Cantidad == CantidadAsignada) { DdlOrdenProduccionDetalle.Enabled = false; } else { DdlOrdenProduccionDetalle.Enabled = true; RVTxtCantidad.MaximumValue = (Cantidad - CantidadAsignada) .ToString(); }
GvAsignado.DataSource = DtAsignado.FiltraParametros($"CveProduccionResultado = {CveProduccionResultado}");
GvAsignado.DataBind();
}
else
{
ClsCGame ObjCGame = new ClsCGame();
if (ObjCGame.GetOrdenProduccionDetalleCant(UsuarioActual.CveEmpresa, -1, -1))
{
DtCant = ObjCGame.DtResultados.FiltraParametros("CantRest > 0 AND CveEstatus IN (1,2,3)");
}
ObjCGame.Dispose();
}
}
protected void BtnConsultar_Click(object sender, EventArgs e)
{
CargaResultado();
}
#endregion
#region GRIDVIEW
protected void GvResultado_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.FCLinkButton("BtnDividir").Attributes.Add("onclick", String.Format("Dividir('{0}');", e.Row.FCTextBox("TxtCantDividir").ClientID));
e.Row.FCLinkButton("BtnDividir").CommandArgument = e.Row.RowIndex.ToString();
e.Row.FCTextBox("TxtCantDividir").Attributes.Add("onkeyup", String.Format("LimitaCantidad({0},this,'{1}');", e.Row.DBCampo("Cantidad"), e.Row.FCLinkButton("BtnDividir").ClientID));
if (e.Row.DataKey("CveTipoEtiqueta").ToEntero() == 1)
{
e.Row.FCLabel("LblTipoEtiqueta").Text = "Si";
}
else
{
e.Row.FCLabel("LblTipoEtiqueta").Text = "No";
}
}
}
protected void GvBins_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.FCLinkButton("BtnDividir").Attributes.Add("onclick", String.Format("Dividir2('{0}');", e.Row.FCTextBox("TxtCantDividir").ClientID));
e.Row.FCLinkButton("BtnDividir").CommandArgument = e.Row.RowIndex.ToString();
e.Row.FCTextBox("TxtCantDividir").Attributes.Add("onkeyup", String.Format("LimitaCantidad2({0},this,'{1}');", e.Row.DBCampo("Cantidad"), e.Row.FCLinkButton("BtnDividir").ClientID));
if (e.Row.DataKey("CveTipoEtiqueta").ToEntero() == 1)
{
e.Row.FCLabel("LblTipoEtiqueta").Text = "Si";
}
else
{
e.Row.FCLabel("LblTipoEtiqueta").Text = "No";
}
}
}
#endregion
#region DIVIDIR
protected void Dividir(object sender, EventArgs e)
{
int Index = ((LinkButton)sender).CommandArgument.ToString().ToEntero();
if (DtAsignado.FiltraParametros($"CveProduccionResultado= {GvCajas.Rows[Index].DataKey("CveProduccionResultado").ToEntero()}").Rows.Count > 0)
{
Alert("No se puede dividir si se tienen asignaciones pendientes.", ModExtensiones.TipoMensaje.MsgAdvertencia);
return;
}
double Cantidad = HdnCantidad.Value.ToDouble();
double CantidadPasada = GvCajas.Rows[Index].DataKey("Cantidad").ToDouble();
double PesoUnitario = GvCajas.Rows[Index].DataKey("Peso").ToDouble() / CantidadPasada;
double CantActualizada = GvCajas.Rows[Index].DataKey("Cantidad").ToDouble() - Cantidad;
double ImporteUnitario = GvCajas.Rows[Index].DataKey("ImportePreEnfriado").ToDouble() / CantidadPasada;
ClsCGame ObjCGame = new ClsCGame();
ObjCGame.IniciaTransacSQL();
bool Error = false;
if (ObjCGame.UpdateProduccionResultado(GvCajas.Rows[Index].DataKey("CveProduccionResultado").ToEntero(), GvCajas.Rows[Index].DataKey("CveProduccion").ToEntero(), GvCajas.Rows[Index].DataKey("CvePS").ToEntero(),
CantActualizada, CantActualizada * PesoUnitario, GvCajas.Rows[Index].DataKey("CveTamaño").ToEntero(), GvCajas.Rows[Index].DataKey("CveCalidad").ToEntero(), GvCajas.Rows[Index].DataKey("CveTipoCaja").ToEntero(),
Convert.ToBoolean(GvCajas.Rows[Index].DataKey("CveTipoEtiqueta")), -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, GvCajas.Rows[Index].DataKey("CveTipoEmpaque").ToEntero(), GvCajas.Rows[Index].DataKey("CveTipoMaduracion").ToEntero(), GvCajas.Rows[Index].DataKey("CveTipoProducto").ToEntero(), -1))
{
ObjCGame.UpdateProduccionResultadoImporte(GvCajas.Rows[Index].DataKey("CveProduccionResultado").ToEntero(), CantActualizada * ImporteUnitario);
if (ObjCGame.AddProduccionResultado(GvCajas.Rows[Index].DataKey("CveProduccion").ToEntero(), GvCajas.Rows[Index].DataKey("CvePS").ToEntero(),
Cantidad, Cantidad * PesoUnitario, GvCajas.Rows[Index].DataKey("CveTamaño").ToEntero(), GvCajas.Rows[Index].DataKey("CveCalidad").ToEntero(), GvCajas.Rows[Index].DataKey("CveTipoCaja").ToEntero(),
Convert.ToBoolean(GvCajas.Rows[Index].DataKey("CveTipoEtiqueta").ToEntero()), -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, GvCajas.Rows[Index].DataKey("CveTipoEmpaque").ToEntero(), GvCajas.Rows[Index].DataKey("CveTipoMaduracion").ToEntero(), GvCajas.Rows[Index].DataKey("CveTipoProducto").ToEntero(), -1) == false)
{
Error = true;
}
else
{
ObjCGame.UpdateProduccionResultadoImporte(ObjCGame.CveProduccionResultado, Cantidad * ImporteUnitario);
}
}
else
{
Error = true;
}
if (!Error) { ObjCGame.Commit(); } else { ObjCGame.RollBack(); };
ObjCGame.Dispose();
CargaResultado();
}
protected void Dividir2(object sender, EventArgs e)
{
int Index = ((LinkButton)sender).CommandArgument.ToString().ToEntero();
if (DtAsignado.FiltraParametros($"CveProduccionResultado= {GvBins.Rows[Index].DataKey("CveProduccionResultado").ToEntero()}").Rows.Count > 0)
{
Alert("No se puede dividir si se tienen asignaciones pendientes.", ModExtensiones.TipoMensaje.MsgAdvertencia);
return;
}
double Cantidad = HdnCantidad.Value.ToDouble();
double CantidadPasada = GvBins.Rows[Index].DataKey("Cantidad").ToDouble();
double PesoUnitario = GvBins.Rows[Index].DataKey("Peso").ToDouble() / CantidadPasada;
double CantActualizada = GvBins.Rows[Index].DataKey("Cantidad").ToDouble() - Cantidad;
double ImporteUnitario = GvBins.Rows[Index].DataKey("ImportePreEnfriado").ToDouble() / CantidadPasada;
ClsCGame ObjCGame = new ClsCGame();
ObjCGame.IniciaTransacSQL();
bool Error = false;
if (ObjCGame.UpdateProduccionResultado(GvBins.Rows[Index].DataKey("CveProduccionResultado").ToEntero(), GvBins.Rows[Index].DataKey("CveProduccion").ToEntero(), GvBins.Rows[Index].DataKey("CvePS").ToEntero(),
CantActualizada, CantActualizada * PesoUnitario, GvBins.Rows[Index].DataKey("CveTamaño").ToEntero(), GvBins.Rows[Index].DataKey("CveCalidad").ToEntero(), GvBins.Rows[Index].DataKey("CveTipoCaja").ToEntero(),
Convert.ToBoolean(GvBins.Rows[Index].DataKey("CveTipoEtiqueta")), -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, GvBins.Rows[Index].DataKey("CveTipoEmpaque").ToEntero(), GvBins.Rows[Index].DataKey("CveTipoMaduracion").ToEntero(), GvBins.Rows[Index].DataKey("CveTipoProducto").ToEntero(), -1))
{
ObjCGame.UpdateProduccionResultadoImporte(GvBins.Rows[Index].DataKey("CveProduccionResultado").ToEntero(), CantActualizada * ImporteUnitario);
if (ObjCGame.AddProduccionResultado(GvBins.Rows[Index].DataKey("CveProduccion").ToEntero(), GvBins.Rows[Index].DataKey("CvePS").ToEntero(),
Cantidad, Cantidad * PesoUnitario, GvBins.Rows[Index].DataKey("CveTamaño").ToEntero(), GvBins.Rows[Index].DataKey("CveCalidad").ToEntero(), GvBins.Rows[Index].DataKey("CveTipoCaja").ToEntero(),
Convert.ToBoolean(GvBins.Rows[Index].DataKey("CveTipoEtiqueta").ToEntero()), -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, GvBins.Rows[Index].DataKey("CveTipoEmpaque").ToEntero(), GvBins.Rows[Index].DataKey("CveTipoMaduracion").ToEntero(), GvBins.Rows[Index].DataKey("CveTipoProducto").ToEntero(), -1) == false)
{
Error = true;
}
else
{
ObjCGame.UpdateProduccionResultadoImporte(ObjCGame.CveProduccionResultado, Cantidad * ImporteUnitario);
}
}
else
{
Error = true;
}
if (!Error) { ObjCGame.Commit(); } else { ObjCGame.RollBack(); };
ObjCGame.Dispose();
CargaResultado();
}
#endregion
#region ASIGNAR
protected void LnkAsignar_Click(object sender, EventArgs e)
{
GridViewRow gvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
RegistraScript("$('#DModalAsignacion').modal()");
CveProduccionResultado = gvRow.DataKey("CveProduccionResultado").ToEntero();
Cantidad = gvRow.DataKey("Cantidad").ToDouble();
CvePS = gvRow.DataKey("CvePS").ToEntero();
Tipo = gvRow.DataKey("Tipo").ToEntero();
FechaCorteNum = gvRow.DataKey("FechaCorteNum").ToEntero();
TxtCantidad.Text = "";
CargaOrdenProduccionDetalle(true, CvePS, Tipo, CveProduccionResultado, Cantidad, FechaCorteNum);
UpModalAsignacion.Update();
}
protected void LnkAsignar_Click1(object sender, EventArgs e)
{
if (TxtCantidad.Text.ToDouble() <= 0)
{
Alert("La cantidad tiene que ser myor que 0.", ModExtensiones.TipoMensaje.MsgAdvertencia);
return;
}
if (DdlOrdenProduccionDetalle.SelectedValue.ToEntero() > 0)
{
foreach (DataRow Dr in DtCant.Rows)
{
if (Dr["CveOrdenProduccionDetalle"].ToEntero() == DdlOrdenProduccionDetalle.SelectedValue.ToEntero())
{
DataRow Row = DtAsignado.NewRow();
Row["CveProduccionResultado"] = CveProduccionResultado;
Row["CveOrdenProduccionDetalle"] = DdlOrdenProduccionDetalle.SelectedValue.ToEntero();
if (TxtCantidad.Text.ToDouble() <= Dr["CantRest"].ToString().ToDouble())
{
Row["CantidadAsignada"] = TxtCantidad.Text.ToDouble();
Dr["CantRest"] = Math.Round(Dr["CantRest"].ToString().ToDouble() - TxtCantidad.Text.ToDouble(),2);
}
else
{
Row["CantidadAsignada"] = Dr["CantRest"].ToString().ToDouble();
Dr["CantRest"] = 0;
}
Dr["Folio"] = $"OP# {Dr["FolioOP"].ToString()} - Cant. Rest.: {Dr["CantRest"]} - {Dr["TipoProducto"].ToString()} - {Dr["TipoMaduracion"].ToString()} - {Dr["Tamaño"].ToString()} - {Math.Round((Dr["CantRest"].ToString().ToDouble() * 100) / Dr["Cantidad"].ToString().ToDouble(),2)}% Avance";
Row["CveOrdenProduccion"] = Dr["CveOrdenProduccion"].ToEntero();
Row["FolioOP"] = Dr["FolioOP"].ToString();
Row["TipoProducto"] = Dr["TipoProducto"].ToString();
Row["TipoMaduracion"] = Dr["TipoMaduracion"].ToString();
Row["Tamaño"] = Dr["Tamaño"].ToString();
if (DtAsignado.Rows.Count > 0)
{
Row["Id"] = DtAsignado.MAX("Id").ToEntero() + 1;
}
else
{
Row["Id"] = 1;
}
DtAsignado.Rows.InsertAt(Row, 0);
DtAsignado.AcceptChanges();
TxtCantidad.Text = "";
CargaOrdenProduccionDetalle(true, CvePS, Tipo, CveProduccionResultado, Cantidad, FechaCorteNum);
return;
}
}
}
else
{
Alert("Tiene que seleccionar una orden de producción", ModExtensiones.TipoMensaje.MsgAdvertencia);
}
}
protected void BtnAsignar_Click(object sender, EventArgs e)
{
if (DtAsignado.FiltraParametros($"CveProduccionResultado = {CveProduccionResultado}").Rows.Count > 0)
{
ClsCGame ObjCGame = new ClsCGame();
ObjCGame.IniciaTransacSQL();
bool Error = false;
double CantidadSurtida = 0.0;
foreach (DataRow Dr in DtAsignado.FiltraParametros($"CveProduccionResultado = {CveProduccionResultado}").Rows)
{
if (Cantidad - (CantidadSurtida + Dr["CantidadAsignada"].ToString().ToDouble()) < 1)
{
if (!ObjCGame.AsignaProduccionResultado(CveProduccionResultado, Dr["CveOrdenProduccionDetalle"].ToEntero(), Dr["CantidadAsignada"].ToString().ToDouble(), false))
{
Error = true;
}
else
{
CantidadSurtida += Dr["CantidadAsignada"].ToString().ToDouble();
}
}
else
{
if (!ObjCGame.AsignaProduccionResultado(CveProduccionResultado, Dr["CveOrdenProduccionDetalle"].ToEntero(), Dr["CantidadAsignada"].ToString().ToDouble(), true))
{
Error = true;
}
else
{
CantidadSurtida += Dr["CantidadAsignada"].ToString().ToDouble();
}
}
}
if (!Error)
{
ObjCGame.Commit();
Alert("Asignado Correctamente");
CargaResultado();
RegistraScript("$('#DModalAsignacion').modal('hide')");
DtAsignado.Select($"CveProduccionResultado = {CveProduccionResultado}").ToList().ForEach(x => DtAsignado.Rows.Remove(x));
DtAsignado.AcceptChanges();
}
else
{
ObjCGame.RollBack();
}
ObjCGame.Dispose();
}
else
{
Alert("Tiene que tener asignaciones.", ModExtensiones.TipoMensaje.MsgAdvertencia);
}
}
protected void LnkEliminar_Click(object sender, EventArgs e)
{
GridViewRow gvRow = (GridViewRow)(((LinkButton)sender).NamingContainer);
foreach (DataRow Dr in DtCant.Rows)
{
if (Dr["CveOrdenProduccionDetalle"].ToEntero() == gvRow.DataKey("CveOrdenProduccionDetalle").ToEntero())
{
Dr["CantRest"] = Dr["CantRest"].ToString().ToDouble() + gvRow.DataKey("CantidadAsignada").ToString().ToDouble();
Dr["Folio"] = $"OP# {Dr["FolioOP"].ToString()} - Cant. Rest.: {Dr["CantRest"]} - {Dr["TipoProducto"].ToString()} - {Dr["TipoMaduracion"].ToString()} - {Dr["Tamaño"].ToString()} - {(Dr["CantRest"].ToString().ToDouble() * 100) / Dr["Cantidad"].ToString().ToDouble()}% Avance";
}
}
DtAsignado.Select($"Id = { gvRow.DataKey("Id").ToEntero()}").ToList().ForEach(x => DtAsignado.Rows.Remove(x));
DtAsignado.AcceptChanges();
CargaOrdenProduccionDetalle(true, CvePS, Tipo, CveProduccionResultado, Cantidad,FechaCorteNum);
}
#endregion
#region "PDF"
protected void ImgImprimirPDF_Click(object sender, EventArgs e)
{
GenerarPDF("PDF");
}
protected void GenerarPDF(String Opcion)
{
if (DtCajas.Rows.Count > 0 && DtBins.Rows.Count > 0)
{
System.IO.FileInfo Imagen = new System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta));
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", DateTime.Now.ToString()));
para.Add(new ReportParameter("Huerta", DdlHuerta.SelectedItem.Text));
para.Add(new ReportParameter("Fruto", DdlFruto.SelectedItem.Text));
para.Add(new ReportParameter("Variedad", DdlVariedad.SelectedItem.Text));
para.Add(new ReportParameter("TipoProduccion", DdlTipoProduccion.SelectedItem.Text));
para.Add(new ReportParameter("Tamaño", DdlTamaño.SelectedItem.Text));
para.Add(new ReportParameter("Calidad", DdlCalidad.SelectedItem.Text));
para.Add(new ReportParameter("Etiqueta", DdlEtiqueta.SelectedItem.Text));
para.Add(new ReportParameter("TipoEmpaque", DdlTipoEmpaque.SelectedItem.Text));
para.Add(new ReportParameter("TotalCajas", LblCajas.Text));
para.Add(new ReportParameter("TotalBins", LblBins.Text));
if (Imagen.Exists)
{
para.Add(new ReportParameter("LogoPath", logouri));
}
else
{
para.Add(new ReportParameter("LogoPath", ""));
}
List<ReportDataSource> lrds = new List<ReportDataSource>();
ReportDataSource rds = new ReportDataSource();
rds.Name = "DataSet1"; rds.Value = DtCajas;
ReportDataSource rds2 = new ReportDataSource();
rds2.Name = "DataSet2"; rds2.Value = DtBins;
lrds.Add(rds);
lrds.Add(rds2);
ImprimirPDF("Empresas/Grales/Formatos/RepAsignacionEmpaque.rdlc", lrds, para, "RepAsignacionEmpaque", Opcion);
}
else
{
Alert("No hay datos consultados", ModExtensiones.TipoMensaje.MsgAdvertencia);
}
}
#endregion
}