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>
#C_DdlColonias > span > span.selection > span{
width:267px!important
}
@@ -181,7 +179,7 @@
<div class="col-md-6">
<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>
</div>
@@ -194,18 +192,37 @@
<asp:TextBox ID="TxtLicencia" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="50"></asp:TextBox>
<label for="<%= TxtLicencia.ClientID.ToString()%>">Licencia:</label>
</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="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 class="row">
<div class="col-md-6">
<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 class="form-group form-md-line-input input-iconright" id="divEstatus" runat="server">
<asp:CheckBox ID="ChkEstatus" runat="server" CssClass="form-control" />
<label for="<%= ChkEstatus.ClientID.ToString()%>">Estatus:</label>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<div class="modal-footer">

View File

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

View File

@@ -1646,7 +1646,7 @@ Public Class ClsInventarios
End Function
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
DataAdapter("PA_Inv_ProductosCaducidadGet")
@@ -1662,6 +1662,7 @@ Public Class ClsInventarios
.Add("@CvesAlmacenes", SqlDbType.VarChar).Value = CvesAlmacenes
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@Opcion", SqlDbType.Int).Value = Opcion
End With
Try

View File

@@ -4,6 +4,52 @@
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<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 ID="Content3" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
@@ -19,6 +65,12 @@
<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>
</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>
<Triggers>
<asp:PostBackTrigger ControlID="LnkImprimirPDF"/>
@@ -36,7 +88,7 @@
<a href="javascript:;" class="expand"></a>
</div>
<div class="titlefiltros caption">
<div class="row" style="margin-left: 10px;">
<div class="row" >
<div class="col-sm-1" style="text-align:right">
<label>Proveedor:</label>
</div>
@@ -73,7 +125,15 @@
<label>Sucursal:</label>
</div>
<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>
@@ -92,14 +152,30 @@
</div>
<label class="col-md-1 truncate">Producto:</label>
<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 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>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpDatos" runat="server" UpdateMode="Conditional">
<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">
@@ -109,10 +185,64 @@
<asp:BoundField HeaderText="Producto" DataField="CodigoPS" />
<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: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>
</asp:GridView>
</ContentTemplate>
</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 ID="Content7" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -9,6 +9,7 @@ using System.Data;
using Microsoft.Reporting.WebForms;
using System.Text;
public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
{
private DataTable DTDatos
@@ -30,11 +31,16 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
{
CargaFiltros();
CargarDatos();
CargaAlamacenes();
}
}
private void CargarDatos()
{
string Cves_Alamcenes = ddlAlmacen.GetSelectedValuesM();
DateTime FI = ModExtensiones.MinFecha;
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
ClsInventarios ObjInventarios = new ClsInventarios();
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;
DTDatos = ObjInventarios.DtResultados;
@@ -60,6 +66,7 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
CargarSucursales();
CargarClasificaciones();
}
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.DataBind();
DdlSucursal.Items.Insert(0, new ListItem("Todas", "-1"));
}
private void CargarClasificaciones()
@@ -104,6 +114,32 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
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)
{
CargarDatos();
@@ -134,6 +170,11 @@ public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
@params.Add(new ReportParameter("UsuarioImprimio", UsuarioActual.Nombre));
@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);
System.IO.FileInfo Imagen = new System.IO.FileInfo(string.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta));
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);
}
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();
}
}