This commit is contained in:
2022-01-12 21:29:10 -07:00
43 changed files with 522 additions and 321 deletions

View File

@@ -102,8 +102,7 @@
<div class="form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlConfigAuto" CssClass="form-control input-sm select2me" Width="100%" runat="server" AppendDataBoundItems="true" AutoPostBack="false" CausesValidation="true" DataTextField="ClaveConfigAutoTransporteDescripcion" DataValueField="ClaveConfigAutoTransporte" Style="padding: 0px">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
<asp:DropDownList ID="DdlConfigAuto" CssClass="form-control input-sm select2me" Width="100%" runat="server" AppendDataBoundItems="true" AutoPostBack="false" CausesValidation="true" DataTextField="ClaveConfigAutoTransporteDescripcion" DataValueField="ClaveConfigAutoTransporte" Style="padding: 0px">
</asp:DropDownList>
<label for="<%= DdlConfigAuto.ClientID.ToString()%>">Configuración Carta Porte:</label>
<asp:RequiredFieldValidator ID="RfvDdlConfigAuto" runat="server" ControlToValidate="DdlConfigAuto" InitialValue="-1" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Configuración Carta Porte''</b> es necesario, por favor ingréselo." ValidationGroup="GrpUnidad"></asp:RequiredFieldValidator>

View File

@@ -54,6 +54,7 @@ Partial Class Inventarios_CatUnidades
End Using
DdlConfigAuto.DataBind()
DdlConfigAuto.Items.Insert(0, New ListItem("Seleccione Uno ", "-1"))
DdlTipoPermisoSCT.DataBind()
UpModalUnidades.Update()

View File

@@ -783,7 +783,7 @@ Partial Class Inventarios_EntradasSalidas
HplCartaPorteTimbre.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=CARPOTIMBRE&CVEMOV={0}&CVETIMBRE={1}", CveMovimiento, drM("CveTimbre"))))
Else
HplDescargaPdf.Visible = True
HplDescargaPdf.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=DesPdfTra&CVEMOVIMIENTO={0}&EXT={1}&FOLIO={2}&TIPODOCTO={3}", CveMovimiento, "PDF", drM("TimbreSerieFolio"), "Tra")))
HplDescargaPdf.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=DesPdfTra&CVEMOVIMIENTO={0}&EXT={1}&FOLIO={2}&TIPODOCTO={3}&CVETIMBRE={4}", CveMovimiento, "PDF", drM("TimbreSerieFolio"), "Tra", drM("CveTimbre"))))
HplCartaPorte.Visible = True
HplCartaPorte.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=CARPO&CVEMOV={0}", CveMovimiento)))
@@ -3610,7 +3610,7 @@ Partial Class Inventarios_EntradasSalidas
ObjInventario.GetMovimientos(CveMovimiento, -1, -1, UsuarioActual.CveEmpresa)
Dim CveVenta As Integer = ObjInventario.CveVenta
Dim MovAlmacen As Boolean = True
Dim MovAlmacen As Boolean = False
Dim OrigenMov As Integer = GlobalDTInvConceptos.FiltroPrimeroValor("Origen", "CveConcepto = " & DdlConcepto.SelectedValue).ToEntero
If OrigenMov = 1 Then MovAlmacen = False Else MovAlmacen = True

View File

