diff --git a/App_Code/ClsCRM.vb b/App_Code/ClsCRM.vb
index 87915730c..67953b293 100644
--- a/App_Code/ClsCRM.vb
+++ b/App_Code/ClsCRM.vb
@@ -1087,4 +1087,77 @@ Public Class ClsCRM
End Sub
#End Region
+#Region "METAS"
+ Public Function GetMetas(FechaI As DateTime, FechaF As DateTime, Estatus As Integer, CveEmpresa As Integer) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_CRM_MetasGet")
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@FechaI", SqlDbType.DateTime).Value = FechaI
+ .Add("@FechaF", SqlDbType.DateTime).Value = FechaF
+ .Add("@Estatus", SqlDbType.Int).Value = Estatus
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ End With
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al obtener las Metas.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End Try
+ Return Retorno
+ End Function
+ Public Function AddMetas(CveVendedor As Integer, FechaI As DateTime, FechaF As DateTime, NumMeta As Integer, Importe As Decimal, CveEmpresa As Integer) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_CRM_MetasAdd")
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor
+ .Add("@FechaI", SqlDbType.DateTime).Value = FechaI
+ .Add("@FechaF", SqlDbType.DateTime).Value = FechaF
+ .Add("@NumMeta", SqlDbType.Int).Value = NumMeta
+ .Add("@Importe", SqlDbType.Money).Value = Importe
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ End With
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al agregar la Meta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End Try
+ Return Retorno
+ End Function
+ Public Function UpdateMetas(CveMeta As Integer, CveVendedor As Integer, FechaI As DateTime, FechaF As DateTime, NumMeta As Integer, Importe As Decimal, CveEmpresa As Integer) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_CRM_MetasUpdate")
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveMeta", SqlDbType.Int).Value = CveMeta
+ .Add("@CveVendedor", SqlDbType.Int).Value = CveVendedor
+ .Add("@FechaI", SqlDbType.DateTime).Value = FechaI
+ .Add("@FechaF", SqlDbType.DateTime).Value = FechaF
+ .Add("@NumMeta", SqlDbType.Int).Value = NumMeta
+ .Add("@Importe", SqlDbType.Money).Value = Importe
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ End With
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al actualizar la Meta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End Try
+ Return Retorno
+ End Function
+ Public Function RemoveMetas(CveMeta As Integer, CveEmpresa As Integer) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_CRM_MetasRemove")
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveMeta", SqlDbType.Int).Value = CveMeta
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ End With
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al eliminar la Meta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End Try
+ Return Retorno
+ End Function
+#End Region
End Class
diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb
index e498feb95..0fbf298e7 100644
--- a/App_Code/ClsPaginas.vb
+++ b/App_Code/ClsPaginas.vb
@@ -3904,6 +3904,7 @@ Public Class ClsPaginas
PaginaDict.Add("/CRM/RepAcercamientosProcesos.aspx".ToUpper(), -1)
PaginaDict.Add("/CRM/RepAcercamientosRechazos.aspx".ToUpper(), -1)
PaginaDict.Add("/CRM/RepAcercamientosProcesosDetalle.aspx".ToUpper(), -1)
+ PaginaDict.Add("/CRM/CatMetas.aspx".ToUpper(), 684)
#End Region
#Region "CxC"
diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb
index 0e0b12935..4303c4e15 100644
--- a/App_Code/Modelos.vb
+++ b/App_Code/Modelos.vb
@@ -1816,10 +1816,10 @@ Namespace Modelos
End Sub
Private Function ProcesoPrepolizas(ObjFactura As Factura, ByRef ObjConta As ClsContabilidad, CveIE As Integer, TmpDTDetalle As DataTable, ByRef objContPaqi As ClsContPAQi,
Optional ValorMultiplicador As Integer = 1, ByRef Optional ObjBancos As ClsBancos = Nothing, ByRef Optional ObjVentas As ClsVentas = Nothing, ByRef Optional ObjEventos As ClsOIEventos = Nothing,
- Optional ByRef DtRemisionesRelacionadas As DataTable = Nothing, Optional SeCancelaRemisionProceso As Boolean = False, Optional CancelarRemisiones As Boolean = False, Optional ListaRemisionesCancelar As List(Of Integer) = Nothing) As Boolean
+ Optional ByRef DtRemisionesRelacionadas As DataTable = Nothing, Optional SeCancelaRemisionProceso As Boolean = False, Optional CancelarRemisiones As Boolean = False, Optional ListaRemisionesCancelar As List(Of Integer) = Nothing,
+ Optional CveEstatusRefacturacion As Integer = 0) As Boolean
Dim ErrorPrepoliza As Boolean = False
Try
-
Dim DT As DataTable
Dim CvePlantilaPoliza As Integer
Dim PorcentajeAmortizacion As Decimal = 0
@@ -2426,10 +2426,6 @@ Namespace Modelos
ErrorPrepoliza = True
Exit For
End If
-
- 'If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveVentaAmortizacion:=row2.DataKey("CveVentaNC").ToString.ToEntero, ImporteMX:=importeMovimiento * tipoCambio, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, CveSubProyecto:=CveSubProyectoContabilizar) Then
- ' ErrorPrepoliza = True
- 'End If
End If
End If
Next
@@ -2488,8 +2484,6 @@ Namespace Modelos
CveVentaAmortizacionAplicar = ObjFactura.CveVenta
End If
- ' If UsuarioActual.CveEmpresa = 119 Then
-
'código fijo en base el porcentaje iva, que se afecten las clasificaciones
For i = 0 To TmpDTDetalle.Rows.Count - 1
@@ -2505,8 +2499,6 @@ Namespace Modelos
Next
- ' End If
-
DT = TmpDTDetalle.FiltraParametros($"CvePS <> {ObjFactura.CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto"})
If DT.Rows.Count > 0 Then
@@ -2893,26 +2885,31 @@ Namespace Modelos
'Si es Facturacion de una remision cancelamos, traspasamos saldos y agregamos evento a la bitacora
If (DtRemisionesRelacionadas IsNot Nothing AndAlso DtRemisionesRelacionadas.Rows.Count > 0) OrElse ObjFactura.RemisionesLista.Count > 0 Then
- If ObjFactura.RemisionesLista.Count > 0 Then
- For Each CveRemision As Integer In RemisionesLista
- If Not ObjConta.TraspasarSaldosRemision(CveRemision, ObjFactura.CvePrePoliza, ObjFactura.CveVenta) Then
- ErrorPrepoliza = True
- End If
+ If Not ObjFactura.TipoDocto.Contiene("Ing", "Ant") Then
+ ErrorPrepoliza = True
+ ErrorList.Add("No se pueden facturar las remisiones, con ese tipo de comprobante seleccionado")
+ Else
+ If ObjFactura.RemisionesLista.Count > 0 Then
+ For Each CveRemision As Integer In RemisionesLista
+ If Not ObjConta.TraspasarSaldosRemision(CveRemision, ObjFactura.CvePrePoliza, ObjFactura.CveVenta) Then
+ ErrorPrepoliza = True
+ End If
- 'Factura
- If Not ObjEventos.AddEventoBitacora($"Sustituye a: Folio Factura", "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=ObjFactura.CveVenta) Then
- ErrorPrepoliza = True
- End If
+ 'Factura
+ If Not ObjEventos.AddEventoBitacora($"Sustituye a: Folio Factura", "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=ObjFactura.CveVenta) Then
+ ErrorPrepoliza = True
+ End If
- 'Remision
- If Not ObjEventos.AddEventoBitacora($"Refacturacion en: {ObjFactura.Folio}", "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=CveRemision) Then
- ErrorPrepoliza = True
- End If
+ 'Remision
+ If Not ObjEventos.AddEventoBitacora($"Refacturacion en: {ObjFactura.Folio}", "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveVenta:=CveRemision) Then
+ ErrorPrepoliza = True
+ End If
- If ErrorPrepoliza Then
- Exit For
- End If
- Next
+ If ErrorPrepoliza Then
+ Exit For
+ End If
+ Next
+ End If
End If
End If
@@ -2923,7 +2920,8 @@ Namespace Modelos
End If
'REGRESA SALDO A LAS REMISIONES QUE SE FACTURARON EN EL INGRESO QUE SE ESTA CANCELANDO
- If ObjFactura.TipoDocto = "Ing" And ValorMultiplicador = -1 AndAlso NuevaFactura <> 1 AndAlso Not SeCancelaRemisionProceso AndAlso DtRemisionesRelacionadas IsNot Nothing Then ' se debe de excluir cuando es refacturación
+ 'SE DEBE DE EXCLUIR CUANDO ES REFACTURACIÓN
+ If ObjFactura.TipoDocto = "Ing" And ValorMultiplicador = -1 AndAlso CveEstatusRefacturacion = 0 AndAlso Not SeCancelaRemisionProceso AndAlso DtRemisionesRelacionadas IsNot Nothing Then ' se debe de excluir cuando es refacturación
For Each Dr As DataRow In DtRemisionesRelacionadas.Rows
Dim DebeCancelar As Boolean = CancelarRemisiones AndAlso ListaRemisionesCancelar.Any(Function(CveRemision) CveRemision = Dr("CveVenta").ToString.ToEntero())
@@ -2943,23 +2941,40 @@ Namespace Modelos
If ObjConta.ValidacionPrePolizaCuadre(ObjFactura.CvePrePoliza, 2) Then
If ObjConta.ValorPolizaDescuadre > 0 Then
If ObjConta.ValorPolizaDescuadre = 2 Then
+ ErrorList.Add(ObjConta.MensajePolizaDescuadre)
ErrorPrepoliza = True
- Alert(ObjConta.MensajePolizaDescuadre, TipoMensaje.MsgError)
GuardaLogAD($"Ventas/Ventas-ProcesoPrePolizas | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{ObjFactura.CvePrePoliza}", "LogPrePolizas")
End If
-
End If
End If
'Simplificacion de PrePolizas
If ObjFactura.TipoDocto.Contiene("Egs", "Dev") Then
If Not ObjConta.PrePolizaSimplificacion(ObjFactura.CvePrePoliza, UsuarioActual.CveEmpresa) Then
- Alert("No se pudo simplificar los movimientos", TipoMensaje.MsgError)
+ ErrorList.Add("No se pudo simplificar los movimientos")
+ ErrorPrepoliza = True
+ End If
+ End If
+
+ 'ContPAQ El movimiento 1 es el de Venta
+ Dim AutoConta As Boolean = UsuarioActual.Empresa.Funcionalidad(200) = "1"
+
+ If UsuarioActual.CveEmpresa = 119 AndAlso ObjFactura.TipoDocto.Contiene("Ant", "Rem", "RNC", "Cot", "Ped", "Pd2", "PA", "NC") Then
+ AutoConta = False
+ End If
+
+ If AutoConta Then
+ If idCuentaContabilizacion > 0 Then
+ If Not ObjConta.ContabilizarPrePoliza(ObjFactura.CvePrePoliza, ObjFactura.CveUsuario, UsuarioActual.Empresa, ObjConta:=objContPaqi) Then
+ ErrorList.Add("Ocurrio un Error al contabilizar, pongase en contacto con Soporte Técnico")
+ 'ErrorPrepoliza = True
+ End If
+ Else
+ ErrorList.Add(String.Format("Falta asignación de las siguientes cuentas contables: {0}", CuentasContablesInvalidas))
+ 'ErrorPrepoliza = True
End If
End If
-
-
Catch ex As Exception
GuardaLog(ex.ToString())
ErrorPrepoliza = True
@@ -3787,6 +3802,7 @@ Namespace Modelos
End If
Dim CveEstatusRefacturacion As Integer = If(ObjFactura.CveEstatusRefacturacion <= 0, 0, ObjFactura.CveEstatusRefacturacion)
+
Dim CancelacionFecha As Date
Dim FolioFiscal As String = ObjFactura.FolioFiscal
Dim CancelacionAcuse As String = ""
@@ -3925,6 +3941,15 @@ Namespace Modelos
Retorno.CveEstatus = CveEstatus
+ '0 Sin Refacturacion, 1 Refacturacion en Proceso, 3. Refacturación en proceso sin aceptación
+ If EsRefacturacion AndAlso CveEstatusRefacturacion = 0 Then
+ If CveEstatus = 5 Then
+ CveEstatusRefacturacion = 3 ' refacturación en proceso sin autorización de cancelación
+ Else
+ CveEstatusRefacturacion = 1 ' refacturación en proceso con autorización de cancelación
+ End If
+ End If
+
Dim ObjVentas As New ClsVentas() : ObjVentas.IniciaTransacSQL()
Dim ObjConta As New ClsContabilidad(ObjVentas.IniciaTransacSQL())
Dim ObjBancos As New ClsBancos(ObjVentas.IniciaTransacSQL())
@@ -3932,11 +3957,11 @@ Namespace Modelos
Dim ObjContrato As New ClsContratos(ObjVentas.IniciaTransacSQL())
Dim ObjEventos As New ClsOIEventos(ObjVentas.IniciaTransacSQL())
Dim ObjAC As ClsContPAQi = Nothing
- If UsuarioActual.Empresa.UsaAC Then
+
+ If UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200) = "1" Then
ObjAC = New ClsContPAQi(UsuarioActual.Empresa) : ObjAC.IniciaTransacSQL()
End If
-
Try
If ObjFactura.TipoDocto.Contiene("Egs", "Dev") Then
CvePlantillaPoliza = 7
@@ -3965,8 +3990,8 @@ Namespace Modelos
'CANCELA PREPOLIZA
If Not ErrorCancelar Then
- ErrorCancelar = ProcesoPrepolizas(ObjFactura, ObjConta, -1, ObjFactura.DtDetalle, ObjAC, -1, ObjBancos, ObjVentas, ObjEventos, DtRemisionesRelacionadas:=DtRemisionesRelacionadas,
- SeCancelaRemisionProceso:=SeCancelaRemisionProceso, CancelarRemisiones:=CancelarRemisiones, ListaRemisionesCancelar:=ListaRemisionesCancelar)
+ ErrorCancelar = ProcesoPrepolizas(ObjFactura, ObjConta, -1, ObjFactura.DtDetalle, ObjAC, -1, ObjBancos, ObjVentas, ObjEventos, DtRemisionesRelacionadas:=DtRemisionesRelacionadas, SeCancelaRemisionProceso:=SeCancelaRemisionProceso,
+ CancelarRemisiones:=CancelarRemisiones, ListaRemisionesCancelar:=ListaRemisionesCancelar, CveEstatusRefacturacion:=CveEstatusRefacturacion)
MensajeError = "Ocurrió un error al generar la prepoliza de cancelación."
End If
@@ -4095,15 +4120,14 @@ Namespace Modelos
Dim AutoConta As Boolean = UsuarioActual.Empresa.Funcionalidad(200) = "1"
- If UsuarioActual.CveEmpresa = 119 AndAlso ObjFactura.TipoDocto = "Ant" Then
+ If UsuarioActual.CveEmpresa = 119 AndAlso ObjFactura.TipoDocto.Contiene("Ant", "Rem", "RNC", "Cot", "Ped", "Pd2", "PA", "NC") Then
AutoConta = False
End If
If AutoConta And Not ErrorCancelar Then
- Dim ObjContPaq = New ClsContPAQi(UsuarioActual.Empresa)
If IdCtaContable > 0 Then
- If Not ObjConta.ContabilizarPrePoliza(CvePrePolizaDev, UsuarioActual.CveUsuario, UsuarioActual.Empresa, ObjConta:=ObjContPaq) Then
+ If Not ObjConta.ContabilizarPrePoliza(CvePrePolizaDev, UsuarioActual.CveUsuario, UsuarioActual.Empresa, ObjConta:=ObjAC) Then
ErrorCancelar = True
MensajeError = "Ocurrió un error al contabilizar la prepoliza."
End If
@@ -4111,7 +4135,6 @@ Namespace Modelos
Alert(String.Format("No se puede contabilizar ya que falta asignación de las cuentas contables"), TipoMensaje.MsgAdvertencia)
End If
- ObjContPaq.Dispose()
End If
Else
@@ -4241,17 +4264,16 @@ Namespace Modelos
End If
End If
- Else
- 'MARCA LA VENTA PARA REALIZAR LA DEVOLUCION POSTERIORMENTE
- If Not ErrorCancelar Then
- If RealizarDevolucionAlmacen AndAlso CveAlmacenDevolucion > 0 Then
- If Not ObjVentas.UpdateVentaRealizarDevolucion(CveVenta, RealizarDevolucionAlmacen, CveAlmacenDevolucion) Then
- ErrorCancelar = True
- MensajeError = "Ocurrió un error al marcar la venta para devolución"
- End If
+ End If
+
+ 'MARCA LA VENTA PARA REALIZAR LA DEVOLUCION POSTERIORMENTE
+ If Not ErrorCancelar Then
+ If RealizarDevolucionAlmacen AndAlso CveAlmacenDevolucion > 0 Then
+ If Not ObjVentas.UpdateVentaRealizarDevolucion(CveVenta, RealizarDevolucionAlmacen, CveAlmacenDevolucion) Then
+ ErrorCancelar = True
+ MensajeError = "Ocurrió un error al marcar la venta para devolución"
End If
End If
-
End If
'ACTUALIZA ESTATUS
@@ -4262,14 +4284,6 @@ Namespace Modelos
Case "Com"
CveEstatus = 9
End Select
- '0 Sin Refacturacion, 1 Refacturacion en Proceso, 3. Refacturación en proceso sin aceptación
- If EsRefacturacion Then
- If CveEstatus = 5 Then
- CveEstatusRefacturacion = 3 ' refacturación en proceso sin autorización de cancelación
- Else
- CveEstatusRefacturacion = 1 ' refacturación en proceso con autorización de cancelación
- End If
- End If
If CveEstatus.Contiene(4, 5) Then
If Not ObjVentas.UpdateCancelaVenta(CveVenta, CancelacionFecha, CancelacionAcuse, UsuarioActual.CveEmpresa, CvePACCancelacion) Then
diff --git a/App_Code/Timbrado.vb b/App_Code/Timbrado.vb
index 9ccf49d07..f9fe5c1e1 100644
--- a/App_Code/Timbrado.vb
+++ b/App_Code/Timbrado.vb
@@ -365,7 +365,15 @@ Public Class Timbrado
If resultadoCancelacion.Exitoso Then
CancelacionMensaje = resultadoCancelacion.Descripcion
Dim xmlDoc As New System.Xml.XmlDocument()
- xmlDoc.LoadXml(Encoding.UTF8.GetString(Convert.FromBase64String(resp.Xml)))
+
+ Try
+ xmlDoc.LoadXml(Encoding.UTF8.GetString(Convert.FromBase64String(resp.Xml)))
+ Catch ex As Exception
+ xmlDoc.LoadXml(resp.Xml)
+ End Try
+
+
+
Dim xpath As String = "Acuse/Folios"
Dim nodes = xmlDoc.SelectNodes(xpath)
CancelacionState = xmlDoc.GetElementsByTagName("EstatusUUID")(0).InnerText.ToEntero
diff --git a/Bancos/IE.aspx b/Bancos/IE.aspx
index 0e5e68162..53489d4c4 100644
--- a/Bancos/IE.aspx
+++ b/Bancos/IE.aspx
@@ -1185,12 +1185,19 @@
-
+ <%--
+
+
+
+ --%>
+
diff --git a/Bancos/IE.aspx.vb b/Bancos/IE.aspx.vb
index 5f49dda1f..21a8f8590 100644
--- a/Bancos/IE.aspx.vb
+++ b/Bancos/IE.aspx.vb
@@ -501,6 +501,7 @@ Partial Class Bancos_IE
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
+
If Not IsPostBack Then
Folio = ""
@@ -3916,9 +3917,10 @@ Partial Class Bancos_IE
If CancelarComplemento Then
Dim ObjCancelacion As New Timbrado
'Dim ObjBanco As New ClsBancos
- If ObjCancelacion.CFDICancelar(UsuarioActual.Empresa, FolioFiscalCancelar, 0, RFCReceptorCancelar, UsuarioActual.Empresa.RFC, CvePACCancelacion) Then
- If Banc.UpdateComplementoPago(CveComplementoPagoCancelar, "-1", -1, UsuarioActual.CveEmpresa, 2, CvePACCancelacion, FechaCancelacion:=ObjCancelacion.CancelacionFecha, SelloCancelacion:=ObjCancelacion.CancelacionAcuse) Then
+ If EstatusSATCancelado(FolioFiscalCancelar, UsuarioActual.Empresa.RFC, RFCReceptorCancelar) Then
+
+ If Banc.UpdateComplementoPago(CveComplementoPagoCancelar, "-1", -1, UsuarioActual.CveEmpresa, 2, CvePACCancelacion, FechaCancelacion:=Date.Now, SelloCancelacion:="") Then
CargaComplementosPago()
RegistraScript("$('#ModalCancelarComplemetno').modal('hide');")
ErrorCancelarComplemento = False
@@ -3926,8 +3928,22 @@ Partial Class Bancos_IE
End If
Else
- Alert("Se presento un error al cancelar el complemento.", TipoMensaje.MsgAdvertencia)
+ If ObjCancelacion.CFDICancelar(UsuarioActual.Empresa, FolioFiscalCancelar, 0, RFCReceptorCancelar, UsuarioActual.Empresa.RFC, CvePACCancelacion) Then
+
+ If Banc.UpdateComplementoPago(CveComplementoPagoCancelar, "-1", -1, UsuarioActual.CveEmpresa, 2, CvePACCancelacion, FechaCancelacion:=ObjCancelacion.CancelacionFecha, SelloCancelacion:=ObjCancelacion.CancelacionAcuse) Then
+ CargaComplementosPago()
+ RegistraScript("$('#ModalCancelarComplemetno').modal('hide');")
+ ErrorCancelarComplemento = False
+ Alert("El complemento se cancelo correctamente.")
+ End If
+
+ Else
+ Alert("Se presento un error al cancelar el complemento.", TipoMensaje.MsgAdvertencia)
+ End If
+
End If
+
+
Else
ErrorCancelarComplemento = False
End If
@@ -5538,39 +5554,34 @@ Partial Class Bancos_IE
RFCReceptorCancelar = GvRow.DataKey("RFCReceptor")
CvePACCancelacion = GvRow.DataKey("CvePAC").ToEntero
-
Dim ObjCancelacion As New Timbrado
Dim ObjBanco As New ClsBancos
- If ObjCancelacion.CFDICancelar(UsuarioActual.Empresa, FolioFiscalCancelar, 0, RFCReceptorCancelar, UsuarioActual.Empresa.RFC, CvePACCancelacion) Then
- If ObjBanco.UpdateComplementoPago(CveComplementoPagoCancelar, "-1", -1, UsuarioActual.CveEmpresa, 2, CvePACCancelacion, FechaCancelacion:=ObjCancelacion.CancelacionFecha, SelloCancelacion:=ObjCancelacion.CancelacionAcuse) Then
+
+ If EstatusSATCancelado(FolioFiscalCancelar, UsuarioActual.Empresa.RFC, RFCReceptorCancelar) Then
+
+ If ObjBanco.UpdateComplementoPago(CveComplementoPagoCancelar, "-1", -1, UsuarioActual.CveEmpresa, 2, CvePACCancelacion, FechaCancelacion:=Date.Now, SelloCancelacion:="") Then
CargaComplementosPago()
-
- ' RegistraScript("$('#ModalCancelarComplemetno').modal('hide');")
Alert("El complemento se cancelo correctamente.")
End If
Else
- Alert("Se presento un error al cancelar el complemento.")
+
+ If ObjCancelacion.CFDICancelar(UsuarioActual.Empresa, FolioFiscalCancelar, 0, RFCReceptorCancelar, UsuarioActual.Empresa.RFC, CvePACCancelacion) Then
+
+ If ObjBanco.UpdateComplementoPago(CveComplementoPagoCancelar, "-1", -1, UsuarioActual.CveEmpresa, 2, CvePACCancelacion, FechaCancelacion:=ObjCancelacion.CancelacionFecha, SelloCancelacion:=ObjCancelacion.CancelacionAcuse) Then
+
+ Alert("El complemento se cancelo correctamente.")
+ End If
+ Else
+ Alert("Se presento un error al cancelar el complemento.", TipoMensaje.MsgError)
+ End If
+
End If
ObjBanco.Dispose()
-
-
- '' INICIO Version 2
- 'CveComplementoPagoCancelar = GvRow.DataKey("CveComplementoPago").ToEntero
- 'FolioFiscalCancelar = GvRow.DataKey("FolioFiscal").ToString
- '' Dim RFCEmisor As String = UsuarioActual.Empresa.RFC
- 'RFCReceptorCancelar = GvRow.DataKey("RFCReceptor")
- 'CvePACCancelacion = GvRow.DataKey("CvePAC").ToEntero
-
- 'RegistraScript("$('#ModalCancelarComplemetno').modal('show');")
-
- 'RdlCancelarComplemento.SelectedValue = "1"
- 'DivFechaCancelación.Visible = False
- 'UpModalCancelarComplemetno.Update()
- '' FIN Version 2
+ CargaComplementosPago()
End Sub
@@ -5703,4 +5714,44 @@ Partial Class Bancos_IE
End Sub
+ 'Protected Sub LnkEstatusSAT_Click(sender As Object, e As EventArgs)
+
+ ' Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).BindingContainer, GridViewRow)
+
+ ' Dim FolioFiscal As String = GvRow.DataKey("FolioFiscal").ToString
+ ' Dim RFCReceptor As String = GvRow.DataKey("RFCReceptor")
+
+
+ ' EstatusSATCancelado(FolioFiscal, UsuarioActual.Empresa.RFC, RFCReceptor)
+
+ ' 'Dim Vigencia = Timbrado.VerificarVigenciaSAT(FolioFiscal, UsuarioActual.Empresa.RFC, RFCReceptor, "0", True)
+
+ ' 'If Vigencia IsNot Nothing Then
+ ' ' Alert($"Estatus SAT: { Vigencia.Estado }")
+ ' 'End If
+
+ 'End Sub
+
+
+ Function EstatusSATCancelado(FolioFiscal As String, RFCDe As String, RFCReceptor As String) As Boolean
+
+ Dim respuesta As Boolean = False
+
+ Dim Vigencia = Timbrado.VerificarVigenciaSAT(FolioFiscal, RFCDe, RFCReceptor, "0", True)
+
+ If Vigencia IsNot Nothing Then
+ If Vigencia.Estado.ToUpper = "CANCELADO" Then
+ respuesta = True
+ Else
+ respuesta = False
+ End If
+ Else
+ respuesta = False
+ End If
+
+
+
+ Return respuesta
+ End Function
+
End Class
\ No newline at end of file
diff --git a/CRM/CatMetas.aspx b/CRM/CatMetas.aspx
new file mode 100644
index 000000000..17e2476e1
--- /dev/null
+++ b/CRM/CatMetas.aspx
@@ -0,0 +1,294 @@
+<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="CatMetas.aspx.vb" Inherits="CRM_CatMetas" %>
+
+
+
+
+
+
+
+ Catálogo de Metas
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/CRM/CatMetas.aspx.vb b/CRM/CatMetas.aspx.vb
new file mode 100644
index 000000000..6696eacc3
--- /dev/null
+++ b/CRM/CatMetas.aspx.vb
@@ -0,0 +1,169 @@
+Imports System.Data
+Imports Extensiones
+
+
+Partial Class CRM_CatMetas
+ Inherits ClsPaginas
+
+ Private Property CveMeta As Integer
+ Get
+ If Not ViewState("CveMeta") Is Nothing Then
+ Return ViewState("CveMeta").ToString.ToEntero
+ Else
+ Return -1
+ End If
+
+ End Get
+ Set(value As Integer)
+ ViewState("CveMeta") = value
+ End Set
+
+ End Property
+
+ Private Property Actualizar As Boolean
+ Get
+ If Not ViewState("Actualizar") Is Nothing Then
+ Return DirectCast(ViewState("Actualizar"), Boolean)
+ Else
+ Return False
+ End If
+ End Get
+ Set(value As Boolean)
+ ViewState("Actualizar") = value
+ End Set
+ End Property
+
+ Private Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
+
+ If Not Page.IsPostBack Then
+ txtFechaIF.Text = Now.ToShortDateString
+ txtFechaFF.Text = Now.Day.ToString + "/" + (Now.Month + 1).ToString + "/" + Now.Year.ToString
+ CargadatosGvMeta()
+ End If
+
+ End Sub
+
+ Private Sub CargadatosGvMeta()
+
+ Dim ObjCRM As New ClsCRM
+
+ If ObjCRM.GetMetas(txtFechaIF.Text.ToDateTime, txtFechaFF.Text.ToDateTime, DdlEstatus.SelectedValue.ToEntero, UsuarioActual.CveEmpresa) Then
+ GvMeta.DataSource = ObjCRM.DtResultados
+ Else
+ GvMeta.DataSource = Nothing
+ End If
+
+ ObjCRM.Dispose()
+
+ UPGvMeta.DataBind()
+ UpGral.Update()
+
+ End Sub
+
+ Protected Sub BtnAgregarMeta_Click(sender As Object, e As EventArgs) Handles BtnAgregarMeta.Click
+ LtlTituloModalMeta.Text = "Agregar Meta"
+ BtnAgregarMetaModal.Text = "Agregar"
+
+ CargaVendedores()
+ txtFechaI.Text = Now.ToShortDateString
+ txtFechaF.Text = (Now.Day + 1).ToString + "/" + Now.Month.ToString + "/" + Now.Year.ToString
+
+ Actualizar = False
+ UpGral.Update()
+ RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarMeta"))
+
+ End Sub
+
+ Private Sub CargaVendedores()
+ DdlVendedor.Items.Clear()
+ DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa, 1)
+ DdlVendedor.DataBind()
+ DdlVendedor.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ End Sub
+
+ Protected Sub BtnAgregarMetaModal_Click(sender As Object, e As EventArgs) Handles BtnAgregarMetaModal.Click
+
+ Dim ObjCRM As New ClsCRM
+
+ If Not Actualizar Then
+ If ObjCRM.AddMetas(DdlVendedor.SelectedValue.ToEntero, txtFechaI.Text.ToDateTime, txtFechaF.Text.ToDateTime, TxtNumMeta.Text.ToEntero, TxtImporte.Text.ToDecimal, UsuarioActual.CveEmpresa) Then
+
+ CargadatosGvMeta()
+ RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarMeta"), "jsHideModalMeta")
+ Alert("Meta Agregada Correctamente", TipoMensaje.MsgInformacion)
+ Else
+ Alert("Ocurrió un error al guardar la Meta", TipoMensaje.MsgError)
+ End If
+ Else
+ If ObjCRM.UpdateMetas(CveMeta, DdlVendedor.SelectedValue.ToEntero, txtFechaI.Text.ToDateTime, txtFechaF.Text.ToDateTime, TxtNumMeta.Text.ToEntero, TxtImporte.Text.ToDecimal, UsuarioActual.CveEmpresa) Then
+
+ CargadatosGvMeta()
+ RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarMeta"), "jsHideModalMeta")
+ Alert("Meta Actualizada Correctamente", TipoMensaje.MsgInformacion)
+ Else
+ Alert("Ocurrió un error al Actualizar la Meta", TipoMensaje.MsgError)
+ End If
+ End If
+
+ CveMeta = -1
+ Actualizar = False
+
+ ObjCRM.Dispose()
+
+ End Sub
+
+ Public Sub Remove_ClickMeta(sender As Object, e As EventArgs)
+
+ Dim ObjCRM As New ClsCRM
+ Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
+ CveMeta = GvRow.DataKey("CveMeta")
+
+ If ObjCRM.RemoveMetas(CveMeta, UsuarioActual.CveEmpresa) Then
+ CargadatosGvMeta()
+
+ Alert("Meta eliminada Correctamente ", TipoMensaje.MsgInformacion)
+ Else
+ Alert("Ocurrió un error al Eliminar la Meta", TipoMensaje.MsgError)
+ End If
+
+ ObjCRM.Dispose()
+
+ CargadatosGvMeta()
+
+ CveMeta = -1
+
+ End Sub
+
+ Public Sub Edit_ClickMeta(sender As Object, e As EventArgs)
+
+ Dim GvRow As GridViewRow = DirectCast(DirectCast(sender, LinkButton).NamingContainer, GridViewRow)
+
+ LtlTituloModalMeta.Text = "Editar Meta"
+ BtnAgregarMetaModal.Text = "Actualizar"
+ Actualizar = True
+
+ CveMeta = GvRow.DataKey("CveMeta")
+
+
+ DdlVendedor.Items.Clear()
+ DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa, 1)
+ DdlVendedor.DataBind()
+ DdlVendedor.SelectedValueExist(GvRow.DataKey("CveVendedor").ToEntero)
+
+ txtFechaI.Text = GvRow.DataKey("FechaI")
+ txtFechaF.Text = GvRow.DataKey("FechaF")
+
+ TxtNumMeta.Text = GvRow.DataKey("NumMeta").ToEntero
+
+ TxtImporte.Text = GvRow.DataKey("Importe").ToDecimal.ToString("###,###,###.00")
+
+ UpModalMeta.Update()
+
+ RegistraScript(String.Format("$('#{0}').modal();", "DivAgregarMeta"))
+
+ End Sub
+
+ Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
+ CargadatosGvMeta()
+ End Sub
+End Class
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb
index 64ff4233c..fd069c6b0 100644
--- a/Compras/Compras.aspx.vb
+++ b/Compras/Compras.aspx.vb
@@ -1409,6 +1409,7 @@ Partial Class Compras_Compras
ChkAplicaNotaCredito.Enabled = False
RBLPago.Enabled = False
BtnGuardar.Enabled = False
+ BtnGuardar.ToolTip = "Obliga a seleccionar una Orden de compra para su registro."
End If
diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb
index 06016b375..a48a53404 100644
--- a/Inventarios/EntradasSalidas.aspx.vb
+++ b/Inventarios/EntradasSalidas.aspx.vb
@@ -1498,9 +1498,11 @@ Partial Class Inventarios_EntradasSalidas
'Registro la prepóliza
If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then
Dim tValorInventario As Decimal = ObjInventario.DtResultados.SUM("Total", "").ToDecimal.RoundSQL()
+ Dim tValorOtro As Decimal = tValorInventario
Dim idCtaContable As Integer = 0
Dim IdCtaContableOtro As Integer = UsuarioActual.Empresa.IdCuentaOtrosIngresos
Dim TipoMovtoAlmacen As Boolean = False
+ Dim TipoMovtoOtro As Boolean = True
Dim tCveSubProyecto As Integer = -1
Dim drA2 As DataRow = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimero(String.Format("CveAlmacen = {0}", DdlAlmacen.SelectedValue))
@@ -1530,6 +1532,8 @@ Partial Class Inventarios_EntradasSalidas
End If
Case 13, 29
CveConceptoContable = 69
+ TipoMovtoOtro = True
+ tValorOtro = -tValorOtro
Dim drr As DataRow = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimero("")
If drr IsNot Nothing Then
CveClasificacion = drr("CveClasificacion").ToString.ToEntero
@@ -1556,7 +1560,7 @@ Partial Class Inventarios_EntradasSalidas
' End If
'Next
'Case Else
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovtoAlmacen, tValorInventario, TxtObservaciones.Text.Trim, CveConceptoContable, TxtObservaciones.Text.Trim, TxtFecha.Text.ToDate, IdCtaContableOtro, -1, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=tValorInventario, CveSubProyecto:=tCveSubProyecto, CveClasificacion:=CveClasificacion) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoOtro, tValorOtro, TxtObservaciones.Text.Trim, CveConceptoContable, TxtObservaciones.Text.Trim, TxtFecha.Text.ToDate, IdCtaContableOtro, -1, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=tValorOtro, CveSubProyecto:=tCveSubProyecto, CveClasificacion:=CveClasificacion) Then
ErrorMovInv = True
End If
'End Select
diff --git a/LogMail.txt b/LogMail.txt
index b29b0397b..00f4b2bed 100644
--- a/LogMail.txt
+++ b/LogMail.txt
@@ -1 +1,7 @@
-
28/08/2019:04:44 p. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 79
28/08/2019:05:48 p. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 80
02/09/2019:11:00 a. m. From:'signotificaciones@adssistemas.mx' - Para:'x@x.com' - Asunto:'Entrega de Factura SUCURSAL NARANJO SN-22' - CCP: '' - Adjuntos: 1
02/09/2019:11:00 a. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com' - Asunto:'Entrega de Factura SUCURSAL NARANJO SN-23' - CCP: '' - Adjuntos: 1
\ No newline at end of file
+
28/08/2019:04:44 p. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 79
28/08/2019:05:48 p. m. No se especifico a remitente - SIG - Se Genero una Recepción de Usados con el folio: 80
02/09/2019:11:00 a. m. From:'signotificaciones@adssistemas.mx' - Para:'x@x.com' - Asunto:'Entrega de Factura SUCURSAL NARANJO SN-22' - CCP: '' - Adjuntos: 1
02/09/2019:11:00 a. m. From:'signotificaciones@adssistemas.mx' - Para:'japmx95@gmail.com' - Asunto:'Entrega de Factura SUCURSAL NARANJO SN-23' - CCP: '' - Adjuntos: 1
05/09/2019:11:02 a. m. From:'signotificaciones@adssistemas.mx' - Para:';' - Asunto:'Envío de complemento de pago' - CCP: '' - Adjuntos: 2
+ - Ocurrió un error al mandar correo.System.InvalidOperationException: Se debe especificar un destinatario.
+ en System.Net.Mail.SmtpClient.Send(MailMessage message)
+ en ClsSisMail.FinalSend(Mail ObjMail) en C:\inetpub\WWWSIGIT\App_Code\ClsSisMail.vb:línea 129
05/09/2019:12:31 p. m. From:'signotificaciones@adssistemas.mx' - Para:';' - Asunto:'Envío de complemento de pago' - CCP: '' - Adjuntos: 2
+ - Ocurrió un error al mandar correo.System.InvalidOperationException: Se debe especificar un destinatario.
+ en System.Net.Mail.SmtpClient.Send(MailMessage message)
+ en ClsSisMail.FinalSend(Mail ObjMail) en C:\inetpub\WWWSIGIT\App_Code\ClsSisMail.vb:línea 129
\ No newline at end of file
diff --git a/LogTimbrado.txt b/LogTimbrado.txt
index 7e80f243d..65aaf8d76 100644
--- a/LogTimbrado.txt
+++ b/LogTimbrado.txt
@@ -6,3 +6,7 @@
.. PAC: 2 - Verificado : (200) 200 Armado: (398) 598 Guardado: (564) 1162 Timbrado: (2342) 3504 Actualizado: (456) 3960 ..02/09/2019:11:00 a. m.
.. PAC: 2 - Verificado : (170) 170 Armado: (285) 455 Guardado: (333) 788 Timbrado: (1949) 2737 Actualizado: (20) 2757 ..02/09/2019:11:00 a. m.
+
+ .. PAC: 3 - Verificado : (37) 37 Armado: (43) 80 Genera: (0) 80 Timbrado: (7893) 7973 Actualizado: (19) 7992 ..05/09/2019:11:02 a. m.
+
+ .. PAC: 3 - Verificado : (36) 36 Armado: (32) 68 Genera: (0) 68 Timbrado: (10604) 10672 Actualizado: (16) 10688 ..05/09/2019:12:31 p. m.