diff --git a/App_Code/ClsClientes.vb b/App_Code/ClsClientes.vb
index 6ffc5438a..2b603bb68 100644
--- a/App_Code/ClsClientes.vb
+++ b/App_Code/ClsClientes.vb
@@ -261,7 +261,7 @@ Public Class ClsClientes
End Sub
Public Function GetClientes(CveCliente As Integer, Nombre As String, Codigo As String, NombreCorto As String, RFC As String, Telefono As String, Mail As String, CveSubProyecto As Integer,
CveEmpresa As Integer, Optional Estatus As Integer = 1, Optional Notificar As String = "-1", Optional CvePrecioLista As Integer = -1, Optional CveClienteClasificacion As Integer = -1,
- Optional TipoCliente As Integer = 1, Optional CveVendedor As Integer = -1, Optional PermiteCreditoFiltro As Integer = -1) As Boolean
+ Optional TipoCliente As Integer = -1, Optional CveVendedor As Integer = -1, Optional PermiteCreditoFiltro As Integer = -1) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_ClientesGet")
diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb
index b4a14655d..1eeb43303 100644
--- a/Bancos/IE.aspx.vb
+++ b/Bancos/IE.aspx.vb
@@ -2266,15 +2266,10 @@ Partial Class Bancos_IE
Exit Sub
End If
-
-
-
Dim ObjIE As New ClsBancos()
Dim ObjMov As New ClsContabilidad(ObjIE.IniciaTransacSQL)
Dim ObjComp As New ClsCompras(ObjIE.IniciaTransacSQL)
- Dim ObjOC As New ClsOC(ObjIE.IniciaTransacSQL)
-
- ' Dim ObjContabilidad As New ClsContabilidad(ObjIE.IniciaTransacSQL)
+ Dim ObjOC As New ClsOC(ObjIE.IniciaTransacSQL)
Dim MsgError As String = ""
Dim CveConceptoContable As Integer = 30
@@ -2284,964 +2279,968 @@ Partial Class Bancos_IE
Dim CvePlantillaPoliza As Integer = 3
Dim CvePrePoliza As Integer = 0
Dim alertaContabilizacion As String = "Se enviaron correctamente las siguientes pólizas:
"
- Dim Msg As New StringBuilder
-
- If CveIE = -1 Then
-
- Dim CveCuentaDeposito As Integer = 0
- If DdlCuentaDeposito.Items.Count > 0 Then
- CveCuentaDeposito = DdlCuentaDeposito.SelectedValue.ToEntero
- End If
-
- 'OBTIENE COMPROBANTE!!
- ComprobanteIE = ""
- Dim Comprobante As String = ""
- Dim filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
- Dim filemove As String = ""
- For Each fileItem As Archivo In filesgral
- Comprobante = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
- filemove = fileItem.filename
- Next
-
-
- '*****-_- INICIA: CONFIGURACION REGISTRO -_-*****
- If CvePersonal > 0 Then
- If Opcion IsNot Nothing AndAlso Opcion.Contiene("EGSSINFACT") And DDlCheques.SelectedValue.ToEntero > 0 Then
- CveConceptoCompra = 29 'Comprobación Personal
- Else
- CveConceptoCompra = 28 'Prestamo Personal
- End If
- CveConceptoContable = 30 'Banco
- CvePlantillaPoliza = 8
- End If
-
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "DEV" Then
- If CvePersonal > 0 Then
- CveConceptoCompra = 29 'Comprobacion Personal
- CveConceptoContable = 30 'Bancos
- CvePlantillaPoliza = 9
- ElseIf CveProveedor > 0 Then
- CveConceptoCompra = 21 'Pago a Proveedor/CAncelacion Anticipos
- CveConceptoContable = 30 'Bancos
- CvePlantillaPoliza = 7
- End If
- End If
-
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "ANTC" Then
- If CveCliente > 0 Then
- CveConceptoCompra = 3 'Clientes
- CveConceptoContable = 30 'Bancos
- CvePlantillaPoliza = 12
- End If
- End If
-
- 'Cuando es Egreso sin factura, se registra una compra tipo anticipo
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "EGSCREDITO" Then
- CveConceptoCompra = 48 'Anticipo Acreedores
- CveConceptoContable = 30 'Bancos
- CveCreditoDetalle = DdlCreditoDetalle.SelectedValue.ToEntero
- Dim Estatus As Integer = 2
- If HdnCveTipoCredito.Value = "1" Then
- Estatus = 103
- 'cuando es crediproveedores es, pago a documentos por pagar
- CveConceptoCompra = 57
- End If
- ObjIE.UpdateCreditosDetalle(Estatus, CveCreditoDetalle)
-
- If HdnImporteCredito.Value.ToDouble > 0 AndAlso TxtImporte.Text.ToDouble > HdnImporteCredito.Value.ToDouble Then
- CIF = TxtImporte.Text.ToDecimal - HdnImporteCredito.Value.ToDecimal
- Else
- CIF = 0
- End If
-
- CvePlantillaPoliza = 92
-
- End If
- Dim AgregaPolizaSaldoInicial As Boolean = False
- 'Cuando es Egreso sin factura, se registra una compra tipo anticipo
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "EGSSINFACT" Then
- Select Case RBL.SelectedValue
- Case "P" 'Proveedores
- If CveProveedor > 0 Then
- CveConceptoCompra = 10 'Anticipo a proveedor
- CveConceptoContable = 30 'Pago a Proveedor
- CvePlantillaPoliza = 3
- End If
- Case "DD" ' Deudores Diversos
- If CveProveedor > 0 Then
- CveConceptoCompra = 43 'Prestamo a deudor diverso
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 6
- End If
- Case "AC" ' Acreedores Diversos
- If CveProveedor > 0 Then
- CveConceptoCompra = 42 'Prestamo a acreedor diverso
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 21
- End If
- Case "DP" ' Documentos por pagar
- If CveProveedor > 0 Then
- CveConceptoCompra = 50 'Anticipo doc por pagar
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 22
- End If
- Case "FE"
- AgregaPolizaSaldoInicial = True
- End Select
- End If
-
- 'Nuevo Formato Charlie
- If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "INGPC" Then
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 6
- Select Case RBL.SelectedValue
- Case "DD" ' Deudores Diversos
- If CveProveedor > 0 Then
- CveConceptoCompra = 37 'Prestamo a deudor diverso
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- CvePlantillaPoliza = 45
- End If
- Case "C" ' Clientes
- If CveCliente > 0 Then
- CveConceptoCompra = 66 'Anticipo doc por pagar
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- End If
- Case "AC" ' Acreedores Diversos
- If CveCliente > 0 Then
- CveConceptoCompra = 41
- CveConceptoContable = 30 'Bancos
- 'limpio el iva
- HdnProvPorIVA.Value = "0"
- End If
- End Select
- End If
-
- '*****-_- TERMINA: CONFIGURACION REGISTRO -_-*****
-
-
- Dim FolioFijo As Integer = 0
- Dim tCveMoneda As Integer = DdlMoneda.SelectedValue.ToEntero
- Dim tImporteMonedaExtranjera As Decimal = 0
- If tCveMoneda <> 1 Then tImporteMonedaExtranjera = TxtImporte.Text.ToDecimal * GlobalTipoCambio(TxtFechaDocumento.Text.Trim.ToDate).ToString.ToDecimal
- Dim PagueseA = ""
-
- If HdnCveCliente.Value.ToEntero > 0 Then
- PagueseA = DdlCliente.SelectedText.ToString()
- ElseIf HdnCveProveedor.Value.ToEntero > 0 Then
- PagueseA = DdlProveedores.SelectedText.ToString()
- ElseIf HdnCvePersonal.Value.ToEntero > 0 Then
- PagueseA = DdlPersonal.SelectedItem.ToString
- ElseIf DdlCreditoDetalle.SelectedValue.ToEntero > 0 Then
- PagueseA = String.Format("{0} {1} {2}", DdlFinanciera.SelectedItem.Text, DdlCredito.SelectedItem.Text, DdlCreditoDetalle.SelectedItem.Text)
- End If
-
- If AgregaPolizaSaldoInicial Then
- If AgregarSaldoInicial(TxtImporte.Text.ToDouble(), TxtFechaDocumento.Text.ToDateTime(), DdlMoneda.SelectedValue.ToEntero(), ObjMov) <= 0 Then
- MsgError = "No se pudo insertar la póliza de saldo inicial."
- End If
- End If
-
- If MsgError = "" Then
-
-
-
- CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero, TxtFechaDocumento.Text.Trim.ToDate, TxtFolio.Text.Trim, PagueseA, TxtImporte.Text.Trim.ToDouble, DdlMoneda.SelectedValue.ToEntero,
- TxtTipoCambio.Text.Trim.ToDouble, TxtObservaciones.Text.Trim, TxtNotificarA.Text.Trim, ChkAbonoCuenta.Checked, ChkAplicaImpuestos.Checked, -1, CvePrePoliza, Comprobante, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCuentaDeposito:=CveCuentaDeposito, CveEstatusIE:=DdlEstatusIE.SelectedValue.ToString.ToEntero, Referencia:=If(TxtReferenciaCIE.Visible, TxtReferenciaCIE.Text, "-1"), CveCuentaTarjeta:=If(DivTarjeta.Visible, DdlTarjeta.SelectedValue.ToEntero, -1))
-
- If CveIE > 0 Then
-
- If DdlTipoTransaccion.SelectedValue = "1" Then FolioFijo = ObjIE.Folio.ToEntero 'cheque
- CvePrePoliza = ObjMov.AddPrePolizas("Bancos/IE " + If(Request("Opcion") IsNot Nothing, Request("Opcion").ToString, "") + " " + RBL.SelectedValue, CvePlantillaPoliza, TxtImporte.Text.Trim.ToDouble, TxtImporte.Text.Trim.ToDouble, tCveMoneda, TxtFechaDocumento.Text.ToDate, PagueseA, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=FolioFijo, ReglaFolioPoliza:=ObjComp.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, Nothing, UsuarioActual.CveEmpresa), CveTipoPoliza:=ObjMov.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, "-1", UsuarioActual.CveEmpresa))
-
- 'valida prepoliza
- If CvePrePoliza > 0 Then
-
- If Not ObjIE.UpdateIEPrePoliza(MinFecha, "", -1, CvePrePoliza, CveIE, -1) Then
- MsgError = "Ocurrio un error al agregar la prepoliza al IE."
- End If
-
- Dim Conc As String = If(TxtObservaciones.Text = "", ObjIE.Folio, TxtObservaciones.Text)
- Dim Ref As String = If(TxtObservaciones.Text = "", ObjIE.Folio, TxtObservaciones.Text)
-
- If Comprobante <> "" Then
- ComprobanteIE = $"{CveIE}.{Comprobante}"
- End If
-
- 'GUARDA COMPROBANTE
- If filemove <> "" Then
- filemove.FilesMove(CveIE.ToString, String.Format("Empresas\{0}\IE", UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta))
- End If
-
- 'GUARDA PREPOLIZAS DETALLE [PRIMERO SON LOS CASOS ESPECIALES, AL FINAL (ELSE) LOS CASOS NORMALES] --REEMPLAZA IFs
- Select Case Opcion
- Case "DEV"
- Dim CveIEOtro As Integer = If(CveProveedor > 0 Or CvePersonal > 0, DdlIEDevolucion.SelectedValue.ToEntero, CveIE)
-
- If CveCliente > 0 AndAlso Not DivIvaIxC.Visible AndAlso TxtIvaIxC.Text.ToDouble = 0 Then
- 'RMF- CASO DONDE HAY UNA DEVOLUCION Y TENGO QUE AFECTAR LAS FACTURAS QUE SE HABIAN MARCADO COMO PAGADAS TENGO QUE REGRESARLAS A PENDIENTES
- Dim Mov As New ClsMovimientos
- If Mov.GetMovimientosIE(2, DdlIEDevolucion.SelectedValue.ToEntero, -1, Now, Now, 1, 0, UsuarioActual.CveEmpresa) Then
- Dim DtIE As DataTable = Mov.DtResultados
- For Each dr As DataRow In DtIE.Rows
-
- If MsgError = "" AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, If(dr("TipoMovto").ToString.ToEntero = 1, False, True), If(dr("CveConceptoContable").ToString.ToEntero.Contiene(66), -TxtImporte.Text.ToDecimal, dr("Importe").ToString.ToDecimal), "", dr("CveConceptoContable").ToString.ToEntero, "", Now, IDCtaBeneficiario, -1, CveIE, CveCliente:=dr("CveCliente").ToString.ToEntero, CveVenta:=dr("CveVenta").ToString.ToEntero, ImporteMX:=If(dr("CveConceptoContable").ToString.ToEntero.Contiene(66), -TxtImporte.Text.ToDecimal, -dr("Importe").ToString.ToDecimal), ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario) Then
- MsgError = "no se pudo insertar el detalle de la póliza 2"
- End If
- Next
- ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta)
-
- End If
- Mov.Dispose()
-
- 'Devolucion de INGxC Formato Charlie
- ElseIf CveCliente > 0 AndAlso DivIvaIxC.Visible Then
-
- Dim Mov As New ClsMovimientos
- 'INGxC
- ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal), Ref, 66, Conc, Now, IDCtaContable, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-(TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal), ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta)
-
- If TxtIvaIxC.Text.ToDouble > 0 Then
- 'Iva
- ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -TxtIvaIxC.Text.ToDecimal, Ref, 61, Conc, Now, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
- End If
-
- 'Bancos
- ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -TxtImporte.Text.ToDecimal, Ref, 30, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario)
- Mov.Dispose()
-
- Else
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta) Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, TxtImporte.Text.ToDecimal, Ref, CveConceptoCompra, Conc, Now, IDCtaBeneficiario, -1, CveIE:=If(CveIEOtro < 0, CveIE, CveIEOtro), CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario) Then
- MsgError = "no se pudo insertar el detalle de la póliza 2"
- End If
- Else
- MsgError = "no se pudo insertar el detalle de la póliza"
- End If
-
- End If
-
-
- Case "INGPC"
- Dim ConceptoContable As Integer
- Dim TipoMovimiento As Boolean
- Dim importeMovimiento As Decimal
- Dim FechaMovimiento As Date = Now
- Dim Concepto As String = ""
- Dim Referencia As String = PagueseA
-
- Dim importeMX As Decimal
- Dim Multiplicador As Integer
-
- If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
-
- For Each Row As DataRow In ObjMov.DtResultados.Rows
-
- ConceptoContable = Row("CveConcepto").ToString.ToEntero
- TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
- importeMovimiento = 0
- Multiplicador = (Row("Multiplicador").ToString.ToEntero)
- Concepto = ObjMov.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, PagueseA, "", ObjIE.Folio)
-
- Select Case ConceptoContable
-
- Case 10
- If RBL.SelectedValue = "P" AndAlso CveProveedor > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 28
- If RBL.SelectedValue = "FE" AndAlso CvePersonal > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 37
- If RBL.SelectedValue = "DD" AndAlso CveProveedor > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 41
- If RBL.SelectedValue = "AC" AndAlso CveProveedor > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 46
-
- If TxtInteresMoratorio.Text.ToDecimal > 0 Then
- importeMovimiento = TxtInteresMoratorio.Text.ToDecimal
- importeMX = importeMovimiento
- Else
- importeMovimiento = 0
- importeMX = 0
- End If
-
-
- Case 50
- If RBL.SelectedValue = "DP" AndAlso CveProveedor > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- End If
-
- Case 66
- If RBL.SelectedValue = "C" AndAlso CveCliente > 0 Then
- importeMovimiento = TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal
- importeMX = importeMovimiento
-
- 'Agregamos el IVA
- If DivIvaIxC.Visible AndAlso TxtIvaIxC.Text.ToDecimal <> 0 Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtIvaIxC.Text.ToDecimal, Concepto, 61, Concepto, FechaMovimiento, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
- End If
- If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
- 'Agregamos complementaria
- Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 226, Concepto, FechaMovimiento, IDCtaBeneficiarioComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=0) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
-
- End If
-
- End If
-
- Case 30
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
-
- If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
- 'Agregamos complementaria
- Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 204, Concepto, FechaMovimiento, IDCtaContableComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
-
- End If
-
- End Select
-
- If importeMovimiento <> 0 Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, If(ConceptoContable = 30, IDCtaContable, IDCtaBeneficiario), -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=importeMovimiento, ImporteME:=tImporteMonedaExtranjera, TipoCambio:=TxtTipoCambio.Text.ToDecimal, CveCuenta:=If(ConceptoContable = 30, CveCuentaConta, CveCuentaBeneficiario)) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
- End If
-
- Next
-
- End If
-
-
- Case "DevDinV"
- Dim IdCtaContableAplicar = -1
- Dim ImporteAplicar = 0.0D
- Dim ImporteAplicarMN = 0.0D
- Dim ImporteAplicarME = 0.0D
- Dim ReferenciaAplicar = ObjIE.Folio
- Dim ConceptoAplicar = $"Devolución al cliente {PagueseA} {TxtImporte.Text} NC:{SerieFolioDevDin}"
-
- ImporteAplicar = TxtImporte.Text.ToDecimal
- ImporteAplicarME = ImporteAplicar
-
- 'CONSIDERA COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- ImporteAplicarMN = ImporteAplicar
- Else
- ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
- End If
-
- 'BANCOS
- IdCtaContableAplicar = If(IDCtaContable > 0, IDCtaContable, 0)
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, ImporteAplicar, ReferenciaAplicar, 30, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos de devolución"
- Exit Select
- End If
-
- 'BANCOS COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)) - ImporteAplicar).RoundSQL()
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, ImporteAplicar, ReferenciaAplicar, 204, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
- End If
-
- 'CANCELA NC
- IdCtaContableAplicar = IDCtaBeneficiario
- ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(ImporteAplicar), ReferenciaAplicar, 12, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=-(ImporteAplicarMN), ImporteME:=ImporteAplicarME) Then
- MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
- Exit Select
- End If
-
- 'IMPUESTOS
- If ObjMov.GetPrePolizasDetalle(CvePrePolizaDevDin) Then
- Dim PorcentajePagoDevDin = (TxtImporte.Text.ToDecimal / ImporteOriginalDevDin).RoundSQL(6)
- Dim CveConceptoContableAplciar = -1
- Dim TipoMovtoAplicar = False
-
- For Each Dr As DataRow In ObjMov.DtResultados.FiltraParametros("CveConceptoContable IN (13,8,9,38)").Rows
- CveConceptoContableAplciar = Dr("CveConceptoContable").ToString.ToEntero
- TipoMovtoAplicar = Not CBool(Dr("TipoMovto").ToString)
- ImporteAplicar = (Dr("Importe").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
- ImporteAplicarMN = (Dr("ImporteMN").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
- ImporteAplicarME = (Dr("ImporteME").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
- IdCtaContableAplicar = Dr("IdCtaContable").ToString.ToEntero
-
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, ImporteAplicar, ReferenciaAplicar, CveConceptoContableAplciar, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME) Then
- Select Case CveConceptoContableAplciar
- Case 13
- CveConceptoContableAplciar = 61
- Case 8
- CveConceptoContableAplciar = 62
- Case 9
- CveConceptoContableAplciar = 63
- Case 38
- CveConceptoContableAplciar = 39
- End Select
- TipoMovtoAplicar = Not TipoMovtoAplicar
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, ImporteAplicar, ReferenciaAplicar, CveConceptoContableAplciar, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME) Then
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- Exit Select
- End If
- Else
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- Exit Select
- End If
-
- Next
- End If
-
- Case "DevDinC"
- 'asdasdasd
- 'asdasdasdasd
- Dim IdCtaContableAplicar = -1
- Dim ImporteAplicar = 0.0D
- Dim ImporteAplicarMN = 0.0D
- Dim ImporteAplicarME = 0.0D
- Dim ReferenciaAplicar = ObjIE.Folio
-
- Dim ConceptoAplicar = $"Devolución de Proveedor {PagueseA} {TxtImporte.Text} NC:{SerieFolioDeCDin}"
-
- ImporteAplicar = TxtImporte.Text.ToDecimal
- ImporteAplicarME = ImporteAplicar
-
-
- 'CONSIDERA COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- ImporteAplicarMN = ImporteAplicar
- Else
- ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
- End If
-
- Dim TCCompra As Decimal = 1
- Dim TCDocumento As Decimal = 1
-
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
-
- TCCompra = GlobalTipoCambio(FechaCompra).ToDecimal
- TCDocumento = GlobalTipoCambio(TxtFechaDocumento.Text.ToDate).ToDecimal
-
- If TCCompra <= 0 Then
- Alert("No se pudo obtener el tipo de cambio de la nota de crédito.", TipoMensaje.MsgAdvertencia)
- End If
-
- If TCCompra <= 0 Then
- Alert("No se pudo obtener el tipo de cambio del documentpo.", TipoMensaje.MsgAdvertencia)
- End If
-
- End If
-
-
-
- 'BANCOS
- IdCtaContableAplicar = If(IDCtaContable > 0, IDCtaContable, 0)
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, ImporteAplicar, ReferenciaAplicar, 30, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta, TipoCambio:=TCDocumento) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos de devolución"
- Exit Select
- End If
-
-
- 'BANCOS COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TCDocumento)) - ImporteAplicar).RoundSQL()
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, ImporteAplicar, ReferenciaAplicar, 204, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta, TipoCambio:=TCDocumento) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
- End If
-
- 'CANCELA NC
- IdCtaContableAplicar = IDCtaBeneficiario
- ImporteAplicarMN = ImporteAplicar ' (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, (ImporteAplicar), ReferenciaAplicar, 18, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=(ImporteAplicarMN), ImporteME:=ImporteAplicarME, TipoCambio:=TCCompra) Then
- MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
- Exit Select
- End If
-
-
- 'NC COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
-
- ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TCCompra)) - ImporteAplicar).RoundSQL()
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -(ImporteAplicar), ReferenciaAplicar, 201, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-(ImporteAplicarMN), ImporteME:=-(ImporteAplicarME), CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
-
- End If
-
- If TCCompra <> TCDocumento Then
-
- Dim DiferenciaTC As Decimal = TCCompra - TCDocumento
-
- Dim DiferenciaImportes As Decimal = Math.Abs((ImporteAplicar * TCCompra) - (ImporteAplicar * TCDocumento))
-
- If DiferenciaTC < 0 Then
- '64
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaImportes, ReferenciaAplicar, 64, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaGananciaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
- MsgError = "Ocurrió un error al registrar el asiento de ganancia cambiaria"
- Exit Select
- End If
-
- Else
- '65
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, DiferenciaImportes, ReferenciaAplicar, 65, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
- MsgError = "Ocurrió un error al registrar el asiento de perdidada cfambiaria"
- Exit Select
- End If
-
- End If
-
-
-
- End If
-
- 'IMPUESTOS
-
- Dim PorcentajePagoDevDin = (TxtImporte.Text.ToDecimal / ImporteOriginalDevDin).RoundSQL(6)
- Dim CveConceptoContableAplciar = -1
- Dim TipoMovtoAplicar = False
-
-
- Dim ObjCompras As New ClsCompras()
- If ObjCompras.GetCompras(CveCompraDeCDin, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then
-
- Dim dr As DataRow = ObjCompras.DtResultados.Rows(0)
- If dr IsNot Nothing Then
-
- Dim CveMonedaDev As Integer = dr("CveMoneda").ToString.ToEntero
- Dim TotalCompraDev As Decimal = dr("Total").ToString.ToDecimal
-
- Dim IVADev As Decimal = dr("IVA").ToString.ToDecimal
- Dim IEPSDev As Decimal = dr("IEPS").ToString.ToDecimal
- PorcentajeCompraDevDinC = ObjCompras.DtResultados.Rows(0)("PorcentajeIVA").ToString.ToDecimal
-
- Dim DTCuentas As DataTable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeCompraDevDinC)
- Dim CveCuentaIVAxAcreditarDevDinC = 0
- Dim CveCuentaIVAAcreditableDevDinC = 0
- Dim IdCtaIVAXAcreditarDevDinC = DTCuentas.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
- Dim IdCtaIVAAcreditableDevDinC = DTCuentas.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
-
-
- Dim IVADevMN As Decimal = 0
- Dim IEPSDevMN As Decimal = 0
-
-
- Dim PorcentajeDevolucion As Decimal = ((TxtImporte.Text.ToDecimal * 100D / TotalCompraDev) / 100).RoundSQL(2)
-
- IVADev = Math.Round(IVADev * PorcentajeDevolucion, 2)
- IEPSDev = Math.Round(IEPSDev * PorcentajeDevolucion, 2)
-
- Dim CveCuentaDevolucionIMPUESTOS As Integer = -1
- Dim IdCtaIVADevolucionIMPUESTOS As Integer = -1
-
-
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- IVADevMN = IVADev
- IEPSDevMN = IEPSDev
- Else
- IVADevMN = (IVADev * If(CveMonedaDev = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL(2)
- IEPSDevMN = (IEPSDev * If(CveMonedaDev = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL(2)
- End If
-
-
- Dim ErrorDevolucionImpuestos As Boolean = False
-
- If IVADev > 0 Then
-
- CveCuentaDevolucionIMPUESTOS = CveCuentaIVAxAcreditarDevDinC
- IdCtaIVADevolucionIMPUESTOS = IdCtaIVAXAcreditarDevDinC
-
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovtoAplicar, -IVADev, ReferenciaAplicar, 14, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
-
- CveCuentaDevolucionIMPUESTOS = CveCuentaIVAAcreditableDevDinC
- IdCtaIVADevolucionIMPUESTOS = IdCtaIVAAcreditableDevDinC
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IVADev, ReferenciaAplicar, 19, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- ErrorDevolucionImpuestos = True
- End If
- Else
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- ErrorDevolucionImpuestos = True
-
- End If
- End If
-
-
- If IEPSDev > 0 Then
- 'Dim ObjContabilidad As New ClsContabilidad
- If ObjMov.GetRetCuenta(25, UsuarioActual.CveEmpresa) Then
- Try
- CveCuentaDevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditarSIG").ToString.ToEntero
- IdCtaIVADevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero
-
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IEPSDev, ReferenciaAplicar, 25, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IEPSDevMN, ImporteME:=-IEPSDev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
-
- If ObjMov.GetRetCuenta(26, UsuarioActual.CveEmpresa) Then
- Try
- CveCuentaDevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditableSIG").ToString.ToEntero
- IdCtaIVADevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IEPSDev, ReferenciaAplicar, 26, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IEPSDevMN, ImporteME:=-IEPSDev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- ErrorDevolucionImpuestos = True
- End If
-
-
- Catch ex As Exception
- Alert("Se presento un error al obtener las cuentas de IEPS acreditable.")
- ErrorDevolucionImpuestos = True
- End Try
-
- End If
-
- Else
- MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
- ErrorDevolucionImpuestos = True
- End If
-
- Catch ex As Exception
- Alert("Se presento un error al obtener las cuentas de IEPS acreditable.")
- ErrorDevolucionImpuestos = True
- End Try
- End If
- End If
-
- If ErrorDevolucionImpuestos Then
- MsgError = MsgError & " Error en devolución compra."
- End If
-
-
- End If
- End If
-
-
-
- Case "EGSCREDITO"
-
- Dim ConceptoContable As Integer
- Dim TipoMovimiento As Boolean
- Dim importeMovimiento As Decimal
- Dim FechaMovimiento As Date = Now
- Dim Concepto As String = ""
- Dim Referencia As String = PagueseA
-
- Dim importeMX As Decimal
- Dim Multiplicador As Integer
-
- If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
-
- For Each Row As DataRow In ObjMov.DtResultados.Rows
-
- ConceptoContable = Row("CveConcepto").ToString.ToEntero
- TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
- importeMovimiento = 0
- Multiplicador = (Row("Multiplicador").ToString.ToEntero)
- Concepto = ObjMov.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, PagueseA, "", ObjIE.Folio)
-
- Select Case ConceptoContable
-
- Case 30
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
- If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
- 'Agregamos complementaria
- Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
-
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 204, Concepto, FechaMovimiento, IDCtaContableComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
- End If
- Case 42
-
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
-
-
-
- Case 46
- If TxtInteresMoratorio.Text.ToDecimal > 0 Then
- importeMovimiento = TxtInteresMoratorio.Text.ToDecimal
- importeMX = importeMovimiento
- Else
- importeMovimiento = 0
- importeMX = 0
- End If
- Case 48
-
- importeMovimiento = TxtImporte.Text.ToDecimal
- importeMX = importeMovimiento
-
- End Select
-
- If importeMovimiento <> 0 Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, If(ConceptoContable = 30, IDCtaContable, IDCtaBeneficiario), -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=importeMovimiento, ImporteME:=tImporteMonedaExtranjera, TipoCambio:=TxtTipoCambio.Text.ToDecimal, CveCuenta:=If(ConceptoContable = 30, CveCuentaConta, CveCuentaBeneficiario)) Then
- MsgError = "Ocurrió un error al registrar el asiento del ingreso."
- End If
- End If
-
- Next
- End If
-
- Case Else
- Dim TipoMovimiento As Boolean = True
-
- If Opcion.Contiene("ANTC") Then
- TipoMovimiento = False
- End If
-
- If CveConceptoCompra = 10 AndAlso DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- IDCtaBeneficiario = IdCtaAnticipoExtranjera
- CveCuentaConta = 0
- End If
-
- 'MOVIMIENTOS EGRESOS
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
- Dim IVA As Decimal = 0 ' TxtImporte.Text.ToDouble * HdnProvPorIVA.Value.ToDouble
- If ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, TxtImporte.Text.ToDecimal - IVA - CIF, Ref, CveConceptoCompra, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DdlIEAcreedor.SelectedValue.ToEntero) Then
- If IVA > 0 AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, IVA, Ref, 19, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
- MsgError = "Detalle"
- End If
- 'intereses pagados
- If CIF > 0 AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, CIF, Ref, 46, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=CIF, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
- MsgError = "Detalle"
- End If
- Else
- MsgError = "no se pudo insertar el detalle de la póliza2"
- End If
- Else
- MsgError = "no se pudo insertar el detalle de la póliza"
- End If
-
- 'BANCOS COMPLEMENTARIA
- If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
- Dim ImporteAplicar As Decimal = TxtImporte.Text.ToDecimal
- Dim ImporteAplicarMN = (ImporteAplicar * TxtTipoCambio.Text.ToDecimal - ImporteAplicar).RoundSQL()
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteAplicar, Ref, 204, Conc, Now, IDCtaContableComplementaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicar, CveCuenta:=CveCuentaConta, TipoCambio:=TxtTipoCambio.Text.ToDecimal) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
-
- If CveConceptoCompra = 10 Then
- If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, ImporteAplicar, Ref, 266, Conc, Now, IdCtaAnticipoComplementaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicar, CveCuenta:=0, TipoCambio:=TxtTipoCambio.Text.ToDecimal) Then
- MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
- End If
- End If
-
-
- End If
-
-
-
- If Opcion.Contiene("EGSSINFACT") AndAlso CveSolicitudViatico > 0 AndAlso MsgError = "" Then
- If Not ObjIE.UpdateSolicitudesViaticosIE(CveSolicitudViatico, CveIE) Then
- MsgError = "Ocurrió un error al vincular el egreso con la solicitud de viatico."
- End If
- End If
-
- End Select
-
- 'El movimiento 1 es el de Venta
- 'Conta SIG
- If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso MsgError = "" AndAlso UsuarioActual.Empresa.UsaContabilidadSIG Then
- If CveCuentaBeneficiario > 0 And CveCuentaConta > 0 Then
- If ObjMov.ContabilizarPrePolizaSIG(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
- IDPoliza = ObjMov.ContaIdPoliza
- Else
- Alert("Ocurrio un error al contabilizar en SIG, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
- End If
- Else
- If CveCuentaConta < 1 Then
- Alert("No se puede contabilizar la Prepoliza en SIG debido a que la cuenta de Bancos es invalida", TipoMensaje.MsgAdvertencia)
- End If
- If CveCuentaBeneficiario < 1 Then
- Alert("No se puede contabilizar la Prepoliza en SIG debido a que las cuenta del Beneficiario es invalida", TipoMensaje.MsgAdvertencia)
- End If
- End If
- End If
-
- 'Conta ContPAQ
- If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso MsgError = "" Then
- If IDCtaBeneficiario > 0 And IDCtaContable > 0 Then
- If ObjMov.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
- IDPoliza = ObjMov.ContaIdPoliza
- 'Alert(alertaContabilizacion & ObjMov.AlertaMensaje, ModExtensiones.TipoMensaje.MsgInformacion)
- Else
- Alert("Ocurrio un error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
- End If
- Else
- If IDCtaContable < 1 Then
- Alert("No se puede contabilizar la Prepoliza debido a que la cuenta de Bancos es invalida", TipoMensaje.MsgAdvertencia)
- End If
- If IDCtaBeneficiario < 1 Then
- Alert("No se puede contabilizar la Prepoliza debido a que las cuenta del Beneficiario es invalida", TipoMensaje.MsgAdvertencia)
- End If
- End If
- End If
-
- If UsuarioActual.Empresa.UsaAC Then
- Dim ConceptoRenglon, Referencia As String
- Dim FolioPoliza As Integer
- Dim Fecha As Date = TxtFechaDocumento.Text.ToDate
- Dim TipoChq As String = ""
- Dim Total As Double = TxtImporte.Text.ToDouble
-
- Dim Conta As New ClsContPAQi(UsuarioActual.Empresa)
- Conta.IniciaTransacSQL()
-
- If DdlTipoTransaccion.SelectedValue = "1" Then TipoChq = "CHQ"
- ConceptoRenglon = String.Format("Anticipo {0}", PagueseA)
-
- IDPoliza = Conta.AddPoliza(2, ConceptoRenglon, Total, Total, UsuarioActual.CveUsuario, Fecha, ObjIE.Folio, TipoChq)
-
- If IDPoliza > 0 Then
- FolioPoliza = Conta.Folio
- Referencia = ObjIE.Folio
- ConceptoRenglon = String.Format("Anticipo {0} {1}", PagueseA, TxtObservaciones.Text)
-
- Total = TxtImporte.Text.ToDouble
-
- If Not Conta.AddMovimiento(IDPoliza, IDCtaContable, True, Total, Referencia, ConceptoRenglon, 0, Fecha, "") Then MsgError = "No se insertó el movimiento"
-
- If Not Conta.AddMovimiento(IDPoliza, IDCtaBeneficiario, False, Total, Referencia, ConceptoRenglon, 0, Fecha, "") Then MsgError = "No se insertó el movimiento"
-
- Else
- MsgError = "No se insertó el encabezado"
- End If
-
- If MsgError = "" Then
- Conta.Commit()
-
- Conta.AjustaPoliza(IDPoliza)
- 'actualizar la conta del IE
- ObjIE.UpdateIEPrePoliza(Fecha, FolioPoliza.ToString, IDPoliza, CvePrePoliza, CveIE, 0)
- Else
- Conta.RollBack()
- IDPoliza = 0
- End If
-
- Conta.Dispose()
- End If
-
- 'Notificación de Pago
- If TxtNotificarA.Text.Trim <> "" Then
- NotificacionPago(CveIE, TxtNotificarA.Text.Trim)
- End If
-
- Else
- MsgError = "No se pudo insertar la póliza"
- End If
-
- Else
- MsgError = "No se insertó el encabezado"
- End If
-
- End If
-
- Else
- Msg.Append("El Documento se guardó correctamente.")
-
- End If
-
- 'SOLICITUD DE ANTICIPO OC
- If MsgError = "" Then
- MsgError = GuardaSolicitudAnticipoOC(ObjOC)
- End If
-
- If MsgError = "" Then
- 'VIATICOS
- If ChkAplicaViatico.Checked Then
- Dim Retorno As String = TimbrarNomina12(CvePersonal)
- If Retorno <> "" Then MsgError = $"{MsgError} {Retorno}" : Msg.Clear() : CveIE = -1
- If Retorno <> "" Then
- Alert(Retorno, TipoMensaje.MsgError)
- End If
- End If
- End If
-
- If MsgError = "" Then
- If ObjMov.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then
- If ObjMov.ValorPolizaDescuadre > 0 Then
- ' MsgError = ObjMov.MensajePolizaDescuadre
- GuardaLogAD($"Bancos/IE | Error:{ObjMov.MensajePolizaDescuadre} Diferencia:{ObjMov.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
- End If
- Else
- MsgError = "No se pudo validar la prepoliza de cuadre."
- End If
- End If
-
- If MsgError = "" Then
- 'IMPRIME CHEQUE
- 'GeneraChequePDF(CveIE, UsuarioActual.Empresa, IDPoliza)
- If Msg.ToString = "" Then
- Msg.Append("El Documento se guardo correctamente")
- End If
- Dim Archivo As System.IO.FileInfo = Nothing
- 'VERIFICA SI EXISTE EL FORMATO
- If DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(2, 8, 9) Then
- Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/Transferencia.rdlc", UsuarioActual.Empresa.Ruta))
- ElseIf DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(1) Then
- Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/CHQ-{1}.rdlc", UsuarioActual.Empresa.Ruta, DdlCuenta.SelectedValue.ToEntero))
- If Not Archivo.Exists Then
- Archivo = New System.IO.FileInfo(String.Format("{0}\Empresas\Grales\Formatos\CHQ.rdlc", AppDomain.CurrentDomain.BaseDirectory))
- End If
- ElseIf DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(6) And UsuarioActual.CveEmpresa = 72 Then
- Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/ComprobanteEgreso.rdlc", UsuarioActual.Empresa.Ruta, DdlCuenta.SelectedValue.ToEntero))
- End If
-
- If Archivo IsNot Nothing Then
- If Archivo.Exists Then
- Msg.AppendFormat("
{1} ", Encripta(String.Format("OP=IECHEQUE&CVEIE={0}", CveIE)), String.Format("Imprimir {0}", DdlTipoTransaccion.SelectedItem))
- End If
- End If
-
- If IDPoliza > 0 Then
- Msg.AppendFormat("
Ver Póliza", IDPoliza)
- End If
-
- 'AUTO DESCARGAR PDF PARA COMPU
- If UsuarioActual.CveEmpresa.Contiene(72, 1, 2) And CveSolicitudViatico > 0 Then
- If DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(1, 2, 6, 8, 9) Then
- RegistraScript($"window.location.href = '/Compras/PopUpVerFactura.aspx?P={Encripta(String.Format("OP=IE&CVEIE={0}", CveIE))}'", String.Format("Imprimir {0}", DdlTipoTransaccion.SelectedItem))
- End If
- End If
- ObjIE.Commit()
-
- Else
- ObjIE.RollBack()
+ Dim Msg As New StringBuilder
+
+ Try
+ If CveIE = -1 Then
+
+ Dim CveCuentaDeposito As Integer = 0
+ If DdlCuentaDeposito.Items.Count > 0 Then
+ CveCuentaDeposito = DdlCuentaDeposito.SelectedValue.ToEntero
+ End If
+
+ 'OBTIENE COMPROBANTE!!
+ ComprobanteIE = ""
+ Dim Comprobante As String = ""
+ Dim filesgral As List(Of Archivo) = Anexo.getfiles().Archivos
+ Dim filemove As String = ""
+ For Each fileItem As Archivo In filesgral
+ Comprobante = IO.Path.GetExtension(String.Format("{0}Temp\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "")
+ filemove = fileItem.filename
+ Next
+
+
+ '*****-_- INICIA: CONFIGURACION REGISTRO -_-*****
+ If CvePersonal > 0 Then
+ If Opcion IsNot Nothing AndAlso Opcion.Contiene("EGSSINFACT") And DDlCheques.SelectedValue.ToEntero > 0 Then
+ CveConceptoCompra = 29 'Comprobación Personal
+ Else
+ CveConceptoCompra = 28 'Prestamo Personal
+ End If
+ CveConceptoContable = 30 'Banco
+ CvePlantillaPoliza = 8
+ End If
+
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "DEV" Then
+ If CvePersonal > 0 Then
+ CveConceptoCompra = 29 'Comprobacion Personal
+ CveConceptoContable = 30 'Bancos
+ CvePlantillaPoliza = 9
+ ElseIf CveProveedor > 0 Then
+ CveConceptoCompra = 21 'Pago a Proveedor/CAncelacion Anticipos
+ CveConceptoContable = 30 'Bancos
+ CvePlantillaPoliza = 7
+ End If
+ End If
+
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "ANTC" Then
+ If CveCliente > 0 Then
+ CveConceptoCompra = 3 'Clientes
+ CveConceptoContable = 30 'Bancos
+ CvePlantillaPoliza = 12
+ End If
+ End If
+
+ 'Cuando es Egreso sin factura, se registra una compra tipo anticipo
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "EGSCREDITO" Then
+ CveConceptoCompra = 48 'Anticipo Acreedores
+ CveConceptoContable = 30 'Bancos
+ CveCreditoDetalle = DdlCreditoDetalle.SelectedValue.ToEntero
+ Dim Estatus As Integer = 2
+ If HdnCveTipoCredito.Value = "1" Then
+ Estatus = 103
+ 'cuando es crediproveedores es, pago a documentos por pagar
+ CveConceptoCompra = 57
+ End If
+ ObjIE.UpdateCreditosDetalle(Estatus, CveCreditoDetalle)
+
+ If HdnImporteCredito.Value.ToDouble > 0 AndAlso TxtImporte.Text.ToDouble > HdnImporteCredito.Value.ToDouble Then
+ CIF = TxtImporte.Text.ToDecimal - HdnImporteCredito.Value.ToDecimal
+ Else
+ CIF = 0
+ End If
+
+ CvePlantillaPoliza = 92
+
+ End If
+ Dim AgregaPolizaSaldoInicial As Boolean = False
+ 'Cuando es Egreso sin factura, se registra una compra tipo anticipo
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "EGSSINFACT" Then
+ Select Case RBL.SelectedValue
+ Case "P" 'Proveedores
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 10 'Anticipo a proveedor
+ CveConceptoContable = 30 'Pago a Proveedor
+ CvePlantillaPoliza = 3
+ End If
+ Case "DD" ' Deudores Diversos
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 43 'Prestamo a deudor diverso
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 6
+ End If
+ Case "AC" ' Acreedores Diversos
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 42 'Prestamo a acreedor diverso
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 21
+ End If
+ Case "DP" ' Documentos por pagar
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 50 'Anticipo doc por pagar
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 22
+ End If
+ Case "FE"
+ AgregaPolizaSaldoInicial = True
+ End Select
+ End If
+
+ 'Nuevo Formato Charlie
+ If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString = "INGPC" Then
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 6
+ Select Case RBL.SelectedValue
+ Case "DD" ' Deudores Diversos
+ If CveProveedor > 0 Then
+ CveConceptoCompra = 37 'Prestamo a deudor diverso
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ CvePlantillaPoliza = 45
+ End If
+ Case "C" ' Clientes
+ If CveCliente > 0 Then
+ CveConceptoCompra = 66 'Anticipo doc por pagar
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ End If
+ Case "AC" ' Acreedores Diversos
+ If CveCliente > 0 Then
+ CveConceptoCompra = 41
+ CveConceptoContable = 30 'Bancos
+ 'limpio el iva
+ HdnProvPorIVA.Value = "0"
+ End If
+ End Select
+ End If
+
+ '*****-_- TERMINA: CONFIGURACION REGISTRO -_-*****
+
+
+ Dim FolioFijo As Integer = 0
+ Dim tCveMoneda As Integer = DdlMoneda.SelectedValue.ToEntero
+ Dim tImporteMonedaExtranjera As Decimal = 0
+ If tCveMoneda <> 1 Then tImporteMonedaExtranjera = TxtImporte.Text.ToDecimal * GlobalTipoCambio(TxtFechaDocumento.Text.Trim.ToDate).ToString.ToDecimal
+ Dim PagueseA = ""
+
+ If HdnCveCliente.Value.ToEntero > 0 Then
+ PagueseA = DdlCliente.SelectedText.ToString()
+ ElseIf HdnCveProveedor.Value.ToEntero > 0 Then
+ PagueseA = DdlProveedores.SelectedText.ToString()
+ ElseIf HdnCvePersonal.Value.ToEntero > 0 Then
+ PagueseA = DdlPersonal.SelectedItem.ToString
+ ElseIf DdlCreditoDetalle.SelectedValue.ToEntero > 0 Then
+ PagueseA = String.Format("{0} {1} {2}", DdlFinanciera.SelectedItem.Text, DdlCredito.SelectedItem.Text, DdlCreditoDetalle.SelectedItem.Text)
+ End If
+
+ If AgregaPolizaSaldoInicial Then
+ If AgregarSaldoInicial(TxtImporte.Text.ToDouble(), TxtFechaDocumento.Text.ToDateTime(), DdlMoneda.SelectedValue.ToEntero(), ObjMov) <= 0 Then
+ MsgError = "No se pudo insertar la póliza de saldo inicial."
+ End If
+ End If
+
+ If MsgError = "" Then
+
+
+
+ CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero, TxtFechaDocumento.Text.Trim.ToDate, TxtFolio.Text.Trim, PagueseA, TxtImporte.Text.Trim.ToDouble, DdlMoneda.SelectedValue.ToEntero,
+ TxtTipoCambio.Text.Trim.ToDouble, TxtObservaciones.Text.Trim, TxtNotificarA.Text.Trim, ChkAbonoCuenta.Checked, ChkAplicaImpuestos.Checked, -1, CvePrePoliza, Comprobante, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCuentaDeposito:=CveCuentaDeposito, CveEstatusIE:=DdlEstatusIE.SelectedValue.ToString.ToEntero, Referencia:=If(TxtReferenciaCIE.Visible, TxtReferenciaCIE.Text, "-1"), CveCuentaTarjeta:=If(DivTarjeta.Visible, DdlTarjeta.SelectedValue.ToEntero, -1))
+
+ If CveIE > 0 Then
+
+ If DdlTipoTransaccion.SelectedValue = "1" Then FolioFijo = ObjIE.Folio.ToEntero 'cheque
+ CvePrePoliza = ObjMov.AddPrePolizas("Bancos/IE " + If(Request("Opcion") IsNot Nothing, Request("Opcion").ToString, "") + " " + RBL.SelectedValue, CvePlantillaPoliza, TxtImporte.Text.Trim.ToDouble, TxtImporte.Text.Trim.ToDouble, tCveMoneda, TxtFechaDocumento.Text.ToDate, PagueseA, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=FolioFijo, ReglaFolioPoliza:=ObjComp.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, Nothing, UsuarioActual.CveEmpresa), CveTipoPoliza:=ObjMov.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, "-1", UsuarioActual.CveEmpresa))
+
+ 'valida prepoliza
+ If CvePrePoliza > 0 Then
+
+ If Not ObjIE.UpdateIEPrePoliza(MinFecha, "", -1, CvePrePoliza, CveIE, -1) Then
+ MsgError = "Ocurrio un error al agregar la prepoliza al IE."
+ End If
+
+ Dim Conc As String = If(TxtObservaciones.Text = "", ObjIE.Folio, TxtObservaciones.Text)
+ Dim Ref As String = If(TxtObservaciones.Text = "", ObjIE.Folio, TxtObservaciones.Text)
+
+ If Comprobante <> "" Then
+ ComprobanteIE = $"{CveIE}.{Comprobante}"
+ End If
+
+ 'GUARDA COMPROBANTE
+ If filemove <> "" Then
+ filemove.FilesMove(CveIE.ToString, String.Format("Empresas\{0}\IE", UsuarioActual.CveEmpresa, UsuarioActual.Empresa.Ruta))
+ End If
+
+ 'GUARDA PREPOLIZAS DETALLE [PRIMERO SON LOS CASOS ESPECIALES, AL FINAL (ELSE) LOS CASOS NORMALES] --REEMPLAZA IFs
+ Select Case Opcion
+ Case "DEV"
+ Dim CveIEOtro As Integer = If(CveProveedor > 0 Or CvePersonal > 0, DdlIEDevolucion.SelectedValue.ToEntero, CveIE)
+
+ If CveCliente > 0 AndAlso Not DivIvaIxC.Visible AndAlso TxtIvaIxC.Text.ToDouble = 0 Then
+ 'RMF- CASO DONDE HAY UNA DEVOLUCION Y TENGO QUE AFECTAR LAS FACTURAS QUE SE HABIAN MARCADO COMO PAGADAS TENGO QUE REGRESARLAS A PENDIENTES
+ Dim Mov As New ClsMovimientos
+ If Mov.GetMovimientosIE(2, DdlIEDevolucion.SelectedValue.ToEntero, -1, Now, Now, 1, 0, UsuarioActual.CveEmpresa) Then
+ Dim DtIE As DataTable = Mov.DtResultados
+ For Each dr As DataRow In DtIE.Rows
+
+ If MsgError = "" AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, If(dr("TipoMovto").ToString.ToEntero = 1, False, True), If(dr("CveConceptoContable").ToString.ToEntero.Contiene(66), -TxtImporte.Text.ToDecimal, dr("Importe").ToString.ToDecimal), "", dr("CveConceptoContable").ToString.ToEntero, "", Now, IDCtaBeneficiario, -1, CveIE, CveCliente:=dr("CveCliente").ToString.ToEntero, CveVenta:=dr("CveVenta").ToString.ToEntero, ImporteMX:=If(dr("CveConceptoContable").ToString.ToEntero.Contiene(66), -TxtImporte.Text.ToDecimal, -dr("Importe").ToString.ToDecimal), ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario) Then
+ MsgError = "no se pudo insertar el detalle de la póliza 2"
+ End If
+ Next
+ ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta)
+
+ End If
+ Mov.Dispose()
+
+ 'Devolucion de INGxC Formato Charlie
+ ElseIf CveCliente > 0 AndAlso DivIvaIxC.Visible Then
+
+ Dim Mov As New ClsMovimientos
+ 'INGxC
+ ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal), Ref, 66, Conc, Now, IDCtaContable, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-(TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal), ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta)
+
+ If TxtIvaIxC.Text.ToDouble > 0 Then
+ 'Iva
+ ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -TxtIvaIxC.Text.ToDecimal, Ref, 61, Conc, Now, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
+ End If
+
+ 'Bancos
+ ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -TxtImporte.Text.ToDecimal, Ref, 30, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario)
+ Mov.Dispose()
+
+ Else
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta) Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, TxtImporte.Text.ToDecimal, Ref, CveConceptoCompra, Conc, Now, IDCtaBeneficiario, -1, CveIE:=If(CveIEOtro < 0, CveIE, CveIEOtro), CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario) Then
+ MsgError = "no se pudo insertar el detalle de la póliza 2"
+ End If
+ Else
+ MsgError = "no se pudo insertar el detalle de la póliza"
+ End If
+
+ End If
+
+
+ Case "INGPC"
+ Dim ConceptoContable As Integer
+ Dim TipoMovimiento As Boolean
+ Dim importeMovimiento As Decimal
+ Dim FechaMovimiento As Date = Now
+ Dim Concepto As String = ""
+ Dim Referencia As String = PagueseA
+
+ Dim importeMX As Decimal
+ Dim Multiplicador As Integer
+
+ If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
+
+ For Each Row As DataRow In ObjMov.DtResultados.Rows
+
+ ConceptoContable = Row("CveConcepto").ToString.ToEntero
+ TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
+ importeMovimiento = 0
+ Multiplicador = (Row("Multiplicador").ToString.ToEntero)
+ Concepto = ObjMov.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, PagueseA, "", ObjIE.Folio)
+
+ Select Case ConceptoContable
+
+ Case 10
+ If RBL.SelectedValue = "P" AndAlso CveProveedor > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 28
+ If RBL.SelectedValue = "FE" AndAlso CvePersonal > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 37
+ If RBL.SelectedValue = "DD" AndAlso CveProveedor > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 41
+ If RBL.SelectedValue = "AC" AndAlso CveProveedor > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 46
+
+ If TxtInteresMoratorio.Text.ToDecimal > 0 Then
+ importeMovimiento = TxtInteresMoratorio.Text.ToDecimal
+ importeMX = importeMovimiento
+ Else
+ importeMovimiento = 0
+ importeMX = 0
+ End If
+
+
+ Case 50
+ If RBL.SelectedValue = "DP" AndAlso CveProveedor > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ End If
+
+ Case 66
+ If RBL.SelectedValue = "C" AndAlso CveCliente > 0 Then
+ importeMovimiento = TxtImporte.Text.ToDecimal - TxtIvaIxC.Text.ToDecimal
+ importeMX = importeMovimiento
+
+ 'Agregamos el IVA
+ If DivIvaIxC.Visible AndAlso TxtIvaIxC.Text.ToDecimal <> 0 Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtIvaIxC.Text.ToDecimal, Concepto, 61, Concepto, FechaMovimiento, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+ End If
+ If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
+ 'Agregamos complementaria
+ Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 226, Concepto, FechaMovimiento, IDCtaBeneficiarioComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=0) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+
+ End If
+
+ End If
+
+ Case 30
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+
+ If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
+ 'Agregamos complementaria
+ Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 204, Concepto, FechaMovimiento, IDCtaContableComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+
+ End If
+
+ End Select
+
+ If importeMovimiento <> 0 Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, If(ConceptoContable = 30, IDCtaContable, IDCtaBeneficiario), -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=importeMovimiento, ImporteME:=tImporteMonedaExtranjera, TipoCambio:=TxtTipoCambio.Text.ToDecimal, CveCuenta:=If(ConceptoContable = 30, CveCuentaConta, CveCuentaBeneficiario)) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+ End If
+
+ Next
+
+ End If
+
+
+ Case "DevDinV"
+ Dim IdCtaContableAplicar = -1
+ Dim ImporteAplicar = 0.0D
+ Dim ImporteAplicarMN = 0.0D
+ Dim ImporteAplicarME = 0.0D
+ Dim ReferenciaAplicar = ObjIE.Folio
+ Dim ConceptoAplicar = $"Devolución al cliente {PagueseA} {TxtImporte.Text} NC:{SerieFolioDevDin}"
+
+ ImporteAplicar = TxtImporte.Text.ToDecimal
+ ImporteAplicarME = ImporteAplicar
+
+ 'CONSIDERA COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ ImporteAplicarMN = ImporteAplicar
+ Else
+ ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
+ End If
+
+ 'BANCOS
+ IdCtaContableAplicar = If(IDCtaContable > 0, IDCtaContable, 0)
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, ImporteAplicar, ReferenciaAplicar, 30, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos de devolución"
+ Exit Select
+ End If
+
+ 'BANCOS COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)) - ImporteAplicar).RoundSQL()
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, ImporteAplicar, ReferenciaAplicar, 204, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+ End If
+
+ 'CANCELA NC
+ IdCtaContableAplicar = IDCtaBeneficiario
+ ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(ImporteAplicar), ReferenciaAplicar, 12, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=-(ImporteAplicarMN), ImporteME:=ImporteAplicarME) Then
+ MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
+ Exit Select
+ End If
+
+ 'IMPUESTOS
+ If ObjMov.GetPrePolizasDetalle(CvePrePolizaDevDin) Then
+ Dim PorcentajePagoDevDin = (TxtImporte.Text.ToDecimal / ImporteOriginalDevDin).RoundSQL(6)
+ Dim CveConceptoContableAplciar = -1
+ Dim TipoMovtoAplicar = False
+
+ For Each Dr As DataRow In ObjMov.DtResultados.FiltraParametros("CveConceptoContable IN (13,8,9,38)").Rows
+ CveConceptoContableAplciar = Dr("CveConceptoContable").ToString.ToEntero
+ TipoMovtoAplicar = Not CBool(Dr("TipoMovto").ToString)
+ ImporteAplicar = (Dr("Importe").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
+ ImporteAplicarMN = (Dr("ImporteMN").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
+ ImporteAplicarME = (Dr("ImporteME").ToString.ToDecimal * PorcentajePagoDevDin).RoundSQL()
+ IdCtaContableAplicar = Dr("IdCtaContable").ToString.ToEntero
+
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, ImporteAplicar, ReferenciaAplicar, CveConceptoContableAplciar, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME) Then
+ Select Case CveConceptoContableAplciar
+ Case 13
+ CveConceptoContableAplciar = 61
+ Case 8
+ CveConceptoContableAplciar = 62
+ Case 9
+ CveConceptoContableAplciar = 63
+ Case 38
+ CveConceptoContableAplciar = 39
+ End Select
+ TipoMovtoAplicar = Not TipoMovtoAplicar
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, ImporteAplicar, ReferenciaAplicar, CveConceptoContableAplciar, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME) Then
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ Exit Select
+ End If
+ Else
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ Exit Select
+ End If
+
+ Next
+ End If
+
+ Case "DevDinC"
+ 'asdasdasd
+ 'asdasdasdasd
+ Dim IdCtaContableAplicar = -1
+ Dim ImporteAplicar = 0.0D
+ Dim ImporteAplicarMN = 0.0D
+ Dim ImporteAplicarME = 0.0D
+ Dim ReferenciaAplicar = ObjIE.Folio
+
+ Dim ConceptoAplicar = $"Devolución de Proveedor {PagueseA} {TxtImporte.Text} NC:{SerieFolioDeCDin}"
+
+ ImporteAplicar = TxtImporte.Text.ToDecimal
+ ImporteAplicarME = ImporteAplicar
+
+
+ 'CONSIDERA COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ ImporteAplicarMN = ImporteAplicar
+ Else
+ ImporteAplicarMN = (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
+ End If
+
+ Dim TCCompra As Decimal = 1
+ Dim TCDocumento As Decimal = 1
+
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+
+ TCCompra = GlobalTipoCambio(FechaCompra).ToDecimal
+ TCDocumento = GlobalTipoCambio(TxtFechaDocumento.Text.ToDate).ToDecimal
+
+ If TCCompra <= 0 Then
+ Alert("No se pudo obtener el tipo de cambio de la nota de crédito.", TipoMensaje.MsgAdvertencia)
+ End If
+
+ If TCCompra <= 0 Then
+ Alert("No se pudo obtener el tipo de cambio del documentpo.", TipoMensaje.MsgAdvertencia)
+ End If
+
+ End If
+
+
+
+ 'BANCOS
+ IdCtaContableAplicar = If(IDCtaContable > 0, IDCtaContable, 0)
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, ImporteAplicar, ReferenciaAplicar, 30, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta, TipoCambio:=TCDocumento) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos de devolución"
+ Exit Select
+ End If
+
+
+ 'BANCOS COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TCDocumento)) - ImporteAplicar).RoundSQL()
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, ImporteAplicar, ReferenciaAplicar, 204, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicarME, CveCuenta:=CveCuentaConta, TipoCambio:=TCDocumento) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+ End If
+
+ 'CANCELA NC
+ IdCtaContableAplicar = IDCtaBeneficiario
+ ImporteAplicarMN = ImporteAplicar ' (ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, (ImporteAplicar), ReferenciaAplicar, 18, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=(ImporteAplicarMN), ImporteME:=ImporteAplicarME, TipoCambio:=TCCompra) Then
+ MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
+ Exit Select
+ End If
+
+
+ 'NC COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+
+ ImporteAplicarMN = ((ImporteAplicar * If(DdlMoneda.SelectedValue.ToEntero = 1, 1, TCCompra)) - ImporteAplicar).RoundSQL()
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -(ImporteAplicar), ReferenciaAplicar, 201, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-(ImporteAplicarMN), ImporteME:=-(ImporteAplicarME), CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+
+ End If
+
+ If TCCompra <> TCDocumento Then
+
+ Dim DiferenciaTC As Decimal = TCCompra - TCDocumento
+
+ Dim DiferenciaImportes As Decimal = Math.Abs((ImporteAplicar * TCCompra) - (ImporteAplicar * TCDocumento))
+
+ If DiferenciaTC < 0 Then
+ '64
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaImportes, ReferenciaAplicar, 64, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaGananciaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
+ MsgError = "Ocurrió un error al registrar el asiento de ganancia cambiaria"
+ Exit Select
+ End If
+
+ Else
+ '65
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, DiferenciaImportes, ReferenciaAplicar, 65, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, CveCuenta:=CveCuentaConta, TipoCambio:=TCCompra) Then
+ MsgError = "Ocurrió un error al registrar el asiento de perdidada cfambiaria"
+ Exit Select
+ End If
+
+ End If
+
+ End If
+
+ 'IMPUESTOS
+
+ Dim PorcentajePagoDevDin = (TxtImporte.Text.ToDecimal / ImporteOriginalDevDin).RoundSQL(6)
+ Dim CveConceptoContableAplciar = -1
+ Dim TipoMovtoAplicar = False
+
+
+ Dim ObjCompras As New ClsCompras()
+ If ObjCompras.GetCompras(CveCompraDeCDin, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then
+
+ Dim dr As DataRow = ObjCompras.DtResultados.Rows(0)
+ If dr IsNot Nothing Then
+
+ Dim CveMonedaDev As Integer = dr("CveMoneda").ToString.ToEntero
+ Dim TotalCompraDev As Decimal = dr("Total").ToString.ToDecimal
+
+ Dim IVADev As Decimal = dr("IVA").ToString.ToDecimal
+ Dim IEPSDev As Decimal = dr("IEPS").ToString.ToDecimal
+ PorcentajeCompraDevDinC = ObjCompras.DtResultados.Rows(0)("PorcentajeIVA").ToString.ToDecimal
+
+ Dim DTCuentas As DataTable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeCompraDevDinC)
+ Dim CveCuentaIVAxAcreditarDevDinC = 0
+ Dim CveCuentaIVAAcreditableDevDinC = 0
+
+ Dim IdCtaIVAXAcreditarDevDinC = 0
+ Dim IdCtaIVAAcreditableDevDinC = 0
+
+ If DTCuentas IsNot Nothing AndAlso DTCuentas.Rows.Count > 0 Then
+ IdCtaIVAXAcreditarDevDinC = DTCuentas.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
+ IdCtaIVAAcreditableDevDinC = DTCuentas.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
+ End If
+
+ Dim IVADevMN As Decimal = 0
+ Dim IEPSDevMN As Decimal = 0
+
+ Dim PorcentajeDevolucion As Decimal = ((TxtImporte.Text.ToDecimal * 100D / TotalCompraDev) / 100).RoundSQL(2)
+
+ IVADev = Math.Round(IVADev * PorcentajeDevolucion, 2)
+ IEPSDev = Math.Round(IEPSDev * PorcentajeDevolucion, 2)
+
+ Dim CveCuentaDevolucionIMPUESTOS As Integer = -1
+ Dim IdCtaIVADevolucionIMPUESTOS As Integer = -1
+
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ IVADevMN = IVADev
+ IEPSDevMN = IEPSDev
+ Else
+ IVADevMN = (IVADev * If(CveMonedaDev = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL(2)
+ IEPSDevMN = (IEPSDev * If(CveMonedaDev = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL(2)
+ End If
+
+ Dim ErrorDevolucionImpuestos As Boolean = False
+
+ If IVADev > 0 Then
+
+ CveCuentaDevolucionIMPUESTOS = CveCuentaIVAxAcreditarDevDinC
+ IdCtaIVADevolucionIMPUESTOS = IdCtaIVAXAcreditarDevDinC
+
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovtoAplicar, -IVADev, ReferenciaAplicar, 14, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
+
+ CveCuentaDevolucionIMPUESTOS = CveCuentaIVAAcreditableDevDinC
+ IdCtaIVADevolucionIMPUESTOS = IdCtaIVAAcreditableDevDinC
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IVADev, ReferenciaAplicar, 19, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ ErrorDevolucionImpuestos = True
+ End If
+ Else
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ ErrorDevolucionImpuestos = True
+
+ End If
+ End If
+
+
+ If IEPSDev > 0 Then
+ 'Dim ObjContabilidad As New ClsContabilidad
+ If ObjMov.GetRetCuenta(25, UsuarioActual.CveEmpresa) Then
+ Try
+ CveCuentaDevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditarSIG").ToString.ToEntero
+ IdCtaIVADevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero
+
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IEPSDev, ReferenciaAplicar, 25, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IEPSDevMN, ImporteME:=-IEPSDev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
+
+ If ObjMov.GetRetCuenta(26, UsuarioActual.CveEmpresa) Then
+ Try
+ CveCuentaDevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditableSIG").ToString.ToEntero
+ IdCtaIVADevolucionIMPUESTOS = ObjMov.DtResultados.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAplicar, -IEPSDev, ReferenciaAplicar, 26, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IEPSDevMN, ImporteME:=-IEPSDev, CveCuenta:=CveCuentaDevolucionIMPUESTOS) Then
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ ErrorDevolucionImpuestos = True
+ End If
+
+
+ Catch ex As Exception
+ Alert("Se presento un error al obtener las cuentas de IEPS acreditable.")
+ ErrorDevolucionImpuestos = True
+ End Try
+
+ End If
+
+ Else
+ MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
+ ErrorDevolucionImpuestos = True
+ End If
+
+ Catch ex As Exception
+ Alert("Se presento un error al obtener las cuentas de IEPS acreditable.")
+ ErrorDevolucionImpuestos = True
+ End Try
+ End If
+ End If
+
+ If ErrorDevolucionImpuestos Then
+ MsgError = MsgError & " Error en devolución compra."
+ End If
+
+
+ End If
+ End If
+
+ Case "EGSCREDITO"
+
+ Dim ConceptoContable As Integer
+ Dim TipoMovimiento As Boolean
+ Dim importeMovimiento As Decimal
+ Dim FechaMovimiento As Date = Now
+ Dim Concepto As String = ""
+ Dim Referencia As String = PagueseA
+
+ Dim importeMX As Decimal
+ Dim Multiplicador As Integer
+
+ If ObjMov.GetPlantillaConceptos(UsuarioActual.CveEmpresa, CvePlantillaPoliza) Then
+
+ For Each Row As DataRow In ObjMov.DtResultados.Rows
+
+ ConceptoContable = Row("CveConcepto").ToString.ToEntero
+ TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
+ importeMovimiento = 0
+ Multiplicador = (Row("Multiplicador").ToString.ToEntero)
+ Concepto = ObjMov.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, ConceptoContable, PagueseA, "", ObjIE.Folio)
+
+ Select Case ConceptoContable
+
+ Case 30
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+ If tCveMoneda > 1 AndAlso UsuarioActual.CveEmpresa = 119 Then
+ 'Agregamos complementaria
+ Dim TC As Decimal = TxtTipoCambio.Text.ToDecimal
+
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, 0, Concepto, 204, Concepto, FechaMovimiento, IDCtaContableComplementaria, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=(importeMovimiento * TC - importeMovimiento).RoundSQL, ImporteME:=importeMovimiento, TipoCambio:=TC, CveCuenta:=UsuarioActual.Empresa.CveCuentaIVAxTrasladar) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+ End If
+ Case 42
+
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+
+ Case 46
+ If TxtInteresMoratorio.Text.ToDecimal > 0 Then
+ importeMovimiento = TxtInteresMoratorio.Text.ToDecimal
+ importeMX = importeMovimiento
+ Else
+ importeMovimiento = 0
+ importeMX = 0
+ End If
+ Case 48
+
+ importeMovimiento = TxtImporte.Text.ToDecimal
+ importeMX = importeMovimiento
+
+ End Select
+
+ If importeMovimiento <> 0 Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Concepto, ConceptoContable, Concepto, FechaMovimiento, If(ConceptoContable = 30, IDCtaContable, IDCtaBeneficiario), -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=importeMovimiento, ImporteME:=tImporteMonedaExtranjera, TipoCambio:=TxtTipoCambio.Text.ToDecimal, CveCuenta:=If(ConceptoContable = 30, CveCuentaConta, CveCuentaBeneficiario)) Then
+ MsgError = "Ocurrió un error al registrar el asiento del ingreso."
+ End If
+ End If
+
+ Next
+ End If
+
+ Case Else
+ Dim TipoMovimiento As Boolean = True
+
+ If Opcion.Contiene("ANTC") Then
+ TipoMovimiento = False
+ End If
+
+ If CveConceptoCompra = 10 AndAlso DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ IDCtaBeneficiario = IdCtaAnticipoExtranjera
+ CveCuentaConta = 0
+ End If
+
+ 'MOVIMIENTOS EGRESOS
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtImporte.Text.ToDecimal, Ref, CveConceptoContable, Conc, Now, IDCtaContable, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaConta, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
+ Dim IVA As Decimal = 0 ' TxtImporte.Text.ToDouble * HdnProvPorIVA.Value.ToDouble
+ If ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, TxtImporte.Text.ToDecimal - IVA - CIF, Ref, CveConceptoCompra, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DdlIEAcreedor.SelectedValue.ToEntero) Then
+ If IVA > 0 AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, IVA, Ref, 19, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtImporte.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
+ MsgError = "Detalle"
+ End If
+ 'intereses pagados
+ If CIF > 0 AndAlso Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, CIF, Ref, 46, Conc, Now, IDCtaBeneficiario, -1, CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveOC:=CveOrdenCompra, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=CIF, ImporteME:=tImporteMonedaExtranjera, CveCuenta:=CveCuentaBeneficiario, CveIEDevolucion:=DDlCheques.SelectedValue.ToEntero) Then
+ MsgError = "Detalle"
+ End If
+ Else
+ MsgError = "no se pudo insertar el detalle de la póliza2"
+ End If
+ Else
+ MsgError = "no se pudo insertar el detalle de la póliza"
+ End If
+
+ 'BANCOS COMPLEMENTARIA
+ If DdlMoneda.SelectedValue.ToEntero > 1 AndAlso UsuarioActual.CveEmpresa.Contiene(1, 119) Then
+ Dim ImporteAplicar As Decimal = TxtImporte.Text.ToDecimal
+ Dim ImporteAplicarMN = (ImporteAplicar * TxtTipoCambio.Text.ToDecimal - ImporteAplicar).RoundSQL()
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, ImporteAplicar, Ref, 204, Conc, Now, IDCtaContableComplementaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicar, CveCuenta:=CveCuentaConta, TipoCambio:=TxtTipoCambio.Text.ToDecimal) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+
+ If CveConceptoCompra = 10 Then
+ If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, ImporteAplicar, Ref, 266, Conc, Now, IdCtaAnticipoComplementaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=ImporteAplicarMN, ImporteME:=ImporteAplicar, CveCuenta:=0, TipoCambio:=TxtTipoCambio.Text.ToDecimal) Then
+ MsgError = "Ocurrió un error al registrar el asiento de bancos complementaria de devolución"
+ End If
+ End If
+
+
+ End If
+
+ If Opcion.Contiene("EGSSINFACT") AndAlso CveSolicitudViatico > 0 AndAlso MsgError = "" Then
+ If Not ObjIE.UpdateSolicitudesViaticosIE(CveSolicitudViatico, CveIE) Then
+ MsgError = "Ocurrió un error al vincular el egreso con la solicitud de viatico."
+ End If
+ End If
+
+ End Select
+
+ 'El movimiento 1 es el de Venta
+ 'Conta SIG
+ If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso MsgError = "" AndAlso UsuarioActual.Empresa.UsaContabilidadSIG Then
+ If CveCuentaBeneficiario > 0 And CveCuentaConta > 0 Then
+ If ObjMov.ContabilizarPrePolizaSIG(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
+ IDPoliza = ObjMov.ContaIdPoliza
+ Else
+ Alert("Ocurrio un error al contabilizar en SIG, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
+ End If
+ Else
+ If CveCuentaConta < 1 Then
+ Alert("No se puede contabilizar la Prepoliza en SIG debido a que la cuenta de Bancos es invalida", TipoMensaje.MsgAdvertencia)
+ End If
+ If CveCuentaBeneficiario < 1 Then
+ Alert("No se puede contabilizar la Prepoliza en SIG debido a que las cuenta del Beneficiario es invalida", TipoMensaje.MsgAdvertencia)
+ End If
+ End If
+ End If
+
+ 'Conta ContPAQ
+ If UsuarioActual.Empresa.Funcionalidad(200) = "1" AndAlso MsgError = "" Then
+ If IDCtaBeneficiario > 0 And IDCtaContable > 0 Then
+ If ObjMov.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
+ IDPoliza = ObjMov.ContaIdPoliza
+ 'Alert(alertaContabilizacion & ObjMov.AlertaMensaje, ModExtensiones.TipoMensaje.MsgInformacion)
+ Else
+ Alert("Ocurrio un error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
+ End If
+ Else
+ If IDCtaContable < 1 Then
+ Alert("No se puede contabilizar la Prepoliza debido a que la cuenta de Bancos es invalida", TipoMensaje.MsgAdvertencia)
+ End If
+ If IDCtaBeneficiario < 1 Then
+ Alert("No se puede contabilizar la Prepoliza debido a que las cuenta del Beneficiario es invalida", TipoMensaje.MsgAdvertencia)
+ End If
+ End If
+ End If
+
+ If UsuarioActual.Empresa.UsaAC Then
+ Dim ConceptoRenglon, Referencia As String
+ Dim FolioPoliza As Integer
+ Dim Fecha As Date = TxtFechaDocumento.Text.ToDate
+ Dim TipoChq As String = ""
+ Dim Total As Double = TxtImporte.Text.ToDouble
+
+ Dim Conta As New ClsContPAQi(UsuarioActual.Empresa)
+ Conta.IniciaTransacSQL()
+
+ If DdlTipoTransaccion.SelectedValue = "1" Then TipoChq = "CHQ"
+ ConceptoRenglon = String.Format("Anticipo {0}", PagueseA)
+
+ IDPoliza = Conta.AddPoliza(2, ConceptoRenglon, Total, Total, UsuarioActual.CveUsuario, Fecha, ObjIE.Folio, TipoChq)
+
+ If IDPoliza > 0 Then
+ FolioPoliza = Conta.Folio
+ Referencia = ObjIE.Folio
+ ConceptoRenglon = String.Format("Anticipo {0} {1}", PagueseA, TxtObservaciones.Text)
+
+ Total = TxtImporte.Text.ToDouble
+
+ If Not Conta.AddMovimiento(IDPoliza, IDCtaContable, True, Total, Referencia, ConceptoRenglon, 0, Fecha, "") Then MsgError = "No se insertó el movimiento"
+
+ If Not Conta.AddMovimiento(IDPoliza, IDCtaBeneficiario, False, Total, Referencia, ConceptoRenglon, 0, Fecha, "") Then MsgError = "No se insertó el movimiento"
+
+ Else
+ MsgError = "No se insertó el encabezado"
+ End If
+
+ If MsgError = "" Then
+ Conta.Commit()
+
+ Conta.AjustaPoliza(IDPoliza)
+ 'actualizar la conta del IE
+ ObjIE.UpdateIEPrePoliza(Fecha, FolioPoliza.ToString, IDPoliza, CvePrePoliza, CveIE, 0)
+ Else
+ Conta.RollBack()
+ IDPoliza = 0
+ End If
+
+ Conta.Dispose()
+ End If
+
+ 'Notificación de Pago
+ If TxtNotificarA.Text.Trim <> "" Then
+ NotificacionPago(CveIE, TxtNotificarA.Text.Trim)
+ End If
+
+ Else
+ MsgError = "No se pudo insertar la póliza"
+ End If
+
+ Else
+ MsgError = "No se insertó el encabezado"
+ End If
+
+ End If
+
+ Else
+ Msg.Append("El Documento se guardó correctamente.")
+
+ End If
+
+ 'SOLICITUD DE ANTICIPO OC
+ If MsgError = "" Then
+ MsgError = GuardaSolicitudAnticipoOC(ObjOC)
+ End If
+
+ If MsgError = "" Then
+ 'VIATICOS
+ If ChkAplicaViatico.Checked Then
+ Dim Retorno As String = TimbrarNomina12(CvePersonal)
+ If Retorno <> "" Then MsgError = $"{MsgError} {Retorno}" : Msg.Clear() : CveIE = -1
+ If Retorno <> "" Then
+ Alert(Retorno, TipoMensaje.MsgError)
+ End If
+ End If
+ End If
+
+ If MsgError = "" Then
+ If ObjMov.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then
+ If ObjMov.ValorPolizaDescuadre > 0 Then
+ ' MsgError = ObjMov.MensajePolizaDescuadre
+ GuardaLogAD($"Bancos/IE | Error:{ObjMov.MensajePolizaDescuadre} Diferencia:{ObjMov.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
+ End If
+ Else
+ MsgError = "No se pudo validar la prepoliza de cuadre."
+ End If
+ End If
+
+ If MsgError = "" Then
+ 'IMPRIME CHEQUE
+ 'GeneraChequePDF(CveIE, UsuarioActual.Empresa, IDPoliza)
+ If Msg.ToString = "" Then
+ Msg.Append("El Documento se guardo correctamente")
+ End If
+ Dim Archivo As System.IO.FileInfo = Nothing
+ 'VERIFICA SI EXISTE EL FORMATO
+ If DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(2, 8, 9) Then
+ Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/Transferencia.rdlc", UsuarioActual.Empresa.Ruta))
+ ElseIf DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(1) Then
+ Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/CHQ-{1}.rdlc", UsuarioActual.Empresa.Ruta, DdlCuenta.SelectedValue.ToEntero))
+ If Not Archivo.Exists Then
+ Archivo = New System.IO.FileInfo(String.Format("{0}\Empresas\Grales\Formatos\CHQ.rdlc", AppDomain.CurrentDomain.BaseDirectory))
+ End If
+ ElseIf DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(6) And UsuarioActual.CveEmpresa = 72 Then
+ Archivo = New System.IO.FileInfo(String.Format("{0}Formatos/ComprobanteEgreso.rdlc", UsuarioActual.Empresa.Ruta, DdlCuenta.SelectedValue.ToEntero))
+ End If
+
+ If Archivo IsNot Nothing Then
+ If Archivo.Exists Then
+ Msg.AppendFormat("
{1} ", Encripta(String.Format("OP=IECHEQUE&CVEIE={0}", CveIE)), String.Format("Imprimir {0}", DdlTipoTransaccion.SelectedItem))
+ End If
+ End If
+
+ If IDPoliza > 0 Then
+ Msg.AppendFormat("
Ver Póliza", IDPoliza)
+ End If
+
+ 'AUTO DESCARGAR PDF PARA COMPU
+ If UsuarioActual.CveEmpresa.Contiene(72, 1, 2) And CveSolicitudViatico > 0 Then
+ If DdlTipoTransaccion.SelectedValue.ToEntero.Contiene(1, 2, 6, 8, 9) Then
+ RegistraScript($"window.location.href = '/Compras/PopUpVerFactura.aspx?P={Encripta(String.Format("OP=IE&CVEIE={0}", CveIE))}'", String.Format("Imprimir {0}", DdlTipoTransaccion.SelectedItem))
+ End If
+ End If
+
+ End If
+ Catch ex As Exception
+ MsgError = "Ocurrió un error al guardar el IE"
+ ex.ToString().GuardaLog()
+ End Try
+
+ If MsgError = "" Then
+ ObjIE.Commit()
+ Else
+ ObjIE.RollBack()
+
+ Alert(MsgError, TipoMensaje.MsgError)
End If
If Msg.ToString <> "" Then
@@ -3264,7 +3263,6 @@ Partial Class Bancos_IE
AccionJS = String.Format("document.location.href=""{0}"";", HttpContext.Current.Request.Url.PathAndQuery)
End If
-
If Request("Opcion") IsNot Nothing AndAlso Request("Opcion").ToString.Contiene("EGSCREDITO") Then
AccionJS = $"document.location.href=""/Bancos/Creditos.aspx?CveCredito={Request("CveCredito")}"";"
Alert(Msg.ToString, TipoMensaje.MsgInformacion, AccionJS)
@@ -3272,18 +3270,15 @@ Partial Class Bancos_IE
Alert(Msg.ToString, TipoMensaje.MsgInformacion, String.Format("document.location.href=""{0}"";", HttpContext.Current.Request.Url.PathAndQuery))
End If
-
-
-
End If
End If
- RecargaGlobalCuentasBancarias()
ObjIE.Dispose()
ObjMov.Dispose()
- If ObjComp IsNot Nothing Then ObjComp.Dispose()
-
-
+ ObjOC.Dispose()
+ If ObjComp IsNot Nothing Then ObjComp.Dispose()
+
+ RecargaGlobalCuentasBancarias()
End Sub
#Region " NOTIFICACION PAGO "
diff --git a/GPS/CatRemisionesVehiculos.aspx b/GPS/CatRemisionesVehiculos.aspx
index c4e4b997e..f60e75505 100644
--- a/GPS/CatRemisionesVehiculos.aspx
+++ b/GPS/CatRemisionesVehiculos.aspx
@@ -1,180 +1,174 @@
-<%@ Page Title="" Language="VB" MasterPageFile="~/SiteGPS.master" AutoEventWireup="false" CodeFile="CatRemisionesVehiculos.aspx.vb" Inherits="GPS_CatRemisionesVehiculos" %>
-
- Remisiones Activas
- Historial Remision:
- Remisiones Activas
+ Historial Remision:
+
@@ -642,14 +647,9 @@
| Cantidad | + + +
|---|
| Cantidad | Tipo OC
- - - |
+
+ Clasificación ( |
- Unidad | -Observación | -
- - |
- Activo Fijo | -POA | -P.U. | -Desc. | -Total | -Comandos | -
- |
-
- |
- ||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
- |
-
- |
-
- |
-
- |
-
- |
-
- ![]() |
-
-
+ Producto o Servicio(Unidad |
+ Observación |
+
+ |
+ + Activo Fijo |
+ POA |
+ P.U. |
+ Desc. |
+ Total |
+ Comandos |
+
+ |
+
+ |
+ |
|
+ |
+
+ |
+
+ |
+
+ |
+
+ |
+
+ ![]() |
+
+
|
-
-
-
-
- - |
-
- |
-
- |
-
- |
- - | - |


| Subtotal: | -
- |
- - |
| Descuento: | -
- |
- |
| Subtotal 2: | -
- |
- - |
| IVA: | -
- |
-
- |
-
| IEPS: | -
- |
- |
| Ret IVA: | -
- |
- |
| Ret ISR: | -
- |
- |
| Total: | -
- |
-
- |
-
| Subtotal: | +
+ |
+ + |
| Descuento: | +
+ |
+ |
| Subtotal 2: | +
+ |
+ + |
| IVA: | +
+ |
+
+ |
+
| IEPS: | +
+ |
+ |
| Ret IVA: | +
+ |
+ |
| Ret ISR: | +
+ |
+ |
| Total: | +
+ |
+
+ |
+