diff --git a/AF/RepDepreciacion.aspx.vb b/AF/RepDepreciacion.aspx.vb index 8196671a1..a09fd2d78 100644 --- a/AF/RepDepreciacion.aspx.vb +++ b/AF/RepDepreciacion.aspx.vb @@ -64,7 +64,7 @@ Partial Class AF_RepDepreciacion Dim MensajeAlert As New StringBuilder MensajeAlert.Append("Se ha generado la depreciación") - MensajeAlert.AppendFormat("

ver PrePóliza", CvePrePoliza) + MensajeAlert.AppendFormat("

ver PrePóliza", CvePrePoliza) Alert(MensajeAlert.ToString, TipoMensaje.MsgInformacion) diff --git a/App_Code/CFDITimbre.vb b/App_Code/CFDITimbre.vb index 6294e3a8a..b1aa67145 100644 --- a/App_Code/CFDITimbre.vb +++ b/App_Code/CFDITimbre.vb @@ -16,6 +16,7 @@ Public Class CFDITimbre Public Property ComplementoPagos As CFDIComplementoPago Public Property ComplementoPagos20 As CFDIComplementoPagos20 Public Property Complementos As CFDIComplementos + Public Property InformacionGlobal As CFDIInformacionGlobal Public Property Timbrado As Boolean Public Property IStimbreFiniquito As Boolean @@ -111,6 +112,7 @@ Public Class CFDITimbre StrMsg = New StringBuilder Comprobante = New CFDIComprobante CFDIRelacionados = New CFDIRelacionados + InformacionGlobal = New CFDIInformacionGlobal Conceptos = New List(Of CFDIConceptos) Emisor = New CFDIEmisor Receptor = New CFDIReceptor @@ -257,6 +259,18 @@ Public Class CFDIComplementos End Class + +Public Class CFDIInformacionGlobal + Public Property Perioricidad As String = "" + Public Property Meses As String = "" + Public Property Año As String = "" + + Sub New() + + End Sub + +End Class + Public Class CFDIRelacionados Public Property TipoRelacion As String diff --git a/App_Code/ClsBancos.vb b/App_Code/ClsBancos.vb index d877b25ec..e2d59310b 100644 --- a/App_Code/ClsBancos.vb +++ b/App_Code/ClsBancos.vb @@ -1798,25 +1798,15 @@ Public Class ClsBancos End With Try + SqlAdapter.SelectCommand.CommandTimeout = 0 SqlAdapter.Fill(Data) - - Retorno = Boolean.Parse(SqlAdapter.SelectCommand.Parameters("@TerminoCorrecto").Value.ToString) - - - 'Catch Ex1 As SqlException - - ' Me.OnError("Ocurrió un error al guardar los cambios en el Banco", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) - Catch ex As Exception - If ex.Message.Contains("El Movimiento no se puede eliminar porque tiene una cancelación relacionada") Then OnError("El Movimiento no se puede eliminar porque tiene una cancelación relacionada, se tiene que eliminar primero la cancelación.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) Else OnError("Ocurrió un error al eliminar el movimiento en bancos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo) End If - - End Try Return Retorno diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb index d4f433f47..81a751e4c 100644 --- a/App_Code/ClsPaginas.vb +++ b/App_Code/ClsPaginas.vb @@ -761,29 +761,29 @@ Public Class ClsPaginas Application(AppNombre) = value End Set End Property - Property GlobalDTRegimenesFiscales(Optional TipoPersona As Integer = -1) As DataTable + Public Shared Property GlobalDTRegimenesFiscales(Optional TipoPersona As Integer = -1) As DataTable Get Dim AppNombre As String = "GlobalDTRegimenesFiscales" - If Application(AppNombre) Is Nothing Then + If HttpContext.Current.Application(AppNombre) Is Nothing Then Dim ObjGral As New ClsSisEmpresas - If ObjGral.GetRegimenFiscal(-1) Then Application(AppNombre) = ObjGral.DtResultados + If ObjGral.GetRegimenFiscal(-1) Then HttpContext.Current.Application(AppNombre) = ObjGral.DtResultados ObjGral.Dispose() End If If TipoPersona <> -1 Then Dim Str As New StringBuilder If TipoPersona = 0 Then Str.Append("AplicaPersonaFisica = 1") '0 - Fisica If TipoPersona = 1 Then Str.Append("AplicaPersonaMoral = 1") '1 - Moral - Dim Dv As New DataView(DirectCast(Application(AppNombre), DataTable), Str.ToString(), "", DataViewRowState.CurrentRows) + Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), Str.ToString(), "", DataViewRowState.CurrentRows) GlobalDTRegimenesFiscales = Dv.ToTable Dv.Dispose() Else - GlobalDTRegimenesFiscales = DirectCast(Application(AppNombre), DataTable) + GlobalDTRegimenesFiscales = DirectCast(HttpContext.Current.Application(AppNombre), DataTable) End If End Get Set(value As DataTable) Dim AppNombre As String = String.Format("GlobalDTRegimenesFiscales") - Application(AppNombre) = value + HttpContext.Current.Application(AppNombre) = value End Set End Property Property GlobalDTNomSatRiesgoPuesto() As DataTable diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb index a390a7455..cb05523bc 100644 --- a/App_Code/Modelos.vb +++ b/App_Code/Modelos.vb @@ -2155,7 +2155,7 @@ Namespace Modelos PedidoContrato:=factura.PedidoContrato, ObservacionesAlmacen:=factura.ObservacionesAlmacen, CveSubProyecto:=factura.CveSubProyecto, CveSubProyectoCobranza:=factura.CveSubProyectoCobranza, CveSubProyectoEjecucion:=factura.CveSubProyectoEjecucion, CveFormaPago33:=factura.CveFormaPago33, CveMetodoPago33:=factura.CveMetodoPago33, CveUsoCFDI:=factura.CveUsoCFDI, OrdenCompra:=factura.OrdenCompra, CveCuentaTerminal:=factura.CveCuentaTerminal, CveTipoRelacion:=factura.CveTipoRelacion, ImpuestoLocal:=TotalImpuestoLocal, CveVentaRelacion:=(If(factura.CveVentaRelacion.ToEntero > 0, factura.CveVentaRelacion, -1)), ImporteRelacion:=(If(factura.ImporteRelacion <> Nothing, factura.ImporteRelacion, -1)), - CveTipoAmortizacionAnticipo:=factura.CveTipoAmortizacionAnticipo, CveEmpresaCRM:=CveEmpresaCRM, EsInterno:=EsInterno, ServicioDomicilio:=factura.ServicioDomicilio, RFCReceptor:=RFCReceptor, EsGarantia:=factura.EsGarantia, DescripcionVenta:=factura.DescripcionVenta, + CveTipoAmortizacionAnticipo:=factura.CveTipoAmortizacionAnticipo, CveEmpresaCRM:=CveEmpresaCRM, EsInterno:=EsInterno, ServicioDomicilio:=factura.ServicioDomicilio, RFCReceptor:=RFCReceptor, EsGarantia:=factura.EsGarantia, DescripcionVenta:=factura.DescripcionVenta, CveVentaTerminal:=factura.CveVentaTerminal, CveMedico:=factura.CveMedico, CveProcedimiento:=factura.CveProcedimiento, CveTipoVenta:=factura.CveTipoVenta, FechaParaSurtir:=factura.FechaParaSurtir, Paciente:=factura.Paciente, Episodio:=factura.Episodio) Then ErrorList.Add("Ocurrió un error al Generar la Venta.
Revise su factura y cualquier detalle comuníquese a Soporte Técnico") @@ -7429,6 +7429,7 @@ Namespace Modelos Public Property Num3 As Double = 0 Public Property DiasCredito As Integer Public Property EsDiasCreditoFijo As Boolean + Public Property CveVentaTerminal As Integer = 0 Public Property CveCorte As Integer = -1 'Public Property CveMesa As Integer = -1 Public Property NumeroPersonas As Integer = 0 diff --git a/App_Code/Timbrado.vb b/App_Code/Timbrado.vb index 37405a912..14752c0b4 100644 --- a/App_Code/Timbrado.vb +++ b/App_Code/Timbrado.vb @@ -2341,6 +2341,9 @@ Public Class Timbrado cfdi.CfdiRelacionado(uid) Next End If + If ObjCFDITimbre.InformacionGlobal IsNot Nothing AndAlso ObjCFDITimbre.InformacionGlobal.Perioricidad <> "" Then + cfdi.InformacionGlobal(ObjCFDITimbre.InformacionGlobal.Perioricidad, ObjCFDITimbre.InformacionGlobal.Meses, ObjCFDITimbre.InformacionGlobal.Año) + End If #Region "Emisor" ' cfdi.agregarCfdiRelacionados() cfdi.Emisor(EmisorRFC, UsuarioActual.Empresa.Empresa, UsuarioActual.Empresa.CodigoRegimenFiscal, "") @@ -2613,86 +2616,84 @@ Public Class Timbrado End if #End Region - - End If #Region "C O M P L E M E N T O C A R T A P O R T E" - 'If UsuarioActual.CveEmpresa = 13 Then - ' If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then + If UsuarioActual.CveEmpresa = 13 Then - ' Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte + If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then - ' ''DATOS GENERALES - ' cfdi.CartaPorte(Carta.TranspInternac, Carta.EntradaSalidaMercancia, "", Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida) - ' 'cfdi.CartaPorte30("", Carta.TranspInternac, Carta.RegimenAduanero, Carta.EntradaSalidaMercancia, "", Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida, Carta.RegistroITSMO, Carta.UbicacionPoloOrigen, Carta.UbicacionPoloDestino) + Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte - ' 'UBICACIONES - ' If Carta.Ubicaciones IsNot Nothing AndAlso Carta.Ubicaciones.Count > 0 Then - ' For Each ubica As CFDICartaPorteUbicacion In Carta.Ubicaciones - ' 'origen - ' cfdi.CartaPorteUbicacion(ubica.TipoUbicacion, ubica.IDUbicacion, ubica.RFCRemitenteDestinatario, ubica.NombreRemitenteDestinatario, ubica.NumRegIdTrib, ubica.ResidenciaFiscal, ubica.NumEstacion, ubica.NombreEstacion, ubica.NavegacionTrafico, ubica.FechaHoraSalidaLlegada, ubica.TipoEstacion, ubica.DistanciaRecorrida) - ' 'cfdi.CartaPorteOrigen(ubica.Origen.IDOrigen, ubica.Origen.RFCRemitente, ubica.Origen.NombreRemitente, ubica.NumRegIdTrib, ubica.Origen.ResidenciaFiscal, ubica.Origen.NumEstacion, ubica.Origen.NombreEstacion, ubica.Origen.NavegacionTrafico, ubica.Origen.FechaHoraSalida) - ' cfdi.CartaPorteDomicilio(ubica.Domicilio.Calle, ubica.Domicilio.NumeroExterior, ubica.Domicilio.NumeroInterior, ubica.Domicilio.Colonia, ubica.Domicilio.Localidad, ubica.Domicilio.Referencia, ubica.Domicilio.Municipio, ubica.Domicilio.Estado, ubica.Domicilio.Pais, ubica.Domicilio.CP) - ' Next + ''DATOS GENERALES + cfdi.CartaPorte(Carta.TranspInternac, Carta.EntradaSalidaMercancia, "", Carta.ViaEntradaSalida, Carta.TotalDistanciaRecorrida) - ' End If + 'UBICACIONES + If Carta.Ubicaciones IsNot Nothing AndAlso Carta.Ubicaciones.Count > 0 Then + For Each ubica As CFDICartaPorteUbicacion In Carta.Ubicaciones + 'origen + cfdi.CartaPorteUbicacion(ubica.TipoUbicacion, ubica.IDUbicacion, ubica.RFCRemitenteDestinatario, ubica.NombreRemitenteDestinatario, ubica.NumRegIdTrib, ubica.ResidenciaFiscal, ubica.NumEstacion, ubica.NombreEstacion, ubica.NavegacionTrafico, ubica.FechaHoraSalidaLlegada, ubica.TipoEstacion, ubica.DistanciaRecorrida) + 'cfdi.CartaPorteOrigen(ubica.Origen.IDOrigen, ubica.Origen.RFCRemitente, ubica.Origen.NombreRemitente, ubica.NumRegIdTrib, ubica.Origen.ResidenciaFiscal, ubica.Origen.NumEstacion, ubica.Origen.NombreEstacion, ubica.Origen.NavegacionTrafico, ubica.Origen.FechaHoraSalida) + cfdi.CartaPorteDomicilio(ubica.Domicilio.Calle, ubica.Domicilio.NumeroExterior, ubica.Domicilio.NumeroInterior, ubica.Domicilio.Colonia, ubica.Domicilio.Localidad, ubica.Domicilio.Referencia, ubica.Domicilio.Municipio, ubica.Domicilio.Estado, ubica.Domicilio.Pais, ubica.Domicilio.CP) + Next - ' 'MERCANCIAS - ' If Carta.Mercancias IsNot Nothing Then - ' cfdi.CartaPorteMercancias(Carta.Mercancias.PesoBrutoTotal, Carta.Mercancias.UnidadPeso, Carta.Mercancias.PesoNetoTotal, Carta.Mercancias.NumTotalMercancias, Carta.Mercancias.CargoporTasacion) - ' If Carta.Mercancias IsNot Nothing AndAlso Carta.Mercancias.Mercancias.Count > 0 Then - ' For Each concep As CFDICartaPorteMercancia In Carta.Mercancias.Mercancias - ' If concep.ValorMercancia <= 0 Then concep.Moneda = "" - ' cfdi.CartaPorteMercancia(concep.BienesTransp, concep.ClaveSTCC, concep.Descripción, concep.Cantidad, concep.ClaveUnidad, concep.Unidad, concep.Dimensiones, concep.MaterialPeligroso, concep.ClaveMaterialPeligroso, If(concep.ClaveMaterialPeligroso <> "", concep.Embalaje, ""), If(concep.ClaveMaterialPeligroso <> "", concep.DescripEmbalaje, ""), concep.PesoenKg, concep.ValorMercancia, concep.Moneda, concep.FraccionArrancelaria, concep.UUIDComercioExt) - ' For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta - ' cfdi.CartaPorteCantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) - ' Next - ' Next - ' End If - ' End If - ' ' - ' If Carta.FiguraTransporte IsNot Nothing Then + End If - ' If Carta.FiguraTransporte.AutoTransporte IsNot Nothing Then + 'MERCANCIAS + If Carta.Mercancias IsNot Nothing Then + cfdi.CartaPorteMercancias(Carta.Mercancias.PesoBrutoTotal, Carta.Mercancias.UnidadPeso, Carta.Mercancias.PesoNetoTotal, Carta.Mercancias.NumTotalMercancias, Carta.Mercancias.CargoporTasacion) + If Carta.Mercancias IsNot Nothing AndAlso Carta.Mercancias.Mercancias.Count > 0 Then + For Each concep As CFDICartaPorteMercancia In Carta.Mercancias.Mercancias + If concep.ValorMercancia <= 0 Then concep.Moneda = "" + cfdi.CartaPorteMercancia(concep.BienesTransp, concep.ClaveSTCC, concep.Descripción, concep.Cantidad, concep.ClaveUnidad, concep.Unidad, concep.Dimensiones, concep.MaterialPeligroso, concep.ClaveMaterialPeligroso, If(concep.ClaveMaterialPeligroso <> "", concep.Embalaje, ""), If(concep.ClaveMaterialPeligroso <> "", concep.DescripEmbalaje, ""), concep.PesoenKg, concep.ValorMercancia, concep.Moneda, concep.FraccionArrancelaria, concep.UUIDComercioExt) + For Each transp As CFDICartaPorteMercanciaTransporta In concep.MercanciasCantidadTransporta + cfdi.CartaPorteCantidadTransporta(transp.Cantidad, transp.IDOrigen, transp.IDDestino, transp.CvesTransportes) + Next + Next + End If + End If + ' + If Carta.FiguraTransporte IsNot Nothing Then - ' cfdi.CartaPorteAutotransporte(Carta.FiguraTransporte.AutoTransporte.PermisoSCT, Carta.FiguraTransporte.AutoTransporte.NumPermisoSCT) + If Carta.FiguraTransporte.AutoTransporte IsNot Nothing Then - ' cfdi.CartaPorteIdentificacionVehicular(Carta.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PlacaVM, Carta.FiguraTransporte.AutoTransporte.Vehiculo.AnioModeloVM) + cfdi.CartaPorteAutotransporte(Carta.FiguraTransporte.AutoTransporte.PermisoSCT, Carta.FiguraTransporte.AutoTransporte.NumPermisoSCT) - ' cfdi.CartaPorteSeguros(Carta.FiguraTransporte.AutoTransporte.NombreSeguroResponsabilidadCivil, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroResponsabilidadCivil, - ' Carta.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente, - ' Carta.FiguraTransporte.AutoTransporte.NombreSeguroCarga, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroCarga, - ' Carta.FiguraTransporte.AutoTransporte.PrimaSeguro) + cfdi.CartaPorteIdentificacionVehicular(Carta.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular, Carta.FiguraTransporte.AutoTransporte.Vehiculo.PlacaVM, Carta.FiguraTransporte.AutoTransporte.Vehiculo.AnioModeloVM) - ' If Carta.FiguraTransporte.AutoTransporte.Remolques IsNot Nothing AndAlso Carta.FiguraTransporte.AutoTransporte.Remolques.Count > 0 Then - ' For Each concep As CFDICartaPorteRemolque In Carta.FiguraTransporte.AutoTransporte.Remolques - ' cfdi.CartaPorteRemolque(concep.SubTipoRemolque, concep.Placa) - ' Next + cfdi.CartaPorteSeguros(Carta.FiguraTransporte.AutoTransporte.NombreSeguroResponsabilidadCivil, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroResponsabilidadCivil, + Carta.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroMedioAmbiente, + Carta.FiguraTransporte.AutoTransporte.NombreSeguroCarga, Carta.FiguraTransporte.AutoTransporte.PolizaSeguroCarga, + Carta.FiguraTransporte.AutoTransporte.PrimaSeguro) - ' End If - ' End If + If Carta.FiguraTransporte.AutoTransporte.Remolques IsNot Nothing AndAlso Carta.FiguraTransporte.AutoTransporte.Remolques.Count > 0 Then + For Each concep As CFDICartaPorteRemolque In Carta.FiguraTransporte.AutoTransporte.Remolques + cfdi.CartaPorteRemolque(concep.SubTipoRemolque, concep.Placa) + Next - ' If Carta.FiguraTransporte.Operadores IsNot Nothing AndAlso Carta.FiguraTransporte.Operadores.Count > 0 Then - ' For Each concep As CFDICartaPorteOperador In Carta.FiguraTransporte.Operadores - ' cfdi.CartaPorteTiposFigura(concep.TipoFigura, concep.RFCFigura, concep.NumLicencia, concep.NombreFigura, concep.NumRegidTribFigura, If(concep.ResidenciaFiscalFigura <> "MEX", concep.ResidenciaFiscalFigura, "")) - ' If concep.TipoFigura.Contiene("02", "03") Then ' “02”- Propietario o “03” -Arrendador - ' cfdi.CartaPortePartesTransporte("PT01") - ' cfdi.CartaPortePartesTransporteDomicilio(concep.Domicilio.Calle, concep.Domicilio.NumeroExterior, concep.Domicilio.NumeroInterior, concep.Domicilio.Colonia, concep.Domicilio.Localidad, concep.Domicilio.Referencia, concep.Domicilio.Municipio, concep.Domicilio.Estado, concep.Domicilio.Pais, concep.Domicilio.CP) - ' End If - ' Next - ' End If + End If + End If - ' End If + If Carta.FiguraTransporte.Operadores IsNot Nothing AndAlso Carta.FiguraTransporte.Operadores.Count > 0 Then + For Each concep As CFDICartaPorteOperador In Carta.FiguraTransporte.Operadores + cfdi.CartaPorteTiposFigura(concep.TipoFigura, concep.RFCFigura, concep.NumLicencia, concep.NombreFigura, concep.NumRegidTribFigura, If(concep.ResidenciaFiscalFigura <> "MEX", concep.ResidenciaFiscalFigura, "")) + If concep.TipoFigura.Contiene("02", "03") Then ' “02”- Propietario o “03” -Arrendador + cfdi.CartaPortePartesTransporte("PT01") + cfdi.CartaPortePartesTransporteDomicilio(concep.Domicilio.Calle, concep.Domicilio.NumeroExterior, concep.Domicilio.NumeroInterior, concep.Domicilio.Colonia, concep.Domicilio.Localidad, concep.Domicilio.Referencia, concep.Domicilio.Municipio, concep.Domicilio.Estado, concep.Domicilio.Pais, concep.Domicilio.CP) + End If + Next + End If - ' End If - 'Else + End If + + End If + Else - If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then + If ObjCFDITimbre.Complementos.CartaPorte IsNot Nothing Then Dim Carta As CFDICartaPorte = ObjCFDITimbre.Complementos.CartaPorte @@ -2757,7 +2758,7 @@ Public Class Timbrado End If End If End If - 'End If + End If #End Region diff --git a/Ashx/E119.ashx b/Ashx/E119.ashx index cbf1d3adf..2b167fce5 100644 --- a/Ashx/E119.ashx +++ b/Ashx/E119.ashx @@ -381,6 +381,7 @@ Public Class E119 : Implements IHttpHandler Dim Cantidad, PU, Descuento As Decimal Dim CveDireccionEnvio As Integer = 0 Dim Obs As String = "" + Dim IdEcommerce As Integer = 0 CveSubProyecto = 12659 ' fijo Ecommerce CveCliente = 0 CveMoneda = 1 @@ -388,9 +389,44 @@ Public Class E119 : Implements IHttpHandler MsgLog.AppendLine("1.3 billing") Dim RFC As String = "" Dim NombreCliente As String = "" - If JsonRequest("billing") IsNot Nothing Then - RFC = JsonRequest("billing")("first_name").ToString() + Dim RegimenCliente As String = "" + Dim UsoCFDI As String = "" + Dim CveUsoCFDI As Integer = -1 + IdEcommerce = JsonRequest("wp_sale_id").ToEntero + Dim Registrada As Boolean = False + If IdEcommerce > 0 Then + Dim objVenta As New ClsVentas + If objVenta.GetVentaTerminal(IdEcommerce, MinFecha, CveSubProyecto, CveEmpresa) Then + Dim dr As DataRow = objVenta.DtResultados.FiltroPrimero("") + If dr IsNot Nothing Then + MsgLog.AppendLine("0.10 remisión registrada previamente") + Dim data As New JArray + Dim objSucursal As New JObject( + New JProperty("Cve", dr("CveVenta")), + New JProperty("SerieFolio", dr("SerieFolio")) + ) + data.Add(objSucursal) + Respuesta.status = "success" + Respuesta.data = data + Registrada = True + End If + End If + objVenta.Dispose() + End If + + If Registrada Then + context.Response.StatusCode = 200 + Return JsonConvert.SerializeObject(Respuesta) + End If + + If JsonRequest("billing") IsNot Nothing AndAlso JsonRequest("rfc_info") IsNot Nothing Then + RFC = JsonRequest("rfc_info")("rfc_client").ToString() + RegimenCliente = JsonRequest("rfc_info")("regimen_client").ToString() + UsoCFDI = JsonRequest("rfc_info")("cfdi").ToString() NombreCliente = JsonRequest("billing")("first_name").ToString() & " " & JsonRequest("billing")("last_name").ToString() + If Not String.IsNullOrEmpty(UsoCFDI) Then + CveUsoCFDI = ClsPaginas.GlobalDTSATUsosCFDI().FiltroPrimeroValor("CveUsoCFDI", $"UsoCFDI = '{UsoCFDI.Trim}'").ToEntero() + End If End If 'BUSCAR SI ESTÁ REGISTRADO EL CLIENTE @@ -403,11 +439,14 @@ Public Class E119 : Implements IHttpHandler End If MsgLog.AppendLine("1.4 verificar cliente") + If CveCliente = 0 Then ' 'DATOS DE BILLING MsgLog.AppendLine("1.5 crear cliente") If JsonRequest("billing") IsNot Nothing Then Dim CveEstado As Integer = -1 + Dim CveRegimenFiscal As Integer = -1 + Dim Direccion As String = If(JsonRequest("billing")("address_1") Is Nothing, "", JsonRequest("billing")("address_1").ToString()) Dim NumExt As String = "" Dim NumInt As String = "" @@ -426,7 +465,11 @@ Public Class E119 : Implements IHttpHandler Else CveEstado = 26 End If - If ObjClientes.AgregarClienteNoFrecuente(NombreCliente, Direccion, NumExt, NumInt, Colonia, Localidad, Ciudad, CveEstado, RFC, CP, Telefono, Correo, CveSubProyecto, CveUsuario, CveEmpresa, "", -1, -1) Then + If Not String.IsNullOrEmpty(RegimenCliente) Then + CveRegimenFiscal = ClsPaginas.GlobalDTRegimenesFiscales().FiltroPrimeroValor("CveRegimenFiscal", $"CodigoRegimenFiscal = '{RegimenCliente.Trim}'").ToEntero() + End If + + If ObjClientes.AgregarClienteNoFrecuente(NombreCliente, Direccion, NumExt, NumInt, Colonia, Localidad, Ciudad, CveEstado, RFC, CP, Telefono, Correo, CveSubProyecto, CveUsuario, CveEmpresa, "", -1, -1, CveRegimenFiscal:=CveRegimenFiscal, CveUsoCFDI:=CveUsoCFDI) Then If ObjClientes.DtResultados.Rows.Count > 0 Then CveCliente = ObjClientes.DtResultados(0)("CveCliente").ToString().ToEntero() MsgLog.AppendLine("1.5.5 cliente creado") @@ -489,7 +532,9 @@ Public Class E119 : Implements IHttpHandler ObjFactura.Alfa1 = Entrega End If - ObjFactura.CveDireccionEnvio = cvedireccionenvio + ObjFactura.CveDireccionEnvio = CveDireccionEnvio + ObjFactura.CveVentaTerminal = IdEcommerce + ObjFactura.CveUsoCFDI = CveUsoCFDI If JsonRequest("line_items") IsNot Nothing Then Dim ListaPS As JArray = JArray.Parse(JsonRequest("line_items").ToString()) diff --git a/General/SaldosIniciales.aspx.vb b/General/SaldosIniciales.aspx.vb index f8f696d38..25aa7506c 100644 --- a/General/SaldosIniciales.aspx.vb +++ b/General/SaldosIniciales.aspx.vb @@ -1441,15 +1441,15 @@ Partial Class General_SaldosIniciales Dim Folio As String = Row("Folio").ToString() Dim Fecha As Date = Row("Fecha").ToString().ToDate Dim SubTotal As Decimal = Row("SubTotal").ToString().ToDecimal - Dim IVA As Decimal = Row("IVA").ToString().ToDecimal - Dim Total As Decimal = Row("Total").ToString().ToDecimal - Dim Saldo As Decimal = Row("Saldo").ToString().ToDecimal - Dim TipoDocto As String = Row("Tipo Documento").ToString() + Dim IVA As Decimal = Row("IVA").ToString().ToDecimal.RoundSQL + Dim Total As Decimal = Row("Total").ToString().ToDecimal.RoundSQL + Dim Saldo As Decimal = Row("Saldo").ToString().ToDecimal.RoundSQL + Dim TipoDocto As String = Row("Tipo Documento").ToString().Trim.ToUpper Dim CveProveedor As Integer = DtProveedores.FiltroPrimeroValor("CveProveedor", $"RFC = '{RFC}'").ToString().ToEntero() GuardaLog(Sucursal + " - " + Row("Sucursal").ToString()) - Dim RetIVA As Decimal = Row("Ret IVA").ToString().ToDecimal - Dim RetISR As Decimal = Row("Ret ISR").ToString().ToDecimal - Dim IEPS As Decimal = If(dt.Columns.Contains("IEPS"), Row("IEPS").ToString(), "0").ToDecimal + Dim RetIVA As Decimal = Row("Ret IVA").ToString().ToDecimal.RoundSQL + Dim RetISR As Decimal = Row("Ret ISR").ToString().ToDecimal.RoundSQL + Dim IEPS As Decimal = If(dt.Columns.Contains("IEPS"), Row("IEPS").ToString(), "0").ToDecimal.RoundSQL Dim Moneda As String = Row("Moneda").ToString() Dim TipoCambio As String = If(dt.Columns.Contains("Tipo Cambio"), Row("Tipo Cambio").ToString(), "1") Dim FechaVencimiento As Date = Row("Fecha Vencimiento").ToString().ToDate @@ -1466,9 +1466,16 @@ Partial Class General_SaldosIniciales If Not CveUnidadMedida > 0 Then Alert(String.Format("No se encontró la Unidad de Medida."), TipoMensaje.MsgError) : ErrorCompras = True If Not CveProveedor > 0 Then Alert(String.Format("No se encontró el Proveedor con el RFC: {0}", {RFC}), TipoMensaje.MsgError) : ErrorCompras = True : Exit For If Not CveProveedorSucursal > 0 Then CveProveedorSucursal = -1 + If PorcentajeIVA > 0 AndAlso IVA = 0 Then PorcentajeIVA = 0 - TipoDocto = IIf(TipoDocto.ToUpper.Contiene("INGRESOS", "INGRESO", "ING", "FACTURA"), "Fac", "NC").ToString() + Dim RetIVAConcepto As String = If(dt.Columns.Contains("RetIVAConcepto"), Row("RetIVAConcepto").ToString(), "").ToUpper + Dim RetISRConcepto As String = If(dt.Columns.Contains("RetISRConcepto"), Row("RetISRConcepto").ToString(), "").ToUpper + Dim CveRetIVAConcepto As Integer = If(RetIVAConcepto = "HONORARIOS", 1, If(RetIVAConcepto = "FLETES", 2, If(RetIVAConcepto = "ARRENDAMIENTO", 4, -1))) + Dim CveRetISRConcepto As Integer = If(RetISRConcepto = "HONORARIOS", 1, If(RetISRConcepto = "ARRENDAMIENTO", 2, If(RetISRConcepto = "RESICO", 4, -1))) + TipoDocto = IIf(TipoDocto.Contiene("INGRESOS", "INGRESO", "ING", "FACTURA", "FACTURAS", ""), "Fac", "NC").ToString() + + 'RMF. falta validación de totales. 'Temporalmente SE BORRARA Dim Transaccion As String = "" 'Row("Transaccion2").ToString() Dim Folio2 As String = "" 'Row("Folio2").ToString() @@ -1497,9 +1504,9 @@ Partial Class General_SaldosIniciales If FechaVencimiento = "".ToDate Or FechaVencimiento < "1900/01/01".ToDate Then FechaVencimiento = Fecha End If - If Not ObjCompras.AddCompra(TipoDocto, "", Serie, Folio, Folio2, CveProveedor.ToEntero(), SubTotal, 0, 0, IVA, RetIVA, RetISR, IEPS, 0, 0, Total, Fecha, CveMoneda, TipoCambio.ToDecimal, FechaVencimiento, + If Not ObjCompras.AddCompra(TipoDocto, "", Serie, Folio, Folio2, CveProveedor.ToEntero(), SubTotal + ImpuestosLocales, 0, 0, IVA, RetIVA, RetISR, IEPS, 0, 0, Total, Fecha, CveMoneda, TipoCambio.ToDecimal, FechaVencimiento, False, CodProvee, 1, CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveProveedorSucursal:=CveProveedorSucursal, - NumeroReembolso:=Transaccion, PorcentajeIVA:=PorcentajeIVA, TotalOriginal:=Total, CveSubProyecto:=CveSubProyecto) Then + NumeroReembolso:=Transaccion, PorcentajeIVA:=PorcentajeIVA, TotalOriginal:=Total, CveSubProyecto:=CveSubProyecto, CveRetIVAConcepto:=CveRetIVAConcepto, CveRetISRConcepto:=CveRetISRConcepto) Then ErrorCompras = True Exit For End If @@ -1510,6 +1517,12 @@ Partial Class General_SaldosIniciales ErrorCompras = True Exit For End If + If ImpuestosLocales > 0 Then 'se agrega como parte de la partida, sin iva. + If Not ObjCompras.AddCompraDetalle(CveCompra, CveUnidadMedida, CvePS, CveSubProyecto, -1, 0, 1, ImpuestosLocales, ImpuestosLocales, ImpuestosLocales, 0, "Carga Inicial", -1, IVAPorcentaje:=0, RetIVAPorcentaje:=0, RetISRPorcentaje:=0) Then + ErrorCompras = True + Exit For + End If + End If Dim ConceptoContablePago As Integer = 17 If TipoDocto = "NC" Then ConceptoContablePago = 60 @@ -1525,7 +1538,7 @@ Partial Class General_SaldosIniciales If RetIVA > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, RetIVA, RetIVA, 15, Folio, String.Format("{0}-{1}", Serie, Folio), CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveSubProyecto:=Sucursal.ToEntero()) Then ErrorCompras = True : Exit For If RetISR > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, RetISR, RetISR, 16, Folio, String.Format("{0}-{1}", Serie, Folio), CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveSubProyecto:=Sucursal.ToEntero()) Then ErrorCompras = True : Exit For - If ImpuestosLocales > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImpuestosLocales, ImpuestosLocales, 27, Folio, String.Format("{0}-{1}", Serie, Folio), CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveSubProyecto:=Sucursal.ToEntero()) Then ErrorCompras = True : Exit For + 'If ImpuestosLocales > 0 Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImpuestosLocales, ImpuestosLocales, 27, Folio, String.Format("{0}-{1}", Serie, Folio), CveCompra:=CveCompra, CveProveedor:=CveProveedor, CveSubProyecto:=Sucursal.ToEntero()) Then ErrorCompras = True : Exit For 'Saldo If Saldo < Total Then @@ -3443,11 +3456,6 @@ Partial Class General_SaldosIniciales ' CveEscolaridad = -1 'End If - - - - - myarraystr = MetodoPago.Split(":"c) If (myarraystr.Length > 1) Then CveMetodoPago = myarraystr(0).ToEntero() @@ -3497,6 +3505,8 @@ Partial Class General_SaldosIniciales + + Dim CvePersonal As Integer = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CvePersonal", $"NombreCompletoNombre = '{NombreCompleto}'").ToString().ToEntero() If Not (CvePersonal > 0) Then @@ -3948,8 +3958,8 @@ Partial Class General_SaldosIniciales libro.Cell(crow, ccol).Value = "CuentaContable" : ccol = ccol + 1 libro.Cell(crow, ccol).Value = "Saldo" : ccol = ccol + 1 libro.Cell(crow, ccol).Value = "Tipo Trabajador" : ccol = ccol + 1 + libro.Cell(crow, ccol).Value = "RegistroPatronal" : ccol = ccol + 1 ' - libro.Range(crow, 1, crow, ccol - 1).Style.Fill.SetBackgroundColor(ClosedXML.Excel.XLColor.FromArgb(79, 129, 189)) libro.Range(crow, 1, crow, ccol - 1).Style.Font.FontColor = ClosedXML.Excel.XLColor.White diff --git a/OS/OrdenesServicios.aspx b/OS/OrdenesServicios.aspx index 676c2cced..3a694320d 100644 --- a/OS/OrdenesServicios.aspx +++ b/OS/OrdenesServicios.aspx @@ -1285,27 +1285,37 @@