From 509e4649d94d5799611e278113b1734498976942 Mon Sep 17 00:00:00 2001 From: Antonio Gonzalez Date: Thu, 10 Sep 2020 20:16:48 -0700 Subject: [PATCH 1/8] . --- Ventas/ActualizarPrecios.aspx.vb | 120 +++++++++++++++---------------- 1 file changed, 60 insertions(+), 60 deletions(-) diff --git a/Ventas/ActualizarPrecios.aspx.vb b/Ventas/ActualizarPrecios.aspx.vb index 07f9d3816..54e4822da 100644 --- a/Ventas/ActualizarPrecios.aspx.vb +++ b/Ventas/ActualizarPrecios.aspx.vb @@ -74,32 +74,32 @@ Partial Class Ventas_ActualizarPrecios DDlClasificacion.Items.Insert(0, New ListItem("Todos", "-1")) End Sub - Public Sub CargaPreciosLista() - - DdlPrecioLista.Items.Clear() - - If UsuarioActual.Empresa.Funcionalidad(404).ToEntero > 0 Then 'si manneja precios de lista - Dim ObjVta As New ClsVentas - Dim primerItem As String = "" - If ObjVta.GetPrecioListas(UsuarioActual.CveEmpresa) Then - DdlPrecioLista.DataSource = ObjVta.DtResultados.Copy() - DdlPrecioListaCarga.DataSource = ObjVta.DtResultados.Copy() - primerItem = ObjVta.DtResultados.FiltroPrimeroValor("CvePrecioLista") - End If - ObjVta.Dispose() - - - DdlPrecioLista.DataBind() - DdlPrecioListaCarga.DataBind() - - If (DdlPrecioLista.Items.Count = 1) Then - DdlPrecioLista.Items.FindByValue(primerItem).Selected = True - End If - Else + Public Sub CargaPreciosLista() + + DdlPrecioLista.Items.Clear() + + If UsuarioActual.Empresa.Funcionalidad(404).ToEntero > 0 Then 'si manneja precios de lista + Dim ObjVta As New ClsVentas + Dim primerItem As String = "" + If ObjVta.GetPrecioListas(UsuarioActual.CveEmpresa) Then + DdlPrecioLista.DataSource = ObjVta.DtResultados.Copy() + DdlPrecioListaCarga.DataSource = ObjVta.DtResultados.Copy() + primerItem = ObjVta.DtResultados.FiltroPrimeroValor("CvePrecioLista") + End If + ObjVta.Dispose() + + + DdlPrecioLista.DataBind() + DdlPrecioListaCarga.DataBind() + + If (DdlPrecioLista.Items.Count = 1) Then + DdlPrecioLista.Items.FindByValue(primerItem).Selected = True + End If + Else DdlPrecioLista.Items.Insert(0, New ListItem("Sin Precio Lista", "-2")) - DdlPrecioListaCarga.Items.Insert(0, New ListItem("Sin Precio Lista", "-2")) - End If - + DdlPrecioListaCarga.Items.Insert(0, New ListItem("Sin Precio Lista", "-2")) + End If + End Sub Public Sub CargaPS() @@ -142,19 +142,19 @@ Partial Class Ventas_ActualizarPrecios DdlMarca.Items.Insert(0, New ListItem("Todos", "-1")) End Sub - Private Sub CargarModelos() - If UsuarioActual.Empresa.Funcionalidad(558).ToString = "1" Then - lblModelo.visible = True - DdlModelo.Visible = True - Dim ObjGeneral As New ClsGenerales - If ObjGeneral.GetModelos(UsuarioActual.CveEmpresa) Then - DdlModelo.DataSource = ObjGeneral.DtResultados - End If - ObjGeneral.Dispose() - DdlModelo.DataBind() - End If - DdlModelo.Items.Insert(0, New ListItem("Seleccione", "-1")) - + Private Sub CargarModelos() + If UsuarioActual.Empresa.Funcionalidad(558).ToString = "1" Then + lblModelo.visible = True + DdlModelo.Visible = True + Dim ObjGeneral As New ClsGenerales + If ObjGeneral.GetModelos(UsuarioActual.CveEmpresa) Then + DdlModelo.DataSource = ObjGeneral.DtResultados + End If + ObjGeneral.Dispose() + DdlModelo.DataBind() + End If + DdlModelo.Items.Insert(0, New ListItem("Seleccione", "-1")) + End Sub Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs) Dim objPS As New ClsProductosServicios @@ -223,7 +223,7 @@ Partial Class Ventas_ActualizarPrecios ObjPS.Dispose() BtnConsultar_Click(Nothing, Nothing) - RegistraScript("$('#divAgregar').modal('hide')") + RegistraScript("$('#divAgregar').modal('hide')") TxtImporte.Text = "" TxtPrecio.Text = "" TxtPorcentaje.Text = "" @@ -410,26 +410,26 @@ Partial Class Ventas_ActualizarPrecios Dim Correcto As Boolean = False Dim CvePS As Integer = DtPS.FiltroPrimeroValor("CvePS", String.Format("Codigo='{0}' AND CveEmpresa={1}", row(0).ToString(), UsuarioActual.CveEmpresa)) Dim CvePrecioLista As Integer = DdlPrecioListaCarga.SelectedValue.ToEntero() - Dim PrecioNuevo As Decimal = row("Precio").ToString().ToDecimal() + Dim PrecioNuevo As Decimal = row("Precio").ToString().ToDecimal() Dim Porcentaje As Decimal = -1 - If CvePS > 0 AndAlso CvePrecioLista > 0 Then - - + If CvePS > 0 AndAlso CvePrecioLista > 0 Then + + Correcto = ObjPS.UpdatePSPreciosLista(PrecioNuevo, CvePrecioLista, Porcentaje, CvePS, UsuarioActual.CveUsuario, DateTime.Now, True) If Correcto Then RowsCargados += 1 End If - Else - If CvePS > 0 AndAlso CvePrecioLista = -2 Then - Correcto = ObjPS.UpdatePSPrecios(PrecioNuevo, CvePrecioLista, Porcentaje, CvePS, UsuarioActual.CveUsuario, DateTime.Now, True) - If Correcto Then - RowsCargados += 1 - End If - Else - Correcto = False - End If - + Else + If CvePS > 0 AndAlso CvePrecioLista = -2 Then + Correcto = ObjPS.UpdatePSPrecios(PrecioNuevo, CvePrecioLista, Porcentaje, CvePS, UsuarioActual.CveUsuario, DateTime.Now, True) + If Correcto Then + RowsCargados += 1 + End If + Else + Correcto = False + End If + End If If Not Correcto Then ProductosNoCargados.AppendFormat("{0},", row("Producto / Servicio").ToString()) @@ -508,12 +508,12 @@ Partial Class Ventas_ActualizarPrecios End While Return dataTable - End Function + End Function #End Region - - Protected Sub gvSucursal_RowDataBound(sender As Object, e As GridViewRowEventArgs) - If e.Row.RowType = DataControlRowType.DataRow Then - e.Row.FCTextBox("TxtPrecioMinimo").Attributes.Add("onKeyUp", String.Format("FncSeleccionaChk({0});", e.Row.FCCheckBox("chkSucursal").ClientID)) - End If - End Sub + + Protected Sub gvSucursal_RowDataBound(sender As Object, e As GridViewRowEventArgs) + If e.Row.RowType = DataControlRowType.DataRow Then + e.Row.FCTextBox("TxtPrecioMinimo").Attributes.Add("onKeyUp", String.Format("FncSeleccionaChk({0});", e.Row.FCCheckBox("chkSucursal").ClientID)) + End If + End Sub End Class \ No newline at end of file From 1f8ef7c5fa0c2207ddc339871c0c19d74cc2778e Mon Sep 17 00:00:00 2001 From: Antonio Gonzalez Date: Fri, 11 Sep 2020 13:01:11 -0700 Subject: [PATCH 2/8] acomod de layout --- Compras/Compras.aspx | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index 2fc14f0ad..be8eb8dba 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -3903,7 +3903,7 @@ Créditos Acreedores Caja Chica - Viaticos + Viáticos Deudores @@ -3911,7 +3911,7 @@
- +