@@ -321,12 +321,9 @@ Partial Class Inventarios_EntregaAlmacen
DdlClientes.ddl.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa)
DdlClientes.ddl.DataBind()
DdlClientes.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
End If
If UsuarioActual.CveSubProyecto = 8804 Then
StrAlmacenes = "CveTipoAlmacen IN (1,2,12)"
End If
End If
DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros(StrAlmacenes) 'GlobalDTAlmacen(UsuarioActual.CveEmpresa)
DdlAlmacen.Items.Insert(0, New ListItem(" Seleccione ", "-1"))
DdlAlmacen.SelectedValue = "-1"
@@ -744,12 +741,13 @@ Partial Class Inventarios_EntregaAlmacen
If TipoDocto.Contiene("Ing") AndAlso TipoMovimiento = 2 Then
Dim DtMov As DataTable = DtExistencias.FiltraParametros("CveConcepto = 40", "", {"CveAlmacen"})
If DtMov.Rows.Count > 0 AndAlso CveAlmacen <= 0 Then
Dim CveAlmacenDev As Integer = DtMov.Rows(0)("CveAlmacen").ToString().ToEntero()
DdlAlmacen.Items.Clear()
DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros($"CveAlmacen = {CveAlmacenDev}")
DdlAlmacen.DataBind()
DdlAlmacen.SelectedValueExist(CveAlmacenDev)
Dim CveAlmacenDev As Integer = DtMov.Rows(0)("CveAlmacen").ToString().ToEntero()
'DdlAlmacen.Items.Clear()
'DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros($"CveAlmacen = {CveAlmacenDev}")
'DdlAlmacen.DataBind()
DdlAlmacen.SelectedValueExist(CveAlmacenDev) ' se va a poder regresar en algun almacen diferente
EsDevolucionDirecta = True
End If
End If

View File

@@ -490,7 +490,7 @@ Partial Class Inventarios_Kardex
Protected Sub LnkEditarFecha_Click(sender As Object, e As EventArgs)
Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
CveMovimiento = gvRow.DataKey("CveMovimiento").ToEntero
TxtFecha.Text = gvRow.DataKey("FechaMovto").ToDateTime.ToString("yyyy-MM-ddTHH: mm")
TxtFecha.Text = gvRow.DataKey("FechaMovto").ToDateTime.ToString("yyyy-MM-dd HH:mm:ss").Replace(" ", "T")
RegistraScript("$('#DModalEditarFecha').modal()")
UpModalEditarFecha.Update()
End Sub

View File

@@ -811,7 +811,7 @@
<asp:Label Text="" ID="LbProducto" runat="server" />
</td>
<td width="120px"><b>Cantidad:</b></td>
<td colspan="">
<td >
<asp:Label Text="" ID="LbCantidad" runat="server" />
</td>
</tr>
@@ -827,15 +827,11 @@
<asp:RequiredFieldValidator ID="RFVSerie" runat="server" ControlToValidate="TxtSerie" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Serie''</b> es necesario, por favor ingréselo." ValidationGroup="GrpAgregaSerie"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCESerie" runat="server" HighlightCssClass="vco" TargetControlID="RFVSerie" Width="300px"></ajax:ValidatorCalloutExtender>
</td>
</tr>
<tr>
<td colspan="4" align="right">
<asp:Button Text="Agregar" CssClass="btn btn-primary" ID="BtnAgregarPS" OnClick="BtnAgregarPS_Click" ValidationGroup="GrpAgregaSerie" runat="server" />
</td>
</tr>
<td><asp:Button Text="Agregar" CssClass="btn btn-primary" ID="BtnAgregarPS" OnClick="BtnAgregarPS_Click" ValidationGroup="GrpAgregaSerie" runat="server" /></td>
</tr>
<tr>
<td colspan="4">
<asp:GridView ID="GvSerie" runat="server" EmptyDataText="Aun no hay registros." DataKeyNames="Serie" AutoGenerateColumns="False" ShowHeader="true" ShowHeaderWhenEmpty="True" HeaderStyle-CssClass="Titulos" RowStyle-Height="25px" CssClass="table table-striped table-hover Widthall ScrollAD" data-height="100" data-freezerows="1" GridLines="None">
<asp:GridView ID="GvSerie" runat="server" EmptyDataText="Aun no hay registros." DataKeyNames="Serie" AutoGenerateColumns="False" ShowHeader="true" ShowHeaderWhenEmpty="True" HeaderStyle-CssClass="Titulos" RowStyle-Height="25px" CssClass="table table-striped table-hover Widthall ScrollAD" data-height="250" data-freezerows="1" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Serie-Folio" DataField="Serie" ItemStyle-Width="40%" />
<asp:TemplateField HeaderText="Eliminar" ItemStyle-HorizontalAlign="Center">

