3600 lines
257 KiB
VB.net
3600 lines
257 KiB
VB.net
Option Explicit On
|
|
Option Strict On
|
|
|
|
Imports System.Data
|
|
Imports Extensiones
|
|
|
|
Partial Class Bancos_PopIEVentas
|
|
Inherits ClsPaginas
|
|
|
|
#Region "Propiedades"
|
|
Private Property DtDeudores As DataTable
|
|
Get
|
|
Return CType(ViewState("DtDeudores"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("DtDeudores") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property DtAcreedores As DataTable
|
|
Get
|
|
Return CType(ViewState("DtAcreedores"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("DtAcreedores") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property DtDeudoresDetalle As DataTable
|
|
Get
|
|
Return CType(ViewState("DtDeudoresDetalle"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("DtDeudoresDetalle") = value
|
|
End Set
|
|
End Property
|
|
|
|
'Configuración
|
|
Private Property CveIE As Integer
|
|
Get
|
|
Return ViewState("CveIE").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveIE") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property IdPoliza As Integer
|
|
Get
|
|
Return ViewState("IdPoliza").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdPoliza") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property CveVenta As Integer
|
|
Get
|
|
Return ViewState("CveVenta").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveVenta") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property FechaVenta As Date
|
|
Get
|
|
Return ViewState("FechaVenta").ToString.ToDate
|
|
End Get
|
|
Set(value As Date)
|
|
ViewState("FechaVenta") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property CveCliente As Integer
|
|
Get
|
|
Return ViewState("CveCliente").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCliente") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveSubProyectoVenta As Integer
|
|
Get
|
|
Return ViewState("CveSubProyectoVenta").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveSubProyectoVenta") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property CveClienteOriginal As Integer
|
|
Get
|
|
Return ViewState("CveClienteOriginal").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveClienteOriginal") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property IdCuentaBancaria As Integer
|
|
Get
|
|
Return ViewState("IdCuentaBancaria").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdCuentaBancaria") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property IdCuentaBancariaComplementaria As Integer
|
|
Get
|
|
Return ViewState("IdCuentaBancariaComplementaria").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdCuentaBancariaComplementaria") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property IdCuentaCliente As Integer
|
|
Get
|
|
Return ViewState("IdCuentaCliente").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdCuentaCliente") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private ReadOnly Property IdCtaContMonedaExtranjera As Integer
|
|
Get
|
|
Return ViewState("IdCtaContMonedaExtranjera").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private ReadOnly Property IdCtaContComplementaria As Integer
|
|
Get
|
|
Return ViewState("IdCtaContComplementaria").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private ReadOnly Property IdCtaContMonedaExtranjeraAnticipo As Integer
|
|
Get
|
|
Return ViewState("IdCtaContMonedaExtranjeraAnticipo").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
Private ReadOnly Property IdCtaContMonedaComplementariaAnticipo As Integer
|
|
Get
|
|
Return ViewState("IdCtaContMonedaComplementariaAnticipo").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private ReadOnly Property IdCtaContRetIVA As Integer
|
|
Get
|
|
Return ViewState("IdCtaContRetIVA").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private ReadOnly Property IdCtaContRetISR As Integer
|
|
Get
|
|
Return ViewState("IdCtaContRetISR").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private ReadOnly Property IdCtaAnticipo As Integer
|
|
Get
|
|
Return ViewState("IdCtaAnticipo").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private Property CveCuentaBancaria As Integer
|
|
Get
|
|
Return ViewState("CveCuentaBancaria").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuentaBancaria") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property CveCuentaCliente As Integer
|
|
Get
|
|
Return ViewState("CveCuentaCliente").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuentaCliente") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private ReadOnly Property CveCuentaMonedaExtranjera As Integer
|
|
Get
|
|
Return ViewState("CveCuentaMonedaExtranjera").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private ReadOnly Property CveCuentaComplementaria As Integer
|
|
Get
|
|
Return ViewState("CveCuentaComplementaria").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private ReadOnly Property CveCuentaRetIVA As Integer
|
|
Get
|
|
Return ViewState("CveCuentaRetIVA").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private ReadOnly Property CveCuentaRetISR As Integer
|
|
Get
|
|
Return ViewState("CveCuentaRetISR").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private ReadOnly Property CveCuentaAnticipo As Integer
|
|
Get
|
|
Return ViewState("CveCuentaAnticipo").ToString.ToEntero
|
|
End Get
|
|
End Property
|
|
|
|
Private Property CveMoneda As Integer
|
|
Get
|
|
Return ViewState("CveMoneda").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveMoneda") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property TipoTransaccion As String
|
|
Get
|
|
Return ViewState("TipoTransaccion").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("TipoTransaccion") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property SaldoVenta As Double
|
|
Get
|
|
Return ViewState("SaldoVenta").ToString.ToDouble
|
|
End Get
|
|
Set(value As Double)
|
|
ViewState("SaldoVenta") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property MovimientoPagar As IEMovimiento
|
|
Get
|
|
Return CType(ViewState("MovimientoPagar"), IEMovimiento)
|
|
End Get
|
|
Set(value As IEMovimiento)
|
|
ViewState("MovimientoPagar") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property ArrIE As ArrayList
|
|
Get
|
|
Return CType(ViewState("ArrIE"), ArrayList)
|
|
End Get
|
|
Set(value As ArrayList)
|
|
ViewState("ArrIE") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property ArrIEFuncionariosEmpleados As ArrayList
|
|
Get
|
|
Return CType(ViewState("ArrIEFuncionariosEmpleados"), ArrayList)
|
|
End Get
|
|
Set(value As ArrayList)
|
|
ViewState("ArrIEFuncionariosEmpleados") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property DTFuenteRecaudacion As DataTable
|
|
Get
|
|
Return CType(ViewState("DTFuenteRecaudacion"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("DTFuenteRecaudacion") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property DTFuncionarioEmpleado As DataTable
|
|
Get
|
|
Return CType(ViewState("DTFuncionarioEmpleado"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("DTFuncionarioEmpleado") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property NombreCliente As String
|
|
Get
|
|
Return ViewState("NombreCliente").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("NombreCliente") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property SerieFolio As String
|
|
Get
|
|
Return ViewState("SerieFolio").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("SerieFolio") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property CveMonedaVenta As Integer
|
|
Get
|
|
Return ViewState("CveMonedaVenta").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveMonedaVenta") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property CveMonedaCompra As Integer
|
|
Get
|
|
Return ViewState("CveMonedaVenta").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveMonedaVenta") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property TipoCambioOriginal As Decimal
|
|
Get
|
|
Return ViewState("TipoCambioOriginal").ToString.ToDecimal
|
|
End Get
|
|
Set(value As Decimal)
|
|
ViewState("TipoCambioOriginal") = value
|
|
End Set
|
|
End Property
|
|
|
|
<Serializable>
|
|
Public Class Anticipos
|
|
Public Property CveIE As Integer
|
|
Public Property Importe As Double
|
|
Public Property CvePersonal As Integer
|
|
End Class
|
|
|
|
<Serializable>
|
|
Public Class IEMovimiento
|
|
Public Property SubTotal As Decimal
|
|
Public Property IVA As Decimal
|
|
Public Property RetIVA As Decimal
|
|
Public Property RetISR As Decimal
|
|
Public Property Total As Decimal
|
|
Public Property Saldo As Decimal
|
|
Public Property IEPS As Decimal
|
|
Public Property PorcentajeIVA As Decimal
|
|
|
|
End Class
|
|
|
|
Private Property EmpresaPrueba As Boolean
|
|
Get
|
|
Return CBool(ViewState("EmpresaPrueba"))
|
|
End Get
|
|
Set(value As Boolean)
|
|
ViewState("EmpresaPrueba") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property CveMonedaFiltros As Integer
|
|
Get
|
|
Return ViewState("CveMonedaFiltros").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveMonedaFiltros") = value
|
|
End Set
|
|
End Property
|
|
Private Property RFCCliente As String
|
|
Get
|
|
Return ViewState("RFCCliente").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("RFCCliente") = value
|
|
End Set
|
|
End Property
|
|
Private Property IdCtaContComplementariaProveedor As Integer
|
|
Get
|
|
Return ViewState("IdCtaContComplementariaProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdCtaContComplementariaProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property CtaProveedor As Integer
|
|
Get
|
|
Return ViewState("CtaProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CtaProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveCuentaProveedor As Integer
|
|
Get
|
|
Return ViewState("CveCuentaProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuentaProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property IdCtaProveedorExtranjera As Integer
|
|
Get
|
|
Return ViewState("IdCtaProveedorExtranjera").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdCtaProveedorExtranjera") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveCuentaProveedorExtranjera As Integer
|
|
Get
|
|
Return ViewState("CveCuentaProveedorExtranjera").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuentaProveedorExtranjera") = value
|
|
End Set
|
|
End Property
|
|
Private Property IdCtaContRetIVAProveedor As Integer
|
|
Get
|
|
Return ViewState("IdCtaContRetIVAProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdCtaContRetIVAProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property CtaProveedorDeudores As Integer
|
|
Get
|
|
Return ViewState("CtaProveedorDeudores").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CtaProveedorDeudores") = value
|
|
End Set
|
|
End Property
|
|
Private Property CtaProveedorAcreedores As Integer
|
|
Get
|
|
Return ViewState("CtaProveedorAcreedores").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CtaProveedorAcreedores") = value
|
|
End Set
|
|
End Property
|
|
Private Property IdCtaContRetISRProveedor As Integer
|
|
Get
|
|
Return ViewState("IdCtaContRetISRProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdCtaContRetISRProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property IdCtaContRetISRAcreditableProveedor As Integer
|
|
Get
|
|
Return ViewState("IdCtaContRetISRAcreditableProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdCtaContRetISRAcreditableProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property IdCtaContRetIVAAcreditableProveedor As Integer
|
|
Get
|
|
Return ViewState("IdCtaContRetIVAAcreditableProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("IdCtaContRetIVAAcreditableProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveCuentaProveedorDeudores As Integer
|
|
Get
|
|
Return ViewState("CveCuentaProveedorDeudores").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuentaProveedorDeudores") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveCuentaProveedorAcreedores As Integer
|
|
Get
|
|
Return ViewState("CveCuentaProveedorAcreedores").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuentaProveedorAcreedores") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveCuentaRetISRProveedor As Integer
|
|
Get
|
|
Return ViewState("CveCuentaRetISRProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuentaRetISRProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveCuentaRetIVAProveedor As Integer
|
|
Get
|
|
Return ViewState("CveCuentaRetIVAProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuentaRetIVAProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveCuentaComplementariaProveedor As Integer
|
|
Get
|
|
Return ViewState("CveCuentaComplementariaProveedor").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuentaComplementariaProveedor") = value
|
|
End Set
|
|
End Property
|
|
Private Property Fecha As Date
|
|
Get
|
|
Return ViewState("Fecha").ToString.ToDate
|
|
End Get
|
|
Set(value As Date)
|
|
ViewState("Fecha") = value
|
|
End Set
|
|
End Property
|
|
#End Region
|
|
|
|
Private Sub Bancos_PopIEVentas_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
|
|
If Not IsPostBack Then
|
|
If Not UsuarioActual.Empresa.UsaAC Then
|
|
EmpresaPrueba = True
|
|
ViewState("IdCtaContMonedaExtranjera") = 0
|
|
ViewState("IdCtaContComplementaria") = 0
|
|
ViewState("IdCtaContRetIVA") = 0
|
|
ViewState("IdCtaContRetISR") = 0
|
|
ViewState("IdCuentaBancaria") = 0
|
|
ViewState("IdCtaAnticipo") = 0
|
|
ViewState("IdCtaContMonedaExtranjeraAnticipo") = 0
|
|
ViewState("IdCtaContMonedaComplementariaAnticipo") = 0
|
|
|
|
|
|
IdCuentaBancariaComplementaria = 0
|
|
|
|
ViewState("CveCuentaMonedaExtranjera") = 0
|
|
ViewState("CveCuentaComplementaria") = 0
|
|
ViewState("CveCuentaRetIVA") = 0
|
|
ViewState("CveCuentaRetISR") = 0
|
|
ViewState("CveCuentaBancaria") = 0
|
|
ViewState("CveCuentaAnticipo") = 0
|
|
End If
|
|
CveClienteOriginal = -1
|
|
CveSubProyectoVenta = -1
|
|
|
|
CType(Me.Master, BaseMasterPage).EsPopup = True
|
|
CType(Me.Master, BaseMasterPage).PopupWidth = 750
|
|
RegistraScript("if($get('tdContenido')){$get('tdContenido').style.width='350px';}")
|
|
|
|
IdPoliza = -1
|
|
CveMoneda = 0
|
|
CveMonedaFiltros = 0
|
|
CveVenta = -1
|
|
MovimientoPagar = Nothing
|
|
ArrIE = New ArrayList()
|
|
ArrIEFuncionariosEmpleados = New ArrayList()
|
|
RFCCliente = ""
|
|
|
|
TxtFechaDocumento.Text = Now.ToShortDateString
|
|
|
|
If Request("CveVenta") IsNot Nothing AndAlso IsNumeric(Request("CveVenta")) AndAlso Request("CveVenta").ToEntero > 0 Then
|
|
CveVenta = Request("CveVenta").ToEntero
|
|
CargaVenta(CveVenta)
|
|
|
|
TipoTransaccion = "Ing"
|
|
LblFolio.Text = "Folio Pago"
|
|
TrPagueseA.Visible = False
|
|
Else
|
|
'Configuración de Modalidad Insert
|
|
ViewState("CveIE") = -1
|
|
End If
|
|
|
|
If UsuarioActual.CveEmpresa.Contiene(1, 4, 7, 11, 12, 72, 80, 119) Then
|
|
rowComisiones.Visible = True
|
|
End If
|
|
|
|
'SI USUARIO USA AMORTIZACIÓN CONTABLE
|
|
If UsuarioActual.Empresa.UsaAC Then
|
|
Dim AC As New ClsAC
|
|
If AC.GetPresupuestoIngresos(-1, -1, True, UsuarioActual.CveEmpresa) Then
|
|
DdlFuenteRecaudacion.DataSource = AC.DtResultados()
|
|
DdlFuenteRecaudacion.DataBind()
|
|
|
|
ViewState("DTFuenteRecaudacion") = AC.DtResultados()
|
|
End If
|
|
|
|
TrFR.Visible = True
|
|
AC.Dispose()
|
|
End If
|
|
|
|
CargaTipoTransaccion(TipoTransaccion)
|
|
CargaCuentas()
|
|
|
|
Dim ObjCompras As New ClsCompras
|
|
If ObjCompras.GetCompras(-1, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa, ProveedorRFC:=RFCCliente) Then
|
|
RBLContado.Items(4).Enabled = True
|
|
End If
|
|
ObjCompras.Dispose()
|
|
|
|
Dim dia As Integer = If(UsuarioActual.CveEmpresa = 13, Now.Day - 1, Now.Day)
|
|
Fecha = (dia.ToString + "/" + Now.Month.ToString + "/" + Now.Year.ToString).ToDate
|
|
|
|
If CveMoneda = 2 Then
|
|
ChkPagarPesos.Visible = True
|
|
TxtTipoCambio.Text = GlobalTipoCambio(Fecha).FormatoNumero(4)
|
|
TxtTCDolaresDolares.Text = GlobalTipoCambio(Fecha).FormatoNumero(4)
|
|
DivDolaresDolares.Visible = True
|
|
TxtFechaDocumento.Attributes.Add("onchange", "CambiaTC(this);")
|
|
Else
|
|
ChkPagarDolares.Visible = True
|
|
TxtTCDolares.Text = GlobalTipoCambio(Fecha).FormatoNumero(4)
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
#Region "C A M B I A R P A N E L"
|
|
Private Sub RBLContado_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RBLContado.SelectedIndexChanged
|
|
Select Case RBLContado.SelectedValue
|
|
Case "1" ' Bancos
|
|
PanelBancos.Visible = True
|
|
PanelFyE.Visible = False
|
|
PanelIngresos.Visible = False
|
|
PanelDeudores.Visible = False
|
|
PanelCompras.Visible = False
|
|
TxtImporte.Text = SaldoVenta.FormatoNumero
|
|
ChkComplementoPago.Visible = True
|
|
Case "2" ' F y E
|
|
PanelBancos.Visible = False
|
|
PanelFyE.Visible = True
|
|
PanelIngresos.Visible = False
|
|
PanelDeudores.Visible = False
|
|
PanelCompras.Visible = False
|
|
CargaFuncionariosEmpleados()
|
|
TxtImporte.Text = SaldoVenta.FormatoNumero
|
|
ChkComplementoPago.Visible = False
|
|
Case "3" 'Ingresos x Comprobar
|
|
PanelBancos.Visible = False
|
|
PanelFyE.Visible = False
|
|
PanelIngresos.Visible = True
|
|
PanelDeudores.Visible = False
|
|
PanelCompras.Visible = False
|
|
CargaOtrosIngresos(CveMoneda)
|
|
TxtImporte.Text = "0.00"
|
|
ChkComplementoPago.Visible = False
|
|
Case "4" 'Deudores
|
|
PanelBancos.Visible = False
|
|
PanelFyE.Visible = False
|
|
PanelIngresos.Visible = False
|
|
PanelDeudores.Visible = True
|
|
PanelCompras.Visible = False
|
|
CargaDeudores(CveMoneda)
|
|
TxtImporte.Text = "0.00"
|
|
ChkComplementoPago.Visible = False
|
|
Case "5" 'Compras
|
|
PanelBancos.Visible = False
|
|
PanelFyE.Visible = False
|
|
PanelIngresos.Visible = False
|
|
PanelDeudores.Visible = False
|
|
PanelCompras.Visible = True
|
|
CargaCompras(CveMoneda)
|
|
TxtImporte.Text = "0.00"
|
|
ChkComplementoPago.Visible = False
|
|
End Select
|
|
|
|
UpGuardar.Update()
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region "C A R G A R I N F O R M A C I O N"
|
|
Private Sub CargaVenta(pCveVenta As Integer)
|
|
Dim ObjVenta As New ClsVentas()
|
|
|
|
If ObjVenta.GetVenta(pCveVenta, UsuarioActual.CveEmpresa) Then
|
|
If ObjVenta.DtResultados IsNot Nothing AndAlso ObjVenta.DtResultados.Rows.Count > 0 Then
|
|
|
|
|
|
|
|
'CargaProveedor
|
|
Dim dr As DataRow = ObjVenta.DtResultados.Rows(0)
|
|
|
|
Dim Validada As Boolean = True
|
|
'JJMQ:20190606 Se cancela código de validacion ante el SAT por lentitud en el servicio.
|
|
'Sustituir la línea anterior por todo lo siguiente hasta donde termina el end if para que valide de nueva cuenta
|
|
'Dim Validada As Boolean = False
|
|
'If Not UsuarioActual.Empresa.Funcionalidad(529) = "1" Then
|
|
|
|
|
|
' Dim Valida As New ClsValidaCFDi(dr("FolioFiscal").ToString(), dr("ClienteRFC").ToString, UsuarioActual.Empresa.RFC)
|
|
|
|
' If Valida.EsValida > 0 Then
|
|
' If Valida.EsValida = 2 Then
|
|
' Validada = False
|
|
' 'Dim ObjDatos As New ClsCompras
|
|
|
|
' 'If ObjDatos.UpdateEstatus(Valida.EsValida, gvr.DataKey("CveFactura").ToEntero) Then
|
|
|
|
' 'End If
|
|
' 'ObjDatos.Dispose()
|
|
|
|
' BtnGuardar.Enabled = False
|
|
|
|
' If UsuarioActual.Empresa.UsaAC Then
|
|
' RegistraScript("if (confirm('La factura está cancelada ante el SAT., ¿Desea eliminar la compra?')) { $get('BtnEliminarCompra').click();}")
|
|
' Else
|
|
' Alert("La factura está cancelada ante el SAT.")
|
|
' End If
|
|
|
|
' Else
|
|
' Validada = True
|
|
' End If
|
|
' Else
|
|
' 'no se pudo validar, pero ya tuvo la primera vuelta de validacion
|
|
' Validada = True
|
|
' End If
|
|
' Valida.Dispose()
|
|
'Else
|
|
' Validada = True
|
|
'End If
|
|
|
|
|
|
If Validada Then
|
|
|
|
CveCliente = dr("CveCliente").ToString.ToEntero
|
|
CveClienteOriginal = dr("CveCliente").ToString.ToEntero
|
|
HdnCveCliente.Value = CveCliente.ToString
|
|
CargaCliente(CveCliente, "-1")
|
|
CveMoneda = dr("CveMoneda").ToString.ToEntero
|
|
CveMonedaVenta = dr("CveMoneda").ToString.ToEntero
|
|
CveMonedaFiltros = dr("CveMoneda").ToString.ToEntero
|
|
NombreCliente = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Nombre", String.Format("CveCliente = {0}", CveCliente))
|
|
SerieFolio = dr("SerieFolio").ToString
|
|
TipoCambioOriginal = dr("TipoCambio").ToString.ToDecimal
|
|
CveSubProyectoVenta = dr("CveSubProyecto").ToString.ToEntero
|
|
'Configuración de Modalidad Update
|
|
|
|
'Dim RFCCliente As String = GlobalDTCliente(UsuarioActual.CveEmpresa).FiltroPrimeroValor("RFC", $"CveCliente = {CveCliente} ")
|
|
|
|
|
|
If Not UsuarioActual.Empresa.Funcionalidad(536) = "1" Then
|
|
If dr("TipoDocto").ToString = "Rem" Then
|
|
Alert("Los documentos de tipo Remisión no se permite realizar el pago", TipoMensaje.MsgAdvertencia)
|
|
BtnGuardar.Visible = False
|
|
End If
|
|
End If
|
|
|
|
|
|
|
|
MovimientoPagar = New IEMovimiento
|
|
MovimientoPagar.SubTotal = dr("SubTotal").ToString.ToDecimal
|
|
MovimientoPagar.IVA = dr("IVA").ToString.ToDecimal
|
|
MovimientoPagar.RetIVA = dr("RetIVA").ToString.ToDecimal
|
|
MovimientoPagar.RetISR = dr("RetISR").ToString.ToDecimal
|
|
MovimientoPagar.Total = dr("Total").ToString.ToDecimal
|
|
MovimientoPagar.Saldo = dr("Saldo").ToString.ToDecimal
|
|
MovimientoPagar.IEPS = dr("IEPS").ToString.ToDecimal
|
|
MovimientoPagar.PorcentajeIVA = dr("PorcentajeIVA").ToString.ToDecimal
|
|
|
|
LtlTitulo.Text = "Cuentas por Cobrar"
|
|
LtlTipo2.Text = "Folio de la Venta"
|
|
LtlTipo3.Text = "Fecha de la Venta"
|
|
LtlSaldo.Text = If(CveMoneda = 1, $"{dr("Saldo").ToString.FormatoNumero}{" MXN"}", $"{dr("Saldo").ToString.FormatoNumero}{" USD"}")
|
|
LtlFechaVenta.Text = dr("Fecha").ToString.ToDate.ToShortDateString()
|
|
LtlFolio.Text = dr("SerieFolio").ToString
|
|
|
|
TxtFolio.Enabled = True
|
|
TxtFechaDocumento.Enabled = True
|
|
Calendario.Enabled = True
|
|
TxtPagueseA.Enabled = False
|
|
TxtImporte.Enabled = True
|
|
|
|
DdlCuenta.Enabled = True
|
|
|
|
DdlTipoTransaccion.Enabled = True
|
|
TxtObservaciones.Enabled = True
|
|
|
|
RVImporte.Enabled = True
|
|
RVImporte.MaximumValue = dr("Saldo").ToString.ToDouble.ToString.FormatoNumero
|
|
TxtImporte.Text = dr("Saldo").ToString.ToDouble.FormatoNumero
|
|
|
|
FechaVenta = dr("Fecha").ToString.ToDate
|
|
SaldoVenta = dr("Saldo").ToString.ToDouble
|
|
End If
|
|
|
|
|
|
End If
|
|
End If
|
|
|
|
ObjVenta.Dispose()
|
|
End Sub
|
|
|
|
Private Sub CargaCliente(ByVal CveCliente As Integer, RFC As String)
|
|
Dim ObjCliente As New ClsClientes
|
|
|
|
If ObjCliente.GetClientes(CveCliente, "-1", "-1", "-1", RFC, "-1", "-1", -1, UsuarioActual.CveEmpresa, -1) Then
|
|
If ObjCliente.DtResultados.Rows.Count > 0 Then
|
|
TxtPagueseA.Text = ObjCliente.Nombre
|
|
RFCCliente = ObjCliente.RFC
|
|
|
|
'Conta ContPAQ
|
|
IdCuentaCliente = ObjCliente.IdCtaContClientes
|
|
ViewState("IdCtaContMonedaExtranjera") = ObjCliente.IdCtaContMonedaExtranjera
|
|
ViewState("IdCtaContComplementaria") = ObjCliente.IdCtaContComplementaria
|
|
ViewState("IdCtaContRetIVA") = ObjCliente.IdCtaContRetIVA
|
|
ViewState("IdCtaContRetISR") = ObjCliente.IdCtaContRetISR
|
|
ViewState("IdCtaAnticipo") = ObjCliente.IdCtaContAnticipos
|
|
ViewState("IdCtaContMonedaExtranjeraAnticipo") = ObjCliente.IdCtaMonedaExtranjeraAnticipos
|
|
ViewState("IdCtaContMonedaComplementariaAnticipo") = ObjCliente.IdCtaContCompAnticipos
|
|
|
|
'Conta SIG
|
|
CveCuentaCliente = ObjCliente.CveCuentaClientes
|
|
ViewState("CveCuentaMonedaExtranjera") = ObjCliente.CveCuentaMonedaExtranjera
|
|
ViewState("CveCuentaComplementaria") = ObjCliente.CveCuentaComplementaria
|
|
ViewState("CveCuentaRetIVA") = ObjCliente.CveCuentaRetIVA
|
|
ViewState("CveCuentaRetISR") = ObjCliente.CveCuentaRetISR
|
|
ViewState("CveCuentaAnticipo") = ObjCliente.CveCuentaAnticipos
|
|
|
|
Else
|
|
Alert("El cliente solicitado no existe, por favor intente de nuevo.", TipoMensaje.MsgAdvertencia)
|
|
End If
|
|
End If
|
|
ObjCliente.Dispose()
|
|
End Sub
|
|
|
|
Private Sub CargaTipoTransaccion(Optional Tipo As String = "Egs")
|
|
DdlTipoTransaccion.DataSource = GlobalDTTipoTransacciones.FiltraParametros(String.Format("Tipo = '{0}' AND Estatus = 1", Tipo))
|
|
DdlTipoTransaccion.DataBind()
|
|
DdlTipoTransaccion.Items.Insert(0, New ListItem("Seleccione Tipo Movimiento", "-1"))
|
|
End Sub
|
|
|
|
Private Sub CargaCuentas()
|
|
DdlCuenta.Items.Clear()
|
|
Dim dt As DataTable = GlobalDTBancosCuentas(UsuarioActual.CveUsuario)
|
|
|
|
'dt = dt.FiltraParametros(String.Format("CveMoneda = {0}", CveMoneda))
|
|
|
|
If ChkPagarPesos.Checked Then
|
|
dt = dt.FiltraParametros(String.Format("CveMoneda = {0}", 1))
|
|
RegistraScript("CambiaPesosDolares();")
|
|
ElseIf ChkPagarDolares.Checked Then
|
|
dt = dt.FiltraParametros(String.Format("CveMoneda = {0}", 2))
|
|
RegistraScript("CambiaDolaresPesos();")
|
|
Else
|
|
If CveMonedaFiltros > 0 Then
|
|
dt = dt.FiltraParametros(String.Format("CveMoneda = {0}", CveMonedaFiltros))
|
|
End If
|
|
End If
|
|
|
|
DdlCuenta.DataSource = dt
|
|
DdlCuenta.DataBind()
|
|
DdlCuenta.Items.Insert(0, New ListItem("Seleccione cuenta", "-1"))
|
|
End Sub
|
|
|
|
Private Sub CargaGridTarjetas()
|
|
Dim ObjCreditos As New ClsBancos
|
|
ObjCreditos.GetTarjetasCreditos(DdlCuenta.SelectedValue.ToEntero)
|
|
|
|
DdlTarjeta.Items.Clear()
|
|
DdlTarjeta.DataSource = ObjCreditos.DtResultados
|
|
DdlTarjeta.DataBind()
|
|
DdlTarjeta.Items.Insert(0, New ListItem("Seleccione", "-1"))
|
|
|
|
ObjCreditos.Dispose()
|
|
DivTarjeta.Visible = True
|
|
End Sub
|
|
|
|
Protected Sub CargaFuncionariosEmpleados()
|
|
'SI ES VENTA SOLO CARGO FUNCIONARIOS
|
|
If CveVenta > 0 Then
|
|
DdlFuncionarioEmpleado.DataSource = GlobalDTRHPersonal(UsuarioActual.CveEmpresa)
|
|
DdlFuncionarioEmpleado.DataBind()
|
|
DdlFuncionarioEmpleado.Items.Insert(0, New ListItem("Seleccione Funcionario Empleado", "-1"))
|
|
End If
|
|
End Sub
|
|
|
|
Protected Sub CargaOtrosIngresos(Optional CveMoneda As Integer = 1)
|
|
Dim IngresosXcomprobar As New ClsMovimientos
|
|
DdlIngreso.Items.Clear()
|
|
|
|
If IngresosXcomprobar.GetIngresosSaldos(-1, UsuarioActual.CveEmpresa) Then
|
|
DtDeudores = IngresosXcomprobar.DtResultados.FiltraParametros($"CveCliente > 0 AND Saldo > 0 AND CveMoneda = {CveMoneda}")
|
|
|
|
DdlIngreso.DataSource = DtDeudores
|
|
DdlIngreso.DataBind()
|
|
DdlIngreso.Items.Insert(0, New ListItem("Seleccione Ingreso", "-1"))
|
|
UpDatos.Update()
|
|
CambieIngreso()
|
|
End If
|
|
|
|
IngresosXcomprobar.Dispose()
|
|
End Sub
|
|
|
|
Protected Sub CargaDeudores(Optional CveMoneda As Integer = 1)
|
|
Dim Deudores As New ClsMovimientos
|
|
DdlDeudor.Items.Clear()
|
|
|
|
If Deudores.GetDeudoresSaldos2(-1, UsuarioActual.CveEmpresa) Then
|
|
DtDeudores = Deudores.DtResultados.FiltraParametros($"CveProveedor > 0 AND SaldoVentas > 0 AND CveMoneda = {CveMoneda}")
|
|
DdlDeudor.DataSource = DtDeudores
|
|
DdlDeudor.DataBind()
|
|
DdlDeudor.Items.Insert(0, New ListItem("Seleccione Deudor", "-1"))
|
|
UpDatos.Update()
|
|
CambieDeudor()
|
|
End If
|
|
|
|
Deudores.Dispose()
|
|
End Sub
|
|
|
|
Protected Sub CargaCompras(Optional CveMoneda As Integer = 1)
|
|
Dim ObjCompras As New ClsCompras
|
|
Dim ObjProveedor As New ClsCompProveedores
|
|
Dim CveProveedor As Integer = -1
|
|
|
|
If ObjCompras.GetCompras(-1, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa, ProveedorRFC:=RFCCliente) Then
|
|
If ObjCompras.DtResultados.FiltraParametros("Saldo > 0").Rows.Count > 0 Then
|
|
CveProveedor = ObjCompras.DtResultados(0)("CveProveedor").ToString.ToEntero
|
|
GvCompras.DataSource = ObjCompras.DtResultados.FiltraParametros($"Saldo > 0 AND CveMoneda = {CveMoneda}")
|
|
GvCompras.DataBind()
|
|
End If
|
|
End If
|
|
|
|
If CveProveedor > 0 Then
|
|
If ObjProveedor.GetProveedores(ClsCompProveedores.TipoConsulta.ParaUsoEnEmpresa, CveProveedor, "-1", "-1", "-1", "-1", RFCCliente, "-1", "-1", -1, UsuarioActual.CveEmpresa) Then
|
|
'Conta SIG
|
|
ViewState("CtaProveedor") = ObjProveedor.IdCtaContProveedores
|
|
ViewState("CtaProveedorDeudores") = ObjProveedor.IdCtaContDeudor
|
|
ViewState("CtaProveedorAcreedores") = ObjProveedor.IdCtaContAcreedor
|
|
ViewState("IdCtaContRetISRProveedor") = ObjProveedor.IdCtaContRetISR
|
|
ViewState("IdCtaContRetISRAcreditableProveedor") = ObjProveedor.IdCtaContRetISRAcreditable
|
|
ViewState("IdCtaContRetIVAProveedor") = ObjProveedor.IdCtaContRetIVA
|
|
ViewState("IdCtaContRetIVAAcreditableProveedor") = ObjProveedor.IdCtaContRetIVAAcreditable
|
|
ViewState("IdCtaProveedorExtranjera") = ObjProveedor.IdCtaContProveedoresExtranjera
|
|
ViewState("IdCtaContComplementariaProveedor") = ObjProveedor.IdCtaContProveedoresComplementaria
|
|
|
|
'Conta ContPAQ
|
|
ViewState("CveCuentaProveedor") = ObjProveedor.CveCuentaProveedores
|
|
ViewState("CveCuentaProveedorDeudores") = ObjProveedor.CveCuentaDeudor
|
|
ViewState("CveCuentaProveedorAcreedores") = ObjProveedor.CveCuentaAcreedor
|
|
ViewState("CveCuentaRetISRProveedor") = ObjProveedor.CveCuentaRetISR
|
|
ViewState("CveCuentaRetIVAProveedor") = ObjProveedor.CveCuentaRetIVA
|
|
ViewState("CveCuentaProveedorExtranjera") = ObjProveedor.CveCuentaProveedoresExtranjera
|
|
ViewState("CveCuentaComplementariaProveedor") = ObjProveedor.CveCuentaProveedoresComplementaria
|
|
End If
|
|
End If
|
|
|
|
|
|
ObjCompras.Dispose()
|
|
ObjProveedor.Dispose()
|
|
UpDatos.Update()
|
|
End Sub
|
|
|
|
Private Sub CambieIngreso()
|
|
Dim stringDeudor As String = DdlIngreso.SelectedItem.ToString
|
|
Dim SaldoD As Decimal = stringDeudor.Substring(stringDeudor.IndexOf("$") + 1, stringDeudor.Length - (stringDeudor.IndexOf("$") + 1)).ToDecimal
|
|
|
|
If DdlIngreso.SelectedValue.ToEntero > 0 Then
|
|
Dim Deudores As New ClsMovimientos
|
|
|
|
If Deudores.GetIngresosSaldosDetalle(DdlIngreso.SelectedValue.ToEntero, CveMonedaFiltros, UsuarioActual.CveEmpresa) Then
|
|
DtDeudoresDetalle = Deudores.DtResultados.FiltraParametros("CveCliente > 0 AND Saldo > 0")
|
|
GvIngresos.DataSource = DtDeudoresDetalle
|
|
GvIngresos.DataBind()
|
|
End If
|
|
|
|
Deudores.Dispose()
|
|
Else
|
|
GvIngresos.DataSource = Nothing
|
|
GvIngresos.DataBind()
|
|
End If
|
|
|
|
UpIngresos.Update()
|
|
End Sub
|
|
|
|
Private Sub CambieDeudor()
|
|
Dim stringDeudor As String = DdlDeudor.SelectedItem.ToString
|
|
Dim SaldoD As Decimal = stringDeudor.Substring(stringDeudor.IndexOf("$") + 1, stringDeudor.Length - (stringDeudor.IndexOf("$") + 1)).ToDecimal
|
|
|
|
If DdlDeudor.SelectedValue.ToEntero > 0 Then
|
|
Dim Deudores As New ClsMovimientos
|
|
Dim OpcionSaldo As Integer = 1
|
|
If CveVenta > 0 Then OpcionSaldo = 2
|
|
|
|
If Deudores.GetDeudoresSaldosDetalle(DdlDeudor.SelectedValue.ToEntero, CveMonedaFiltros, UsuarioActual.CveEmpresa) Then
|
|
DtDeudoresDetalle = Deudores.DtResultados.FiltraParametros(If(CveVenta > 0, " CveProveedor > 0 AND SaldoVentas > 0", "CveProveedor > 0 AND Saldo > 0"))
|
|
GvDeudores.DataSource = DtDeudoresDetalle
|
|
GvDeudores.DataBind()
|
|
End If
|
|
Deudores.Dispose()
|
|
Else
|
|
GvDeudores.DataSource = Nothing
|
|
GvDeudores.DataBind()
|
|
End If
|
|
|
|
UpDeudores.Update()
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region "DDL'S CHANGED"
|
|
Protected Sub DdlTipoTransaccion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlTipoTransaccion.SelectedIndexChanged
|
|
Dim valor As Integer = DirectCast(sender, DropDownList).SelectedValue.ToEntero
|
|
Dim dr As DataRow = GlobalDTTipoTransacciones.FiltroPrimero(String.Format("CveTipoTransaccion = {0}", DdlTipoTransaccion.SelectedValue)) 'Egs o Ing
|
|
|
|
Select Case valor
|
|
Case 1
|
|
LblPagueseA.Text = "Páguese a"
|
|
Case 2
|
|
LblPagueseA.Text = "Beneficiario"
|
|
End Select
|
|
|
|
'RecargaCuentas
|
|
CargaCuentasDepositos()
|
|
CargaCuentas()
|
|
UpDatos.Update()
|
|
End Sub
|
|
|
|
Protected Sub DdlCuenta_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlCuenta.SelectedIndexChanged
|
|
Dim Folio As Long
|
|
|
|
Dim dr As DataRow = GlobalDTBancosCuentas(UsuarioActual.CveUsuario).FiltroPrimero("CveCuenta = " & DdlCuenta.SelectedValue)
|
|
Dim TCveMoneda = -1
|
|
|
|
If dr IsNot Nothing Then
|
|
If ChkPagarPesos.Checked Then
|
|
CveMoneda = 1
|
|
RegistraScript("CambiaPesosDolares();")
|
|
Else
|
|
CveMoneda = dr("CveMoneda").ToString.ToEntero
|
|
RegistraScript("CambiaDolaresPesos();")
|
|
End If
|
|
|
|
IdCuentaBancaria = dr("IdCtaContable").ToString.ToEntero
|
|
IdCuentaBancariaComplementaria = dr("IdCtaContableComplementaria").ToString.ToEntero
|
|
CveCuentaBancaria = dr("IdCtaContableSIG").ToString.ToEntero
|
|
|
|
If dr("UsaTarjeta").ToString = "True" Then
|
|
CargaGridTarjetas()
|
|
Else
|
|
DivTarjeta.Visible = False
|
|
End If
|
|
End If
|
|
|
|
'If CveMoneda = 2 Then
|
|
' ChkPagarPesos.Visible = True
|
|
' TxtTC.Text = GlobalTipoCambio(Now).FormatoNumero
|
|
'End If
|
|
|
|
If UsuarioActual.Empresa.Funcionalidad(505) <> "1" Then
|
|
If UsuarioActual.CveEmpresa = 119 Then
|
|
Dim ObjFolios As New ClsGralFolios
|
|
If ObjFolios.GetFolios("RMF", UsuarioActual.CveEmpresa) Then
|
|
Dim DT As DataTable = ObjFolios.DtResultados.FiltraParametros(String.Format(" Estado = 'Activo'"))
|
|
If DT.Rows.Count > 0 Then
|
|
TxtFolio.Text = DT.Rows(0)("FActual").ToString
|
|
End If
|
|
ObjFolios.Dispose()
|
|
End If
|
|
Else
|
|
|
|
Dim Banco As New ClsBancos
|
|
Folio = Banco.GetNextFolio(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero)
|
|
TxtFolio.Text = Folio.ToString
|
|
Banco.Dispose()
|
|
End If
|
|
End If
|
|
|
|
|
|
End Sub
|
|
|
|
Private Sub DdlOtrosPagos_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlOtrosPagos.SelectedIndexChanged
|
|
Dim EsOtrosEgresos As Boolean = (DdlOtrosPagos.SelectedValue.Equals("2"))
|
|
rowComision.Visible = EsOtrosEgresos
|
|
rowTotal.Visible = EsOtrosEgresos
|
|
TxtComision.Text = "0.00"
|
|
TxtTotal.Text = TxtImporte.Text
|
|
End Sub
|
|
|
|
Protected Sub DdlFuncionarioEmpleado_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlFuncionarioEmpleado.SelectedIndexChanged
|
|
Dim CvePersonal As Integer = DdlFuncionarioEmpleado.SelectedValue.ToEntero
|
|
End Sub
|
|
|
|
Private Sub DdlIngreso_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlIngreso.SelectedIndexChanged
|
|
CambieIngreso()
|
|
End Sub
|
|
|
|
Private Sub DdlDeudor_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlDeudor.SelectedIndexChanged
|
|
CambieDeudor()
|
|
End Sub
|
|
|
|
#Region " CUENTAS DEPOSITOS"
|
|
Private Sub CargaCuentasDepositos()
|
|
DdlCuentaDeposito.Items.Clear()
|
|
If DdlTipoTransaccion.SelectedValue.ToEntero > 0 Then ' transferencias y layout
|
|
trCuentaDeposito.Visible = False
|
|
|
|
Dim Dep As New ClsGenerales
|
|
If Dep.GetCuentasDepositos(CveCliente:=CveCliente) Then
|
|
If DdlTipoTransaccion.SelectedValue = "9" Then
|
|
|
|
DdlCuentaDeposito.DataSource = Dep.DtResultados.FiltraParametros("EstatusPagoElectronico = 'True' AND Estatus ='True'")
|
|
|
|
If Dep.DtResultados.FiltraParametros("EstatusPagoElectronico = 'True' AND Estatus ='True'").Rows.Count > 0 Then
|
|
trCuentaDeposito.Visible = True
|
|
DdlCuentaDeposito.Items.Insert(0, New ListItem("Seleccione una cuenta", "-1"))
|
|
Else
|
|
BtnGuardar.Enabled = False
|
|
Alert("El Cliente no tiene ninguna cuenta deposito registrada ante el sistema BBVA BANCOMER", TipoMensaje.MsgAdvertencia)
|
|
End If
|
|
|
|
Else
|
|
DdlCuentaDeposito.DataSource = Dep.DtResultados.FiltraParametros("Estatus ='True'")
|
|
If Dep.DtResultados.Rows.Count >= 1 Then
|
|
trCuentaDeposito.Visible = True
|
|
DdlCuentaDeposito.Items.Insert(0, New ListItem("Seleccione una cuenta", "-1"))
|
|
End If
|
|
End If
|
|
|
|
|
|
End If
|
|
Dep.Dispose()
|
|
|
|
|
|
DdlCuentaDeposito.DataBind()
|
|
|
|
Else
|
|
trCuentaDeposito.Visible = False
|
|
DdlCuentaDeposito.Items.Clear()
|
|
End If
|
|
|
|
UpCuentaDeposito.Update()
|
|
UpDatos.Update()
|
|
|
|
End Sub
|
|
|
|
'Private Sub RecargaCuentasDepositos()
|
|
|
|
' Dim dr As DataRow = GlobalDTTipoTransacciones.FiltroPrimero(String.Format("CveTipoTransaccion = {0}", DdlTipoTransaccion.SelectedValue)) 'Egs o Ing
|
|
' If dr IsNot Nothing Then
|
|
' HdnTipoTransaccion.Value = dr("Tipo").ToString
|
|
' HdnTipoTransaccionAbreviatura.Value = dr("Abreviatura").ToString
|
|
' End If
|
|
' CargaCuentasDepositos()
|
|
'End Sub
|
|
|
|
Protected Sub DdlCuentaDeposito_SelectedIndexChanged(sender As Object, e As EventArgs)
|
|
Dim Dep As New ClsGenerales
|
|
If Dep.GetCuentasDepositos(CveCliente:=CveCliente, CveCuentaDeposito:=DdlCuentaDeposito.SelectedValue.ToEntero) AndAlso Dep.DtResultados.Rows.Count = 1 Then
|
|
If Dep.DtResultados.Rows(0)("TieneCIE").ToString.ToEntero = 1 Then
|
|
TrReferenciaCIE.Visible = True
|
|
TxtReferenciaCIE.Text = Dep.DtResultados.Rows(0)("Referencia").ToString
|
|
Else
|
|
TrReferenciaCIE.Visible = False
|
|
End If
|
|
End If
|
|
Dep.Dispose()
|
|
UpCuentaDeposito.Update()
|
|
End Sub
|
|
#End Region
|
|
#End Region
|
|
|
|
#Region "GV ROW DATA BOUND"
|
|
Private Sub GvIngresos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvIngresos.RowDataBound
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
Dim total As Double
|
|
Dim saldo As Double
|
|
|
|
saldo = e.Row.DataKey("Saldo").ToDouble
|
|
total = SaldoVenta
|
|
|
|
e.Row.FCCheckBox("Chk").Attributes.Add("onclick", String.Format("ClickDeudorChk(this, ""{0}"", ""{1}"", ""{2}"")", e.Row.FCTextBox("TxtSaldoDeudor").ClientID, total, saldo))
|
|
e.Row.FCTextBox("TxtSaldoDeudor").Attributes.Add("onKeyUp", "AjustaTextboxDeudores();")
|
|
e.Row.FCTextBox("LbTipoMoneda").Text = If(e.Row.DataKey("CveMoneda").ToString.ToEntero = 1, "USD", " MXN")
|
|
|
|
|
|
Dim rv As RangeValidator = CType(e.Row.FindControl("RVSaldoDeudor"), RangeValidator)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub GvDeudores_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDeudores.RowDataBound
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
Dim total As Double
|
|
Dim saldo As Double
|
|
|
|
saldo = e.Row.DataKey("Saldo").ToDouble
|
|
total = SaldoVenta
|
|
|
|
e.Row.FCCheckBox("Chk").Attributes.Add("onclick", String.Format("ClickDeudorChk(this, ""{0}"", ""{1}"", ""{2}"")", e.Row.FCTextBox("TxtSaldoDeudor").ClientID, total, saldo))
|
|
e.Row.FCTextBox("TxtSaldoDeudor").Attributes.Add("onKeyUp", "AjustaTextboxDeudores();")
|
|
e.Row.FCTextBox("LbTipoMoneda").Text = If(e.Row.DataKey("CveMoneda").ToString.ToEntero = 1, "USD", " MXN")
|
|
|
|
Dim rv As RangeValidator = CType(e.Row.FindControl("RVSaldoDeudor"), RangeValidator)
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub GvCompras_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvCompras.RowDataBound
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
Dim total As Double
|
|
Dim saldo As Double
|
|
|
|
saldo = e.Row.DataKey("Saldo").ToDouble
|
|
total = SaldoVenta
|
|
|
|
e.Row.FCCheckBox("Chk").Attributes.Add("onclick", String.Format("ClickDeudorChk(this, ""{0}"", ""{1}"", ""{2}"")", e.Row.FCTextBox("TxtSaldoDeudor").ClientID, total, saldo))
|
|
e.Row.FCTextBox("TxtSaldoDeudor").Attributes.Add("onKeyUp", "AjustaTextboxDeudores();")
|
|
e.Row.FCTextBox("LbTipoMoneda").Text = If(e.Row.DataKey("CveMoneda").ToString.ToEntero = 1, "USD", " MXN")
|
|
|
|
Dim rv As RangeValidator = CType(e.Row.FindControl("RVSaldoDeudor"), RangeValidator)
|
|
End If
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "CHK TIPO CAMBIO"
|
|
|
|
#Region "PAGAR CON PESOS"
|
|
Protected Sub ChkPagarPesos_CheckedChanged(sender As Object, e As EventArgs)
|
|
If ChkPagarPesos.Checked Then
|
|
DivTipoCambio.Visible = True
|
|
DivDolaresDolares.Visible = False
|
|
TxtTipoCambio.Text = GlobalTipoCambio(Fecha).FormatoNumero(4)
|
|
|
|
CveMonedaFiltros = 1
|
|
CargaCuentas()
|
|
CargaOtrosIngresos(1)
|
|
CargaDeudores(1)
|
|
CargaCompras(1)
|
|
|
|
GvIngresos.Columns(5).Visible = True
|
|
GvIngresos.Columns(6).Visible = True
|
|
|
|
GvDeudores.Columns(5).Visible = True
|
|
GvDeudores.Columns(6).Visible = True
|
|
|
|
RVImporte.Enabled = False
|
|
RVImporte.MaximumValue = "0.00"
|
|
|
|
CVImportePesos.Enabled = True
|
|
CVImporteDolares.Enabled = True
|
|
Else
|
|
DivTipoCambio.Visible = False
|
|
DivDolaresDolares.Visible = True
|
|
TxtTCDolaresDolares.Text = GlobalTipoCambio(Fecha).FormatoNumero(4)
|
|
|
|
CveMonedaFiltros = 2
|
|
CargaCuentas()
|
|
CargaOtrosIngresos(2)
|
|
CargaDeudores(2)
|
|
CargaCompras(2)
|
|
|
|
GvIngresos.Columns(5).Visible = False
|
|
GvIngresos.Columns(6).Visible = False
|
|
|
|
GvDeudores.Columns(5).Visible = False
|
|
GvDeudores.Columns(6).Visible = False
|
|
|
|
RVImporte.Enabled = True
|
|
RVImporte.MaximumValue = LtlSaldo.Text.ToDouble.ToString
|
|
|
|
CVImporteDolares.Enabled = False
|
|
CVImportePesos.Enabled = False
|
|
End If
|
|
UpDatos.Update()
|
|
UpIngresos.Update()
|
|
UpDeudores.Update()
|
|
|
|
RegistraScript("CambiaPesosDolares();")
|
|
End Sub
|
|
|
|
Protected Sub CVImporteDolares_ServerValidate(source As Object, args As ServerValidateEventArgs)
|
|
If args.Value.ToString.Substring(0, args.Value.Length - 3).ToDouble <= LtlSaldo.Text.Substring(0, LtlSaldo.Text.Length - 3).ToDouble Then
|
|
args.IsValid = True
|
|
Else
|
|
args.IsValid = False
|
|
End If
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region "PAGAR CON DOLARES"
|
|
Protected Sub ChkPagarDolares_CheckedChanged(sender As Object, e As EventArgs)
|
|
If ChkPagarDolares.Checked Then
|
|
DivTCDolares.Visible = True
|
|
DivDolaresDolares.Visible = False
|
|
TxtFechaDocumento.Attributes.Add("onchange", "CambiaTC(this);")
|
|
TxtTCDolares.Text = GlobalTipoCambio(Fecha).FormatoNumero(4)
|
|
|
|
CveMonedaFiltros = 2
|
|
CargaCuentas()
|
|
CargaOtrosIngresos(2)
|
|
CargaDeudores(2)
|
|
CargaCompras(2)
|
|
|
|
GvIngresos.Columns(5).Visible = True
|
|
GvIngresos.Columns(6).Visible = True
|
|
|
|
GvDeudores.Columns(5).Visible = True
|
|
GvDeudores.Columns(6).Visible = True
|
|
|
|
RVImporte.Enabled = False
|
|
RVImporte.MaximumValue = "0.00"
|
|
|
|
CVImportePesos.Enabled = True
|
|
Else
|
|
DivTCDolares.Visible = False
|
|
DivDolaresDolares.Visible = False
|
|
TxtFechaDocumento.Attributes.Remove("onchange")
|
|
|
|
CveMonedaFiltros = 1
|
|
CargaCuentas()
|
|
CargaOtrosIngresos(1)
|
|
CargaDeudores(1)
|
|
CargaCompras(1)
|
|
|
|
GvIngresos.Columns(5).Visible = False
|
|
GvIngresos.Columns(6).Visible = False
|
|
|
|
GvDeudores.Columns(5).Visible = False
|
|
GvDeudores.Columns(6).Visible = False
|
|
|
|
RVImporte.Enabled = True
|
|
RVImporte.MaximumValue = LtlSaldo.Text.ToDouble.ToString
|
|
|
|
CVImporteDolares.Enabled = False
|
|
CVImportePesos.Enabled = False
|
|
End If
|
|
UpDatos.Update()
|
|
|
|
RegistraScript("CambiaDolaresPesos();")
|
|
End Sub
|
|
|
|
Protected Sub CVImportePesos_ServerValidate(source As Object, args As ServerValidateEventArgs)
|
|
If args.Value.ToString.Substring(0, args.Value.Length - 3).ToDouble <= LtlSaldo.Text.Substring(0, LtlSaldo.Text.Length - 3).ToDouble Then
|
|
args.IsValid = True
|
|
Else
|
|
args.IsValid = False
|
|
End If
|
|
End Sub
|
|
#End Region
|
|
|
|
Protected Sub BtnCambiaTipoMoneda_Click(sender As Object, e As EventArgs)
|
|
CambiaTipoMoneda()
|
|
End Sub
|
|
|
|
Private Sub CambiaTipoMoneda()
|
|
Dim dia As Integer = If(UsuarioActual.CveEmpresa = 13, TxtFechaDocumento.Text.ToDate.Day - 1, TxtFechaDocumento.Text.ToDate.Day)
|
|
Fecha = (dia.ToString + "/" + TxtFechaDocumento.Text.ToDate.Month.ToString + "/" + TxtFechaDocumento.Text.ToDate.Year.ToString).ToDate
|
|
|
|
If DivTipoCambio.Visible Then
|
|
TxtTipoCambio.Text = GlobalTipoCambio(Fecha).FormatoNumero(4)
|
|
RegistraScript("CambiaPesosDolares();")
|
|
End If
|
|
|
|
If DivTCDolares.Visible Then
|
|
TxtTCDolares.Text = GlobalTipoCambio(Fecha).FormatoNumero(4)
|
|
RegistraScript("CambiaDolaresPesos();")
|
|
End If
|
|
|
|
If DivDolaresDolares.Visible Then
|
|
TxtTCDolaresDolares.Text = GlobalTipoCambio(Fecha).FormatoNumero(4)
|
|
End If
|
|
|
|
UpDatos.Update()
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region "G U A R D A R"
|
|
Private Sub BtnGuardar_Click(sender As Object, e As EventArgs) Handles BtnGuardar.Click
|
|
'VALIDACION PARA LOS IMPORTES CUANDO SE QUIERE PAGAR EN DIFERENTE MONEDA
|
|
If Not Page.IsValid Then
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim MsgError As String = ""
|
|
Dim CveConcepto As Integer = -1
|
|
Dim CveConcepto2 As Integer = -1
|
|
Dim CvePersonal As Integer = -1
|
|
Dim Inserta As Boolean = True
|
|
Dim ImportePagado As Decimal = 0
|
|
Dim TipoMovimiento As Boolean = False
|
|
Dim PorcentajePago As Decimal = 0
|
|
Dim CveProveedor2 As Integer = -1
|
|
Dim Fecha As Date = TxtFechaDocumento.Text.Trim.ToDate
|
|
Dim CompraSaldo As Decimal = 0
|
|
If Not EmpresaPrueba Then CveIE = -1
|
|
|
|
Select Case RBLContado.SelectedValue
|
|
Case "1" ' Bancos
|
|
ImportePagado = If(DdlOtrosPagos.SelectedValue.ToEntero = 2, TxtTotal.Text.Trim.ToDecimal, TxtImporte.Text.Trim.ToDecimal) 'TxtImporte.Text.Trim.ToDecimal
|
|
Fecha = TxtFechaDocumento.Text.Trim.ToDate
|
|
TipoMovimiento = True
|
|
Case "2" 'FyE
|
|
ImportePagado = TxtImporte.Text.Trim.ToDecimal
|
|
Fecha = TxtFechaDocumento.Text.Trim.ToDate
|
|
CveConcepto = 29
|
|
CveIE = -1
|
|
TipoMovimiento = True
|
|
Dim stringPersonal As String = DdlFuncionarioEmpleado.SelectedItem.ToString
|
|
CvePersonal = DdlFuncionarioEmpleado.SelectedValue.ToEntero
|
|
Case "3" 'Ingresos X Comprobar
|
|
ImportePagado = TxtImporte.Text.Trim.ToDecimal
|
|
Case "4" 'Deudores Diversos
|
|
ImportePagado = TxtImporte.Text.Trim.ToDecimal
|
|
CveConcepto = 17
|
|
CveConcepto2 = 37
|
|
CveIE = -1
|
|
Case "5" 'Compras
|
|
ImportePagado = TxtImporte.Text.Trim.ToDecimal
|
|
CveProveedor2 = CveCliente
|
|
CveIE = -1
|
|
Case Else
|
|
ImportePagado = 0
|
|
End Select
|
|
|
|
If ImportePagado <= 0 Then
|
|
Inserta = False
|
|
Alert("Debe ingresar un importe.", TipoMensaje.MsgAdvertencia)
|
|
Exit Sub
|
|
End If
|
|
|
|
Dim ObjIE As New ClsBancos()
|
|
Dim ObjMov As New ClsContabilidad(ObjIE.IniciaTransacSQL)
|
|
Dim ObjCliente As New ClsClientes(ObjIE.IniciaTransacSQL)
|
|
|
|
Dim CvePlantillaPoliza As Integer = 11
|
|
Dim ConceptoPoliza As String = String.Format("{0} {1}", NombreCliente, SerieFolio)
|
|
Dim CveCuentaDeposito As Integer = If(DdlCuentaDeposito.Items.Count > 0, DdlCuentaDeposito.SelectedValue.ToEntero, 0)
|
|
Dim FechaDocumento = FechaVenta
|
|
Dim StrMsg As New StringBuilder
|
|
|
|
'Saca moneda en que se va a pagar segun metodo de pago
|
|
Select Case RBLContado.SelectedValue
|
|
Case "1" ' Banco
|
|
If DdlCuenta.SelectedValue.ToEntero > 0 Then
|
|
CveMoneda = GlobalDTBancosCuentas(-1).FiltroPrimeroValor("CveMoneda", $"CveEmpresa = {UsuarioActual.CveEmpresa} AND CveCuenta = {DdlCuenta.SelectedValue.ToEntero}").ToEntero
|
|
End If
|
|
Case "2", "3", "4", "5" 'FyE, Ingresos, Deudores
|
|
If ChkPagarDolares.Checked Then
|
|
CveMoneda = 2
|
|
ElseIf ChkPagarPesos.Checked Then
|
|
CveMoneda = 1
|
|
End If
|
|
End Select
|
|
|
|
'cuando es pago con compra, debe de ser de Diario
|
|
Dim CveTipoPoliza As Integer = ObjMov.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, "-1", UsuarioActual.CveEmpresa)
|
|
If RBLContado.SelectedValue = "5" Then CveTipoPoliza = 3
|
|
|
|
Dim CvePrePoliza As Integer = ObjMov.AddPrePolizas("Bancos/PopIEVentas", CvePlantillaPoliza, ImportePagado, ImportePagado, CveMoneda, Fecha, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=ObjMov.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, "-1", UsuarioActual.CveEmpresa))
|
|
|
|
If Inserta Then
|
|
If CvePrePoliza > 0 Then
|
|
'SE AGREGA DETALLE DE UNA VENTA
|
|
If CveVenta > 0 Then
|
|
If EmpresaPrueba Then
|
|
If MovimientoPagar IsNot Nothing Then
|
|
Dim ConceptoMovimiento As String = ""
|
|
Dim tipoCambioPago As Decimal = 1
|
|
Dim tipoCambioVenta As Decimal = 1
|
|
Dim tipoCambioVentaValuacion As Decimal = 1
|
|
Dim alertaContabilizacion As String = "Se enviaron correctamente las siguientes pólizas:<br><br>"
|
|
Dim idCuentaContabilizacion As Long = 1
|
|
Dim CuentasContablesInvalidas As New StringBuilder
|
|
Dim CveCuentaContabilizacion As Long = 1
|
|
Dim CuentasContablesInvalidasSIG As New StringBuilder
|
|
Dim TipoCambioFluctuacion As Decimal = 1
|
|
Dim FechaUltimaFluctuacion As Date = MinFecha
|
|
If ObjIE.GetFluctuacionesBitacora(UsuarioActual.CveEmpresa) Then
|
|
If ObjIE.DtResultados.Rows.Count > 0 Then
|
|
Dim tFecha As Date = TxtFechaDocumento.Text.ToDate
|
|
Dim strFecha As String = String.Format("{0}/{1}/{2}", tFecha.Year, tFecha.Month, tFecha.Day)
|
|
Dim drr As DataRow = ObjIE.DtResultados.FiltroPrimero("Fecha < #" & strFecha & "#", "Fecha DESC")
|
|
|
|
If drr IsNot Nothing Then
|
|
FechaUltimaFluctuacion = drr("Fecha").ToString.ToDate
|
|
TipoCambioFluctuacion = drr("TipoCambio").ToString.ToDecimal
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then 'Si la venta viene en Pesos y se va a pagar en Pesos
|
|
tipoCambioPago = 1
|
|
tipoCambioVenta = 1
|
|
PorcentajePago = TxtImporte.Text.Trim.ToDecimal / MovimientoPagar.Total
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then 'Si la venta viene en Dolares y se va a pagar en Pesos
|
|
tipoCambioPago = TxtTipoCambio.Text.ToDecimal
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
tipoCambioVentaValuacion = If(FechaVenta < FechaUltimaFluctuacion, TipoCambioFluctuacion, TipoCambioOriginal)
|
|
PorcentajePago = (TxtImporte.Text.Trim.ToDecimal / tipoCambioPago) / MovimientoPagar.Total
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then 'Si la venta viene en Dolares y se va a pagar en DOLARES
|
|
'tipoCambioPago = GlobalTipoCambio(TxtFechaDocumento.Text.ToDate).ToString.ToDecimal
|
|
tipoCambioPago = TxtTCDolaresDolares.Text.ToDecimal
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
tipoCambioVentaValuacion = If(FechaVenta < FechaUltimaFluctuacion, TipoCambioFluctuacion, TipoCambioOriginal)
|
|
PorcentajePago = TxtImporte.Text.Trim.ToDecimal / MovimientoPagar.Total
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then 'Si la venta viene en pesos y se va a pagar en DOLARES
|
|
tipoCambioPago = TxtTCDolares.Text.ToDecimal
|
|
tipoCambioVenta = 1
|
|
PorcentajePago = (TxtImporte.Text.Trim.ToDecimal * tipoCambioPago) / MovimientoPagar.Total
|
|
End If
|
|
|
|
Select Case RBLContado.SelectedValue
|
|
Case "1" ' Banco
|
|
CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero, Fecha, TxtFolio.Text.Trim, TxtPagueseA.Text.Trim, ImportePagado, CveMoneda, tipoCambioPago, TxtObservaciones.Text.Trim, "", True, True, -1, CvePrePoliza, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCuentaTarjeta:=If(DivTarjeta.Visible, DdlTarjeta.SelectedValue.ToEntero, -1), CveCuentaDeposito:=CveCuentaDeposito, Referencia:=If(TxtReferenciaCIE.Visible, TxtReferenciaCIE.Text, "-1"))
|
|
If CveIE > 0 Then
|
|
If CveVenta > 0 Then
|
|
CveConcepto = 2
|
|
End If
|
|
Else
|
|
MsgError = "Ocurrio un Error al registrarse el movimiento bancario."
|
|
Inserta = False
|
|
End If
|
|
Case "3" 'Ingresos x Comprobar
|
|
If CveVenta > 0 Then
|
|
CveConcepto = 2
|
|
CveConcepto2 = 92
|
|
CveCliente = DdlIngreso.SelectedValue.ToEntero
|
|
CveIE = -1
|
|
ImportePagado = TxtImporte.Text.Trim.ToDecimal
|
|
End If
|
|
Case "4" 'Deudores Diversos
|
|
If CveVenta > 0 Then
|
|
ImportePagado = TxtImporte.Text.Trim.ToDecimal
|
|
CveConcepto = 2
|
|
CveConcepto2 = 43
|
|
CveProveedor2 = DdlDeudor.SelectedValue.ToEntero
|
|
CveIE = -1
|
|
End If
|
|
Case "5" 'Compras
|
|
If CveVenta > 0 Then
|
|
ImportePagado = TxtImporte.Text.Trim.ToDecimal
|
|
CveConcepto = 2
|
|
'CveConcepto2 = 43
|
|
CveIE = -1
|
|
End If
|
|
End Select
|
|
|
|
|
|
If MsgError = "" Then
|
|
'inserto las ventas que voy a pagar
|
|
If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
|
|
Dim TotalPagarCliente As Decimal = 0
|
|
Dim CveSubProyectoContabilizar = -1
|
|
|
|
For Each Row As DataRow In ObjMov.DtResultados.Rows
|
|
Dim ConceptoContable = Row("CveConcepto").ToString.ToEntero
|
|
TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
|
|
ConceptoMovimiento = ObjMov.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, NombreCliente, SerieFolio, ObjIE.Folio, TxtObservaciones.Text.Trim)
|
|
Dim ImporteMovimiento As Decimal = 0
|
|
Dim ImporteMX As Decimal = 0
|
|
Dim ImporteCliente As Decimal = 0
|
|
Dim IdCtaContable As Integer = 0
|
|
Dim CveCuenta As Integer = 0
|
|
Dim Referencia As String = TxtObservaciones.Text
|
|
Dim FuncionalidadFluctuacionImpuestos As Boolean = If(UsuarioActual.Empresa.Funcionalidad(159) = "1", True, False)
|
|
Dim TimpocambioGeneral As Decimal = 1
|
|
Dim PorcentajeImpuesto As Decimal = 0
|
|
Dim ReferenciaConcepto As String = If(ConceptoContable = 30, ObjIE.Folio, LtlFolio.Text)
|
|
|
|
Select Case ConceptoContable
|
|
Case 2 'Pago Cliente
|
|
If RBLContado.SelectedValue.Contiene("3", "4", "5") Then
|
|
'If CveMonedaVenta > 1 Then ConceptoContable = 292
|
|
For Each rw As GridViewRow In GvIngresos.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / tipoCambioPago
|
|
ImporteMX = ImporteMovimiento * tipoCambioVentaValuacion
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal * tipoCambioPago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioVentaValuacion
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioVentaValuacion
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
CveIE = rw.DataKey("CveIE").ToString.ToEntero
|
|
'si la factura es en dólares y trae complementaria, el importemn debe ser igual al importe
|
|
If CveMonedaVenta <> 1 AndAlso (IdCtaContComplementaria > 0 Or UsuarioActual.CveEmpresa = 119) Then
|
|
ImporteMX = ImporteMovimiento
|
|
IdCtaContable = IdCtaContMonedaExtranjera
|
|
Else
|
|
IdCtaContable = IdCuentaCliente
|
|
CveCuenta = CveCuentaCliente
|
|
End If
|
|
TotalPagarCliente = ImporteMovimiento
|
|
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, ReferenciaConcepto, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, CveCliente:=CveClienteOriginal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioVentaValuacion, TipoCambioPago:=tipoCambioPago) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
|
|
|
|
If CveMonedaVenta = 2 Then
|
|
IdCtaContable = IdCtaContComplementaria
|
|
CveCuenta = CveCuentaComplementaria
|
|
If ImporteMovimiento <> 0 AndAlso (IdCtaContable > 0 Or UsuarioActual.CveEmpresa = 119) Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, ReferenciaConcepto, 207, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMovimiento * tipoCambioVentaValuacion - ImporteMovimiento, CveCuenta:=CveCuenta, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioVentaValuacion) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
TotalPagarCliente += Math.Round(ImporteMovimiento * tipoCambioVentaValuacion - ImporteMovimiento, 2) 'le agrego la complementario
|
|
ImporteMX = ImporteMovimiento
|
|
IdCtaContable = IdCtaContMonedaExtranjera
|
|
CveCuenta = CveCuentaMonedaExtranjera
|
|
End If
|
|
End If
|
|
|
|
End If
|
|
Next
|
|
|
|
For Each rw As GridViewRow In GvDeudores.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / tipoCambioPago
|
|
ImporteMX = ImporteMovimiento * tipoCambioVentaValuacion
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal * tipoCambioPago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioVentaValuacion
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioVentaValuacion
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
CveIE = rw.DataKey("CveIE").ToString.ToEntero
|
|
If CveMonedaVenta <> 1 AndAlso IdCtaContComplementaria > 0 Then
|
|
ImporteMX = ImporteMovimiento
|
|
IdCtaContable = IdCtaContMonedaExtranjera
|
|
Else
|
|
IdCtaContable = IdCuentaCliente
|
|
CveCuenta = CveCuentaCliente
|
|
End If
|
|
TotalPagarCliente = ImporteMovimiento
|
|
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, ReferenciaConcepto, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioVentaValuacion, TipoCambioPago:=tipoCambioPago) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
|
|
If CveMonedaVenta = 2 Then
|
|
IdCtaContable = IdCtaContComplementaria
|
|
CveCuenta = CveCuentaComplementaria
|
|
If ImporteMovimiento <> 0 AndAlso (IdCtaContable > 0 Or UsuarioActual.CveEmpresa = 119) Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, ReferenciaConcepto, 207, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMovimiento * tipoCambioVentaValuacion - ImporteMovimiento, CveCuenta:=CveCuenta, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioVentaValuacion) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
ImporteMX = ImporteMovimiento
|
|
TotalPagarCliente += Math.Round(ImporteMovimiento * tipoCambioVentaValuacion - ImporteMovimiento, 2) 'le agrego la complementario
|
|
IdCtaContable = IdCtaContMonedaExtranjera
|
|
CveCuenta = CveCuentaMonedaExtranjera
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / tipoCambioPago
|
|
ImporteMX = ImporteMovimiento * tipoCambioVentaValuacion
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal * tipoCambioPago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioVentaValuacion
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioVentaValuacion
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
If CveMonedaVenta <> 1 AndAlso IdCtaContComplementaria > 0 Then
|
|
ImporteMX = ImporteMovimiento
|
|
IdCtaContable = IdCtaContMonedaExtranjera
|
|
Else
|
|
IdCtaContable = IdCuentaCliente
|
|
CveCuenta = CveCuentaCliente
|
|
End If
|
|
TotalPagarCliente = ImporteMovimiento
|
|
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, rw.DataKey("CveCompra").ToEntero, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioVentaValuacion, TipoCambioPago:=tipoCambioPago) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
|
|
If CveMonedaVenta = 2 Then
|
|
IdCtaContable = IdCtaContComplementaria
|
|
CveCuenta = CveCuentaComplementaria
|
|
If ImporteMovimiento <> 0 AndAlso (IdCtaContable > 0 Or UsuarioActual.CveEmpresa = 119) Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, rw.FCLiteral("LtlFolio").Text, 207, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, rw.DataKey("CveCompra").ToEntero, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMovimiento * tipoCambioVentaValuacion - ImporteMovimiento, CveCuenta:=CveCuenta, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioVentaValuacion) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
ImporteMX = ImporteMovimiento
|
|
TotalPagarCliente += Math.Round(ImporteMovimiento * tipoCambioVentaValuacion - ImporteMovimiento, 2) 'le agrego la complementario
|
|
IdCtaContable = IdCtaContMonedaExtranjera
|
|
CveCuenta = CveCuentaMonedaExtranjera
|
|
End If
|
|
End If
|
|
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
Else
|
|
Dim ImporteMov = TxtImporte.Text.Trim.ToDecimal
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = ImporteMov
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = ImporteMov / tipoCambioPago
|
|
ImporteMX = ImporteMovimiento * tipoCambioVentaValuacion
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = ImporteMov * tipoCambioPago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = ImporteMov
|
|
ImporteMX = ImporteMovimiento * tipoCambioVentaValuacion
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioVentaValuacion
|
|
TotalPagarCliente = ImporteMovimiento
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
End If
|
|
|
|
If CveMonedaVenta = 1 Then
|
|
IdCtaContable = IdCuentaCliente
|
|
CveCuenta = CveCuentaCliente
|
|
Else
|
|
IdCtaContable = IdCtaContComplementaria
|
|
CveCuenta = CveCuentaComplementaria
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
If ImporteMovimiento <> 0 AndAlso (IdCtaContable > 0 Or UsuarioActual.CveEmpresa = 119) Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, ReferenciaConcepto, 207, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMovimiento * tipoCambioVentaValuacion - ImporteMovimiento, CveCuenta:=CveCuenta, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioVentaValuacion) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
ImporteMX = ImporteMovimiento
|
|
TotalPagarCliente += Math.Round(ImporteMovimiento * tipoCambioVentaValuacion - ImporteMovimiento, 2) 'le agrego la complementario
|
|
IdCtaContable = IdCtaContMonedaExtranjera
|
|
CveCuenta = CveCuentaMonedaExtranjera
|
|
End If
|
|
End If
|
|
Case 8 'Ret IVA
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = MovimientoPagar.RetIVA * PorcentajePago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.RetIVA * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * tipoCambioVenta
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (MovimientoPagar.RetIVA * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.RetIVA * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * tipoCambioVenta
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioVenta
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
If tipoCambioVenta > 1 Then ConceptoMovimiento += $" TC:{tipoCambioVenta} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetIVA <> 0 Then
|
|
IdCtaContable = IdCtaContRetIVA
|
|
Else
|
|
If ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
'Conta SIG
|
|
If CveCuentaRetIVA <> 0 Then
|
|
CveCuenta = CveCuentaRetIVA
|
|
Else
|
|
If ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacionSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
Case 9 'Ret ISR
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * tipoCambioVenta
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * tipoCambioVenta
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioVenta
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
If tipoCambioVenta > 1 Then ConceptoMovimiento += $" TC:{tipoCambioVenta} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetISR <> 0 Then
|
|
IdCtaContable = IdCtaContRetISR
|
|
Else
|
|
If 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 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
|
|
|
|
Case 13 'Iva por Trasladar
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = MovimientoPagar.IVA * PorcentajePago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = MovimientoPagar.IVA * PorcentajePago
|
|
ImporteMX = ImporteMovimiento * tipoCambioVenta
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (MovimientoPagar.IVA * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = MovimientoPagar.IVA * PorcentajePago
|
|
ImporteMX = ImporteMovimiento * tipoCambioVenta
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioVenta
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
If tipoCambioVenta > 1 Then ConceptoMovimiento += $" TC:{tipoCambioVenta} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
PorcentajeImpuesto = MovimientoPagar.PorcentajeIVA
|
|
|
|
Dim IdCtaIVAXTrasladar As Integer = 0
|
|
Dim CveCuentaIVAxTrasladar As Integer = 0
|
|
|
|
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
|
|
IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXTrasladar").ToString.ToEntero
|
|
CveCuentaIVAxTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("CveCuentaIVAXTrasladar").ToString.ToEntero
|
|
End If
|
|
|
|
IdCtaContable = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
|
|
CveCuenta = If(CveCuentaIVAxTrasladar > 0, CveCuentaIVAxTrasladar, UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
|
|
|
|
Case 61 'Iva Trasladado
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = MovimientoPagar.IVA * PorcentajePago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.IVA * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (MovimientoPagar.IVA * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = MovimientoPagar.IVA * PorcentajePago
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
PorcentajeImpuesto = MovimientoPagar.PorcentajeIVA
|
|
Dim IdCtaIVATrasladado As Integer = 0
|
|
Dim CveCuentaIVATrasladado As Integer = 0
|
|
|
|
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
|
|
IdCtaIVATrasladado = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVATrasladado").ToString.ToEntero
|
|
CveCuentaIVATrasladado = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("CveCuentaIVATrasladado").ToString.ToEntero
|
|
End If
|
|
|
|
IdCtaContable = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
|
|
CveCuenta = If(CveCuentaIVATrasladado > 0, CveCuentaIVATrasladado, UsuarioActual.Empresa.CveCuentaIVATrasladado)
|
|
|
|
Case 38 'IEPS por trasladar
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = MovimientoPagar.IEPS * PorcentajePago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = MovimientoPagar.IEPS * PorcentajePago
|
|
ImporteMX = ImporteMovimiento * tipoCambioVenta
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (MovimientoPagar.IEPS * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.IEPS * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * tipoCambioVenta
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioVenta
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
If ImporteMovimiento > 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxTrasladar").ToString.ToEntero
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxTrasladarSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
|
|
Case 39 'IEPS Trasladado
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = MovimientoPagar.IEPS * PorcentajePago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.IEPS * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (MovimientoPagar.IEPS * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.IEPS * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
|
|
If ImporteMovimiento > 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSTrasladado").ToString.ToEntero
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSTrasladadoSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
|
|
Case 62 'Ret IVA Trasladado
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = MovimientoPagar.RetIVA * PorcentajePago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.RetIVA * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (MovimientoPagar.RetIVA * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.RetIVA * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetIVA <> 0 Then
|
|
IdCtaContable = IdCtaContRetIVA
|
|
Else
|
|
If ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
'Conta SIG
|
|
If CveCuentaRetIVA <> 0 Then
|
|
CveCuenta = CveCuentaRetIVA
|
|
Else
|
|
If ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacionSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
Case 63 'Ret ISR Trasladado
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = MovimientoPagar.RetISR * PorcentajePago
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
tipoCambioVenta = TipoCambioOriginal
|
|
ImporteMovimiento = (MovimientoPagar.RetISR * PorcentajePago)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetISR <> 0 Then
|
|
IdCtaContable = IdCtaContRetISR
|
|
Else
|
|
If 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 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
|
|
|
|
Case 64 'Ganancia
|
|
If CveMoneda <> 1 OrElse CveMonedaVenta <> 1 Then
|
|
IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
|
|
CveCuenta = UsuarioActual.Empresa.CveCuentaGananciaCambiaria
|
|
|
|
Dim TCImpuestos As Decimal = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
TimpocambioGeneral = TCImpuestos
|
|
|
|
Dim Diferencia As Decimal = ((MovimientoPagar.Total * PorcentajePago) * tipoCambioVentaValuacion) - ((MovimientoPagar.Total * PorcentajePago) * tipoCambioPago) 'Añadimos la diferencia de perdida en la venta
|
|
Diferencia -= ((MovimientoPagar.IVA * PorcentajePago) * tipoCambioVenta) - ((MovimientoPagar.IVA * PorcentajePago) * TCImpuestos) 'Añadimos la diferencia de ganancia en el IVA
|
|
Diferencia += ((MovimientoPagar.RetIVA * PorcentajePago) * tipoCambioVenta) - ((MovimientoPagar.RetIVA * PorcentajePago) * TCImpuestos) 'Añadimos la diferencia de ganancia en el RetIVA
|
|
Diferencia += ((MovimientoPagar.RetISR * PorcentajePago) * tipoCambioVenta) - ((MovimientoPagar.RetISR * PorcentajePago) * TCImpuestos) 'Añadimos la diferencia de ganancia en el RetISR
|
|
Diferencia -= ((MovimientoPagar.IEPS * PorcentajePago) * tipoCambioVenta) - ((MovimientoPagar.IEPS * PorcentajePago) * TCImpuestos) 'Añadimos la diferencia de ganancia en el IEPS
|
|
Diferencia = Math.Round(Diferencia, 2)
|
|
|
|
|
|
'' se considera, las diferencias, y no el tipo de cambio, por el caso de las fluctuaciones
|
|
|
|
'' si tiene funcionalidad de flucturación con ivas, tomar tipocambioventa
|
|
If Diferencia < 0 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = Math.Abs(Diferencia)
|
|
ImporteMX = ImporteMovimiento
|
|
End If
|
|
Else
|
|
ImporteMovimiento = 0
|
|
End If
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
Case 65 'Perdida
|
|
If CveMoneda <> 1 OrElse CveMonedaVenta <> 1 Then
|
|
IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
|
|
CveCuenta = UsuarioActual.Empresa.CveCuentaPerdidaCambiaria
|
|
|
|
Dim TCImpuestos As Decimal = If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, tipoCambioVenta)
|
|
TimpocambioGeneral = TCImpuestos
|
|
|
|
|
|
Dim Diferencia As Decimal = ((MovimientoPagar.Total * PorcentajePago) * tipoCambioVentaValuacion) - ((MovimientoPagar.Total * PorcentajePago) * tipoCambioPago) 'Añadimos la diferencia de perdida en la venta
|
|
Diferencia -= ((MovimientoPagar.IVA * PorcentajePago) * tipoCambioVenta) - ((MovimientoPagar.IVA * PorcentajePago) * TCImpuestos) 'Añadimos la diferencia de ganancia en el IVA
|
|
Diferencia += ((MovimientoPagar.RetIVA * PorcentajePago) * tipoCambioVenta) - ((MovimientoPagar.RetIVA * PorcentajePago) * TCImpuestos) 'Añadimos la diferencia de ganancia en el RetIVA
|
|
Diferencia += ((MovimientoPagar.RetISR * PorcentajePago) * tipoCambioVenta) - ((MovimientoPagar.RetISR * PorcentajePago) * TCImpuestos) 'Añadimos la diferencia de ganancia en el RetISR
|
|
Diferencia -= ((MovimientoPagar.IEPS * PorcentajePago) * tipoCambioVenta) - ((MovimientoPagar.IEPS * PorcentajePago) * TCImpuestos) 'Añadimos la diferencia de ganancia en el IEPS
|
|
Diferencia = Math.Round(Diferencia, 2)
|
|
|
|
'si la diferencia es negativa es pérdida, si es positiva es ganancia
|
|
If Diferencia > 0 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = Math.Abs(Diferencia)
|
|
ImporteMX = ImporteMovimiento
|
|
End If
|
|
Else
|
|
ImporteMovimiento = 0
|
|
End If
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
Case 30
|
|
If RBLContado.SelectedValue = "1" Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = ImportePagado.ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = ImportePagado.ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = ImportePagado.ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = ImportePagado.ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
End If
|
|
ImporteMovimiento = ImporteMovimiento
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioPago
|
|
TotalPagarCliente = ImporteMovimiento
|
|
|
|
If CveMoneda = 1 Then
|
|
IdCtaContable = IdCuentaBancaria
|
|
CveCuenta = CveCuentaCliente
|
|
Else
|
|
IdCtaContable = IdCuentaBancariaComplementaria
|
|
CveCuenta = CveCuentaComplementaria
|
|
If ImporteMovimiento <> 0 AndAlso IdCtaContable > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, ObjIE.Folio, 204, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, -1, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMovimiento * tipoCambioPago - ImporteMovimiento, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioPago, CveCuenta:=CveCuenta) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
ImporteMX = ImporteMovimiento
|
|
IdCtaContable = IdCuentaBancaria
|
|
CveCuenta = CveCuentaMonedaExtranjera
|
|
TotalPagarCliente += Math.Round(ImporteMovimiento * tipoCambioPago - ImporteMovimiento, 2)
|
|
End If
|
|
End If
|
|
Referencia = ObjIE.Folio
|
|
End If
|
|
Case 92
|
|
If RBLContado.SelectedValue = "3" Then
|
|
For Each rw As GridViewRow In GvIngresos.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioPago
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
|
|
|
|
CveIE = rw.DataKey("CveIE").ToString.ToEntero
|
|
'si la factura es en dólares y trae complementaria, el importemn debe ser igual al importe
|
|
If CveMoneda = 2 Then
|
|
ImporteMX = ImporteMovimiento
|
|
IdCtaContable = IdCtaContMonedaExtranjeraAnticipo
|
|
CveCuenta = CveCuentaMonedaExtranjera
|
|
Else
|
|
IdCtaContable = IdCtaAnticipo
|
|
CveCuenta = CveCuentaAnticipo
|
|
End If
|
|
TotalPagarCliente = ImporteMovimiento
|
|
|
|
|
|
If ObjCliente.GetClientes(CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then
|
|
If ObjCliente.DtResultados.Rows.Count > 0 Then
|
|
If CveMoneda = 2 Then
|
|
IdCtaContable = ObjCliente.IdCtaMonedaExtranjeraAnticipos
|
|
Else
|
|
IdCtaContable = ObjCliente.IdCtaContAnticipos
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
If UsuarioActual.CveEmpresa.Contiene(119) Then
|
|
If rw.DataKey("FechaDocumento").ToDate.Year <= 2017 AndAlso Fecha.Year >= 2018 Then
|
|
If ObjCliente.DtResultados.Rows.Count > 0 Then
|
|
If CveMoneda = 2 Then
|
|
IdCtaContable = ObjCliente.IdCtaContMonedaExtranjera
|
|
Else
|
|
IdCtaContable = ObjCliente.IdCtaContClientes
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, ReferenciaConcepto, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMX, TipoCambio:=tipoCambioPago) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
|
|
If CveMoneda <> 1 AndAlso (IdCtaContMonedaComplementariaAnticipo > 0 Or UsuarioActual.CveEmpresa = 119) Then
|
|
IdCtaContable = IdCtaContMonedaComplementariaAnticipo
|
|
If ObjCliente.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjCliente.IdCtaContCompAnticipos
|
|
End If
|
|
|
|
If UsuarioActual.CveEmpresa.Contiene(119) Then
|
|
If rw.DataKey("FechaDocumento").ToDate.Year <= 2017 AndAlso Fecha.Year >= 2018 Then
|
|
If ObjCliente.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjCliente.IdCtaContCompClientes
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
If ImporteMovimiento <> 0 AndAlso (IdCtaContable > 0 Or UsuarioActual.CveEmpresa = 119) Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, ReferenciaConcepto, 227, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, If(ViewState("CveCliente") IsNot Nothing, ViewState("CveCliente").ToString.ToEntero, -1), ImporteMX:=ImporteMovimiento * tipoCambioPago - ImporteMovimiento, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioPago) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
TotalPagarCliente += Math.Round(ImporteMovimiento * tipoCambioVenta - ImporteMovimiento, 2) 'le agrego la complementario
|
|
ImporteMX = ImporteMovimiento
|
|
IdCtaContable = IdCtaContMonedaExtranjeraAnticipo
|
|
If ObjCliente.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjCliente.IdCtaMonedaExtranjeraAnticipos
|
|
End If
|
|
|
|
If UsuarioActual.CveEmpresa.Contiene(119) Then
|
|
If rw.DataKey("FechaDocumento").ToDate.Year <= 2017 AndAlso Fecha.Year >= 2018 Then
|
|
If ObjCliente.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjCliente.IdCtaContMonedaExtranjera
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
End If
|
|
End If
|
|
|
|
End If
|
|
Next
|
|
End If
|
|
ImporteMovimiento = 0
|
|
Case 43 'Deudores
|
|
If RBLContado.SelectedValue = "4" Then
|
|
For Each rw As GridViewRow In GvDeudores.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioPago
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
|
|
CveIE = rw.DataKey("CveIE").ToString.ToEntero
|
|
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, ReferenciaConcepto, ConceptoContable, ConceptoMovimiento, Fecha, rw.DataKey("IdCtaContDeudor").ToString.ToEntero, -1, CveIE, CveVenta:=CveVenta, CveProveedor:=CveProveedor2, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, CveSubProyecto:=CveSubProyectoContabilizar) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
Next
|
|
End If
|
|
ImporteMovimiento = 0
|
|
Case 28 'FyE
|
|
If RBLContado.SelectedValue = "2" Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = ImportePagado.ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = ImportePagado.ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = ImportePagado.ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = ImportePagado.ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
TimpocambioGeneral = tipoCambioPago
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
|
|
Else
|
|
ImporteMovimiento = 0
|
|
End If
|
|
Case 78 'Otros Ingresos
|
|
If DdlOtrosPagos.SelectedValue.ToEntero = 2 AndAlso TxtComision.Text.ToDouble <> 0 Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = TxtComision.Text.Trim.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = TxtComision.Text.Trim.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = TxtComision.Text.Trim.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = TxtComision.Text.Trim.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
End If
|
|
|
|
If TxtComision.Text.ToDouble < 0 Then
|
|
TipoMovimiento = False
|
|
Else
|
|
TipoMovimiento = True
|
|
End If
|
|
|
|
ImporteMovimiento = Math.Abs(Math.Round(ImporteMovimiento, 2))
|
|
ImporteMX = Math.Abs(Math.Round(ImporteMX, 2))
|
|
CveSubProyectoContabilizar = CveSubProyectoVenta
|
|
IdCtaContable = UsuarioActual.Empresa.IdCuentaOtrosIngresos
|
|
End If
|
|
|
|
Case 17 'Pago Proveedor
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal
|
|
ImporteMX = ImporteMovimiento * tipoCambioPago
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
'si la factura es en dólares y trae complementaria, el importemn debe ser igual al importe
|
|
If rw.DataKey("CveMoneda").ToEntero <> 1 AndAlso (IdCtaContComplementaria > 0 Or UsuarioActual.CveEmpresa = 119) Then
|
|
ImporteMX = ImporteMovimiento
|
|
IdCtaContable = IdCtaContComplementariaProveedor
|
|
Else
|
|
IdCtaContable = CtaProveedor
|
|
CveCuenta = CveCuentaProveedor
|
|
End If
|
|
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, 275, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=tipoCambioPago) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
|
|
If rw.DataKey("CveMoneda").ToEntero = 2 Then
|
|
IdCtaContable = IdCtaProveedorExtranjera
|
|
CveCuenta = CveCuentaProveedorExtranjera
|
|
If ImporteMovimiento <> 0 AndAlso (IdCtaContable > 0 Or UsuarioActual.CveEmpresa = 119) Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, rw.FCLiteral("LtlFolio").Text, 206, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMovimiento * tipoCambioPago - ImporteMovimiento, ImporteME:=ImporteMovimiento, TipoCambio:=tipoCambioPago, CveCuenta:=CveCuenta) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
ImporteMX = ImporteMovimiento
|
|
IdCtaContable = IdCtaContMonedaExtranjera
|
|
CveCuenta = CveCuentaMonedaExtranjera
|
|
End If
|
|
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case 15 'Ret IVA X Acreditar Honorarios/Serv. Prof. COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
|
|
If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 1 Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetIVAProveedor > 0 Then
|
|
IdCtaContable = IdCtaContRetIVAProveedor
|
|
ElseIf UsuarioActual.Empresa.Funcionalidad(307).ToEntero > 0 Then
|
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(307).ToEntero
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
'Conta SIG
|
|
If CveCuentaRetIVAProveedor <> 0 Then
|
|
CveCuenta = CveCuentaRetIVAProveedor
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacionSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=rw.DataKey("TipoCambio").ToString.ToDecimal) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case 22 'Ret IVA Acreditable Honorarios/Serv. Prof. COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 1 Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetIVAAcreditableProveedor > 0 Then
|
|
IdCtaContable = IdCtaContRetIVAAcreditableProveedor
|
|
ElseIf UsuarioActual.Empresa.Funcionalidad(308).ToEntero > 0 Then
|
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(308).ToEntero
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case 183 'Ret IVA X Acreditar Fletes P.F. COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 2 Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If rw.DataKey("TipoCambio").ToString.ToDecimal > 1 Then ConceptoMovimiento += $" TC:{rw.DataKey("TipoCambio").ToString.ToDecimal} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetIVAProveedor > 0 Then
|
|
IdCtaContable = IdCtaContRetIVAProveedor
|
|
ElseIf UsuarioActual.Empresa.Funcionalidad(309).ToEntero > 0 Then
|
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(309).ToEntero
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
'Conta SIG
|
|
If CveCuentaRetIVAProveedor <> 0 Then
|
|
CveCuenta = CveCuentaRetIVAProveedor
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacionSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=rw.DataKey("TipoCambio").ToString.ToDecimal) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case 184 'Ret IVA Acreditable Fletes P.F. COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 2 Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
If IdCtaContRetIVAAcreditableProveedor > 0 Then
|
|
IdCtaContable = IdCtaContRetIVAAcreditableProveedor
|
|
ElseIf UsuarioActual.Empresa.Funcionalidad(310).ToEntero > 0 Then
|
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(310).ToEntero
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case 185 'Ret IVA X Acreditar Fletes P.M. COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 3 Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If rw.DataKey("TipoCambio").ToString.ToDecimal > 1 Then ConceptoMovimiento += $" TC:{rw.DataKey("TipoCambio").ToString.ToDecimal} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetIVAProveedor > 0 Then
|
|
IdCtaContable = IdCtaContRetIVAProveedor
|
|
ElseIf UsuarioActual.Empresa.Funcionalidad(311).ToEntero > 0 Then
|
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(311).ToEntero
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
'Conta SIG
|
|
If CveCuentaRetIVAProveedor <> 0 Then
|
|
CveCuenta = CveCuentaRetIVAProveedor
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacionSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=rw.DataKey("TipoCambio").ToString.ToDecimal) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case 186 'Ret IVA Acreditable Fletes P.M. COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 3 Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetIVAAcreditableProveedor > 0 Then
|
|
IdCtaContable = IdCtaContRetIVAAcreditableProveedor
|
|
ElseIf UsuarioActual.Empresa.Funcionalidad(312).ToEntero > 0 Then
|
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(312).ToEntero
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
Case 248 'Ret IVA X Acreditar Arrendamiento
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 4 Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetIVAProveedor > 0 Then
|
|
IdCtaContable = IdCtaContRetIVAProveedor
|
|
ElseIf UsuarioActual.Empresa.Funcionalidad(313).ToEntero > 0 Then
|
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(313).ToEntero
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
Case 249 'Ret IVA Acreditable Arrendamiento
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 4 Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("RetIVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
'Conta ContPAQ
|
|
If IdCtaContRetIVAAcreditableProveedor > 0 Then
|
|
IdCtaContable = IdCtaContRetIVAAcreditableProveedor
|
|
ElseIf UsuarioActual.Empresa.Funcionalidad(314).ToEntero > 0 Then
|
|
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(314).ToEntero
|
|
Else
|
|
If ImporteMovimiento <> 0 AndAlso ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
|
|
End If
|
|
End If
|
|
End If
|
|
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
'Case 16 'Ret ISR X Acreditar COMPRA
|
|
' If RBLContado.SelectedValue = "5" Then
|
|
' For Each rw As GridViewRow In GvCompras.Rows
|
|
' If rw.FCCheckBox("Chk").Checked Then
|
|
' If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 1 Then
|
|
' Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
' If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
' ImporteMovimiento = rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra
|
|
' ImporteMX = ImporteMovimiento
|
|
' ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
' ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
' ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
' End If
|
|
' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
' ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
' If rw.DataKey("TipoCambio").ToString.ToDecimal > 1 Then ConceptoMovimiento += $" TC:{rw.DataKey("TipoCambio").ToString.ToDecimal} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
' 'Conta ContPAQ
|
|
' If IdCtaContRetISRProveedor > 0 Then
|
|
' IdCtaContable = IdCtaContRetISRProveedor
|
|
' 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 CveCuentaRetISRProveedor <> 0 Then
|
|
' CveCuenta = CveCuentaRetISRProveedor
|
|
' 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
|
|
|
|
' If ImporteMovimiento > 0 Then
|
|
' If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=rw.DataKey("TipoCambio").ToString.ToDecimal) Then
|
|
' MsgError = "No se pudo insertar la póliza"
|
|
' End If
|
|
' End If
|
|
' End If
|
|
' End If
|
|
' Next
|
|
' ImporteMovimiento = 0
|
|
' End If
|
|
|
|
'Case 23 'Ret ISR Acreditable COMPRA
|
|
' If RBLContado.SelectedValue = "5" Then
|
|
' For Each rw As GridViewRow In GvCompras.Rows
|
|
' If rw.FCCheckBox("Chk").Checked Then
|
|
' If rw.DataKey("CveRetIVAConcepto").ToString.ToDecimal = 1 Then
|
|
' Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
' If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
' ImporteMovimiento = rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra
|
|
' ImporteMX = ImporteMovimiento
|
|
' ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
' ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
' ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
' End If
|
|
' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
' ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
' 'Conta ContPAQ
|
|
' If IdCtaContRetISRAcreditableProveedor > 0 Then
|
|
' IdCtaContable = IdCtaContRetISRAcreditableProveedor
|
|
' 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 CveCuentaRetISRProveedor <> 0 Then
|
|
' CveCuenta = CveCuentaRetISRProveedor
|
|
' 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
|
|
|
|
|
|
' If ImporteMovimiento > 0 Then
|
|
' If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)) Then
|
|
' MsgError = "No se pudo insertar la póliza"
|
|
' End If
|
|
' End If
|
|
' End If
|
|
' End If
|
|
' Next
|
|
' ImporteMovimiento = 0
|
|
' End If
|
|
'Case 243 'Ret ISR x Acreditar Terceros y Arrendamiento
|
|
' If RBLContado.SelectedValue = "5" Then
|
|
' For Each rw As GridViewRow In GvCompras.Rows
|
|
' If rw.FCCheckBox("Chk").Checked Then
|
|
' If rw.DataKey("CveRetISRConcepto").ToString.ToDecimal = 2 Then
|
|
' Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
' If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
' ImporteMovimiento = rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra
|
|
' ImporteMX = ImporteMovimiento
|
|
' ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
' ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
' ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
' End If
|
|
' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
' ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
' If rw.DataKey("TipoCambio").ToString.ToDecimal > 1 Then ConceptoMovimiento += $" TC:{rw.DataKey("TipoCambio").ToString.ToDecimal} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
' 'Conta ContPAQ
|
|
' If IdCtaContRetISRProveedor > 0 Then
|
|
' IdCtaContable = IdCtaContRetISRProveedor
|
|
' 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 CveCuentaRetISRProveedor <> 0 Then
|
|
' CveCuenta = CveCuentaRetISRProveedor
|
|
' 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
|
|
|
|
' If ImporteMovimiento > 0 Then
|
|
' If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=rw.DataKey("TipoCambio").ToString.ToDecimal) Then
|
|
' MsgError = "No se pudo insertar la póliza"
|
|
' End If
|
|
' End If
|
|
' End If
|
|
' End If
|
|
' Next
|
|
' ImporteMovimiento = 0
|
|
' End If
|
|
|
|
'Case 244 'Ret ISR Acreditable Terceros y Arrendamiento
|
|
' If RBLContado.SelectedValue = "5" Then
|
|
' For Each rw As GridViewRow In GvCompras.Rows
|
|
' If rw.FCCheckBox("Chk").Checked Then
|
|
' If rw.DataKey("CveRetISRConcepto").ToString.ToDecimal = 2 Then
|
|
' Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
' If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
' ImporteMovimiento = rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra
|
|
' ImporteMX = ImporteMovimiento
|
|
' ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
' ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
' ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
' ImporteMovimiento = (rw.DataKey("RetISR").ToString.ToDecimal * PorcentajePagoCompra)
|
|
' ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
' End If
|
|
' ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
' ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
' If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
|
|
' 'Conta ContPAQ
|
|
' If IdCtaContRetISRAcreditableProveedor > 0 Then
|
|
' IdCtaContable = IdCtaContRetISRAcreditableProveedor
|
|
' 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 CveCuentaRetISRProveedor <> 0 Then
|
|
' CveCuenta = CveCuentaRetISRProveedor
|
|
' 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
|
|
|
|
|
|
' If ImporteMovimiento > 0 Then
|
|
' If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveVenta:=CveVenta, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)) Then
|
|
' MsgError = "No se pudo insertar la póliza"
|
|
' End If
|
|
' End If
|
|
' End If
|
|
' End If
|
|
' Next
|
|
' ImporteMovimiento = 0
|
|
' End If
|
|
|
|
Case 14 'Iva por Acreditar COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
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 CveMonedaVenta = 1 Then
|
|
TotalImporte = ImportePagado.ToString.ToDecimal
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal / tipoCambioPago, 2)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal * tipoCambioPago, 2)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
TotalImporte = ImportePagado.ToString.ToDecimal
|
|
End If
|
|
|
|
If TotalImporte = rw.DataKey("Saldo").ToString.ToDecimal Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("IVA").ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.DataKey("IVA").ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("IVA").ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = rw.DataKey("IVA").ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If rw.DataKey("TipoCambio").ToString.ToDecimal > 1 Then ConceptoMovimiento += $" TC:{rw.DataKey("TipoCambio").ToString.ToDecimal} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
Else
|
|
ImporteMovimiento = 0
|
|
ImporteMX = 0
|
|
End If
|
|
Else
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("IVA").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("IVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVA").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If rw.DataKey("TipoCambio").ToString.ToDecimal > 1 Then ConceptoMovimiento += $" TC:{rw.DataKey("TipoCambio").ToString.ToDecimal} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
End If
|
|
|
|
PorcentajeImpuesto = rw.DataKey("PorcentajeIVA").ToDecimal
|
|
Select Case PorcentajeImpuesto.ToString.ToDouble
|
|
Case 0.16
|
|
IdCtaContable = If(UsuarioActual.Empresa.Funcionalidad(338).ToEntero > 0, UsuarioActual.Empresa.Funcionalidad(338).ToEntero, 0)
|
|
Case 0.08
|
|
IdCtaContable = If(UsuarioActual.Empresa.Funcionalidad(340).ToEntero > 0, UsuarioActual.Empresa.Funcionalidad(340).ToEntero, 0)
|
|
End Select
|
|
|
|
If ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) And Not IdCtaContable > 0 Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaIVAxAcreditar").ToString.ToEntero
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaIVAxAcreditarSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=rw.DataKey("TipoCambio").ToString.ToDecimal, PorcentajeImpuesto:=PorcentajeImpuesto) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case 19 'Iva Acreditable COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
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 CveMonedaVenta = 1 Then
|
|
TotalImporte = ImportePagado.ToString.ToDecimal
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal / tipoCambioPago, 2)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal * tipoCambioPago, 2)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
TotalImporte = ImportePagado.ToString.ToDecimal
|
|
End If
|
|
|
|
If TotalImporte = rw.DataKey("Saldo").ToString.ToDecimal Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("IVADeducible").ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVADeducible").ToString.ToDecimal)
|
|
ImporteMX = ImporteMovimiento '* tipoCambioPago
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("IVADeducible").ToString.ToDecimal)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVADeducible").ToString.ToDecimal)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
Else
|
|
ImporteMovimiento = 0
|
|
ImporteMX = 0
|
|
End If
|
|
Else
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("IVADeducible").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVADeducible").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("IVADeducible").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVADeducible").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
End If
|
|
|
|
PorcentajeImpuesto = rw.DataKey("PorcentajeIVA").ToDecimal
|
|
Select Case PorcentajeImpuesto.ToString.ToDouble
|
|
Case 0.16
|
|
IdCtaContable = If(UsuarioActual.Empresa.Funcionalidad(339).ToEntero > 0, UsuarioActual.Empresa.Funcionalidad(339).ToEntero, 0)
|
|
Case 0.08
|
|
IdCtaContable = If(UsuarioActual.Empresa.Funcionalidad(341).ToEntero > 0, UsuarioActual.Empresa.Funcionalidad(341).ToEntero, 0)
|
|
End Select
|
|
|
|
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)("IdCuentaIVAAcreditable").ToString.ToEntero
|
|
End If
|
|
End If
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal), PorcentajeImpuesto:=PorcentajeImpuesto) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
Case 280 'Iva Acreditable No Deducible COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
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 CveMonedaVenta = 1 Then
|
|
TotalImporte = ImportePagado.ToString.ToDecimal
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal / tipoCambioPago, 2)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
TotalImporte = Math.Round(ImportePagado.ToString.ToDecimal * tipoCambioPago, 2)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
TotalImporte = ImportePagado.ToString.ToDecimal
|
|
End If
|
|
|
|
If TotalImporte = rw.DataKey("Saldo").ToString.ToDecimal Then
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("IVANoDeducible").ToString.ToDecimal
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVANoDeducible").ToString.ToDecimal)
|
|
ImporteMX = ImporteMovimiento '* tipoCambioPago
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("IVANoDeducible").ToString.ToDecimal)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVANoDeducible").ToString.ToDecimal)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
Else
|
|
ImporteMovimiento = 0
|
|
ImporteMX = 0
|
|
End If
|
|
Else
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("IVANoDeducible").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVANoDeducible").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("IVANoDeducible").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IVANoDeducible").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
|
|
End If
|
|
|
|
PorcentajeImpuesto = rw.DataKey("PorcentajeIVA").ToDecimal
|
|
Select Case PorcentajeImpuesto.ToString.ToDouble
|
|
Case 0.16
|
|
IdCtaContable = If(UsuarioActual.Empresa.Funcionalidad(339).ToEntero > 0, UsuarioActual.Empresa.Funcionalidad(339).ToEntero, 0)
|
|
Case 0.08
|
|
IdCtaContable = If(UsuarioActual.Empresa.Funcionalidad(341).ToEntero > 0, UsuarioActual.Empresa.Funcionalidad(341).ToEntero, 0)
|
|
End Select
|
|
|
|
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)("IdCuentaIVAAcreditable").ToString.ToEntero
|
|
End If
|
|
End If
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal), PorcentajeImpuesto:=PorcentajeImpuesto) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case 25 'IEPS por Acreditar COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("IEPS").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IEPS").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("IEPS").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IEPS").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * rw.DataKey("TipoCambio").ToString.ToDecimal
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditarSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=rw.DataKey("TipoCambio").ToString.ToDecimal) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case 26 'IEPS Acreditable COMPRA
|
|
If RBLContado.SelectedValue = "5" Then
|
|
For Each rw As GridViewRow In GvCompras.Rows
|
|
If rw.FCCheckBox("Chk").Checked Then
|
|
Dim PorcentajePagoCompra = rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal / rw.DataKey("Total").ToString.ToDecimal
|
|
|
|
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = rw.DataKey("IEPS").ToString.ToDecimal * PorcentajePagoCompra
|
|
ImporteMX = ImporteMovimiento
|
|
ElseIf CveMoneda = 1 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IEPS").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento '* If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 1 Then
|
|
ImporteMovimiento = (rw.DataKey("IEPS").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
ElseIf CveMoneda = 2 AndAlso CveMonedaVenta = 2 Then
|
|
ImporteMovimiento = (rw.DataKey("IEPS").ToString.ToDecimal * PorcentajePagoCompra)
|
|
ImporteMX = ImporteMovimiento * If(FuncionalidadFluctuacionImpuestos, tipoCambioPago, rw.DataKey("TipoCambio").ToString.ToDecimal)
|
|
End If
|
|
ImporteMovimiento = Math.Round(ImporteMovimiento, 2)
|
|
ImporteMX = Math.Round(ImporteMX, 2)
|
|
|
|
If ObjMov.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
|
|
If ObjMov.DtResultados.Rows.Count > 0 Then
|
|
IdCtaContable = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero
|
|
CveCuenta = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditableSIG").ToString.ToEntero
|
|
End If
|
|
End If
|
|
|
|
If ImporteMovimiento > 0 Then
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, rw.FCLiteral("LtlFolio").Text, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, -1, CveCompra:=rw.DataKey("CveCompra").ToString.ToEntero, CveProveedor:=rw.DataKey("CveProveedor").ToString.ToEntero, CvePersonal:=CvePersonal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, TipoCambio:=If(FuncionalidadFluctuacionImpuestos, rw.DataKey("TipoCambio").ToString.ToDecimal, tipoCambioPago)) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
End If
|
|
End If
|
|
Next
|
|
ImporteMovimiento = 0
|
|
End If
|
|
|
|
Case Else
|
|
ImporteMovimiento = 0
|
|
End Select
|
|
|
|
If ImporteMovimiento <> 0 Then
|
|
'Conta ContPAQ
|
|
If IdCtaContable = 0 Then
|
|
CuentasContablesInvalidas.Append("<br>" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString)
|
|
idCuentaContabilizacion = 0
|
|
End If
|
|
|
|
'Conta SIG
|
|
If CveCuenta = 0 Then
|
|
CuentasContablesInvalidasSIG.Append("<br>" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString)
|
|
CveCuentaContabilizacion = 0
|
|
End If
|
|
|
|
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteMovimiento, ReferenciaConcepto, ConceptoContable, ConceptoMovimiento, Fecha, IdCtaContable, -1, CveIE, CveVenta, -1, CveSubProyectoContabilizar, CveCliente:=CveClienteOriginal, ImporteMX:=ImporteMX, CveCuenta:=CveCuenta, CvePersonal:=CvePersonal, TipoCambio:=TimpocambioGeneral, TipoCambioPago:=tipoCambioPago, PorcentajeImpuesto:=PorcentajeImpuesto) Then
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
|
|
End If
|
|
Next
|
|
|
|
If ObjMov.ValidacionPrePolizaCuadre(CvePrePoliza, 3) Then
|
|
If ObjMov.ValorPolizaDescuadre > 0 Then
|
|
MsgError = ObjMov.MensajePolizaDescuadre
|
|
End If
|
|
End If
|
|
|
|
'Conta SIG
|
|
If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso MsgError = "" AndAlso UsuarioActual.Empresa.UsaContabilidadSIG Then
|
|
If CveCuentaContabilizacion > 0 Then
|
|
If ObjMov.ContabilizarPrePolizaSIG(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
|
|
Alert(alertaContabilizacion, ModExtensiones.TipoMensaje.MsgInformacion)
|
|
Else
|
|
Alert("Ocurrio un error al contabilizar en SIG, pongase en contacto con Soporte Técnico")
|
|
End If
|
|
Else
|
|
Alert(String.Format("No se puede contabilizar la Prepoliza en SIG debido a que las siguientes cuentas son invalidas: {0}", CuentasContablesInvalidasSIG))
|
|
End If
|
|
End If
|
|
|
|
'Conta ContPAQ
|
|
If UsuarioActual.Empresa.Funcionalidad(200) = "1" And MsgError = "" Then
|
|
If idCuentaContabilizacion > 0 Then
|
|
|
|
If ObjMov.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
|
|
IdPoliza = ObjMov.ContaIdPoliza
|
|
' Alert(alertaContabilizacion, ModExtensiones.TipoMensaje.MsgInformacion)
|
|
Else
|
|
Alert("Ocurrio un error al contabilizar, pongase en contacto con Soporte Técnico")
|
|
End If
|
|
Else
|
|
Alert(String.Format("No se puede contabilizar la Prepoliza debido a que las siguientes cuentas son invalidas: {0}", CuentasContablesInvalidas))
|
|
End If
|
|
End If
|
|
|
|
End If
|
|
Else
|
|
MsgError = "No se pudo insertar la poliza detalle"
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
Else
|
|
MsgError = "No se pudo insertar la póliza"
|
|
End If
|
|
Else
|
|
MsgError = "No se insertó el encabezado"
|
|
End If
|
|
|
|
If MsgError = "" Then
|
|
ObjIE.Commit()
|
|
|
|
|
|
StrMsg.Append("El Documento se guardó correctamente.<br/>")
|
|
'Alert("El Documento se guardó correctamente.", TipoMensaje.MsgInformacion, "self.parent.tb_remove();self.parent.location.reload();")
|
|
If TipoTransaccion = "Egs" AndAlso CveIE > 0 Then GeneraChequePDF(CveIE, UsuarioActual.Empresa)
|
|
|
|
'07-05-2018 - Timbra Complemento de pago
|
|
Dim TextoComplementoPago As String = ""
|
|
|
|
If UsuarioActual.CveEmpresa = 119 Then
|
|
|
|
StrMsg.AppendFormat("Folio <b>{0}</b><br/>", ObjIE.Folio)
|
|
|
|
End If
|
|
|
|
If RBLContado.SelectedValue = "1" And ChkComplementoPago.Checked Then
|
|
Dim SeriesPago As New List(Of String)
|
|
SeriesPago.Add(SerieFolio)
|
|
|
|
Dim CveVentas As New List(Of Integer)
|
|
CveVentas.Add(CveVenta)
|
|
|
|
TextoComplementoPago = EmitirComplementoPago(CveIE, CveVentas, SeriesPago)
|
|
|
|
StrMsg.Append($"<br/>{TextoComplementoPago}")
|
|
End If
|
|
|
|
If IdPoliza > 0 Then
|
|
StrMsg.AppendFormat("<br/><a Class=""Texto"" target='_blank' href=""/Contabilidad/RegPoliza.aspx?IdPoliza={0}"">Ver Póliza</a>", IdPoliza)
|
|
End If
|
|
|
|
Alert($"{StrMsg.ToString}<br/>", TipoMensaje.MsgInformacion, "self.parent.tb_remove();self.parent.location.reload();")
|
|
|
|
'Limpiar
|
|
'LimpiarTodo()
|
|
Else
|
|
ObjIE.RollBack()
|
|
Alert(MsgError, TipoMensaje.MsgError)
|
|
End If
|
|
|
|
ObjIE.Dispose()
|
|
ObjMov.Dispose()
|
|
ObjCliente.Dispose()
|
|
|
|
'CargaVenta(CveVenta)
|
|
'UpDatosVenta.Update()
|
|
End Sub
|
|
|
|
Private Sub LimpiarTodo()
|
|
DdlTipoTransaccion.SelectedValue = "-1"
|
|
DdlCuenta.SelectedValue = "-1"
|
|
DdlFuncionarioEmpleado.SelectedValue = "-1"
|
|
DdlIngreso.SelectedValue = "-1"
|
|
DdlDeudor.SelectedValue = "-1"
|
|
|
|
TxtFolio.Text = ""
|
|
TxtObservaciones.Text = ""
|
|
TxtImporte.Text = ""
|
|
TxtFechaDocumento.Text = Now.ToShortDateString
|
|
ChkComplementoPago.Checked = False
|
|
|
|
UpDatos.Update()
|
|
UpGuardar.Update()
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region " COMPLEMENTOS PAGO "
|
|
Private Function EmitirComplementoPago(CveIE As Integer, CveVentas As List(Of Integer), Series As List(Of String)) As String
|
|
If Not ChkComplementoPago.Checked Then
|
|
Return ""
|
|
End If
|
|
|
|
Dim Retorno As New StringBuilder
|
|
|
|
'For i = 0 To CveVentas.Count - 1
|
|
Dim ObjBancos As New ClsBancos
|
|
ObjBancos.IniciaTransacSQL()
|
|
|
|
If ObjBancos.GeneraTimbrePago(CveIE, -1, UsuarioActual, CveCliente) Then
|
|
ObjBancos.Commit()
|
|
|
|
PDFReciboDePagos(-1, -1, ObjBancos.CveComplementoPago, False)
|
|
|
|
Dim LigaDescargaXML = $"../Empresas/{UsuarioActual.CveEmpresa}/XML/Pag/{ObjBancos.ComplementoSerieFolio}.xml"
|
|
Dim LigaDescargaPDF = $"../Empresas/{UsuarioActual.CveEmpresa}/PDF/Pag/{ObjBancos.ComplementoSerieFolio}.pdf"
|
|
Retorno.AppendFormat(" Complemento de pago <strong>{0}</strong> <br>", ObjBancos.ComplementoSerieFolio)
|
|
Retorno.AppendFormat("<a class=""texto"" style='color:#337ab7' href=""/Compras/PopUpVerFactura.aspx?P={0}"" target=""_blank"">XML <i class=""fa fa-file""></i></i></a> ", Encripta(String.Format("OP=CompP&EXT=xml&SerieFolio={0}&CveComplementoPago={1}&CveIE={2}", ObjBancos.ComplementoSerieFolio, ObjBancos.CveComplementoPago, CveIE)))
|
|
Retorno.AppendFormat("<a class=""texto"" style='color:#337ab7' href=""/Compras/PopUpVerFactura.aspx?P={0}"" target=""_blank"">PDF <i class=""fa fa-ad-pdf""></i></i></i></a> ", Encripta(String.Format("OP=CompP&EXT=pdf&SerieFolio={0}&CveComplementoPago={1}&CveIE={2}", ObjBancos.ComplementoSerieFolio, ObjBancos.CveComplementoPago, CveIE)))
|
|
|
|
'Dim ResultadoMail As Integer
|
|
Dim ObjMail As New ClsSisMail()
|
|
Dim LSRutasMail As New List(Of ClsSisMail.ArchivoMail)
|
|
LSRutasMail.Add(New ClsSisMail.ArchivoMail With {.Ruta = $"{UsuarioActual.Empresa.Ruta}\XML\Pag\{ObjBancos.ComplementoSerieFolio}.xml"})
|
|
LSRutasMail.Add(New ClsSisMail.ArchivoMail With {.Ruta = $"{UsuarioActual.Empresa.Ruta}\PDF\Pag\{ObjBancos.ComplementoSerieFolio}.pdf"})
|
|
|
|
Dim Mail As String = ObjBancos.CobranzaCorreo
|
|
Dim Asunto As String = "Envío de complemento de pago"
|
|
Dim Cuerpo As String = "Complemento de Pago"
|
|
|
|
|
|
If Mail.Trim.Length > 0 Then
|
|
|
|
Try
|
|
If Not ObjMail.SendMail(UsuarioActual.Empresa, Mail, Asunto, Cuerpo, "", LSRutasMail) Then
|
|
Alert("No se pudo enviar el correo", TipoMensaje.MsgAdvertencia)
|
|
End If
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
|
|
|
|
End If
|
|
|
|
|
|
Else
|
|
Retorno.AppendFormat($" Complemento de pago <b>NO</b> generado . {ObjBancos.Mensaje}")
|
|
ObjBancos.RollBack()
|
|
End If
|
|
|
|
ObjBancos.Dispose()
|
|
' Next
|
|
Return Retorno.ToString
|
|
End Function
|
|
|
|
#End Region
|
|
|
|
|
|
End Class |