diff --git a/App_Code/ClsBancos.vb b/App_Code/ClsBancos.vb
index 38d16dc57..145843325 100644
--- a/App_Code/ClsBancos.vb
+++ b/App_Code/ClsBancos.vb
@@ -1950,12 +1950,14 @@ Public Class ClsBancos
Return Retorno
End Function
- Public Function GetIngresoEgresosDelDia(Fecha As Date, Tipo As String, Opcion As Integer, CveEmpresa As Integer) As Boolean
+ Public Function GetIngresoEgresosDelDia(Grupo As Integer, FechaInicio As Date, FechaFin As Date, Tipo As String, Opcion As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Banc_IngresoEgresosDiariosGet")
With SqlAdapter.SelectCommand.Parameters
- .Add("@Fecha", SqlDbType.Date).Value = Fecha
+ .Add("@Grupo", SqlDbType.Int).Value = Grupo
+ .Add("@FechaInicio", SqlDbType.Date).Value = FechaInicio
+ .Add("@FechaFin", SqlDbType.Date).Value = FechaFin
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@Tipo", SqlDbType.VarChar).Value = Tipo 'Ing Ingresp Egs Egreso
.Add("@Opcion", SqlDbType.VarChar).Value = Opcion
diff --git a/App_Code/ClsContabilidad.vb b/App_Code/ClsContabilidad.vb
index 61f19afbb..d6f77b7f8 100644
--- a/App_Code/ClsContabilidad.vb
+++ b/App_Code/ClsContabilidad.vb
@@ -4313,7 +4313,7 @@ Public Class ClsContabilidad
Return Retorno
End Function
- Public Function GetAnexoCatalagoCC(CveCuenta As Integer, FechaI As Date, FechaF As Date, CveSubProyecto As Integer, CveEmpresa As Integer, Divisor As Integer, CveUsuario As Integer) As Boolean
+ Public Function GetAnexoCatalagoCC(CveCuenta As Integer, FechaI As Date, FechaF As Date, CveSubProyecto As Integer, CveEmpresa As Integer, Divisor As Integer, CveUsuario As Integer, Optional OpcionCuentas As Integer = -1) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Conta_AnexoCatalogoCCGet")
@@ -4326,6 +4326,7 @@ Public Class ClsContabilidad
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@Divisor", SqlDbType.Int).Value = Divisor
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
+ .Add("@OpcionCuentas", SqlDbType.Int).Value = OpcionCuentas
End With
Try
diff --git a/App_Code/ClsGenerales.vb b/App_Code/ClsGenerales.vb
index b36cf01da..3b125265b 100644
--- a/App_Code/ClsGenerales.vb
+++ b/App_Code/ClsGenerales.vb
@@ -4472,13 +4472,32 @@ Public Class ClsGenerales
End Try
Return Retorno
- End Function
+ End Function
#End Region
+
+
+ Public Function GetReporteDiario(CveEmpresa As Integer) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_Gral_RepCierreDia")
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ End With
+
+ Try
+ SqlAdapter.Fill(DSet)
+ Retorno = True
+ Catch ex As Exception
+ OnError($"Ocurrió un error al obtener los datos del reporte diario.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End Try
+
+ Return Retorno
+ End Function
+
#Region "IDisposable Support"
-
-
- ' IDisposable
+
+
+ ' IDisposable
Protected Overridable Sub Dispose(disposing As Boolean)
If Not Me.disposedValue Then
If disposing Then
diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb
index 2a408ff3c..72e96b468 100644
--- a/App_Code/ClsPaginas.vb
+++ b/App_Code/ClsPaginas.vb
@@ -6107,13 +6107,13 @@ Public Class ClsPaginas
End If
End If
End Sub
- Protected Sub ImprimeFormatoCartaPorteTimbrado(CveTimbre As Integer)
- Dim resp As Modelos.MSubReportData = PreParaImpresionCartaPorte(CveTimbre)
+ Protected Sub ImprimeFormatoCartaPorteTimbrado(CveTimbre As Integer, Optional imprmirNom043 As Boolean = False)
+ Dim resp As Modelos.MSubReportData = PreParaImpresionCartaPorte(CveTimbre, imprmirNom043:=imprmirNom043)
If resp.DataSources.Count > 0 AndAlso resp.Parametros.Count > 0 Then
ImprimirPDF("Empresas/Grales/Formatos/CartaPorteTimbrado.rdlc", resp.DataSources, resp.Parametros, resp.SerieFolio)
End If
End Sub
- Private Function PreParaImpresionCartaPorte(CveTimbre As Integer, Optional AplicaSubReporte As Boolean = False) As Modelos.MSubReportData
+ Private Function PreParaImpresionCartaPorte(CveTimbre As Integer, Optional AplicaSubReporte As Boolean = False, Optional imprmirNom043 As Boolean = False) As Modelos.MSubReportData
Dim retorno As New Modelos.MSubReportData
retorno.Nombre = "CartaPorte"
Try
@@ -6180,6 +6180,7 @@ Public Class ClsPaginas
Dim ConfATR1 As String = ""
Dim ConfATR2 As String = ""
Dim ObjInv As New ClsGenerales
+ Dim TelDestino As String = ""
If ObjInv.GetGralTimbre(CveTimbre, "-1", MinFecha, MaxFecha, -1, UsuarioActual.CveEmpresa, -1) Then
If ObjInv.DtResultados.Rows.Count > 0 Then
@@ -6188,6 +6189,7 @@ Public Class ClsPaginas
SerieFolio = Dr("SerieFolio").ToString
Telefono = Dr("FiguraTelefono").ToString
TipoDocto = Dr("TipoDocto").ToString
+ TelDestino = Dr("TelDestino").ToString
If UsuarioActual.CveEmpresa = 13 Then
PermisoSCTR1 = Dr("PermisoSCTR1").ToString
@@ -6562,6 +6564,7 @@ Public Class ClsPaginas
ImgCBB = ""
End If
+ 'Dim bCBB As Byte() = qrCode.GenerarQrCode($"{ClsPaginas.LigaVerificacionSATCCP}?IdCCP={cfdi.CfdiInfo.IdCCP}&FechaOrig={Carta.Ubicaciones(0).FechaHoraSalidaLlegada}&FechaTimb={cfdi.CfdiInfo.FechaTimbrado}")
ImagenCCP = New System.IO.FileInfo(RutaCCP)
If ImagenCCP.Exists Then
ImgCCP = String.Format("file://{0}", ImagenCCP.FullName)
@@ -6627,6 +6630,12 @@ Public Class ClsPaginas
params.Add(New ReportParameter("RemolquePlaca2", RemolquePlaca2))
params.Add(New ReportParameter("RemolqueSubtimo2", RemolqueSubtimo2))
+ params.Add(New ReportParameter("imprmirNom043", If(imprmirNom043, "1", "0")))
+
+ If imprmirNom043 Then
+ params.Add(New ReportParameter("TelDestino", TelDestino))
+ End If
+
If UsuarioActual.CveEmpresa = 13 Then
params.Add(New ReportParameter("PermisoSCTRemolque1", PermisoSCTR1))
params.Add(New ReportParameter("PermisoSCTRemolque2", PermisoSCTR2))
@@ -8020,10 +8029,14 @@ Public Class ClsPaginas
params.Add(New ReportParameter("ProveedorContacto", ObjOC.ProveedorContacto))
params.Add(New ReportParameter("Comprador", ObjOC.UsuarioAsignado))
End If
-
- If UsuarioActual.CveEmpresa.Contiene(189) Then
- params.Add(New ReportParameter("DiasCreditoOC", dtOC(0)("DiasCreditoOC").ToString))
- End If
+
+ If UsuarioActual.CveEmpresa.Contiene(189) Then
+ If dtOC(0)("DiasCreditoOC").ToString.ToEntero > 0 Then
+ params.Add(New ReportParameter("DiasCreditoOC", dtOC(0)("DiasCreditoOC").ToString))
+ Else
+ params.Add(New ReportParameter("DiasCreditoOC", dtOC(0)("PlazoPago").ToString))
+ End If
+ End If
If UsuarioActual.CveEmpresa.Contiene(13, 83) Then
diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb
index 2f25b01ec..6f3d45107 100644
--- a/App_Code/ClsVentas.vb
+++ b/App_Code/ClsVentas.vb
@@ -1965,7 +1965,7 @@ Public Class ClsVentas
Optional TipoDocto As String = "-1", Optional CveClienteClasificacion As Integer = -1, Optional CveProveedorCompra As Integer = -1,
Optional CveMarca As Integer = -1, Optional MostrarLitraje As Boolean = False, Optional TipoCliente As Integer = -1, Optional ModalidadContable As Boolean = False,
Optional EsGarantia As Integer = -1, Optional CveCondicionesPago As Integer = -1, Optional EsDistribuidor As Integer = -1, Optional CveClasificacion2 As Integer = -1,
- Optional ServicioDomicilio As Integer = -1) As Boolean
+ Optional ServicioDomicilio As Integer = -1, Optional EsFilial As Integer = -1) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Vta_GetRepPS")
SqlAdapter.SelectCommand.CommandTimeout = 0
@@ -2002,6 +2002,7 @@ Public Class ClsVentas
.Add("@EsDistribuidor", SqlDbType.Int).Value = EsDistribuidor
.Add("@CveClasificacion2", SqlDbType.Int).Value = CveClasificacion2
.Add("@ServicioDomicilio", SqlDbType.Int).Value = ServicioDomicilio
+ .Add("@EsFilial", SqlDbType.Int).Value = EsFilial
End With
Try
@@ -2021,7 +2022,7 @@ Public Class ClsVentas
Optional TCEspecifico As Double = 0, Optional CveClienteClasificacion As Integer = -1, Optional CveProveedorCompra As Integer = -1, Optional CveMarca As Integer = -1,
Optional CveClasificacionDetalle As Integer = -1, Optional TipoCliente As Integer = -1, Optional ModalidadContable As Boolean = False,
Optional EsGarantia As Integer = -1, Optional MostrarLitraje As Boolean = False, Optional CveCondicionesPago As Integer = -1, Optional EsDistribuidor As Integer = -1,
- Optional CveClasificacion2 As Integer = -1, Optional CveClienteSucursal As Integer = -1, Optional ServicioDomicilio As Integer = -1) As Boolean
+ Optional CveClasificacion2 As Integer = -1, Optional CveClienteSucursal As Integer = -1, Optional ServicioDomicilio As Integer = -1, Optional EsFilial As Integer = -1) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Vta_GetRepPSDetalle")
SqlAdapter.SelectCommand.CommandTimeout = 0
@@ -2063,7 +2064,7 @@ Public Class ClsVentas
.Add("@CveClasificacion2", SqlDbType.Int).Value = CveClasificacion2
.Add("@CveClienteSucursal", SqlDbType.Int).Value = CveClienteSucursal
.Add("@ServicioDomicilio", SqlDbType.Int).Value = ServicioDomicilio
-
+ .Add("@EsFilial", SqlDbType.Int).Value = EsFilial
End With
@@ -6785,9 +6786,6 @@ Public Class ClsVentas
End Function
-
-
-
Public Function AddMedicoEspecialidad(Especialidad As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -6808,7 +6806,6 @@ Public Class ClsVentas
Return Retorno
End Function
-
Public Function UpdateMedicoEspecialidad(CveMedicoEspecialidad As Integer, Especialidad As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -6829,7 +6826,6 @@ Public Class ClsVentas
Return Retorno
End Function
-
Public Function RemoveMedicoEspecialidad(CveMedicoEspecialidad As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -6851,7 +6847,6 @@ Public Class ClsVentas
#End Region
#Region "S U B E S P E C I A L I D A D E S"
-
Public Function GetMedicosSubEspecialidades(CveMedicoSubEspecialidad As Integer, CveEmpresa As Integer, Estatus As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -6873,10 +6868,6 @@ Public Class ClsVentas
Return Retorno
End Function
-
-
-
-
Public Function AddMedicoSubEspecialidad(CveMedicoEspecialidad As Integer, SubEspecialidad As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -6896,7 +6887,6 @@ Public Class ClsVentas
OnError("Ocurrió un error al guardar la SubEspecialidad.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
-
End Function
Public Function UpdateMedicoSubEspecialidad(CveMedicoSubEspecialidad As Integer, CveMedicoEspecialidad As Integer, SubEspecialidad As String, Estatus As Boolean, CveUsuario As Integer, CveEmpresa As Integer) As Boolean
@@ -6942,9 +6932,7 @@ Public Class ClsVentas
#End Region
-#Region "MEDICO CLIENTE SUCURALES"
-
-
+#Region "MEDICO CLIENTE SUCURSALES"
Public Function GetMedicosClientesSucursales(CveMedico As Integer, CveEmpresa As Integer) As Boolean
@@ -7025,7 +7013,6 @@ Public Class ClsVentas
Return Retorno
End Function
-
Public Function RemoveMedicosClientesSucursales(CveMedicoClienteSucursal As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -7047,7 +7034,7 @@ Public Class ClsVentas
#End Region
-#Region "PRODEDIMIENTOS"
+#Region "PROCEDIMIENTOS"
Public Function GetProcedimientos(CveProcedimiento As Integer, CveEmpresa As Integer, Estatus As Integer) As Boolean
@@ -7137,8 +7124,6 @@ Public Class ClsVentas
Return Retorno
End Function
-
-
Public Function AddProcedimientoProducto(CveProcedimiento As Integer, CvePS As Integer, Autogenerado As Boolean, Estatus As Boolean, CveUsuario As Integer, Cantidad As Decimal) As Boolean
Dim Retorno As Boolean = False
@@ -7161,8 +7146,6 @@ Public Class ClsVentas
Return Retorno
End Function
-
-
Public Function UpdateProcedimientoProducto(CveProcedimientoProducto As Integer, CvePS As Integer, Autogenerado As Boolean, Estatus As Boolean, CveUsuario As Integer, Cantidad As Decimal) As Boolean
Dim Retorno As Boolean = False
@@ -7185,8 +7168,6 @@ Public Class ClsVentas
Return Retorno
End Function
-
-
Public Function SincronizacionProcedimientoProducto(CveProcedimiento As Integer, CveVenta As Integer, CveUsuario As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -7232,7 +7213,6 @@ Public Class ClsVentas
Return Retorno
End Function
-
Public Function RemoveProcedimientoProducto(CveProcedimientoProducto As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -7250,10 +7230,6 @@ Public Class ClsVentas
Return Retorno
End Function
-
-
-
-
Public Function GetProcedimientoVentas(CveProcedimiento As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
@@ -7273,7 +7249,6 @@ Public Class ClsVentas
End Function
-
#End Region
#Region "VENTAS MEDICAS COMISIONES"
@@ -7356,7 +7331,6 @@ Public Class ClsVentas
#End Region
-
#Region "VENTAS MEDICAS COMISIONES ESPECIALES"
Public Function GetComisionesMedicasEspeciales(CveMedico As Integer, CvePS As Integer, CveEmpresa As Integer) As Boolean
@@ -7434,7 +7408,7 @@ Public Class ClsVentas
#End Region
-#Region "DEVOLUICON"
+#Region "DEVOLUCION"
Public Function UpdateVentasDetalleCantidadDevolucion(CveVentaDetalle As Integer, CantidadDevolucion As Decimal) As Boolean
Dim Retorno As Boolean = False
@@ -7481,6 +7455,26 @@ Public Class ClsVentas
End Function
#End Region
+ Public Function UpdateVentaAdicional(CveVenta As Integer, Opcion As String, Valor As String, CveEmpresa As Integer) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_Vta_VentaAdicionalUpdate")
+
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveVenta", SqlDbType.Int).Value = CveVenta
+ .Add("@Opcion", SqlDbType.VarChar).Value = Opcion
+ .Add("@Valor", SqlDbType.VarChar).Value = Valor
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ End With
+
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al actualizar el adicional de la venta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
+ End Try
+
+ Return Retorno
+ End Function
Public Function GetVentasMedicasIndicadoresRep(Grupo As Integer, FechaI As Date, FechaF As Date, CveCliente As Integer, CveMedico As Integer, CveProcedimiento As Integer, CveEmpresa As Integer, CveVendedor As Integer) As Boolean
diff --git a/App_Code/Modelos.vb b/App_Code/Modelos.vb
index ef33bccdd..ea5c15c34 100644
--- a/App_Code/Modelos.vb
+++ b/App_Code/Modelos.vb
@@ -1306,43 +1306,14 @@ Namespace Modelos
ObjFactura.FechaEjecucion = DateTime.Today
ObjFactura.UsuarioCreo = UsuarioActual.Usuario
ObjFactura.TipoDocumento = ObjFactura.TipodeComprobante
-
'Totales, Y se llena TmpDTImpuestos
'CLIENTE
ObjFactura.CveCliente = CveCliente
ObjFactura.SetCliente()
- 'Dim ObjCliente As New ClsClientes
- 'If ObjCliente.GetClientes(ObjFactura.CveCliente, "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa, -1, TipoCliente:=-1) Then
- ' If ObjCliente.DtResultados.Rows.Count > 0 Then
- ' ObjFactura.CveFormaPago33 = ObjCliente.CveFormaPago33
- ' ObjFactura.FormaPago33 = ClsPaginas.GlobalDTVtaFormaPago.FiltroPrimeroValor("FormaPago", String.Format("CveFormaPago = {0}", ObjCliente.CveFormaPago33))
- ' ObjFactura.FormaPagoSAT33 = ClsPaginas.GlobalDTVtaFormaPago.FiltroPrimeroValor("ClaveFormaPagoSAT", String.Format("CveFormaPago = {0}", ObjCliente.CveFormaPago33))
-
- ' ObjFactura.CveMetodoPago33 = ObjCliente.CveMetodoPago33
- ' ObjFactura.MetodoPago33 = ClsPaginas.GlobalDTVtaMetodoPago.FiltroPrimeroValor("MetodoPago", String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago33))
- ' ObjFactura.ClaveMetodoPagoSAT = ClsPaginas.GlobalDTVtaMetodoPago.FiltroPrimeroValor("ClaveMetodoPagoSAT", String.Format("CveMetodoPago = {0}", ObjCliente.CveMetodoPago33))
-
- ' ObjFactura.CveUsoCFDI = ObjCliente.CveUsoCFDI
- ' ObjFactura.UsoCFDI = ClsPaginas.GlobalDTSATUsosCFDI.FiltroPrimeroValor("Descripcion", String.Format("CveUsoCFDI = {0}", ObjCliente.CveUsoCFDI))
- ' ObjFactura.ClaveUsoCFDI = ClsPaginas.GlobalDTSATUsosCFDI.FiltroPrimeroValor("UsoCFDI", String.Format("CveUsoCFDI = {0}", ObjCliente.CveUsoCFDI))
- ' End If
- 'End If
-
- ''If ObjCliente.GetSucursales(ObjFactura.CveCliente) Then
- '' If ObjCliente.DtResultados.Rows.Count > 0 Then
- '' ObjFactura.CveClienteSucursal = If(String.IsNullOrEmpty(ObjCliente.DtResultados.FiltroPrimeroValor("CveClienteSucursal", "Estatus = 'Activo'")), -1, ObjCliente.DtResultados.FiltroPrimeroValor("CveClienteSucursal", "Estatus = 'Activo'").ToEntero())
- '' Else
- '' ObjFactura.CveClienteSucursal = -1
- '' End If
- ''End If
- 'ObjCliente.Dispose()
-
ObjFactura.CveSubProyecto = CveSubProyecto.ToEntero
-
ObjFactura.SetSubProyecto()
ObjFactura.SetSubProyectoMatriz()
-
ObjFactura.CveSubProyectoCobranza = CveSubProyecto.ToEntero
ObjFactura.CveSubProyectoEjecucion = CveSubProyecto.ToEntero
diff --git a/App_Code/modExtensiones.vb b/App_Code/modExtensiones.vb
index 9343ffa93..4b42c5616 100644
--- a/App_Code/modExtensiones.vb
+++ b/App_Code/modExtensiones.vb
@@ -2393,6 +2393,28 @@ Namespace Extensiones
Dim worksheet As ExcelWorksheet = excel.Worksheets(0)
worksheet.Rows.InsertEmpty(0, TotalRowHeader)
+
+
+ '2025-02-15 OIC Este for es para que las celdas tomen formato numerico y se puedan sumar
+ For Each row In worksheet.Rows
+ For Each cell In row.AllocatedCells
+ If cell.Value IsNot Nothing Then
+ Dim valorTexto As String = cell.Value.ToString().Trim()
+ Dim numero As Decimal
+ ' Intentar convertir a número
+ If Decimal.TryParse(valorTexto, System.Globalization.NumberStyles.Any,
+ System.Globalization.CultureInfo.InvariantCulture,
+ numero) Then
+
+ ' Si se pudo convertir exitosamente, reasignar como Double
+ cell.Value = numero
+ End If
+ End If
+ Next
+ Next
+
+
+
Dim celdasConTexto As CellRange = worksheet.GetUsedCellRange(True)
If celdasConTexto Is Nothing Then Exit Sub 'No se recuperaron datos, salir de sin guardar porque soltará error
celdasConTexto.Style.Font.Name = "Calibri Light"
diff --git a/Ashx/E140.ashx b/Ashx/E140.ashx
index 25a99bd7f..1ad9449bc 100644
--- a/Ashx/E140.ashx
+++ b/Ashx/E140.ashx
@@ -6,6 +6,7 @@ Imports System.Data
Imports Newtonsoft.Json
Imports Extensiones
Imports System.IO
+Imports Newtonsoft.Json.Linq
Imports Microsoft.Reporting.WebForms
Public Class E140 : Implements IHttpHandler, IRequiresSessionState
@@ -14,18 +15,325 @@ Public Class E140 : Implements IHttpHandler, IRequiresSessionState
Return False
End Get
End Property
- Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
+ Public Shared ReadOnly Property EsProduccion As Boolean
+ Get
+ If IsNothing(System.Configuration.ConfigurationManager.AppSettings("EsProduccion")) Then
+ Return False
+ Else
+ Return (System.Configuration.ConfigurationManager.AppSettings("EsProduccion").ToString() = "1")
+ End If
+ End Get
+ End Property
+ Private ReadOnly Property CveEmpresa As Integer = 140
+ Private ReadOnly Property UsuarioWSE140 As String = "bdh_apiuser_"
+ Private ReadOnly Property PasswordWSE140 As String = "*863.fy03pon.8kmn_vbtu"
+ Public ReadOnly Property TokenAutorizacion As String
+ Get
+ Return "$2y$10$LGqtRWUloKQmAt.jcUldc.PmS5LJ6l.WU2w1G4PBOTLMVKZRNQFPS"
+ End Get
+ End Property
+ Private Function ValidaUsuarioSistema(CveUsuario As Integer, CveEmpresa As Integer) As Usuario
+ Dim UsuarioActual As Usuario = Nothing
+ Dim NombreCadena As String = ClsPaginas.GlobalNombreCadenaConexion(CveEmpresa)
+ Dim ObjUsuarios As New ClsSisUsuarioAutenticacion(NombreCadena:=NombreCadena)
+ UsuarioActual = ObjUsuarios.GetUsuarioDetalle(100, CveEmpresa)
+ If UsuarioActual IsNot Nothing Then
+ HttpContext.Current.Session("UsuarioSIG") = UsuarioActual
+ 'CreaObjetoEmpresa(UsuarioActual)
+ End If
+ ObjUsuarios.Dispose()
+
+ Return UsuarioActual
+ End Function
+
+ Public Sub ProcessRequest(ByVal context As HttpContext) Implements IHttpHandler.ProcessRequest
+ Dim retorno As String
Try
- Select Case context.Request("metodo")
+ Dim Metodo As String = If(context.Request("Metodo") = Nothing, "", context.Request("Metodo").ToString())
+ Select Case Metodo
Case "MetasVendedores"
MetasVendedores(context)
End Select
+
+ If Metodo = "ConsultaRemisiones" Then
+ context.Response.ContentType = "application/json"
+ Dim Auth As AuthMessage = ValidarSolicitud(context)
+
+ If Auth.IsSucces Then
+ retorno = ConsultaRemisiones(context, "")
+ Else
+ context.Response.StatusCode = Auth.StatusCode
+ retorno = JsonConvert.SerializeObject(Auth.ErrorMessage)
+ End If
+ context.Response.Write(retorno)
+ ElseIf Metodo = "RegistraPago" Then
+ context.Response.ContentType = "application/json"
+ Dim Auth As AuthMessage = ValidarSolicitud(context)
+
+ If Auth.IsSucces Then
+ retorno = RegistraPagoRemision(context, "")
+ Else
+ context.Response.StatusCode = Auth.StatusCode
+ retorno = JsonConvert.SerializeObject(Auth.ErrorMessage)
+ End If
+ context.Response.Write(retorno)
+ End If
Catch ex As Exception
ex.GuardaLog(ex.Message)
End Try
End Sub
+ Private Function ValidarSolicitud(ByVal context As HttpContext) As AuthMessage
+ Dim unauthorized As Boolean = True
+ Dim respuesta As New AuthMessage
+
+ Dim authHeader = context.Request.Headers("Authorization")
+ If authHeader IsNot Nothing Then
+ Dim basicAuth As String = authHeader.Replace("Basic ", "")
+
+ Dim usernamePasswordArray = Encoding.UTF8.GetString(Convert.FromBase64String(basicAuth)).Split(":"c)
+
+ Dim userName = usernamePasswordArray(0)
+ Dim password = usernamePasswordArray(1)
+ unauthorized = Not (userName = Me.UsuarioWSE140 AndAlso password = Me.PasswordWSE140)
+
+ Else
+ respuesta.ErrorMessage = New AppsResponseError() With {.message = "el usuario y/o contraseña son requeridos"}
+ respuesta.IsSucces = False
+ respuesta.StatusCode = 200
+
+ Return respuesta
+ End If
+
+ If unauthorized Then
+ respuesta.ErrorMessage = New AppsResponseError() With {.message = "el usuario y/o contraseña no son validos"}
+ respuesta.IsSucces = False
+ respuesta.StatusCode = 200
+
+ Return respuesta
+ Else
+ respuesta.ErrorMessage = Nothing
+ respuesta.IsSucces = True
+ respuesta.StatusCode = 200
+
+ Return respuesta
+ End If
+
+ End Function
+
+ Private Function ConsultaRemisiones(ByVal context As HttpContext, Codigo As String) As String
+ Dim Respuesta As New AppsResponse
+ Dim RespuestaError As New AppsResponseError
+ Dim TieneError As Boolean = False
+ Dim CveSubProyecto As String = "11790"
+
+ Dim Usuario As Usuario = ValidaUsuarioSistema(100, CveEmpresa)
+ Dim data As New JArray
+ Dim dtt As New DataTable
+ Dim ObjVentas As New ClsVentas
+ If ObjVentas.GetRepRemisionesSinFacturar(Now.AddYears(-2).ToShortDateString, Now.ToShortDateString, Now.ToShortDateString, CveSubProyecto, -1, -1, "-1", CveEmpresa, CveUsuarioConsulta:=100, PrimerProducto:=True) Then
+ dtt = ObjVentas.DtResultados.FiltraParametros("CveVenta > 0")
+ End If
+ ObjVentas.Dispose()
+
+ If dtt IsNot Nothing Then
+ Try
+ For Each Row As DataRow In dtt.Rows
+ Dim objVenta As New JObject(
+ New JProperty("cveventa", Row("CveVenta")),
+ New JProperty("folio", Row("Folio")),
+ New JProperty("cliente", Row("Cliente")),
+ New JProperty("fecha", Row("Fecha")),
+ New JProperty("total", Row("Total")),
+ New JProperty("moneda", Row("Abreviatura")),
+ New JProperty("primerproducto", Row("PrimerCodigoPS"))
+ )
+ data.Add(objVenta)
+ Next
+ Catch ex As Exception
+ TieneError = True
+ RespuestaError.message = "Ocurrió un error al obtener las remisiones pendientes."
+ End Try
+ dtt.Dispose()
+ Else
+ TieneError = True
+ End If
+
+ Respuesta.data = data
+
+ If TieneError Then
+ context.Response.StatusCode = 200
+ Return JsonConvert.SerializeObject(RespuestaError)
+ Else
+ context.Response.StatusCode = 200
+ Return JsonConvert.SerializeObject(Respuesta)
+ End If
+ End Function
+
+ Private Function RegistraPagoRemision(ByVal context As HttpContext, CveVenta As String) As String
+ Dim Respuesta As New AppsResponse
+ Dim RespuestaError As New AppsResponseError
+ Dim TieneError As Boolean = False
+ Dim CveSubProyecto As String = "11790"
+ Dim JsonRequest As JObject = Nothing
+
+ If context.Request.InputStream IsNot Nothing Then
+ Using reader As New StreamReader(context.Request.InputStream)
+ Dim json = reader.ReadToEnd
+ If Not String.IsNullOrEmpty(json) Then
+ JsonRequest = JObject.Parse(json)
+ If JsonRequest Is Nothing Then
+ TieneError = True
+ End If
+ End If
+ End Using
+ End If
+
+ Dim UsuarioActual As Usuario = ValidaUsuarioSistema(100, CveEmpresa)
+ Dim data As New JArray
+ Dim dtt As New DataTable
+ Dim MsgError As String = ""
+ Dim CveCuentaBancaria As Integer = 8075
+ Dim ImportePago As Decimal = JsonRequest("importe_pago").ToString.ToDecimal
+ Dim FechaPago As Date = JsonRequest("fecha_pago").ToString.ToDate
+ Dim FolioPago As String = JsonRequest("referencia_pago").ToString
+ Dim CveTipoTransaccion As Integer = If(JsonRequest("referencia_pago").ToString = "tdc", 12, 11)
+ Dim CveMonedaPago As Integer = If(JsonRequest("moneda_pago").ToString = "USD", 2, 1)
+ Dim pCveVenta As Integer = JsonRequest("cveventa").ToString.ToEntero
+ Dim Referencia As String = ""
+ 'validaciones
+
+ Dim ObjVenta As New ClsVentas()
+ Dim ObjClientes As New ClsClientes
+ If ObjVenta.GetVenta(pCveVenta, CveEmpresa) Then
+ If ObjVenta.DtResultados IsNot Nothing AndAlso ObjVenta.DtResultados.Rows.Count > 0 Then
+ Dim dr As DataRow = ObjVenta.DtResultados.Rows(0)
+ 'importe y forma de pago.
+ Dim VentaRemision As New ClsPaginas.Venta(UsuarioActual)
+ VentaRemision.CveVenta = dr("CveVenta").ToString.ToEntero
+ VentaRemision.Fecha = dr("Fecha").ToString.ToDate
+ VentaRemision.CveCliente = dr("CveCliente").ToString.ToEntero
+ VentaRemision.CveMoneda = dr("CveMoneda").ToString.ToEntero
+ VentaRemision.TipoDocto = dr("TipoDocto").ToString
+ VentaRemision.SerieFolio = dr("SerieFolio").ToString
+ VentaRemision.ClienteNombre = dr("ClienteNombre").ToString
+ VentaRemision.TC = dr("TipoCambio").ToString.ToDecimal
+ VentaRemision.Total = dr("Total").ToString.ToDecimal
+ VentaRemision.IVA = dr("IVA").ToString.ToDecimal
+ VentaRemision.IEPS = dr("IEPS").ToString.ToDecimal
+ VentaRemision.RetIVA = dr("RetIVA").ToString.ToDecimal
+ VentaRemision.RetISR = dr("RetISR").ToString.ToDecimal
+ VentaRemision.PorcentajeIVA = dr("PorcentajeIVA").ToString.ToDecimal
+ VentaRemision.CveSubProyecto = dr("CveSubProyecto").ToString.ToEntero
+
+ Dim ObjFactura = Modelos.Factura.CrearVentaNueva(UsuarioActual, VentaRemision.CveSubProyecto, VentaRemision.CveCliente, VentaRemision.CveMoneda, "Ing")
+ ObjFactura.CveMoneda = VentaRemision.CveMoneda
+ ObjFactura.CveVendedor = dr("CveVendedor").ToString.ToEntero
+ ObjFactura.CveFormaPago = dr("CveFormaPago33").ToString.ToEntero
+ 'ObjFactura.ClaveFormaPagoSAT = "99"
+ ObjFactura.CveMetodoPago = dr("CveMetodoPago").ToString.ToEntero
+ 'ObjFactura.ClaveMetodoPagoSAT = "PPD"
+ Dim DtRemisionesPS As DataTable = Nothing
+ If ObjClientes.GetVentasRemisionesTotales(VentaRemision.CveCliente, VentaRemision.CveVenta.ToString(), 1, CveEmpresa) Then
+ DtRemisionesPS = ObjClientes.DtResultados.Copy()
+ End If
+ For Each drr As DataRow In DtRemisionesPS.Rows
+ ObjFactura.AgregarPS(drr("CvePS").ToString().ToEntero(), drr("Cantidad").ToString().ToDecimal(), drr("PU").ToString().ToDecimal(), drr("Descuento").ToString().ToDecimal, drr("Obs").ToString(), CveUM:=drr("CveUM").ToString().ToEntero(),
+ CveProyecto:=drr("CveProyecto").ToString().ToEntero(), CveSubProyecto:=drr("CveSubProyecto").ToString().ToEntero(), CveVentaDetallePadre:=drr("CveVentaDetalle").ToString().ToEntero(), CveVentaDetalleRemision:=drr("CveVentaDetalle").ToString().ToEntero(),
+ PorcentajeIVA:=drr("PorcentajeIVA").ToString().ToDecimal(), CvePromocionDetalle:=drr("CvePromocionDetalle").ToString.ToEntero)
+ Next
+
+ ObjFactura.GenerarSalidaAlmacen = True
+ ObjFactura.DtInventario = ObjFactura.DtDetalle.FiltraParametros("CveTipoPS = 2").Copy()
+ 'ObjFactura.CveAlmacen = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $"CveTipoAlmacen = 1 AND CveSubProyecto = {VentaRemision.CveSubProyecto}", "Orden").ToString().ToEntero()
+
+ ObjFactura.CalculaTotales()
+
+ Dim ObjConta As New ClsContabilidad()
+ Dim ObjIE As New ClsBancos(ObjConta.IniciaTransacSQL())
+ Dim ObjVentas As New ClsVentas(ObjConta.IniciaTransacSQL())
+ Dim CvePrePoliza As Integer = ObjConta.AddPrePolizas("Ashx/E140", 4, 0, 0, 1, FechaPago, "Venta Kiosco", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
+
+ If CvePrePoliza > 0 Then
+ 'registro de venta y pago
+
+ Dim Retorno As Modelos.Factura.MMensajeFactura = Nothing
+ Retorno = ObjFactura.EmitirFactura(False, Transac:=ObjVentas.IniciaTransacSQL(), Modulo:="Cobranza/GuardarVenta", MostrarURL:=True)
+ Retorno.Factura = ObjFactura
+
+ If Retorno IsNot Nothing AndAlso Retorno.CveVenta > 0 Then
+ VentaRemision.CveVenta = ObjFactura.CveVenta
+ 'Respuesta.data = Retorno.SerieFolio
+
+ If TieneError Then
+ Dim sb As New StringBuilder()
+ For Each msg As String In Retorno.Mensajes
+ sb.AppendFormat("{0}. ", msg)
+ Next
+ RespuestaError.message = sb.ToString()
+ End If
+ '11- tdd, 12-tdc
+ Dim CveIE As Integer = ObjIE.AddBancos_IE(CveCuentaBancaria, CveTipoTransaccion, FechaPago, "-1", "", ImportePago, VentaRemision.CveMoneda,
+ VentaRemision.TC, "", "", False, True, -1, CvePrePoliza, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
+
+ If CveIE > 0 Then
+ 'Importe de pago
+ Dim Pago As New ClsPaginas.VentaPago
+ Pago.TipoPago = "XXX"
+ Pago.Fecha = FechaPago
+ Pago.CveIE = CveIE
+ Pago.CveMonedaPago = CveMonedaPago
+ Pago.ImportePago = ImportePago
+ Pago.ImportePagoVenta = ImportePago
+ Pago.Referencia = Referencia
+
+ If MsgError = "" AndAlso ClsPaginas.AplicaPrePolizaPagoVenta(VentaRemision, Pago, CvePrePoliza, ObjConta) Then
+ MsgError = "No se pudo insertar la póliza"
+ End If
+ Else
+ MsgError = "No se pudo insertar el pago"
+ End If
+ Else
+ TieneError = True
+ End If
+ End If
+ If Not TieneError Then
+ Dim bytesPDF As Byte() = DescargarFactura(ObjFactura.SerieFolio, CveEmpresa, ObjFactura.CveVenta) 'ClsPaginas.PdfFactura(ObjFactura, AplicaPagare:="0", Guardar:=True, RegenerarQR:=True, EsTicket:=False)
+
+ 'generar el pdf y mandarlo
+ Dim objretorno As New JObject(
+ New JProperty("CveVenta", ObjFactura.CveVenta),
+ New JProperty("SerieFolio", ObjFactura.SerieFolio),
+ New JProperty("pdf", Convert.ToBase64String(bytesPDF))
+ )
+ data.Add(objretorno)
+ Respuesta.data = data
+ ObjConta.RollBack()
+ 'ObjConta.Commit()
+ Else
+ ObjConta.RollBack()
+ End If
+ ObjConta.Dispose()
+ ObjIE.Dispose()
+ End If
+ End If
+ ObjVenta.Dispose()
+ ObjClientes.Dispose()
+
+ Respuesta.data = data
+
+ If TieneError Then
+ context.Response.StatusCode = 200
+ Return JsonConvert.SerializeObject(RespuestaError)
+ Else
+ context.Response.StatusCode = 200
+ Return JsonConvert.SerializeObject(Respuesta)
+ End If
+ End Function
+
+
+#Region "M E T A S V E N D E D O R E S"
Private Shared Sub MetasVendedores(ByVal context As HttpContext)
@@ -128,7 +436,6 @@ Public Class E140 : Implements IHttpHandler, IRequiresSessionState
For Each dRow As System.Data.DataRow In DTVendedores.Rows
-
Dim CorreoSupervisor As String = dRow("Correo").ToString()
Dim Sucursal As String = dRow("Sucursal").ToString
Dim Vendedor As String = dRow("Nombre").ToString()
@@ -226,6 +533,30 @@ Public Class E140 : Implements IHttpHandler, IRequiresSessionState
Next
End Sub
+#End Region
+ Private Function DescargarFactura(FilePDF As String, CveEmpresa As Integer, CveVenta As Integer) As Byte()
+ '
+ Dim Url = New Uri(String.Format("{0}://{1}:{2}/Compras/PopUpVerFactura.aspx?P={3}", HttpContext.Current.Request.Url.Scheme, HttpContext.Current.Request.Url.Host, HttpContext.Current.Request.Url.Port, Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1®ENERAR=1", CveVenta))))
+ Dim File As Byte() = Nothing
+ Try
+ Using httpClient = New System.Net.Http.HttpClient()
+ httpClient.Timeout = New TimeSpan(0, 1, 0)
+ Using request = New System.Net.Http.HttpRequestMessage(System.Net.Http.HttpMethod.Get, Url)
+ request.Headers.Add("ADSToken", Encripta(String.Format("CVEEMPRESA={0}&TICKS={1}&CVEUSUARIO=100", CveEmpresa, DateTime.UtcNow.Ticks)))
+ Dim response = httpClient.SendAsync(request).Result
+ If response.StatusCode = Net.HttpStatusCode.OK Then
+ File = response.Content.ReadAsByteArrayAsync().Result
+ End If
+ End Using
+ End Using
+ Catch ex As Exception
+ File = Nothing
+ OnError("Ocurrió un error al descargar la factura", ex)
+ End Try
+
+ Return File
+ End Function
+
Private Shared Sub MandaCorreo(Para As String, Cuerpo As String, bytes As Byte())
Try
@@ -247,15 +578,51 @@ Public Class E140 : Implements IHttpHandler, IRequiresSessionState
End Try
End Sub
+ Private Shared Function IsValidJson(ByVal strInput As String) As Boolean
+ If String.IsNullOrWhiteSpace(strInput) Then
+ Return False
+ End If
- Public Shared ReadOnly Property EsProduccion As Boolean
- Get
- If IsNothing(System.Configuration.ConfigurationManager.AppSettings("EsProduccion")) Then
+ strInput = strInput.Trim()
+
+ If (strInput.StartsWith("{") AndAlso strInput.EndsWith("}")) OrElse (strInput.StartsWith("[") AndAlso strInput.EndsWith("]")) Then
+
+ Try
+ Dim obj = JToken.Parse(strInput)
+ Return True
+ Catch jex As JsonReaderException
+ Console.WriteLine(jex.Message)
Return False
- Else
- Return (System.Configuration.ConfigurationManager.AppSettings("EsProduccion").ToString() = "1")
- End If
- End Get
- End Property
+ Catch ex As Exception
+ Console.WriteLine(ex.ToString())
+ Return False
+ End Try
+ Else
+ Return False
+ End If
+ End Function
+
+ Private Class AppsResponse
+ Sub New()
+ status = "success"
+ End Sub
+ Public Property status As String
+ Public Property data As Object
+ Public Property message As String
+ End Class
+
+ Private Class AppsResponseError
+ Sub New()
+ status = "error"
+ End Sub
+ Public Property status As String
+ Public Property message As String
+ End Class
+
+ Private Class AuthMessage
+ Public Property IsSucces As Boolean
+ Public Property ErrorMessage As AppsResponseError
+ Public Property StatusCode As Integer
+ End Class
End Class
\ No newline at end of file
diff --git a/Ashx/E141.ashx b/Ashx/E141.ashx
index 946bc4519..fd6a82ba1 100644
--- a/Ashx/E141.ashx
+++ b/Ashx/E141.ashx
@@ -62,9 +62,9 @@ Public Class E141 : Implements IHttpHandler, System.Web.SessionState.IRequiresSe
#Region "V A L I D A - D A T O S"
Private Function ValidaUsuarioSistema(CveUsuario As Integer, CveEmpresa As Integer) As Usuario
Dim UsuarioActual As Usuario = Nothing
- Dim NombreCadena As String = ClsPaginas.GlobalNombreCadenaConexion(141)
+ Dim NombreCadena As String = ClsPaginas.GlobalNombreCadenaConexion(CveEmpresa)
Dim ObjUsuarios As New ClsSisUsuarioAutenticacion(NombreCadena:=NombreCadena)
- UsuarioActual = ObjUsuarios.GetUsuarioDetalle(100)
+ UsuarioActual = ObjUsuarios.GetUsuarioDetalle(100, CveEmpresa)
If UsuarioActual IsNot Nothing Then
HttpContext.Current.Session("UsuarioSIG") = UsuarioActual
'CreaObjetoEmpresa(UsuarioActual)
@@ -281,11 +281,11 @@ Public Class E141 : Implements IHttpHandler, System.Web.SessionState.IRequiresSe
Dim ResultadoMail As Integer = 0
Dim CorreoDestino As String = "atencion@fidelityapps.mx"
Dim MailCC As String = "citas@econollantas.com;sixrogs@hotmail.com;ffelix@econollantas.com"
- Dim MailCCO As String = "jonathan.perez@adssistemas.mx;rene.molina@adsistemas.mx"
+ Dim MailCCO As String = "jonathan.perez@adssistemas.mx;"
If Not EsProduccion Then
CorreoDestino = "jonathan.perez@adssistemas.mx"
- MailCC = "rene.molina@adsistemas.mx"
+ MailCC = ""
MailCCO = "japmx95@gmail.com"
End If
diff --git a/Bancos/DepositosCaja.aspx b/Bancos/DepositosCaja.aspx
index cafa2516a..e522c9c6e 100644
--- a/Bancos/DepositosCaja.aspx
+++ b/Bancos/DepositosCaja.aspx
@@ -151,11 +151,12 @@
-
+
+
TC:
@@ -367,7 +368,7 @@
-
+
diff --git a/Bancos/DepositosCaja.aspx.vb b/Bancos/DepositosCaja.aspx.vb
index 355064115..5db1c8b8e 100644
--- a/Bancos/DepositosCaja.aspx.vb
+++ b/Bancos/DepositosCaja.aspx.vb
@@ -84,10 +84,10 @@ Partial Class Bancos_DepositosCaja
Else
DivRowCuenta.Visible = False
DivDescuentocheck.Visible = False
- End If
- If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
- DivRowCuenta.Visible = True
- End If
+ End If
+ If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
+ DivRowCuenta.Visible = True
+ End If
End If
If UsuarioActual.CveEmpresa.Contiene(140, 141) Then divTipoPago.Visible = False : divTipoPago1.Visible = False
@@ -273,6 +273,7 @@ Partial Class Bancos_DepositosCaja
Try
Dim FolioIE As Long = -1
Dim CveMoneda As Integer = 1
+ Dim CveMonedaDeposito As Integer
Dim TipoCambio As Decimal = 1
Dim Fecha As Date = TxtFecha.Text.ToDate
Dim drOrigen As DataRow = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveCuenta:=DdlCajaChica.SelectedValue.ToEntero, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("")
@@ -294,7 +295,14 @@ Partial Class Bancos_DepositosCaja
End If
If drDestino IsNot Nothing Then
- CveMoneda = drDestino("CveMoneda").ToString.ToEntero
+ CveMonedaDeposito = drDestino("CveMoneda").ToString.ToEntero
+ End If
+ If CveMonedaDeposito <> 1 Then
+ TipoCambio = TxtTCDeposito.Text.ToDecimal
+ If TipoCambio < 10 Then
+ Alert("Tipo cambio incorrecto", TipoMensaje.ToastAdventencia)
+ Exit Sub
+ End If
End If
NuevaCvePrePoliza = ObjConta.AddPrePolizas("DepCaja", 13, TotalImportePrePoliza, TotalImportePrePoliza, CveMoneda, Fecha, $"Depósito Bancario - {DdlTipoDeposito.SelectedItem.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza:=1)
@@ -372,12 +380,18 @@ Partial Class Bancos_DepositosCaja
If FolioIE <= 0 Then
OcurrioError = True
End If
- CveIEOrigen = ObjBancos.AddBancos_IE(DdlCuentaDeposito.SelectedValue.ToEntero, CveTransaccionBanco, Fecha, FolioIE.ToString, $"Depósito Bancario - {tSubProyectoDeposito}", TotalImporte, CveMoneda, 1, TxtObservaciones.Text, "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveProveedorIntermediario:=CveProveedorIntermediario)
+
+ CveIEOrigen = ObjBancos.AddBancos_IE(DdlCuentaDeposito.SelectedValue.ToEntero, CveTransaccionBanco, Fecha, FolioIE.ToString, $"Depósito Bancario - {tSubProyectoDeposito}", TotalImporte, CveMonedaDeposito, TipoCambio, TxtObservaciones.Text, "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveProveedorIntermediario:=CveProveedorIntermediario)
documentos += String.Format("Depósito: {1}     ", CveIEOrigen, FolioIE)
- If Not OcurrioError AndAlso ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, TotalImporte, TotalImporte * TipoCambio, 30, $"Depósito Bancario - {DdlTipoDeposito.SelectedItem.Text}", $"Depósito Bancario - {DdlTipoDeposito.SelectedItem.Text}", CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, CveIE:=CveIEOrigen) Then
+ If Not OcurrioError AndAlso ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, TotalImporte, TotalImporte, 30, $"Depósito Bancario - {DdlTipoDeposito.SelectedItem.Text}", $"Depósito Bancario - {DdlTipoDeposito.SelectedItem.Text}", CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, CveIE:=CveIEOrigen) Then
+ If CveMonedaDeposito > 1 Then
+ If Not OcurrioError AndAlso Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, False, TotalImporte, (TotalImporte * TipoCambio) - TotalImporte, 204, $"Depósito Bancario - {DdlTipoDeposito.SelectedItem.Text}", $"Depósito Bancario - {DdlTipoDeposito.SelectedItem.Text}", CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, CveIE:=CveIEOrigen, ImporteME:=TotalImporte, TipoCambio:=TipoCambio) Then
+ OcurrioError = True
+ End If
+ End If
If ChkFaltante.Checked Then
CveSubProyectoComision = DdlSubProyectoDeposito.SelectedValue.ToEntero
CveClasificacionComision = DdlClasificacion.SelectedValue.ToEntero
@@ -442,7 +456,15 @@ Partial Class Bancos_DepositosCaja
End If
CveIEDestino = ObjBancos.AddBancos_IE(CveCuentaBancaria, 2, Fecha, FolioIE.ToString, String.Format("Depósito Bancario: {0}", SerieFolio), Importe, CveMoneda, 1, TxtObservaciones.Text, "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
- If Not OcurrioError AndAlso Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, True, Importe, Importe * TipoCambio, 30, SerieFolio, String.Format("Depósito Bancario: {0}", SerieFolio), CveClasificacion:=CveClasificacion, CveSubProyecto:=tCveSubProyecto, CveVenta:=CveVenta, CveIE:=CveIEDestino) Then
+ If Not OcurrioError AndAlso ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, True, Importe, Importe, 30, SerieFolio, String.Format("Depósito Bancario: {0}", SerieFolio), CveClasificacion:=CveClasificacion, CveSubProyecto:=tCveSubProyecto, CveVenta:=CveVenta, CveIE:=CveIEDestino) Then
+
+ If Gvr.DataKey("CveMoneda").ToEntero > 1 Then
+ If Not OcurrioError AndAlso Not ObjConta.AddPrePolizasDetalle(NuevaCvePrePoliza, True, Importe, (Importe * TipoCambio) - Importe, 204, SerieFolio, String.Format("Depósito Bancario: {0}", SerieFolio), CveClasificacion:=CveClasificacion, CveSubProyecto:=tCveSubProyecto, CveVenta:=CveVenta, CveIE:=CveIEDestino, ImporteME:=Importe, TipoCambio:=TipoCambio) Then
+ OcurrioError = True
+ Exit For
+ End If
+ End If
+ Else
OcurrioError = True
Exit For
End If
@@ -730,4 +752,13 @@ Partial Class Bancos_DepositosCaja
Return File
End Function
+
+ Protected Sub DdlCuentaDeposito_SelectedIndexChanged(sender As Object, e As EventArgs)
+ Dim CveMonedaDeposito As Integer = GlobalDTBancosCuentasGral(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveMoneda", $"CveCuenta={DdlCuentaDeposito.SelectedValue}").ToEntero
+ If CveMonedaDeposito <> 1 Then
+ divtcdeposito.Visible = True
+ Else
+ divtcdeposito.Visible = False
+ End If
+ End Sub
End Class
\ No newline at end of file
diff --git a/Bancos/FlujoDiario.aspx b/Bancos/FlujoDiario.aspx
index f7c74ee6f..621acd184 100644
--- a/Bancos/FlujoDiario.aspx
+++ b/Bancos/FlujoDiario.aspx
@@ -26,28 +26,52 @@
-
Fecha:
+
Fecha Inicio:
-
+
-
+
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
Fecha Fin:
+
+
+
+
+
+
+
+
+
+
+
+
Opción:
-
-
-
-
-
+
+
+
+
+
+
+
Vista:
+
+
+
+
+
+
@@ -63,6 +87,5 @@
-
diff --git a/Bancos/FlujoDiario.aspx.vb b/Bancos/FlujoDiario.aspx.vb
index 23aa78957..131baad04 100644
--- a/Bancos/FlujoDiario.aspx.vb
+++ b/Bancos/FlujoDiario.aspx.vb
@@ -44,7 +44,8 @@ Partial Class Bancos_FlujoDiario
Private Sub Bancos_FlujoDiario_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
- TxtFecha.Text = NowADS().ToString
+ TxtFechaI.Text = NowADS().AddDays(-1).ToString("dd/MM/yyyy")
+ TxtFechaF.Text = NowADS().ToString("dd/MM/yyyy")
End If
End Sub
@@ -56,9 +57,10 @@ Partial Class Bancos_FlujoDiario
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaImpresion", NowADS().ToDateTime.ToShortDateString))
- params.Add(New ReportParameter("Fecha", TxtFecha.Text.ToDate.ToLongDateString))
+ params.Add(New ReportParameter("FechaI", TxtFechaI.Text.ToDate.ToString("dd/MMM/yyyy", New System.Globalization.CultureInfo("es-MX")).Replace(".", "").ToUpper()))
+ params.Add(New ReportParameter("FechaF", TxtFechaF.Text.ToDate.ToString("dd/MMM/yyyy", New System.Globalization.CultureInfo("es-MX")).Replace(".", "").ToUpper()))
- If Imagen.Exists Then
+ If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", $"file://{Imagen.FullName}"))
Else
params.Add(New ReportParameter("LogoPath", ""))
@@ -68,23 +70,23 @@ Partial Class Bancos_FlujoDiario
'SE LLENA TmpDTSaldosIniciales
Dim Ban As New ClsBancos
- If Ban.GetBancosSaldos(-1, -1, -1, MinFecha.ToString, TxtFecha.Text.ToDate.AddDays(-1).ToShortDateString, OpcionSaldo, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
- TmpDTSaldosIniciales = Ban.DtResultados
+ If Ban.GetBancosSaldos(-1, -1, -1, MinFecha.ToString, TxtFechaF.Text.ToDate.AddDays(-1).ToShortDateString, OpcionSaldo, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
+ TmpDTSaldosIniciales = Ban.DtResultados.Copy()
End If
'Se Llena TmpDTIngresosDelDia
- If Ban.GetIngresoEgresosDelDia(TxtFecha.Text.ToDate, "Ing", OpcionSaldo, UsuarioActual.CveEmpresa) Then
- TmpDTIngresosDelDia = Ban.DtResultados '.FiltraParametros("CveTipoTransaccion <> 8")
+ If Ban.GetIngresoEgresosDelDia(DdlGrupo.SelectedValue.ToEntero(), TxtFechaI.Text.ToDate, TxtFechaF.Text.ToDate, "Ing", OpcionSaldo, UsuarioActual.CveEmpresa) Then
+ TmpDTIngresosDelDia = Ban.DtResultados.Copy() '.FiltraParametros("CveTipoTransaccion <> 8")
End If
'Se Llena TmpDTGastosDelDia
- If Ban.GetIngresoEgresosDelDia(TxtFecha.Text.ToDate, "Egs", OpcionSaldo, UsuarioActual.CveEmpresa) Then
- TmpDTGastosDelDia = Ban.DtResultados '.FiltraParametros("CveTipoTransaccion <> 2")
+ If Ban.GetIngresoEgresosDelDia(DdlGrupo.SelectedValue.ToEntero(), TxtFechaI.Text.ToDate, TxtFechaF.Text.ToDate, "Egs", OpcionSaldo, UsuarioActual.CveEmpresa) Then
+ TmpDTGastosDelDia = Ban.DtResultados.Copy() '.FiltraParametros("CveTipoTransaccion <> 2")
End If
'Se Llena TmpDTSaldosActuales
- If Ban.GetBancosSaldos(-1, -1, -1, MinFecha.ToString, TxtFecha.Text, OpcionSaldo, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
- TmpDTSaldosActuales = Ban.DtResultados
+ If Ban.GetBancosSaldos(-1, -1, -1, MinFecha.ToString, TxtFechaF.Text, OpcionSaldo, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
+ TmpDTSaldosActuales = Ban.DtResultados.Copy()
End If
Ban.Dispose()
@@ -103,7 +105,7 @@ Partial Class Bancos_FlujoDiario
'lrds.Add(rds5)-
- ImprimirPDF("Empresas/Grales/Formatos/FlujoDiario.rdlc", lrds, params, NombreArchivo:=String.Format("FlujoDiario-{0}", TxtFecha.Text.ToDate.ToShortDateString))
+ ImprimirPDF("Empresas/Grales/Formatos/FlujoDiario.rdlc", lrds, params, NombreArchivo:=String.Format("FlujoDiario-{0}", TxtFechaF.Text.ToDate.ToShortDateString))
End Sub
diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx
index 8a318b45f..6f55e7050 100644
--- a/Compras/Compras.aspx
+++ b/Compras/Compras.aspx
@@ -1524,7 +1524,7 @@
-
+
@@ -3612,10 +3612,10 @@
-
+ Fecha
-
+
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb
index 908a8771d..4c2820c32 100644
--- a/Compras/Compras.aspx.vb
+++ b/Compras/Compras.aspx.vb
@@ -1260,6 +1260,21 @@ Partial Class Compras_Compras
End Set
End Property
+ Private Property FechaMovtoDev As Date
+ Get
+ If ViewState("FechaMovtoDev") Is Nothing Then
+ ViewState("FechaMovtoDev") = MinFecha
+ End If
+ Return ViewState("FechaMovtoDev").ToString.ToDate
+ End Get
+ Set(value As Date)
+ ViewState("FechaMovtoDev") = value
+ End Set
+ End Property
+
+
+
+
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
@@ -1439,12 +1454,18 @@ Partial Class Compras_Compras
End If
If DdlTipoComprobante.SelectedValue = "NC" Then
- 'paneldevolucion.Visible = True
Pnlalmaceninventarios.Visible = False
- 'cargaddldevoluciones(CveProveedor, TxtSubTotal2.Text.ToDouble)
- InicializaAplicaNCFact()
DivReembolso.Visible = False
RBLPago.Items(2).Enabled = False
+
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then
+ ConfiguraseleccionRNC()
+ Else
+ InicializaAplicaNCFact()
+ End If
+ 'paneldevolucion.Visible = True
+ 'cargaddldevoluciones(CveProveedor, TxtSubTotal2.Text.ToDouble)
+
End If
If DdlTipoComprobante.SelectedValue = "DEV" Then
@@ -1579,7 +1600,6 @@ Partial Class Compras_Compras
'RFVSubProyecto.Enabled = True
End If
-
'VALIDA Usuario TIPO REMESA
If UsuarioActual.TienePermisoProceso(108) Then
RBLPago.Enabled = False
@@ -1672,10 +1692,6 @@ Partial Class Compras_Compras
DdlTipoComprobante.SelectedValueExist("DEV")
End If
- If UsuarioActual.Empresa.Funcionalidad(574).ToEntero = 1 AndAlso DdlTipoComprobante.SelectedValue = "NC" Then
- ConfiguraseleccionRemisionNotaCredito()
- End If
-
If Not CveCompra > 0 Then
LnkProrrateoGasolina.Visible = True
InicializaDTProrrateoGasolina()
@@ -1791,7 +1807,7 @@ Partial Class Compras_Compras
'End Sub
- Private Sub ConfiguraseleccionRemisionNotaCredito()
+ Private Sub ConfiguraseleccionRNC()
Dim AutoSelRNC As Boolean = False
DdlTipoComprobante_SelectedIndexChanged(Nothing, Nothing)
@@ -2011,8 +2027,10 @@ Partial Class Compras_Compras
SubTotalConceptos = TmpDT.SUMD("Total").RoundSQL
If Not TmpDT.Columns.Contains("Amortizacion") Then TmpDT.Columns.Add("Amortizacion", GetType(Decimal))
+ If Not TmpDT.Columns.Contains("AplicaSerie") Then TmpDT.Columns.Add(New DataColumn("AplicaSerie", GetType(Boolean)) With {.DefaultValue = False})
If Not TmpDT.Columns.Contains("AplicaLote") Then TmpDT.Columns.Add(New DataColumn("AplicaLote", GetType(Boolean)) With {.DefaultValue = False})
If Not TmpDT.Columns.Contains("AplicaCaducidad") Then TmpDT.Columns.Add(New DataColumn("AplicaCaducidad", GetType(Boolean)) With {.DefaultValue = False})
+ If Not TmpDT.Columns.Contains("Serie") Then TmpDT.Columns.Add("Serie", GetType(String))
If Not TmpDT.Columns.Contains("Lote") Then TmpDT.Columns.Add("Lote", GetType(String))
If Not TmpDT.Columns.Contains("FechaCaducidad") Then TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
@@ -2121,7 +2139,10 @@ Partial Class Compras_Compras
DdlTipoComprobante.Items.Remove(DdlTipoComprobante.Items.FindByValue("DEV"))
DdlTipoCompra.Items.Remove(DdlTipoCompra.Items.FindByValue("6"))
DdlTipoCompra.Items.Remove(DdlTipoCompra.Items.FindByValue("11"))
- If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then DdlTipoCompra.Items.Add(New ListItem("Recolección", "14"))
+ If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
+ DdlTipoCompra.Items.Add(New ListItem("Recolección", "14"))
+ DdlTipoCompra.Items.Add(New ListItem("Apoyo sin virtual", "16"))
+ End If
Case "E"
DdlTipoComprobante.SelectedValue = "NC"
DdlTipoComprobante.Items.Remove(DdlTipoComprobante.Items.FindByValue("Fac"))
@@ -2841,6 +2862,10 @@ Partial Class Compras_Compras
CvePrePoliza = dr("CvePrePoliza").ToString.ToEntero
EstatusAlmacen = dr("EstatusAlmacen").ToString.ToEntero
DdlTipoCompra.SelectedValueExist(dr("CveTipoCompra"))
+ If DdlTipoCompra.SelectedValue = "16" Then
+ DdlTipoCompra.Items.Add(New ListItem("Apoyo sin virtual", "16"))
+ DdlTipoCompra.SelectedValue = dr("CveTipoCompra").ToString
+ End If
TipoCompraOriginal = dr("CveTipoCompra").ToString.ToEntero
CveTipoConcepto = dr("CveTipoConcepto").ToString.ToEntero
ChkEsNoDeducible.Checked = dr("NoDeducible").ToString.ToEntero > 0
@@ -2868,565 +2893,550 @@ Partial Class Compras_Compras
TxtSubTotal2.Text = (dr("SubTotal").ToString.ToDouble - dr("Descuentos").ToString.ToDouble).FormatoNumero(2)
TxtDescuento.Text = dr("Descuentos").ToString.FormatoNumero(2)
- LblAmortizacion.Text = dr("Amortizacion").ToString.FormatoNumero(2)
- TxtIVA.Text = dr("IVA").ToString.FormatoNumero(2)
- TxtRetIVA.Text = dr("RetIVA").ToString.FormatoNumero(2)
- TxtRetISR.Text = dr("RetISR").ToString.FormatoNumero(2)
- TxtIEPS.Text = dr("IEPS").ToString.FormatoNumero(2)
- If dr("IEPS").ToString.ToDouble > 0 Then TrIEPS.Visible = True
- If dr("RetIVA").ToString.ToDouble > 0 Then TrRetIVA.Visible = True
- If dr("RetISR").ToString.ToDouble > 0 Then TrRetISR.Visible = True
- If Math.Abs(dr("Redondeo").ToString.ToDouble) > 0 Then TrRedondeo.Visible = True
- TxtRedondeo.Text = dr("Redondeo").ToString.FormatoNumero(2)
+ LblAmortizacion.Text = dr("Amortizacion").ToString.FormatoNumero(2)
+ TxtIVA.Text = dr("IVA").ToString.FormatoNumero(2)
+ TxtRetIVA.Text = dr("RetIVA").ToString.FormatoNumero(2)
+ TxtRetISR.Text = dr("RetISR").ToString.FormatoNumero(2)
+ TxtIEPS.Text = dr("IEPS").ToString.FormatoNumero(2)
+ If dr("IEPS").ToString.ToDouble > 0 Then TrIEPS.Visible = True
+ If dr("RetIVA").ToString.ToDouble > 0 Then TrRetIVA.Visible = True
+ If dr("RetISR").ToString.ToDouble > 0 Then TrRetISR.Visible = True
+ If Math.Abs(dr("Redondeo").ToString.ToDouble) > 0 Then TrRedondeo.Visible = True
+ TxtRedondeo.Text = dr("Redondeo").ToString.FormatoNumero(2)
- TxtOtrosImpuestos.Text = dr("OtrosImpuestos").ToString.FormatoNumero(2)
- If dr("OtrosImpuestos").ToString.ToDouble > 0 Then TrOtrosImpuestos.Visible = True
- TxtTotal.Text = dr("Total").ToString.FormatoNumero(2)
+ TxtOtrosImpuestos.Text = dr("OtrosImpuestos").ToString.FormatoNumero(2)
+ If dr("OtrosImpuestos").ToString.ToDouble > 0 Then TrOtrosImpuestos.Visible = True
+ TxtTotal.Text = dr("Total").ToString.FormatoNumero(2)
- HfTotalCompra.Value = TxtTotal.Text
+ HfTotalCompra.Value = TxtTotal.Text
- TipoCambio = dr("TipoCambio").ToString.ToDecimal
- TipoCambioOriginal = dr("TipoCambioOriginal").ToString.ToDecimal
- If TipoCambio > 1 Then LblTC.Text = String.Format("TC: {0}", TipoCambio.ToString("N4"))
- If TipoCambio <> TipoCambioOriginal Then LblTCO.Text = String.Format(" TC Original: {0}", TipoCambioOriginal.ToString("N4"))
+ TipoCambio = dr("TipoCambio").ToString.ToDecimal
+ TipoCambioOriginal = dr("TipoCambioOriginal").ToString.ToDecimal
+ If TipoCambio > 1 Then LblTC.Text = String.Format("TC: {0}", TipoCambio.ToString("N4"))
+ If TipoCambio <> TipoCambioOriginal Then LblTCO.Text = String.Format(" TC Original: {0}", TipoCambioOriginal.ToString("N4"))
- AsignaValoresOriginales(TxtSubTotal.Text.ToDecimal, TxtSubTotal2.Text.ToDecimal, TxtIVA.Text.ToDouble, TxtRetIVA.Text.ToDouble, TxtRetISR.Text.ToDouble, TxtTotal.Text.ToDecimal)
- CalculaTotalPorDevengar()
- TxtDocumentoImporteFE.Text = dr("Total").ToString
- RVDocumentoImporte.MaximumValue = dr("Total").ToString.FormatoNumero(2)
- RVDocumentoImporteFE.MaximumValue = RVDocumentoImporte.MaximumValue
- RVDocumentoImporteCaja.MaximumValue = RVDocumentoImporte.MaximumValue
+ AsignaValoresOriginales(TxtSubTotal.Text.ToDecimal, TxtSubTotal2.Text.ToDecimal, TxtIVA.Text.ToDouble, TxtRetIVA.Text.ToDouble, TxtRetISR.Text.ToDouble, TxtTotal.Text.ToDecimal)
+ CalculaTotalPorDevengar()
+ TxtDocumentoImporteFE.Text = dr("Total").ToString
+ RVDocumentoImporte.MaximumValue = dr("Total").ToString.FormatoNumero(2)
+ RVDocumentoImporteFE.MaximumValue = RVDocumentoImporte.MaximumValue
+ RVDocumentoImporteCaja.MaximumValue = RVDocumentoImporte.MaximumValue
- HFDiferenciaCompra.Value = TxtTotal.Text
+ HFDiferenciaCompra.Value = TxtTotal.Text
- TotalGeneral = dr("Total").ToString.ToDouble
- CveMoneda = dr("CveMoneda").ToString.ToEntero
- DdlValidadaSAT.SelectedValue = "Si"
- TxtObsFact.Text = dr("Observaciones").ToString
- LblUsuarioCaptura.Text = dr("Usuario").ToString
- LitFechCaptura.Text = dr("FechaIng").ToString.ToDate.ToShortDateString
- LitFechCaptura.ToolTip = dr("FechaIng").ToString
- LblRetIVA.Text = If(dr("RetIVA").ToString.ToDecimal > 0, TmpDT.MAX("RetIVAPorcentaje").ToDecimal * 100, 0).ToString.FormatoNumero(4) '(If(SubTotal2 > 0, (RetencionIVA / SubTotal2), 0) * 100).FormatoNumero(3) + "%"
- LblRetISR.Text = If(dr("RetISR").ToString.ToDecimal > 0, TmpDT.MAX("RetISRPorcentaje").ToDecimal * 100, 0).ToString.FormatoNumero(4) '(If(SubTotal2 > 0, (RetencionISR / SubTotal2), 0) * 100).FormatoNumero(3)
- If dr("TipoFactura").ToString <> "CFDi" Then LblTipoFact.Text = dr("TipoFactura").ToString : divTipoFactura.Visible = True
- ViewState("CveFactura") = dr("CveFactura").ToString.ToEntero
- ViewState("IdPoliza") = dr("IdPoliza").ToString.ToEntero
+ TotalGeneral = dr("Total").ToString.ToDouble
+ CveMoneda = dr("CveMoneda").ToString.ToEntero
+ DdlValidadaSAT.SelectedValue = "Si"
+ TxtObsFact.Text = dr("Observaciones").ToString
+ LblUsuarioCaptura.Text = dr("Usuario").ToString
+ LitFechCaptura.Text = dr("FechaIng").ToString.ToDate.ToShortDateString
+ LitFechCaptura.ToolTip = dr("FechaIng").ToString
+ LblRetIVA.Text = If(dr("RetIVA").ToString.ToDecimal > 0, TmpDT.MAX("RetIVAPorcentaje").ToDecimal * 100, 0).ToString.FormatoNumero(4) '(If(SubTotal2 > 0, (RetencionIVA / SubTotal2), 0) * 100).FormatoNumero(3) + "%"
+ LblRetISR.Text = If(dr("RetISR").ToString.ToDecimal > 0, TmpDT.MAX("RetISRPorcentaje").ToDecimal * 100, 0).ToString.FormatoNumero(4) '(If(SubTotal2 > 0, (RetencionISR / SubTotal2), 0) * 100).FormatoNumero(3)
+ If dr("TipoFactura").ToString <> "CFDi" Then LblTipoFact.Text = dr("TipoFactura").ToString : divTipoFactura.Visible = True
+ ViewState("CveFactura") = dr("CveFactura").ToString.ToEntero
+ ViewState("IdPoliza") = dr("IdPoliza").ToString.ToEntero
- DdlMoneda.SelectedValue = dr("CveMoneda").ToString
- 'primero se asigna la moneda, para que dentro del proveedor carge los anticipos solo de esa moneda
- DdlProveedor.Visible = False
- HplProveedor.Visible = True
- If dr("CveRetIVAConcepto").ToString.Contiene("2", "3") Then RetIVAFlete = True
- If dr("CveRetISRConcepto").ToString.Contiene("3") Then RetISRResico = True
- CargaProveedor(CveProveedor, "-1")
+ DdlMoneda.SelectedValue = dr("CveMoneda").ToString
+ 'primero se asigna la moneda, para que dentro del proveedor carge los anticipos solo de esa moneda
+ DdlProveedor.Visible = False
+ HplProveedor.Visible = True
+ If dr("CveRetIVAConcepto").ToString.Contiene("2", "3") Then RetIVAFlete = True
+ If dr("CveRetISRConcepto").ToString.Contiene("3") Then RetISRResico = True
+ CargaProveedor(CveProveedor, "-1")
- DdlRetIVAConcepto.SelectedValueExist(dr("CveRetIVAConcepto").ToString)
+ DdlRetIVAConcepto.SelectedValueExist(dr("CveRetIVAConcepto").ToString)
- DdlRetISRConcepto.SelectedValueExist(dr("CveRetISRConcepto").ToString)
- CveRetIVAConceptoOriginal = If(dr("CveRetIVAConcepto").ToString.ToEntero > 0, dr("CveRetIVAConcepto").ToString.ToEntero, -1)
- CveRetISRConceptoOriginal = If(dr("CveRetISRConcepto").ToString.ToEntero > 0, dr("CveRetISRConcepto").ToString.ToEntero, -1)
+ DdlRetISRConcepto.SelectedValueExist(dr("CveRetISRConcepto").ToString)
+ CveRetIVAConceptoOriginal = If(dr("CveRetIVAConcepto").ToString.ToEntero > 0, dr("CveRetIVAConcepto").ToString.ToEntero, -1)
+ CveRetISRConceptoOriginal = If(dr("CveRetISRConcepto").ToString.ToEntero > 0, dr("CveRetISRConcepto").ToString.ToEntero, -1)
- If dr("CveTipoConcepto").ToString.ToEntero = 1 Then LblProveedor.Text = "Proveedor:" Else LblProveedor.Text = "Acreedor:"
- HdnCveEstatusFactura.Value = dr("CveEstatusFactura").ToString
- LblCompraEstatus.Text = dr("EstatusFactura").ToString
- If dr("CveEstatusFactura").ToString = "2" Then ChkProgramarPago.Checked = True
+ If dr("CveTipoConcepto").ToString.ToEntero = 1 Then LblProveedor.Text = "Proveedor:" Else LblProveedor.Text = "Acreedor:"
+ HdnCveEstatusFactura.Value = dr("CveEstatusFactura").ToString
+ LblCompraEstatus.Text = dr("EstatusFactura").ToString
+ If dr("CveEstatusFactura").ToString = "2" Then ChkProgramarPago.Checked = True
- TrRembolsoUpdate.Visible = True
- TrRembolsoNumero.Visible = True
+ TrRembolsoUpdate.Visible = True
+ TrRembolsoNumero.Visible = True
- Dim DtPersonal As DataTable = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("", "NombreCompleto")
- DdlRembolsoPersonal.DataSource = DtPersonal
- DdlRembolsoPersonal.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
- DdlRembolsoPersonal.DataBind()
- If dr("CvePersonal").ToString.ToEntero > 0 Then
- DdlRembolsoPersonal.SelectedValueExist(dr("CvePersonal").ToString)
- TxtRembolsoNumero.Text = dr("NumeroReembolso").ToString
- RblRembolso.SelectedValuesIfExist("1")
- TrRembolsoPersonal.Visible = True
- End If
+ Dim DtPersonal As DataTable = GlobalDTRHPersonal(UsuarioActual.CveEmpresa).FiltraParametros("", "NombreCompleto")
+ DdlRembolsoPersonal.DataSource = DtPersonal
+ DdlRembolsoPersonal.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
+ DdlRembolsoPersonal.DataBind()
+ If dr("CvePersonal").ToString.ToEntero > 0 Then
+ DdlRembolsoPersonal.SelectedValueExist(dr("CvePersonal").ToString)
+ TxtRembolsoNumero.Text = dr("NumeroReembolso").ToString
+ RblRembolso.SelectedValuesIfExist("1")
+ TrRembolsoPersonal.Visible = True
+ End If
- Dim DtCajaChica As DataTable = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa)
- DtCajaChica = DtCajaChica.FiltraParametros(String.Format("CveTipoCuenta = 1"))
- DdlRembolsoCajaChica.DataSource = DtCajaChica
- DdlRembolsoCajaChica.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
- DdlRembolsoCajaChica.DataBind()
- If dr("CveCajaChica").ToString.ToEntero > 0 Then
- DdlRembolsoCajaChica.SelectedValueExist(dr("CveCajaChica").ToString)
- TxtRembolsoNumero.Text = dr("NumeroReembolso").ToString
- RblRembolso.SelectedValuesIfExist("2")
- TrRembolsoCajaChica.Visible = True
- End If
+ Dim DtCajaChica As DataTable = GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa:=UsuarioActual.CveEmpresa)
+ DtCajaChica = DtCajaChica.FiltraParametros(String.Format("CveTipoCuenta = 1"))
+ DdlRembolsoCajaChica.DataSource = DtCajaChica
+ DdlRembolsoCajaChica.Items.Insert(0, New ListItem("Sin Seleccionar", "-1"))
+ DdlRembolsoCajaChica.DataBind()
+ If dr("CveCajaChica").ToString.ToEntero > 0 Then
+ DdlRembolsoCajaChica.SelectedValueExist(dr("CveCajaChica").ToString)
+ TxtRembolsoNumero.Text = dr("NumeroReembolso").ToString
+ RblRembolso.SelectedValuesIfExist("2")
+ TrRembolsoCajaChica.Visible = True
+ End If
- If dr("CvePersonal").ToString.ToEntero > 0 Or dr("CveCajaChica").ToString.ToEntero > 0 Then
- NumeroReembolsoOriginal = dr("NumeroReembolso").ToString
- End If
+ If dr("CvePersonal").ToString.ToEntero > 0 Or dr("CveCajaChica").ToString.ToEntero > 0 Then
+ NumeroReembolsoOriginal = dr("NumeroReembolso").ToString
+ End If
- VisualizaEstatusCompraSaldo(dr("TipoDocto").ToString, dr("Saldo").ToString.ToDecimal, dr("Total").ToString.ToDecimal)
- If dr("IdPoliza").ToString.ToEntero > 0 Then
- HplCompraContabilizada.Text = "Si"
- If UsuarioActual.Empresa.TipoContabilidad = 2 Then HplCompraContabilizada.NavigateUrl = String.Format("/Contabilidad/RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza"))
- LblCompraEstatus.ForeColor = Drawing.Color.Navy
- trContabilizada.Visible = True
- If UsuarioActual.TienePermisoProceso(107) Then BtnDescontabilizar.Visible = True
- Else
- BtnDescontabilizar.Visible = False
- HplCompraContabilizada.Text = "No"
- trContabilizada.Visible = True
- End If
-
- If UsuarioActual.Empresa.TipoContabilidad = 1 Then
- trContabilizada.Visible = False
- End If
-
- UPPDescontablizar.Update()
-
- TxtFechaPago.Text = dr("FechaVencimiento").ToString.ToDate.ToShortDateString
- RowBitacora.Visible = True
- CargaEventoBitacora()
- 'ImgAddObs.Attributes.Add("onclick", "javascript: PosicionaObjeto(this.id,'DivEventoBitacora',null,-250,-250); $('#DivEventoBitacora').show(1000); ")
- ImgAddObs.Visible = True
- ChkAplicaNotaCredito.Checked = CBool(dr("AplicaNotaCredito").ToString)
-
- 'CompraSaldo = TotalGeneral - LblAmortizacion.Text.ToDouble
- CompraSaldo = dr("Saldo").ToString.ToDouble
-
- If CompraSaldo > dr("Saldo").ToString.ToDouble Then
- CompraSaldo = dr("Saldo").ToString.ToDouble
- End If
- HdnCompraSaldo.Value = CompraSaldo.ToString
-
- If CompraSaldo > 0 And UsuarioActual.TienePermisoProceso(100) Then
- HLPagar.Visible = True
- HLPagar.NavigateUrl = $"/Bancos/PopIECompras.aspx?CveCompra={CveCompra}&TB_iframe=true&height=520&width=700"
- End If
-
- If dr("CveFactura").ToString.ToEntero > 0 Then
- ImgDownXML.Visible = True : ImgDownXML.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=Fact&EXT=xml&CveFactura={0}&RFC={1}", dr("CveFactura"), dr("RFC").ToString.Replace("&", "%26%"))))
- ImgDownPDF.Visible = True : ImgDownPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=Fact&EXT=pdf&CveFactura={0}&RFC={1}", dr("CveFactura"), dr("RFC").ToString.Replace("&", "%26%"))))
- Else
- LnkGenrarPDF.Visible = True
- End If
-
- TxtRembolsoNumero.Enabled = If(IdPoliza > 0, False, True)
-
- If dr("CveImportacion").ToString <> "" Then
- divCompraImportacion.Visible = True
- HplCompraImportacion.Text = dr("Importacion").ToString
- If dr("TipoImportacion").ToString = "2" Then 'flete/indirecto
- LtlImportacionTexto.Text = "Indirecto"
- HplCompraImportacion.NavigateUrl = $"/Inventarios/Fletes.aspx?CveFlete={dr("CveImportacion")}"
+ VisualizaEstatusCompraSaldo(dr("TipoDocto").ToString, dr("Saldo").ToString.ToDecimal, dr("Total").ToString.ToDecimal)
+ If dr("IdPoliza").ToString.ToEntero > 0 Then
+ HplCompraContabilizada.Text = "Si"
+ If UsuarioActual.Empresa.TipoContabilidad = 2 Then HplCompraContabilizada.NavigateUrl = String.Format("/Contabilidad/RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza"))
+ LblCompraEstatus.ForeColor = Drawing.Color.Navy
+ trContabilizada.Visible = True
+ If UsuarioActual.TienePermisoProceso(107) Then BtnDescontabilizar.Visible = True
Else
- HplCompraImportacion.NavigateUrl = $"/Compras/Importaciones.aspx?CveImportacion={dr("CveImportacion")}"
- End If
- End If
-
- If dr("CveFolioGarantia").ToString <> "" Then
- divFolioGarantia.Visible = True
- DdlFolioGarantia.Items.Insert(0, New ListItem(dr("FolioGarantia").ToString, dr("CveFolioGarantia").ToString))
- DdlFolioGarantia.SelectedValue = dr("CveFolioGarantia").ToString
- End If
-
- 'CargaDetalle
- If ObjCompra.GetCompraDetalle(CveCompra, UsuarioActual.CveEmpresa) Then
- TmpDT = ObjCompra.DtResultados
- TmpDTOriginal = ObjCompra.DtResultados.Copy
-
- TmpDT.Columns.Add("CveClasificacionActualizar", GetType(Integer))
- 'TmpDT.Columns.Add("CveEq", GetType(Integer))
- TmpDT.Columns.Add("CveAlmacen", GetType(Integer))
- 'TmpDT.Columns.Add("CvePersonal", GetType(Integer))
-
- TmpDT.Columns.Add("IdCuentaComprometido", GetType(Integer))
- TmpDT.Columns.Add("IdCuentaPorEjercer", GetType(Integer))
- TmpDT.Columns.Add("IdCuentaDevengado", GetType(Integer))
- TmpDT.Columns.Add("IdCuentaMatriz", GetType(Integer))
-
- TmpDT.Columns.Add("PSDescripcion", GetType(String))
- TmpDT.Columns.Add("ProductoOC", GetType(String))
- TmpDT.Columns.Add("CantidadF", GetType(Double))
-
- 'Consignaciones
- TmpDT.Columns.Add("CveAlmacenConsignacion", GetType(Integer))
- TmpDT.Columns.Add("NoConsignacion", GetType(Integer))
- TmpDT.Columns.Add("CveConsignacion", GetType(Integer))
- TmpDT.Columns.Add("HdnPS", GetType(String))
- TmpDT.Columns.Add("HdnCvePS", GetType(String))
- TmpDT.Columns.Add("HdnClasificacion", GetType(String))
- TmpDT.Columns.Add("HdnCveClasificacion", GetType(String))
- TmpDT.Columns.Add("HdnCveAlmacen", GetType(String))
-
- 'INVENTARIO SERIE/LOTE
- TmpDT.Columns.Add("CveMetodoInventario", GetType(Integer))
-
- 'Fletes y Servicios
- 'TmpDT.Columns.Add("AplicaCostoIndirecto", GetType(Integer)) 'Ya traemos el estatus flete
- TmpDT.Columns.Add("CostoIndirectoAlmacen", GetType(Decimal))
- TmpDT.Columns.Add("EntregaDirecta", GetType(Integer))
-
- TmpDT.Columns.Add("CveContrato", GetType(Integer))
- TmpDT.Columns.Add("DifPSSat", GetType(Integer))
-
- If Not TmpDT.Columns.Contains("CveContratoDetalle") Then
- TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
- End If
- If Not TmpDT.Columns.Contains("CveCultivoCuadroDetalle") Then
- TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
+ BtnDescontabilizar.Visible = False
+ HplCompraContabilizada.Text = "No"
+ trContabilizada.Visible = True
End If
- If Not TmpDT.Columns.Contains("CveSATPSActualizado") Then
- TmpDT.Columns.Add("CveSATPSActualizado", GetType(Integer))
+ If UsuarioActual.Empresa.TipoContabilidad = 1 Then
+ trContabilizada.Visible = False
End If
- If Not TmpDT.Columns.Contains("ImporteSinImpuestos") Then
- TmpDT.Columns.Add("ImporteSinImpuestos", GetType(Decimal))
+ UPPDescontablizar.Update()
+
+ TxtFechaPago.Text = dr("FechaVencimiento").ToString.ToDate.ToShortDateString
+ RowBitacora.Visible = True
+ CargaEventoBitacora()
+ 'ImgAddObs.Attributes.Add("onclick", "javascript: PosicionaObjeto(this.id,'DivEventoBitacora',null,-250,-250); $('#DivEventoBitacora').show(1000); ")
+ ImgAddObs.Visible = True
+ ChkAplicaNotaCredito.Checked = CBool(dr("AplicaNotaCredito").ToString)
+
+ 'CompraSaldo = TotalGeneral - LblAmortizacion.Text.ToDouble
+ CompraSaldo = dr("Saldo").ToString.ToDouble
+
+ If CompraSaldo > dr("Saldo").ToString.ToDouble Then
+ CompraSaldo = dr("Saldo").ToString.ToDouble
End If
- If Not TmpDT.Columns.Contains("AplicaLote") Then
- TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
- End If
- If Not TmpDT.Columns.Contains("AplicaCaducidad") Then
- TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ HdnCompraSaldo.Value = CompraSaldo.ToString
+
+ If CompraSaldo > 0 And UsuarioActual.TienePermisoProceso(100) Then
+ HLPagar.Visible = True
+ HLPagar.NavigateUrl = $"/Bancos/PopIECompras.aspx?CveCompra={CveCompra}&TB_iframe=true&height=520&width=700"
End If
- If Not TmpDT.Columns.Contains("Lote") Then
- TmpDT.Columns.Add("Lote", GetType(String))
+ If dr("CveFactura").ToString.ToEntero > 0 Then
+ ImgDownXML.Visible = True : ImgDownXML.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=Fact&EXT=xml&CveFactura={0}&RFC={1}", dr("CveFactura"), dr("RFC").ToString.Replace("&", "%26%"))))
+ ImgDownPDF.Visible = True : ImgDownPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=Fact&EXT=pdf&CveFactura={0}&RFC={1}", dr("CveFactura"), dr("RFC").ToString.Replace("&", "%26%"))))
+ Else
+ LnkGenrarPDF.Visible = True
End If
- If Not TmpDT.Columns.Contains("FechaCaducidad") Then
- TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
+
+ TxtRembolsoNumero.Enabled = If(IdPoliza > 0, False, True)
+
+ If dr("CveImportacion").ToString <> "" Then
+ divCompraImportacion.Visible = True
+ HplCompraImportacion.Text = dr("Importacion").ToString
+ If dr("TipoImportacion").ToString = "2" Then 'flete/indirecto
+ LtlImportacionTexto.Text = "Indirecto"
+ HplCompraImportacion.NavigateUrl = $"/Inventarios/Fletes.aspx?CveFlete={dr("CveImportacion")}"
+ Else
+ HplCompraImportacion.NavigateUrl = $"/Compras/Importaciones.aspx?CveImportacion={dr("CveImportacion")}"
+ End If
End If
+ If dr("CveFolioGarantia").ToString <> "" Then
+ divFolioGarantia.Visible = True
+ DdlFolioGarantia.Items.Insert(0, New ListItem(dr("FolioGarantia").ToString, dr("CveFolioGarantia").ToString))
+ DdlFolioGarantia.SelectedValue = dr("CveFolioGarantia").ToString
+ End If
+
+ 'CargaDetalle
+ If ObjCompra.GetCompraDetalle(CveCompra, UsuarioActual.CveEmpresa) Then
+ TmpDT = ObjCompra.DtResultados
+ TmpDTOriginal = ObjCompra.DtResultados.Copy
+
+ TmpDT.Columns.Add("CveClasificacionActualizar", GetType(Integer))
+ 'TmpDT.Columns.Add("CveEq", GetType(Integer))
+ TmpDT.Columns.Add("CveAlmacen", GetType(Integer))
+ 'TmpDT.Columns.Add("CvePersonal", GetType(Integer))
+
+ TmpDT.Columns.Add("IdCuentaComprometido", GetType(Integer))
+ TmpDT.Columns.Add("IdCuentaPorEjercer", GetType(Integer))
+ TmpDT.Columns.Add("IdCuentaDevengado", GetType(Integer))
+ TmpDT.Columns.Add("IdCuentaMatriz", GetType(Integer))
+
+ TmpDT.Columns.Add("PSDescripcion", GetType(String))
+ TmpDT.Columns.Add("ProductoOC", GetType(String))
+ TmpDT.Columns.Add("CantidadF", GetType(Double))
+
+ 'Consignaciones
+ TmpDT.Columns.Add("CveAlmacenConsignacion", GetType(Integer))
+ TmpDT.Columns.Add("NoConsignacion", GetType(Integer))
+ TmpDT.Columns.Add("CveConsignacion", GetType(Integer))
+ TmpDT.Columns.Add("HdnPS", GetType(String))
+ TmpDT.Columns.Add("HdnCvePS", GetType(String))
+ TmpDT.Columns.Add("HdnClasificacion", GetType(String))
+ TmpDT.Columns.Add("HdnCveClasificacion", GetType(String))
+ TmpDT.Columns.Add("HdnCveAlmacen", GetType(String))
+
+ 'INVENTARIO SERIE/LOTE
+ TmpDT.Columns.Add("CveMetodoInventario", GetType(Integer))
+
+ 'Fletes y Servicios
+ 'TmpDT.Columns.Add("AplicaCostoIndirecto", GetType(Integer)) 'Ya traemos el estatus flete
+ TmpDT.Columns.Add("CostoIndirectoAlmacen", GetType(Decimal))
+ TmpDT.Columns.Add("EntregaDirecta", GetType(Integer))
+
+ TmpDT.Columns.Add("CveContrato", GetType(Integer))
+ TmpDT.Columns.Add("DifPSSat", GetType(Integer))
+
+ If Not TmpDT.Columns.Contains("CveContratoDetalle") Then TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
+ If Not TmpDT.Columns.Contains("CveCultivoCuadroDetalle") Then TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
+ If Not TmpDT.Columns.Contains("CveSATPSActualizado") Then TmpDT.Columns.Add("CveSATPSActualizado", GetType(Integer))
+ If Not TmpDT.Columns.Contains("ImporteSinImpuestos") Then TmpDT.Columns.Add("ImporteSinImpuestos", GetType(Decimal))
+
+ If Not TmpDT.Columns.Contains("AplicaSerie") Then TmpDT.Columns.Add("AplicaSerie", GetType(Boolean))
+ If Not TmpDT.Columns.Contains("AplicaLote") Then TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
+ If Not TmpDT.Columns.Contains("AplicaCaducidad") Then TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+
+ If Not TmpDT.Columns.Contains("Serie") Then TmpDT.Columns.Add("Serie", GetType(String))
+ If Not TmpDT.Columns.Contains("Lote") Then TmpDT.Columns.Add("Lote", GetType(String))
+ If Not TmpDT.Columns.Contains("FechaCaducidad") Then TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
+
GvPS.DataSource = TmpDT
GvPS.DataBind()
If UsuarioActual.Empresa.UsaAC Then
- CargaHidendsAC()
- End If
-
- CalculaTotales(True)
-
- 'If UsuarioActual.Empresa.UsaInventarios Then
- ' DtInv = TmpDT.FiltraParametros(String.Format("CveTipoPS = 2")).Copy
-
- ' If dr("Inventario").ToString = "1" Then
-
- ' CveMovimientoAlmacen = dr("CveMovimiento").ToString.ToEntero
-
- ' Dim Inv As New ClsInventarios
- ' If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa) Then
- ' 'Dim TempParametros = Encripta(String.Format("OP=Alm&CveMovimiento={0}", dr("CveMovimiento")))
- ' 'ImgImprimirAlmacen.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", TempParametros)
-
- ' ImgImprimirAlmacen.Visible = True
- ' ImgImprimirAlmacen.NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", dr("CveMovimiento"))
-
- ' Dim drt As DataRow
- ' 'actualizo el almacen
- ' For Each dri As DataRow In DtInv.Rows
-
- ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad")))
- ' If drt IsNot Nothing Then
- ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0) 'Charlie
- ' TmpDr("CveAlmacen") = drt("CveAlmacen") 'Charlie
-
- ' dri("CveAlmacen") = drt("CveAlmacen")
-
- ' End If
-
- ' Next
-
- ' End If
-
- ' ''Proceso Super Tramposo de Charlie
- ' 'If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa, CveCompra:=-123) Then
- ' ' Dim drt As DataRow
- ' ' For Each dri As DataRow In DtInv.Rows
- ' ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad")))
- ' ' If drt IsNot Nothing Then
- ' ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0)
- ' ' TmpDr("CveAlmacen") = drt("CveAlmacen")
- ' ' End If
- ' ' Next
- ' 'End If
-
- ' Inv.Dispose()
-
- ' End If
-
- ' CargaGvInv()
-
- ' 'Ocultamos "Recibir Aqui"
- ' GvInv.Columns(6).Visible = False
- ' GvInv.Columns(7).Visible = False
-
- 'End If
- End If
-
- DdlTipoComprobante.Enabled = False
- If dr("TipoDocto").ToString = "RNC" Then
- DdlTipoComprobante.Items.Add(New ListItem("Remisión de Nota de Crédito", "RNC"))
- End If
-
- DdlTipoComprobante.SelectedValue = dr("TipoDocto").ToString
- If dr("TipoDocto").ToString.Contiene("Fac", "Ant") Then
- ChkAplicaNotaCredito.Enabled = True
- ImgAnticiposPendientes.Visible = True
- Else
- ImgAnticiposPendientes.Visible = False
- ChkAplicaNotaCredito.Enabled = False
- End If
- HlProveedor.HRef = ""
- TxtCodigo.ReadOnly = True
- 'IPP Usuario Sistema No Bloquea, se cambió al proceso
- If UsuarioActual.TienePermisoProceso(79) Then
- TxtCantidad.Enabled = True
- TxtPrecio.Enabled = True
- Else
- TxtCantidad.Enabled = False
- TxtPrecio.Enabled = False
- End If
-
- DdlPS.Enabled = False
- TxtObsPS.Enabled = False
- 'ImgAmort.Attributes.Clear()
- LbAgregar.Enabled = False
- TxtSerie.Enabled = False
- TxtFolio.Enabled = False
-
- TxtFecha.Enabled = False
- ImgFecha.Enabled = False
- CEFecha.Enabled = False
-
- If UsuarioActual.TienePermisoProceso(342) Then
- TxtFecha.Enabled = True
- ImgFecha.Enabled = True
- CEFecha.Enabled = True
- LnkActualziarFechadecompra.Visible = True
- End If
-
- DdlProveedor.Enabled = False
- DdlProveedorSucursal.Enabled = False
- DdlEstatus.Enabled = False
- DdlMoneda.Enabled = False
- DdlRetIVAConcepto.Enabled = False
- DdlRetISRConcepto.Enabled = False
- If UsuarioActual.TienePermisoProceso(79) Then
- BtnActualizar.Visible = True
- DdlProveedorSucursal.Enabled = True
- DdlPS.Enabled = True
- TxtObsPS.Enabled = True
- LbAgregar.Enabled = True
- LnkUpdateFechaPago.Visible = True
-
- If DdlRetIVAConcepto.SelectedValue.ToEntero > 0 Then
- DdlRetIVAConcepto.Enabled = True
- End If
-
- If DdlRetISRConcepto.SelectedValue.ToEntero > 0 Then
- DdlRetISRConcepto.Enabled = True
- End If
- End If
-
- BtnGuardar.Visible = False
- BtnGuardar.Enabled = False
- UpPSS.Update()
-
- 'GvLeyendasFiscales.Enabled = False
- TxtSubTotal.ReadOnly = True
- TxtIVA.ReadOnly = True
- TxtRetIVA.ReadOnly = True
- TxtRetISR.ReadOnly = True
- TxtIEPS.ReadOnly = True
- TxtOtrosImpuestos.ReadOnly = True
- TxtTotal.ReadOnly = True
-
- 'CargaLeyendasFiscales
- ViewState("CompraFolio") = TxtFolio.Text.Trim
-
- Dim dtnc As DataTable = Nothing
- If dr("TipoDocto").ToString = "Fac" Then
- 'carga as notas de credito vinculadas
- If ObjCompra.GetComprasNotasCredito(CveCompra, -1) Then
- dtnc = ObjCompra.DtResultados
- End If
- ElseIf dr("TipoDocto").ToString.Contiene("NC", "DEV", "Ant") Then
- If dr("TipoDocto").ToString = "NC" Then
- DivReembolso.Visible = False
- RBLPago.Items(2).Enabled = False
- End If
- If ObjCompra.GetComprasNotasCredito(-1, CveCompra) Then
- dtnc = ObjCompra.DtResultados
- LtlGvAnticiposSel.Text = "
Compras Aplicadas
"
- End If
- End If
-
- 'VINCULACIÓN OC - NUEVA DICIEMBRE 2015
- If dr("OCVinculada").ToString() <> "" Then
-
- Dim OCS As String = "", CveOCS As String = ""
- Dim DtOCs As New DataTable
- DtOCs.Columns.Add("SerieFolioOC", GetType(String))
- DtOCs.Columns.Add("CveOrdenCompra", GetType(Integer))
- DtOCs.Columns.Add("Fecha", GetType(Date))
- DtOCs.Columns.Add("Descripcion", GetType(String))
- For Each drt As DataRow In TmpDT.FiltraParametros("", "", {"SerieFolioOC", "CveOrdenCompra"}).Rows
- If drt("SerieFolioOC").ToString <> "" Then
- Dim DrOC As DataRow = DtOCs.NewRow
- DrOC("SerieFolioOC") = drt("SerieFolioOC").ToString
- DrOC("CveOrdenCompra") = drt("CveOrdenCompra").ToString
- DtOCs.Rows.Add(DrOC)
+ CargaHidendsAC()
End If
- Next
- If DtOCs.Rows.Count > 0 Then
- For Each drt As DataRow In DtOCs.Rows
- OCS += If(OCS <> "", String.Format(",{0}", drt("SerieFolioOC").ToString), drt("SerieFolioOC").ToString)
- CveOCS += If(CveOCS <> "", String.Format(",{0}", drt("CveOrdenCompra").ToString), drt("CveOrdenCompra").ToString)
- 'If ObjOC.GetOrdenesCompraRep("OC", -1, -1, -1, -1, MinFecha, MaxFecha, drt("CveOrdenCompra").ToString.ToEntero, CveProveedor, -1, -1, -1, UsuarioActual.CveEmpresa, -1) Then
- ' If ObjOC.DtResultados.Rows.Count = 1 Then
- ' OCS += If(OCS <> "", String.Format(",{0}", drt("FolioOC").ToString), drt("FolioOC").ToString)
- ' CveOCS += If(CveOCS <> "", String.Format(",{0}", drt("CveOrdenCompra").ToString), drt("CveOrdenCompra").ToString)
- ' drt("Fecha") = ObjOC.DtResultados.FiltroPrimeroValor("FechaIng")
- ' drt("Descripcion") = ObjOC.DtResultados.FiltroPrimeroValor("Descripcion")
- ' End If
- 'End If
+ CalculaTotales(True)
+
+ 'If UsuarioActual.Empresa.UsaInventarios Then
+ ' DtInv = TmpDT.FiltraParametros(String.Format("CveTipoPS = 2")).Copy
+
+ ' If dr("Inventario").ToString = "1" Then
+
+ ' CveMovimientoAlmacen = dr("CveMovimiento").ToString.ToEntero
+
+ ' Dim Inv As New ClsInventarios
+ ' If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa) Then
+ ' 'Dim TempParametros = Encripta(String.Format("OP=Alm&CveMovimiento={0}", dr("CveMovimiento")))
+ ' 'ImgImprimirAlmacen.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", TempParametros)
+
+ ' ImgImprimirAlmacen.Visible = True
+ ' ImgImprimirAlmacen.NavigateUrl = String.Format("/Inventarios/EntradasSalidas.aspx?CveMovimiento={0}", dr("CveMovimiento"))
+
+ ' Dim drt As DataRow
+ ' 'actualizo el almacen
+ ' For Each dri As DataRow In DtInv.Rows
+
+ ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad")))
+ ' If drt IsNot Nothing Then
+ ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0) 'Charlie
+ ' TmpDr("CveAlmacen") = drt("CveAlmacen") 'Charlie
+
+ ' dri("CveAlmacen") = drt("CveAlmacen")
+
+ ' End If
+
+ ' Next
+
+ ' End If
+
+ ' ''Proceso Super Tramposo de Charlie
+ ' 'If Inv.GetMovimientosDetalle(dr("CveMovimiento").ToString.ToEntero, UsuarioActual.CveEmpresa, CveCompra:=-123) Then
+ ' ' Dim drt As DataRow
+ ' ' For Each dri As DataRow In DtInv.Rows
+ ' ' drt = Inv.DtResultados.FiltroPrimero(String.Format("CvePS = {0} AND Cantidad = {1}", dri("CvePS"), dri("Cantidad")))
+ ' ' If drt IsNot Nothing Then
+ ' ' Dim TmpDr As DataRow = TmpDT.Select($"Consec = {dri("Consec").ToString.ToEntero}")(0)
+ ' ' TmpDr("CveAlmacen") = drt("CveAlmacen")
+ ' ' End If
+ ' ' Next
+ ' 'End If
+
+ ' Inv.Dispose()
+
+ ' End If
+
+ ' CargaGvInv()
+
+ ' 'Ocultamos "Recibir Aqui"
+ ' GvInv.Columns(6).Visible = False
+ ' GvInv.Columns(7).Visible = False
+
+ 'End If
+ End If
+
+ DdlTipoComprobante.Enabled = False
+ If dr("TipoDocto").ToString = "RNC" Then
+ DdlTipoComprobante.Items.Add(New ListItem("Remisión de Nota de Crédito", "RNC"))
+ End If
+
+ DdlTipoComprobante.SelectedValue = dr("TipoDocto").ToString
+ If dr("TipoDocto").ToString.Contiene("Fac", "Ant") Then
+ ChkAplicaNotaCredito.Enabled = True
+ ImgAnticiposPendientes.Visible = True
+ Else
+ ImgAnticiposPendientes.Visible = False
+ ChkAplicaNotaCredito.Enabled = False
+ End If
+ HlProveedor.HRef = ""
+ TxtCodigo.ReadOnly = True
+ 'IPP Usuario Sistema No Bloquea, se cambió al proceso
+ If UsuarioActual.TienePermisoProceso(79) Then
+ TxtCantidad.Enabled = True
+ TxtPrecio.Enabled = True
+ Else
+ TxtCantidad.Enabled = False
+ TxtPrecio.Enabled = False
+ End If
+
+ DdlPS.Enabled = False
+ TxtObsPS.Enabled = False
+ 'ImgAmort.Attributes.Clear()
+ LbAgregar.Enabled = False
+ TxtSerie.Enabled = False
+ TxtFolio.Enabled = False
+
+ TxtFecha.Enabled = False
+ ImgFecha.Enabled = False
+ CEFecha.Enabled = False
+
+ If UsuarioActual.TienePermisoProceso(342) Then
+ TxtFecha.Enabled = True
+ ImgFecha.Enabled = True
+ CEFecha.Enabled = True
+ LnkActualziarFechadecompra.Visible = True
+ End If
+
+ DdlProveedor.Enabled = False
+ DdlProveedorSucursal.Enabled = False
+ DdlEstatus.Enabled = False
+ DdlMoneda.Enabled = False
+ DdlRetIVAConcepto.Enabled = False
+ DdlRetISRConcepto.Enabled = False
+ If UsuarioActual.TienePermisoProceso(79) Then
+ BtnActualizar.Visible = True
+ DdlProveedorSucursal.Enabled = True
+ DdlPS.Enabled = True
+ TxtObsPS.Enabled = True
+ LbAgregar.Enabled = True
+ LnkUpdateFechaPago.Visible = True
+
+ If DdlRetIVAConcepto.SelectedValue.ToEntero > 0 Then
+ DdlRetIVAConcepto.Enabled = True
+ End If
+
+ If DdlRetISRConcepto.SelectedValue.ToEntero > 0 Then
+ DdlRetISRConcepto.Enabled = True
+ End If
+ End If
+
+ BtnGuardar.Visible = False
+ BtnGuardar.Enabled = False
+ UpPSS.Update()
+
+ 'GvLeyendasFiscales.Enabled = False
+ TxtSubTotal.ReadOnly = True
+ TxtIVA.ReadOnly = True
+ TxtRetIVA.ReadOnly = True
+ TxtRetISR.ReadOnly = True
+ TxtIEPS.ReadOnly = True
+ TxtOtrosImpuestos.ReadOnly = True
+ TxtTotal.ReadOnly = True
+
+ 'CargaLeyendasFiscales
+ ViewState("CompraFolio") = TxtFolio.Text.Trim
+
+ Dim dtnc As DataTable = Nothing
+ If dr("TipoDocto").ToString = "Fac" Then
+ 'carga as notas de credito vinculadas
+ If ObjCompra.GetComprasNotasCredito(CveCompra, -1) Then
+ dtnc = ObjCompra.DtResultados
+ End If
+ ElseIf dr("TipoDocto").ToString.Contiene("NC", "DEV", "Ant") Then
+ If dr("TipoDocto").ToString = "NC" Then
+ DivReembolso.Visible = False
+ RBLPago.Items(2).Enabled = False
+ End If
+ If ObjCompra.GetComprasNotasCredito(-1, CveCompra) Then
+ dtnc = ObjCompra.DtResultados
+ LtlGvAnticiposSel.Text = "
Compras Aplicadas
"
+ End If
+ End If
+
+ 'VINCULACIÓN OC - NUEVA DICIEMBRE 2015
+ If dr("OCVinculada").ToString() <> "" Then
+
+ Dim OCS As String = "", CveOCS As String = ""
+ Dim DtOCs As New DataTable
+ DtOCs.Columns.Add("SerieFolioOC", GetType(String))
+ DtOCs.Columns.Add("CveOrdenCompra", GetType(Integer))
+ DtOCs.Columns.Add("Fecha", GetType(Date))
+ DtOCs.Columns.Add("Descripcion", GetType(String))
+ For Each drt As DataRow In TmpDT.FiltraParametros("", "", {"SerieFolioOC", "CveOrdenCompra"}).Rows
+ If drt("SerieFolioOC").ToString <> "" Then
+ Dim DrOC As DataRow = DtOCs.NewRow
+ DrOC("SerieFolioOC") = drt("SerieFolioOC").ToString
+ DrOC("CveOrdenCompra") = drt("CveOrdenCompra").ToString
+ DtOCs.Rows.Add(DrOC)
+ End If
Next
+
+ If DtOCs.Rows.Count > 0 Then
+ For Each drt As DataRow In DtOCs.Rows
+ OCS += If(OCS <> "", String.Format(",{0}", drt("SerieFolioOC").ToString), drt("SerieFolioOC").ToString)
+ CveOCS += If(CveOCS <> "", String.Format(",{0}", drt("CveOrdenCompra").ToString), drt("CveOrdenCompra").ToString)
+ 'If ObjOC.GetOrdenesCompraRep("OC", -1, -1, -1, -1, MinFecha, MaxFecha, drt("CveOrdenCompra").ToString.ToEntero, CveProveedor, -1, -1, -1, UsuarioActual.CveEmpresa, -1) Then
+ ' If ObjOC.DtResultados.Rows.Count = 1 Then
+ ' OCS += If(OCS <> "", String.Format(",{0}", drt("FolioOC").ToString), drt("FolioOC").ToString)
+ ' CveOCS += If(CveOCS <> "", String.Format(",{0}", drt("CveOrdenCompra").ToString), drt("CveOrdenCompra").ToString)
+ ' drt("Fecha") = ObjOC.DtResultados.FiltroPrimeroValor("FechaIng")
+ ' drt("Descripcion") = ObjOC.DtResultados.FiltroPrimeroValor("Descripcion")
+ ' End If
+ 'End If
+ Next
+ End If
+
+ TxtOC.Text = OCS
+ TieneOC = True
+
+ If DtOCs.Rows.Count > 1 Then
+ HLOCsVinculadas.Visible = True
+ GvOCsVinculadas.DataSource = DtOCs
+ GvOCsVinculadas.DataBind()
+ UpOCsVinculadas.Update()
+ ElseIf DtOCs.Rows.Count = 1 Then
+ HLOCsVinculadas.Visible = True
+ HLOCsVinculadas.Attributes.Remove("data-toggle")
+ HLOCsVinculadas.Attributes.Remove("data-target")
+ HLOCsVinculadas.Attributes.Add("data-toggle", "tooltip")
+ HLOCsVinculadas.NavigateUrl = $"/OC/OC.aspx?OC={DtOCs.FiltroPrimeroValor("CveOrdenCompra")}"
+ HLOCsVinculadas.Target = "_blank"
+ End If
+
+
End If
- TxtOC.Text = OCS
- TieneOC = True
+ 'BLOQUEA OC
+ TxtOC.Enabled = False
+ ImgBtnBuscarOC.Visible = False
+ Tab.ActiveTabIndex = 0
- If DtOCs.Rows.Count > 1 Then
- HLOCsVinculadas.Visible = True
- GvOCsVinculadas.DataSource = DtOCs
- GvOCsVinculadas.DataBind()
- UpOCsVinculadas.Update()
- ElseIf DtOCs.Rows.Count = 1 Then
- HLOCsVinculadas.Visible = True
- HLOCsVinculadas.Attributes.Remove("data-toggle")
- HLOCsVinculadas.Attributes.Remove("data-target")
- HLOCsVinculadas.Attributes.Add("data-toggle", "tooltip")
- HLOCsVinculadas.NavigateUrl = $"/OC/OC.aspx?OC={DtOCs.FiltroPrimeroValor("CveOrdenCompra")}"
- HLOCsVinculadas.Target = "_blank"
+ GvAnticiposSel.DataSource = dtnc
+ GvAnticiposSel.DataBind()
+
+ If dtnc IsNot Nothing AndAlso dtnc.Rows.Count > 0 Then
+ LtlGvAnticiposSel.Visible = True
End If
+ '' VALIDA ELIMINAR COMPRA, QUE NO TENGA PAGOS CONCILIADOS
+ If (UsuarioActual.TienePermisoProceso(77) OrElse UsuarioActual.TienePermisoProceso(135)) AndAlso dr("NumPagosConciliados").ToString.ToEntero = 0 Then ' Eliminar compra
- End If
+ 'SIN VINCULACIÓN
+ If UsuarioActual.TienePermisoProceso(135) Then
+ If TxtOC.Text = "" AndAlso IdPoliza < 1 AndAlso CveMovimientoAlmacen < 1 AndAlso LblUsuarioCaptura.Text = UsuarioActual.Usuario AndAlso TmpDT.MAX("CveActivoFijo").ToEntero < 1 AndAlso Not ChkProgramarPago.Checked AndAlso CompraSaldo = TxtTotal.Text.ToDouble Then
+ BtnEliminarCompra.Visible = True
+ End If
+ End If
- 'BLOQUEA OC
- TxtOC.Enabled = False
- ImgBtnBuscarOC.Visible = False
- Tab.ActiveTabIndex = 0
-
- GvAnticiposSel.DataSource = dtnc
- GvAnticiposSel.DataBind()
-
- If dtnc IsNot Nothing AndAlso dtnc.Rows.Count > 0 Then
- LtlGvAnticiposSel.Visible = True
- End If
-
- '' VALIDA ELIMINAR COMPRA, QUE NO TENGA PAGOS CONCILIADOS
- If (UsuarioActual.TienePermisoProceso(77) OrElse UsuarioActual.TienePermisoProceso(135)) AndAlso dr("NumPagosConciliados").ToString.ToEntero = 0 Then ' Eliminar compra
-
- 'SIN VINCULACIÓN
- If UsuarioActual.TienePermisoProceso(135) Then
- If TxtOC.Text = "" AndAlso IdPoliza < 1 AndAlso CveMovimientoAlmacen < 1 AndAlso LblUsuarioCaptura.Text = UsuarioActual.Usuario AndAlso TmpDT.MAX("CveActivoFijo").ToEntero < 1 AndAlso Not ChkProgramarPago.Checked AndAlso CompraSaldo = TxtTotal.Text.ToDouble Then
+ 'ELIMINAR A FUERZAS
+ If UsuarioActual.TienePermisoProceso(77) Then
BtnEliminarCompra.Visible = True
+ If CompraSaldo <> TxtTotal.Text.ToDouble AndAlso dr("TipoDocto").ToString = "Fac" Then
+ BtnEliminarCompra.Enabled = False
+ BtnEliminarCompra.ToolTip = "La compra tiene pagos asociados, elimine los pagos primero."
+ End If
+ End If
+
+ Dim StrInventario As String = ""
+ If dr("Inventario").ToString = "1" Then
+ StrInventario = "los Movimientos de Inventario relacionados"
+ End If
+
+ If UsuarioActual.Empresa.UsaAC Then
+ BtnEliminarCompra.Attributes.Add("data-original-title", String.Format("¿Está seguro que desea eliminar la Compra, {0} y la Poliza Asociada?", StrInventario))
+ ElseIf BtnEliminarCompra.Enabled Then
+ BtnEliminarCompra.Attributes.Add("data-original-title", String.Format("¿Está seguro que desea eliminar la Compra y {0}?", StrInventario))
End If
End If
- 'ELIMINAR A FUERZAS
- If UsuarioActual.TienePermisoProceso(77) Then
- BtnEliminarCompra.Visible = True
- If CompraSaldo <> TxtTotal.Text.ToDouble AndAlso dr("TipoDocto").ToString = "Fac" Then
- BtnEliminarCompra.Enabled = False
- BtnEliminarCompra.ToolTip = "La compra tiene pagos asociados, elimine los pagos primero."
+ 'VALIDA CANCELAR COMPRA - AC
+ ValidaCancelarCompra()
+
+ 'CUANDO ESTA CANCELADA
+ If dr("CveEstatusFactura").ToString = "-2" Then
+ BtnEliminarCompra.Visible = False
+ BtnActualizar.Visible = False
+ BtnGuardar.Visible = False
+ BtnCancelarCompra.Visible = False
+
+ LblCompraEstatus.Text = "CANCELADA"
+ LblCompraEstatus.Font.Bold = True
+ LblCompraEstatus.Font.Size = 12
+ LblCompraEstatus.ForeColor = Drawing.Color.DarkRed
+ 'HplIr.Visible = False
+
+ BtnDescontabilizar.Visible = False
+ BtnEliminarPolizaMultiple.Visible = False
+
+ 'LIGA POLIZA CANCELACIÓN
+ 'HplPolizaCancelación.NavigateUrl = String.Format("/Contabilidad/RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza"))
+
+ End If
+
+ 'CUANDO FUE REFACTURADA
+ If dr("CompraRefacturada").ToString.ToEntero > 0 Then
+ BtnEliminarCompra.Visible = False
+ BtnActualizar.Visible = False
+ BtnGuardar.Visible = False
+ BtnCancelarCompra.Visible = False
+ End If
+
+ 'TIENE AMORTIZACIÓN
+ If GvAnticiposSel.Rows.Count > 0 Then
+
+ If Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then
+ BtnCancelarCompra.Visible = False
+ BtnEliminarCompra.Visible = False
End If
End If
- Dim StrInventario As String = ""
- If dr("Inventario").ToString = "1" Then
- StrInventario = "los Movimientos de Inventario relacionados"
+ 'Tiene Importacion
+
+ If dr("EsImportacion").ToString = "True" Then
+ chkImportacion.Checked = True
+ Else
+ chkImportacion.Checked = False
+ End If
+ CargaComplementosPago()
+ CargaGvBitacora()
+ InventarioMov()
+ HabilitaNCInv()
+
+ If Request("RG") IsNot Nothing Then
+ BtnRegenerarPrePolizaAlmacen_Click(Nothing, Nothing)
End If
- If UsuarioActual.Empresa.UsaAC Then
- BtnEliminarCompra.Attributes.Add("data-original-title", String.Format("¿Está seguro que desea eliminar la Compra, {0} y la Poliza Asociada?", StrInventario))
- ElseIf BtnEliminarCompra.Enabled Then
- BtnEliminarCompra.Attributes.Add("data-original-title", String.Format("¿Está seguro que desea eliminar la Compra y {0}?", StrInventario))
- End If
- End If
-
- 'VALIDA CANCELAR COMPRA - AC
- ValidaCancelarCompra()
-
- 'CUANDO ESTA CANCELADA
- If dr("CveEstatusFactura").ToString = "-2" Then
- BtnEliminarCompra.Visible = False
- BtnActualizar.Visible = False
- BtnGuardar.Visible = False
- BtnCancelarCompra.Visible = False
-
- LblCompraEstatus.Text = "CANCELADA"
- LblCompraEstatus.Font.Bold = True
- LblCompraEstatus.Font.Size = 12
- LblCompraEstatus.ForeColor = Drawing.Color.DarkRed
- 'HplIr.Visible = False
-
- BtnDescontabilizar.Visible = False
- BtnEliminarPolizaMultiple.Visible = False
-
- 'LIGA POLIZA CANCELACIÓN
- 'HplPolizaCancelación.NavigateUrl = String.Format("/Contabilidad/RegPoliza.aspx?IdPoliza={0}", dr("IdPoliza"))
-
- End If
-
- 'CUANDO FUE REFACTURADA
- If dr("CompraRefacturada").ToString.ToEntero > 0 Then
- BtnEliminarCompra.Visible = False
- BtnActualizar.Visible = False
- BtnGuardar.Visible = False
- BtnCancelarCompra.Visible = False
- End If
-
- 'TIENE AMORTIZACIÓN
- If GvAnticiposSel.Rows.Count > 0 Then
-
- If Not DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then
+ If DdlTipoComprobante.SelectedValue = "RNC" And CompraSaldo <> TxtTotal.Text.ToDecimal Then
BtnCancelarCompra.Visible = False
BtnEliminarCompra.Visible = False
End If
- End If
- 'Tiene Importacion
-
- If dr("EsImportacion").ToString = "True" Then
- chkImportacion.Checked = True
- Else
- chkImportacion.Checked = False
- End If
- CargaComplementosPago()
- CargaGvBitacora()
- InventarioMov()
- HabilitaNCInv()
-
- If Request("RG") IsNot Nothing Then
- BtnRegenerarPrePolizaAlmacen_Click(Nothing, Nothing)
- End If
-
- If DdlTipoComprobante.SelectedValue = "RNC" And CompraSaldo <> TxtTotal.Text.ToDecimal Then
- BtnCancelarCompra.Visible = False
- BtnEliminarCompra.Visible = False
- End If
-
- If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then
- If ObjCompra.GetGastoMedicos(CveCompra) Then
- DTMedicos = ObjCompra.DtResultados
- GvMedicosGastos.DataSource = ObjCompra.DtResultados
- GvMedicosGastos.DataBind()
+ If UsuarioActual.Empresa.Funcionalidad(578) = "1" Then
+ If ObjCompra.GetGastoMedicos(CveCompra) Then
+ DTMedicos = ObjCompra.DtResultados
+ GvMedicosGastos.DataSource = ObjCompra.DtResultados
+ GvMedicosGastos.DataBind()
+ End If
End If
- End If
- Else
- Alert("La compra solicitada no se encontró. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
+ Else
+ Alert("La compra solicitada no se encontró. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgAdvertencia)
End If
Else
Alert("Ocurrió un error al cargar la compra. Por favor vuelta a intentar o comuniquese con Sistemas.", TipoMensaje.MsgError)
@@ -4899,7 +4909,6 @@ Partial Class Compras_Compras
TmpDT.AcceptChanges()
If Correcto Then
-
Dim ObjCompras As New ClsCompras()
Dim ObjConta As New ClsContabilidad(ObjCompras.IniciaTransacSQL())
Dim ObjIE As New ClsBancos(ObjCompras.IniciaTransacSQL)
@@ -4913,7 +4922,6 @@ Partial Class Compras_Compras
Dim ObjCGame As New ClsCGame(ObjCompras.IniciaTransacSQL())
Dim ObjProductosServicios As New ClsProductosServicios(ObjCompras.IniciaTransacSQL())
Dim ObjGrales As New ClsGenerales(ObjCompras.IniciaTransacSQL())
-
Dim ObjContaAC As ClsContPAQi = Nothing
Dim ErrorMovtosCxP As Boolean = False
@@ -5047,7 +5055,6 @@ Partial Class Compras_Compras
UsuarioActual.Sesion("Comp-NumeroReembolso") = ""
End If
-
If Not ErrorReembolso Then
'PORCENTAJE IVA
@@ -5559,12 +5566,15 @@ Partial Class Compras_Compras
Dim TmpDr As DataRow = TmpDT.Select($"Consec = {Row("Consec").ToString}")(0)
TmpDr("CveCompraDetalle") = ObjCompras.CveCompraDetalle
- ' Si no es un movimiento de almacen va a tronar
- Try
- Dim InvDr As DataRow = DtInv.Select($"Consec = {Row("Consec").ToString}")(0)
- InvDr("CveCompraDetalle") = ObjCompras.CveCompraDetalle
- Catch ex As Exception
- End Try
+ Dim drs As DataRow() = DtInv.Select($"Consec = {Row("Consec").ToString}")
+ If drs.Count > 0 Then drs(0)("CveCompraDetalle") = ObjCompras.CveCompraDetalle
+
+ '' Si no es un movimiento de almacen va a tronar
+ 'Try
+ ' Dim InvDr As DataRow = DtInv.Select($"Consec = {Row("Consec").ToString}")(0)
+ ' InvDr("CveCompraDetalle") = ObjCompras.CveCompraDetalle
+ 'Catch ex As Exception
+ 'End Try
End If
@@ -5784,7 +5794,6 @@ Partial Class Compras_Compras
If CveMovimientoInventario <= 0 Then
ErrorMovInv = True
Else
-
Dim DtDetalle As New DataTable
Dim DtEquivalencias As DataTable
Dim CveProducto As Integer
@@ -5866,8 +5875,6 @@ Partial Class Compras_Compras
Exit For
End If
End If
-
-
End If
End If
i = i + 1
@@ -5891,7 +5898,6 @@ Partial Class Compras_Compras
End If
End If
End If
-
End If
Next
End If
@@ -6018,7 +6024,6 @@ Partial Class Compras_Compras
If Capital > 0 Or Interes > 0 Or Ambos > 0 Then
If ObjIE.GetCreditosDetalle(CveCreditoTemp, -1) Then
-
Dim CveCompraCapital As Integer = -1
Dim CveCompraInteres As Integer = -1
@@ -6251,9 +6256,6 @@ Partial Class Compras_Compras
End Select
End If
-
-
-
importeMovimiento = importePagoProv
If CveMonedaPago = 2 AndAlso DdlMoneda.SelectedValue.ToEntero = 1 Then
importeMovimiento = importeMovimiento / TipoCambioCompra
@@ -6271,7 +6273,6 @@ Partial Class Compras_Compras
CveSubProyectoDT = TmpDT(0)("CveSubProyecto").ToString.ToEntero
CveTipoGastoDT = TmpDT(0)("CveTipoGasto").ToString.ToEntero
End If
-
Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}"
Dim ImporteSubCre As Decimal = TxtSubTotal.Text.ToDecimal
@@ -6281,7 +6282,6 @@ Partial Class Compras_Compras
ErrorPrepoliza = True
End If
-
'If importeMovimiento <> 0 Then
For Each gvRowCredito As GridViewRow In GvCreditos.Rows
@@ -6540,7 +6540,6 @@ Partial Class Compras_Compras
End If
AlmacenSoloExistencia = True
End If
-
Dr.AcceptChanges()
Next
End If
@@ -6583,7 +6582,6 @@ Partial Class Compras_Compras
Dim CvePrePoliza2Almacen As Integer = ObjConta.AddPrePolizas("Compras/Registrar/Almacen", If(EsContado And CvePlantillaPrePoliza = 1, 2, CvePlantillaPrePoliza), ImporteCompra, TxtTotal.Text.ToDouble, DdlMoneda.SelectedValue.ToEntero, NowADS(), ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=FolioFijo, ReglaFolioPoliza:=ObjCompras.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa), CveTipoPoliza:=ObjConta.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa))
If CvePrePoliza2Almacen > 0 Then
-
Dim ImpPrepoliza As Decimal = 0D
Dim ImpPrepolizaMN As Decimal = 0D
@@ -6604,16 +6602,13 @@ Partial Class Compras_Compras
Else
ErrorPrepoliza = True
End If
-
Else
'SI ES GASTO CON ALMACEN NO DEBE CONTABILIZAR CONCEPTO 68
If CveMovimientoInventario > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMN.RoundSQL(2), importeMN.RoundSQL(2), 68, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CvePersonal:=CvePersonal, CveMovimientoAlmacen:=CveMovimientoInventario, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, Contabilizable:=ContabilizableAlmacen) Then
ErrorPrepoliza = True
End If
-
End If
-
'SI ES GASTO CON ALMACEN REGISTRA EL CONCEPTO 95
If DdlTipoCompra.SelectedValue = "10" Or EntradaComoGastoConAlmacen Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMN.RoundSQL(2), importeMN.RoundSQL(2), 95, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveIE:=CveIE, CvePersonal:=CvePersonal, CveMovimientoAlmacen:=CveMovimientoInventario, CveCreditoDetalle:=CveCreditoDetalle, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, Contabilizable:=False) Then
@@ -6831,7 +6826,7 @@ Partial Class Compras_Compras
If RegistraConcepto225 Then
- importeMovimiento = TmpDT.SUM(If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, "ImporteSinImpuestos", "Total"), $"ISNULL(TipoAF,0) <> 2 And ISNULL(AplicaCostoIndirecto,0) <> 1 And ISNULL(CveTipoPS,0) = 2").ToString.ToDecimal
+ importeMovimiento = TmpDT.SUM("Total") 'TmpDT.SUM(If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, "ImporteSinImpuestos", "Total"), $"ISNULL(TipoAF,0) <> 2 And ISNULL(AplicaCostoIndirecto,0) <> 1 And ISNULL(CveTipoPS,0) = 2").ToString.ToDecimal
importeMN = importeMovimiento * tipoCambioActual * Multiplicador
'no es necesario, ya se está interpretandoe l usado como producto
@@ -6851,8 +6846,6 @@ Partial Class Compras_Compras
End If
Concepto = $"{NombreProveedor} {TxtSerie.Text} - {TxtFolio.Text}"
-
-
If importeMovimiento > 0 Or TxtTotal.Text.ToDecimal = 0 Then
RegistroCuentaPuente = True
Dim ImporteTransito As Decimal = 0
@@ -6870,8 +6863,6 @@ Partial Class Compras_Compras
End If
End If
Next
-
-
Dim importeMNTemp As Decimal = 0
Dim CveCompraAmortizacion As Integer = -1
@@ -6902,7 +6893,6 @@ Partial Class Compras_Compras
End If
End If
-
'si se marca que no se va a recibir, falta validación
If Not ErrorMovInv AndAlso Not ObjCompras.UpdateEstatusAlmacen(CveCompra, 1, UsuarioActual.CveUsuario) Then
ErrorMovInv = True
@@ -6923,20 +6913,28 @@ Partial Class Compras_Compras
End If
End If
Else
-
-
Dim DiferenciaDevolucion As Decimal = If(DdlMoneda.SelectedValue.ToEntero <> 1, (importeMovimiento * TxtTC.Text.ToDecimal), importeMovimiento) - TotalRealDevolucion
If TotalRealDevolucion <> 0 Then
-
+ Dim tCveCompra As Integer = CveCompra
+ Dim tCveCompraAmortizacion As Integer = -1
If Math.Abs(DiferenciaDevolucion) > 0 Then
Dim tMovto As Boolean = False
+ Dim tConceptoDiferencia As Integer = 69
If UsuarioActual.CveEmpresa = 119 Then
tMovto = True
Else
DiferenciaDevolucion = -DiferenciaDevolucion
End If
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, tMovto, DiferenciaDevolucion, DiferenciaDevolucion, 69, Referencia, Concepto, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, DiferenciaDevolucion), TipoCambio:=tipoCambioActual, CveMovimientoAlmacen:=CveMovimientoDevolucion, Contabilizable:=SeContabiliza, CveSubProyecto:=tCveSubProyecto, CveClasificacion:=tCveClasif) Then
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then ' las devoluciones, que tengan descuento por rnc, debe de descontar del saldo de la factura aplicada
+ tConceptoDiferencia = 272
+ tCveCompraAmortizacion = tCveCompra
+ If ObjConta.GetPrePolizasDetalle(CvePrePoliza, UsuarioActual.CveEmpresa) Then
+ tCveCompra = ObjConta.DtResultados.FiltroPrimeroValor("CveCompraAmortizacion", "CveConceptoContable = 60").ToEntero 'a aplicación de la nc
+ End If
+ End If
+
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, tMovto, DiferenciaDevolucion, DiferenciaDevolucion, tConceptoDiferencia, Referencia, Concepto, CveCompra:=tCveCompra, CveCompraAmortizacion:=tCveCompraAmortizacion, CveProveedor:=CveProveedorConcepto, ImporteME:=If(tipoCambioActual = 1, 0, DiferenciaDevolucion), TipoCambio:=tipoCambioActual, CveMovimientoAlmacen:=CveMovimientoDevolucion, Contabilizable:=SeContabiliza, CveSubProyecto:=tCveSubProyecto, CveClasificacion:=tCveClasif) Then
ErrorPrepoliza = True
End If
End If
@@ -7014,8 +7012,6 @@ Partial Class Compras_Compras
End If
End If
- 'ChkNCInvNC
-
If Not RegistroCuentaPuente AndAlso Not ChkNCInvNC.Checked Then
'GASTO
If UsuarioActual.CveEmpresa = 119 Then
@@ -7040,20 +7036,7 @@ Partial Class Compras_Compras
If AgregaMercanciaInventario Then
DT = DT.FiltraParametros("ISNULL(CveTipoPS,0) <> 2")
End If
-
Dim DTDistinct As DataTable = DT.Copy
- 'If UsuarioActual.Empresa.Funcionalidad(126) = "1" Then
- ' For Each drowdis As DataRow In DTDistinct.Rows
- ' If drowdis("CveTipoGasto").ToString = "" Then
- ' drowdis("CveTipoGasto") = 0
- ' End If
- ' If drowdis("TipoGasto").ToString.Trim = "" Then
- ' drowdis("TipoGasto") = "ND"
- ' End If
- ' Next
- ' DTDistinct = DTDistinct.FiltraParametros("ISNULL(TipoAF, 0) <> 2", "", {"CveClasificacion", "Clasificacion", "SubProyecto", "CveSubProyecto", "CveTipoGasto", "TipoGasto"})
- 'Else
-
For Each drowdis As DataRow In DTDistinct.Rows
If drowdis("CveTipoGasto").ToString = "" Then
@@ -7258,7 +7241,7 @@ Partial Class Compras_Compras
End If
Next
- If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" AndAlso DdlTipoCompra.SelectedValue = "15" Then
Dim TotalSaldo As Decimal = TxtTotal.Text.ToDecimal
For Each gvRow As GridViewRow In GvRNC.Rows
@@ -10918,17 +10901,17 @@ Partial Class Compras_Compras
TmpDT.Columns.Add("DifPSSat", GetType(Integer))
-
TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
TmpDT.Columns.Add("TemporadaCuadro", GetType(String))
+ TmpDT.Columns.Add("AplicaSerie", GetType(Boolean))
TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ TmpDT.Columns.Add("Serie", GetType(String))
TmpDT.Columns.Add("Lote", GetType(String))
TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
-
TmpDTOriginal = New DataTable
TmpDTOriginal.Columns.Add("Consec", GetType(Integer))
TmpDTOriginal.Columns.Add("Cantidad", GetType(Decimal))
@@ -11038,8 +11021,10 @@ Partial Class Compras_Compras
TmpDTOriginal.Columns.Add("CveCultivoCuadroDetalle", GetType(Double))
TmpDTOriginal.Columns.Add("TemporadaCuadro", GetType(String))
+ TmpDTOriginal.Columns.Add("AplicaSerie", GetType(Boolean))
TmpDTOriginal.Columns.Add("AplicaLote", GetType(Boolean))
TmpDTOriginal.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ TmpDTOriginal.Columns.Add("Serie", GetType(String))
TmpDTOriginal.Columns.Add("Lote", GetType(String))
TmpDTOriginal.Columns.Add("FechaCaducidad", GetType(Date))
@@ -13876,9 +13861,14 @@ Partial Class Compras_Compras
'si no esta vinculado a nc simplemente me lo brinco
If realizadevolucion Then
- 'si el subtotal es iwal a la nc lo guardo si no marco error
- If subtotal > subtotaldevolucion - 1 AndAlso subtotal < subtotaldevolucion + 1 Then
-
+ 'si el subtotal es igual a la nc lo guardo si no marco error
+ Dim tTolerancia As Decimal = 0
+ Dim tAjustaUltimo As Boolean = True
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then
+ tTolerancia = Math.Abs(TxtSubTotal2.Text.ToDecimal - subtotaldevolucion)
+ tAjustaUltimo = False
+ End If
+ If Math.Abs(subtotal - subtotaldevolucion) <= tTolerancia Then
CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacen, 13, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCompra, -1, -1, -1, Modulo:="Comp/G1")
If CveMovimientoEntrada <= 0 Then
ErrorMovInv = True
@@ -13894,17 +13884,16 @@ Partial Class Compras_Compras
PU = Dr.DataKey("PU").ToString.ToDecimal
PUExtranjero = Dr.DataKey("PUExtranjero").ToString.ToDecimal
ii += 1
- If CantidadRenglones = ii Then
+ If CantidadRenglones = ii AndAlso tAjustaUltimo Then
Dim dif As Decimal = subtotal - Acumulado
- PU = (((Dr.FCTextBox("TxtCantidad").Text.ToDecimal * Dr.DataKey("PU").ToString.ToDecimal)) + dif) / Dr.FCTextBox("TxtCantidad").Text.ToDecimal
+ PU = (((Dr.FCTextBox("TxtCantidad").Text.ToDecimal * Dr.DataKey("PU").ToDecimal)) + dif) / Dr.FCTextBox("TxtCantidad").Text.ToDecimal
End If
- If ObjInventario.GetExistenciasProducto(Dr.DataKey("CvePS").ToString.ToEntero, Dr.DataKey("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, CveAlmacen,
- FechaMovto:=TxtFecha.Text.ToDateTime.AddHours(NowADS().Hour).AddMinutes(NowADS().Minute).AddSeconds(NowADS().Second).ToString("yyyy/MM/dd HH:mm")) Then
-
+ Dim tFechaExistencia As DateTime = TxtFecha.Text.ToDateTime.AddHours(NowADS().Hour).AddMinutes(NowADS().Minute).AddSeconds(NowADS().Second)
+ If ObjInventario.GetExistenciasProducto(Dr.DataKey("CvePS").ToEntero, Dr.DataKey("CveUM").ToEntero, UsuarioActual.CveEmpresa, CveAlmacen,
+ FechaMovto:=tFechaExistencia.ToString("yyyy/MM/dd HH:mm")) Then
Dim Existencia As Decimal = ObjInventario.DtResultados.FiltroPrimeroValor("ExistenciaFinal", String.Format("CveAlmacen = {0}", CveAlmacen)).ToDecimal
-
- If Dr.FCTextBox("TxtCantidad").Text.ToDouble > Existencia Then
- Alert($"No hay existencia suficiente del producto {Dr.DataKey("PS").ToString} en la fecha:{TxtFecha.Text}", TipoMensaje.MsgAdvertencia)
+ If Dr.FCTextBox("TxtCantidad").Text.ToDecimal > Existencia Then
+ Alert($"No hay existencia suficiente del producto: - {Dr.DataKey("CodigoPS")} en la fecha: {tFechaExistencia.ToString("yyyy/MM/dd HH:mm")}", TipoMensaje.MsgAdvertencia)
ErrorMovInv = True
Exit For
End If
@@ -13930,11 +13919,11 @@ Partial Class Compras_Compras
End If
Else
ErrorMovInv = True
- Alert("El Total de la NC debe ser igual al total de la devolucion", TipoMensaje.MsgAdvertencia)
+ Alert("El Total de la NC debe ser igual al total de la devolucion", TipoMensaje.MsgAdvertencia)
+ End If
End If
- End If
- If ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa, -1) Then
+ If ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa, -1) Then
For Each drow As DataRow In ObjInventario.DtResultados.Rows
TotalSumaPU = TotalSumaPU + drow("Total").ToString.ToDecimal
@@ -13952,6 +13941,7 @@ Partial Class Compras_Compras
Private Sub cargaddldevoluciones(CveProveedor As Integer, SubTotal As Double)
Dim objcompras As New ClsCompras()
+
If objcompras.GetCompraParaDevolucion(CveProveedor, UsuarioActual.CveEmpresa, SubTotal) Then
DDLDevolucion.Items.Clear()
Dim dtt As DataTable = objcompras.DtResultados
@@ -13969,6 +13959,9 @@ Partial Class Compras_Compras
End Sub
Protected Sub DDLDevolucion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DDLDevolucion.SelectedIndexChanged
+
+ FechaMovtoDev = MinFecha
+
If DdlTipoComprobante.SelectedValue.Contiene("DEV") Then
DivAlmacenDev.Visible = True
End If
@@ -13976,6 +13969,7 @@ Partial Class Compras_Compras
Dim objcompras As New ClsCompras()
If objcompras.GetCompraDetalleAlmacen(UsuarioActual.CveEmpresa, DDLDevolucion.SelectedValue.ToEntero) Then
GVDevolucion.DataSource = objcompras.DtResultados
+ FechaMovtoDev = objcompras.DtResultados.FiltroPrimeroValor("FechaMovto").ToDate.ToString("dd/MM/yyyy").ToDate
End If
objcompras.Dispose()
GVDevolucion.DataBind()
@@ -13986,24 +13980,19 @@ Partial Class Compras_Compras
End If
Next
DdlAlmacenDevolucion.SelectedValueExist(CveAlmacen)
-
UPDevolucion.Update()
+
+ If EsGrupoDiaz AndAlso FechaMovtoDev <> MinFecha AndAlso (FechaMovtoDev >= TxtFecha.Text.ToDate) Then
+ Alert("La fecha de la devolución se cambiará a una fecha posterior al ingreso.", TipoMensaje.ToastAdventencia)
+ End If
+
End Sub
- 'Protected Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
- ' cargaddldevoluciones(CveProveedor, TextBox1.Text.ToDouble)
- 'End Sub
- 'Protected Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
- ' Dim ObjInventario As New ClsInventarios()
- ' Dim cvecompra As Integer = 5221
- ' Dim subtotal As Double = TextBox1.Text.ToDouble
- ' guardardevolucion(ObjInventario, cvecompra, subtotal, NowADS().ToDate)
- 'End Sub
+
Protected Sub BtnVinculaDevolucion_Click(sender As Object, e As EventArgs)
Try
Dim subtotaldevolucion As Decimal = 0
Dim realizadevolucion As Boolean = False
-
'Calculo los subtotales para comparar con la NC
Dim cantidad As Decimal = 0D
@@ -14018,11 +14007,20 @@ Partial Class Compras_Compras
'si no esta vinculado a nc simplemente me lo brinco
If realizadevolucion Then
- 'si el subtotal es iwal a la nc lo guardo si no marco error
- If TxtSubTotal2.Text.ToDouble > subtotaldevolucion - 1 AndAlso TxtSubTotal2.Text.ToDouble < subtotaldevolucion + 1 Then
-
+ 'si el subtotal es igual a la nc lo guardo si no marco error
+ 'si tiene FNC574, se ajustará la diferencia a un concepto como RNC
+ Dim tTolerancia As Decimal = 1
+ 'si tiene la funcionalidad ajustará en un producto la diferencia
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then tTolerancia = Math.Abs(TxtSubTotal2.Text.ToDecimal - subtotaldevolucion)
+ If Math.Abs(TxtSubTotal2.Text.ToDecimal - subtotaldevolucion) <= tTolerancia Then
VinculaDevolucion()
+ If EsGrupoDiaz AndAlso FechaMovtoDev <> MinFecha AndAlso (FechaMovtoDev >= TxtFecha.Text.ToDate) Then
+ TxtFecha.Text = FechaMovtoDev.AddDays(1).ToString("dd/MM/yyyy")
+ Alert("La fecha de la devolución se cambiará a una fecha posterior al ingreso.", TipoMensaje.ToastAdventencia)
+ UpParametros.Update()
+ End If
+
Else
Alert("El Total de la NC debe ser igual al total de la devolucion", TipoMensaje.MsgAdvertencia)
End If
@@ -14033,7 +14031,6 @@ Partial Class Compras_Compras
OnError("Ocurrió un error al realizar la vinculación", ex)
End Try
-
End Sub
Private Sub VinculaDevolucion()
@@ -14053,15 +14050,17 @@ Partial Class Compras_Compras
Dim IVAPorcentajeCompra As Decimal = Math.Round((IVACompra / SubTotalCompra), 2)
Dim Contador As Integer = 0
Dim Consec As Integer = 0
-
+ Dim tAjusteUltimo As Boolean = True
For Each gvr As GridViewRow In GVDevolucion.Rows
If gvr.FCTextBox("TxtCantidad").Text.ToDecimal > 0 Then
Contador += 1
End If
Next
- Dim CveSubProyectoContrato As String = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenDevolucion.SelectedValue.ToEntero).FiltroPrimeroValor("CveSubProyecto")
- Dim SubProyecto As String = GlobalDTSubProyectos(UsuarioActual.CveEmpresa, CveSubProyecto:=CveSubProyectoContrato.ToEntero).FiltroPrimeroValor("SubProyecto")
+ Dim Total As Decimal = 0
+ Dim CveSubProyectoDev As String = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenDevolucion.SelectedValue.ToEntero).FiltroPrimeroValor("CveSubProyecto")
+ Dim SubProyecto As String = GlobalDTSubProyectos(UsuarioActual.CveEmpresa, CveSubProyecto:=CveSubProyectoDev.ToEntero).FiltroPrimeroValor("SubProyecto")
'Iteramos el GridView de la OC
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then tAjusteUltimo = False
For Each gvr As GridViewRow In GVDevolucion.Rows
If gvr.FCTextBox("TxtCantidad").Text.ToDecimal > 0 Then
@@ -14073,22 +14072,20 @@ Partial Class Compras_Compras
Dim UM As String = gvr.DataKey("UM").ToString
Dim CveClasificacion As Integer = gvr.DataKey("CveClasificacion").ToString.ToEntero
Dim Clasificacion As String = gvr.DataKey("Clasificacion").ToString
- Dim PS As String = gvr.DataKey("PS").ToString
+ Dim PS As String = gvr.DataKey("CodigoPS").ToString
Dim CveTipoPS As Integer = gvr.DataKey("CveTipoPS").ToString.ToEntero
-
Dim CveProyecto As String = "-1"
-
Dim Proyecto As String = "Seleccione"
Dim Obs As String = ""
Dim PU As Decimal = gvr.DataKey("PU").ToString.ToDecimal
- Dim Total As Decimal = gvr.FCTextBox("TxtTotalDevolucion").Text.ToDecimal
- Dim IVA As Decimal = IVAPorcentajeCompra 'Math.Round(Total * IVAPorcentajeCompra, 2)
+ Total = gvr.FCTextBox("TxtTotalDevolucion").Text.ToDecimal
+ Dim IVA As Decimal = IVAPorcentajeCompra 'Math.Round(Total * IVAPorcentajeCompra, 2)
Dim Descuento As Decimal = 0
Acumulado += (PU * Cantidad)
Consec += 1
- If Consec = Contador Then 'SubTotalCompra < Acumulado Then
+ If Consec = Contador AndAlso tAjusteUltimo Then 'SubTotalCompra < Acumulado Then
'ajusta el valor
Dim dif As Decimal = SubTotalCompra - Acumulado
If dif <> 0 Then
@@ -14096,10 +14093,25 @@ Partial Class Compras_Compras
Total = Cantidad * PU
End If
End If
- AddPS(Cantidad, CveUM, UM, CveClasificacion, Clasificacion, CvePS, PS, CveTipoPS, CveSubProyectoContrato, SubProyecto, Proyecto, CveProyecto, Obs, PU, Total, IVA, 0, 0, 0, 0, Descuento, -1, False)
+ AddPS(Cantidad, CveUM, UM, CveClasificacion, Clasificacion, CvePS, PS, CveTipoPS, CveSubProyectoDev, SubProyecto, Proyecto, CveProyecto, Obs, PU, Total, IVAPorcentajeCompra, 0, 0, 0, 0, Descuento, -1, False, CveAlmacen:=DdlAlmacenDevolucion.SelectedValue.ToEntero)
End If
Next
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then
+ Dim CvePSRNC As Integer = UsuarioActual.Empresa.Funcionalidad(580).ToEntero
+ If CvePSRNC = 0 Then
+ Alert("producto utilizado para diferencia no definido.")
+ Exit Sub
+ End If
+ Dim PSRow As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePSRNC).FiltroPrimero("")
+ Dim PS As String = PSRow("PSCodigo").ToString
+ Dim tDif As Decimal = TxtSubTotal2.Text.ToDecimal - Total
+
+ AddPS(1, PSRow("CveUnidadMedida").ToString.ToEntero, PSRow("UnidadMedida").ToString,
+ PSRow("CveClasificacion").ToString.ToEntero, PSRow("Clasificacion").ToString, CvePSRNC, PS, 1, CveSubProyectoDev.ToString, SubProyecto, "", "-1", "", tDif, tDif, IVAPorcentajeCompra, 0, 0, 0, 0, 0)
+
+ End If
+
AddPS2()
BtnGuardar.Enabled = True
@@ -14115,7 +14127,6 @@ Partial Class Compras_Compras
ImgClasificacion.Visible = False
LbAgregar.Visible = False
- UpPSS.Update()
'CargaGvInv()
@@ -14137,7 +14148,6 @@ Partial Class Compras_Compras
End If
GvOC1.DataBind()
- ' TmpDT = OrdenarTablas("CvePS", DTOCTemp, TmpDT)
GvOC2.DataSource = TmpDT
GvOC2.DataBind()
@@ -14491,19 +14501,13 @@ Partial Class Compras_Compras
End If
End If
- If Not TmpDT.Columns.Contains("AplicaLote") Then
- TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
- End If
- If Not TmpDT.Columns.Contains("AplicaCaducidad") Then
- TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
- End If
- If Not TmpDT.Columns.Contains("Lote") Then
- TmpDT.Columns.Add("Lote", GetType(String))
- End If
- If Not TmpDT.Columns.Contains("FechaCaducidad") Then
- TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
- End If
+ If Not TmpDT.Columns.Contains("AplicaLote") Then TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
+ If Not TmpDT.Columns.Contains("AplicaCaducidad") Then TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+
+ If Not TmpDT.Columns.Contains("Lote") Then TmpDT.Columns.Add("Lote", GetType(String))
+
+ If Not TmpDT.Columns.Contains("FechaCaducidad") Then TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
If ObjInventario.GetInv_ComprasMov(CveCompra, UsuarioActual.CveEmpresa) Then
If ObjInventario.DtResultados.Rows.Count > 0 Then
@@ -16721,7 +16725,6 @@ Partial Class Compras_Compras
End If
End If
-
UPCondicionesPago.Update()
End Sub
@@ -18169,7 +18172,7 @@ Partial Class Compras_Compras
Case "A" 'ADD
Dim SATClavePS As Integer = -1
- Dim PSRow As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPS.SelectedValue.ToEntero).FiltroPrimero("")
+ Dim PSRow As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=DdlPS.SelectedValue.ToEntero).FiltroPrimero("")
If PSRow IsNot Nothing Then
SATClavePS = PSRow("SATClavePS").ToString.ToEntero
End If
@@ -18258,13 +18261,11 @@ Partial Class Compras_Compras
Optional PSCodigo As String = "-", Optional PSDescripcion As String = "-", Optional CantidadF As Double = -1, Optional EntregaDirecta As Integer = -1, Optional OtrosGastos As Decimal = 0,
Optional CveSATPS As Integer = -1, Optional CargaXml As Boolean = False, Optional CveTipoGasto As Integer = -1, Optional TipoGasto As String = "", Optional PorcentajeIVA As Decimal = 0,
Optional PorcentajeIEPS As Decimal = 0, Optional PorcentajeRetIVA As Decimal = 0, Optional PorcentajeRetISR As Decimal = 0, Optional NoDeducible As Boolean = False, Optional CveContratoDetalle As Integer = -1, Optional CveCultivoCuadroDetalle As Integer = -1,
- Optional CveSATPSActualizado As Boolean = False, Optional TemporadaCuadro As String = "", Optional CodigoPS As String = "") As Integer
+ Optional CveSATPSActualizado As Boolean = False, Optional TemporadaCuadro As String = "", Optional CodigoPS As String = "", Optional CveAlmacen As Integer = -1) As Integer
Dim Row As DataRow = Nothing
- If Not TmpDT.Columns.Contains("CodigoPS") Then
- TmpDT.Columns.Add("CodigoPS")
- End If
+ If Not TmpDT.Columns.Contains("CodigoPS") Then TmpDT.Columns.Add("CodigoPS")
Row = TmpDT.NewRow()
Dim Retorno As Integer = 0
@@ -18293,6 +18294,12 @@ Partial Class Compras_Compras
If Not DdlTipoCompra.SelectedValue.Contiene("12") AndAlso DrPS("AplicaSerie").ToString = "True" Then
Row("CveMetodoInventario") = "1"
End If
+ If (DrPS("CvePSCargo").ToString <> "") Then 'si es un producto de usado. que se registre contablemente como alamcen(como producto)
+ CveTipoPS = 2
+ End If
+ Row("AplicaSerie") = DrPS("AplicaSerie")
+ Row("AplicaLote") = DrPS("AplicaLote")
+ Row("AplicaCaducidad") = DrPS("AplicaCaducidad")
Else
Row("PSCodigo") = PSCodigo
Row("CveMetodoInventario") = 0
@@ -18306,36 +18313,17 @@ Partial Class Compras_Compras
If (Version = "3.3" Or Version = "4.0") And CveSATPS > 0 Then
Dim DrPSSAT As DataRow = Nothing
- If CargaXml Then
- DrPSSAT = GlobalDTPSATPS("-1", CveSATPS.ToString).FiltroPrimero("")
- 'If GlobalDTPSATPS().FiltraParametros(String.Format("SATClavePS={0}", CveSATPS)).Rows.Count > 0 Then
- ' DrPSSAT = GlobalDTPSATPS().FiltraParametros(String.Format("SATClavePS={0}", CveSATPS)).Rows(0)
- 'End If
- Else
- DrPSSAT = GlobalDTPSATPS("-1", CveSATPS.ToString).FiltroPrimero("") '= GlobalDTPSATPS().FiltroPrimero(String.Format("SATClavePS={0}", CveSATPS))
- 'If GlobalDTPSATPS().FiltraParametros(String.Format("CveSATPS={0}", CveSATPS)).Rows.Count > 0 Then
- ' DrPSSAT = GlobalDTPSATPS().FiltraParametros(String.Format("CveSATPS={0}", CveSATPS)).Rows(0)
- 'End If
- End If
+ DrPSSAT = GlobalDTPSATPS("-1", CveSATPS.ToString).FiltroPrimero("")
If DrPSSAT IsNot Nothing Then
Row("SATClaveProductoServicio") = DrPSSAT("SATClaveProductoServicio").ToString
Row("CveSATPS") = DrPSSAT("CveSATPS").ToString
If CveSATPSActualizado Then
Row("CveSATPSActualizado") = 1
-
Else
Row("CveSATPSActualizado") = 0
-
End If
End If
End If
- Try
- If (DrPS("CvePSCargo").ToString <> "") Then 'si es un producto de usado. que se registre contablemente como alamcen(como producto)
- CveTipoPS = 2
- End If
- Catch ex As Exception
-
- End Try
Dim DecimalesPermitidos As Integer = 6
@@ -18427,6 +18415,7 @@ Partial Class Compras_Compras
Row("CveCultivoCuadroDetalle") = CveCultivoCuadroDetalle
Row("TemporadaCuadro") = TemporadaCuadro
+ If CveAlmacen > 0 Then Row("CveAlmacen") = CveAlmacen
If UsuarioActual.Empresa.UsaAC Then
Row("CveProgramaOperativo") = DdlACGeneral1.SelectedValue.ToEntero
@@ -19430,7 +19419,7 @@ Partial Class Compras_Compras
For Each Dr As DataRow In Dt.Rows
Dim Total As Decimal = ObjInventario.DtResultados.FiltraParametros($"CveClasificacion = {Dr("CveClasificacion")}").SUM("Total").RoundSQL() ' * (If(EsCancelacion, -1, 1))
- If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, Not TipoMovtoAlmacen, Total, Total, 95, LblFolio.Text, Obs, 0, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=Dr("CveClasificacion").ToString.ToEntero, CveSubProyecto:=tCveSubProyecto, Contabilizable:=EsContabilizable) Then
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaSalida, Not TipoMovtoAlmacen, Total, Total, 259, LblFolio.Text, Obs, 0, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=Dr("CveClasificacion").ToString.ToEntero, CveSubProyecto:=tCveSubProyecto, Contabilizable:=EsContabilizable) Then
Respuesta = False
End If
Next
@@ -20749,15 +20738,23 @@ Partial Class Compras_Compras
End If
End If
- If DdlTipoCompra.SelectedValue = "15" Then 'Remisión de nota de crédito
+ If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then 'cuando es emp DIAZ
- If DdlTipoComprobante.SelectedValue = "NC" Then
- CargaGVRemisionNotaCredito()
- HLAplicaNCFact.Visible = False
+ If DdlTipoCompra.SelectedValue = "15" Then 'Remisión de nota de crédito
+
+ If DdlTipoComprobante.SelectedValue = "NC" Then
+ CargaGVRemisionNotaCredito()
+ HLAplicaNCFact.Visible = False
+ Else
+ Alert("Para elegir Remisión de Nota de Crédito el tipo de documento debe de ser Nota de Crédito.", TipoMensaje.MsgAdvertencia)
+ 'DdlRemisionNotaCredito.SelectedValueExist(-1)
+ DdlTipoCompra.SelectedValueExist(-1)
+ End If
Else
- Alert("Para elegir Remisión de Nota de Crédito el tipo de documento debe de ser Nota de Crédito.", TipoMensaje.MsgAdvertencia)
- 'DdlRemisionNotaCredito.SelectedValueExist(-1)
- DdlTipoCompra.SelectedValueExist(-1)
+ 'SE ACTIVA DE NUEVO PARA LA SELECCIÓN
+ HLAplicaNCFact.Visible = True
+ InicializaAplicaNCFact()
+ If CveFactura > 0 Then NCSeleccionFacturasRelacionadas(UUIDSList)
End If
End If
@@ -22038,12 +22035,12 @@ Partial Class Compras_Compras
Dim respuesta As Boolean = True
Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
- Dim CvePS_RNC As Integer = UsuarioActual.Empresa.Funcionalidad(580).ToEntero
- Dim PSRow As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePS_RNC).FiltroPrimero("")
+ Dim CvePSRNC As Integer = UsuarioActual.Empresa.Funcionalidad(580).ToEntero
+ Dim PSRow As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CvePS:=CvePSRNC).FiltroPrimero("")
Dim CveSubProyectoPrincipal As Integer = AsignarSubProyectoPrincipal()
Dim SubProyecto As String = ""
- If Not CvePS_RNC > 0 Then
+ If Not CvePSRNC > 0 Then
Alert("No esta definido el producto de Remisión de Nota de Crédito.", TipoMensaje.MsgAdvertencia)
Return False
End If
@@ -22056,7 +22053,6 @@ Partial Class Compras_Compras
SubProyecto = GlobalDTSubProyectos(UsuarioActual.CveEmpresa, CveSubProyecto:=CveSubProyectoPrincipal).FiltroPrimeroValor("SubProyecto")
If PSRow IsNot Nothing Then
-
Dim CompraRNC As New ClsCompraManagerCompras(UsuarioActual) With {
.TipoDocto = "RNC",
.CveProveedor = CveProveedor,
@@ -22090,7 +22086,7 @@ Partial Class Compras_Compras
Dim IVARNC As Decimal = (Importe * PorcentajeIVA).RoundSQL(2)
Dim TotalRNC As Decimal = If(RedondearSaldado, (Importe + IVARNC).RoundSQL(2), (Importe + IVARNC))
- CompraRNC.ConfiguraRegistroRapido(CvePS_RNC, CveUM, UM, CveClasificacion, Clasificacion, PS, CveSubProyectoPrincipal, SubProyecto, ImporteRNC, IVARNC, TotalRNC, PorcentajeIVA, TipoCambio:=TipoCambioOriginal)
+ CompraRNC.ConfiguraRegistroRapido(CvePSRNC, CveUM, UM, CveClasificacion, Clasificacion, PS, CveSubProyectoPrincipal, SubProyecto, ImporteRNC, IVARNC, TotalRNC, PorcentajeIVA, TipoCambio:=TipoCambioOriginal)
If CompraRNC.AddCompra(sqltransaccion) Then
Dim tImporteRNC = TotalRNC ' le agrego el importe del iva
Dim Pago As New CompraPago
@@ -22619,7 +22615,7 @@ Partial Class Compras_Compras
nRow("SubTotal") = subtotalParcial.RoundSQL(4)
nRow("Total") = totalParcialDeseado.RoundSQL(4)
- nRow("PorcentajeIVA") = (ivaParcial / subtotalParcial).RoundSQL(4)
+ nRow("PorcentajeIVA") = (ivaParcial / subtotalParcial).RoundSQL(2)
nRow("Porcentaje") = ((totalParcialDeseado.RoundSQL(4) * 100) / TotalOriginal).RoundSQL(2)
nRow("RetIVAPorcentaje") = (retIvaParcial / subtotalParcial).RoundSQL(4)
@@ -22850,7 +22846,7 @@ Public Class ClsCompraManagerCompras
Public Property CveMetodoPago As Integer
Public Property MetodoPago As String
- Public Property DocumentosRelacionadosUUIDSList As List(Of String) = New List(Of String)
+ Public Property DocumentosRelacionadosUUIDSList As HashSet(Of String) = New HashSet(Of String)
Public ReadOnly Property DocumentosRelacionadosUUIDSString As String
Get
Return GeneraStringDoctosRelacionados()
@@ -23069,7 +23065,7 @@ Public Class ClsCompraManagerCompras
If TipoComprobante.ToUpper = "E" AndAlso (CFDIVersion = EnumCFDIVersion.v33 OrElse CFDIVersion = EnumCFDIVersion.v40) Then
Dim UUIDS As String = ""
- Dim UUIDSLista As New List(Of String)
+ Dim UUIDSLista As New HashSet(Of String)
Dim nodeCFDIRelacionados As XmlNode
nodeCFDIRelacionados = XMLDoc.SelectSingleNode(String.Format("//{0}:CfdiRelacionados", Prefijo), namespaces)
@@ -23222,6 +23218,8 @@ Public Class ClsCompraManagerCompras
If Not TmpDT.Columns.Contains("AplicaCaducidad") Then TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ If Not TmpDT.Columns.Contains("AplicaSerie") Then TmpDT.Columns.Add("AplicaSerie", GetType(Boolean))
+
If Not TmpDT.Columns.Contains("Lote") Then TmpDT.Columns.Add("Lote", GetType(String))
If Not TmpDT.Columns.Contains("FechaCaducidad") Then TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
@@ -23454,7 +23452,6 @@ Public Class ClsCompraManagerCompras
TmpDT.Columns.Add("SATClaveUnidadMedida", GetType(String))
TmpDT.Columns.Add("CveSATPSActualizado", GetType(Integer))
-
'Tipo de Gasto
TmpDT.Columns.Add("CveTipoGasto", GetType(Integer))
TmpDT.Columns.Add("TipoGasto", GetType(String))
@@ -23462,26 +23459,23 @@ Public Class ClsCompraManagerCompras
TmpDT.Columns.Add("ImporteSinImpuestos", GetType(Double))
TmpDT.Columns.Add("ImporteConImpuestos", GetType(Double))
TmpDT.Columns.Add("NoDeducible", GetType(Boolean))
-
TmpDT.Columns.Add("DifPSSat", GetType(Integer))
-
TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
TmpDT.Columns.Add("CveCultivoCuadroDetalle", GetType(Integer))
TmpDT.Columns.Add("TemporadaCuadro", GetType(String))
TmpDT.Columns.Add("NoIdentificacion", GetType(String))
-
+ TmpDT.Columns.Add("AplicaSerie", GetType(Boolean))
TmpDT.Columns.Add("AplicaLote", GetType(Boolean))
TmpDT.Columns.Add("AplicaCaducidad", GetType(Boolean))
+ TmpDT.Columns.Add("Serie", GetType(String))
TmpDT.Columns.Add("Lote", GetType(String))
TmpDT.Columns.Add("FechaCaducidad", GetType(Date))
-
TmpDT.AcceptChanges()
-
End Sub
Private Function AjustesValidacion() As Boolean
Dim respuesta As Boolean = True
diff --git a/Compras/PopUpVerFactura.aspx.vb b/Compras/PopUpVerFactura.aspx.vb
index cc779f1fa..a4e7e7422 100644
--- a/Compras/PopUpVerFactura.aspx.vb
+++ b/Compras/PopUpVerFactura.aspx.vb
@@ -1395,7 +1395,9 @@ Partial Class PopUpVerFactura
If UrlParametros("OP").ToString = "CARPOTIMBRE" Then
If UrlParametros("CVETIMBRE") IsNot Nothing AndAlso UrlParametros("CVETIMBRE").ToString.ToEntero > 0 Then
- ImprimeFormatoCartaPorteTimbrado(UrlParametros("CVETIMBRE").ToString.ToEntero)
+ Dim imprmirNom043 As Boolean = If(UsuarioActual.CveEmpresa.Contiene(119), True, False)
+ ImprimeFormatoCartaPorteTimbrado(UrlParametros("CVETIMBRE").ToString.ToEntero, imprmirNom043:=imprmirNom043)
+ 'ImprimeFormatoCartaPorteTimbrado(UrlParametros("CVETIMBRE").ToString.ToEntero)
End If
End If
@@ -4256,12 +4258,14 @@ Partial Class PopUpVerFactura
ObjCompra.Dispose()
If Not Archivo.Exists Then
-
params.Add(New ReportParameter("LogoPath", RutaImagenLogo))
-
ImprimirPDF(String.Format("Empresas/Grales/Formatos/DevolucionProveedor.rdlc", UsuarioActual.Empresa.Ruta), DtMovimientos, params, String.Format("Devolucion Proveedor - {0}", Folio), RDSName:="DsInventarios")
Else
- ImprimirPDF(String.Format("{0}Formatos\DevolucionProveedor.rdlc", UsuarioActual.Empresa.Ruta), DtMovimientos, params, String.Format("Devolucion Proveedor - {0}", Folio), RDSName:="DsInventarios")
+ If UsuarioActual.CveEmpresa.Contiene(189) Then
+ ImprimirPDF(String.Format("{0}Formatos\DevolucionProveedor.rdlc", UsuarioActual.Empresa.Ruta), DtMovimientos, params, String.Format("Devolucion Proveedor - {0}", Folio), RDSName:="DsInventarios", DtDatos2:=DTPrePoliza, RDSName2:="DsPrePoliza")
+ Else
+ ImprimirPDF(String.Format("{0}Formatos\DevolucionProveedor.rdlc", UsuarioActual.Empresa.Ruta), DtMovimientos, params, String.Format("Devolucion Proveedor - {0}", Folio), RDSName:="DsInventarios")
+ End If
End If
'ImprimirPDF(UsuarioActual.Empresa.Ruta & "Formatos/DevolucionProveedor.rdlc", DtMovimientos, params, String.Format("Devolucion Proveedor - {0}", Folio), RDSName:="DsInventarios")
diff --git a/Compras/eFacturas.aspx b/Compras/eFacturas.aspx
index 0e1e68e12..577e6b336 100644
--- a/Compras/eFacturas.aspx
+++ b/Compras/eFacturas.aspx
@@ -33,6 +33,10 @@
.ajax__tab_xp .ajax__tab_body {
font-size: 12px !important;
}
+
+ .addropzone {
+ min-height: 170px;
+ }
@@ -268,7 +272,7 @@
Caja ChicaViáticos
- Deudores
+ <%--Deudores--%>
@@ -933,61 +937,91 @@
- <%--
+
-
-
-
-
--%>
+
+
+
+
+ Cargar Excel:
+
+
+
+
+
+
+
+
+
+
+
+ Formato
+
+
+ Cargar
+
+
+
+
+
+
+
+
-
-
-
-
-
- <%--
- --%>
-
- :
-
-
-
-
-
-
-
-
-
-
- Porcentaje:
-
-
-
-
-
-
-
-
-
-
- Porcentaje:
-
-
-
-
-
- % Restante:
-
-
+
+
@@ -1018,6 +1052,9 @@
+
+
+
@@ -1565,9 +1604,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/Compras/eFacturas.aspx.vb b/Compras/eFacturas.aspx.vb
index d1eb38b6a..dcd6b6243 100644
--- a/Compras/eFacturas.aspx.vb
+++ b/Compras/eFacturas.aspx.vb
@@ -26,6 +26,7 @@ Imports SharpCompress.Common
Imports SharpCompress.Reader
Imports Telerik.Web.UI
Imports System.Data.SqlClient
+Imports Stimulsoft.Base.Serializing
'Imports Telerik.Web.UI
@@ -5586,13 +5587,13 @@ Partial Class Compras_eFacturas
If DdlSubProyectoProrrateoGasolina.SelectedValue.ToEntero > 0 Then
- AgregarProrrateoGasolina(DdlSubProyectoProrrateoGasolina.SelectedValue.ToEntero, DdlSubProyectoProrrateoGasolina.SelectedItem.Text, CvePs, CveUM, UM, CveClasificacion, Clasificacion)
+ AgregarProrrateoGasolina(DdlSubProyectoProrrateoGasolina.SelectedValue.ToEntero, DdlSubProyectoProrrateoGasolina.SelectedItem.Text, CvePs, CveUM, UM, CveClasificacion, Clasificacion, TxtPrecioProrrateoGasolina.Text.ToDecimal)
Else
DTProrrateoTmp.Rows.Clear()
For Each item As ListItem In DdlSubProyectoProrrateoGasolina.Items
If item.Value.ToEntero > 0 Then
- AgregarProrrateoGasolina(item.Value.ToEntero, item.Text, CvePs, CveUM, UM, CveClasificacion, Clasificacion)
+ AgregarProrrateoGasolina(item.Value.ToEntero, item.Text, CvePs, CveUM, UM, CveClasificacion, Clasificacion, TxtPrecioProrrateoGasolina.Text.ToDecimal)
End If
Next
End If
@@ -5604,7 +5605,7 @@ Partial Class Compras_eFacturas
End Sub
- Private Sub AgregarProrrateoGasolina(CveSubProyecto As Integer, SubProyecto As String, CvePS As Integer, CveUM As Integer, UM As String, CveClasificacion As Integer, Clasificacion As String)
+ Private Sub AgregarProrrateoGasolina(CveSubProyecto As Integer, SubProyecto As String, CvePS As Integer, CveUM As Integer, UM As String, CveClasificacion As Integer, Clasificacion As String, Porcentaje As Decimal)
''' este prco3eso compratira todo esto se debe de llevar a la genracion de la factura por porcentaje
@@ -5614,7 +5615,7 @@ Partial Class Compras_eFacturas
Dim RetIVAOriginal As Decimal = 0D 'TxtRetIVA.Text.ToDecimal
Dim TotalOriginal As Decimal = 1
- Dim totalParcialDeseado As Decimal = TxtPrecioProrrateoGasolina.Text.ToDecimal
+ Dim totalParcialDeseado As Decimal = Porcentaje
Dim PorcentajeCalculado As Decimal = totalParcialDeseado / TotalOriginal
Dim subtotalParcial As Decimal = SubTotalOriginal * PorcentajeCalculado
@@ -5642,7 +5643,7 @@ Partial Class Compras_eFacturas
nRow("Total") = totalParcialDeseado.RoundSQL(4)
nRow("PorcentajeIVA") = (ivaParcial / subtotalParcial).RoundSQL(4)
- nRow("Porcentaje") = TxtPrecioProrrateoGasolina.Text.ToDecimal '((totalParcialDeseado.RoundSQL(4) * 100) / TotalOriginal).RoundSQL(2)
+ nRow("Porcentaje") = Porcentaje '((totalParcialDeseado.RoundSQL(4) * 100) / TotalOriginal).RoundSQL(2)
'nRow("RetIVAPorcentaje") = (retIvaParcial / subtotalParcial).RoundSQL(4)
'nRow("RetISRPorcentaje") = (retIsrParcial / subtotalParcial).RoundSQL(4)
@@ -6073,6 +6074,243 @@ Partial Class Compras_eFacturas
End Function
+
+ Protected Sub LnkRegistroRNC_Click(sender As Object, e As EventArgs)
+ VinculacionAutomaticaRNC()
+ End Sub
+
+ Private Sub VinculacionAutomaticaRNC()
+ Dim ErrorProceso As Boolean = False
+ Dim ErrorProcesoStr As String = ""
+ Dim Contador As Integer = 0
+ Dim Objcompras As New ClsCompras
+ Objcompras.IniciaTransacSQL()
+
+ 'DataKeyNames="CveFactura,CveCompra,CveProveedor,SerieFolio,NombreProveedor,UUID,RFCDe,RFCPara,TipoFactura,FueValidado,TipoComprobante,Version,RFCde,XML,PDF,BloquePorComplemento,Total,CveTipoProveedor,FechaFactura"
+
+
+ For Each GvRow As GridViewRow In GvD.Rows
+
+ If GvRow.DataKey("TipoComprobante") = "E" Then
+
+ Dim TotalFactura As Decimal = GvRow.DataKey("Total").ToDecimal
+ Dim SaldoFactura As Decimal = TotalFactura
+
+ Dim CFDIXmlPath As String = $"{UsuarioActual.Empresa.Ruta}Compras\{GvRow.DataKey("RFCDe")}\{GvRow.DataKey("XML")}"
+ If Not File.Exists(CFDIXmlPath) Then
+ ErrorProceso = True
+ Continue For
+ End If
+
+ Dim CompraActual As New ClsCompraManager(CFDIXmlPath, ClsCompraManager.EnumCargaCompra.DesdeArchivo, GlobalDTTiposGastos(UsuarioActual.CveEmpresa), UsuarioActual)
+
+ CompraActual.CveFactura = GvRow.DataKey("CveFactura").ToEntero
+ CompraActual.CveProveedor = GvRow.DataKey("CveProveedor").ToEntero
+ CompraActual.CveTipoProveedor = GvRow.DataKey("CveTipoProveedor").ToEntero
+ CompraActual.CveTipoConceptoProveedor = GvRow.DataKey("CveTipoProveedor").ToEntero
+ CompraActual.TipoCompra = ClsCompraManager.EnumTipoCompra.Sin_definir
+ CompraActual.IEPSGasto = True
+ CompraActual.Descripcion = TxtDescripcionCompra.Text.Trim
+ CompraActual.NombreProveedor = GvRow.DataKey("NombreProveedor")
+
+ For Each DR As String In CompraActual.DocumentosRelacionadosUUIDSList
+
+ Next
+
+
+ 'If CompraActual.ConfiguraRegistroCompra(DdlPS.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, CveCajachica, CvePersonal,
+ ' DdlRetIVAConcepto.SelectedValue.ToEntero, DdlRetISRConcepto.SelectedValue.ToEntero, NumeroReembolso:=TxtNumeroReembolso.Text,
+ ' DTProrrateo:=DTProrrateo, DTPagosDeudores:=New DataTable) Then
+
+ ' 'FIX ME OIC Recuerda cambiar el tipo de documento al registrar, actualmente tiene FAC y NC uno u otro, ajustar para que registre *** Egs *** cuado TipoComprobante = 'E'
+ ' If CompraActual.AddCompra(Objcompras.IniciaTransacSQL()) Then
+ ' Contador = Contador + 1
+ ' Else
+ ' ErrorProceso = True
+ ' ErrorProcesoStr = CompraActual.MensajeError
+ ' Exit For
+ ' End If
+ 'Else
+ ' ErrorProceso = True
+ ' ErrorProcesoStr = CompraActual.MensajeError
+ ' Exit For
+ 'End If
+
+ 'If RBLContado.SelectedValue.ToEntero = 4 Then 'Deudores
+ ' Dim CompraActualPagar = New Compra
+ ' If Objcompras.GetCompras(CompraActual.CveCompra, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then
+ ' If Objcompras.DtResultados IsNot Nothing AndAlso Objcompras.DtResultados.Rows.Count > 0 Then
+ ' Dim dr As DataRow = Objcompras.DtResultados.Rows(0)
+
+
+ ' CompraActualPagar.CveCompra = CompraActual.CveCompra
+ ' CompraActualPagar.CveTipoConceptoProveedor = dr("CveTipoConcepto").ToString.ToEntero
+ ' CompraActualPagar.CveProveedor = dr("CveProveedor").ToString.ToEntero
+ ' CompraActualPagar.CveMoneda = dr("CveMoneda").ToString.ToEntero
+ ' CompraActualPagar.Fecha = dr("Fecha").ToString.ToDate
+ ' CompraActualPagar.SerieFolio = dr("SerieFolio").ToString
+ ' 'CompraActualPagar.ProveedorNombre = TxtPagueseA.Text
+ ' CompraActualPagar.TC = dr("TipoCambio").ToString.ToDecimal
+ ' CompraActualPagar.Total = dr("Total").ToString.ToDecimal
+ ' CompraActualPagar.IVA = dr("IVA").ToString.ToDecimal
+ ' CompraActualPagar.IVADeducible = dr("IVADeducible").ToString.ToDecimal.RoundSQL
+ ' CompraActualPagar.IVANoDeducible = dr("IVANoDeducible").ToString.ToDecimal.RoundSQL
+ ' CompraActualPagar.IEPS = dr("IEPS").ToString.ToDecimal
+ ' CompraActualPagar.RetIVA = dr("RetIVA").ToString.ToDecimal
+ ' CompraActualPagar.RetISR = dr("RetISR").ToString.ToDecimal
+ ' CompraActualPagar.CveConceptoRetIVA = dr("CveRetIVAConcepto").ToString.ToEntero
+ ' CompraActualPagar.CveConceptoRetISR = dr("CveRetISRConcepto").ToString.ToEntero
+ ' CompraActualPagar.PorcentajeIVA = dr("PorcentajeIVA").ToString.ToDecimal
+ ' CompraActualPagar.UsuarioActual = UsuarioActual
+ ' CompraActualPagar.CveSubProyecto = dr("CveSubProyecto").ToString.ToEntero
+ ' CompraActualPagar.EsImportacion = CBool(dr("EsImportacion"))
+ ' CompraActualPagar.CompraNoDeducible = dr("NoDeducible").ToString.ToEntero
+
+
+
+ ' Else
+ ' ErrorProceso = True
+ ' End If
+ ' Else
+ ' ErrorProceso = True
+ ' End If
+
+
+
+
+
+ 'End If
+
+ End If
+ If ErrorProceso Then
+ Exit For
+ End If
+ Next
+
+ If ErrorProceso Then
+ Objcompras.RollBack()
+ Alert($"Se registraron {Contador} Compras. error {ErrorProcesoStr}", TipoMensaje.MsgAdvertencia)
+ Else
+ Objcompras.Commit()
+ CargaDatos(NowADS())
+ CambieDeudor()
+ CargaDatos(NowADS())
+ If Contador > 0 Then
+ Alert($"Se registraron {Contador} Compras")
+ End If
+ End If
+
+ Objcompras.Dispose()
+
+ End Sub
+
+ Protected Sub LnkDecargaPlatilla_Click(sender As Object, e As EventArgs)
+
+ Dim rutaArchivoPlantilla As String = ModExtensiones.DirectorioBaseEmpresas & "Empresas\Grales\CargaProrrateoPorcentaje.xlsx"
+
+ Dim nombreArchivo As String = "CargaProrrateoPorcentaje.xlsx"
+
+ ' Configurar la respuesta HTTP
+ Response.Clear()
+ Response.ContentType = "application/octet-stream"
+ Response.AppendHeader("Content-Disposition", "attachment; filename=" & nombreArchivo)
+
+ Dim contenido As Byte() = System.IO.File.ReadAllBytes(rutaArchivoPlantilla)
+ Response.BinaryWrite(contenido)
+
+ Response.Flush()
+ Response.End()
+
+ End Sub
+
+ Protected Sub BrnAgregarPlantilla_Click(sender As Object, e As EventArgs)
+
+ If TxtExcel.getfiles().Archivos.Count > 0 Then
+ Dim file As Archivo = TxtExcel.getfiles().Archivos(0)
+ Dim Directorio As String = Server.MapPath("~") & file.path
+ Dim Tipo As String = If(file.Extension.Contiene("xlsx", "xlsx", "xlsm", "xlsb"), "EXCEL", "CSV")
+
+ Dim DTPlantilla As DataTable = ReadExcelFile(Directorio + file.filename, True)
+
+ ProcesaPlantilla(DTPlantilla)
+
+ Else
+ Alert("No existe el archivo.Favor de subir un archivo csv o excel a la plataforma", TipoMensaje.MsgError)
+ End If
+
+ End Sub
+
+
+ Function ProcesaPlantilla(DTPlantilla As DataTable) As Boolean
+
+
+ Dim CvePs As Integer = DdlPS.SelectedValue.ToEntero
+
+ If Not CvePs > 0 Then
+ Alert("Debe seleccionar un producto", TipoMensaje.MsgAdvertencia)
+ Return False
+ End If
+
+ Dim PsRow As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePs).FiltroPrimero("")
+
+ If PsRow Is Nothing Then
+ Alert("No se encontro el producto", TipoMensaje.MsgAdvertencia)
+ Return False
+ End If
+
+ Dim CveUM As Integer = PsRow("CveUM").ToString.ToEntero
+ Dim UM As String = GlobalDTUnidadesMedida(UsuarioActual.CveEmpresa).FiltroPrimeroValor("UnidadMedida", $" CveUnidadMedida = {CveUM} ")
+
+ Dim CveClasificacion As Integer = PsRow("CveClasificacion").ToString.ToEntero
+ Dim Clasificacion As String = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $" CveClasificacion = {CveClasificacion} ")
+
+ Dim TotalPorcentaje As Decimal
+ Dim ErrorProceso As Boolean = False
+ Dim SbSubProyectosNoencontrados As New StringBuilder
+
+ For Each dRow As DataRow In DTPlantilla.Rows
+ If dRow("Porcentaje").ToString.ToDecimal < 0 Then
+ Alert("No se admiten porcentajes negativos.", TipoMensaje.MsgAdvertencia)
+ Return False
+ End If
+ TotalPorcentaje = TotalPorcentaje + dRow("Porcentaje").ToString.ToDecimal
+ Next
+
+ TotalPorcentaje = TotalPorcentaje.RoundSQL
+ If TotalPorcentaje <> 100 Then
+ Alert($"La suma de porcentaje es diferente de 100%, el porcetaje actual es de {TotalPorcentaje}%", TipoMensaje.MsgAdvertencia)
+ Return False
+ End If
+
+ If Not DTPlantilla.Columns.Contains("CveSubProyecto") Then
+ DTPlantilla.Columns.Add("CveSubProyecto", GetType(Integer))
+ End If
+
+
+ For Each dRow As DataRow In DTPlantilla.Rows
+ Dim CveSubProyecto As Integer = GlobalDTSubProyectos(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $" SubProyecto = '{dRow("CentroCosto").ToString}' ").ToEntero
+ If CveSubProyecto > 0 Then
+ dRow("CveSubProyecto") = CveSubProyecto
+ Else
+ ErrorProceso = True
+ SbSubProyectosNoencontrados.AppendLine($"{dRow("CentroCosto").ToString} ")
+ End If
+ Next
+
+ If ErrorProceso AndAlso SbSubProyectosNoencontrados.Length > 0 Then
+ Alert($"No se encontraron los siguientes centros de costo {SbSubProyectosNoencontrados.ToString}", TipoMensaje.MsgAdvertencia)
+ End If
+
+ For Each dRow As DataRow In DTPlantilla.Rows
+ AgregarProrrateoGasolina(dRow("CveSubProyecto").ToString.ToEntero, dRow("CentroCosto").ToString, CvePs, CveUM, UM, CveClasificacion, Clasificacion, dRow("Porcentaje").ToString.ToDecimal)
+ Next
+
+ TxtExcel.Text = "[]"
+ Return True
+
+ End Function
+
+
End Class
diff --git a/Contabilidad/RegPrePolizaS.aspx b/Contabilidad/RegPrePolizaS.aspx
index 8b3e8406f..10eedf997 100644
--- a/Contabilidad/RegPrePolizaS.aspx
+++ b/Contabilidad/RegPrePolizaS.aspx
@@ -87,6 +87,10 @@
Cargar Excel
+
+
+
@@ -567,7 +571,7 @@
+ data-toggle="confirmation" data-popout="true" data-original-title="Confirmar" data-btn-ok-label="si" />
diff --git a/Contabilidad/RegPrePolizaS.aspx.vb b/Contabilidad/RegPrePolizaS.aspx.vb
index d9051657e..c4129847f 100644
--- a/Contabilidad/RegPrePolizaS.aspx.vb
+++ b/Contabilidad/RegPrePolizaS.aspx.vb
@@ -312,6 +312,10 @@ Partial Class ContabilidadC_RegPrePolizaS
Contabilizar()
End If
+ If Request("quitaconta") IsNot Nothing Then
+ Quitacontabilidad()
+ End If
+
End If
Exit Sub
@@ -508,6 +512,10 @@ Partial Class ContabilidadC_RegPrePolizaS
GvPrePoliza.Columns(7).Visible = True
End If
+ If UsuarioActual.CveRol = 1 OrElse UsuarioActual.CveUsuario = 2296 Then
+ BtnQuitarContabilidad.Visible = True
+ End If
+
If DtMovimientos.FiltraParametros("CveConceptoContable IN (2,292)").Rows.Count > 0 AndAlso DtMovimientos.FiltraParametros("CveConceptoContable IN (30)").Rows.Count = 0 Then
LnkComplementoPago.Visible = True
End If
@@ -2892,5 +2900,31 @@ Partial Class ContabilidadC_RegPrePolizaS
Protected Sub LnkEmitirComplemento_Click(sender As Object, e As EventArgs)
GeneraTimbre(CvePrePoliza)
End Sub
+
+ Protected Sub BtnQuitarContabilidad_Click(sender As Object, e As EventArgs)
+ Quitacontabilidad()
+ End Sub
+
+ Private Sub Quitacontabilidad()
+ Dim tieneerror As Boolean = False
+ Dim oculta As Boolean = False
+ Dim ObjConta As New ClsContabilidad()
+ ObjConta.IniciaTransacSQL()
+ 'If GvPrePoliza.Rows.Count = 0 Then oculta = True
+
+ For Each gvr As GridViewRow In GvPrePoliza.Rows
+ If Not ObjConta.UpdateContabilizable(gvr.DataKey("CvePrePolizaDetalle").ToEntero, oculta) Then
+ tieneerror = True
+ End If
+ Next
+ If Not tieneerror Then
+ ObjConta.Commit()
+ Alert("limpieza")
+ Else
+ ObjConta.RollBack()
+ End If
+
+ ObjConta.Dispose()
+ End Sub
End Class
diff --git a/Contabilidad/RepAnexoCatalogoCC.aspx b/Contabilidad/RepAnexoCatalogoCC.aspx
index 548cdf295..0e105651a 100644
--- a/Contabilidad/RepAnexoCatalogoCC.aspx
+++ b/Contabilidad/RepAnexoCatalogoCC.aspx
@@ -169,7 +169,7 @@
-
+
@@ -359,7 +359,13 @@
let currentid = 1;
function HandlerGraf(obj, evt) {
$("#DivModalGrafica").modal();
- cdatos = $(obj).data('values');
+
+ //cdatos = $(obj).data('values');
+
+ cdatos = $(obj).data('values').sort(function (a, b) {
+ return b.Valor - a.Valor;
+ });
+
if (currentid == 1) {
CargaGraficaBarras();
} else {
@@ -369,6 +375,9 @@
}
function CargaGraficaBarras() {
let data = cdatos;
+ //let data = cdatos.sort(function (a, b) {
+ // return b.Valor - a.Valor;
+ //});
var chart = AmCharts.makeChart("chartdiv", {
"type": "serial",
"theme": "light",
@@ -406,6 +415,11 @@
function CargaGraficaPastel() {
let data = cdatos;
+
+ //let data = cdatos.sort(function (a, b) {
+ // return b.Valor - a.Valor;
+ //});
+
var chart = AmCharts.makeChart("chartdiv", {
"type": "pie",
"theme": "light",
diff --git a/Contabilidad/RepAnexoCatalogoCC.aspx.vb b/Contabilidad/RepAnexoCatalogoCC.aspx.vb
index ae99858cd..22ce9b1b2 100644
--- a/Contabilidad/RepAnexoCatalogoCC.aspx.vb
+++ b/Contabilidad/RepAnexoCatalogoCC.aspx.vb
@@ -236,9 +236,15 @@ Partial Class Contabilidad2_RepAnexoCatalogoCC
Next
Dim CveCunetaRow As Integer = e.Row.DataKey("CveCuenta").ToEntero
+ If e.Row.Cells(2).Text.ToDecimal <> 0 Then
+ e.Row.Cells(2).Text = $"{ If(DdlDivisor.SelectedValue.ToEntero > 1, e.Row.Cells(2).Text.ToDecimal.ToString("###,###,##0"), e.Row.Cells(2).Text.ToDecimal.ToString("###,###,###.00")) }"
+ Else
+ e.Row.Cells(2).Text = $"-"
+ End If
+
+
Dim inicial As Boolean = True
Index = 4
-
For Each DRow As DataRow In DTHeaders.Rows
Dim Importe As Decimal = e.Row.DBCampo($"SubProyecto{DRow("SubProyecto")}").ToDecimal
@@ -249,7 +255,7 @@ Partial Class Contabilidad2_RepAnexoCatalogoCC
End If
If Importe <> 0 Then
- e.Row.Cells(Index).Text = $"{ If(DdlDivisor.SelectedValue.ToEntero > 1, Importe.ToString("###,###,##0"), Importe.ToString("###,###,###.00")) }"
+ e.Row.Cells(Index).Text = $"{ If(DdlDivisor.SelectedValue.ToEntero > 1, Importe.ToString("###,###,##0"), Importe.ToString("###,###,###.00")) }"
End If
Index += 1
diff --git a/Contabilidad/RepIVA.aspx b/Contabilidad/RepIVA.aspx
index 9277a203e..9ba2ebace 100644
--- a/Contabilidad/RepIVA.aspx
+++ b/Contabilidad/RepIVA.aspx
@@ -390,7 +390,7 @@
-
+
diff --git a/Contabilidad/RepIVA.aspx.cs b/Contabilidad/RepIVA.aspx.cs
index 1a90339d7..e562cfbc1 100644
--- a/Contabilidad/RepIVA.aspx.cs
+++ b/Contabilidad/RepIVA.aspx.cs
@@ -13,6 +13,11 @@ using System.IO;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
using System.Diagnostics;
+using DocumentFormat.OpenXml.Drawing;
+using DocumentFormat.OpenXml.ExtendedProperties;
+using static Stimulsoft.Report.StiOptions;
+using System.Web.Services.Description;
+using System.Drawing;
public partial class Contabilidad_RepIVA : ClsPaginas
{
@@ -331,39 +336,130 @@ public partial class Contabilidad_RepIVA : ClsPaginas
if (Objconta.GetRepIVA(txtFechaI.Text.ToDate(), txtFechaF.Text.ToDate(), 2, UsuarioActual.CveUsuario, -1, Conciliado, UsuarioActual.CveEmpresa, TipoCambio, TCEspecifico))
{
-
- foreach (DataRow Drow in Objconta.DtResultados.FiltraParametros("CveCompra is null and CveProveedor > 0 and SubTotal >= 1 ").Rows) // and(IVA > 1 OR IEPS > 0)
+ if (txtFechaI.Text.ToDate().Year < 2025) // años anteriores al 2025
{
- SBDIOT.AppendLine(
- Drow["TipoTercero"].ToString() + "|" +
- Drow["TipoOperacion"].ToString() + "|" +
- Drow["RFC"].ToString() + "|" +
- Drow["NumeroIDFiscal"].ToString() + "|" +
- Drow["NombreExtranjero"].ToString() + "|" +
- Drow["PaisResidencia"].ToString() + "|" +
- Drow["Nacionalidad"].ToString() + "|" +
- LV(Drow["valorActos1516"].ToString()) + "|" +
- LV(Drow["valorActos15"].ToString()) + "|" +
- LV(Drow["ValorIvaNo1516"].ToString()) + "|" +
+ foreach (DataRow Drow in Objconta.DtResultados.FiltraParametros("CveCompra is null and CveProveedor > 0 and SubTotal >= 1 ").Rows) // and(IVA > 1 OR IEPS > 0)
+ {
+ SBDIOT.AppendLine(
+ Drow["TipoTercero"].ToString() + "|" +
+ Drow["TipoOperacion"].ToString() + "|" +
+ Drow["RFC"].ToString() + "|" +
+ Drow["NumeroIDFiscal"].ToString() + "|" +
+ Drow["NombreExtranjero"].ToString() + "|" +
+ Drow["PaisResidencia"].ToString() + "|" +
+ Drow["Nacionalidad"].ToString() + "|" +
+ LV(Drow["valorActos1516"].ToString()) + "|" +
+ LV(Drow["valorActos15"].ToString()) + "|" +
+ LV(Drow["ValorIvaNo1516"].ToString()) + "|" +
- LV(Drow["valorActos1011"].ToString()) + "|" +
- LV(Drow["valorActos10"].ToString()) + "|" +
- LV(Drow["valorActosImp8"].ToString()) + "|" +
- LV(Drow["ValorIvaNo10"].ToString()) + "|" +
- LV(Drow["ValorIvaNo08"].ToString()) + "|" +
+ LV(Drow["valorActos1011"].ToString()) + "|" +
+ LV(Drow["valorActos10"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["ValorIvaNo10"].ToString()) + "|" +
+ LV(Drow["ValorIvaNo08"].ToString()) + "|" +
- LV(Drow["valorActosImp1516"].ToString()) + "|" +
- LV(Drow["ValorIvaNoImp16"].ToString()) + "|" +
+ LV(Drow["valorActosImp1516"].ToString()) + "|" +
+ LV(Drow["ValorIvaNoImp16"].ToString()) + "|" +
- LV(Drow["valorActosImp10"].ToString()) + "|" +
- LV(Drow["ValorIvaNoImp10"].ToString()) + "|" +
+ LV(Drow["valorActosImp10"].ToString()) + "|" +
+ LV(Drow["ValorIvaNoImp10"].ToString()) + "|" +
- LV(Drow["IvaExentoImpo"].ToString()) + "|" +
- LV(Drow["IVACero"].ToString()) + "|" +
- LV(Drow["IvaExento"].ToString()) + "|" +
- LV(Drow["IvaRetenido"].ToString()) + "|" +
- LV(Drow["IvaDevoluciones"].ToString()) + "|");
+ LV(Drow["IvaExentoImpo"].ToString()) + "|" +
+ LV(Drow["IVACero"].ToString()) + "|" +
+ LV(Drow["IvaExento"].ToString()) + "|" +
+ LV(Drow["IvaRetenido"].ToString()) + "|" +
+ LV(Drow["IvaDevoluciones"].ToString()) + "|");
+ }
}
+ else
+ {
+ foreach (DataRow Drow in Objconta.DtResultados.FiltraParametros("CveCompra is null and CveProveedor > 0 and SubTotal >= 1 ").Rows) // and(IVA > 1 OR IEPS > 0)
+ {
+ SBDIOT.AppendLine(
+ Drow["TipoTercero"].ToString() + "|" +
+ Drow["TipoOperacion"].ToString() + "|" +
+ Drow["RFC"].ToString() + "|" +
+ Drow["NumeroIDFiscal"].ToString() + "|" +
+ Drow["NombreExtranjero"].ToString() + "|" +
+ Drow["PaisResidencia"].ToString() + "|" +
+ Drow["Nacionalidad"].ToString() + "|" +
+ // 3.2 valor de los actos o actividades
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // actos norte
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // desc norte
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // actos sur
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // desc sur
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // desc 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // importacion 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // desc importacion 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // importacion intangibles 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // desc intangibles 16%
+ // 3.3 IVA Acreditable
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // actos norte
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // proporcion actos norte
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // actos sur
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // proporcion actos sur
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // proporcion 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // importacion 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // proporción importacion 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // intangibles 16%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // proporcion intangibles 16%
+ // 3.4 IVA NO Acreditable
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ LV(Drow["valorActosImp8"].ToString()) + "|" +
+ // 3.5 datos adicionales
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // VA retenido por el contribuyente
+ LV(Drow["valorActosImp8"].ToString()) + "|" + //Actos o actividades pagados en la importación de bienes y servicios por los que no se pagara el IVA (Exentos)
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // Actos o actividades pagados por los que no se pagará el IVA(Exentos)
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // Demás actos o actividades pagados a la tasa del 0%
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // Actos o actividades no objeto del IVA realizados en
+ LV(Drow["valorActosImp8"].ToString()) + "|" + // Actos o actividades no objeto del IVA por no contar on establecimiento en territorio nacion
+ LV(Drow["valorActosImp8"].ToString()) + "|"); // Manifiesto que se dio efectos fiscales a los comprobantes que amparan las operaciones realizadas con el proveedor
+
+ //LV(Drow["valorActos1516"].ToString()) + "|" +
+ //LV(Drow["valorActos15"].ToString()) + "|" +
+ //LV(Drow["ValorIvaNo1516"].ToString()) + "|" +
+
+ //LV(Drow["valorActos1011"].ToString()) + "|" +
+ //LV(Drow["valorActos10"].ToString()) + "|" +
+ //LV(Drow["valorActosImp8"].ToString()) + "|" +
+ //LV(Drow["ValorIvaNo10"].ToString()) + "|" +
+ //LV(Drow["ValorIvaNo08"].ToString()) + "|" +
+
+ //LV(Drow["valorActosImp1516"].ToString()) + "|" +
+ //LV(Drow["ValorIvaNoImp16"].ToString()) + "|" +
+
+ //LV(Drow["valorActosImp10"].ToString()) + "|" +
+ //LV(Drow["ValorIvaNoImp10"].ToString()) + "|" +
+
+ //LV(Drow["IvaExentoImpo"].ToString()) + "|" +
+ //LV(Drow["IVACero"].ToString()) + "|" +
+ //LV(Drow["IvaExento"].ToString()) + "|" +
+ //LV(Drow["IvaRetenido"].ToString()) + "|" +
+ //LV(Drow["IvaDevoluciones"].ToString()) + "|");
+ }
+
+ }
+
}
Objconta.Dispose();
diff --git a/Contabilidad/RepMovimientosAuxiliaresCatalogo.aspx b/Contabilidad/RepMovimientosAuxiliaresCatalogo.aspx
index 2499e6d64..b39faeb0a 100644
--- a/Contabilidad/RepMovimientosAuxiliaresCatalogo.aspx
+++ b/Contabilidad/RepMovimientosAuxiliaresCatalogo.aspx
@@ -51,7 +51,7 @@