View File

@@ -1869,7 +1869,8 @@ Partial Class Inventarios_RecepcionAlmacen
If MensajeSinExistencias.ToString <> "" Then
Alert($"Las siguientes Series no cuentan con la existencia suficiente por lo cual se omitieron. <br?><br/> {MensajeSinExistencias.ToString}", TipoMensaje.MsgAdvertencia)
End If
RegistraScript("playsonidito('beep-07.wav')")
RegistraScript("playsonidito('beep-07.wav')", "SoniditoSerie")
End If
End Sub
@@ -3226,7 +3227,7 @@ Partial Class Inventarios_RecepcionAlmacen
''VALIDACIÓN DE IMPORTES INGRESADOS VS LA COMPRA U OC
'If Not UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
If Not ErrorMovInv AndAlso RecibidaCompleta Then
If Not ErrorMovInv AndAlso RecibidaCompleta AndAlso UsuarioActual.CveEmpresa <> 140 Then
If ObjInventario.GetMovimientosDetalle(CveMovimientoOriginal, UsuarioActual.CveEmpresa) Then
Dim dtt As DataTable = ObjInventario.DtResultados
Dim tTotalInsertado As Decimal = dtt.SUMD("TotalOriginal") + ImporteIngresoAdicional

View File

@@ -186,10 +186,20 @@ Partial Class Inventarios_ReporteEntradasSalidas
End Sub
Protected Sub DdlCategoria_SelectedIndexChanged(sender As Object, e As EventArgs)
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa, CveCategoria:=DdlCategoria.SelectedValue.ToEntero)
DdlClasificacion.DataBind()
DdlClasificacion.Items.Insert(0, New ListItem("Todas", "-1"))
CargaClasificaciones()
End Sub
Private Sub CargaClasificaciones(CveCategoria As Integer)
Dim ObjClasificaciones As New ClsClasificaciones
If ObjClasificaciones.GetClasificacionesExistencias(UsuarioActual.CveEmpresa) Then
DdlClasificacion.DataSource = ObjClasificaciones.DtResultados
End If
ObjClasificaciones.Dispose()
DdlClasificacion.DataBind()
DdlClasificacion.Items.Insert(0, New ListItem("Todos", "-1"))
End Sub
Protected Sub btConsultar_Click(sender As Object, e As EventArgs) Handles btConsultar.Click
CargaDatos()
End Sub

View File

@@ -63,6 +63,9 @@
<li>
<asp:HyperLink ID="LnkCargarExcel" runat="server" NavigateUrl="#" data-toggle="modal" data-target="#DivCargaExcelConceptos" Style="color: #686868;"><i class="fa fa-file-excel-o" style="color: #686868;"></i> Cargar Conceptos</asp:HyperLink>
</li>
<li>
<asp:Linkbutton ID="HplCargaBitacora" runat="server" OnClick="HplCargaBitacora_Click" Style="color: #686868;"><i class="fa fa-file-load-o" style="color: #686868;"></i> Cargar Bitácora</asp:Linkbutton>
</li>
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="C" runat="Server">

View File

