diff --git a/App_Code/ClsBancos.vb b/App_Code/ClsBancos.vb
index 1ed92ca05..04527b54e 100644
--- a/App_Code/ClsBancos.vb
+++ b/App_Code/ClsBancos.vb
@@ -3129,11 +3129,11 @@ Public Class ClsBancos
SqlAdapter.Fill(Data)
Retorno = True
- Catch Ex1 As SqlException
- If Ex1.Message.Contains("Número: 2627;") Or Ex1.Message.Contains("Número: 2601;") Then
- Alert("Ya existe un registro con el mismo Folio", TipoMensaje.MsgAdvertencia)
- Else
- Me.OnError("Ocurrió un error al guardar los cambios", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ Catch Ex1 As SqlException
+ If Ex1.Message.Contains("Número: 2627;") Or Ex1.Message.Contains("Número: 2601;") Then
+ Alert("Ya existe un registro con el mismo Folio", TipoMensaje.MsgAdvertencia)
+ Else
+ Me.OnError("Ocurrió un error al guardar los cambios", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End If
Catch ex As Exception
OnError("Ocurrió un error al actualizar El movimiento Bancario", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
@@ -4760,4 +4760,25 @@ Public Class ClsBancos
#End Region
+#Region "reportes"
+ Public Function GetPagosNoBancarios(CveEmpresa As Integer, Optional CveCliente As Integer = -1, Optional CveProveedor As Integer = -1, Optional CvePersonal As Integer = -1) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_Banc_PagosNoBancarios")
+
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveCliente", SqlDbType.Int).Value = CveCliente
+ .Add("@CveProveedor", SqlDbType.Int).Value = CveProveedor
+ .Add("@CvePersonal", SqlDbType.Int).Value = CvePersonal
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ End With
+
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al obtener los pagos no bancarios.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
+ End Try
+ Return Retorno
+ End Function
+#End Region
End Class
diff --git a/App_Code/ClsInventarios.vb b/App_Code/ClsInventarios.vb
index da45dd81c..95962b005 100644
--- a/App_Code/ClsInventarios.vb
+++ b/App_Code/ClsInventarios.vb
@@ -1863,6 +1863,7 @@ Public Class ClsInventarios
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@CveAlmacen", SqlDbType.Int).Value = CveAlmacen
.Add("@CveTipoAlmacen", SqlDbType.Int).Value = CveTipoAlmacen
+ .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
.Add("@FechaMovto", SqlDbType.DateTime).Value = DateTime.ParseExact(FechaMovto, "yyyy/MM/dd HH:mm", Nothing)
.Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor
.Add("@CveCliente", SqlDbType.Int).Value = CveCliente
diff --git a/App_Code/ClsMovimientos.vb b/App_Code/ClsMovimientos.vb
index fac07ad08..845ac3d6b 100644
--- a/App_Code/ClsMovimientos.vb
+++ b/App_Code/ClsMovimientos.vb
@@ -1188,13 +1188,12 @@ Public Class ClsMovimientos
Return Retorno
End Function
- Public Function GetCxPDetalle(FechaI As String, FechaF As String, CveProveedor As Integer, CveProveedorClasificacion As Integer,
- CveProveedorSucursal As Integer, CveUsuario As Integer,
- CveUsuarioResponsable As Integer,
- Anio As Integer, Mes As Integer, AnioMes As String, CveMoneda As Integer, CveSubProyecto As Integer, CveEstatusFactura As Integer,
- Fecha As String, Agrupador As Integer, Opcion As String, CveEmpresa As Integer, CveSucursal As Integer, TipoCambio As Integer, Optional TCEspecifico As Double = -1,
- Optional FechaVI As String = "-1", Optional FechaVF As String = "1", Optional FechaCorte As Date = Nothing,
- Optional CveUsuarioConsulta As Integer = -1, Optional CveTipoProveedor As Integer = -1, Optional Comprobaciones As Integer = -1) As Boolean
+ Public Function GetCxPDetalle(FechaI As String, FechaF As String, CveProveedor As Integer, CveProveedorClasificacion As Integer, CveProveedorSucursal As Integer, CveUsuario As Integer,
+ CveUsuarioResponsable As Integer, Anio As Integer, Mes As Integer, AnioMes As String, CveMoneda As Integer, CveSubProyecto As Integer,
+ CveEstatusFactura As Integer, Fecha As String, Agrupador As Integer, Opcion As String, CveEmpresa As Integer, CveSucursal As Integer,
+ TipoCambio As Integer, Optional TCEspecifico As Double = -1, Optional FechaVI As String = "-1", Optional FechaVF As String = "1",
+ Optional FechaCorte As Date = Nothing, Optional CveUsuarioConsulta As Integer = -1, Optional CveTipoProveedor As Integer = -1,
+ Optional Comprobaciones As Integer = -1, Optional AplicaNC As Integer = -1) As Boolean
Dim Retorno As Boolean = False
If FechaCorte = Nothing Then FechaCorte = Now
@@ -1227,6 +1226,7 @@ Public Class ClsMovimientos
.Add("@CveUsuarioConsulta", SqlDbType.Int).Value = CveUsuarioConsulta
.Add("@CveTipoProveedor", SqlDbType.Int).Value = CveTipoProveedor
.Add("@Comprobaciones", SqlDbType.Int).Value = Comprobaciones
+ .Add("@AplicaNC", SqlDbType.Int).Value = AplicaNC
End With
Try
diff --git a/Bancos/FluctuacionCambiaria.aspx b/Bancos/FluctuacionCambiaria.aspx
index 47d0375be..c74d540a3 100644
--- a/Bancos/FluctuacionCambiaria.aspx
+++ b/Bancos/FluctuacionCambiaria.aspx
@@ -145,9 +145,18 @@
diff --git a/Bancos/FluctuacionCambiaria.aspx.vb b/Bancos/FluctuacionCambiaria.aspx.vb
index 00b3f2881..3a522c442 100644
--- a/Bancos/FluctuacionCambiaria.aspx.vb
+++ b/Bancos/FluctuacionCambiaria.aspx.vb
@@ -19,6 +19,7 @@ Partial Class Bancos_FluctuacionCambiaria
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not Page.IsPostBack Then
+ CargarCentrosDeCosto(Nothing, DdlSubproyecto, Nothing, LblSubProyecto)
CargaUltimaFluctuacion()
End If
End Sub
@@ -218,13 +219,19 @@ Partial Class Bancos_FluctuacionCambiaria
End If
ObjBancos.Dispose()
GvFiliales.DataBind()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "FLUCTUACION COMPRAS"
-
+
Protected Sub BtnGeneraCompras_Click(sender As Object, e As EventArgs)
+
+ If DdlSubproyecto.SelectedValue.ToEntero < 0 Then
+ Alert($"Debe de seleccionar un {LblSubProyecto.Text}", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
Dim Total As Decimal = 0
Dim Conta As New ClsContabilidad
Conta.IniciaTransacSQL()
@@ -245,7 +252,6 @@ Partial Class Bancos_FluctuacionCambiaria
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
-
Total = LblTotal.ToDecimal
If Total > 0 Then
CveConceptoContable = 64
@@ -257,8 +263,11 @@ Partial Class Bancos_FluctuacionCambiaria
CveCuenta = CveCuentaPerdida
idCta = idCtaPerdida
TipoMovto = False
- End If
- If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, "Fluctuación", Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta) Then
+ End If
+
+
+
+ If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, "Fluctuación", Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta, CveSubProyecto:=DdlSubproyecto.SelectedValue.ToEntero) Then
ErrorRegistrar = True
End If
@@ -284,13 +293,20 @@ Partial Class Bancos_FluctuacionCambiaria
Conta.RollBack()
End If
Conta.Dispose()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "FLUCTUACION VENTAS"
-
+
Protected Sub BtnGeneraVentas_Click(sender As Object, e As EventArgs)
+
+ If DdlSubproyecto.SelectedValue.ToEntero < 0 Then
+ Alert($"Debe de seleccionar un {LblSubProyecto.Text}", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
+
Dim Total As Decimal = 0
Dim Conta As New ClsContabilidad
Conta.IniciaTransacSQL()
@@ -323,7 +339,7 @@ Partial Class Bancos_FluctuacionCambiaria
idCta = idCtaPerdida
TipoMovto = False
End If
- If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, "Fluctuación", Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta) Then
+ If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, "Fluctuación", Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta, CveSubProyecto:=DdlSubproyecto.SelectedValue.ToEntero) Then
ErrorRegistrar = True
End If
@@ -354,13 +370,20 @@ Partial Class Bancos_FluctuacionCambiaria
Conta.RollBack()
End If
Conta.Dispose()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "FLUCTUACION BANCOS"
+
+ Protected Sub BtnGeneraBancos_Click(sender As Object, e As EventArgs)
+
+
+ If DdlSubproyecto.SelectedValue.ToEntero < 0 Then
+ Alert($"Debe de seleccionar un {LblSubProyecto.Text}", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
- Protected Sub BtnGeneraBancos_Click(sender As Object, e As EventArgs)
Dim Total As Decimal = 0
Dim Conta As New ClsContabilidad
Conta.IniciaTransacSQL()
@@ -417,7 +440,7 @@ Partial Class Bancos_FluctuacionCambiaria
Exit For
End If
- If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, "Fluctuación", Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta) Then
+ If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, "Fluctuación", Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta, CveSubProyecto:=DdlSubproyecto.SelectedValue.ToEntero) Then
ErrorRegistrar = True
End If
End If
@@ -446,13 +469,20 @@ Partial Class Bancos_FluctuacionCambiaria
ObjContPaq.Dispose()
End If
Conta.Dispose()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "FLUCTUACION DEUDOR"
+
+ Protected Sub BtnGeneraDedudores_Click(sender As Object, e As EventArgs)
+
+
+ If DdlSubproyecto.SelectedValue.ToEntero < 0 Then
+ Alert($"Debe de seleccionar un {LblSubProyecto.Text}", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
- Protected Sub BtnGeneraDedudores_Click(sender As Object, e As EventArgs)
Dim Total As Decimal = 0
Dim Conta As New ClsContabilidad
Dim Banco As New ClsBancos(Conta.IniciaTransacSQL())
@@ -493,7 +523,7 @@ Partial Class Bancos_FluctuacionCambiaria
idCta = idCtaPerdida
TipoMovto = False
End If
- If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, ConceptoFluctuacion, Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta) Then
+ If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, ConceptoFluctuacion, Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta, CveSubProyecto:=DdlSubproyecto.SelectedValue.ToEntero) Then
ErrorRegistrar = True
End If
@@ -519,13 +549,18 @@ Partial Class Bancos_FluctuacionCambiaria
End If
Conta.Dispose()
Banco.Dispose()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "FLUCTUACION FILIALES"
-
- Protected Sub BtnGeneraFiliales_Click(sender As Object, e As EventArgs)
+
+ Protected Sub BtnGeneraFiliales_Click(sender As Object, e As EventArgs)
+
+ If DdlSubproyecto.SelectedValue.ToEntero < 0 Then
+ Alert($"Debe de seleccionar un {LblSubProyecto.Text}", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
Dim Total As Decimal = 0
Dim Conta As New ClsContabilidad
@@ -571,7 +606,7 @@ Partial Class Bancos_FluctuacionCambiaria
idCta = idCtaPerdida
TipoMovto = False
End If
- If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, ConceptoFluctuacion, Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta) Then
+ If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, ConceptoFluctuacion, Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta, CveSubProyecto:=DdlSubproyecto.SelectedValue.ToEntero) Then
ErrorRegistrar = True
End If
@@ -614,13 +649,19 @@ Partial Class Bancos_FluctuacionCambiaria
Conta.Dispose()
Banco.Dispose()
ObjContPaq.Dispose()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "FLUCTUACION ACREEDORES"
-
- Protected Sub BtnGeneraAcreedores_Click(sender As Object, e As EventArgs)
+
+ Protected Sub BtnGeneraAcreedores_Click(sender As Object, e As EventArgs)
+
+
+ If DdlSubproyecto.SelectedValue.ToEntero < 0 Then
+ Alert($"Debe de seleccionar un {LblSubProyecto.Text}", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
Dim Total As Decimal = 0
Dim Conta As New ClsContabilidad
@@ -655,7 +696,7 @@ Partial Class Bancos_FluctuacionCambiaria
idCta = idCtaPerdida
TipoMovto = False
End If
- If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, "Fluctuación", Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta) Then
+ If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(Total), " ", CveConceptoContable, "Fluctuación", Now, idCta, 0, ImporteMX:=Math.Abs(Total), CveCuenta:=CveCuenta, CveSubProyecto:=DdlSubproyecto.SelectedValue.ToEntero) Then
ErrorRegistrar = True
End If
@@ -680,162 +721,162 @@ Partial Class Bancos_FluctuacionCambiaria
Conta.RollBack()
End If
Conta.Dispose()
- End Sub
-
+ End Sub
+
#End Region
-
+
#Region "FLUCTUACION GENERAL"
-
- ' Protected Sub BtnGenerar_Click(sender As Object, e As EventArgs)
- ' Dim AcumuladoGananciaCompras = 0.0, AcumuladoPerdidaCompras = 0.0, AcumuladoGananciaBancos = 0.0, AcumuladoPerdidaBancos = 0.0
- ' Dim IDPoliza = -1
-
- ' 'Valida datos de Compras
- ' For Each gvr As GridViewRow In GvCompras.Rows
- ' If gvr.DataKey("SinTipoCambio").ToString.ToEntero > 0 AndAlso Not gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
- ' Alert("No se puede Generar la Fluctuación ya que faltan datos en Compras")
- ' 'Exit Sub
- ' Else
- ' If gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
- ' If gvr.DataKey("Fluctuacion").ToString.ToDouble > 0 Then
- ' AcumuladoGananciaCompras += gvr.DataKey("Fluctuacion").ToString.ToDouble
- ' Else
- ' AcumuladoPerdidaCompras += gvr.DataKey("Fluctuacion").ToString.ToDouble * -1
- ' End If
- ' End If
-
- ' End If
- ' Next
-
- ' 'Valida datos de Bancos
- ' For Each gvr As GridViewRow In GvCuentas.Rows
- ' If Not gvr.DataKey("TipoCambio").ToString.ToEntero > 0 AndAlso Not gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
- ' Alert("No se puede Generar la Fluctuación ya que faltan datos en Cuentas Bancarias")
- ' 'Exit Sub
- ' Else
- ' If gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
- ' If gvr.DataKey("Fluctuacion").ToString.ToDouble > 0 Then
- ' AcumuladoGananciaBancos += gvr.DataKey("Fluctuacion").ToString.ToDouble
- ' Else
- ' AcumuladoPerdidaBancos += gvr.DataKey("Fluctuacion").ToString.ToDouble * -1
- ' End If
- ' End If
-
- ' End If
- ' Next
-
- ' Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa)
- ' ObjConta.IniciaTransacSQL()
- ' Dim ObjBancos As New ClsBancos
- ' ObjBancos.IniciaTransacSQL()
- ' Dim ErrorGenerar = False
- ' Dim Fecha As Date = TxtFecha.Text.ToDate
-
- ' IDPoliza = ObjConta.AddPoliza(3, "Fluctuación Cambiaria", (AcumuladoGananciaCompras + AcumuladoPerdidaCompras) * 2, (AcumuladoGananciaCompras + AcumuladoPerdidaCompras) * 2, UsuarioActual.CveUsuario, Fecha)
-
- ' If IDPoliza > 0 Then
-
- ' 'COMIENZA: AGREGA CUENTAS BANCARIAS
- ' If AcumuladoGananciaBancos > 0 Or AcumuladoPerdidaBancos > 0 Then
- ' 'Agrega movimientos
- ' Dim Fluc As Double
- ' For Each gvr As GridViewRow In GvCuentas.Rows
- ' Fluc = gvr.DataKey("Fluctuacion").ToString.ToDouble
- ' If Math.Abs(Fluc) > 0 AndAlso gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
- ' If Not ObjConta.AddMovimiento(IDPoliza, gvr.DataKey("IdCtaAfectable").ToString.ToEntero, Not Fluc > 0, Math.Abs(Fluc), "", String.Format("{0} Cambiaria de Cuentas Bancarias", If(Fluc > 0, "Ganancia", "Perdida")), 0, Fecha, "") Then
- ' ErrorGenerar = True
- ' Exit For
- ' End If
- ' End If
- ' Next
-
- ' 'Agrega acumulados
- ' If Not ErrorGenerar AndAlso AcumuladoGananciaBancos > 0 Then
- ' If Not ObjConta.AddMovimiento(IDPoliza, 2195, AcumuladoGananciaBancos > 0, AcumuladoGananciaBancos, "", "Acumulado Ganancia Cambiaria de Cuentas Bancarias", 0, Fecha, "") Then
- ' ErrorGenerar = True
- ' End If
- ' End If
- ' If Not ErrorGenerar AndAlso AcumuladoPerdidaBancos > 0 Then
- ' If Not ObjConta.AddMovimiento(IDPoliza, 4695, AcumuladoPerdidaBancos > 0, AcumuladoPerdidaBancos, "", "Acumulado Pérdida Cambiaria de Cuentas Bancarias", 0, Fecha, "") Then
- ' ErrorGenerar = True
- ' End If
- ' End If
- ' Else
- ' ErrorGenerar = True
- ' End If
- ' 'TERMINA: AGREGA CUENTAS BANCARIAS
-
-
- ' 'COMIENZA: AGREGA COMPRAS
- ' If AcumuladoGananciaCompras > 0 Or AcumuladoPerdidaCompras > 0 Then
- ' 'Agrega movimientos
- ' Dim Fluc As Double
- ' For Each gvr As GridViewRow In GvCompras.Rows
- ' Fluc = gvr.DataKey("Fluctuacion").ToString.ToDouble
- ' If Math.Abs(Fluc) > 0 AndAlso gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
- ' If Not ObjConta.AddMovimiento(IDPoliza, gvr.DataKey("IdCtaAfectable").ToString.ToEntero, Not Fluc > 0, Math.Abs(Fluc), "", String.Format("{0} Cambiaria de Compras", If(Fluc > 0, "Ganancia", "Pérdida")), 0, Fecha, "") Then
- ' ErrorGenerar = True
- ' Exit For
- ' End If
- ' End If
- ' Next
-
- ' 'Agrega acumulados
- ' If Not ErrorGenerar AndAlso AcumuladoGananciaCompras > 0 Then
- ' If Not ObjConta.AddMovimiento(IDPoliza, UsuarioActual.Empresa.IdCuentaGananciaCambiaria, Not AcumuladoGananciaCompras > 0, AcumuladoGananciaCompras, "", "Acumulado Ganancia Cambiaria de Compras", 0, Fecha, "") Then
- ' ErrorGenerar = True
- ' End If
- ' End If
- ' If Not ErrorGenerar AndAlso AcumuladoPerdidaCompras > 0 Then
- ' If Not ObjConta.AddMovimiento(IDPoliza, UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, Not AcumuladoPerdidaCompras > 0, AcumuladoPerdidaCompras, "", "Acumulado Pérdida Cambiaria de Compras", 0, Fecha, "") Then
- ' ErrorGenerar = True
- ' End If
- ' End If
- ' Else
- ' ErrorGenerar = True
- ' End If
- ' 'TERMINA: AGREGA COMPRAS
-
-
- ' Else
- ' ErrorGenerar = True
- ' End If
-
-
- ' 'Agrega en Bitacoras
- ' If Not ErrorGenerar Then
- ' If ObjBancos.AddFluctuacionesBitacora(IDPoliza, Fecha, 1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
- ' If Not ObjBancos.AddFluctuacionesBitacora(IDPoliza, Fecha, 2, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
- ' ErrorGenerar = True
- ' End If
- ' Else
- ' ErrorGenerar = True
- ' End If
- ' End If
-
-
- ' If Not ErrorGenerar Then
-
- ' ObjConta.AjustaPoliza(IDPoliza)
-
- ' ObjConta.Commit()
- ' ObjBancos.Commit()
- ' Alert(String.Format("Fluctuación realizada con exito.
Ver Póliza", IDPoliza))
- ' Else
- ' ObjConta.RollBack()
- ' ObjBancos.RollBack()
- ' Alert("Ocurrio un error al generar la poliza", TipoMensaje.MsgAdvertencia)
- ' End If
-
- ' ObjConta.Dispose()
- ' ObjBancos.Dispose()
- ' End Sub
-
-
+
+ ' Protected Sub BtnGenerar_Click(sender As Object, e As EventArgs)
+ ' Dim AcumuladoGananciaCompras = 0.0, AcumuladoPerdidaCompras = 0.0, AcumuladoGananciaBancos = 0.0, AcumuladoPerdidaBancos = 0.0
+ ' Dim IDPoliza = -1
+
+ ' 'Valida datos de Compras
+ ' For Each gvr As GridViewRow In GvCompras.Rows
+ ' If gvr.DataKey("SinTipoCambio").ToString.ToEntero > 0 AndAlso Not gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
+ ' Alert("No se puede Generar la Fluctuación ya que faltan datos en Compras")
+ ' 'Exit Sub
+ ' Else
+ ' If gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
+ ' If gvr.DataKey("Fluctuacion").ToString.ToDouble > 0 Then
+ ' AcumuladoGananciaCompras += gvr.DataKey("Fluctuacion").ToString.ToDouble
+ ' Else
+ ' AcumuladoPerdidaCompras += gvr.DataKey("Fluctuacion").ToString.ToDouble * -1
+ ' End If
+ ' End If
+
+ ' End If
+ ' Next
+
+ ' 'Valida datos de Bancos
+ ' For Each gvr As GridViewRow In GvCuentas.Rows
+ ' If Not gvr.DataKey("TipoCambio").ToString.ToEntero > 0 AndAlso Not gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
+ ' Alert("No se puede Generar la Fluctuación ya que faltan datos en Cuentas Bancarias")
+ ' 'Exit Sub
+ ' Else
+ ' If gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
+ ' If gvr.DataKey("Fluctuacion").ToString.ToDouble > 0 Then
+ ' AcumuladoGananciaBancos += gvr.DataKey("Fluctuacion").ToString.ToDouble
+ ' Else
+ ' AcumuladoPerdidaBancos += gvr.DataKey("Fluctuacion").ToString.ToDouble * -1
+ ' End If
+ ' End If
+
+ ' End If
+ ' Next
+
+ ' Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa)
+ ' ObjConta.IniciaTransacSQL()
+ ' Dim ObjBancos As New ClsBancos
+ ' ObjBancos.IniciaTransacSQL()
+ ' Dim ErrorGenerar = False
+ ' Dim Fecha As Date = TxtFecha.Text.ToDate
+
+ ' IDPoliza = ObjConta.AddPoliza(3, "Fluctuación Cambiaria", (AcumuladoGananciaCompras + AcumuladoPerdidaCompras) * 2, (AcumuladoGananciaCompras + AcumuladoPerdidaCompras) * 2, UsuarioActual.CveUsuario, Fecha)
+
+ ' If IDPoliza > 0 Then
+
+ ' 'COMIENZA: AGREGA CUENTAS BANCARIAS
+ ' If AcumuladoGananciaBancos > 0 Or AcumuladoPerdidaBancos > 0 Then
+ ' 'Agrega movimientos
+ ' Dim Fluc As Double
+ ' For Each gvr As GridViewRow In GvCuentas.Rows
+ ' Fluc = gvr.DataKey("Fluctuacion").ToString.ToDouble
+ ' If Math.Abs(Fluc) > 0 AndAlso gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
+ ' If Not ObjConta.AddMovimiento(IDPoliza, gvr.DataKey("IdCtaAfectable").ToString.ToEntero, Not Fluc > 0, Math.Abs(Fluc), "", String.Format("{0} Cambiaria de Cuentas Bancarias", If(Fluc > 0, "Ganancia", "Perdida")), 0, Fecha, "") Then
+ ' ErrorGenerar = True
+ ' Exit For
+ ' End If
+ ' End If
+ ' Next
+
+ ' 'Agrega acumulados
+ ' If Not ErrorGenerar AndAlso AcumuladoGananciaBancos > 0 Then
+ ' If Not ObjConta.AddMovimiento(IDPoliza, 2195, AcumuladoGananciaBancos > 0, AcumuladoGananciaBancos, "", "Acumulado Ganancia Cambiaria de Cuentas Bancarias", 0, Fecha, "") Then
+ ' ErrorGenerar = True
+ ' End If
+ ' End If
+ ' If Not ErrorGenerar AndAlso AcumuladoPerdidaBancos > 0 Then
+ ' If Not ObjConta.AddMovimiento(IDPoliza, 4695, AcumuladoPerdidaBancos > 0, AcumuladoPerdidaBancos, "", "Acumulado Pérdida Cambiaria de Cuentas Bancarias", 0, Fecha, "") Then
+ ' ErrorGenerar = True
+ ' End If
+ ' End If
+ ' Else
+ ' ErrorGenerar = True
+ ' End If
+ ' 'TERMINA: AGREGA CUENTAS BANCARIAS
+
+
+ ' 'COMIENZA: AGREGA COMPRAS
+ ' If AcumuladoGananciaCompras > 0 Or AcumuladoPerdidaCompras > 0 Then
+ ' 'Agrega movimientos
+ ' Dim Fluc As Double
+ ' For Each gvr As GridViewRow In GvCompras.Rows
+ ' Fluc = gvr.DataKey("Fluctuacion").ToString.ToDouble
+ ' If Math.Abs(Fluc) > 0 AndAlso gvr.DataKey("IdCtaAfectable").ToString.ToEntero > 0 Then
+ ' If Not ObjConta.AddMovimiento(IDPoliza, gvr.DataKey("IdCtaAfectable").ToString.ToEntero, Not Fluc > 0, Math.Abs(Fluc), "", String.Format("{0} Cambiaria de Compras", If(Fluc > 0, "Ganancia", "Pérdida")), 0, Fecha, "") Then
+ ' ErrorGenerar = True
+ ' Exit For
+ ' End If
+ ' End If
+ ' Next
+
+ ' 'Agrega acumulados
+ ' If Not ErrorGenerar AndAlso AcumuladoGananciaCompras > 0 Then
+ ' If Not ObjConta.AddMovimiento(IDPoliza, UsuarioActual.Empresa.IdCuentaGananciaCambiaria, Not AcumuladoGananciaCompras > 0, AcumuladoGananciaCompras, "", "Acumulado Ganancia Cambiaria de Compras", 0, Fecha, "") Then
+ ' ErrorGenerar = True
+ ' End If
+ ' End If
+ ' If Not ErrorGenerar AndAlso AcumuladoPerdidaCompras > 0 Then
+ ' If Not ObjConta.AddMovimiento(IDPoliza, UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, Not AcumuladoPerdidaCompras > 0, AcumuladoPerdidaCompras, "", "Acumulado Pérdida Cambiaria de Compras", 0, Fecha, "") Then
+ ' ErrorGenerar = True
+ ' End If
+ ' End If
+ ' Else
+ ' ErrorGenerar = True
+ ' End If
+ ' 'TERMINA: AGREGA COMPRAS
+
+
+ ' Else
+ ' ErrorGenerar = True
+ ' End If
+
+
+ ' 'Agrega en Bitacoras
+ ' If Not ErrorGenerar Then
+ ' If ObjBancos.AddFluctuacionesBitacora(IDPoliza, Fecha, 1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
+ ' If Not ObjBancos.AddFluctuacionesBitacora(IDPoliza, Fecha, 2, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
+ ' ErrorGenerar = True
+ ' End If
+ ' Else
+ ' ErrorGenerar = True
+ ' End If
+ ' End If
+
+
+ ' If Not ErrorGenerar Then
+
+ ' ObjConta.AjustaPoliza(IDPoliza)
+
+ ' ObjConta.Commit()
+ ' ObjBancos.Commit()
+ ' Alert(String.Format("Fluctuación realizada con exito.
Ver Póliza", IDPoliza))
+ ' Else
+ ' ObjConta.RollBack()
+ ' ObjBancos.RollBack()
+ ' Alert("Ocurrio un error al generar la poliza", TipoMensaje.MsgAdvertencia)
+ ' End If
+
+ ' ObjConta.Dispose()
+ ' ObjBancos.Dispose()
+ ' End Sub
+
+
#End Region
-
+
#Region "GRIDVIEWS"
-
+
Protected Sub GvCompras_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvCompras.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
'TipoCambio = e.Row.DBCampo("TipoCambio").ToString.ToDouble
diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb
index 83ede0055..6f116c7a2 100644
--- a/Bancos/IE.aspx.vb
+++ b/Bancos/IE.aspx.vb
@@ -2696,6 +2696,8 @@ Partial Class Bancos_IE
MsgError = "No se pudo insertar la póliza de saldo inicial."
End If
End If
+ Dim UsaComplementariaBancos As Boolean = False
+ If UsuarioActual.CveEmpresa = 119 Then UsaComplementariaBancos = True
If MsgError = "" Then
@@ -2887,14 +2889,18 @@ Partial Class Bancos_IE
importeMovimiento = TxtImporte.Text.ToDecimal
importeMX = importeMovimiento
- If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
+ If tCveMoneda > 1 AndAlso UsaComplementariaBancos Then
'Agregamos complementaria
Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 204, Concepto, FechaMovimiento, IDCtaContableComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+ Else
+ If tCveMoneda > 1 Then
+ Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
+ importeMX = (importeMovimiento * TC).RoundSQL
End If
-
End If
End Select
diff --git a/Bancos/PopIECompras.aspx.vb b/Bancos/PopIECompras.aspx.vb
index a2dc11030..11f73ffd5 100644
--- a/Bancos/PopIECompras.aspx.vb
+++ b/Bancos/PopIECompras.aspx.vb
@@ -451,6 +451,23 @@ Partial Class Bancos_PopIECompras
End Set
End Property
+ Private Property CveSubProyecto As Integer
+ Get
+
+ If ViewState("CveSubProyecto") Is Nothing Then
+ Return -1
+ Else
+ Return ViewState("CveSubProyecto").ToString.ToEntero
+ End If
+
+ End Get
+ Set(value As Integer)
+ ViewState("CveSubProyecto") = value
+ End Set
+ End Property
+
+
+
#End Region
@@ -668,6 +685,8 @@ Partial Class Bancos_PopIECompras
TipoCambioOriginal = dr("TipoCambio").ToString.ToDecimal
NombreProveedor = GlobalDTCompProveedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("RazonSocial", String.Format("CveProveedor = {0}", CveProveedor))
+ CveSubProyecto = dr("CveSubProyecto").ToString.ToEntero
+
LtlTitulo.Text = "Cuentas por Pagar"
LtlTipo2.Text = "Folio de la Compra"
LtlTipo3.Text = "Fecha de la Compra"
@@ -1473,8 +1492,9 @@ Partial Class Bancos_PopIECompras
Dim CveTipoPoliza As Integer = ObjMov.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, "-1", UsuarioActual.CveEmpresa)
If RBLContado.SelectedValue = "6" Then CveTipoPoliza = 3
- Dim CvePrePoliza As Integer = ObjMov.AddPrePolizas("Bancos/PopIECompras", CvePlantillaPoliza, ImportePagado, ImportePagado, CveMoneda, Fecha, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=CveTipoPoliza)
-
+ Dim CvePrePoliza As Integer = ObjMov.AddPrePolizas("Bancos/PopIECompras", CvePlantillaPoliza, ImportePagado, ImportePagado, CveMoneda, Fecha, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=CveTipoPoliza)
+
+
If Inserta Then
If CvePrePoliza > 0 Then
'SE AGREGA DETALLE DE UNA COMPRA
@@ -1534,6 +1554,9 @@ Partial Class Bancos_PopIECompras
'inserto las compras que voy a pagar
If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
For Each Row As DataRow In ObjMov.DtResultados.Rows
+
+
+ Dim CveSubProyectoInsertar As Integer = -1
Dim ConceptoContable = Row("CveConcepto").ToString.ToEntero
TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
Dim ImporteMovimiento As Decimal = 0
@@ -2173,187 +2196,187 @@ Partial Class Bancos_PopIECompras
End If
End If
End If
- End If
- 'Case 16 'Ret ISR X Acreditar
- ' If MovimientoPagar.ConceptoRetISR = 1 Then
- ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
- ' ImporteMX = ImporteMovimiento
- ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * tipoCambioCompra
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * tipoCambioCompra
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * tipoCambioCompra
- ' End If
- ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
- ' ImporteMX = Math.Round(ImporteMX, 2)
- ' TimpocambioGeneral = tipoCambioCompra
-
- ' If tipoCambioCompra > 1 Then ConceptoMovimiento += $" TC:{tipoCambioCompra} ${ImporteMovimiento.FormatoNumero(2)}"
-
- ' 'Conta ContPAQ
- ' If IdCtaContRetISR > 0 Then
- ' IdCtaContable = IdCtaContRetISR
- ' ElseIf UsuarioActual.Empresa.Funcionalidad(315).ToEntero > 0 Then
- ' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(315).ToEntero
- ' Else
- ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
- ' If ObjMov.DtResultados.Rows.Count > 0 Then
- ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
- ' End If
- ' End If
- ' End If
-
- ' 'Conta SIG
- ' If CveCuentaRetISR <> 0 Then
- ' CveCuenta = CveCuentaRetISR
- ' Else
- ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
- ' If ObjMov.DtResultados.Rows.Count > 0 Then
- ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacionSIG").ToString.ToEntero
- ' End If
- ' End If
- ' End If
- ' End If
- 'Case 23 'Ret ISR Acreditable
- ' If MovimientoPagar.ConceptoRetISR = 1 Then
- ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
- ' ImporteMX = ImporteMovimiento
- ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * tipoCambioCompra
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
- ' End If
- ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
- ' ImporteMX = Math.Round(ImporteMX, 2)
- ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
-
- ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
-
- ' 'Conta ContPAQ
- ' If IdCtaContRetISRAcreditable > 0 Then
- ' IdCtaContable = IdCtaContRetISRAcreditable
- ' ElseIf UsuarioActual.Empresa.Funcionalidad(316).ToEntero > 0 Then
- ' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(316).ToEntero
- ' Else
- ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
- ' If ObjMov.DtResultados.Rows.Count > 0 Then
- ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
- ' End If
- ' End If
- ' End If
-
- ' 'Conta SIG
- ' If CveCuentaRetISR <> 0 Then
- ' CveCuenta = CveCuentaRetISR
- ' Else
- ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
- ' If ObjMov.DtResultados.Rows.Count > 0 Then
- ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacionSIG").ToString.ToEntero
- ' End If
- ' End If
- ' End If
- ' End If
- 'Case 243 'Ret ISR X Acreditar Terceros y Arrendamiento
- ' If MovimientoPagar.ConceptoRetISR = 2 Then
- ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
- ' ImporteMX = ImporteMovimiento
- ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * tipoCambioCompra
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
- ' End If
- ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
- ' ImporteMX = Math.Round(ImporteMX, 2)
- ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
-
- ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
-
- ' 'Conta ContPAQ
- ' If IdCtaContRetISR > 0 Then
- ' IdCtaContable = IdCtaContRetISR
- ' ElseIf UsuarioActual.Empresa.Funcionalidad(317).ToEntero > 0 Then
- ' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(317).ToEntero
- ' Else
- ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
- ' If ObjMov.DtResultados.Rows.Count > 0 Then
- ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
- ' End If
- ' End If
- ' End If
-
- ' 'Conta SIG
- ' If CveCuentaRetISR <> 0 Then
- ' CveCuenta = CveCuentaRetISR
- ' Else
- ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
- ' If ObjMov.DtResultados.Rows.Count > 0 Then
- ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacionSIG").ToString.ToEntero
- ' End If
- ' End If
- ' End If
- ' End If
- 'Case 244 'Ret ISR Acreditable Terceros y Arrendamiento
- ' If MovimientoPagar.ConceptoRetISR = 2 Then
- ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
- ' ImporteMX = ImporteMovimiento
- ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * tipoCambioCompra
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
- ' End If
- ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
- ' ImporteMX = Math.Round(ImporteMX, 2)
- ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
-
- ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
-
- ' 'Conta ContPAQ
- ' If IdCtaContRetISRAcreditable > 0 Then
- ' IdCtaContable = IdCtaContRetISRAcreditable
- ' ElseIf UsuarioActual.Empresa.Funcionalidad(318).ToEntero > 0 Then
- ' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(318).ToEntero
- ' Else
- ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
- ' If ObjMov.DtResultados.Rows.Count > 0 Then
- ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
- ' End If
- ' End If
- ' End If
-
- ' 'Conta SIG
- ' If CveCuentaRetISR <> 0 Then
- ' CveCuenta = CveCuentaRetISR
- ' Else
- ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
- ' If ObjMov.DtResultados.Rows.Count > 0 Then
- ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacionSIG").ToString.ToEntero
- ' End If
- ' End If
- ' End If
- ' End If
+ End If
+ 'Case 16 'Ret ISR X Acreditar
+ ' If MovimientoPagar.ConceptoRetISR = 1 Then
+ ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
+ ' ImporteMX = ImporteMovimiento
+ ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * tipoCambioCompra
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * tipoCambioCompra
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * tipoCambioCompra
+ ' End If
+ ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
+ ' ImporteMX = Math.Round(ImporteMX, 2)
+ ' TimpocambioGeneral = tipoCambioCompra
+
+ ' If tipoCambioCompra > 1 Then ConceptoMovimiento += $" TC:{tipoCambioCompra} ${ImporteMovimiento.FormatoNumero(2)}"
+
+ ' 'Conta ContPAQ
+ ' If IdCtaContRetISR > 0 Then
+ ' IdCtaContable = IdCtaContRetISR
+ ' ElseIf UsuarioActual.Empresa.Funcionalidad(315).ToEntero > 0 Then
+ ' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(315).ToEntero
+ ' Else
+ ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ ' If ObjMov.DtResultados.Rows.Count > 0 Then
+ ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
+ ' End If
+ ' End If
+ ' End If
+
+ ' 'Conta SIG
+ ' If CveCuentaRetISR <> 0 Then
+ ' CveCuenta = CveCuentaRetISR
+ ' Else
+ ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ ' If ObjMov.DtResultados.Rows.Count > 0 Then
+ ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacionSIG").ToString.ToEntero
+ ' End If
+ ' End If
+ ' End If
+ ' End If
+ 'Case 23 'Ret ISR Acreditable
+ ' If MovimientoPagar.ConceptoRetISR = 1 Then
+ ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
+ ' ImporteMX = ImporteMovimiento
+ ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * tipoCambioCompra
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
+ ' End If
+ ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
+ ' ImporteMX = Math.Round(ImporteMX, 2)
+ ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
+
+ ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
+
+ ' 'Conta ContPAQ
+ ' If IdCtaContRetISRAcreditable > 0 Then
+ ' IdCtaContable = IdCtaContRetISRAcreditable
+ ' ElseIf UsuarioActual.Empresa.Funcionalidad(316).ToEntero > 0 Then
+ ' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(316).ToEntero
+ ' Else
+ ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ ' If ObjMov.DtResultados.Rows.Count > 0 Then
+ ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
+ ' End If
+ ' End If
+ ' End If
+
+ ' 'Conta SIG
+ ' If CveCuentaRetISR <> 0 Then
+ ' CveCuenta = CveCuentaRetISR
+ ' Else
+ ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ ' If ObjMov.DtResultados.Rows.Count > 0 Then
+ ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacionSIG").ToString.ToEntero
+ ' End If
+ ' End If
+ ' End If
+ ' End If
+ 'Case 243 'Ret ISR X Acreditar Terceros y Arrendamiento
+ ' If MovimientoPagar.ConceptoRetISR = 2 Then
+ ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
+ ' ImporteMX = ImporteMovimiento
+ ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * tipoCambioCompra
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
+ ' End If
+ ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
+ ' ImporteMX = Math.Round(ImporteMX, 2)
+ ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
+
+ ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
+
+ ' 'Conta ContPAQ
+ ' If IdCtaContRetISR > 0 Then
+ ' IdCtaContable = IdCtaContRetISR
+ ' ElseIf UsuarioActual.Empresa.Funcionalidad(317).ToEntero > 0 Then
+ ' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(317).ToEntero
+ ' Else
+ ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ ' If ObjMov.DtResultados.Rows.Count > 0 Then
+ ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
+ ' End If
+ ' End If
+ ' End If
+
+ ' 'Conta SIG
+ ' If CveCuentaRetISR <> 0 Then
+ ' CveCuenta = CveCuentaRetISR
+ ' Else
+ ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ ' If ObjMov.DtResultados.Rows.Count > 0 Then
+ ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacionSIG").ToString.ToEntero
+ ' End If
+ ' End If
+ ' End If
+ ' End If
+ 'Case 244 'Ret ISR Acreditable Terceros y Arrendamiento
+ ' If MovimientoPagar.ConceptoRetISR = 2 Then
+ ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
+ ' ImporteMX = ImporteMovimiento
+ ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * tipoCambioCompra
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
+ ' End If
+ ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
+ ' ImporteMX = Math.Round(ImporteMX, 2)
+ ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioCompra, tipoCambioPago)
+
+ ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
+
+ ' 'Conta ContPAQ
+ ' If IdCtaContRetISRAcreditable > 0 Then
+ ' IdCtaContable = IdCtaContRetISRAcreditable
+ ' ElseIf UsuarioActual.Empresa.Funcionalidad(318).ToEntero > 0 Then
+ ' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(318).ToEntero
+ ' Else
+ ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ ' If ObjMov.DtResultados.Rows.Count > 0 Then
+ ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
+ ' End If
+ ' End If
+ ' End If
+
+ ' 'Conta SIG
+ ' If CveCuentaRetISR <> 0 Then
+ ' CveCuenta = CveCuentaRetISR
+ ' Else
+ ' If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
+ ' If ObjMov.DtResultados.Rows.Count > 0 Then
+ ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetISRCirculacionSIG").ToString.ToEntero
+ ' End If
+ ' End If
+ ' End If
+ ' End If
Case 14 'Iva por Acreditar
If UsuarioActual.Empresa.Funcionalidad(521) = "1" Then
'funcionalidad que toma el 100% del pago para acreditamiento de iva
@@ -2577,84 +2600,84 @@ Partial Class Bancos_PopIECompras
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, If(ConceptoContable = 30, TxtFolio.Text.Trim, TxtObservaciones.Text), 280, ConceptoMovimiento, Fecha, IdCtaContableNoIVA, -1, CveIE, -1, CveCompra, -1, CveProveedor:=CveProveedor2, ImporteMX:=ImporteMXNoDeducible, CveCuenta:=CveCuenta, TipoCambio:=TimpocambioGeneral, CvePersonal:=CvePersonal, PorcentajeImpuesto:=PorcentajeImpuesto) Then
MsgError = "No se pudo insertar la póliza"
End If
- End If
-
- 'Case 280 'Iva Acreditable No Deducible
- ' If UsuarioActual.Empresa.Funcionalidad(521) = "1" Then
- ' 'funcionalidad que toma el 100% del pago para acreditamiento de iva
- ' Dim TotalImporte As Decimal
-
- ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
- ' TotalImporte = ImportePagado.ToString.ToDecimal
- ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
- ' TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal / tipoCambioPago, 2)
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
- ' TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal * tipoCambioPago, 2)
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
- ' TotalImporte = ImportePagado.ToString.ToDecimal
- ' End If
-
- ' If TotalImporte = CompraSaldo Then
- ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = MovimientoPagar.IVANoDeducible
- ' ImporteMX = ImporteMovimiento
- ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible)
- ' ImporteMX = ImporteMovimiento * tipoCambioCompra
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
- ' End If
- ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
- ' ImporteMX = Math.Round(ImporteMX, 2)
- ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
-
- ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
- ' Else
- ' ImporteMovimiento = 0
- ' ImporteMX = 0
- ' End If
- ' Else
- ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = MovimientoPagar.IVANoDeducible * PorcentajePago
- ' ImporteMX = ImporteMovimiento
- ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
- ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * tipoCambioCompra
- ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
- ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible * PorcentajePago)
- ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
- ' End If
- ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
- ' ImporteMX = Math.Round(ImporteMX, 2)
- ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
-
- ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
- ' End If
-
- ' PorcentajeImpuesto = MovimientoPagar.PorcentajeIVA
- ' Dim IdCtaIVAXAcreditar As Integer = 0
- ' Dim IdCtaIVAAcreditable As Integer = 0
-
- ' If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
- ' IdCtaIVAXAcreditar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
- ' IdCtaIVAAcreditable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
- ' End If
-
- ' IdCtaContable = If(IdCtaIVAAcreditable > 0, IdCtaIVAAcreditable, 0)
-
- ' If ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) And Not IdCtaContable > 0 Then
- ' If ObjMov.DtResultados.Rows.Count > 0 Then
- ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaIVAAcreditable").ToString.ToEntero
- ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaIVAAcreditableSIG").ToString.ToEntero
- ' End If
- ' End If
+ End If
+
+ 'Case 280 'Iva Acreditable No Deducible
+ ' If UsuarioActual.Empresa.Funcionalidad(521) = "1" Then
+ ' 'funcionalidad que toma el 100% del pago para acreditamiento de iva
+ ' Dim TotalImporte As Decimal
+
+ ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
+ ' TotalImporte = ImportePagado.ToString.ToDecimal
+ ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
+ ' TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal / tipoCambioPago, 2)
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
+ ' TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal * tipoCambioPago, 2)
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
+ ' TotalImporte = ImportePagado.ToString.ToDecimal
+ ' End If
+
+ ' If TotalImporte = CompraSaldo Then
+ ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = MovimientoPagar.IVANoDeducible
+ ' ImporteMX = ImporteMovimiento
+ ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible)
+ ' ImporteMX = ImporteMovimiento * tipoCambioCompra
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
+ ' End If
+ ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
+ ' ImporteMX = Math.Round(ImporteMX, 2)
+ ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
+
+ ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
+ ' Else
+ ' ImporteMovimiento = 0
+ ' ImporteMX = 0
+ ' End If
+ ' Else
+ ' If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = MovimientoPagar.IVANoDeducible * PorcentajePago
+ ' ImporteMX = ImporteMovimiento
+ ' ElseIf CveMoneda = 1 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 1 Then
+ ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * tipoCambioCompra
+ ' ElseIf CveMoneda = 2 AndAlso CveMonedaCompra = 2 Then
+ ' ImporteMovimiento = (MovimientoPagar.IVANoDeducible * PorcentajePago)
+ ' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
+ ' End If
+ ' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
+ ' ImporteMX = Math.Round(ImporteMX, 2)
+ ' TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioCompra)
+
+ ' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
+ ' End If
+
+ ' PorcentajeImpuesto = MovimientoPagar.PorcentajeIVA
+ ' Dim IdCtaIVAXAcreditar As Integer = 0
+ ' Dim IdCtaIVAAcreditable As Integer = 0
+
+ ' If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
+ ' IdCtaIVAXAcreditar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
+ ' IdCtaIVAAcreditable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
+ ' End If
+
+ ' IdCtaContable = If(IdCtaIVAAcreditable > 0, IdCtaIVAAcreditable, 0)
+
+ ' If ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) And Not IdCtaContable > 0 Then
+ ' If ObjMov.DtResultados.Rows.Count > 0 Then
+ ' IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaIVAAcreditable").ToString.ToEntero
+ ' CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaIVAAcreditableSIG").ToString.ToEntero
+ ' End If
+ ' End If
Case 25 'IEPS por Acreditar
If CveMoneda = 1 AndAlso CveMonedaCompra = 1 Then
ImporteMovimiento = MovimientoPagar.IEPS * PorcentajePago
@@ -2703,7 +2726,15 @@ Partial Class Bancos_PopIECompras
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditableSIG").ToString.ToEntero
End If
End If
- Case 64 'Ganancia
+ Case 64 'Ganancia
+
+ CveSubProyectoInsertar = CveSubProyecto
+
+ If CveSubProyectoInsertar <= 0 Then
+ MsgError = "No se pudo obtener el sub proyecto o centro de costo"
+ End If
+
+
If CveMoneda <> 1 OrElse CveMonedaCompra <> 1 Then
IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
CveCuenta = UsuarioActual.Empresa.CveCuentaGananciaCambiaria
@@ -2723,6 +2754,13 @@ Partial Class Bancos_PopIECompras
ImporteMovimiento = 0
End If
Case 65 'Perdida
+
+ CveSubProyectoInsertar = CveSubProyecto
+
+ If CveSubProyectoInsertar <= 0 Then
+ MsgError = "No se pudo obtener el sub proyecto o centro de costo"
+ End If
+
If CveMoneda <> 1 OrElse CveMonedaCompra <> 1 Then
IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
CveCuenta = UsuarioActual.Empresa.CveCuentaPerdidaCambiaria
@@ -3323,15 +3361,19 @@ Partial Class Bancos_PopIECompras
If IdCtaContable = 0 Then
CuentasContablesInvalidas.Append("
" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString)
idCuentaContabilizacion = 0
- End If
-
- ''Conta SIG
- 'If CveCuenta = 0 Then
- ' CuentasContablesInvalidasSIG.Append("
" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString)
- ' CveCuentaContabilizacion = 0
- 'End If
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, If(ConceptoContable = 30, TxtFolio.Text.Trim, TxtObservaciones.Text), ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, -1, CveCompra, -1, CveProveedor:=CveProveedor2, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=TimpocambioGeneral, CvePersonal:=CvePersonal, PorcentajeImpuesto:=PorcentajeImpuesto) Then
+ End If
+
+ ''Conta SIG
+ 'If CveCuenta = 0 Then
+ ' CuentasContablesInvalidasSIG.Append("
" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString)
+ ' CveCuentaContabilizacion = 0
+ 'End If
+
+
+
+
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, If(ConceptoContable = 30, TxtFolio.Text.Trim, TxtObservaciones.Text), ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, -1, CveCompra, CveSubProyecto:=CveSubProyectoInsertar, CveProveedor:=CveProveedor2, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=TimpocambioGeneral, CvePersonal:=CvePersonal, PorcentajeImpuesto:=PorcentajeImpuesto) Then
MsgError = "No se pudo insertar la póliza"
End If
diff --git a/Bancos/ProveedoresAbonar.aspx.vb b/Bancos/ProveedoresAbonar.aspx.vb
index 0cfc4dcad..284b693e4 100644
--- a/Bancos/ProveedoresAbonar.aspx.vb
+++ b/Bancos/ProveedoresAbonar.aspx.vb
@@ -3146,6 +3146,7 @@ Partial Class Bancos_ProveedoresAbonar
If gr.DataKey("CveTipoConcepto").ToEntero = 2 Then CveConceptoContableComplementaria = 310 'cuando es acreedor
Dim ConceptoPartida As String = String.Format("Saldar compra {0}", gr.DataKey("SerieFolio").ToString)
+
CvePrePoliza = ObjConta.AddPrePolizas("Bancos/ProveedoresAbonar/Saldar", 98, gr.DataKey("Saldo").ToDecimal, gr.DataKey("Saldo").ToDecimal, gr.DataKey("CveMoneda").ToEntero, TxtFechaIncobrable.Text.ToDate, ConceptoPartida, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If CveMoneda > 1 AndAlso (IdCtaContComplementaria > 0 Or UsuarioActual.CveEmpresa = 119) Then
@@ -3223,15 +3224,23 @@ Partial Class Bancos_ProveedoresAbonar
If CveMoneda > 1 Then
Dim ImporteFluctuacion As Decimal = 0
ImporteFluctuacion = Saldo * (TCPago - TCCompra)
+
+ If CveSubProyecto <= 0 Then
+ MsgError = "No se pudo obtener el sub proyecto o centro de costo"
+ End If
+
+
If TCCompra > TCPago Then
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 64, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=UsuarioActual.Empresa.IdCuentaGananciaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CveCompra:=gr.DataKey("CveCompra").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), CveCuenta:=CveCuenta, TipoCambio:=TCCompra, TipoCambioPago:=TCPago) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 64, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=UsuarioActual.Empresa.IdCuentaGananciaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveSubProyecto:=CveSubProyecto, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CveCompra:=gr.DataKey("CveCompra").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), CveCuenta:=CveCuenta, TipoCambio:=TCCompra, TipoCambioPago:=TCPago) Then
MsgError = "Ocurrio un error al saldar el movimiento"
End If
Else
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 65, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CveCompra:=gr.DataKey("CveCompra").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), CveCuenta:=CveCuenta, TipoCambio:=TCCompra, TipoCambioPago:=TCPago) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 65, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveSubProyecto:=CveSubProyecto, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CveCompra:=gr.DataKey("CveCompra").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), CveCuenta:=CveCuenta, TipoCambio:=TCCompra, TipoCambioPago:=TCPago) Then
MsgError = "Ocurrio un error al saldar el movimiento"
End If
End If
+
+
End If
diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx
index be8eb8dba..4afd58c6e 100644
--- a/Compras/Compras.aspx
+++ b/Compras/Compras.aspx
@@ -77,7 +77,8 @@
-
+ <%----%>
+ Solicitar Devolución
@@ -4966,6 +4967,44 @@
+