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