@@ -159,6 +159,15 @@ Partial Class Inventarios_TraspasoAlmacen
ViewState("FolioBusqueda") = value
End Set
End Property
Private Property ArchivoBitacora As String
Get
Return CType(ViewState("ArchivoBitacora"), String)
End Get
Set(value As String)
ViewState("ArchivoBitacora") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
@@ -173,6 +182,7 @@ Partial Class Inventarios_TraspasoAlmacen
RVFechaRecepcion.MaximumValue = Now.ToShortDateString
Folio = 0
CveMovimientoTimbrado = -1
ArchivoBitacora = UsuarioActual.Empresa.Ruta & "Temp\Traspaso_" & UsuarioActual.CveUsuario & ".xml"
If UsuarioActual.CveEmpresa = 119 Then
divGastoIndirecto.Visible = False
@@ -287,6 +297,7 @@ Partial Class Inventarios_TraspasoAlmacen
dt.Columns.Add("Embalaje")
dt.Columns.Add("PesoKg", Type.GetType("System.Decimal"))
dt.TableName = "TablaTraspaso"
DtMovimientos = dt
@@ -701,10 +712,10 @@ Partial Class Inventarios_TraspasoAlmacen
DtMovimientos.Rows.Add(registro)
RegistraScript("playsonidito('beep-07.wav')")
IO.Path.GetDirectoryName(ArchivoBitacora).DirectoryExistsCreate 'verifica que exista la ruta
ActualizaBitacora()
End If
CargaGvDatos()
If Limpia Then
@@ -715,6 +726,14 @@ Partial Class Inventarios_TraspasoAlmacen
TxtnSerie.Focus()
End If
End Sub
Private Sub ActualizaBitacora(Optional Eliminar As Boolean = False)
If Not Eliminar Then
DtMovimientos.WriteXml(ArchivoBitacora, XmlWriteMode.WriteSchema)
Else
File.Delete(ArchivoBitacora)
End If
End Sub
Private Sub LimpiaAgregar()
'DdlClasificacion.SelectedValue = "-1"
@@ -857,7 +876,7 @@ Partial Class Inventarios_TraspasoAlmacen
Dim FechaCaducidad As Date
Dim TextoExistencia As StringBuilder = New StringBuilder
Dim Existencia As Double
Dim Existencia As Decimal
Dim CantidadenGrid As Decimal
TextoExistencia.Append("Los siguiente productos se ajustaron por falta de existencia:<br/>")
If Not CargadoDeMov Then
@@ -884,7 +903,7 @@ Partial Class Inventarios_TraspasoAlmacen
CantidadenGrid = DtMovimientos.SUMD("Cantidad", String.Format("CvePS = {0} AND CveUM = {1} {2} {3} {4} ", dr("CvePS"), dr("CveUM"), If(Not dr("Serie").ToString.Contiene("-1", ""), $" AND Serie = '{dr("Serie")}'", ""), tLote, tFechaCaducidad))
If ObjInventario.GetExistenciasProducto(dr("CvePS").ToString.ToEntero, dr("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenOrigen.SelectedValue.ToEntero, FechaMovto:=TxtFecha.Text.ToDateTime.ToString("yyyy/MM/dd HH:mm"), CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Serie, Lote:=Lote, Caducidad:=FechaCaducidad) Then
'si hay existencia en almacen costeado, lo tengo que sacar
Existencia = ObjInventario.DtResultados.FiltroPrimeroValor("ExistenciaFinal", String.Format("CVeAlmacen = {0}", DdlAlmacenOrigen.SelectedValue)).ToDecimal
Existencia = ObjInventario.DtResultados.FiltroPrimeroValor("ExistenciaFinal", String.Format("CveAlmacen = {0}", DdlAlmacenOrigen.SelectedValue)).ToDecimal
End If
'Existencia = ObjInventario.GetExistenciasPS(dr("CvePS").ToString.ToEntero, dr("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenOrigen.SelectedValue.ToEntero, FechaMovto:=TxtFecha.Text.ToDate.ToString("yyyy/MM/dd 23:59"), CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Serie, Lote:=Lote, FechaCaducidad:=FechaCaducidad, PendientePorSurtir:=1)
@@ -892,12 +911,10 @@ Partial Class Inventarios_TraspasoAlmacen
'DtMovimientos.SUM("Cantidad", String.Format("CvePS = {0}", dr("CvePS").ToString.ToEntero))
'la primera vez valida, que la existencia global, cumpla, considerando lo pendiente por surtir
'las segunda consulta, que tenga existencia, ya con los parametros especificos
If FechaCaducidad > MinFecha OrElse (Lote <> "-1" AndAlso Lote <> "") Then
If FechaCaducidad > MinFecha OrElse (Lote <> "-1" AndAlso Lote <> "") OrElse (Serie <> "-1" AndAlso Serie <> "") Then
If ObjInventario.GetExistenciasProducto(dr("CvePS").ToString.ToEntero, dr("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenOrigen.SelectedValue.ToEntero, FechaMovto:=TxtFecha.Text.ToDateTime.ToString("yyyy/MM/dd HH:mm"), CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Serie, Lote:=Lote, Caducidad:=FechaCaducidad) Then
ExistenciaEspecificada = ObjInventario.DtResultados.FiltroPrimeroValor("Existencia", String.Format("CveAlmacen = {0}", DdlAlmacenOrigen.SelectedValue)).ToDecimal
End If
'ExistenciaEspecificada = ObjInventario.GetExistenciasPS(dr("CvePS").ToString.ToEntero, dr("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenOrigen.SelectedValue.ToEntero, FechaMovto:=TxtFecha.Text.ToDate.ToString("yyyy/MM/dd 23:59"), CveSeccionAlmacen:=CveSeccionAlmacen, Serie:=Serie, Lote:=Lote, FechaCaducidad:=FechaCaducidad, PendientePorSurtir:=-1)
Existencia = ExistenciaEspecificada - CantidadenGrid
End If
@@ -1357,8 +1374,6 @@ Partial Class Inventarios_TraspasoAlmacen
ChkTransitorio.Enabled = True
TxtGastoIndirecto.Text = ""
DivMov.Visible = False
CargadoDeMov = False
@@ -1366,6 +1381,7 @@ Partial Class Inventarios_TraspasoAlmacen
UpMov.Update()
DtMovimientos.Rows.Clear()
ActualizaBitacora()
CargaGvDatos()
End Sub
#End Region
@@ -1479,9 +1495,12 @@ Partial Class Inventarios_TraspasoAlmacen
Private Sub EscondeColumnasGVM(DtTemp As DataTable)
GvDatos.Columns(5).Visible = DtTemp.MAX("Serie").ToString <> ""
TdSerie.Visible = GvDatos.Columns(5).Visible : ThSerie.Visible = GvDatos.Columns(5).Visible
GvDatos.Columns(6).Visible = DtTemp.MAX("Lote").ToString <> ""
TdLote.Visible = GvDatos.Columns(6).Visible : ThLote.Visible = GvDatos.Columns(6).Visible
GvDatos.Columns(7).HeaderText = If(UsuarioActual.Empresa.Funcionalidad(147) = "Fecha Elaboración", "Fecha Elaboración", "Fecha Caducidad")
GvDatos.Columns(7).Visible = DtTemp.MAX("FechaCaducidad").ToString.ToDate > MinFecha
TdFechaCaducidad.Visible = GvDatos.Columns(7).Visible : ThFechaCaducidad.Visible = GvDatos.Columns(7).Visible
GvDatos.Columns(8).Visible = DtTemp.MAX("CveSeccionAlmacen").ToString.ToEntero > 0
''TxtnSerie.Visible = False
@@ -1583,6 +1602,7 @@ Partial Class Inventarios_TraspasoAlmacen
DbRow = DtMovimientos.Rows(e.RowIndex)
DtMovimientos.Rows.Remove(DbRow)
ActualizaBitacora()
CargaGvDatos()
End Sub
@@ -3059,6 +3079,17 @@ Partial Class Inventarios_TraspasoAlmacen
End If
End Sub
Protected Sub HplCargaBitacora_Click(sender As Object, e As EventArgs)
If IO.File.Exists(ArchivoBitacora) Then
DtMovimientos.ReadXml(ArchivoBitacora)
CargaGvDatos()
Alert("Registro(s) Recuperados", TipoMensaje.ToastInformacion)
Else
Alert("No hay bitácora para recuperar.", TipoMensaje.ToastInformacion)
End If
End Sub
End Class