Rep Productos por caducar

This commit is contained in:
rakcsle
2021-10-14 15:20:57 -07:00
parent 906ffd54c3
commit bc5f5dd1ca
5 changed files with 237 additions and 16 deletions

View File

@@ -6,9 +6,7 @@
<style> <style>
#C_DdlColonias > span > span.selection > span{
width:267px!important
}
@@ -181,7 +179,7 @@
<div class="col-md-6"> <div class="col-md-6">
<div class="form-group form-md-line-input input-iconright" > <div class="form-group form-md-line-input input-iconright" >
<ADS:Dropdownlost ID="DdlColonias" Width="267px" runat="server" data-metodo="getSATColomias" CssClass="form-control select2" DataTextField="ClaveSATColoniaCP" DataValueField="CveColonia" style="margin-top:7px!important" Onselectedindexchange="DdlColonias_selectedindexchange"></ADS:Dropdownlost> <ADS:Dropdownlost ID="DdlColonias" Width="100%" runat="server" data-metodo="getSATColomias" CssClass="form-control select2" DataTextField="ClaveSATColoniaCP" DataValueField="CveColonia" style="margin-top:7px!important" Onselectedindexchange="DdlColonias_selectedindexchange"></ADS:Dropdownlost>
<label for="<%= DdlColonias.ClientID.ToString()%>">Colonia:</label> <label for="<%= DdlColonias.ClientID.ToString()%>">Colonia:</label>
</div> </div>
@@ -194,18 +192,37 @@
<asp:TextBox ID="TxtLicencia" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="50"></asp:TextBox> <asp:TextBox ID="TxtLicencia" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="50"></asp:TextBox>
<label for="<%= TxtLicencia.ClientID.ToString()%>">Licencia:</label> <label for="<%= TxtLicencia.ClientID.ToString()%>">Licencia:</label>
</div> </div>
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtNumRegidTribOperador" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="50"></asp:TextBox>
<label for="<%= TxtNumRegidTribOperador.ClientID.ToString()%>">Numero RegidTribOperador:</label>
</div> <div class="row">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtResidenciaFiscalOperador" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="50"></asp:TextBox> <div class="col-md-6">
<label for="<%= TxtResidenciaFiscalOperador.ClientID.ToString()%>">Residencia Fiscal Operador:</label> <div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtNumRegidTribOperador" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="50"></asp:TextBox>
<label for="<%= TxtNumRegidTribOperador.ClientID.ToString()%>">Numero RegidTribOperador:</label>
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtResidenciaFiscalOperador" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="50"></asp:TextBox>
<label for="<%= TxtResidenciaFiscalOperador.ClientID.ToString()%>">Residencia Fiscal Operador:</label>
</div>
</div>
</div> </div>
<div class="form-group form-md-line-input input-iconright" id="divEstatus" runat="server"> <div class="form-group form-md-line-input input-iconright" id="divEstatus" runat="server">
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="form-control" /> <asp:CheckBox ID="ChkEstatus" runat="server" CssClass="form-control" />
<label for="<%= ChkEstatus.ClientID.ToString()%>">Estatus:</label> <label for="<%= ChkEstatus.ClientID.ToString()%>">Estatus:</label>
</div> </div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
<div class="modal-footer"> <div class="modal-footer">

View File

