From 86cc50a54dc51deb09ed2b3bd7b2f0b14d193aeb Mon Sep 17 00:00:00 2001 From: Antonio Gonzalez Date: Tue, 28 Apr 2020 17:39:30 -0700 Subject: [PATCH] Cambio de moneda en la orden de compra --- OC/OC.aspx | 40 +++++++++++++++++++++++++++++++-- OC/OC.aspx.vb | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 100 insertions(+), 2 deletions(-) diff --git a/OC/OC.aspx b/OC/OC.aspx index 50959795d..253614009 100644 --- a/OC/OC.aspx +++ b/OC/OC.aspx @@ -1,6 +1,5 @@ <%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="OC.aspx.vb" EnableEventValidation="false" Inherits="OC" %> - @@ -42,7 +41,9 @@
  • Verificar Existencias
  • - +
  • + Cambiar Moneda +
  • @@ -2599,6 +2600,41 @@ +
    diff --git a/OC/OC.aspx.vb b/OC/OC.aspx.vb index 807c00757..3eb4d98e3 100644 --- a/OC/OC.aspx.vb +++ b/OC/OC.aspx.vb @@ -6760,6 +6760,10 @@ Partial Class OC GVInv.DataSource = ObjInventarios.DtResultados If ObjInventarios.DtResultados.Rows.Count > 0 Then DdlMoneda.Enabled = False + Dim TipoEstatusTerminado As String = GlobalDTOCEstatus(UsuarioActual.CveEmpresa).FiltroPrimeroValor("TipoTermino", String.Format("CveEstatus = {0}", CboE.SelectedValue)) + If TipoEstatusTerminado = "1" Then + LnkCambiarMoneda.Visible = True + End If End If End If GVInv.DataBind() @@ -6767,6 +6771,7 @@ Partial Class OC ObjInventarios.Dispose() UpAlmacen.Update() + UpAcciones.Update() End If End Sub @@ -7664,4 +7669,61 @@ Partial Class OC Protected Sub DdlMoneda_Change() Handles DdlMoneda.SelectedIndexChanged MonedaTexto = DdlMoneda.SelectedItem.Text End Sub + + Protected Sub LnkCambiarMoneda_Click(sender As Object, e As EventArgs) Handles LnkCambiarMoneda.Click + If DdlMoneda.SelectedValue = 1 Then + DivTCRow.Visible = True + UpdatePanel3.Update() + End If + RegistraScript("$('#DivCambiarMoneda').modal();") + End Sub + + Protected Sub BtnCambiarMoneda_Click() Handles BtnCambiarMoneda.Click + Dim ObjInv As New ClsInventarios + Dim Err As Boolean = False + If ObjInv.GetMovimientos(CveMovimientoAlmacenVenta, -1, -1, UsuarioActual.CveEmpresa) Then + Dim TipoMoneda As String = ObjInv.DtResultados.FiltroPrimeroValor("CveMoneda") + Dim ObjConta As New ClsContabilidad + If TipoMoneda = "2" Then + Dim CvePrePoliza As Integer = ObjConta.AddPrePolizas("OC/OC-(OCAlmacen)", 74, 0.0D, 0.0D, 1, Now, DdlProveedores.SelectedText, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + If CvePrePoliza > 0 Then + Dim PrimerImporte As Integer = (0 - LblSubTotal.Text.ToDecimal) + Dim SegundoImporte As Integer = (0 - LblSubTotal.Text.ToDecimal) + If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, PrimerImporte, lblFolio.Text, 228, lblFolio.Text, Now, -1, -1, CveProveedor:=DdlProveedores.SelectedText, CveMovimientoAlmacen:=CveMovimientoAlmacenVenta, CveOC:=CveOrdenCompra) Then + If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, SegundoImporte, lblFolio.Text, 229, lblFolio.Text, Now, -1, -1, CveProveedor:=DdlProveedores.SelectedText, CveMovimientoAlmacen:=CveMovimientoAlmacenVenta, CveOC:=CveOrdenCompra) Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, PrimerImporte + SegundoImporte, lblFolio.Text, 176, lblFolio.Text, Now, -1, -1, CveProveedor:=DdlProveedores.SelectedText, CveMovimientoAlmacen:=CveMovimientoAlmacenVenta, CveOC:=CveOrdenCompra) Then + Err = True + End If + Else + Err = True + End If + Else + Err = True + End If + End If + ElseIf TipoMoneda = "1" Then + Dim CvePrePoliza As Integer = ObjConta.AddPrePolizas("OC/OC-(OCAlmacen)", 74, 0.0D, 0.0D, 1, Now, DdlProveedores.SelectedText, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) + If CvePrePoliza > 0 Then + Dim PrimerImporte As Decimal = Decimal.Round(((LblSubTotal.Text.ToDecimal) / TxtTCCambioMoneda.Text.ToDecimal), 2, MidpointRounding.AwayFromZero) + Dim SegundoImporte As Decimal = LblSubTotal.Text.ToDecimal + If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, PrimerImporte, lblFolio.Text, 228, lblFolio.Text, Now, -1, -1, CveProveedor:=DdlProveedores.SelectedText, CveMovimientoAlmacen:=CveMovimientoAlmacenVenta, CveOC:=CveOrdenCompra) Then + If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, SegundoImporte, lblFolio.Text, 229, lblFolio.Text, Now, -1, -1, CveProveedor:=DdlProveedores.SelectedText, CveMovimientoAlmacen:=CveMovimientoAlmacenVenta, CveOC:=CveOrdenCompra) Then + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, (0 - (PrimerImporte + SegundoImporte)), lblFolio.Text, 176, lblFolio.Text, Now, -1, -1, CveProveedor:=DdlProveedores.SelectedText, CveMovimientoAlmacen:=CveMovimientoAlmacenVenta, CveOC:=CveOrdenCompra) Then + Err = True + End If + Else + Err = True + End If + Else + Err = True + End If + End If + End If + ObjConta.Dispose() + End If + ObjInv.Dispose() + If Err Then + Alert("Sucedió un error con el cambio en la moneda", TipoMensaje.MsgError) + End If + End Sub End Class