@@ -3971,7 +3971,7 @@
- +
@@ -4000,7 +4000,7 @@
-
+
@@ -4029,11 +4029,12 @@
+
- +
@@ -4052,7 +4053,7 @@
-
+
@@ -4070,16 +4071,18 @@
+
- +
+
- +
@@ -4105,7 +4108,7 @@
-
+
@@ -4119,15 +4122,17 @@
+
- +
+
- + D.D @@ -4235,7 +4240,7 @@ - +
@@ -4267,10 +4272,11 @@
+
- +
@@ -4295,7 +4301,7 @@
-
+
@@ -4308,6 +4314,7 @@
+
From 50e6425c3833a1eb6abcf68d32dbee19289978bb Mon Sep 17 00:00:00 2001 From: Antonio Gonzalez Date: Fri, 11 Sep 2020 17:06:10 -0700 Subject: [PATCH 3/8] =?UTF-8?q?en=20el=20modal=20de=20reembolso=20el=20lab?= =?UTF-8?q?el=20del=20ddl=20cambiar=C3=A1=20dependiendo=20del=20valor=20se?= =?UTF-8?q?leccionado=20en=20los=20radiobuttons?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Compras/Compras.aspx.vb | 1 + 1 file changed, 1 insertion(+) diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 9781db9cf..e07c1e675 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -12838,6 +12838,7 @@ Partial Class Compras_Compras End Sub Protected Sub RBLContado_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RBLContado.SelectedIndexChanged + LblCheq.Text = RBLContado.SelectedItem.Text CargaContado() End Sub Private Sub RBLTipoDeudor_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RBLTipoDeudor.SelectedIndexChanged From 7ebe1efcb291bec1b387fd1e9a406b600e0034ed Mon Sep 17 00:00:00 2001 From: rrene Date: Sat, 12 Sep 2020 08:34:06 -0700 Subject: [PATCH 4/8] -- funcion de series por producto --- App_Code/ClsInventarios.vb | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/App_Code/ClsInventarios.vb b/App_Code/ClsInventarios.vb index 7b066db54..da45dd81c 100644 --- a/App_Code/ClsInventarios.vb +++ b/App_Code/ClsInventarios.vb @@ -1551,6 +1551,33 @@ Public Class ClsInventarios End Function + Public Function GetExistenciasProductoSerie(CvePS As Integer, CveAlmacen As Integer, CveUsuario As Integer, CveEmpresa As Integer) As Boolean + Dim Retorno As Boolean = False + + DataAdapter("PA_Inv_ExistenciaPSSeriesGet") + + With SqlAdapter.SelectCommand.Parameters + .Add("@CvePS", SqlDbType.Int).Value = CvePS + .Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen + .Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario + .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa + End With + + Try + SqlAdapter.Fill(Data) + Retorno = True + Catch Ex1 As SqlException + + Me.OnError("Ocurrió un error al obtener el kardex de almacen.", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) + + Catch ex As Exception + OnError("Ocurrió un error al obtener el kardex de almacen.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) + End Try + + Return Retorno + + End Function + #End Region #Region " INVENTARIOS - REPORTES " From 2d53fdb08993cd17de4d8b3e201e52515224186b Mon Sep 17 00:00:00 2001 From: Antonio Gonzalez Date: Sat, 12 Sep 2020 12:46:18 -0700 Subject: [PATCH 5/8] =?UTF-8?q?se=20agreg=C3=B3=20una=20ventana=20modal=20?= =?UTF-8?q?que=20muestra=20en=20un=20grid=20las=20series=20en=20los=20alma?= =?UTF-8?q?cenes=20del=20producto=20seleccionado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Inventarios/Kardex.aspx | 60 ++++++++++++++++++++++++++++++++------ Inventarios/Kardex.aspx.vb | 21 +++++++++++++ 2 files changed, 72 insertions(+), 9 deletions(-) diff --git a/Inventarios/Kardex.aspx b/Inventarios/Kardex.aspx index ca1b60934..6dc8dfaf9 100644 --- a/Inventarios/Kardex.aspx +++ b/Inventarios/Kardex.aspx @@ -116,15 +116,22 @@ Kardex -
  • - Generar PDF -
  • -
  • - Generar Excel -
  • -
  • -   -
  • + + +
  • + Generar PDF +
  • +
  • + Generar Excel +
  • +
  • + Series +
  • +
  • +   +
  • +
    +
    @@ -493,6 +500,41 @@ + diff --git a/Inventarios/Kardex.aspx.vb b/Inventarios/Kardex.aspx.vb index 448dcc4e4..040ca2bc1 100644 --- a/Inventarios/Kardex.aspx.vb +++ b/Inventarios/Kardex.aspx.vb @@ -203,6 +203,8 @@ Partial Class Inventarios_Kardex If AplicaLote Then GvM.Columns(9).Visible = True If AplicaCaducidad Then GvM.Columns(10).Visible = True + Dim AuxAplicaSerie As Boolean = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CveProducto).FiltroPrimeroValor("AplicaSerie") = "True" + LnkSeries.Visible = AuxAplicaSerie 'CARGA INDICADORES If UsuarioActual.TienePermisoProceso(201) Then DivIndicadores.Visible = True @@ -238,6 +240,7 @@ Partial Class Inventarios_Kardex End If GvM.DataSource = DtTemp GvM.DataBind() + UpAcciones.Update() End If Else Alert("Seleccione un producto.", TipoMensaje.MsgAdvertencia) @@ -299,6 +302,15 @@ Partial Class Inventarios_Kardex End If End Sub + + Private Sub CargarExistenciasProductosSeries() + Dim ObjInventarios As New ClsInventarios + If ObjInventarios.GetExistenciasProductoSerie(ddlProducto2.SelectedValue.ToEntero(), ddlAlmacen.SelectedValue.ToEntero(), UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then + GvSeries.DataSource = ObjInventarios.DtResultados + End If + ObjInventarios.Dispose() + GvSeries.DataBind() + End Sub #End Region #Region " IMPRIMIR " @@ -409,5 +421,14 @@ Partial Class Inventarios_Kardex #End Region +#Region "Acciones" + Protected Sub LnkSeries_OnClick(sender As Object, e As EventArgs) Handles LnkSeries.Click + CargarExistenciasProductosSeries() + UpGridSeries.Update() + RegistraScript(String.Format("$('#{0}').modal('show');", "DivModalSerie")) + End Sub +#End Region + + End Class From d8d48c877c9f85c71fdcef55ab6a7a7720f7227c Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Mon, 14 Sep 2020 19:02:50 -0700 Subject: [PATCH 6/8] Devolucion de Proveedor --- Compras/Compras.aspx.vb | 9 +- Inventarios/RecepcionAlmacen.aspx | 2 +- Inventarios/RecepcionAlmacen.aspx.vb | 271 +++++++++++++++++++++++++-- 3 files changed, 268 insertions(+), 14 deletions(-) diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index d096c8df3..c151a54f5 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -1332,6 +1332,10 @@ Partial Class Compras_Compras End If + If DdlTipoComprobante.SelectedValue = "DEV" Then + InicializaAplicaNCFact() + End If + If UsuarioActual.Empresa.UsaAC Then @@ -16929,8 +16933,9 @@ Partial Class Compras_Compras CargaRetISRConcepto() - - + If DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then + InicializaAplicaNCFact() + End If End Sub Private Sub OriginalesVisible(Accion As Boolean) diff --git a/Inventarios/RecepcionAlmacen.aspx b/Inventarios/RecepcionAlmacen.aspx index c0e7de431..a4d52dd3d 100644 --- a/Inventarios/RecepcionAlmacen.aspx +++ b/Inventarios/RecepcionAlmacen.aspx @@ -418,7 +418,7 @@ + DataKeyNames="EntregaDirecta,Consec,CodigoBarras,CvePS,CveUM,PU,CantidadC,CantidadF,UM,PS,CveCompraDetalle,CveOrdenCompraDetalle,PUExtranjero,AplicaSerieLote,CveClasificacion,Codigo,CveVentaDetalle,CostoIndirecto,CveTamaño,Lote,AplicaSeccion,AplicaLote,AplicaCaducidad,AplicaSerie,CveAlmacenDevolucionProveedor" HeaderStyle-CssClass="Titulos" RowStyle-Height="25px" CssClass="table table-striped table-hover Widthall ScrollAD mysmallbtn" data-heighterror="450" data-freezerows="1" GridLines="None"> diff --git a/Inventarios/RecepcionAlmacen.aspx.vb b/Inventarios/RecepcionAlmacen.aspx.vb index cb8126518..3ce4a112d 100644 --- a/Inventarios/RecepcionAlmacen.aspx.vb +++ b/Inventarios/RecepcionAlmacen.aspx.vb @@ -91,6 +91,14 @@ Partial Class Inventarios_RecepcionAlmacen Return ViewState("IdPoliza").ToString.ToEntero End Get End Property + Private Property DtAlmacenesDevolucion As DataTable + Get + Return CType(ViewState("DtAlmacenesDevolucion"), DataTable) + End Get + Set(value As DataTable) + ViewState("DtAlmacenesDevolucion") = value + End Set + End Property Private Property DtDatosDetalle As DataTable Get Return CType(ViewState("DtDatosDetalle"), DataTable) @@ -245,6 +253,14 @@ Partial Class Inventarios_RecepcionAlmacen ViewState("CveAlmacenApartado") = value End Set End Property + Private Property CveAlmacenDevolucionProveedor As Integer + Get + Return CType(ViewState("CveAlmacenDevolucionProveedor"), Integer) + End Get + Set(value As Integer) + ViewState("CveAlmacenDevolucionProveedor") = value + End Set + End Property Private Property TipoMovimiento As Integer Get Return CType(ViewState("TipoMovimiento"), Integer) @@ -361,6 +377,14 @@ Partial Class Inventarios_RecepcionAlmacen ViewState("CveVendedor") = value End Set End Property + Private Property RealizarTraspasoAlmacenDevolucion() As Boolean + Get + Return If(IsNothing(ViewState("RealizarTraspasoAlmacenDevolucion")), False, CBool(ViewState("RealizarTraspasoAlmacenDevolucion"))) + End Get + Set + ViewState("RealizarTraspasoAlmacenDevolucion") = Value + End Set + End Property #End Region @@ -404,8 +428,9 @@ Partial Class Inventarios_RecepcionAlmacen CveFleteCompra = -1 BuscaEntregaDirecta = -1 CveAlmacenApartado = -1 + CveAlmacenDevolucionProveedor = -1 TipoMovimiento = 1 - + RealizarTraspasoAlmacenDevolucion = False CantidadTotal = 0 IndexSeccionAlmacen = 0 @@ -778,6 +803,8 @@ Partial Class Inventarios_RecepcionAlmacen DivTipoCambio.Visible = False Apartado = False CveAlmacenApartado = -1 + CveAlmacenDevolucionProveedor = -1 + RealizarTraspasoAlmacenDevolucion = False BtnGuardar.Enabled = True CargaAlmacenes(-1) @@ -829,6 +856,9 @@ Partial Class Inventarios_RecepcionAlmacen Private Sub CargaCompra(pCveCompra As Integer, pCveProveedor As Integer) 'CargaAlmacenes(-1) + RealizarTraspasoAlmacenDevolucion = False + CveAlmacenDevolucionProveedor = -1 + Dim ObjCompras As New ClsCompras Dim ObjInventario As New ClsInventarios @@ -896,6 +926,13 @@ Partial Class Inventarios_RecepcionAlmacen DtRecepcion = ObjInventario.DtResultados.Copy() End If + If TipoMovimiento = 2 AndAlso GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveTipoAlmacen:=21).Rows.Count > 0 Then + RealizarTraspasoAlmacenDevolucion = True + CveAlmacenDevolucionProveedor = DtRecepcion.Rows(0)("CveAlmacenDevolucionProveedor").ToString.ToEntero + 'CreaDTAlmacenDevolucion() + 'CargaAlmacenes(-1, "21", CveTipoCompra) + End If + DtDatosDetalle = Nothing CreaDtDetalle() DtDatosLoteDetalle = Nothing @@ -1494,6 +1531,14 @@ Partial Class Inventarios_RecepcionAlmacen End If End Sub + Private Sub CreaDTAlmacenDevolucion() + If DtAlmacenesDevolucion Is Nothing Then + DtAlmacenesDevolucion = New DataTable + DtAlmacenesDevolucion.Columns.Add("CveCompraDetalle", GetType(Integer)) + DtAlmacenesDevolucion.Columns.Add("CveAlmacenOriginal", GetType(Integer)) + End If + End Sub + Private Sub CargaSerie(Tipo As Integer, Optional CerrarCompletado As Boolean = False) 'RegistraScript("document.getElementById(""TxtSerie"").focus();") RegistraScript("$('#DivSerie').modal();", "ModalLote") @@ -2206,6 +2251,10 @@ Partial Class Inventarios_RecepcionAlmacen Dim CveMovimientoVirtual As Integer = -1 Dim FolioVirtual As Integer = -1 + 'TRASPASO DEVOLUCION + Dim CveMovimientoSalidaTraspaso As Integer = -1 + Dim FolioSalidaTraspaso As String = "" + 'CONTABILIDAD Dim CvePrePoliza = -1 Dim MensajeContabilidad = "" @@ -2218,19 +2267,26 @@ Partial Class Inventarios_RecepcionAlmacen If HdnTipoDocto.Value <> "Fac" Then RecibidaCompleta = False + Dim CveConceptoAlmacen As Integer = If(TipoMovimiento > 1, 13, 2) + Dim CveAlmacen As Integer = DdlAlmacen.SelectedValue.ToEntero Dim CveModalidad As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=CveAlmacen).FiltroPrimeroValor("CveModalidad").ToEntero() Dim EsContabilizable As Boolean = (CveModalidad = 1) - 'ENTRADA ALMACÉN - CveMovimiento = ObjInventario.AddMovimiento(CveAlmacen, If(TipoMovimiento > 1, 13, 2), 1, FechaMovto, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, - CveCompraSurtir, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, TipoCambio:=If(DdlMonedaTC.SelectedValue.ToEntero = 1, -1, TipoCambio), - MovimientoFijo:=If(TipoMovimiento = 2, True, False), Remision:=TxtRemision.Text, Modulo:="RA/G1") - If CveMovimiento > 0 Then - CveMovimientoOriginal = CveMovimiento - InvFolio = ObjInventario.Folio.ToString + If RealizarTraspasoAlmacenDevolucion AndAlso TipoMovimiento = 2 Then + CveConceptoAlmacen = 26 + + 'For Each gvr As GridViewRow In GvInv.Rows + ' If gvr.FCCheckBox("cbInv").Checked AndAlso gvr.FCTextBox("TbCantidadF").Text.ToDecimal > 0 Then + ' Dim Row As DataRow = DtAlmacenesDevolucion.NewRow() + ' Row("CveCompraDetalle") = gvr.DataKey("CveCompraDetalle").ToEntero() + ' Row("CveAlmacenOriginal") = gvr.DataKey("CveAlmacenOriginal").ToEntero() + ' DtAlmacenesDevolucion.Rows.Add(Row) + ' End If + 'Next + Dim DtDetalle As New DataTable Dim DtDetalleLote As New DataTable Dim PU As Decimal = 0.0D @@ -2238,6 +2294,119 @@ Partial Class Inventarios_RecepcionAlmacen Dim CostoIndirecto As Decimal = 0.0D Dim SumaTotal As Decimal = 0.0D Dim Cont As Integer = 0 + + Dim CveMovtoSalidaActual = -1 + Dim CveMovtoEntradaActual = -1 + Dim CveVendedorActual = -1 + Dim CveClienteActual = -1 + + Dim CveAlmacenDestino = CveAlmacen + Dim CveSeccionDestino As Integer = -1 + + 'For Each RowAlmacen As DataRow In DtAlmacenesDevolucion.FiltraParametros("", DistinctColumns:={"CveAlmacenOrignal"}).Rows + + 'SALIDA DE ALMACEN POR TRASPASO + CveMovimientoSalidaTraspaso = ObjInventario.AddMovimiento(CveAlmacen, CveConceptoAlmacen, 1, FechaMovto, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, + CveCompraSurtir, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, TipoCambio:=If(DdlMonedaTC.SelectedValue.ToEntero = 1, -1, TipoCambio), + MovimientoFijo:=If(TipoMovimiento = 2, True, False), CveAlmacenDestino:=CveAlmacenDestino, Remision:=TxtRemision.Text, Modulo:="RA/G1") + + If CveMovimientoSalidaTraspaso > 0 Then + FolioSalidaTraspaso = ObjInventario.Folio.ToString() + + For Each gvr As GridViewRow In GvInv.Rows '.Cast(Of GridViewRow).Where(Function(row) row.DataKey("CveAlmacenOrignal") = RowAlmacen("CveAlmacenOrignal").ToString()) + If gvr.FCCheckBox("cbInv").Checked AndAlso gvr.FCTextBox("TbCantidadF").Text.ToDecimal > 0 Then + + PU = DtInv.Rows(gvr.RowIndex)("PU").ToString.ToDecimal + CostoIndirecto = DtInv.Rows(gvr.RowIndex)("CostoIndirecto").ToString.ToDecimal + PUExtranjero = DtInv.Rows(gvr.RowIndex)("PUExtranjero").ToString.ToDecimal + + 'SI FUE POR SERIE LOTE + DtDetalle = DtDatosDetalle.FiltraParametros(String.Format("ConsecId = {0}", gvr.DataKey("Consec").ToEntero)) + DtDetalleLote = DtDatosLoteDetalle.FiltraParametros(String.Format("ConsecId = {0}", gvr.DataKey("Consec").ToEntero)) + If DtDetalle.Rows.Count > 0 Then + Dim ContDt As Integer = 0 + For Each Dr As DataRow In DtDetalle.Rows + SumaTotal += PU + CostoIndirecto + If RecibidaCompleta AndAlso Cont + 1 = GvInv.Rows.Count AndAlso ContDt + 1 = DtDetalle.Rows.Count AndAlso Math.Round((TotalCompraOC * If(TipoCambio > 1, TipoCambio, 1)), 2) <> SumaTotal Then + If Not UsuarioActual.Empresa.Funcionalidad(531) = "1" Then + PU = Math.Round((TotalCompraOC * If(TipoCambio > 1, TipoCambio, 1)), 2).ToDecimal - (SumaTotal - (PU)) + End If + End If + If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalidaTraspaso, 1, gvr.DataKey("CveUM").ToEntero, gvr.DataKey("CvePS").ToEntero, PU, -1, PUTC:=If(DdlMonedaTC.SelectedValue.ToEntero = 1, -1, PUExtranjero), Serie:=Dr("Serie").ToString, CveCompraDetalle:=gvr.DataKey("CveCompraDetalle").ToEntero, CveOrdenCompraDetalle:=gvr.DataKey("CveOrdenCompraDetalle").ToEntero, CveVentaDetalle:=gvr.DataKey("CveVentaDetalle").ToEntero, CostoIndirecto:=CostoIndirecto, CveUsuarioModifico:=UsuarioActual.CveUsuario, FechaCaducidad:=If(CBool(gvr.DataKey("AplicaCaducidad")), gvr.FCTextBox("TxtCaducidad").Text.ToDate, MinFecha), Lote:=If(CBool(gvr.DataKey("AplicaLote")), gvr.FCTextBox("TxtLote").Text, ""), CveSeccionAlmacen:=If(CBool(gvr.DataKey("AplicaSeccion")), gvr.FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero, -1)) Then + ErrorMovInv = True + Exit For + End If + ContDt += 1 + Next + ElseIf DtDetalleLote.Rows.Count > 0 Then + Dim ContDt As Integer = 0 + For Each Dr As DataRow In DtDetalleLote.Rows + SumaTotal += Dr("Cantidad").ToString.ToDecimal * (PU + CostoIndirecto) + If RecibidaCompleta AndAlso Cont + 1 = GvInv.Rows.Count AndAlso ContDt + 1 = DtDetalleLote.Rows.Count AndAlso Math.Round((TotalCompraOC * If(TipoCambio > 1, TipoCambio, 1)), 2) <> SumaTotal Then + If Not UsuarioActual.Empresa.Funcionalidad(531) = "1" Then + PU = (Math.Round((TotalCompraOC * If(TipoCambio > 1, TipoCambio, 1)), 2).ToDecimal - (SumaTotal - (Dr("Cantidad").ToString.ToDecimal * (PU)))) / Dr("Cantidad").ToString.ToDecimal + End If + End If + If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalidaTraspaso, Dr("Cantidad").ToString.ToDouble, gvr.DataKey("CveUM").ToEntero, gvr.DataKey("CvePS").ToEntero, PU, -1, PUTC:=If(DdlMonedaTC.SelectedValue.ToEntero = 1, -1, PUExtranjero), Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate, CveCompraDetalle:=gvr.DataKey("CveCompraDetalle").ToEntero, CveOrdenCompraDetalle:=gvr.DataKey("CveOrdenCompraDetalle").ToEntero, CveVentaDetalle:=gvr.DataKey("CveVentaDetalle").ToEntero, CostoIndirecto:=CostoIndirecto, CveUsuarioModifico:=UsuarioActual.CveUsuario, CveSeccionAlmacen:=If(CBool(gvr.DataKey("AplicaSeccion")), gvr.FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero, -1)) Then + ErrorMovInv = True + Exit For + End If + + ContDt += 1 + Next + Else + SumaTotal += gvr.FCTextBox("TbCantidadF").Text.ToDecimal * (PU + CostoIndirecto) ' considerar el costo indirecto para el ajuste + If RecibidaCompleta AndAlso Cont + 1 = GvInv.Rows.Count AndAlso Math.Round((TotalCompraOC * If(TipoCambio > 1, TipoCambio, 1)), 2) <> Math.Round(SumaTotal, 2) Then + Dim tTotal As Decimal = gvr.FCTextBox("TbCantidadF").Text.ToDecimal * (PU) + If Not UsuarioActual.Empresa.Funcionalidad(531) = "1" Then + PU = (Math.Round((TotalCompraOC * If(TipoCambio > 1, TipoCambio, 1)), 2).ToDecimal - (SumaTotal - tTotal)) / gvr.FCTextBox("TbCantidadF").Text.ToDecimal + End If + End If + If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalidaTraspaso, gvr.FCTextBox("TbCantidadF").Text.ToDouble, gvr.DataKey("CveUM").ToEntero, gvr.DataKey("CvePS").ToEntero, PU, -1, PUTC:=If(DdlMonedaTC.SelectedValue.ToEntero = 1, -1, PUExtranjero), CveCompraDetalle:=gvr.DataKey("CveCompraDetalle").ToEntero, CveOrdenCompraDetalle:=gvr.DataKey("CveOrdenCompraDetalle").ToEntero, CveVentaDetalle:=gvr.DataKey("CveVentaDetalle").ToEntero, CostoIndirecto:=CostoIndirecto, CveUsuarioModifico:=UsuarioActual.CveUsuario, FechaCaducidad:=If(CBool(gvr.DataKey("AplicaCaducidad")), gvr.FCTextBox("TxtCaducidad").Text.ToDate, MinFecha), Lote:=If(CBool(gvr.DataKey("AplicaLote")), gvr.FCTextBox("TxtLote").Text, ""), CveSeccionAlmacen:=If(CBool(gvr.DataKey("AplicaSeccion")), gvr.FCDropDownList("DdlSeccionAlmacen").SelectedValue.ToEntero, -1)) Then + ErrorMovInv = True + Exit For + End If + + End If + 'If ObjInventario.CveMovimientoDetalle > 0 AndAlso DtSeccionAlmacen.Rows.Count > 0 Then + ' For Each Dr As DataRow In DtSeccionAlmacen.FiltraParametros($"IndexSeccionAlmacen = {gvr.RowIndex}").Rows + ' If Not ObjInventario.AddMovimientosDetalleSeccionesAlmacen(ObjInventario.CveMovimientoDetalle, Dr("CveSeccionAlmacen").ToString.ToEntero, Dr("CantidadSeccionAlmacen").ToString.ToDecimal) Then + ' ErrorMovInv = True + ' Exit For + ' End If + ' Next + 'End If + Cont += 1 + End If + Next + Else + ErrorMovInv = True + End If + + 'Next + + 'MODIFICA EL CONCEPTO PARA REALIZAR LA ENTRADA + CveConceptoAlmacen = 27 + CveAlmacen = CveAlmacenDevolucionProveedor + End If + + 'ENTRADA ALMACÉN + CveMovimiento = ObjInventario.AddMovimiento(CveAlmacen, CveConceptoAlmacen, 1, FechaMovto, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, + CveCompraSurtir, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, TipoCambio:=If(DdlMonedaTC.SelectedValue.ToEntero = 1, -1, TipoCambio), + MovimientoFijo:=If(TipoMovimiento = 2, True, False), CveMovimientoRelacionado:=CveMovimientoSalidaTraspaso, Remision:=TxtRemision.Text, Modulo:="RA/G1") + + If CveMovimiento > 0 Then + CveMovimientoOriginal = CveMovimiento + InvFolio = ObjInventario.Folio.ToString + + Dim DtDetalle As New DataTable + Dim DtDetalleLote As New DataTable + Dim PU As Decimal = 0.0D + Dim PUExtranjero As Decimal = 0.0D + Dim CostoIndirecto As Decimal = 0.0D + Dim SumaTotal As Decimal = 0.0D + Dim Cont As Integer = 0 + For Each gvr As GridViewRow In GvInv.Rows If gvr.FCCheckBox("cbInv").Checked AndAlso gvr.FCTextBox("TbCantidadF").Text.ToDecimal > 0 Then @@ -2858,6 +3027,7 @@ Partial Class Inventarios_RecepcionAlmacen MensajeError = "Error al obtener movimientos" End If End If + 'PREPOLIZA - NC If TipoMovimiento = 3 AndAlso Not ErrorMovInv Then If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then @@ -2983,6 +3153,75 @@ Partial Class Inventarios_RecepcionAlmacen End If End If + If Not ErrorMovInv AndAlso TipoMovimiento = 2 AndAlso CveMovimientoSalidaTraspaso > 0 Then + + 'VARIABLES + Dim Fecha As Date = Now + Dim CveProveedor As Integer = -1 + Dim ProveedorNombre As String = "" + Dim SerieFolio As String = "" + + 'Dim DrAlmO, DrAlmD As DataRow + 'Dim CveSucursalOrigen, CveSucursalDestino As Integer + 'Dim TipoAlmacenOrigen, TipoAlmacenDestino As Integer + 'Dim CveSubProyectoOrigen, CveSubProyectoDestino As Integer + Dim IdCtaContableOrigen, IdCtaContableDestino As Integer + + If ObjCompras.GetCompras(CveCompraSurtir, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then + 'Fecha = ObjCompras.DtResultados(0)("Fecha").ToString.ToDate + Fecha = TxtFecha.Text.ToDate + CveProveedor = ObjCompras.DtResultados(0)("CveProveedor").ToString.ToEntero + ProveedorNombre = ObjCompras.DtResultados(0)("RazonSocial").ToString + SerieFolio = $"Compra: {ObjCompras.DtResultados(0)("SerieFolio").ToString}" + Else + ErrorMovInv = True + End If + + 'DrAlmO = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacen.SelectedValue.ToEntero).FiltroPrimero("") + 'DrAlmD = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=CveAlmacenDevolucionProveedor).FiltroPrimero("") + + 'If Not ErrorMovInv AndAlso DrAlmO IsNot Nothing AndAlso DrAlmD IsNot Nothing Then + ' CveSucursalOrigen = DrAlmO("CveSubProyecto").ToString.ToEntero + ' TipoAlmacenOrigen = DrAlmO("CveTipoAlmacen").ToString.ToEntero + ' CveSubProyectoOrigen = DrAlmO("CveSubProyecto").ToString.ToEntero + ' IdCtaContableOrigen = DrAlmO("IdCtaContable").ToString.ToEntero + + ' CveSucursalDestino = DrAlmD("CveSubProyecto").ToString.ToEntero + ' TipoAlmacenDestino = DrAlmD("CveTipoAlmacen").ToString.ToEntero + ' CveSubProyectoDestino = DrAlmD("CveSubProyecto").ToString.ToEntero + ' IdCtaContableDestino = DrAlmO("IdCtaContable").ToString.ToEntero + 'Else + ' ErrorMovInv = True + 'End If + + Dim resultado As DataTable = Nothing + + If ObjInventario.GetMovimientosDetalle(CveMovimientoSalidaTraspaso, UsuarioActual.CveEmpresa) Then + resultado = ObjInventario.DtResultados.Copy() + Else + ErrorMovInv = True + End If + + 'Dim CveSubProyecto As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen= {CveAlmacenDevolucionProveedor}").ToEntero() + + 'AGREGAMOS PREPOLIZAS TRASPASO DIRECTO: + Dim CvePrePolizaTraspaso As Integer = ObjConta.AddPrePolizas("RecepcionAlmacen/TraspasoAlmacen", 53, 0, 0, 1, Now, ProveedorNombre, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + If CvePrePolizaTraspaso > 0 AndAlso ObjInventario.GetMovimientosDetalle(CveMovimientoSalidaTraspaso, UsuarioActual.CveEmpresa) Then + Dim importe As Decimal = resultado.SUMD("Total").RoundSQL + + If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaTraspaso, True, importe, TxtObservaciones.Text, 68, TxtObservaciones.Text, Fecha, IdCtaContableOrigen, -1, CveMovimientoAlmacen:=CveMovimientoSalidaTraspaso, Contabilizable:=False, ImporteMX:=importe) Then + ErrorMovInv = True + End If + + If Not ErrorMovInv AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePolizaTraspaso, False, importe, TxtObservaciones.Text, 68, TxtObservaciones.Text, Fecha, IdCtaContableDestino, -1, CveMovimientoAlmacen:=CveMovimiento, Contabilizable:=False, ImporteMX:=importe) Then + ErrorMovInv = True + End If + Else + ErrorMovInv = True + End If + + End If + 'AGREGA SALDOS A OC SURTIDAS If Not ErrorMovInv And CveOCSurtir > 0 Then If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then @@ -3013,8 +3252,19 @@ Partial Class Inventarios_RecepcionAlmacen Dim Msg As New StringBuilder Dim link As String = String.Format("{1}", CveMovimiento, InvFolio) - Msg.AppendFormat("Movimiento Registrado: Folio: {0}", link) - Msg.AppendFormat("
    Imprimir Movimiento ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimiento))) + 'SI LO SOLO GENERO EL MOVIMIENTO DE ENTRADA O SALIDA + If CveMovimiento > 0 AndAlso CveMovimientoSalidaTraspaso <= 0 Then + Msg.AppendFormat("Movimiento Registrado: Folio: {0}", link) + Msg.AppendFormat("
    Imprimir Movimiento ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimiento))) + 'SI GENERO UN TRASPASO AL ALMACEN DE DEVOLUCION + ElseIf CveMovimiento > 0 AndAlso CveMovimientoSalidaTraspaso > 0 Then + Msg.AppendFormat("Movimiento de Salida: Folio: {0}", String.Format("{1}", CveMovimientoSalidaTraspaso, FolioSalidaTraspaso)) + Msg.AppendFormat("
    Imprimir Movimiento ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoSalidaTraspaso))) + + Msg.AppendFormat("
    Movimiento de Entrada: Folio: {0}", link) + Msg.AppendFormat("
    Imprimir Movimiento ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimiento))) + End If + 'If CveMovtoSalidaDirecta > 0 Then ' Msg.AppendFormat("

    Movimientos de control:
    ") @@ -3047,7 +3297,6 @@ Partial Class Inventarios_RecepcionAlmacen link = String.Format("{1}", CveMovimientoVirtual, FolioVirtual) Msg.AppendFormat("
    Movimiento de Entrada al Almacen Virtual: Folio: {0}", link) Msg.AppendFormat("
    Imprimir Movimiento ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoVirtual))) - End If 'CONTABILIDAD From ee8dc02da948338a064b11afc4a892926115d10d Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Mon, 14 Sep 2020 19:04:45 -0700 Subject: [PATCH 7/8] Correcciones de portal del cliente --- GPS/Shipments.aspx | 2 +- PortalCliente/PortalCliente.aspx.vb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/GPS/Shipments.aspx b/GPS/Shipments.aspx index 4dd237032..a7276eda6 100644 --- a/GPS/Shipments.aspx +++ b/GPS/Shipments.aspx @@ -731,6 +731,6 @@ } - + diff --git a/PortalCliente/PortalCliente.aspx.vb b/PortalCliente/PortalCliente.aspx.vb index 4a162581a..c45f2926f 100644 --- a/PortalCliente/PortalCliente.aspx.vb +++ b/PortalCliente/PortalCliente.aspx.vb @@ -701,7 +701,7 @@ Partial Class Ventas_PortalCliente End If If EstatusPagoProsepago = 0 Then - Alert("Ocurrió un error al procesar el pago, no se a realizadó ningun cargo. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia) + Alert("La transacción no se pudo realizar, no se aplicó ningun cargo. Por favor verifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia) Exit Sub End If @@ -1131,7 +1131,7 @@ Partial Class Ventas_PortalCliente If Not TieneError Then ObjConta.Commit() - Alert($"Se realizó el pago exitoso de las siguientes facturas:

    {MensajeAlert.ToString}", TipoMensaje.MsgInformacion) + Alert($"La transacción se realizó correctamente y el pago se aplicó en las siguientes facturas:

    {MensajeAlert.ToString}", TipoMensaje.MsgInformacion) Else ObjConta.RollBack() Alert(MensajeError.ToString, TipoMensaje.MsgError) From 1c5227adb97c3b017514e9917cdf445741140b2a Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Mon, 14 Sep 2020 19:05:05 -0700 Subject: [PATCH 8/8] Cambios en nivel de confianza --- OC/OC.aspx.vb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb index 7b394c0fd..29e39b48d 100644 --- a/OC/OC.aspx.vb +++ b/OC/OC.aspx.vb @@ -5345,11 +5345,11 @@ Partial Class OC If CveConfianzaProveedor <= 0 Then CveConfianzaProveedor = 2 End If - - ChkCotizacion.Checked = CveConfianzaProveedor > 0 - ChkCotizacion.Enabled = CveConfianzaProveedor <= 0 End If + ChkCotizacion.Checked = CveConfianzaProveedor > 0 + ChkCotizacion.Enabled = CveConfianzaProveedor <= 0 + End If End If