@@ -66,6 +66,7 @@ Partial Class Acarreos_CatChoferes
If CveColonia <= 0 Then If CveColonia <= 0 Then
Alert("El campo colonia es necesario, por favor ingréselo.", TipoMensaje.MsgAdvertencia) Alert("El campo colonia es necesario, por favor ingréselo.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If End If

View File

@@ -1646,7 +1646,7 @@ Public Class ClsInventarios
End Function End Function
Public Function GetProductosCaducidad(CveProveedor As Integer, FechaInicio As Date, FechaFin As Date, CveSubProyecto As Integer, CveClasificacion As Integer, CvePS As Integer, Public Function GetProductosCaducidad(CveProveedor As Integer, FechaInicio As Date, FechaFin As Date, CveSubProyecto As Integer, CveClasificacion As Integer, CvePS As Integer,
FiltroFecha As Integer, CvesAlmacenes As String, CveUsuario As Integer, CveEmpresa As Integer) As Boolean FiltroFecha As Integer, CvesAlmacenes As String, CveUsuario As Integer, CveEmpresa As Integer, Optional Opcion As Integer = 1) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Inv_ProductosCaducidadGet") DataAdapter("PA_Inv_ProductosCaducidadGet")
@@ -1662,6 +1662,7 @@ Public Class ClsInventarios
.Add("@CvesAlmacenes", SqlDbType.VarChar).Value = CvesAlmacenes .Add("@CvesAlmacenes", SqlDbType.VarChar).Value = CvesAlmacenes
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@Opcion", SqlDbType.Int).Value = Opcion
End With End With
Try Try

View File

@@ -4,6 +4,52 @@
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server"> <asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content> </asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server"> <asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style>
.btnopaco {
background-color: rgba(0,0,0,0.2);
color: #FFF;
}
.btnopaco:hover {
background-color: rgba(0,0,0,0.4);
color: #FFF;
font-weight: bold;
}
.select2 .select2-selection__rendered {
line-height: 1;
color: #111;
}
.select2 .select2-selection--multiple {
box-sizing: border-box;
cursor: pointer;
display: block;
min-height: 20px;
user-select: none;
-webkit-user-select: none;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
margin-top: 10px;
}
.select2-selection__rendered {
margin-top: 0px;
height: 25px;
}
.select2-selection {
margin-top: 0px;
height: 31px;
}
.select2-container--default.select2-container--focus .select2-selection--multiple {
border: none;
outline: 0;
}
</style>
</asp:Content> </asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server"> <asp:Content ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content> </asp:Content>
@@ -19,6 +65,12 @@
<li> <li>
<asp:LinkButton ID="LnkImprimirExcel" runat="server" OnClick="LnkImprimirExcel_Click" Visible="true"><i class="fa fa-file-excel-o"></i><span style="padding: 10px">Excel</span></asp:LinkButton> <asp:LinkButton ID="LnkImprimirExcel" runat="server" OnClick="LnkImprimirExcel_Click" Visible="true"><i class="fa fa-file-excel-o"></i><span style="padding: 10px">Excel</span></asp:LinkButton>
</li> </li>
<li>
<asp:HyperLink NavigateUrl="#" data-toggle="modal" data-target="#DivPersonalizar" ID="ImgPersonalizar" runat="server"> <i class="fa fa-pencil"></i> Personalizar</asp:HyperLink>
</li>
</ContentTemplate> </ContentTemplate>
<Triggers> <Triggers>
<asp:PostBackTrigger ControlID="LnkImprimirPDF"/> <asp:PostBackTrigger ControlID="LnkImprimirPDF"/>
@@ -36,7 +88,7 @@
<a href="javascript:;" class="expand"></a> <a href="javascript:;" class="expand"></a>
</div> </div>
<div class="titlefiltros caption"> <div class="titlefiltros caption">
<div class="row" style="margin-left: 10px;"> <div class="row" >
<div class="col-sm-1" style="text-align:right"> <div class="col-sm-1" style="text-align:right">
<label>Proveedor:</label> <label>Proveedor:</label>
</div> </div>
@@ -73,7 +125,15 @@
<label>Sucursal:</label> <label>Sucursal:</label>
</div> </div>
<div class="col-sm-1"> <div class="col-sm-1">
<asp:DropDownList runat="server" ID="DdlSucursal" CssClass="select2me" DataTextField="SubProyecto" DataValueField="CveSubProyecto"></asp:DropDownList> <asp:DropDownList runat="server" ID="DdlSucursal" CssClass="select2me" DataTextField="SubProyecto" DataValueField="CveSubProyecto" AutoPostBack="true" OnSelectedIndexChanged="DdlSucursal_SelectedIndexChanged" Width="100%"></asp:DropDownList>
</div>
<label class="col-md-1 truncate" >Almacén:</label>
<div class="col-md-1">
<asp:ListBox ID="ddlAlmacen" SelectionMode="Multiple" data-text="Todos" AppendDataBoundItems="true" CssClass="ddlFiltros input-sm select2me Widthall" Style="width: 100%;" runat="server" DataTextField="Almacen" DataValueField="CveAlmacen"></asp:ListBox>
</div> </div>
</div> </div>
@@ -92,14 +152,30 @@
</div> </div>
<label class="col-md-1 truncate">Producto:</label> <label class="col-md-1 truncate">Producto:</label>
<div class="col-md-2"> <div class="col-md-2">
<ADS:Dropdownlost runat="server" ID="DdlPS" CssStyle="width:55%;" CssClass="DdlPS" CssClassDdl="select2me " DataTextField="PSCodigo" DataValueField="CvePS" /> <ADS:Dropdownlost runat="server" ID="DdlPS" CssStyle="width:100%;" CssClass="DdlPS" CssClassDdl="select2me " DataTextField="PSCodigo" DataValueField="CvePS" Width="100%" />
</div> </div>
<div class="col-sm-1" style="text-align:right">
<label>Opcion:</label>
</div>
<div class="col-md-1">
<asp:DropDownList runat="server" ID="DdlOpcion" CssClass="select2me" Width="100%" CssStyle="width: 100%;">
<asp:ListItem Value="1">Elaboración</asp:ListItem>
<asp:ListItem Value="2" Selected="True">Caducidad</asp:ListItem>
</asp:DropDownList>
</div>
</div> </div>
</div> </div>
</div> </div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Registros" ToolTip="Reporte de productos caducidad " CssClass="table table-advance table-hover Widthall ScrollAD" data-sort="true" GridLines="None"> <asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se encontraron Registros" ToolTip="Reporte de productos caducidad " CssClass="table table-advance table-hover Widthall ScrollAD" data-sort="true" GridLines="None">
@@ -109,10 +185,64 @@
<asp:BoundField HeaderText="Producto" DataField="CodigoPS" /> <asp:BoundField HeaderText="Producto" DataField="CodigoPS" />
<asp:BoundField HeaderText="Lote" DataField="Lote" ItemStyle-Width="150px" /> <asp:BoundField HeaderText="Lote" DataField="Lote" ItemStyle-Width="150px" />
<asp:BoundField HeaderText="Fecha Caducidad" DataField="FechaCaducidad" DataFormatString = "{0:dd/MM/yyyy}" ItemStyle-Width="100px" /> <asp:BoundField HeaderText="Fecha Caducidad" DataField="FechaCaducidad" DataFormatString = "{0:dd/MM/yyyy}" ItemStyle-Width="100px" />
<asp:TemplateField ItemStyle-Width="100px" ItemStyle-HorizontalAlign="Right" HeaderText="Tiempo de Caducidad" Visible="false">
<ItemTemplate>
<asp:Label ID="LblTiempoCaducidad" runat="server" Text='<%# Eval("TiempoCaducidad","{0:n2}")%>' ></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns> </Columns>
</asp:GridView> </asp:GridView>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button ID="BtnPersonalizar" Style="display: none" ClientIDMode="Static" runat="server" Text="Personalizar" class="btn btn-success" OnClick="BtnPersonalizar_Click" />
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel runat="server" ID="UPPersonalizar" UpdateMode="Conditional">
<ContentTemplate>
<div id="DivPersonalizar" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">
<asp:Label ID="Label1" runat="server" ClientIDMode="Static" Text="Personalizar Columnas"></asp:Label></h4>
</div>
<div class="modal-body">
<table style="width: 335px;" class="table table-striped table-advance table-hover">
<tbody>
<tr>
<td style="text-align: left;">
<asp:CheckBox ID="ChkTiempoCaducidad" runat="server" Text="Tiempo de Caducidad" Checked="false" /></td>
<td style="text-align: left;"></td>
</tr>
</tbody>
</table>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-success" data-dismiss="modal" onclick="$('#BtnPersonalizar').click();">Personalizar</button>
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</div>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content> </asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server"> <asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content> </asp:Content>

View File

@@ -9,6 +9,7 @@ using System.Data;
using Microsoft.Reporting.WebForms; using Microsoft.Reporting.WebForms;
using System.Text; using System.Text;
public partial class Inventarios_RepProductosPorCaducar : ClsPaginas public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
{ {
private DataTable DTDatos private DataTable DTDatos
@@ -30,11 +31,16 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
{ {
CargaFiltros(); CargaFiltros();
CargarDatos(); CargarDatos();
CargaAlamacenes();
} }
} }
private void CargarDatos() private void CargarDatos()
{ {
string Cves_Alamcenes = ddlAlmacen.GetSelectedValuesM();
DateTime FI = ModExtensiones.MinFecha; DateTime FI = ModExtensiones.MinFecha;
if (TxtFechaInicio.Text != "") FI = TxtFechaInicio.Text.ToDate(); if (TxtFechaInicio.Text != "") FI = TxtFechaInicio.Text.ToDate();
@@ -44,7 +50,7 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
// aqui siempre se visualiza la caducidad, sin importar la condición, porque siempre se valida la caducidad // aqui siempre se visualiza la caducidad, sin importar la condición, porque siempre se valida la caducidad
ClsInventarios ObjInventarios = new ClsInventarios(); ClsInventarios ObjInventarios = new ClsInventarios();
if (ObjInventarios.GetProductosCaducidad(DdlProveedor.SelectedValue.ToEntero(), FI, TxtFechaFin.Text.ToDate(), DdlSucursal.SelectedValue.ToEntero(), if (ObjInventarios.GetProductosCaducidad(DdlProveedor.SelectedValue.ToEntero(), FI, TxtFechaFin.Text.ToDate(), DdlSucursal.SelectedValue.ToEntero(),
DdlClasificacion.SelectedValue.ToEntero(), CvePS, 1,"1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)) DdlClasificacion.SelectedValue.ToEntero(), CvePS, 1, Cves_Alamcenes, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, Opcion:DdlOpcion.SelectedValue.ToEntero()))
{ {
GvDatos.DataSource = ObjInventarios.DtResultados; GvDatos.DataSource = ObjInventarios.DtResultados;
DTDatos = ObjInventarios.DtResultados; DTDatos = ObjInventarios.DtResultados;
@@ -60,6 +66,7 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
CargarSucursales(); CargarSucursales();
CargarClasificaciones(); CargarClasificaciones();
} }
private void CargarFechaText() private void CargarFechaText()
@@ -89,6 +96,9 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
DdlSucursal.DataSource = get_GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1); DdlSucursal.DataSource = get_GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1);
DdlSucursal.DataBind(); DdlSucursal.DataBind();
DdlSucursal.Items.Insert(0, new ListItem("Todas", "-1")); DdlSucursal.Items.Insert(0, new ListItem("Todas", "-1"));
} }
private void CargarClasificaciones() private void CargarClasificaciones()
@@ -104,6 +114,32 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
DdlClasificacion.Items.Insert(0,new ListItem("Todas","-1")); DdlClasificacion.Items.Insert(0,new ListItem("Todas","-1"));
} }
private void CargaAlamacenes(int CveSubProyectoFiltro = -1)
{
ddlAlmacen.Items.Clear();
if (CveSubProyectoFiltro > 0)
{
ddlAlmacen.DataSource = get_GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros($"CveSubProyecto = {CveSubProyectoFiltro}");
}
else
{
ddlAlmacen.DataSource = get_GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1);
}
ddlAlmacen.DataBind();
ddlAlmacen.Items.Insert(0, new ListItem("Todos", "-1"));
UPFiltros.Update();
}
protected void BtnConsultar_Click(object sender, EventArgs e) protected void BtnConsultar_Click(object sender, EventArgs e)
{ {
CargarDatos(); CargarDatos();
@@ -134,6 +170,11 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
@params.Add(new ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)); @params.Add(new ReportParameter("UsuarioImprimio", UsuarioActual.Nombre));
@params.Add(new ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)); @params.Add(new ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa));
@params.Add(new ReportParameter("OcultaCaducidad", ChkTiempoCaducidad.Checked ? "0": "1" ));
var logouri = string.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa); var logouri = string.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa);
System.IO.FileInfo Imagen = new System.IO.FileInfo(string.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)); System.IO.FileInfo Imagen = new System.IO.FileInfo(string.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta));
if (Imagen.Exists) if (Imagen.Exists)
@@ -148,4 +189,35 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
ImprimirPDF("Empresas/Grales/Formatos/RepProductosCaducidad.rdlc", DTDatos, @params, "Reporte de Productos por Caducar", formato); ImprimirPDF("Empresas/Grales/Formatos/RepProductosCaducidad.rdlc", DTDatos, @params, "Reporte de Productos por Caducar", formato);
} }
protected void DdlSucursal_SelectedIndexChanged(object sender, EventArgs e)
{
CargaAlamacenes(DdlSucursal.SelectedValue.ToEntero());
}
protected void BtnPersonalizar_Click(object sender, EventArgs e)
{
Personaliza();
}
private void Personaliza()
{
if (ChkTiempoCaducidad.Checked)
{
GvDatos.Columns[5].Visible = true;
}
else
{
GvDatos.Columns[5].Visible = false;
}
CargarDatos();//Si no se recarga no se muestran los valores dela la columna de tiempo caducindad laprimera vez que pasa de oculta a mostrarse
UpDatos.Update();
}
} }