This commit is contained in:
2022-05-30 15:52:35 -07:00
32 changed files with 2164 additions and 1732 deletions

View File

@@ -6644,6 +6644,7 @@ Public Class ClsContPAQi
StrSQL.Append(" CodigoSup5 VARCHAR(100), Sup5 VARCHAR(200), CodigoSup6 VARCHAR(100), Sup6 VARCHAR(200),") StrSQL.Append(" CodigoSup5 VARCHAR(100), Sup5 VARCHAR(200), CodigoSup6 VARCHAR(100), Sup6 VARCHAR(200),")
StrSQL.Append(" CodigoSup7 VARCHAR(100), Sup7 VARCHAR(200), CodigoSup8 VARCHAR(100), Sup8 VARCHAR(100),") StrSQL.Append(" CodigoSup7 VARCHAR(100), Sup7 VARCHAR(200), CodigoSup8 VARCHAR(100), Sup8 VARCHAR(100),")
StrSQL.Append(" SaldoActual FLOAT);") StrSQL.Append(" SaldoActual FLOAT);")
StrSQL.Append(" CREATE NONClUSTERED INDEX IDX ON #TEMP (ID); ")
StrSQL.Append(" ") StrSQL.Append(" ")
'StrSQL.AppendLine(" -- RECOLECCION DE DATOS RECORRIENDO TODO EL ARBOL") 'StrSQL.AppendLine(" -- RECOLECCION DE DATOS RECORRIENDO TODO EL ARBOL")
StrSQL.Append(" WITH Rec(IdCtaSup, IdSubCtade, CtaSup, SubCtade, Level, Orden) AS ") StrSQL.Append(" WITH Rec(IdCtaSup, IdSubCtade, CtaSup, SubCtade, Level, Orden) AS ")
@@ -6782,6 +6783,8 @@ Public Class ClsContPAQi
SqlDataAdapter(StrSQL.ToString, CommandType.Text) SqlDataAdapter(StrSQL.ToString, CommandType.Text)
SqlAdapter.SelectCommand.CommandTimeout = 0
With SqlAdapter.SelectCommand.Parameters With SqlAdapter.SelectCommand.Parameters
.Add("@FechaI", SqlDbType.Date).Value = FechaI .Add("@FechaI", SqlDbType.Date).Value = FechaI
.Add("@FechaF", SqlDbType.Date).Value = FechaF .Add("@FechaF", SqlDbType.Date).Value = FechaF

View File

@@ -2201,6 +2201,21 @@ Public Class ClsGPS
OnError("Ocurrió un error al obtener la ruta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) OnError("Ocurrió un error al obtener la ruta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try End Try
Return Retorno Return Retorno
End Function
Public Function GetRutasPuntosRecoleecion(CveRuta As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_GPS_RutasPuntosRecoleecionGet")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveRuta", SqlDbType.Int).Value = CveRuta
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
OnError("Ocurrió un error al obtener los puntos de recoleecion.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End Try
Return Retorno
End Function End Function
Public Function UpdateRuta(CveRuta As Integer, Ruta As String, CveCliente As Integer) As Boolean Public Function UpdateRuta(CveRuta As Integer, Ruta As String, CveCliente As Integer) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False

View File

@@ -6554,10 +6554,12 @@ Public Class ClsPaginas
Else Else
LogoRuta = String.Format("{0}Formatos\Logo.png", UsuarioActual.Empresa.Ruta) LogoRuta = String.Format("{0}Formatos\Logo.png", UsuarioActual.Empresa.Ruta)
If File.Exists(LogoRuta) Then If File.Exists(LogoRuta) Then
LogoRuta = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa) 'LogoRuta = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
LogoRuta = String.Format("{0}", LogoRuta)
End If End If
End If End If
LogoRuta = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa) 'LogoRuta = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
LogoRuta = String.Format("{0}", LogoRuta)
'Si no tiene CBB, SE GENERA 'Si no tiene CBB, SE GENERA
If Not ImagenCBB.Exists Then If Not ImagenCBB.Exists Then
Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar() Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar()
@@ -7116,7 +7118,7 @@ Public Class ClsPaginas
LogoRuta = String.Format("{0}Formatos\Logo.png", UsuarioActual.Empresa.Ruta) LogoRuta = String.Format("{0}Formatos\Logo.png", UsuarioActual.Empresa.Ruta)
If File.Exists(LogoRuta) Then If File.Exists(LogoRuta) Then
'LogoRuta = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa) 'LogoRuta = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
LogoRuta = String.Format("file://{0}", LogoRuta) LogoRuta = String.Format("{0}", LogoRuta)
End If End If
End If End If

View File

@@ -3157,8 +3157,8 @@ Public Class ClsVentas
Dim retorno As Boolean = False Dim retorno As Boolean = False
Try Try
Dim objServicio As Cancelacion.CancelacionSoapClient = New Cancelacion.CancelacionSoapClient() Dim objServicio As Cancelacion2022.CancelacionSoapClient = New Cancelacion2022.CancelacionSoapClient()
Dim resp As Cancelacion.StructCancel = objServicio.ObtienePendientes(RFC, "UserTest", "1234567890") Dim resp As Cancelacion2022.StructCancel = objServicio.ObtienePendientes(RFC, "UserTest", "1234567890")
If resp.Estado = 0 Then If resp.Estado = 0 Then
Dim XmlPendientes As String = System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(resp.Xml)) Dim XmlPendientes As String = System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(resp.Xml))
Dim theReader As IO.StringReader = New IO.StringReader(XmlPendientes) Dim theReader As IO.StringReader = New IO.StringReader(XmlPendientes)

View File

@@ -3826,46 +3826,9 @@ Namespace Modelos
OcurrioError = True OcurrioError = True
End If End If
' COMIENZA: GARANTIAS ' GENERA EL MOVIMIENTO DE GARANTIA SI TIENE
Dim CveAlmacenGarantia As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveTipoAlmacen:=6).FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto={factura.CveSubProyecto}").ToEntero() If Not GenerarMovimientoGarantia(14, "Entrada Garantía", Now, factura, ObjAcum, ObjInventario, ObjConta) Then
Dim DtGarantias As DataTable = Nothing OcurrioError = True
If ObjAcum.GetGarantiasDetalle(factura.CveVenta) Then
DtGarantias = ObjAcum.DtResultados.Copy()
End If
If DtGarantias IsNot Nothing AndAlso DtGarantias.Rows.Count > 0 AndAlso CveAlmacenGarantia > 0 Then
Dim TotalGarantia As Decimal = 0
Dim CveMovimientoGarantia = ObjInventario.AddMovimiento(CveAlmacenGarantia, 2, 1, factura.Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, factura.CveVenta, -1, -1, Observaciones:="", Guia:="", Modulo:="Modelos/SDGA")
Dim FolioGarantia = ObjInventario.Folio
For Each RowGarantia As DataRow In DtGarantias.Rows
Dim CvePS = RowGarantia("CvePS").ToString().ToEntero()
Dim CveTamaño As Integer = RowGarantia("CveTamaño").ToString().ToEntero()
Dim CveUM As Integer = RowGarantia("CveUnidadMedida").ToString().ToEntero()
Dim PU As Decimal = RowGarantia("Importe").ToString().ToDecimal() ' / RowGarantia("Cantidad").ToString().ToDouble()
Dim Serie As String = RowGarantia("Comprobante").ToString
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoGarantia, RowGarantia("Cantidad").ToString().ToDouble(), CveUM, CvePS, PU, Serie:=Serie, CveVentaDetalle:=RowGarantia("CveVentaDetalle").ToString.ToEntero) Then
OcurrioError = True
Exit For
End If
TotalGarantia += (RowGarantia("Cantidad").ToString().ToDecimal() * PU)
Next
Dim CvePrePolizaTraspaso As Integer = ObjConta.AddPrePolizas("EA/Gar", 53, 0, 0, 1, factura.Fecha, "Entrada Garantía", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If CvePrePolizaTraspaso > 0 Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaTraspaso, False, TotalGarantia, "MOVIMIENTO DE GARANTIA", 68, "MOVIMIENTO DE GARANTIA", factura.Fecha, -1, -1, CveMovimientoAlmacen:=CveMovimientoGarantia, Contabilizable:=True, ImporteMX:=TotalGarantia) Then
OcurrioError = True
End If
If Not OcurrioError AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePolizaTraspaso, True, TotalGarantia, "MOVIMIENTO DE GARANTIA", 331, "MOVIMIENTO DE GARANTIA", factura.Fecha, -1, -1, CveMovimientoAlmacen:=CveMovimientoGarantia, Contabilizable:=True, ImporteMX:=TotalGarantia) Then
OcurrioError = True
End If
Else
OcurrioError = True
End If
End If End If
Else Else
@@ -3902,6 +3865,75 @@ Namespace Modelos
Return OcurrioError Return OcurrioError
End Function End Function
Private Function GenerarMovimientoGarantia(CveConceptoMovimiento As Integer, ConceptoPoliza As String, FechaMovimiento As DateTime, factura As Factura, ByRef ObjAcum As ClsAcumuladores, ByRef ObjInventario As ClsInventarios, ObjConta As ClsContabilidad, Optional Modulo As String = "Modelos/SDGA") As Boolean
Dim OcurrioError As Boolean = False
Try
Dim CveAlmacenGarantia As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveTipoAlmacen:=6).FiltroPrimeroValor("CveAlmacen", $"CveSubProyecto={factura.CveSubProyecto}").ToEntero()
Dim DtGarantias As DataTable = Nothing
If ObjAcum.GetGarantiasDetalle(factura.CveVenta) Then
DtGarantias = ObjAcum.DtResultados.Copy()
Else
OcurrioError = True
End If
'SI TIENE UNA GARANTIA, GENERAR EL MOVIMIENTO DE ALMACEN
If DtGarantias IsNot Nothing AndAlso DtGarantias.Rows.Count > 0 AndAlso CveAlmacenGarantia > 0 Then
Dim TotalGarantia As Decimal = 0
Dim CveMovimientoGarantia = ObjInventario.AddMovimiento(CveAlmacenGarantia, CveConceptoMovimiento, 1, FechaMovimiento, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, factura.CveVenta, -1, -1, Observaciones:="", Guia:="", Modulo:=Modulo)
Dim FolioGarantia = ObjInventario.Folio
For Each RowGarantia As DataRow In DtGarantias.Rows
Dim CvePS = RowGarantia("CvePS").ToString().ToEntero()
Dim CveTamaño As Integer = RowGarantia("CveTamaño").ToString().ToEntero()
Dim CveUM As Integer = RowGarantia("CveUnidadMedida").ToString().ToEntero()
Dim PU As Decimal = RowGarantia("Importe").ToString().ToDecimal() ' / RowGarantia("Cantidad").ToString().ToDouble()
Dim Serie As String = RowGarantia("Comprobante").ToString
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoGarantia, RowGarantia("Cantidad").ToString().ToDouble(), CveUM, CvePS, PU, Serie:=Serie, CveVentaDetalle:=RowGarantia("CveVentaDetalle").ToString.ToEntero) Then
OcurrioError = True
Exit For
End If
Next
If Not OcurrioError Then
If ObjInventario.GetMovimientosDetalle(CveMovimientoGarantia, UsuarioActual.CveEmpresa) AndAlso ObjInventario.DtResultados.Rows.Count > 0 Then
TotalGarantia = ObjInventario.DtResultados.SUMD("Total").RoundSQL
Else
OcurrioError = True
End If
End If
If Not OcurrioError Then
Dim CvePrePolizaGarantia As Integer = ObjConta.AddPrePolizas("EA/Gar", 53, 0, 0, 1, FechaMovimiento, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If CvePrePolizaGarantia > 0 Then
Dim TipoMovto As Boolean = False
If CveConceptoMovimiento = 15 Then
TipoMovto = True
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePolizaGarantia, TipoMovto, TotalGarantia, "MOVIMIENTO DE GARANTIA", 68, "MOVIMIENTO DE GARANTIA", factura.Fecha, -1, -1, CveMovimientoAlmacen:=CveMovimientoGarantia, Contabilizable:=True, ImporteMX:=TotalGarantia) Then
OcurrioError = True
End If
If Not OcurrioError AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePolizaGarantia, Not TipoMovto, TotalGarantia, "MOVIMIENTO DE GARANTIA", 331, "MOVIMIENTO DE GARANTIA", factura.Fecha, -1, -1, CveMovimientoAlmacen:=CveMovimientoGarantia, Contabilizable:=True, ImporteMX:=TotalGarantia) Then
OcurrioError = True
End If
Else
OcurrioError = True
End If
End If
End If
Catch ex As Exception
OcurrioError = True
OnError("Ocurrió un error al generar el movimiento de garantía", ex)
End Try
Return Not OcurrioError
End Function
Private Function CuadrarFacturaMovimientos(MovDetalle As DataTable) As DataTable Private Function CuadrarFacturaMovimientos(MovDetalle As DataTable) As DataTable
Dim MovDTCuadrados As New DataTable Dim MovDTCuadrados As New DataTable
MovDTCuadrados = MovDetalle.Clone MovDTCuadrados = MovDetalle.Clone
@@ -5540,6 +5572,21 @@ Namespace Modelos
End If End If
'CANCELAR MOVIMIENTOS DE GARANTIA SI TIENE
If Not ErrorCancelar AndAlso UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
If Not GenerarMovimientoGarantia(15, "Salida Garantía", Now, ObjRemision, ObjAcum, ObjInventario, ObjConta) Then
ErrorCancelar = True
End If
End If
'CANCELA LOS FOLIOS DE GARANTIA
If Not ErrorCancelar Then
If Not ObjAcum.UpdateGarantiaCancelacion(ObjRemision.CveVenta) Then
ErrorCancelar = True
MensajeError = "Ocurrió un error al actualizar la garantía"
End If
End If
If DtDevRemision IsNot Nothing Then If DtDevRemision IsNot Nothing Then
DtDevRemision.Dispose() DtDevRemision.Dispose()
End If End If
@@ -5629,6 +5676,13 @@ Namespace Modelos
End If End If
End If End If
'CANCELAR MOVIMIENTOS DE GARANTIA SI TIENE
If Not ErrorCancelar AndAlso UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
If Not GenerarMovimientoGarantia(15, "Salida Garantía", Now, ObjFactura, ObjAcum, ObjInventario, ObjConta) Then
ErrorCancelar = True
End If
End If
End If End If
'VERIFICAR MOVIMIENTOS DE APARTADOS 'VERIFICAR MOVIMIENTOS DE APARTADOS
@@ -6617,6 +6671,7 @@ Namespace Modelos
Public Property SubProyecto As Modelos.SubProyectoModel Public Property SubProyecto As Modelos.SubProyectoModel
Public Property DtDetalle As Data.DataTable Public Property DtDetalle As Data.DataTable
Public Property DtMercancias As Data.DataTable
Public Property DtDetalleAC As Data.DataTable Public Property DtDetalleAC As Data.DataTable
Public Property DtAjustes As Data.DataTable Public Property DtAjustes As Data.DataTable
Public Property DtRecepcionUsados As Data.DataTable Public Property DtRecepcionUsados As Data.DataTable
@@ -7166,6 +7221,7 @@ Namespace Modelos
If Not DtRemisiones Is Nothing Then DtRemisiones.Dispose() : DtRemisiones = Nothing If Not DtRemisiones Is Nothing Then DtRemisiones.Dispose() : DtRemisiones = Nothing
If Not DtRemisionesPS Is Nothing Then DtRemisionesPS.Dispose() : DtRemisionesPS = Nothing If Not DtRemisionesPS Is Nothing Then DtRemisionesPS.Dispose() : DtRemisionesPS = Nothing
If Not DtVentasNC Is Nothing Then DtVentasNC.Dispose() : DtVentasNC = Nothing If Not DtVentasNC Is Nothing Then DtVentasNC.Dispose() : DtVentasNC = Nothing
If Not DtMercancias Is Nothing Then DtMercancias.Dispose() : DtMercancias = Nothing
End If End If
End If End If
Me.disposedValue = True Me.disposedValue = True

View File

@@ -259,39 +259,39 @@ Public Class E141 : Implements IHttpHandler
End Property End Property
#End Region #End Region
#Region "V A L I D A - D A T O S" #Region "V A L I D A - D A T O S"
Private Function ValidaUsuarioSistema(CveUsuario As Integer, CveEmpresa As Integer) As Usuario Private Function ValidaUsuarioSistema(CveUsuario As Integer, CveEmpresa As Integer) As Usuario
Dim UsuarioActual As Usuario = Nothing Dim UsuarioActual As Usuario = Nothing
Dim ObjUsuarios As New ClsSisUsuarios Dim ObjUsuarios As New ClsSisUsuarios
If ObjUsuarios.GetUsuarios(CveUsuario) Then If ObjUsuarios.GetUsuarios(CveUsuario) Then
If ObjUsuarios.DtResultados.Rows.Count > 0 Then If ObjUsuarios.DtResultados.Rows.Count > 0 Then
Dim Usuario = ObjUsuarios.DtResultados.Rows(0)("Usuario").ToString() Dim Usuario = ObjUsuarios.DtResultados.Rows(0)("Usuario").ToString()
Dim Contrasenia = ObjUsuarios.DtResultados.Rows(0)("Contraseña").ToString() Dim Contrasenia = ObjUsuarios.DtResultados.Rows(0)("Contraseña").ToString()
UsuarioActual = ObjUsuarios.ValidaUsuario(Usuario, Contrasenia, IMEI, CveEmpresa) UsuarioActual = ObjUsuarios.ValidaUsuario(Usuario, Contrasenia, IMEI, CveEmpresa)
UsuarioActual.CveEmpresa = CveEmpresa UsuarioActual.CveEmpresa = CveEmpresa
CreaObjetoEmpresa(UsuarioActual) CreaObjetoEmpresa(UsuarioActual)
End If End If
End If End If
ObjUsuarios.Dispose() ObjUsuarios.Dispose()
Return UsuarioActual Return UsuarioActual
End Function End Function
Private Sub CreaObjetoEmpresa(ByRef UsuarioActual As Usuario) Private Sub CreaObjetoEmpresa(ByRef UsuarioActual As Usuario)
Dim ObjEmpresa As New ClsSisEmpresas() Dim ObjEmpresa As New ClsSisEmpresas()
If ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1") Then If ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1") Then
If ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa) Then If ObjEmpresa.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa) Then
Dim dttmp As Data.DataTable = ObjEmpresa.DtResultados Dim dttmp As Data.DataTable = ObjEmpresa.DtResultados
Dim EmpresasFuncionalidades As New HybridDictionary Dim EmpresasFuncionalidades As New HybridDictionary
For Each Row As Data.DataRow In dttmp.Rows For Each Row As Data.DataRow In dttmp.Rows
EmpresasFuncionalidades.Add(Convert.ToInt32(Row("CveFuncionalidad")), Row("Valor").ToString) EmpresasFuncionalidades.Add(Convert.ToInt32(Row("CveFuncionalidad")), Row("Valor").ToString)
Next Next
ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades) ObjEmpresa.Empresa.SetFuncionalidades(EmpresasFuncionalidades)
End If End If
UsuarioActual.Empresa = ObjEmpresa.Empresa UsuarioActual.Empresa = ObjEmpresa.Empresa
End If End If
ObjEmpresa.Dispose() ObjEmpresa.Dispose()
End Sub End Sub
#End Region #End Region
@@ -766,7 +766,7 @@ Public Class E141 : Implements IHttpHandler
End Function End Function
#Region "D E F I N I R - O B J E T O S" #Region "D E F I N I R - O B J E T O S"
Private Function CrearCliente(TipoDocto As String, ObjClientes As ClsClientes, ByRef Resp As Modelos.Factura.MMensajeFactura, JsonRequest As JObject, UsuarioActual As Usuario) As Integer Private Function CrearCliente(TipoDocto As String, ObjClientes As ClsClientes, ByRef Resp As Modelos.Factura.MMensajeFactura, JsonRequest As JObject, UsuarioActual As Usuario) As Integer
Dim CveCliente As Integer = -1 Dim CveCliente As Integer = -1
@@ -892,9 +892,9 @@ Public Class E141 : Implements IHttpHandler
End Function End Function
Private Function CreaFactura(ObjInventario As ClsInventarios, ObjClientes As ClsClientes, TipoDocto As String, Resp As Modelos.Factura.MMensajeFactura, JsonRequest As JObject, UsuarioActual As Usuario) As Modelos.Factura Private Function CreaFactura(ObjInventario As ClsInventarios, ObjClientes As ClsClientes, TipoDocto As String, Resp As Modelos.Factura.MMensajeFactura, JsonRequest As JObject, UsuarioActual As Usuario) As Modelos.Factura
Try Try
Resp.TieneError = False Resp.TieneError = False
Dim Serie As String = "-1" Dim Serie As String = "-1"
Dim CveMoneda As Integer = 1 Dim CveMoneda As Integer = 1
@@ -914,52 +914,52 @@ Public Class E141 : Implements IHttpHandler
If CveCliente <= 0 Then If CveCliente <= 0 Then
Return Nothing Return Nothing
End If End If
Dim ObjFactura = New Modelos.Factura(UsuarioActual) Dim ObjFactura = New Modelos.Factura(UsuarioActual)
ObjFactura.TipoMensajeRespuesta = Modelos.TipoMensajeRespuesta.TextoLimpio ObjFactura.TipoMensajeRespuesta = Modelos.TipoMensajeRespuesta.TextoLimpio
ObjFactura.Serie = Serie ObjFactura.Serie = Serie
ObjFactura.Folio = -1 ObjFactura.Folio = -1
ObjFactura.Version = "3.3" ObjFactura.Version = "3.3"
ObjFactura.FolioFiscal = "" ObjFactura.FolioFiscal = ""
ObjFactura.CveUsuario = UsuarioActual.CveUsuario ObjFactura.CveUsuario = UsuarioActual.CveUsuario
ObjFactura.CveEmpresa = UsuarioActual.CveEmpresa ObjFactura.CveEmpresa = UsuarioActual.CveEmpresa
ObjFactura.TipoCambio = 1 ObjFactura.TipoCambio = 1
ObjFactura.ConvertirPesos = False ObjFactura.ConvertirPesos = False
ObjFactura.CveMoneda = CveMoneda ObjFactura.CveMoneda = CveMoneda
ObjFactura.Moneda = GlobalDTMonedas.FiltroPrimeroValor("Moneda", String.Format("CveMoneda = {0} ", CveMoneda)) ObjFactura.Moneda = GlobalDTMonedas.FiltroPrimeroValor("Moneda", String.Format("CveMoneda = {0} ", CveMoneda))
ObjFactura.MonedaSAT = GlobalDTMonedas.FiltroPrimeroValor("AbreviaturaSAT", String.Format("CveMoneda = {0} ", CveMoneda)) ObjFactura.MonedaSAT = GlobalDTMonedas.FiltroPrimeroValor("AbreviaturaSAT", String.Format("CveMoneda = {0} ", CveMoneda))
ObjFactura.TipoDocto = TipoDocto ObjFactura.TipoDocto = TipoDocto
ObjFactura.RefDocto = "" ObjFactura.RefDocto = ""
ObjFactura.CveMesa = -1 ObjFactura.CveMesa = -1
ObjFactura.Fecha = Now ObjFactura.Fecha = Now
ObjFactura.CvePrePoliza = -1 ObjFactura.CvePrePoliza = -1
ObjFactura.FechaPago = Now ObjFactura.FechaPago = Now
ObjFactura.MotivoDescuento = "" ObjFactura.MotivoDescuento = ""
ObjFactura.FechaEjecucion = Now ObjFactura.FechaEjecucion = Now
ObjFactura.UsuarioCreo = UsuarioActual.Usuario ObjFactura.UsuarioCreo = UsuarioActual.Usuario
ObjFactura.CveCondicionEntrega = -1 ObjFactura.CveCondicionEntrega = -1
ObjFactura.CondicionEntrega = "" ObjFactura.CondicionEntrega = ""
ObjFactura.NumeroCuenta = "" ObjFactura.NumeroCuenta = ""
ObjFactura.CondicionesPago = 0 ObjFactura.CondicionesPago = 0
ObjFactura.FormaPago = 0 ObjFactura.FormaPago = 0
ObjFactura.PedidoContrato = "" ObjFactura.PedidoContrato = ""
ObjFactura.NumeroContrato = "" ObjFactura.NumeroContrato = ""
ObjFactura.DescripcionContrato = "" ObjFactura.DescripcionContrato = ""
ObjFactura.CveCorte = -1 ObjFactura.CveCorte = -1
ObjFactura.TipoDocumento = ObjFactura.TipodeComprobante ObjFactura.TipoDocumento = ObjFactura.TipodeComprobante
ObjFactura.Alfa1 = "" ObjFactura.Alfa1 = ""
ObjFactura.Alfa2 = "" ObjFactura.Alfa2 = ""
ObjFactura.Alfa3 = "" ObjFactura.Alfa3 = ""
ObjFactura.CveContrato = -1 ObjFactura.CveContrato = -1
ObjFactura.ConvertirPesos = False ObjFactura.ConvertirPesos = False
ObjFactura.CveSubProyecto = CveSubProyecto ObjFactura.CveSubProyecto = CveSubProyecto
ObjFactura.CveSubProyectoCobranza = CveSubProyecto ObjFactura.CveSubProyectoCobranza = CveSubProyecto
ObjFactura.CveSubProyectoEjecucion = CveSubProyecto ObjFactura.CveSubProyectoEjecucion = CveSubProyecto
ObjFactura.SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveEmpresa:=CveEmpresa).FiltroPrimero(String.Format("CveSubProyecto = {0}", CveSubProyecto))) ObjFactura.SubProyecto = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveEmpresa:=CveEmpresa).FiltroPrimero(String.Format("CveSubProyecto = {0}", CveSubProyecto)))
ObjFactura.SubProyectoMatriz = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveSubProyecto:=-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("TipoSucursal=1")) ObjFactura.SubProyectoMatriz = New Modelos.SubProyectoModel(GlobalDTSubProyectos(-1, CveSubProyecto:=-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("TipoSucursal=1"))
'CLIENTE 'CLIENTE
ObjFactura.CveCliente = CveCliente ObjFactura.CveCliente = CveCliente
ObjFactura.CveClienteSucursal = -1 ObjFactura.CveClienteSucursal = -1
@@ -1147,24 +1147,24 @@ Public Class E141 : Implements IHttpHandler
End If End If
'IMPORTES 'IMPORTES
Dim TotalImporte As Decimal = ObjFactura.DtDetalle.SUMD("TotalImporte") Dim TotalImporte As Decimal = ObjFactura.DtDetalle.SUMD("TotalImporte")
Dim ImporteIVA As Decimal = ObjFactura.DtDetalle.SUMD("ImporteIVA") Dim ImporteIVA As Decimal = ObjFactura.DtDetalle.SUMD("ImporteIVA")
Dim ImporteRetIVA As Decimal = ObjFactura.DtDetalle.SUMD("ImporteRetIVA") Dim ImporteRetIVA As Decimal = ObjFactura.DtDetalle.SUMD("ImporteRetIVA")
Dim ImporteRetISR As Decimal = ObjFactura.DtDetalle.SUMD("ImporteRetISR") Dim ImporteRetISR As Decimal = ObjFactura.DtDetalle.SUMD("ImporteRetISR")
Dim ImporteIEPS As Decimal = ObjFactura.DtDetalle.SUMD("ImporteIEPS") Dim ImporteIEPS As Decimal = ObjFactura.DtDetalle.SUMD("ImporteIEPS")
Dim Descuento As Decimal = ObjFactura.DtDetalle.SUMD("Descuento") Dim Descuento As Decimal = ObjFactura.DtDetalle.SUMD("Descuento")
Dim Amortizacion As Decimal = 0 Dim Amortizacion As Decimal = 0
Dim Total As Decimal = (TotalImporte + ImporteIVA + ImporteIEPS) - (ImporteRetIVA + ImporteRetISR + Descuento + Amortizacion) Dim Total As Decimal = (TotalImporte + ImporteIVA + ImporteIEPS) - (ImporteRetIVA + ImporteRetISR + Descuento + Amortizacion)
ObjFactura.SubTotal = TotalImporte ObjFactura.SubTotal = TotalImporte
ObjFactura.Descuento = Descuento ObjFactura.Descuento = Descuento
ObjFactura.Amortizacion = Amortizacion ObjFactura.Amortizacion = Amortizacion
ObjFactura.IVA = ImporteIVA ObjFactura.IVA = ImporteIVA
ObjFactura.RetIVA = ImporteRetIVA ObjFactura.RetIVA = ImporteRetIVA
ObjFactura.RetISR = ImporteRetISR ObjFactura.RetISR = ImporteRetISR
ObjFactura.IEPS = ImporteIEPS ObjFactura.IEPS = ImporteIEPS
ObjFactura.Total = Total ObjFactura.Total = Total
ObjFactura.TotalOtrosConceptos = 0 ObjFactura.TotalOtrosConceptos = 0
'SI HAY DIFERENCIA DE UN CENTAVO AJUSTA 'SI HAY DIFERENCIA DE UN CENTAVO AJUSTA
@@ -1200,224 +1200,224 @@ Public Class E141 : Implements IHttpHandler
ObjFactura.Observaciones = "PEDIDO PROVENIENTE DE ECOMMERCE" ObjFactura.Observaciones = "PEDIDO PROVENIENTE DE ECOMMERCE"
ElseIf TipoDocto = "Cot" Then ElseIf TipoDocto = "Cot" Then
ObjFactura.Observaciones = "COTIZACION PROVENIENTE DE ECOMMERCE" ObjFactura.Observaciones = "COTIZACION PROVENIENTE DE ECOMMERCE"
End If End If
ObjFactura.OrdenCompra = "" ObjFactura.OrdenCompra = ""
ObjFactura.PedidoContrato = "" ObjFactura.PedidoContrato = ""
ObjFactura.ObservacionesAlmacen = "" ObjFactura.ObservacionesAlmacen = ""
ObjFactura.EnviarCorreo = False ObjFactura.EnviarCorreo = False
ObjFactura.Timbre = PreParaTimbre(ObjFactura) ObjFactura.Timbre = PreParaTimbre(ObjFactura)
ObjFactura.FemsaFactura = New Modelos.FemsaFactura() With { ObjFactura.FemsaFactura = New Modelos.FemsaFactura() With {
.AplicaFEMSA = False, .AplicaFEMSA = False,
.FEMSA_Version = 1 .FEMSA_Version = 1
} }
Return ObjFactura Return ObjFactura
Catch ex As Exception Catch ex As Exception
Resp.Mensajes.Add(ex.ToString()) Resp.Mensajes.Add(ex.ToString())
Return Nothing Return Nothing
End Try End Try
End Function End Function
Private Function PreParaTimbre(Obj As Modelos.Factura) As CFDITimbre Private Function PreParaTimbre(Obj As Modelos.Factura) As CFDITimbre
Dim Timbre As New CFDITimbre Dim Timbre As New CFDITimbre
Timbre.Comprobante.TipoComprobante = If(Obj.TipoDocto.Contiene("Ing", "Ant"), "I", If(Obj.TipoDocto.Contiene("Egs", "Dev"), "E", "")) Timbre.Comprobante.TipoComprobante = If(Obj.TipoDocto.Contiene("Ing", "Ant"), "I", If(Obj.TipoDocto.Contiene("Egs", "Dev"), "E", ""))
Timbre.Comprobante.Folio = Obj.Folio.ToString Timbre.Comprobante.Folio = Obj.Folio.ToString
Timbre.Comprobante.Serie = Obj.Serie Timbre.Comprobante.Serie = Obj.Serie
Timbre.Comprobante.Fecha = Obj.FechaCP Timbre.Comprobante.Fecha = Obj.FechaCP
Timbre.Comprobante.FormadePago = Obj.FormaPagoSAT33 Timbre.Comprobante.FormadePago = Obj.FormaPagoSAT33
Timbre.Comprobante.CondicionesdePago = Obj.FormaPago33 Timbre.Comprobante.CondicionesdePago = Obj.FormaPago33
Timbre.Comprobante.MetodoPago = Obj.ClaveMetodoPagoSAT Timbre.Comprobante.MetodoPago = Obj.ClaveMetodoPagoSAT
Timbre.Comprobante.Subtotal = Obj.SubTotal Timbre.Comprobante.Subtotal = Obj.SubTotal
Timbre.Comprobante.Descuentos = Obj.Descuento Timbre.Comprobante.Descuentos = Obj.Descuento
Timbre.Comprobante.Moneda = Obj.MonedaSAT Timbre.Comprobante.Moneda = Obj.MonedaSAT
Timbre.Comprobante.TipoCambio = If(Obj.CveMoneda = 1, "1", Obj.TipoCambio.ToString) Timbre.Comprobante.TipoCambio = If(Obj.CveMoneda = 1, "1", Obj.TipoCambio.ToString)
Timbre.Comprobante.Total = Obj.Total Timbre.Comprobante.Total = Obj.Total
Timbre.Comprobante.LugarExpedicion = Obj.SubProyecto.CP Timbre.Comprobante.LugarExpedicion = Obj.SubProyecto.CP
Timbre.Comprobante.Confirmacion = "" Timbre.Comprobante.Confirmacion = ""
Timbre.Receptor.RFC = Obj.Cliente.RFC Timbre.Receptor.RFC = Obj.Cliente.RFC
Timbre.Receptor.Nombre = Obj.Cliente.Nombre Timbre.Receptor.Nombre = Obj.Cliente.Nombre
Timbre.Receptor.ResidenciaFiscal = "" Timbre.Receptor.ResidenciaFiscal = ""
Timbre.Receptor.NumeroRegistroTributario = "" Timbre.Receptor.NumeroRegistroTributario = ""
Timbre.Receptor.UsoCFDI = Obj.ClaveUsoCFDI Timbre.Receptor.UsoCFDI = Obj.ClaveUsoCFDI
If Obj.CveTipoRelacion > 0 Then If Obj.CveTipoRelacion > 0 Then
Select Case Obj.CveTipoRelacion Select Case Obj.CveTipoRelacion
Case 1 Case 1
Timbre.CFDIRelacionados.TipoRelacion = "01" Timbre.CFDIRelacionados.TipoRelacion = "01"
Timbre.CFDIRelacionados.TipoRelacionTexto = "01-Nota de Crédito aplicada a Ingreso" Timbre.CFDIRelacionados.TipoRelacionTexto = "01-Nota de Crédito aplicada a Ingreso"
Case 2 Case 2
Timbre.CFDIRelacionados.TipoRelacion = "02" Timbre.CFDIRelacionados.TipoRelacion = "02"
Timbre.CFDIRelacionados.TipoRelacionTexto = "02-Nota de débito de los documentos relacionados" Timbre.CFDIRelacionados.TipoRelacionTexto = "02-Nota de débito de los documentos relacionados"
Case 3 Case 3
Timbre.CFDIRelacionados.TipoRelacion = "03" Timbre.CFDIRelacionados.TipoRelacion = "03"
Timbre.CFDIRelacionados.TipoRelacionTexto = "03-Devolución aplicada a Ingreso" Timbre.CFDIRelacionados.TipoRelacionTexto = "03-Devolución aplicada a Ingreso"
Case 4 Case 4
Timbre.CFDIRelacionados.TipoRelacion = "04" Timbre.CFDIRelacionados.TipoRelacion = "04"
Timbre.CFDIRelacionados.TipoRelacionTexto = "04-Refacturación de Ingreso" Timbre.CFDIRelacionados.TipoRelacionTexto = "04-Refacturación de Ingreso"
Case 7 Case 7
Timbre.CFDIRelacionados.TipoRelacion = "07" Timbre.CFDIRelacionados.TipoRelacion = "07"
Timbre.CFDIRelacionados.TipoRelacionTexto = "07-CFDI por aplicación de anticipo" Timbre.CFDIRelacionados.TipoRelacionTexto = "07-CFDI por aplicación de anticipo"
Case 8 Case 8
Timbre.CFDIRelacionados.TipoRelacion = "08" Timbre.CFDIRelacionados.TipoRelacion = "08"
Timbre.CFDIRelacionados.TipoRelacionTexto = "08-Factura generada por pagos en parcialidades " Timbre.CFDIRelacionados.TipoRelacionTexto = "08-Factura generada por pagos en parcialidades "
Case 9 Case 9
Timbre.CFDIRelacionados.TipoRelacion = "09" Timbre.CFDIRelacionados.TipoRelacion = "09"
Timbre.CFDIRelacionados.TipoRelacionTexto = "09-Factura generada por pagos diferidos" Timbre.CFDIRelacionados.TipoRelacionTexto = "09-Factura generada por pagos diferidos"
End Select End Select
End If End If
Dim totSubTotal As Decimal = Obj.SubTotal Dim totSubTotal As Decimal = Obj.SubTotal
Dim totIVA As Decimal = Obj.IVA Dim totIVA As Decimal = Obj.IVA
Dim totRetIVA As Decimal = Obj.RetIVA Dim totRetIVA As Decimal = Obj.RetIVA
Dim totRetISR As Decimal = Obj.RetISR Dim totRetISR As Decimal = Obj.RetISR
Dim i As Integer = 1 Dim i As Integer = 1
'DETALLES 'DETALLES
Dim tPS As String = "" Dim tPS As String = ""
For Each drr As DataRow In Obj.DtDetalle.Rows For Each drr As DataRow In Obj.DtDetalle.Rows
If drr("PS").ToString.Length = 1 Then If drr("PS").ToString.Length = 1 Then
tPS = drr("Obs").ToString tPS = drr("Obs").ToString
Else Else
If drr("PS").ToString.Length = 0 Then If drr("PS").ToString.Length = 0 Then
tPS = "" tPS = ""
Else Else
tPS = String.Format("{0} {1}", drr("PS"), drr("Obs")) tPS = String.Format("{0} {1}", drr("PS"), drr("Obs"))
End If End If
End If End If
'CONDICIONANTE, ESPECIAL 'CONDICIONANTE, ESPECIAL
If Obj.CveEmpresa = 15 Then drr("UM") = "" 'LES COMENTAN QUE NO DEBE IR LA ETIQUETA DE LA UNIDAD EN EL PRODUCTO If Obj.CveEmpresa = 15 Then drr("UM") = "" 'LES COMENTAN QUE NO DEBE IR LA ETIQUETA DE LA UNIDAD EN EL PRODUCTO
Dim concepto As New CFDIConceptos With {.Cantidad = drr("Cantidad").ToString.ToDecimal, Dim concepto As New CFDIConceptos With {.Cantidad = drr("Cantidad").ToString.ToDecimal,
.Descripcion = tPS, .Descripcion = tPS,
.ValorUnitario = drr("PU").ToString.ToDecimal, .ValorUnitario = drr("PU").ToString.ToDecimal,
.Importe = drr("TotalImporte").ToString.ToDecimal, .Importe = drr("TotalImporte").ToString.ToDecimal,
.Descuento = drr("Descuento").ToString.ToDecimal, .Descuento = drr("Descuento").ToString.ToDecimal,
.Unidad = drr("UM").ToString, .Unidad = drr("UM").ToString,
.ClaveUnidad = drr("SATClaveUM").ToString, .ClaveUnidad = drr("SATClaveUM").ToString,
.ClaveProdServ = drr("SATClaveProdServ").ToString, .ClaveProdServ = drr("SATClaveProdServ").ToString,
.Noidentificacion = drr("Noidentificacion").ToString, .Noidentificacion = drr("Noidentificacion").ToString,
.CuentaPredial = drr("CuentaPredial").ToString} .CuentaPredial = drr("CuentaPredial").ToString}
'VERIFICA SUMA SUBTOTALES 'VERIFICA SUMA SUBTOTALES
If i = Obj.DtDetalle.Rows.Count AndAlso totSubTotal <> concepto.Importe Then 'PROCESO DE AJUSTA DE DECIMALES If i = Obj.DtDetalle.Rows.Count AndAlso totSubTotal <> concepto.Importe Then 'PROCESO DE AJUSTA DE DECIMALES
concepto.Importe = totSubTotal concepto.Importe = totSubTotal
End If End If
totSubTotal = totSubTotal - concepto.Importe totSubTotal = totSubTotal - concepto.Importe
'SIEMPRE ESTAMOS AGREGANDO EL IVA 'SIEMPRE ESTAMOS AGREGANDO EL IVA
concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "T", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeIVA").ToString.ToDecimal, .Impuesto = "002", .Importe = drr("ImporteIVA").ToString.ToDecimal}) concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "T", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeIVA").ToString.ToDecimal, .Impuesto = "002", .Importe = drr("ImporteIVA").ToString.ToDecimal})
If drr("ImporteIEPS").ToString.ToDouble > 0 Then If drr("ImporteIEPS").ToString.ToDouble > 0 Then
concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "T", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeIEPS").ToString.ToDecimal, .Impuesto = "003", .Importe = drr("ImporteIEPS").ToString.ToDecimal}) concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "T", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeIEPS").ToString.ToDecimal, .Impuesto = "003", .Importe = drr("ImporteIEPS").ToString.ToDecimal})
End If End If
If drr("ImporteRetIVA").ToString.ToDouble > 0 Then 'si hay retenciones If drr("ImporteRetIVA").ToString.ToDouble > 0 Then 'si hay retenciones
concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "R", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeRetIVA").ToString.ToDecimal, .Impuesto = "002", .Importe = drr("ImporteRetIVA").ToString.ToDecimal}) concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "R", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeRetIVA").ToString.ToDecimal, .Impuesto = "002", .Importe = drr("ImporteRetIVA").ToString.ToDecimal})
End If End If
If drr("ImporteRetISR").ToString.ToDouble > 0 Then 'retención de ISR If drr("ImporteRetISR").ToString.ToDouble > 0 Then 'retención de ISR
concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "R", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeRetISR").ToString.ToDecimal, .Impuesto = "001", .Importe = drr("ImporteRetISR").ToString.ToDecimal}) concepto.Impuestos.Add(New CFDIConceptosImpuestos With {.TrasladooRetencion = "R", .Base = concepto.Importe - concepto.Descuento, .TasaOCuota = drr("PorcentajeRetISR").ToString.ToDecimal, .Impuesto = "001", .Importe = drr("ImporteRetISR").ToString.ToDecimal})
End If End If
Timbre.Conceptos.Add(concepto) Timbre.Conceptos.Add(concepto)
i += 1 i += 1
Next Next
Return Timbre Return Timbre
End Function End Function
Private Function CreaDTDetalle(ByRef ObjInventarios As ClsInventarios, ObjFactura As Modelos.Factura, ByRef Retorno As Modelos.Factura.MMensajeFactura, UsuarioActual As Usuario, JsonRequest As JObject) As DataTable Private Function CreaDTDetalle(ByRef ObjInventarios As ClsInventarios, ObjFactura As Modelos.Factura, ByRef Retorno As Modelos.Factura.MMensajeFactura, UsuarioActual As Usuario, JsonRequest As JObject) As DataTable
Dim TmpDT = New DataTable Dim TmpDT = New DataTable
TmpDT.Columns.Add("CveVenta", GetType(Integer)) TmpDT.Columns.Add("CveVenta", GetType(Integer))
TmpDT.Columns.Add("Consec", GetType(Integer)) TmpDT.Columns.Add("Consec", GetType(Integer))
TmpDT.Columns.Add("Cantidad", GetType(Decimal)) TmpDT.Columns.Add("Cantidad", GetType(Decimal))
TmpDT.Columns.Add("Codigo", GetType(String)) TmpDT.Columns.Add("Codigo", GetType(String))
TmpDT.Columns.Add("CveUM", GetType(Integer)) TmpDT.Columns.Add("CveUM", GetType(Integer))
TmpDT.Columns.Add("UM", GetType(String)) TmpDT.Columns.Add("UM", GetType(String))
TmpDT.Columns.Add("SATClaveUM", GetType(String)) TmpDT.Columns.Add("SATClaveUM", GetType(String))
TmpDT.Columns.Add("CveClasificacion", GetType(Integer)) TmpDT.Columns.Add("CveClasificacion", GetType(Integer))
TmpDT.Columns.Add("Clasificacion", GetType(String)) TmpDT.Columns.Add("Clasificacion", GetType(String))
TmpDT.Columns.Add("CvePS", GetType(Integer)) TmpDT.Columns.Add("CvePS", GetType(Integer))
TmpDT.Columns.Add("PS", GetType(String)) TmpDT.Columns.Add("PS", GetType(String))
TmpDT.Columns.Add("CodigoPS", GetType(String)) TmpDT.Columns.Add("CodigoPS", GetType(String))
TmpDT.Columns.Add("SATClaveProdServ", GetType(String)) TmpDT.Columns.Add("SATClaveProdServ", GetType(String))
TmpDT.Columns.Add("NoIdentificacion", GetType(String)) TmpDT.Columns.Add("NoIdentificacion", GetType(String))
TmpDT.Columns.Add("CveTipoPS", GetType(Integer)) TmpDT.Columns.Add("CveTipoPS", GetType(Integer))
TmpDT.Columns.Add("CveTipoInvPS", GetType(Integer)) TmpDT.Columns.Add("CveTipoInvPS", GetType(Integer))
TmpDT.Columns.Add("Serie", GetType(String)) TmpDT.Columns.Add("Serie", GetType(String))
TmpDT.Columns.Add("CuentaPredial", GetType(String)) TmpDT.Columns.Add("CuentaPredial", GetType(String))
TmpDT.Columns.Add("Obs", GetType(String)) TmpDT.Columns.Add("Obs", GetType(String))
TmpDT.Columns.Add("TiempoEntrega", GetType(String)) TmpDT.Columns.Add("TiempoEntrega", GetType(String))
TmpDT.Columns.Add("PU", GetType(Decimal)) TmpDT.Columns.Add("PU", GetType(Decimal))
TmpDT.Columns.Add("IVA", GetType(Decimal)) TmpDT.Columns.Add("IVA", GetType(Decimal))
TmpDT.Columns.Add("ImporteIVA", GetType(Decimal)) TmpDT.Columns.Add("ImporteIVA", GetType(Decimal))
TmpDT.Columns.Add("PorcentajeIVA", GetType(Decimal)) TmpDT.Columns.Add("PorcentajeIVA", GetType(Decimal))
TmpDT.Columns.Add("ImporteRetIVA", GetType(Decimal)) TmpDT.Columns.Add("ImporteRetIVA", GetType(Decimal))
TmpDT.Columns.Add("ImporteRetISR", GetType(Decimal)) TmpDT.Columns.Add("ImporteRetISR", GetType(Decimal))
TmpDT.Columns.Add("PorcentajeRetIVA", GetType(Decimal)) TmpDT.Columns.Add("PorcentajeRetIVA", GetType(Decimal))
TmpDT.Columns.Add("PorcentajeRetISR", GetType(Decimal)) TmpDT.Columns.Add("PorcentajeRetISR", GetType(Decimal))
TmpDT.Columns.Add("ImporteIEPS", GetType(Decimal)) TmpDT.Columns.Add("ImporteIEPS", GetType(Decimal))
TmpDT.Columns.Add("IEPS", GetType(Decimal)) TmpDT.Columns.Add("IEPS", GetType(Decimal))
TmpDT.Columns.Add("PorcentajeIEPS", GetType(Decimal)) TmpDT.Columns.Add("PorcentajeIEPS", GetType(Decimal))
TmpDT.Columns.Add("Descuento", GetType(Decimal)) TmpDT.Columns.Add("Descuento", GetType(Decimal))
TmpDT.Columns.Add("TipoDescuento", GetType(Integer)) TmpDT.Columns.Add("TipoDescuento", GetType(Integer))
TmpDT.Columns.Add("TotalImporte", GetType(Decimal)) TmpDT.Columns.Add("TotalImporte", GetType(Decimal))
TmpDT.Columns.Add("Total", GetType(Decimal)) TmpDT.Columns.Add("Total", GetType(Decimal))
'Para uso del módulo contable 'Para uso del módulo contable
TmpDT.Columns.Add("AsientoContableVentas", GetType(Integer)) TmpDT.Columns.Add("AsientoContableVentas", GetType(Integer))
TmpDT.Columns.Add("IdCtaContVentas", GetType(Integer)) TmpDT.Columns.Add("IdCtaContVentas", GetType(Integer))
TmpDT.Columns.Add("AplicaParaConcepto", GetType(Boolean)) TmpDT.Columns.Add("AplicaParaConcepto", GetType(Boolean))
TmpDT.Columns.Add("CveProyecto", GetType(Integer)) TmpDT.Columns.Add("CveProyecto", GetType(Integer))
TmpDT.Columns.Add("Proyecto", GetType(String)) TmpDT.Columns.Add("Proyecto", GetType(String))
TmpDT.Columns.Add("CveSubProyecto", GetType(Integer)) TmpDT.Columns.Add("CveSubProyecto", GetType(Integer))
TmpDT.Columns.Add("SubProyecto", GetType(String)) TmpDT.Columns.Add("SubProyecto", GetType(String))
'TipoDescuento: 1 = Descuento * PU; 2 = Descuento por Total del concepto 'TipoDescuento: 1 = Descuento * PU; 2 = Descuento por Total del concepto
TmpDT.Columns.Add("CvePresupuestoIngreso", GetType(Integer)) TmpDT.Columns.Add("CvePresupuestoIngreso", GetType(Integer))
TmpDT.Columns.Add("CveFuenteRecaudacion", GetType(Integer)) TmpDT.Columns.Add("CveFuenteRecaudacion", GetType(Integer))
'Contratos 'Contratos
TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer)) TmpDT.Columns.Add("CveContratoDetalle", GetType(Integer))
'Remisiones a Facturas 'Remisiones a Facturas
TmpDT.Columns.Add("CveVentaDetalle", GetType(Integer)) TmpDT.Columns.Add("CveVentaDetalle", GetType(Integer))
TmpDT.Columns.Add("CveVentaDetalleRemision", GetType(Integer)) TmpDT.Columns.Add("CveVentaDetalleRemision", GetType(Integer))
TmpDT.Columns.Add("CveVentaDetalleCotizacion", GetType(Integer)) TmpDT.Columns.Add("CveVentaDetalleCotizacion", GetType(Integer))
'Pedido2 a Facturas 'Pedido2 a Facturas
TmpDT.Columns.Add("CveVentaDetallePedido2", GetType(Integer)) TmpDT.Columns.Add("CveVentaDetallePedido2", GetType(Integer))
TmpDT.Columns.Add("Origen", GetType(Integer)) TmpDT.Columns.Add("Origen", GetType(Integer))
'Ordenes Servicio 'Ordenes Servicio
TmpDT.Columns.Add("CveOS", GetType(Integer)) TmpDT.Columns.Add("CveOS", GetType(Integer))
TmpDT.Columns.Add("CveOSDetalle", GetType(Integer)) TmpDT.Columns.Add("CveOSDetalle", GetType(Integer))
TmpDT.Columns.Add("SeFacturara", GetType(Integer)) TmpDT.Columns.Add("SeFacturara", GetType(Integer))
TmpDT.Columns.Add("Folio", GetType(Integer)) TmpDT.Columns.Add("Folio", GetType(Integer))
TmpDT.Columns.Add("Estatus", GetType(String)) TmpDT.Columns.Add("Estatus", GetType(String))
'Ordenamiento 'Ordenamiento
TmpDT.Columns.Add("Orden", GetType(Integer)) TmpDT.Columns.Add("Orden", GetType(Integer))
TmpDT.Columns.Add("TipoDocto", GetType(String)) TmpDT.Columns.Add("TipoDocto", GetType(String))
'OC 'OC
TmpDT.Columns.Add("CveOrdenCompraDetalle", GetType(Integer)) TmpDT.Columns.Add("CveOrdenCompraDetalle", GetType(Integer))
TmpDT.Columns.Add("EntregaDirecta", GetType(Integer)) TmpDT.Columns.Add("EntregaDirecta", GetType(Integer))
TmpDT.Columns.Add("CveMovimientoDetallePedido", GetType(Integer)) TmpDT.Columns.Add("CveMovimientoDetallePedido", GetType(Integer))
TmpDT.Columns.Add("CantidadFacturadaRem", GetType(Decimal)) TmpDT.Columns.Add("CantidadFacturadaRem", GetType(Decimal))
TmpDT.Columns.Add("CantidadFacturadaCot", GetType(Decimal)) TmpDT.Columns.Add("CantidadFacturadaCot", GetType(Decimal))
TmpDT.Columns.Add("CantidadInventario", GetType(Decimal)) TmpDT.Columns.Add("CantidadInventario", GetType(Decimal))
TmpDT.Columns.Add("ClaveSATFraccionArancelaria", GetType(String)) TmpDT.Columns.Add("ClaveSATFraccionArancelaria", GetType(String))
TmpDT.Columns.Add("ClaveSATUnidadAduana", GetType(String)) TmpDT.Columns.Add("ClaveSATUnidadAduana", GetType(String))
TmpDT.Columns.Add("ClaveSATFraccionArancelariaDescripcion", GetType(String)) TmpDT.Columns.Add("ClaveSATFraccionArancelariaDescripcion", GetType(String))
TmpDT.Columns.Add("ClaveSATUnidadAduanaDescripcion", GetType(String)) TmpDT.Columns.Add("ClaveSATUnidadAduanaDescripcion", GetType(String))
TmpDT.Columns.Add("CveTamaño", GetType(Integer)) TmpDT.Columns.Add("CveTamaño", GetType(Integer))
Try Try
Dim ListaPS = JArray.Parse(JsonRequest("details").ToString()) Dim ListaPS = JArray.Parse(JsonRequest("details").ToString())
Dim DescuentoTotal As Decimal = JsonRequest("discount").ToString().ToDecimal() Dim DescuentoTotal As Decimal = JsonRequest("discount").ToString().ToDecimal()
@@ -1490,142 +1490,142 @@ Public Class E141 : Implements IHttpHandler
End If End If
Consec += 1 Consec += 1
Next Next
Catch ex As Exception Catch ex As Exception
Retorno.TieneError = True Retorno.TieneError = True
Retorno.Mensajes.Add(ex.ToString()) Retorno.Mensajes.Add(ex.ToString())
End Try End Try
If Retorno.TieneError = True Then If Retorno.TieneError = True Then
TmpDT.Clear() TmpDT.Clear()
TmpDT = Nothing TmpDT = Nothing
End If End If
Return TmpDT Return TmpDT
End Function End Function
Private Function AgregarProductoServicio(ByRef Retorno As Modelos.Factura.MMensajeFactura, UsuarioActual As Usuario, TmpDT As DataTable, Consec As Integer, Cantidad As Decimal, CveUM As Integer, UM As String, CveClasificacion As Integer, Clasificacion As String, CvePS As Integer, PS As String, Obs As String, Private Function AgregarProductoServicio(ByRef Retorno As Modelos.Factura.MMensajeFactura, UsuarioActual As Usuario, TmpDT As DataTable, Consec As Integer, Cantidad As Decimal, CveUM As Integer, UM As String, CveClasificacion As Integer, Clasificacion As String, CvePS As Integer, PS As String, Obs As String,
PU As Decimal, Descuento As Decimal, CveSubProyecto As Integer, PU As Decimal, Descuento As Decimal, CveSubProyecto As Integer,
Optional Serie As String = "", Optional TiempoEntrega As String = "", Optional EntregaDirecta As Integer = 0, Optional Serie As String = "", Optional TiempoEntrega As String = "", Optional EntregaDirecta As Integer = 0,
Optional CveContratoDetalle As Integer = 0, Optional CveVentaDetalle As Integer = 0, Optional CveMovimientoDetallePedido As Integer = 0, Optional CveContratoDetalle As Integer = 0, Optional CveVentaDetalle As Integer = 0, Optional CveMovimientoDetallePedido As Integer = 0,
Optional CveOrdenCompraDetalle As Integer = 0, Optional CveVentaDetalleRemision As Integer = 0, Optional CveVentaDetalleCotizacion As Integer = 0, Optional CveOrdenCompraDetalle As Integer = 0, Optional CveVentaDetalleRemision As Integer = 0, Optional CveVentaDetalleCotizacion As Integer = 0,
Optional CuentaPredial As String = "", Optional RegeneraIEPS As Boolean = True, Optional CveVentaDetallePedido2 As Integer = 0, Optional CuentaPredial As String = "", Optional RegeneraIEPS As Boolean = True, Optional CveVentaDetallePedido2 As Integer = 0,
Optional ClienteRetIVA As Double = 0, Optional ClienteRetISR As Double = 0, Optional ClienteDesglosaIEPS As Boolean = True) As DataRow Optional ClienteRetIVA As Double = 0, Optional ClienteRetISR As Double = 0, Optional ClienteDesglosaIEPS As Boolean = True) As DataRow
Dim DrPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("") Dim DrPS As DataRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("")
If DrPS Is Nothing Then If DrPS Is Nothing Then
Retorno.Mensajes.Add("Ocurrió un error al cargar la información del Producto. Por favor vuelva a intentar.") Retorno.Mensajes.Add("Ocurrió un error al cargar la información del Producto. Por favor vuelva a intentar.")
Return Nothing Return Nothing
End If End If
'verifica si tiene ventaminima 'verifica si tiene ventaminima
If Cantidad > 0 AndAlso DrPS("VentaMinima").ToString.ToDouble() > 0 Then If Cantidad > 0 AndAlso DrPS("VentaMinima").ToString.ToDouble() > 0 Then
'verifico que la cantidad sea multiplo de venta minima, es decir ventaminima =5, solo puede vender 5,10,15... 'verifico que la cantidad sea multiplo de venta minima, es decir ventaminima =5, solo puede vender 5,10,15...
If Cantidad < DrPS("VentaMinima").ToString.ToDouble() Then If Cantidad < DrPS("VentaMinima").ToString.ToDouble() Then
Retorno.Mensajes.Add("La cantidad es menor que la venta minima") Retorno.Mensajes.Add("La cantidad es menor que la venta minima")
Return Nothing Return Nothing
End If End If
End If End If
If (DrPS("SATClaveUnidadMedida").ToString = "" Or DrPS("SATClavePS").ToString = "") Then If (DrPS("SATClaveUnidadMedida").ToString = "" Or DrPS("SATClavePS").ToString = "") Then
'VALIDA CLAVESAT 'VALIDA CLAVESAT
If DrPS("SATClavePS").ToString = "" Then If DrPS("SATClavePS").ToString = "" Then
Retorno.Mensajes.Add(String.Format("<b>{0}-{1}</b>: Sin producto SAT<br/>", DrPS("Codigo").ToString, DrPS("PS").ToString)) Retorno.Mensajes.Add(String.Format("<b>{0}-{1}</b>: Sin producto SAT<br/>", DrPS("Codigo").ToString, DrPS("PS").ToString))
Return Nothing Return Nothing
ElseIf DrPS("SATClaveUnidadMedida").ToString = "" Then ElseIf DrPS("SATClaveUnidadMedida").ToString = "" Then
Retorno.Mensajes.Add(String.Format("<b>{0}-{1}</b>: Sin Unidad Medida SAT<br/>", DrPS("Codigo").ToString, DrPS("PS").ToString)) Retorno.Mensajes.Add(String.Format("<b>{0}-{1}</b>: Sin Unidad Medida SAT<br/>", DrPS("Codigo").ToString, DrPS("PS").ToString))
Return Nothing Return Nothing
End If End If
End If End If
If Not ClienteDesglosaIEPS Then If Not ClienteDesglosaIEPS Then
If Not RegeneraIEPS Then If Not RegeneraIEPS Then
PU = PU * (1 + DrPS("IEPSPorcentaje").ToString.ToDecimal) PU = PU * (1 + DrPS("IEPSPorcentaje").ToString.ToDecimal)
End If End If
DrPS("IEPSPorcentaje") = 0 DrPS("IEPSPorcentaje") = 0
End If End If
Dim Row As DataRow = Nothing Dim Row As DataRow = Nothing
Dim TotalCalculableImpuestos As Decimal = 0 Dim TotalCalculableImpuestos As Decimal = 0
PU = Math.Round(PU, 6) ' el precio unitario puede llevar hasta 6 decimales permitidos PU = Math.Round(PU, 6) ' el precio unitario puede llevar hasta 6 decimales permitidos
Dim DrSubProyecto As DataRow = GlobalDTSubProyectos(-1, CveSubProyecto).Rows(0) Dim DrSubProyecto As DataRow = GlobalDTSubProyectos(-1, CveSubProyecto).Rows(0)
Row = TmpDT.NewRow() Row = TmpDT.NewRow()
Row("CveProyecto") = DrSubProyecto("CveProyecto").ToString().ToEntero() Row("CveProyecto") = DrSubProyecto("CveProyecto").ToString().ToEntero()
Row("Proyecto") = DrSubProyecto("Proyecto").ToString() Row("Proyecto") = DrSubProyecto("Proyecto").ToString()
Row("CveSubProyecto") = CveSubProyecto Row("CveSubProyecto") = CveSubProyecto
Row("SubProyecto") = DrSubProyecto("SubProyecto").ToString() Row("SubProyecto") = DrSubProyecto("SubProyecto").ToString()
Row("Serie") = Serie Row("Serie") = Serie
Row("TiempoEntrega") = TiempoEntrega Row("TiempoEntrega") = TiempoEntrega
Row("Orden") = TmpDT.Rows.Count + 1 Row("Orden") = TmpDT.Rows.Count + 1
Row("Cantidad") = Cantidad Row("Cantidad") = Cantidad
Row("CveUM") = CveUM Row("CveUM") = CveUM
Row("UM") = UM Row("UM") = UM
Row("CveClasificacion") = CveClasificacion Row("CveClasificacion") = CveClasificacion
Row("Clasificacion") = Clasificacion Row("Clasificacion") = Clasificacion
Row("CvePS") = CvePS Row("CvePS") = CvePS
Row("Obs") = Obs Row("Obs") = Obs
TotalCalculableImpuestos = (Cantidad * PU) - Descuento TotalCalculableImpuestos = (Cantidad * PU) - Descuento
Row("PU") = PU Row("PU") = PU
Row("Codigo") = DrPS("Codigo") Row("Codigo") = DrPS("Codigo")
Row("NoIdentificacion") = DrPS("Codigo") Row("NoIdentificacion") = DrPS("Codigo")
Row("ClaveSATFraccionArancelaria") = DrPS("ClaveSATFraccionArancelaria") Row("ClaveSATFraccionArancelaria") = DrPS("ClaveSATFraccionArancelaria")
Row("ClaveSATUnidadAduana") = DrPS("ClaveSATUnidadAduana") Row("ClaveSATUnidadAduana") = DrPS("ClaveSATUnidadAduana")
Row("ClaveSATFraccionArancelariaDescripcion") = DrPS("ClaveSATFraccionArancelariaDescripcion") Row("ClaveSATFraccionArancelariaDescripcion") = DrPS("ClaveSATFraccionArancelariaDescripcion")
Row("ClaveSATUnidadAduanaDescripcion") = DrPS("ClaveSATUnidadAduanaDescripcion") Row("ClaveSATUnidadAduanaDescripcion") = DrPS("ClaveSATUnidadAduanaDescripcion")
Row("Consec") = Consec Row("Consec") = Consec
Row("PS") = DrPS("PS") Row("PS") = DrPS("PS")
Row("CodigoPS") = DrPS("PSCodigo").ToString Row("CodigoPS") = DrPS("PSCodigo").ToString
Row("CveTipoPS") = DrPS("CveTipoPS") Row("CveTipoPS") = DrPS("CveTipoPS")
Row("CveTipoInvPS") = DrPS("Inv_CveMetodoInventario") Row("CveTipoInvPS") = DrPS("Inv_CveMetodoInventario")
Row("CveTamaño") = DrPS("CveTamaño") Row("CveTamaño") = DrPS("CveTamaño")
If CveClasificacion <= 0 Then Row("CveClasificacion") = DrPS("CveClasificacion") If CveClasificacion <= 0 Then Row("CveClasificacion") = DrPS("CveClasificacion")
If Clasificacion = "" Then Row("Clasificacion") = DrPS("Clasificacion") If Clasificacion = "" Then Row("Clasificacion") = DrPS("Clasificacion")
If DrPS("IVA").ToString.Contiene("-1", "") Then If DrPS("IVA").ToString.Contiene("-1", "") Then
Row("PorcentajeIVA") = DrSubProyecto("IVA") Row("PorcentajeIVA") = DrSubProyecto("IVA")
Else Else
Row("PorcentajeIVA") = DrPS("IVA") Row("PorcentajeIVA") = DrPS("IVA")
End If End If
Row("IVA") = Row("PorcentajeIVA") Row("IVA") = Row("PorcentajeIVA")
Row("ImporteIVA") = Math.Round(Row("PorcentajeIVA").ToString.ToDecimal * TotalCalculableImpuestos, 2) Row("ImporteIVA") = Math.Round(Row("PorcentajeIVA").ToString.ToDecimal * TotalCalculableImpuestos, 2)
Row("ImporteRetIVA") = Math.Round(ClienteRetIVA * TotalCalculableImpuestos, 2) Row("ImporteRetIVA") = Math.Round(ClienteRetIVA * TotalCalculableImpuestos, 2)
Row("ImporteRetISR") = Math.Round(ClienteRetISR * TotalCalculableImpuestos, 2) Row("ImporteRetISR") = Math.Round(ClienteRetISR * TotalCalculableImpuestos, 2)
Row("PorcentajeRetIVA") = ClienteRetIVA Row("PorcentajeRetIVA") = ClienteRetIVA
Row("PorcentajeRetISR") = ClienteRetISR Row("PorcentajeRetISR") = ClienteRetISR
Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje") Row("PorcentajeIEPS") = DrPS("IEPSPorcentaje")
Row("ImporteIEPS") = Math.Round(DrPS("IEPSPorcentaje").ToString.ToDecimal * TotalCalculableImpuestos, 2) Row("ImporteIEPS") = Math.Round(DrPS("IEPSPorcentaje").ToString.ToDecimal * TotalCalculableImpuestos, 2)
Row("IEPS") = Row("ImporteIEPS") Row("IEPS") = Row("ImporteIEPS")
Row("Descuento") = Math.Round(Descuento, 2) Row("Descuento") = Math.Round(Descuento, 2)
Row("TipoDescuento") = "2" Row("TipoDescuento") = "2"
Row("Total") = Cantidad * PU Row("Total") = Cantidad * PU
Row("TotalImporte") = Math.Round(Cantidad * PU, 2) Row("TotalImporte") = Math.Round(Cantidad * PU, 2)
Row("SATClaveProdServ") = DrPS("SATClavePS") Row("SATClaveProdServ") = DrPS("SATClavePS")
Row("SATClaveUM") = DrPS("SATClaveUnidadMedida") Row("SATClaveUM") = DrPS("SATClaveUnidadMedida")
Row("EntregaDirecta") = EntregaDirecta Row("EntregaDirecta") = EntregaDirecta
'Contratos 'Contratos
Row("CveContratoDetalle") = CveContratoDetalle Row("CveContratoDetalle") = CveContratoDetalle
Row("CveVentaDetalle") = CveVentaDetalle Row("CveVentaDetalle") = CveVentaDetalle
Row("CveMovimientoDetallePedido") = CveMovimientoDetallePedido Row("CveMovimientoDetallePedido") = CveMovimientoDetallePedido
Row("CveOrdenCompraDetalle") = CveOrdenCompraDetalle Row("CveOrdenCompraDetalle") = CveOrdenCompraDetalle
Row("CveVentaDetalleRemision") = CveVentaDetalleRemision Row("CveVentaDetalleRemision") = CveVentaDetalleRemision
Row("CveVentaDetalleCotizacion") = CveVentaDetalleCotizacion Row("CveVentaDetalleCotizacion") = CveVentaDetalleCotizacion
Row("CveVentaDetallePedido2") = CveVentaDetallePedido2 Row("CveVentaDetallePedido2") = CveVentaDetallePedido2
Row("CuentaPredial") = CuentaPredial Row("CuentaPredial") = CuentaPredial
'RECARGAR GV 'RECARGAR GV
Return Row Return Row
End Function End Function
#End Region #End Region
@@ -2353,7 +2353,7 @@ Public Class E141 : Implements IHttpHandler
#Region "D E S C A R G A - P D F" #Region "D E S C A R G A - P D F"
Private Function DescargarFactura(FilePDF As String) As Byte() Private Function DescargarFactura(FilePDF As String) As Byte()
Dim Url = New Uri(String.Format("{0}Compras/PopUpVerFactura.aspx?TipoDocto=Ing&File={1}&TipoArchivo=PDF", "http://localhost/", FilePDF)) Dim Url = New Uri(String.Format("{0}://{1}:{2}/Compras/PopUpVerFactura.aspx?TipoDocto=Ing&File={3}&TipoArchivo=PDF", HttpContext.Current.Request.Url.Scheme, HttpContext.Current.Request.Url.Host, HttpContext.Current.Request.Url.Port, FilePDF))
Dim File As Byte() = Nothing Dim File As Byte() = Nothing
Try Try
Using httpClient = New HttpClient() Using httpClient = New HttpClient()

View File

@@ -142,36 +142,49 @@
<ContentTemplate> <ContentTemplate>
<div class="row" style="margin-bottom:5px"> <div class="row" style="margin-bottom:5px">
<div class="col-md-6" runat="server" >
<label style=" ">Cuenta Depósito:</label> <div class="col-md-1" runat="server" >
<asp:DropDownList ID="DdlCuentaDeposito" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="true" DataTextField="NumCuentaMoneda" DataValueField="CveCuenta" style="width: 300px;"></asp:DropDownList> <label style=" ">Cuenta Depósito:</label>
</div>
<div class="col-md-3" runat="server" >
<asp:DropDownList ID="DdlCuentaDeposito" CssClass="form-control input-sm select2me" runat="server" AppendDataBoundItems="true" DataTextField="NumCuentaMoneda" DataValueField="CveCuenta" Width="100%"></asp:DropDownList>
</div> </div>
<div class="col-md-3" runat="server" style="text-align: left;">
<div class="col-md-1" > <div class="col-md-1" >
<label style="width:70px;">Fecha:</label> <label style="width:70px;">Fecha:</label>
</div> </div>
<div class="col-md-1" > <div class="col-md-2" runat="server" style="text-align: left;">
<div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy" style="padding-top: 0; width: 140px !important;">
<div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy" style="padding-top: 0; width: 140px !important;">
<asp:TextBox ID="TxtFecha" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox> <asp:TextBox ID="TxtFecha" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
<span class="input-group-btn "> <span class="input-group-btn ">
<asp:LinkButton ID="ImgCalendarioFecha" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton> <asp:LinkButton ID="ImgCalendarioFecha" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span> </span>
<ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="TxtFecha" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender> <ajax:MaskedEditExtender ID="MaskedEditExtender1" runat="server" TargetControlID="TxtFecha" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="TxtFecha" PopupButtonID="ImgCalendarioFecha" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender> <ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="TxtFecha" PopupButtonID="ImgCalendarioFecha" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtFecha" Display="None" ErrorMessage="El campo <b>''Fecha''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida2"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="TxtFecha" Display="None" ErrorMessage="El campo <b>''Fecha''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="TxtFecha" Display="None" ErrorMessage="El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida2"></asp:CompareValidator> <asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="TxtFecha" Display="None" ErrorMessage="El campo <b>''Fecha''</b> no tiene el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RequiredFieldValidator1" Width="350px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RequiredFieldValidator1" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="CompareValidator1" Width="350px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="CompareValidator1" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
</div> </div>
</div> </div>
<div class="col-md-1" >
<label style="width:70px;">Observaciones:</label>
</div>
<div class="col-md-2" runat="server" style="text-align: left;">
<asp:TextBox ID="TxtObservaciones" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="500"></asp:TextBox>
<asp:RequiredFieldValidator ID="RfvTxtObservaciones" runat="server" ControlToValidate="TxtObservaciones" Display="None" ErrorMessage="El campo <b>''Observaciones''</b> es requerido por la aplicación." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VceRfvTxtObservaciones" runat="server" HighlightCssClass="vco" TargetControlID="RfvTxtObservaciones" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
<div class="col-md-3" style="text-align: right; font-size:1.2em;" runat="server" id="divLabelTotal" visible="true"> <div class="col-md-2" style="text-align: right; font-size:1.2em;" runat="server" id="divLabelTotal" visible="true">
<asp:label runat="server">Seleccionado: $</asp:label> <asp:label runat="server">Seleccionado: $</asp:label>
<asp:label runat="server" ID="lblValorTotal">0.00</asp:label> <asp:label runat="server" ID="lblValorTotal">0.00</asp:label>
<asp:label runat="server" ID="lblValorTotalSeleccionado" Visible="false"></asp:label> <asp:label runat="server" ID="lblValorTotalSeleccionado" Visible="false"></asp:label>
</div> </div>
</div> </div>
</ContentTemplate> </ContentTemplate>
@@ -282,10 +295,10 @@
<Columns> <Columns>
<asp:TemplateField> <asp:TemplateField>
<HeaderTemplate> <HeaderTemplate>
<input type="checkbox" class="form-check-input" id="ChkSelector" onclick="SelectorNotas(this)"> <input type="checkbox" class="form-check-input" id="ChkSelector" onclick="SelectorNotas(this)" checked="checked" disabled >
</HeaderTemplate> </HeaderTemplate>
<ItemTemplate> <ItemTemplate>
<asp:CheckBox ID="ChkFactura" CssClass="CssSelector" runat="server"/> <asp:CheckBox ID="ChkFactura" CssClass="CssSelector" runat="server" Checked="true" Enabled="false" />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Factura"> <asp:TemplateField HeaderText="Factura">
@@ -335,7 +348,7 @@
<br /> <br />
<br /> <br />
<asp:Button ID="BtnDepositar" runat="server" Text="Depósitar" CssClass="btn btn-primary" /> <asp:Button ID="BtnDepositar" runat="server" Text="Depósitar" CssClass="btn btn-primary" ValidationGroup="Valida" />
</div> </div>
</div> </div>
</ContentTemplate> </ContentTemplate>

View File

@@ -97,6 +97,8 @@ Partial Class Bancos_DepositosCaja
ObjBancos.GetPagosCajaChica(FechaI, FechaF, UsuarioActual.CveEmpresa, DdlCajaChica.SelectedValue.ToEntero, DdlTipoPago.SelectedValue.ToEntero, CveSubProyecto:=DdlSubProyectos.SelectedValue.ToEntero, MSI:=MSI) ObjBancos.GetPagosCajaChica(FechaI, FechaF, UsuarioActual.CveEmpresa, DdlCajaChica.SelectedValue.ToEntero, DdlTipoPago.SelectedValue.ToEntero, CveSubProyecto:=DdlSubProyectos.SelectedValue.ToEntero, MSI:=MSI)
GvFacturas.DataSource = ObjBancos.DtResultados GvFacturas.DataSource = ObjBancos.DtResultados
lblValorTotal.Text = ObjBancos.DtResultados.SUM("Importe").ToString("###,###,###.00")
ObjBancos.Dispose() ObjBancos.Dispose()
@@ -108,7 +110,7 @@ Partial Class Bancos_DepositosCaja
TxtDescuento.Text = "" TxtDescuento.Text = ""
TxtIVA.Text = "" TxtIVA.Text = ""
TxtComisionIntermediario.Text = "" TxtComisionIntermediario.Text = ""
lblValorTotal.Text = "0.0" 'lblValorTotal.Text = "0.0"
lblValorTotalSeleccionado.Text = "0.0" lblValorTotalSeleccionado.Text = "0.0"
divLabelTotal.Visible = True divLabelTotal.Visible = True
DdlSubProyectoDeposito.SelectedValueExist(DdlSubProyectos.SelectedValue.ToEntero) DdlSubProyectoDeposito.SelectedValueExist(DdlSubProyectos.SelectedValue.ToEntero)
@@ -116,7 +118,11 @@ Partial Class Bancos_DepositosCaja
DdlSubProyectoIntermediario.SelectedValueExist(DdlSubProyectos.SelectedValue.ToEntero) DdlSubProyectoIntermediario.SelectedValueExist(DdlSubProyectos.SelectedValue.ToEntero)
UpGvFacturas.Update() UpGvFacturas.Update()
UpParametros.Update() UpParametros.Update()
UpComisiones.Update() UpComisiones.Update()
End Sub End Sub
Private Sub BtnDepositar_Click(sender As Object, e As EventArgs) Handles BtnDepositar.Click Private Sub BtnDepositar_Click(sender As Object, e As EventArgs) Handles BtnDepositar.Click
@@ -247,7 +253,7 @@ Partial Class Bancos_DepositosCaja
If Not FolioIE > 0 Then If Not FolioIE > 0 Then
OcurrioError = True OcurrioError = True
End If End If
CveIEOrigen = ObjBancos.AddBancos_IE(DdlCuentaDeposito.SelectedValue.ToEntero, CveTransaccionBanco, Fecha, FolioIE.ToString, "Depósito Bancario", TotalImporte, CveMoneda, 1, "Depósito Bancario", "", 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", TotalImporte, CveMoneda, 1, TxtObservaciones.Text, "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveProveedorIntermediario:=CveProveedorIntermediario)
documentos += String.Format("<a href='/Bancos/IE.aspx?CveIE={0}' target='_blank' class='Texto'>Depósito: {1}</a> &nbsp &nbsp <br/> ", CveIEOrigen, FolioIE) documentos += String.Format("<a href='/Bancos/IE.aspx?CveIE={0}' target='_blank' class='Texto'>Depósito: {1}</a> &nbsp &nbsp <br/> ", CveIEOrigen, FolioIE)
@@ -295,7 +301,7 @@ Partial Class Bancos_DepositosCaja
OcurrioError = True OcurrioError = True
Exit For Exit For
End If End If
CveIEDestino = ObjBancos.AddBancos_IE(DdlCajaChica.SelectedValue.ToEntero, 2, Fecha, FolioIE.ToString, String.Format("Depósito Bancario: {0}", SerieFolio), Importe, CveMoneda, 1, "Depósito Bancario", "", False, False, -1, NuevaCvePrePoliza, "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) CveIEDestino = ObjBancos.AddBancos_IE(DdlCajaChica.SelectedValue.ToEntero, 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 ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, Importe, SerieFolio, 30, String.Format("Depósito Bancario: {0}", SerieFolio), Fecha, IdCuentaBancariaDestino, -1, CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, CveVenta:=CveVenta, CveIE:=CveIEDestino, ImporteMX:=Importe * TipoCambio, CveCuenta:=CveCuentaBancariaDestino) Then If Not ObjContabilidad.AddPrePolizasDetalle(NuevaCvePrePoliza, True, Importe, SerieFolio, 30, String.Format("Depósito Bancario: {0}", SerieFolio), Fecha, IdCuentaBancariaDestino, -1, CveClasificacion:=CveClasificacion, CveSubProyecto:=CveSubProyecto, CveVenta:=CveVenta, CveIE:=CveIEDestino, ImporteMX:=Importe * TipoCambio, CveCuenta:=CveCuentaBancariaDestino) Then

View File

@@ -247,6 +247,23 @@
</div> </div>
</div> </div>
</div> </div>
<asp:UpdatePanel runat="server" >
<ContentTemplate>
<div class="col-md-6" runat="server" id="DvComprobante">
<asp:TextBox ID="Anexo" CssClass="ADSdropzone hidden" data-maxFile="1" Text="" runat="server"></asp:TextBox>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div> </div>
<div class="row text-center"> <div class="row text-center">

View File

@@ -108,7 +108,10 @@ public partial class Bancos_Devoluciones : ClsPaginas
divTipoDevolucion.Visible = false; divTipoDevolucion.Visible = false;
break; break;
} }
ComprobanteMuestraOculta();
CargaTipoTransaccion(tipo); CargaTipoTransaccion(tipo);
} }
protected void TipoDevolucion_SelectedIndexChanged(object sender, EventArgs e) protected void TipoDevolucion_SelectedIndexChanged(object sender, EventArgs e)
@@ -125,6 +128,23 @@ public partial class Bancos_Devoluciones : ClsPaginas
break; break;
} }
ComprobanteMuestraOculta();
}
private void ComprobanteMuestraOculta()
{
if (OpcionDevolucion.SelectedValue.ToEntero() == 3 && TipoDevolucion.SelectedValue.ToString().ToEntero() == 2)
{
Anexo.Text = "";
DvComprobante.Visible = false;
}
else
{
DvComprobante.Visible = true;
}
} }
protected void CargaTipoTransaccion(string tipo) protected void CargaTipoTransaccion(string tipo)
@@ -374,6 +394,19 @@ public partial class Bancos_Devoluciones : ClsPaginas
} }
//terminan validaciones //terminan validaciones
List<Archivo> filesgral = Anexo.getfiles().Archivos;
string filemove = "";
string Comprobante = "";
foreach(Archivo fileItem in filesgral){
Comprobante = System.IO.Path.GetExtension(String.Format("{0}Temp\\{1}", AppDomain.CurrentDomain.BaseDirectory, fileItem.filename)).Replace(".", "");
filemove = fileItem.filename;
}
ClsBancos ObjIE = new ClsBancos(); ClsBancos ObjIE = new ClsBancos();
ClsContabilidad ObjMov = new ClsContabilidad(ObjIE.IniciaTransacSQL()); ClsContabilidad ObjMov = new ClsContabilidad(ObjIE.IniciaTransacSQL());
ClsCompras ObjComp = new ClsCompras(ObjIE.IniciaTransacSQL()); ClsCompras ObjComp = new ClsCompras(ObjIE.IniciaTransacSQL());
@@ -489,7 +522,7 @@ public partial class Bancos_Devoluciones : ClsPaginas
{ {
CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero(), DdlTipoTransanccion.SelectedValue.ToEntero(), TxtFechaDocumento.Text.Trim().ToDate(), TxtFolio.Text.Trim(), PagueseA, TxtImporte.Text.Trim().ToDouble(), CveMoneda, CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero(), DdlTipoTransanccion.SelectedValue.ToEntero(), TxtFechaDocumento.Text.Trim().ToDate(), TxtFolio.Text.Trim(), PagueseA, TxtImporte.Text.Trim().ToDouble(), CveMoneda,
TC, TxtObservaciones.Text.Trim(), "", false, false, -1, CvePrePoliza, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa); TC, TxtObservaciones.Text.Trim(), "", false, false, -1, CvePrePoliza, Comprobante, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
if (CveIE > 0) if (CveIE > 0)
{ {
//GUARDA PREPOLIZAS DETALLE DEVOLUCION //GUARDA PREPOLIZAS DETALLE DEVOLUCION
@@ -648,6 +681,12 @@ public partial class Bancos_Devoluciones : ClsPaginas
} }
ObjIE.Commit(); ObjIE.Commit();
if (filemove != "")
{
filemove.FilesMove(CveIE.ToString(), String.Format("{0}IE", UsuarioActual.Empresa.Ruta), ConcatenarDirectorioBase: false);
}
if (!Msg.ToString().Equals("")) if (!Msg.ToString().Equals(""))
{ {
string AccionJS = String.Format(@"document.location.href=""{0}"";", HttpContext.Current.Request.Url.PathAndQuery); string AccionJS = String.Format(@"document.location.href=""{0}"";", HttpContext.Current.Request.Url.PathAndQuery);

View File

@@ -231,7 +231,7 @@
<asp:Literal ID="LtlTotalIngreso" runat="server" Text='<%# Eval("TotalIngresos", "{0:N2}") %>'></asp:Literal> <asp:Literal ID="LtlTotalIngreso" runat="server" Text='<%# Eval("TotalIngresos", "{0:N2}") %>'></asp:Literal>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center"> <asp:TemplateField ItemStyle-HorizontalAlign="Right">
<HeaderTemplate> <HeaderTemplate>
<asp:Label Text="Devoluciones" runat="server" CausesValidation="false"> </asp:Label> <asp:Label Text="Devoluciones" runat="server" CausesValidation="false"> </asp:Label>
<asp:Literal runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal> <asp:Literal runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
@@ -240,7 +240,16 @@
<asp:Literal ID="LtlDevoluciones" runat="server" Text='<%# Eval("Devoluciones", "{0:#,###.##}") %>'></asp:Literal> <asp:Literal ID="LtlDevoluciones" runat="server" Text='<%# Eval("Devoluciones", "{0:#,###.##}") %>'></asp:Literal>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Center"> <asp:TemplateField ItemStyle-HorizontalAlign="Right">
<HeaderTemplate>
<asp:Label Text="Importe Inicial" runat="server" CausesValidation="false"> </asp:Label>
<asp:Literal runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>
</HeaderTemplate>
<ItemTemplate>
<asp:Literal ID="LtlImporteInicial" runat="server" Text='<%# Eval("ImporteInicial", "{0:N2}") %>'></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField ItemStyle-HorizontalAlign="Right">
<HeaderTemplate> <HeaderTemplate>
<asp:Label Text="Total Caja" runat="server" CausesValidation="false"> </asp:Label> <asp:Label Text="Total Caja" runat="server" CausesValidation="false"> </asp:Label>
<asp:Literal runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal> <asp:Literal runat="server" Text=" <i class='fa fa-sort' style='color:#999' ></i>"></asp:Literal>

View File

@@ -8,10 +8,17 @@ Imports System.Collections.Generic
Partial Class Bancos_RepCortes Partial Class Bancos_RepCortes
Inherits ClsPaginas Inherits ClsPaginas
Private Shared missing As Object = System.Reflection.Missing.Value Private Shared missing As Object = System.Reflection.Missing.Value
#Region "PROPIEDADES" #Region "PROPIEDADES"
Private Property DtCortes As DataTable
Get
Return CType(ViewState("DtCortes"), DataTable)
End Get
Set(value As DataTable)
ViewState("DtCortes") = value
End Set
End Property
Private Property DtCortesVentasResumen As DataTable Private Property DtCortesVentasResumen As DataTable
Get Get
Return CType(ViewState("DtCortesVentasResumen"), DataTable) Return CType(ViewState("DtCortesVentasResumen"), DataTable)
@@ -67,16 +74,20 @@ Partial Class Bancos_RepCortes
#Region " C A R G A - D A T O S " #Region " C A R G A - D A T O S "
Public Sub CargaDatos() Public Sub CargaDatos()
Dim ObjPuntoVenta As New ClsPuntoVenta
Dim FechaI As Date = If(txtFechaVI.Text <> "", txtFechaVI.Text.ToDate, MinFecha) Dim FechaI As Date = If(txtFechaVI.Text <> "", txtFechaVI.Text.ToDate, MinFecha)
Dim FechaF As Date = If(txtFechaVF.Text <> "", txtFechaVF.Text.ToDate, MaxFecha) Dim FechaF As Date = If(txtFechaVF.Text <> "", txtFechaVF.Text.ToDate, MaxFecha)
Dim ObjPuntoVenta As New ClsPuntoVenta
If ObjPuntoVenta.GetVta_ReporteCortes(UsuarioActual.CveEmpresa, FechaI, FechaF, DdlSubProyectos.SelectedValue.ToEntero) Then If ObjPuntoVenta.GetVta_ReporteCortes(UsuarioActual.CveEmpresa, FechaI, FechaF, DdlSubProyectos.SelectedValue.ToEntero) Then
GvDatos.DataSource = ObjPuntoVenta.DtResultados DtCortes = ObjPuntoVenta.DtResultados.Copy()
GvDatos.DataBind()
UPDatos.Update()
End If End If
ObjPuntoVenta.Dispose() ObjPuntoVenta.Dispose()
GvDatos.DataSource = DtCortes
GvDatos.DataBind()
UPDatos.Update()
End Sub End Sub
#End Region #End Region
@@ -85,6 +96,9 @@ Partial Class Bancos_RepCortes
If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.DBCampo("CveCorte").ToString = "" Then If e.Row.DBCampo("CveCorte").ToString = "" Then
e.Row.CssClass = "SubTotales2" e.Row.CssClass = "SubTotales2"
If DtCortes IsNot Nothing Then
e.Row.FCLiteral("LtlImporteInicial").Text = DtCortes.SUMD("ImporteInicial").FormatoNumero(2)
End If
End If End If
End If End If
End Sub End Sub

View File

@@ -6237,7 +6237,7 @@ Partial Class Compras_Compras
If Not DdlTipoComprobante.SelectedValue.Contiene("Ant") Then If Not DdlTipoComprobante.SelectedValue.Contiene("Ant") Then
importeMovimiento = ImporteIEPSAcreditable importeMovimiento = ImporteIEPSAcreditable
importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero
End If End If
@@ -6246,7 +6246,7 @@ Partial Class Compras_Compras
'Agregamos el Opuesto del 26 -> 25 'Agregamos el Opuesto del 26 -> 25
If importeMovimiento <> 0 Then If importeMovimiento <> 0 Then
Dim IdCtaIEPS As Integer = 0 Dim IdCtaIEPS As Integer = 0
If ObjConta.GetRetCuenta(25, UsuarioActual.CveEmpresa) Then If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(25, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaIEPS = ObjConta.DtResultados.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero IdCtaIEPS = ObjConta.DtResultados.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero
End If End If
@@ -6294,18 +6294,26 @@ Partial Class Compras_Compras
importeMovimiento = importeRetIVAAcreditable importeMovimiento = importeRetIVAAcreditable
importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador
If CtaProveedorRetIVA > 0 Then
IdCtaContable = CtaProveedorRetIVA If UsuarioActual.Empresa.TipoContabilidad = 2 Then
ElseIf UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero If CtaProveedorRetIVA > 0 Then
Else IdCtaContable = CtaProveedorRetIVA
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then ElseIf UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero > 0 Then
If ObjConta.DtResultados.Rows.Count > 0 Then IdCtaContable = UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
End If
End If End If
End If End If
End If End If
'Agregamos el Opuesto del 22 -> 15 'Agregamos el Opuesto del 22 -> 15
If importeMovimiento <> 0 Then If importeMovimiento <> 0 Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, ConceptoContableContra, Concepto + If(tipoCambioActual > 1, $" TC {tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}", ""), FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveAcreedor:=CveAcreedor, CveIE:=CveIE, CvePersonal:=CvePersonal, CveColectiva:=CveColectiva, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMovimiento * tipoCambioActual, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza, TipoCambio:=tipoCambioActual) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, ConceptoContableContra, Concepto + If(tipoCambioActual > 1, $" TC {tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}", ""), FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveAcreedor:=CveAcreedor, CveIE:=CveIE, CvePersonal:=CvePersonal, CveColectiva:=CveColectiva, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMovimiento * tipoCambioActual, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza, TipoCambio:=tipoCambioActual) Then
@@ -6343,18 +6351,24 @@ Partial Class Compras_Compras
importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador
If tipoCambioActual > 1 Then Concepto += $" TC{tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}" If tipoCambioActual > 1 Then Concepto += $" TC{tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}"
If CtaProveedorRetIVA > 0 Then
IdCtaContable = CtaProveedorRetIVA If UsuarioActual.Empresa.TipoContabilidad = 2 Then
ElseIf UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero > 0 Then If CtaProveedorRetIVA > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero IdCtaContable = CtaProveedorRetIVA
Else ElseIf UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero > 0 Then
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then IdCtaContable = UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero
If ObjConta.DtResultados.Rows.Count > 0 Then Else
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
End If
End If End If
End If End If
End If End If
End If End If
End If End If
@@ -6381,18 +6395,22 @@ Partial Class Compras_Compras
importeMovimiento = importeRetISRAcreditable importeMovimiento = importeRetISRAcreditable
importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador
If CtaProveedorRetISR > 0 Then
IdCtaContable = CtaProveedorRetISR If UsuarioActual.Empresa.TipoContabilidad = 2 Then
ElseIf UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero > 0 Then If CtaProveedorRetISR > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero IdCtaContable = CtaProveedorRetISR
Else ElseIf UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero > 0 Then
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then IdCtaContable = UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero
If ObjConta.DtResultados.Rows.Count > 0 Then Else
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
End If
End If End If
End If End If
End If End If
'Agregamos el Opuesto del 23 -> 16 'Agregamos el Opuesto del 23 -> 16
If importeMovimiento <> 0 Then If importeMovimiento <> 0 Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, ConceptoContableContra, Concepto + If(tipoCambioActual > 1, $" TC {tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}", ""), FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveAcreedor:=CveAcreedor, CveIE:=CveIE, CvePersonal:=CvePersonal, CveColectiva:=CveColectiva, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMovimiento * tipoCambioActual, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not TipoMovimiento, importeMovimiento, Referencia, ConceptoContableContra, Concepto + If(tipoCambioActual > 1, $" TC {tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}", ""), FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveAcreedor:=CveAcreedor, CveIE:=CveIE, CvePersonal:=CvePersonal, CveColectiva:=CveColectiva, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMovimiento * tipoCambioActual, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), Contabilizable:=SeContabiliza) Then
@@ -6421,19 +6439,22 @@ Partial Class Compras_Compras
importeMovimiento = importeRetISRxAcreditar importeMovimiento = importeRetISRxAcreditar
importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador importeMN = Math.Round(importeMovimiento, 2) * tipoCambioActual * Multiplicador
If tipoCambioActual > 1 Then Concepto += $" TC{tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}" If tipoCambioActual > 1 Then Concepto += $" TC{tipoCambioActual} ${importeMovimiento.FormatoNumero(2)}"
If CtaProveedorRetISR > 0 Then
IdCtaContable = CtaProveedorRetISR
ElseIf UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero > 0 Then If UsuarioActual.Empresa.TipoContabilidad = 2 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero If CtaProveedorRetISR > 0 Then
Else IdCtaContable = CtaProveedorRetISR
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then ElseIf UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero > 0 Then
If ObjConta.DtResultados.Rows.Count > 0 Then IdCtaContable = UsuarioActual.Empresa.Funcionalidad(funcionalidad).ToEntero
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
End If
End If End If
End If End If
End If End If
End If End If
End If End If
@@ -6506,7 +6527,8 @@ Partial Class Compras_Compras
For Each Row2 As DataRow In DT.Rows For Each Row2 As DataRow In DT.Rows
importeMovimiento = If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, Row2("ImporteSinImpuestos").ToString.ToDecimal, Row2("Total").ToString.ToDecimal) importeMovimiento = If(ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 AndAlso TxtTotal.Text.ToDecimal = 0, Row2("ImporteSinImpuestos").ToString.ToDecimal, Row2("Total").ToString.ToDecimal)
importeMN = importeMovimiento * tipoCambioActual * Multiplicador importeMN = importeMovimiento * tipoCambioActual * Multiplicador
If ObjConta.GetRetCuenta(49, Row2("CveActivoFijo").ToString.ToEntero) Then
If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(49, Row2("CveActivoFijo").ToString.ToEntero) Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContActivoFijo").ToString.ToEntero IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContActivoFijo").ToString.ToEntero
End If End If
@@ -6555,12 +6577,15 @@ Partial Class Compras_Compras
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"), $"CveAlmacen = {RowDetalle("CveAlmacen")}").ToString.ToDecimal + TmpDT.SUM("CostoIndirectoAlmacen", $"CveAlmacen = {RowDetalle("CveAlmacen")}").ToString.ToDecimal 'Row2("Total").ToString.ToDecimal + Row2("CostoIndirectoAlmacen").ToString.ToDecimal 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"), $"CveAlmacen = {RowDetalle("CveAlmacen")}").ToString.ToDecimal + TmpDT.SUM("CostoIndirectoAlmacen", $"CveAlmacen = {RowDetalle("CveAlmacen")}").ToString.ToDecimal 'Row2("Total").ToString.ToDecimal + Row2("CostoIndirectoAlmacen").ToString.ToDecimal
importeMN = importeMovimiento * tipoCambioActual * Multiplicador importeMN = importeMovimiento * tipoCambioActual * Multiplicador
If ObjConta.GetRetCuenta(6, RowDetalle("CveClasificacion").ToString().ToEntero()) Then If UsuarioActual.Empresa.TipoContabilidad = 2 Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.GetRetCuenta(6, RowDetalle("CveClasificacion").ToString().ToEntero()) Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero
End If
End If End If
End If End If
If importeMN <> 0 Then If importeMN <> 0 Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMN, Referencia, 6, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveAcreedor:=CveAcreedor, CveIE:=CveIE, CvePersonal:=CvePersonal, CveColectiva:=CveColectiva, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual, If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMN, Referencia, 6, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, CveAcreedor:=CveAcreedor, CveIE:=CveIE, CvePersonal:=CvePersonal, CveColectiva:=CveColectiva, CveCreditoDetalle:=CveCreditoDetalle, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), TipoCambio:=tipoCambioActual,
CveClasificacion:=RowDetalle("CveClasificacion").ToString().ToEntero(), CveSubProyecto:=RowDetalle("CveSubProyecto").ToString().ToEntero(), Contabilizable:=SeContabiliza) Then CveClasificacion:=RowDetalle("CveClasificacion").ToString().ToEntero(), CveSubProyecto:=RowDetalle("CveSubProyecto").ToString().ToEntero(), Contabilizable:=SeContabiliza) Then
@@ -6574,11 +6599,16 @@ Partial Class Compras_Compras
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"), $"CveAlmacen = {Row2("CveAlmacen")}").ToString.ToDecimal + TmpDT.SUM("CostoIndirectoAlmacen", $"CveAlmacen = {Row2("CveAlmacen")}").ToString.ToDecimal 'Row2("Total").ToString.ToDecimal + Row2("CostoIndirectoAlmacen").ToString.ToDecimal 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"), $"CveAlmacen = {Row2("CveAlmacen")}").ToString.ToDecimal + TmpDT.SUM("CostoIndirectoAlmacen", $"CveAlmacen = {Row2("CveAlmacen")}").ToString.ToDecimal 'Row2("Total").ToString.ToDecimal + Row2("CostoIndirectoAlmacen").ToString.ToDecimal
importeMN = importeMovimiento * tipoCambioActual * Multiplicador importeMN = importeMovimiento * tipoCambioActual * Multiplicador
If ObjConta.GetRetCuenta(68, GvInv.HeaderRow.FCDropDownList("ddlAlmacen").SelectedValue.ToString.ToEntero) Then
If ObjConta.DtResultados.Rows.Count > 0 Then If UsuarioActual.Empresa.TipoContabilidad = 2 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero If ObjConta.GetRetCuenta(68, GvInv.HeaderRow.FCDropDownList("ddlAlmacen").SelectedValue.ToString.ToEntero) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero
End If
End If End If
End If End If
If importeMN <> 0 Then If importeMN <> 0 Then
'Conta ContPAQ 'Conta ContPAQ
If IdCtaContable = 0 Then If IdCtaContable = 0 Then
@@ -6659,23 +6689,27 @@ Partial Class Compras_Compras
importeMN = importeMovimiento * tipoCambioActual * Multiplicador 'TIENE QUE TENER EL IMPORTEMN IGUAL AL IMPORTEMOVIMIENTO PORQUE NO TOMA EN CUENTA SI UN PRODUCTO ES TIPO SERVICIO importeMN = importeMovimiento * tipoCambioActual * Multiplicador 'TIENE QUE TENER EL IMPORTEMN IGUAL AL IMPORTEMOVIMIENTO PORQUE NO TOMA EN CUENTA SI UN PRODUCTO ES TIPO SERVICIO
End Select End Select
If ConceptoContabilizacion = 6 Then If UsuarioActual.Empresa.TipoContabilidad = 2 Then
If ObjConta.GetRetCuenta(ConceptoContabilizacion, UsuarioActual.CveEmpresa) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then If ConceptoContabilizacion = 6 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero If ObjConta.GetRetCuenta(ConceptoContabilizacion, UsuarioActual.CveEmpresa) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero
End If
Else
If ObjConta.GetRetCuenta(ConceptoContabilizacion, UsuarioActual.CveEmpresa) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero
End If
End If End If
Else
If ObjConta.GetRetCuenta(ConceptoContabilizacion, UsuarioActual.CveEmpresa) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.GetRetCuenta(ConceptoContabilizacionME, UsuarioActual.CveEmpresa) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero IdCtaContableME = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero
End If
If ObjConta.GetRetCuenta(ConceptoContabilizacionMEComp, UsuarioActual.CveEmpresa) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContableMEComp = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero
End If End If
End If End If
If ObjConta.GetRetCuenta(ConceptoContabilizacionME, UsuarioActual.CveEmpresa) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContableME = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero
End If
If ObjConta.GetRetCuenta(ConceptoContabilizacionMEComp, UsuarioActual.CveEmpresa) AndAlso ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContableMEComp = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero
End If
Dim CveMovimientoAlmacen As Integer = -1 Dim CveMovimientoAlmacen As Integer = -1
'If importeMovimiento <> 0 Then 'If importeMovimiento <> 0 Then
@@ -6777,7 +6811,7 @@ Partial Class Compras_Compras
For Each RowDetalle As DataRow In TmpDT.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "CveSubProyecto"}).Rows For Each RowDetalle As DataRow In TmpDT.FiltraParametros("ISNULL(TipoAF,0) <> 2", "", {"CveClasificacion", "CveSubProyecto"}).Rows
If ObjConta.GetRetCuenta(6, RowDetalle("CveClasificacion").ToString().ToEntero()) Then If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(6, RowDetalle("CveClasificacion").ToString().ToEntero()) Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero
End If End If
@@ -6835,7 +6869,7 @@ Partial Class Compras_Compras
CveMovimientoDevolucion = Devolucion.CveMovimiento CveMovimientoDevolucion = Devolucion.CveMovimiento
End If End If
If ObjConta.GetRetCuenta(ConceptoContabilizacionNC, UsuarioActual.CveEmpresa) Then If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(ConceptoContabilizacionNC, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero
End If End If
@@ -7054,7 +7088,7 @@ Partial Class Compras_Compras
'CLASIFICACION 'CLASIFICACION
If Row2("CveClasificacion").ToString.ToEntero > 0 AndAlso DdlTipoComprobante.SelectedValue = "Fac" Then If Row2("CveClasificacion").ToString.ToEntero > 0 AndAlso DdlTipoComprobante.SelectedValue = "Fac" Then
If ObjConta.GetRetCuenta(6, Row2("CveClasificacion").ToString.ToEntero, CveSubProyecto:=Row2("CveSubProyecto").ToString.ToEntero) Then If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(6, Row2("CveClasificacion").ToString.ToEntero, CveSubProyecto:=Row2("CveSubProyecto").ToString.ToEntero) Then
If ObjConta.DtResultados.Rows.Count > 0 AndAlso ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero > 0 Then If ObjConta.DtResultados.Rows.Count > 0 AndAlso ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaGasto").ToString.ToEntero
Else Else
@@ -7168,7 +7202,8 @@ Partial Class Compras_Compras
Case 59 'Documentos Case 59 'Documentos
importeMovimiento = importeCreditos importeMovimiento = importeCreditos
importeMN = importeMovimiento * tipoCambioActual * Multiplicador importeMN = importeMovimiento * tipoCambioActual * Multiplicador
If ObjConta.GetRetCuenta(ConceptoContable, CveProveedor) Then
If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(ConceptoContable, CveProveedor) Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContable").ToString.ToEntero
@@ -7351,7 +7386,8 @@ Partial Class Compras_Compras
Case 29 'Funcionarios y Empleados Case 29 'Funcionarios y Empleados
importeMovimiento = importeFE importeMovimiento = importeFE
importeMN = importeMovimiento * tipoCambioActual * Multiplicador importeMN = importeMovimiento * tipoCambioActual * Multiplicador
If ObjConta.GetRetCuenta(ConceptoContable, CvePersonal) Then
If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(ConceptoContable, CvePersonal) Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContPersonal").ToString.ToEntero IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCtaContPersonal").ToString.ToEntero
End If End If
@@ -7367,12 +7403,12 @@ Partial Class Compras_Compras
Dim PorcentajeImpuestoAnticipo = PorcentajeIVA Dim PorcentajeImpuestoAnticipo = PorcentajeIVA
CtaIvaxAcreditar = If(IdCtaIVAXAcreditar > 0, IdCtaIVAXAcreditar, 0) CtaIvaxAcreditar = If(IdCtaIVAXAcreditar > 0, IdCtaIVAXAcreditar, 0)
CtaIvaAcreditable = If(IdCtaIVAAcreditable > 0, IdCtaIVAAcreditable, 0) CtaIvaAcreditable = If(IdCtaIVAAcreditable > 0, IdCtaIVAAcreditable, 0)
If ObjConta.GetRetCuenta(14, UsuarioActual.CveEmpresa) And Not CtaIvaxAcreditar > 0 Then If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(14, UsuarioActual.CveEmpresa) And Not CtaIvaxAcreditar > 0 Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
CtaIvaxAcreditar = ObjConta.DtResultados.Rows(0)("IdCuentaIVAxAcreditar").ToString.ToEntero CtaIvaxAcreditar = ObjConta.DtResultados.Rows(0)("IdCuentaIVAxAcreditar").ToString.ToEntero
End If End If
End If End If
If ObjConta.GetRetCuenta(19, UsuarioActual.CveEmpresa) And Not CtaIvaAcreditable > 0 Then If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso ObjConta.GetRetCuenta(19, UsuarioActual.CveEmpresa) And Not CtaIvaAcreditable > 0 Then
If ObjConta.DtResultados.Rows.Count > 0 Then If ObjConta.DtResultados.Rows.Count > 0 Then
CtaIvaAcreditable = ObjConta.DtResultados.Rows(0)("IdCuentaIVAAcreditable").ToString.ToEntero CtaIvaAcreditable = ObjConta.DtResultados.Rows(0)("IdCuentaIVAAcreditable").ToString.ToEntero
End If End If
@@ -9261,28 +9297,6 @@ Partial Class Compras_Compras
End If End If
End If End If
'If DdlRetIVAConcepto.SelectedValue.ToEntero = 1 Then
' ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2)
' importeMN = ImporteMovimiento * tipoCambio
' If CtaProveedorRetIVA > 0 Then
' IdCtaContable = CtaProveedorRetIVA
' ElseIf UsuarioActual.Empresa.Funcionalidad(307).ToEntero > 0 Then
' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(307).ToEntero
' Else
' If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
' If ObjConta.DtResultados.Rows.Count > 0 Then
' IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
' End If
' End If
' End If
'End If
End If End If
End If End If
Case 22 'RetIVA Acreditable Honorarios/Serv. Prof. Case 22 'RetIVA Acreditable Honorarios/Serv. Prof.
@@ -9349,168 +9363,11 @@ Partial Class Compras_Compras
End If End If
End If End If
''Dim Funcionalidad As Integer = 0
'If DdlRetIVAConcepto.SelectedValue.ToEntero = 1 Then
' Funcionalidad = 307
'ElseIf DdlRetIVAConcepto.SelectedValue.ToEntero = 2 Then
' Funcionalidad = 310
'ElseIf DdlRetIVAConcepto.SelectedValue.ToEntero = 3 Then
' Funcionalidad = 312
'ElseIf DdlRetIVAConcepto.SelectedValue.ToEntero = 4 Then
' Funcionalidad = 314
'ElseIf DdlRetIVAConcepto.SelectedValue.ToEntero = 5 Then
' Funcionalidad = 578
'End If
'ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2)
'importeMN = ImporteMovimiento * tipoCambioNC
'If CtaProveedorRetIVA > 0 Then
' IdCtaContable = CtaProveedorRetIVA
'ElseIf UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero > 0 Then
' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(Funcionalidad).ToEntero
'Else
' If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
' If ObjConta.DtResultados.Rows.Count > 0 Then
' IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
' End If
' End If
'End If
End If End If
End If End If
Case 183 'RetIVA x Acreditar Fletes P.F.
If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then
If DdlRetIVAConcepto.Items.Count > 0 Then
If DdlRetIVAConcepto.SelectedValue.ToEntero = 2 Then
ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2)
importeMN = ImporteMovimiento * tipoCambio
If CtaProveedorRetIVA > 0 Then
IdCtaContable = CtaProveedorRetIVA
ElseIf UsuarioActual.Empresa.Funcionalidad(309).ToEntero > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(309).ToEntero
Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
End If
End If
End If
End If
End If
End If
Case 184 'RetIVA Acreditable Fletes P.F.
If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then
If DdlRetIVAConcepto.Items.Count > 0 Then
If DdlRetIVAConcepto.SelectedValue.ToEntero = 2 Then
ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2)
importeMN = ImporteMovimiento * tipoCambio
If CtaProveedorRetIVA > 0 Then
IdCtaContable = CtaProveedorRetIVA
ElseIf UsuarioActual.Empresa.Funcionalidad(310).ToEntero > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(310).ToEntero
Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
End If
End If
End If
End If
End If
End If
Case 185 'RetIVA x Acreditar Fletes P.M.
If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then
If DdlRetIVAConcepto.Items.Count > 0 Then
If DdlRetIVAConcepto.SelectedValue.ToEntero = 3 Then
ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2)
importeMN = ImporteMovimiento * tipoCambio
If CtaProveedorRetIVA > 0 Then
IdCtaContable = CtaProveedorRetIVA
ElseIf UsuarioActual.Empresa.Funcionalidad(311).ToEntero > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(311).ToEntero
Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
End If
End If
End If
End If
End If
End If
Case 186 'RetIVA Acreditable Fletes P.M.
If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then
If DdlRetIVAConcepto.Items.Count > 0 Then
If DdlRetIVAConcepto.SelectedValue.ToEntero = 3 Then
ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2)
importeMN = ImporteMovimiento * tipoCambio
If CtaProveedorRetIVA > 0 Then
IdCtaContable = CtaProveedorRetIVA
ElseIf UsuarioActual.Empresa.Funcionalidad(312).ToEntero > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(312).ToEntero
Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
End If
End If
End If
End If
End If
End If
Case 248 'RetIVA x Acreditar Arrendamiento
If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then
If DdlRetIVAConcepto.Items.Count > 0 Then
If DdlRetIVAConcepto.SelectedValue.ToEntero = 4 Then
ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2)
importeMN = ImporteMovimiento * tipoCambio
If CtaProveedorRetIVA > 0 Then
IdCtaContable = CtaProveedorRetIVA
ElseIf UsuarioActual.Empresa.Funcionalidad(313).ToEntero > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(313).ToEntero
Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
End If
End If
End If
End If
End If
End If
Case 249 'RetIVA Acreditable Arrendamiento
If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then
If DdlRetIVAConcepto.Items.Count > 0 Then
If DdlRetIVAConcepto.SelectedValue.ToEntero = 4 Then
ImporteMovimiento = Math.Round(PorcentajePago * TxtRetIVA.Text.ToDecimal, 2)
importeMN = ImporteMovimiento * tipoCambio
If CtaProveedorRetIVA > 0 Then
IdCtaContable = CtaProveedorRetIVA
ElseIf UsuarioActual.Empresa.Funcionalidad(314).ToEntero > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(314).ToEntero
Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
End If
End If
End If
End If
End If
End If
Case 16 'RetISR x Acreditar Case 16 'RetISR x Acreditar
If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then
'If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then 'If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV") Then
@@ -9549,20 +9406,6 @@ Partial Class Compras_Compras
End If End If
End If End If
'ImporteMovimiento = Math.Round(PorcentajePago * TxtRetISR.Text.ToDecimal, 2)
'importeMN = ImporteMovimiento * tipoCambio
'If CtaProveedorRetISR > 0 Then
' IdCtaContable = CtaProveedorRetISR
'ElseIf UsuarioActual.Empresa.Funcionalidad(315).ToEntero > 0 Then
' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(315).ToEntero
'Else
' If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
' If ObjConta.DtResultados.Rows.Count > 0 Then
' IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
' End If
' End If
'End If
End If End If
End If End If
@@ -9619,63 +9462,13 @@ Partial Class Compras_Compras
End If End If
End If End If
'ImporteMovimiento = Math.Round(PorcentajePago * TxtRetISR.Text.ToDecimal, 2)
'importeMN = ImporteMovimiento * tipoCambio
'If CtaProveedorRetISR > 0 Then
' IdCtaContable = CtaProveedorRetISR
'ElseIf UsuarioActual.Empresa.Funcionalidad(316).ToEntero > 0 Then
' IdCtaContable = UsuarioActual.Empresa.Funcionalidad(316).ToEntero
'Else
' If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
' If ObjConta.DtResultados.Rows.Count > 0 Then
' IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
' End If
' End If
'End If
End If
End If
Case 243 'RetISR X Acreditar Terceros y Arrendamiento
If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then
If DdlRetISRConcepto.Items.Count > 0 AndAlso DdlRetISRConcepto.SelectedValue.ToEntero = 2 Then
ImporteMovimiento = Math.Round(PorcentajePago * TxtRetISR.Text.ToDecimal, 2)
importeMN = ImporteMovimiento * tipoCambio
If CtaProveedorRetISR > 0 Then
IdCtaContable = CtaProveedorRetISR
ElseIf UsuarioActual.Empresa.Funcionalidad(317).ToEntero > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(317).ToEntero
Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
End If
End If
End If
End If
End If
Case 244 'RetISR Acreditable Terceros y Arrendamiento
If Not gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then
If DdlRetISRConcepto.Items.Count > 0 AndAlso DdlRetISRConcepto.SelectedValue.ToEntero = 2 Then
ImporteMovimiento = Math.Round(PorcentajePago * TxtRetISR.Text.ToDecimal, 2)
importeMN = ImporteMovimiento * tipoCambio
If CtaProveedorRetISR > 0 Then
IdCtaContable = CtaProveedorRetISR
ElseIf UsuarioActual.Empresa.Funcionalidad(318).ToEntero > 0 Then
IdCtaContable = UsuarioActual.Empresa.Funcionalidad(318).ToEntero
Else
If ObjConta.GetRetCuenta(ConceptoContable, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjConta.DtResultados.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
End If
End If
End If
End If End If
End If End If
Case 64 'GANANCIA Case 64 'GANANCIA
If gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then 'SOLO SE IMPLEMENTÓ PARA NC If gvr.DataKey("TipoDocto").Contiene("NC", "DEV", "Ant") Then 'SOLO SE IMPLEMENTÓ PARA NC
If DdlMoneda.SelectedValue.ToEntero <> 1 Or gvr.DataKey("CveMoneda").ToEntero <> 1 Then If DdlMoneda.SelectedValue.ToEntero <> 1 Or gvr.DataKey("CveMoneda").ToEntero <> 1 Then

View File

@@ -3037,7 +3037,7 @@ Partial Class Compras_eFacturas
ObjCompraFolios.Dispose() ObjCompraFolios.Dispose()
DTDocumentosRelacionados = DTDocumentosRelacionados.FiltraParametros("CveIE > 0 AND LEN(IdDocumento) > 0") DTDocumentosRelacionados = DTDocumentosRelacionados.FiltraParametros(" LEN(IdDocumento) > 0 ")
GVPDocumentosRelacionadosPagos.DataSource = DTDocumentosRelacionados GVPDocumentosRelacionadosPagos.DataSource = DTDocumentosRelacionados
GVPDocumentosRelacionadosPagos.DataBind() GVPDocumentosRelacionadosPagos.DataBind()

View File

@@ -37,6 +37,14 @@
<DataField>Envase</DataField> <DataField>Envase</DataField>
<rd:TypeName>System.String</rd:TypeName> <rd:TypeName>System.String</rd:TypeName>
</Field> </Field>
<Field Name="ImpManifiesto">
<DataField>ImpManifiesto</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="TipoTarima">
<DataField>TipoTarima</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Cultivo"> <Field Name="Cultivo">
<DataField>Cultivo</DataField> <DataField>Cultivo</DataField>
<rd:TypeName>System.String</rd:TypeName> <rd:TypeName>System.String</rd:TypeName>
@@ -68,16 +76,16 @@
<TablixBody> <TablixBody>
<TablixColumns> <TablixColumns>
<TablixColumn> <TablixColumn>
<Width>2.45401cm</Width> <Width>2.59615cm</Width>
</TablixColumn> </TablixColumn>
<TablixColumn> <TablixColumn>
<Width>2.30818cm</Width> <Width>2.45032cm</Width>
</TablixColumn> </TablixColumn>
<TablixColumn> <TablixColumn>
<Width>1.99068cm</Width> <Width>2.13282cm</Width>
</TablixColumn> </TablixColumn>
<TablixColumn> <TablixColumn>
<Width>2.2288cm</Width> <Width>2.37094cm</Width>
</TablixColumn> </TablixColumn>
</TablixColumns> </TablixColumns>
<TablixRows> <TablixRows>
@@ -505,9 +513,9 @@
</TablixMembers> </TablixMembers>
</TablixRowHierarchy> </TablixRowHierarchy>
<Top>0.3175cm</Top> <Top>0.3175cm</Top>
<Left>10.3553cm</Left> <Left>9.78675cm</Left>
<Height>3cm</Height> <Height>3cm</Height>
<Width>8.98167cm</Width> <Width>9.55023cm</Width>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -1146,7 +1154,7 @@
<TablixMember /> <TablixMember />
</TablixMembers> </TablixMembers>
</TablixRowHierarchy> </TablixRowHierarchy>
<Top>18.67696cm</Top> <Top>19.44425cm</Top>
<Left>3.27925cm</Left> <Left>3.27925cm</Left>
<Height>1.58833cm</Height> <Height>1.58833cm</Height>
<Width>14.27209cm</Width> <Width>14.27209cm</Width>
@@ -4568,7 +4576,7 @@
</TextRun> </TextRun>
</TextRuns> </TextRuns>
<Style> <Style>
<TextAlign>Right</TextAlign> <TextAlign>Left</TextAlign>
</Style> </Style>
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
@@ -6845,13 +6853,16 @@
<Width>1.68042cm</Width> <Width>1.68042cm</Width>
</TablixColumn> </TablixColumn>
<TablixColumn> <TablixColumn>
<Width>7.32708cm</Width> <Width>5.85895cm</Width>
</TablixColumn> </TablixColumn>
<TablixColumn> <TablixColumn>
<Width>3.69064cm</Width> <Width>3.10853cm</Width>
</TablixColumn> </TablixColumn>
<TablixColumn> <TablixColumn>
<Width>4.65604cm</Width> <Width>3.16148cm</Width>
</TablixColumn>
<TablixColumn>
<Width>3.5448cm</Width>
</TablixColumn> </TablixColumn>
</TablixColumns> </TablixColumns>
<TablixRows> <TablixRows>
@@ -7011,6 +7022,57 @@
</Textbox> </Textbox>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="Textbox12">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Tarima</Value>
<Style />
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox12</rd:DefaultName>
<Style>
<Border>
<Style>Solid</Style>
<Width>2pt</Width>
</Border>
<TopBorder>
<Color>Black</Color>
<Style>Solid</Style>
<Width>2pt</Width>
</TopBorder>
<BottomBorder>
<Color>Black</Color>
<Style>Solid</Style>
<Width>2pt</Width>
</BottomBorder>
<LeftBorder>
<Color>Black</Color>
<Style>Solid</Style>
<Width>2pt</Width>
</LeftBorder>
<RightBorder>
<Color>Black</Color>
<Style>Solid</Style>
<Width>2pt</Width>
</RightBorder>
<BackgroundColor>Silver</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell> <TablixCell>
<CellContents> <CellContents>
<Textbox Name="Textbox1"> <Textbox Name="Textbox1">
@@ -7214,6 +7276,38 @@
</Textbox> </Textbox>
</CellContents> </CellContents>
</TablixCell> </TablixCell>
<TablixCell>
<CellContents>
<Textbox Name="TipoTarima">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=IIf(Fields!ImpManifiesto.Value.ToString() ="1",Fields!TipoTarima.Value.ToString() ,"")</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>TipoTarima</rd:DefaultName>
<Style>
<Border>
<Color>LightGrey</Color>
<Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCell>
<TablixCell> <TablixCell>
<CellContents> <CellContents>
<Textbox Name="Etiqueta"> <Textbox Name="Etiqueta">
@@ -7287,6 +7381,11 @@
<TablixMember /> <TablixMember />
<TablixMember /> <TablixMember />
<TablixMember /> <TablixMember />
<TablixMember>
<Visibility>
<Hidden>=(MAX(Fields!ImpManifiesto.Value.ToString() )&lt;&gt;"1")</Hidden>
</Visibility>
</TablixMember>
<TablixMember /> <TablixMember />
<TablixMember /> <TablixMember />
</TablixMembers> </TablixMembers>
@@ -7314,10 +7413,10 @@
</Style> </Style>
</Tablix> </Tablix>
</ReportItems> </ReportItems>
<Height>8.07349in</Height> <Height>8.28054in</Height>
<Style /> <Style />
</Body> </Body>
<Width>7.64435in</Width> <Width>7.67548in</Width>
<Page> <Page>
<PageHeight>29.7cm</PageHeight> <PageHeight>29.7cm</PageHeight>
<PageWidth>21cm</PageWidth> <PageWidth>21cm</PageWidth>

View File

@@ -18,8 +18,8 @@ Partial Class Inicio
Dim retorno As Boolean = False Dim retorno As Boolean = False
Try Try
Dim objServicio As Cancelacion.CancelacionSoapClient = New Cancelacion.CancelacionSoapClient() Dim objServicio As New Cancelacion2022.CancelacionSoapClient()
Dim resp As Cancelacion.StructCancel = objServicio.ObtienePendientes(RFC, "UserTest", "1234567890") Dim resp As Cancelacion2022.StructCancel = objServicio.ObtienePendientes(RFC, "UserTest", "1234567890")
If resp.Estado = 0 Then If resp.Estado = 0 Then
Dim XmlPendientes As String = System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(resp.Xml)) Dim XmlPendientes As String = System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(resp.Xml))
Dim theReader As IO.StringReader = New IO.StringReader(XmlPendientes) Dim theReader As IO.StringReader = New IO.StringReader(XmlPendientes)
@@ -1256,11 +1256,11 @@ Partial Class Inicio
' Dim filePath As String = $"{Server.MapPath("~")}\Documentacion\140\{DirectCast(sender, LinkButton).Attributes("NombreArchivo")}" ' Dim filePath As String = $"{Server.MapPath("~")}\Documentacion\140\{DirectCast(sender, LinkButton).Attributes("NombreArchivo")}"
' Dim Archivo As New System.IO.FileInfo(filePath) ' Dim Archivo As New System.IO.FileInfo(filePath)
' Dim mimeType As String = Nothing ' Dim mimeType As String = Nothing
' If Archivo.Exists Then ' If Archivo.Exists Then
' HttpContext.Current.Response.Buffer = True ' HttpContext.Current.Response.Buffer = True

View File

@@ -4226,25 +4226,24 @@
<div class="modal-body"> <div class="modal-body">
<%-- <div class="form-group form-md-line-input">
<asp:RadioButtonList runat="server" ID="RBLModalBancosLayout" RepeatDirection="Horizontal" CssClass=" form-control input-sm" >
<asp:ListItem Value="1" Selected="True">Generar Layout</asp:ListItem>
<asp:ListItem Value="2">Altas Nomina</asp:ListItem>
</asp:RadioButtonList>
<asp:Label runat="server" AssociatedControlID="RBLModalBancosLayout">Tipo Operacóon:</asp:Label>
</div>--%>
<div class="form-group form-md-line-input"> <div class="form-group form-md-line-input">
<asp:DropDownList ID="DdlModalBancosLayout" CssClass=" form-control input-sm select2me" runat="server" Width="100%">
<asp:DropDownList ID="DdlCuenta" runat="server" CssClass="form-control input-sm select2me" AppendDataBoundItems="true" OnSelectedIndexChanged="DdlCuenta_SelectedIndexChanged"
AutoPostBack="true" DataTextField="NumCuentaMoneda" DataValueField="CveCuenta" Width="100%" ValidationGroup="GrpContado">
</asp:DropDownList>
<%-- <asp:DropDownList ID="DdlModalBancosLayout" CssClass=" form-control input-sm select2me" runat="server" Width="100%">
<asp:ListItem Value="-1">Seleccione Uno</asp:ListItem> <asp:ListItem Value="-1">Seleccione Uno</asp:ListItem>
<asp:ListItem Value="1">Bancomer</asp:ListItem> <asp:ListItem Value="1">Bancomer</asp:ListItem>
<asp:ListItem Value="2">Banorte</asp:ListItem> <asp:ListItem Value="2">Banorte</asp:ListItem>
</asp:DropDownList> </asp:DropDownList>--%>
<asp:Label runat="server" AssociatedControlID="DdlModalBancosLayout">Banco:</asp:Label>
<asp:RequiredFieldValidator ID="RfvDdlModalBancosLayout" runat="server" CssClass="help-block errorimput" Display="none" InitialValue="-1" ControlToValidate="DdlModalBancosLayout" <asp:Label runat="server" AssociatedControlID="DdlCuenta">Cuenta:</asp:Label>
<asp:RequiredFieldValidator ID="RfvDdlCuenta" runat="server" CssClass="help-block errorimput" Display="none" InitialValue="-1" ControlToValidate="DdlCuenta"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Banco''</b> es necesario, por favor ingréselo." ValidationGroup="GrpModalBancoLayout"> ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Banco''</b> es necesario, por favor ingréselo." ValidationGroup="GrpModalBancoLayout">
</asp:RequiredFieldValidator> </asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="CERfvDdlModalBancosLayout" runat="server" HighlightCssClass="vco" TargetControlID="RfvDdlModalBancosLayout" Width="350px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="CERfvDdlCuenta" runat="server" HighlightCssClass="vco" TargetControlID="RfvDdlCuenta" Width="350px"></ajax:ValidatorCalloutExtender>
</div> </div>
@@ -4252,12 +4251,10 @@
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<%-- <asp:UpdatePanel ID="UpModalBancosLayoutBotones" runat="server" UpdateMode="Conditional">
<ContentTemplate>--%>
<button id="BtnModalBancosLayoutCerrar" type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button> <button id="BtnModalBancosLayoutCerrar" type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
<asp:Button Text="Generar" ID="BtnModalBancosProcesar" OnClick="BtnModalBancosProcesar_Click" CssClass="btn btn-primary" ValidationGroup="GrpModalBancoLayout" runat="server" /> <asp:Button Text="Generar" ID="BtnModalBancosProcesar" OnClick="BtnModalBancosProcesar_Click" CssClass="btn btn-primary" ValidationGroup="GrpModalBancoLayout" runat="server" />
<%-- </ContentTemplate>
</asp:UpdatePanel>--%>
</div> </div>
</div> </div>
</ContentTemplate> </ContentTemplate>

View File

@@ -8110,27 +8110,105 @@ public partial class Nomina_Nomina2 : ClsPaginas
#region Layouts #region Layouts
enum Bancos
{
SinSelccion,
Bancomer,
Banorte
}
Bancos Banco
{
get {
if (ViewState["Banco"] == null)
{
ViewState["Banco"] = Bancos.SinSelccion;
}
return (Bancos) ViewState["Banco"];
}
set {
ViewState["Banco"] = (Bancos) value;
}
}
string ConvenioPagoElectronico
{
get {
if (ViewState["ConvenioPagoElectronico"] == null)
{
ViewState["ConvenioPagoElectronico"] = string.Empty;
}
return ViewState["ConvenioPagoElectronico"].ToString();
}
set {
ViewState["ConvenioPagoElectronico"] = (string) value;
}
}
protected void LnkLayoutContable_Click(object sender, EventArgs e) protected void LnkLayoutContable_Click(object sender, EventArgs e)
{ {
// RBLModalBancosLayout.SelectedValue = "1"; // RBLModalBancosLayout.SelectedValue = "1";
DdlModalBancosLayout.SelectedValueExist("-1"); Banco = Bancos.SinSelccion;
CargaCuentas();
this.RegistraScript("$('#ModalLayoutBancos').modal('show');"); this.RegistraScript("$('#ModalLayoutBancos').modal('show');");
UpModalBancosLayout.Update(); UpModalBancosLayout.Update();
} }
private void CargaCuentas()
protected void RBLModalBancosLayout_SelectedIndexChanged(object sender, EventArgs e)
{ {
DdlCuenta.Items.Clear();
DataTable DTCuentas = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa: UsuarioActual.CveEmpresa).FiltraParametros(" CveTipoCuenta <> 1 AND UsaLayout = 'True' AND LEN(ConvenioPagoElectronico) > 0 ");
DTCuentas.CaseSensitive = false;
DdlCuenta.DataSource = DTCuentas.FiltraParametros(" Banco IN('BANCOMER','BANORTE')");
DdlCuenta.DataBind();
DdlCuenta.Items.Insert(0, new ListItem("Seleccione", "-1"));
DdlCuenta.SelectedValueExist("-1");
}
protected void DdlCuenta_SelectedIndexChanged(object sender, EventArgs e)
{
ConvenioPagoElectronico = string.Empty;
if (DdlCuenta.SelectedValue.ToEntero() > 0)
{
ConvenioPagoElectronico = get_GlobalDTBancosCuentas(UsuarioActual.CveUsuario, CveEmpresa: UsuarioActual.CveEmpresa).FiltroPrimeroValor("ConvenioPagoElectronico", $" CveCuenta = {DdlCuenta.SelectedValue}").ToString();
if (DdlCuenta.SelectedItem.Text.ToUpper().Contains("BANCOMER"))
{
Banco = Bancos.Bancomer;
}else if (DdlCuenta.SelectedItem.Text.ToUpper().Contains("BANORTE"))
{
Banco = Bancos.Banorte;
}
else
{
ConvenioPagoElectronico = string.Empty;
}
}
else
{
Banco = Bancos.SinSelccion;
}
} }
protected void BtnModalBancosProcesar_Click(object sender, EventArgs e) protected void BtnModalBancosProcesar_Click(object sender, EventArgs e)
{ {
//if (RBLModalBancosLayout.SelectedValue.ToEntero() == 1)
//{ if (Banco == Bancos.Bancomer)
if (DdlModalBancosLayout.SelectedValue.ToEntero() == 1)
{ {
using (ClsNominas objnom = new ClsNominas()) using (ClsNominas objnom = new ClsNominas())
{ {
@@ -8141,38 +8219,18 @@ public partial class Nomina_Nomina2 : ClsPaginas
} }
} }
else if (DdlModalBancosLayout.SelectedValue.ToEntero() == 2) else if (Banco == Bancos.Banorte)
{ {
using (ClsNominas objnom = new ClsNominas()) using (ClsNominas objnom = new ClsNominas())
{ {
if (objnom.GetDispersionNominaBanorte(CvePeriodoSeleccionado, UsuarioActual.CveEmpresa)) if (objnom.GetDispersionNominaBanorte(CvePeriodoSeleccionado, UsuarioActual.CveEmpresa))
{ {
CrearLayoutNominaBanorte(objnom.DtResultados, "66564",1); CrearLayoutNominaBanorte(objnom.DtResultados, ConvenioPagoElectronico, 1);
} }
} }
} }
//}
//else if (RBLModalBancosLayout.SelectedValue.ToEntero() == 2)
//{
// if (DdlModalBancosLayout.SelectedValue.ToEntero() == 1)
// {
// //Sin Alta
// }
// else if (DdlModalBancosLayout.SelectedValue.ToEntero() == 2)
// {
// //Banorte
// using (ClsNominas objnom = new ClsNominas())
// {
// if (objnom.GetLayoutAltaBanorte(CvePeriodoSeleccionado, UsuarioActual.CveEmpresa))
// {
// CrearLayoutAltaBanorte(objnom.DtResultados, " 04539871", "12345", UsuarioActual.Empresa.Empresa);
// }
// }
// }
//}
} }
@@ -8404,4 +8462,6 @@ public partial class Nomina_Nomina2 : ClsPaginas
} }
#endregion #endregion
} }

View File

@@ -85,9 +85,13 @@
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
</div> </div>
<asp:Label runat="server" CssClass="col-md-1">Cliente: </asp:Label>
<div class="col-md-2">
<ADS:Dropdownlost CssClassDdl="select2me" ID="DdlClientesfilter" Width="100%" data-metodo="getcliente" UsaWebService="true" runat="server" DataTextField="NombreComercial" DataValueField="CveCliente" CssStyle="width: 140px"></ADS:Dropdownlost>
</div>
</div> </div>
<ul class="list-inline"> <ul class="list-inline">
<%--<li>Cliente: <%--<li>
<asp:Button ID="BtnCargarClientes" runat="server" ClientIDMode="Static" Text="CargarClientes" Style="display: none;" /> <asp:Button ID="BtnCargarClientes" runat="server" ClientIDMode="Static" Text="CargarClientes" Style="display: none;" />
<asp:DropDownList ID="DdlCliente" runat="server" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveCliente" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 250px !important;"> <asp:DropDownList ID="DdlCliente" runat="server" AppendDataBoundItems="true" DataTextField="Nombre" DataValueField="CveCliente" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 250px !important;">
<asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem> <asp:ListItem Selected="True" Text="Seleccione" Value="-1"></asp:ListItem>
@@ -176,8 +180,8 @@
<asp:TemplateField> <asp:TemplateField>
<HeaderTemplate>Turno</HeaderTemplate> <HeaderTemplate>Turno</HeaderTemplate>
<ItemTemplate> <ItemTemplate>
<asp:Literal runat="server" Text='<%# Eval("Turno") %>'></asp:Literal> <%--<asp:Literal runat="server" Text='<%# Eval("Turno") %>'></asp:Literal>--%>
<%--<asp:DropDownList ID="DdlTurno" runat="server" DataTextField="Turno" DataValueField="CveTurno" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 90px !important;"></asp:DropDownList>--%> <asp:DropDownList ID="DdlTurno" runat="server" DataTextField="Turno" DataValueField="CveTurno" Class="table-group-action-input form-control input-inline input-small input-sm" Style="width: 90px !important;"></asp:DropDownList>
</ItemTemplate> </ItemTemplate>
<ItemStyle HorizontalAlign="Left" /> <ItemStyle HorizontalAlign="Left" />
</asp:TemplateField> </asp:TemplateField>

View File

@@ -88,9 +88,16 @@ Partial Class RH_ActualizacionMasiva
End Sub End Sub
Private Sub CargaTurnos() Private Sub CargaTurnos()
ViewState("DTTurno") = GlobalDTTurno.FiltraParametros(String.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa)) Dim dt = GlobalDTTurno.FiltraParametros(String.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa))
DdlTurno.DataSource = GlobalDTTurno.FiltraParametros(String.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa)) DdlTurno.DataSource = dt
DdlTurno.DataBind() DdlTurno.DataBind()
Dim row = dt.NewRow
row("CveTurno") = "-1"
row("Turno") = "Sin Asignar"
dt.Rows.InsertAt(row, 0)
dt.AcceptChanges()
ViewState("DTTurno") = dt
End Sub End Sub
Private Sub CargaSupervisores() Private Sub CargaSupervisores()
@@ -180,6 +187,10 @@ Partial Class RH_ActualizacionMasiva
e.Row.FCDropDownList("DdlSupervisor").DataBind() e.Row.FCDropDownList("DdlSupervisor").DataBind()
e.Row.FCDropDownList("DdlSupervisor").Items.Insert(0, New ListItem("Sin Supervisor Asignado", "-1")) e.Row.FCDropDownList("DdlSupervisor").Items.Insert(0, New ListItem("Sin Supervisor Asignado", "-1"))
e.Row.FCDropDownList("DdlSupervisor").SelectedValueExist(e.Row.DBCampo("CveSupervisor").ToString()) e.Row.FCDropDownList("DdlSupervisor").SelectedValueExist(e.Row.DBCampo("CveSupervisor").ToString())
e.Row.FCDropDownList("DdlTurno").DataSource = ViewState("DTTurno")
e.Row.FCDropDownList("DdlTurno").DataBind()
e.Row.FCDropDownList("DdlTurno").SelectedValueExist("-1")
e.Row.FCDropDownList("DdlTurno").SelectedValueExist(e.Row.DBCampo("CveTurno").ToString())
e.Row.FCDropDownLost("DdlClientes").SelectedValue = e.Row.DBCampo("CveCliente") e.Row.FCDropDownLost("DdlClientes").SelectedValue = e.Row.DBCampo("CveCliente")
e.Row.FCDropDownLost("DdlClientes").SelectedText = e.Row.DBCampo("Cliente") e.Row.FCDropDownLost("DdlClientes").SelectedText = e.Row.DBCampo("Cliente")

View File

@@ -10,6 +10,9 @@
Registro de Asistencias Registro de Asistencias
</asp:Content> </asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server"> <asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<li>
<asp:HyperLink ID="HyperLink1" NavigateUrl="#" runat="server"><i class="fa fa-file-pdf-o" style="color: #6D0C2E;" aria-hidden="true"></i>Lista asistencia</asp:HyperLink>
</li>
<asp:Panel ID="PnlMasivo" runat="server" Visible="False"> <asp:Panel ID="PnlMasivo" runat="server" Visible="False">
<li> <li>
<asp:HyperLink ID="HypCargaAsistenciaMasiva" data-toggle="modal" data-target="#DModalCargaASistenciaMasiva" runat="server"><i class="fa fa-check" aria-hidden="true"></i>Carga masiva de asistencia</asp:HyperLink> <asp:HyperLink ID="HypCargaAsistenciaMasiva" data-toggle="modal" data-target="#DModalCargaASistenciaMasiva" runat="server"><i class="fa fa-check" aria-hidden="true"></i>Carga masiva de asistencia</asp:HyperLink>

View File

@@ -42,15 +42,14 @@
} }
.reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(2) .reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(2)
/*,.reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2) */ /*,.reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2) */ {
{
background-color: #900; background-color: #900;
color: #FFF; color: #FFF;
} }
.reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(3), .reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(3),
.reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(4), .reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(4),
.reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(5)/*, .reporte1 .GVSolicitudTimbreNominaGral tr th:nth-child(5) /*,
.reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(3), .reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(3),
.reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(4), .reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(4),
.reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(5)*/ { .reporte1 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(5)*/ {
@@ -66,15 +65,15 @@
text-align: right !important; text-align: right !important;
white-space: nowrap; white-space: nowrap;
} }
.reporte2 .GVSolicitudTimbreNominaGral tr th:nth-child(2)/*, .reporte2 .GVSolicitudTimbreNominaGral tr th:nth-child(2) /*,
.reporte2 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2)*/ { .reporte2 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2)*/ {
background-color: #900; background-color: #900;
color: #FFF; color: #FFF;
} }
.reporte2 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3):not(:nth-child(7))/*, .reporte2 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3):not(:nth-child(7)) /*,
.reporte2 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+3):not(:nth-child(7))*/{ .reporte2 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+3):not(:nth-child(7))*/ {
background-color: #3598dc; background-color: #3598dc;
color: #FFF; color: #FFF;
} }
@@ -94,15 +93,15 @@
} }
.reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(2), .reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(2),
.reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(n+20)/*, .reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(n+20) /*,
.reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2), .reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2),
.reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+20)*/{ .reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+20)*/ {
background-color: #900; background-color: #900;
color: #FFF; color: #FFF;
} }
.reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(1), .reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(1),
.reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3):not(:nth-child(n+20))/*, .reporte3 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3):not(:nth-child(n+20)) /*,
.reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(1), .reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(1),
.reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+3):not(:nth-child(n+20))*/ { .reporte3 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+3):not(:nth-child(n+20))*/ {
background-color: #3598dc; background-color: #3598dc;
@@ -115,25 +114,26 @@
text-align: right !important; text-align: right !important;
white-space: nowrap; white-space: nowrap;
} }
.reporte4 .GVSolicitudTimbreNominaGral tr th:nth-child(2)/*, .reporte4 .GVSolicitudTimbreNominaGral tr th:nth-child(2) /*,
.reporte4 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2)*/ { .reporte4 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2)*/ {
background-color: #900; background-color: #900;
color: #FFF; color: #FFF;
} }
.reporte4 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3):not(:nth-child(n+6))/*, .reporte4 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3):not(:nth-child(n+6)) /*,
.reporte4 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+3)*/ { .reporte4 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(n+3)*/ {
background-color: #3598dc; background-color: #3598dc;
color: #FFF; color: #FFF;
} }
.reporte5 .GVSolicitudTimbreNominaGral tr th:nth-child(2)/*, .reporte5 .GVSolicitudTimbreNominaGral tr th:nth-child(2) /*,
.reporte5 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2)*/ { .reporte5 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(2)*/ {
background-color: #900; background-color: #900;
color: #FFF; color: #FFF;
} }
.reporte5 .GVSolicitudTimbreNominaGral tr th:nth-child(3)/*,
.reporte5 .GVSolicitudTimbreNominaGral tr th:nth-child(3) /*,
.reporte5 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(3)*/ { .reporte5 .ADScroller-body .GVSolicitudTimbreNominaGral tr:nth-child(2) td:nth-child(3)*/ {
background-color: #3598dc; background-color: #3598dc;
color: #FFF; color: #FFF;
@@ -143,7 +143,7 @@
.reporte6 .GVSolicitudTimbreNominaGral tr td:nth-child(n) { .reporte6 .GVSolicitudTimbreNominaGral tr td:nth-child(n) {
white-space: nowrap; white-space: nowrap;
} }
.reporte6 .GVSolicitudTimbreNominaGral tr td:nth-child(n+4), .reporte6 .GVSolicitudTimbreNominaGral tr td:nth-child(n+4),
.reporte6 .GVSolicitudTimbreNominaGral tr th:nth-child(n+4) { .reporte6 .GVSolicitudTimbreNominaGral tr th:nth-child(n+4) {
text-align: right !important; text-align: right !important;
@@ -153,13 +153,14 @@
background-color: #900; background-color: #900;
color: #FFF; color: #FFF;
} }
.reporte6 .GVSolicitudTimbreNominaGral tr th:nth-child(n+7):not(:nth-child(n+10)) { .reporte6 .GVSolicitudTimbreNominaGral tr th:nth-child(n+7):not(:nth-child(n+10)) {
background-color: #3598dc; background-color: #3598dc;
color: #FFF; color: #FFF;
} }
.reporte7 .GVSolicitudTimbreNominaGral tr td:nth-child(n+3), .reporte7 .GVSolicitudTimbreNominaGral tr td:nth-child(n+3),
.reporte7 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3) { .reporte7 .GVSolicitudTimbreNominaGral tr th:nth-child(n+3) {
text-align: right !important; text-align: right !important;
@@ -169,14 +170,15 @@
background-color: #900; background-color: #900;
color: #FFF; color: #FFF;
} }
.reporte7 .GVSolicitudTimbreNominaGral tr th:nth-child(n+6):not(:nth-child(n+9)) { .reporte7 .GVSolicitudTimbreNominaGral tr th:nth-child(n+6):not(:nth-child(n+9)) {
background-color: #3598dc; background-color: #3598dc;
color: #FFF; color: #FFF;
} }
.reporte8 .GVSolicitudTimbreNominaGral tr td:nth-child(n+6), .reporte8 .GVSolicitudTimbreNominaGral tr td:nth-child(n+6),
.reporte8 .GVSolicitudTimbreNominaGral tr th:nth-child(n+6) { .reporte8 .GVSolicitudTimbreNominaGral tr th:nth-child(n+6) {
text-align: right !important; text-align: right !important;
@@ -186,16 +188,18 @@
background-color: #900; background-color: #900;
color: #FFF; color: #FFF;
} }
.reporte8 .GVSolicitudTimbreNominaGral tr th:nth-child(n+9):not(:nth-child(n+12)) { .reporte8 .GVSolicitudTimbreNominaGral tr th:nth-child(n+9):not(:nth-child(n+12)) {
background-color: #3598dc; background-color: #3598dc;
color: #FFF; color: #FFF;
} }
.reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(1), .reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(1),
.reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(4) { .reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(4) {
white-space: nowrap; white-space: nowrap;
} }
.reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(2), .reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(2),
.reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(3), .reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(3),
.reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(n+40) { .reporte9 .GVSolicitudTimbreNominaGral tr td:nth-child(n+40) {
@@ -210,14 +214,14 @@
</asp:Content> </asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server"> <asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<li> <li>
<asp:LinkButton ID="LnkDownloadExcel" OnClick="LnkDownloadExcel_Click" runat="server"><i class="fa fa-download"></i>Descargar</asp:LinkButton> <asp:LinkButton ID="LnkDownloadExcel" OnClick="LnkDownloadExcel_Click" runat="server"><i class="fa fa-download"></i>Descargar</asp:LinkButton>
</li> </li>
<asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional">
<ContentTemplate> <contenttemplate>
<li> <li>
<asp:LinkButton ID="LnkShowSolicitudes" OnClick="LnkShowSolicitudes_Click" runat="server">Solicitudes</asp:LinkButton> <asp:LinkButton ID="LnkShowSolicitudes" OnClick="LnkShowSolicitudes_Click" runat="server">Solicitudes</asp:LinkButton>
</li> </li>
</ContentTemplate> </contenttemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</asp:Content> </asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server"> <asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
@@ -225,7 +229,7 @@
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server"> <asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="upDatosChec" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="upDatosChec" runat="server" UpdateMode="Conditional">
<ContentTemplate> <contenttemplate>
<div class="portlet solid grey-cascade portlet-filter"> <div class="portlet solid grey-cascade portlet-filter">
<div class="portlet-title portlet-filterT smalltitle"> <div class="portlet-title portlet-filterT smalltitle">
<div class="titlefiltros caption"> <div class="titlefiltros caption">
@@ -246,7 +250,7 @@
</asp:DropDownList> </asp:DropDownList>
</div> </div>
<label class="col-md-1 mediocol">Fecha inicio:</label> <label class="col-md-1 mediocol">Fecha inicio:</label>
<div class="col-md-1"> <div class="col-md-2">
<%--<asp:TextBox ID="TxtPeriodoInicio" Text="0" CssClass="form-control" runat="server"></asp:TextBox>--%> <%--<asp:TextBox ID="TxtPeriodoInicio" Text="0" CssClass="form-control" runat="server"></asp:TextBox>--%>
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 138px !important; padding: 0px; margin-bottom: -10px;"> <div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 138px !important; padding: 0px; margin-bottom: -10px;">
@@ -254,27 +258,27 @@
<span class="input-group-btn "> <span class="input-group-btn ">
<asp:LinkButton ID="LnkRpdFechaInicio" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton> <asp:LinkButton ID="LnkRpdFechaInicio" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span> </span>
<ajax:MaskedEditExtender ID="MaskedEditExtender3" runat="server" TargetControlID="TxtRpdFechaInicio" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender> <ajax:maskededitextender id="MaskedEditExtender3" runat="server" targetcontrolid="TxtRpdFechaInicio" mask="99/99/9999" masktype="Date" displaymoney="Left" acceptnegative="Left"></ajax:maskededitextender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender3" TargetControlID="TxtRpdFechaInicio" PopupButtonID="LnkRpdFechaInicio" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender> <ajax:calendarextender runat="server" id="CalendarExtender3" targetcontrolid="TxtRpdFechaInicio" popupbuttonid="LnkRpdFechaInicio" popupposition="BottomRight" enabled="True" format="dd/MM/yyyy"></ajax:calendarextender>
<asp:RequiredFieldValidator ID="rfvRpdFechaInicio" runat="server" ControlToValidate="TxtRpdFechaInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="rfvRpdFechaInicio" runat="server" ControlToValidate="TxtRpdFechaInicio" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Inicio''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaInicio"></ajax:ValidatorCalloutExtender> <ajax:validatorcalloutextender id="ValidatorCalloutExtender1" runat="server" highlightcssclass="vco" targetcontrolid="rfvRpdFechaInicio"></ajax:validatorcalloutextender>
</div> </div>
</div> </div>
<label class="col-md-1 mediocol">Fecha fin:</label> <label class="col-md-1 mediocol">Fecha fin:</label>
<div class="col-md-1"> <div class="col-md-2">
<%--<asp:TextBox ID="TxtPeriodoFin" Text="99" CssClass="form-control" runat="server"></asp:TextBox>--%> <%--<asp:TextBox ID="TxtPeriodoFin" Text="99" CssClass="form-control" runat="server"></asp:TextBox>--%>
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 138px !important; padding: 0px; margin-bottom: -10px;"> <div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 138px !important; padding: 0px; margin-bottom: -10px;">
<asp:TextBox ID="TxtRpdFechaFin" CssClass="form-control input-sm ADSMaskDate" Style="width: 80px" runat="server"></asp:TextBox> <asp:TextBox ID="TxtRpdFechaFin" CssClass="form-control input-sm ADSMaskDate" Style="width: 80px" runat="server"></asp:TextBox>
<span class="input-group-btn "> <span class="input-group-btn ">
<asp:LinkButton ID="LnkFechaFin" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton> <asp:LinkButton ID="LnkFechaFin" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span> </span>
<ajax:MaskedEditExtender ID="MaskedEditExtender5" runat="server" TargetControlID="TxtRpdFechaFin" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender> <ajax:maskededitextender id="MaskedEditExtender5" runat="server" targetcontrolid="TxtRpdFechaFin" mask="99/99/9999" masktype="Date" displaymoney="Left" acceptnegative="Left"></ajax:maskededitextender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender4" TargetControlID="TxtRpdFechaFin" PopupButtonID="LnkFechaFin" PopupPosition="BottomRight" Enabled="True" Format="dd/MM/yyyy"></ajax:CalendarExtender> <ajax:calendarextender runat="server" id="CalendarExtender4" targetcontrolid="TxtRpdFechaFin" popupbuttonid="LnkFechaFin" popupposition="BottomRight" enabled="True" format="dd/MM/yyyy"></ajax:calendarextender>
<asp:RequiredFieldValidator ID="rfvRpdFechaFin" runat="server" ControlToValidate="TxtRpdFechaFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="rfvRpdFechaFin" runat="server" ControlToValidate="TxtRpdFechaFin" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha Fin''</b> es necesario, por favor ingréselo." ValidationGroup="VGReporterepperde"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="rfvRpdFechaFin"></ajax:ValidatorCalloutExtender> <ajax:validatorcalloutextender id="ValidatorCalloutExtender2" runat="server" highlightcssclass="vco" targetcontrolid="rfvRpdFechaFin"></ajax:validatorcalloutextender>
</div> </div>
</div> </div>
<div class="col-md-3"> <div class="col-md-2">
<asp:LinkButton ID="LnkConsultar" OnClick="LnkConsultar_Click" runat="server" Text="Consultar" Visible="true" class="btn btn-primary" /> <asp:LinkButton ID="LnkConsultar" OnClick="LnkConsultar_Click" runat="server" Text="Consultar" Visible="true" class="btn btn-primary" />
</div> </div>
</div> </div>
@@ -385,18 +389,18 @@
<%--DataKeyNames="Periodo,Version CFDI,Version Nómina,UUID,UUIDs relacionados,Tipo relacion,Tipo nomina,Serie,Folio,Fecha emision,Fecha certificacion,Fecha cancelacion,Fecha pago,Fecha inicial pago,Fecha final pago,Dias pagados,RFC emisor,Razon emisor,Registro patronal,RFC receptor,Razon receptor,Fecha inicio relacion laboral,Tipo contrato,Tipo jornada,Tipo regimen,Num empleado,Antiguedad,Sindicalizado,ClaveEntFed,Banco,Cuenta bancaria,CURP,No Seguro social,Departamento,Puesto,Periodicidad pago,Salario base cot apor,Salario diario integrado,Estado"--%> <%--DataKeyNames="Periodo,Version CFDI,Version Nómina,UUID,UUIDs relacionados,Tipo relacion,Tipo nomina,Serie,Folio,Fecha emision,Fecha certificacion,Fecha cancelacion,Fecha pago,Fecha inicial pago,Fecha final pago,Dias pagados,RFC emisor,Razon emisor,Registro patronal,RFC receptor,Razon receptor,Fecha inicio relacion laboral,Tipo contrato,Tipo jornada,Tipo regimen,Num empleado,Antiguedad,Sindicalizado,ClaveEntFed,Banco,Cuenta bancaria,CURP,No Seguro social,Departamento,Puesto,Periodicidad pago,Salario base cot apor,Salario diario integrado,Estado"--%>
<asp:GridView ID="GVSolicitudTimbreNominaGral" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall GVSolicitudTimbreNominaGral" AutoGenerateColumns="true"> <asp:GridView ID="GVSolicitudTimbreNominaGral" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall GVSolicitudTimbreNominaGral" AutoGenerateColumns="true">
<Columns></Columns> <columns></columns>
</asp:GridView> </asp:GridView>
</div> </div>
</div> </div>
</ContentTemplate> </contenttemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
<div id="ModalViewSolicitudes" class="modal ADS fade" role="dialog"> <div id="ModalViewSolicitudes" class="modal ADS fade" role="dialog">
<asp:UpdatePanel ID="UPModalViewSolicitudes" class="modal-dialog rowpadding" tabindex="-1" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UPModalViewSolicitudes" class="modal-dialog rowpadding" tabindex="-1" runat="server" UpdateMode="Conditional">
<ContentTemplate> <contenttemplate>
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<button type="button" class="close" data-dismiss="modal">&times;</button> <button type="button" class="close" data-dismiss="modal">&times;</button>
@@ -417,50 +421,53 @@
</div> </div>
<div class="portlet-body nomarginleftright form-horizontal form-row-sepe formnombottom " style="display: none"> <div class="portlet-body nomarginleftright form-horizontal form-row-sepe formnombottom " style="display: none">
<div class="row"> <div class="row">
<div class="col-md-4">
<div class="col-md-4" data-date-format="dd/mm/yyyy" style="padding-right: 0px;"> <asp:Label runat="server" Text="Fecha Inicio" AssociatedControlID="txtFechaIAdd"></asp:Label>
<div class="form-group form-md-line-input form-md-floating-label input-iconright">
<asp:TextBox ID="txtFechaIAdd" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
<asp:Label runat="server" Text="Fecha Inicio" AssociatedControlID="txtFechaIAdd"></asp:Label>
</div>
<ajax:MaskedEditExtender ID="MEEFechaIAdd" runat="server" TargetControlID="txtFechaIAdd" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender1" TargetControlID="txtFechaIAdd" PopupButtonID="LnkFechaIAdd" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvFechaIAdd" runat="server" ControlToValidate="txtFechaIAdd" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="VGAdd"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaIAdd" runat="server" ControlToValidate="txtFechaIAdd" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender3" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaIAdd" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender4" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaIAdd" Width="350px"></ajax:ValidatorCalloutExtender>
</div> </div>
<div class="col-md-2" style="padding-top: 14px; padding-left: 0px;"> <div class="col-md-4">
<div class="input-group input-sm input-small date date-picker " style="padding-left: 0px;" data-date-format="dd/mm/yyyy">
<asp:Label runat="server" Text="Fecha Fin" AssociatedControlID="txtFechaFAdd"></asp:Label>
</div>
</div>
<div class="row">
<div class="col-md-4">
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 138px !important; padding: 0px; margin-bottom: -10px;">
<asp:TextBox ID="txtFechaIAdd" CssClass="form-control input-sm ADSMaskDate" Style="" runat="server"></asp:TextBox>
<span class="input-group-btn "> <span class="input-group-btn ">
<asp:LinkButton ID="LnkFechaIAdd" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton> <asp:LinkButton ID="LnkFechaIAdd" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span> </span>
<ajax:maskededitextender id="MEEFechaIAdd" runat="server" targetcontrolid="txtFechaIAdd" mask="99/99/9999" masktype="Date" displaymoney="Left" acceptnegative="Left"></ajax:maskededitextender>
<ajax:calendarextender runat="server" id="CalendarExtender1" targetcontrolid="txtFechaIAdd" popupbuttonid="LnkFechaIAdd" popupposition="BottomRight" enabled="True"></ajax:calendarextender>
<asp:RequiredFieldValidator ID="rfvFechaIAdd" runat="server" ControlToValidate="txtFechaIAdd" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="VGAdd"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaIAdd" runat="server" ControlToValidate="txtFechaIAdd" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
<ajax:validatorcalloutextender id="ValidatorCalloutExtender3" runat="server" highlightcssclass="vco" targetcontrolid="rfvFechaIAdd" width="350px"></ajax:validatorcalloutextender>
<ajax:validatorcalloutextender id="ValidatorCalloutExtender4" runat="server" highlightcssclass="vco" targetcontrolid="cvFechaIAdd" width="350px"></ajax:validatorcalloutextender>
</div> </div>
</div> </div>
<div class="col-md-4" data-date-format="dd/mm/yyyy" style="padding-right: 0px;"> <div class="col-md-4">
<div class="form-group form-md-line-input form-md-floating-label input-iconright"> <div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 138px !important; padding: 0px; margin-bottom: -10px;">
<asp:TextBox ID="txtFechaFAdd" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox> <asp:TextBox ID="txtFechaFAdd" CssClass="form-control input-sm ADSMaskDate" Style="" runat="server"></asp:TextBox>
<asp:Label runat="server" Text="Fecha Fin" AssociatedControlID="txtFechaFAdd"></asp:Label>
</div>
<ajax:MaskedEditExtender ID="MEEFechaFAdd" runat="server" TargetControlID="txtFechaFAdd" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="CalendarExtender2" TargetControlID="txtFechaFAdd" PopupButtonID="LnkFechaFAdd" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvFechaFAdd" runat="server" ControlToValidate="txtFechaFAdd" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="VGAdd"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaFAdd" runat="server" ControlToValidate="txtFechaFAdd" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender5" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaFAdd" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender6" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaFAdd" Width="350px"></ajax:ValidatorCalloutExtender>
</div>
<div class="col-md-2" style="padding-top: 14px; padding-left: 0px;">
<div class="input-group input-sm input-small date date-picker " style="padding-left: 0px;" data-date-format="dd/mm/yyyy">
<span class="input-group-btn "> <span class="input-group-btn ">
<asp:LinkButton ID="LnkFechaFAdd" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton> <asp:LinkButton ID="LnkFechaFAdd" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span> </span>
<ajax:maskededitextender id="MEEFechaFAdd" runat="server" targetcontrolid="txtFechaFAdd" mask="99/99/9999" masktype="Date" displaymoney="Left" acceptnegative="Left"></ajax:maskededitextender>
<ajax:calendarextender runat="server" id="CalendarExtender2" targetcontrolid="txtFechaFAdd" popupbuttonid="LnkFechaFAdd" popupposition="BottomRight" enabled="True"></ajax:calendarextender>
<asp:RequiredFieldValidator ID="rfvFechaFAdd" runat="server" ControlToValidate="txtFechaFAdd" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="VGAdd"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaFAdd" runat="server" ControlToValidate="txtFechaFAdd" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> no tienes el formato correcto, por favor intente de nuevo con el siguiente formato: (dd/mm/yyyy)." Operator="DataTypeCheck" Type="Date" ValidationGroup="Valida"></asp:CompareValidator>
<ajax:validatorcalloutextender id="ValidatorCalloutExtender5" runat="server" highlightcssclass="vco" targetcontrolid="rfvFechaFAdd" width="350px"></ajax:validatorcalloutextender>
<ajax:validatorcalloutextender id="ValidatorCalloutExtender6" runat="server" highlightcssclass="vco" targetcontrolid="cvFechaFAdd" width="350px"></ajax:validatorcalloutextender>
</div> </div>
</div> </div>
</div> <div class="col-md-4">
<div class="text-right">
<asp:LinkButton ID="LnkSolicitarSat" CssClass="btn btn-primary" OnClick="LnkSolicitarSat_Click" runat="server">Solicitar</asp:LinkButton> <div class="text-right">
<asp:LinkButton ID="LnkSolicitarSat" CssClass="btn btn-primary" OnClick="LnkSolicitarSat_Click" runat="server">Solicitar</asp:LinkButton>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@@ -480,43 +487,43 @@
<asp:GridView ID="GVSolicitudesPendientes" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False" <asp:GridView ID="GVSolicitudesPendientes" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros" ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros"
DataKeyNames="idSolicitudNominas,idSolicitudCFDI,idSolicitudMetadata,Estatus,Observaciones,FechaInicio,FechaFin,FechaIng,CveUsuarioIng,CveEmpresa"> DataKeyNames="idSolicitudNominas,idSolicitudCFDI,idSolicitudMetadata,Estatus,Observaciones,FechaInicio,FechaFin,FechaIng,CveUsuarioIng,CveEmpresa">
<Columns> <columns>
<asp:TemplateField HeaderText="Folio"> <asp:TemplateField HeaderText="Folio">
<ItemTemplate> <itemtemplate>
<asp:Label runat="server" Text='<%# Eval("idSolicitudNominas")%>'> </asp:Label> <asp:Label runat="server" Text='<%# Eval("idSolicitudNominas")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Inicio"> <asp:TemplateField HeaderText="Fecha Inicio">
<ItemTemplate> <itemtemplate>
<asp:Label ID="lblfechaInicio" runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy}")%>'> </asp:Label> <asp:Label ID="lblfechaInicio" runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy}")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Fin"> <asp:TemplateField HeaderText="Fecha Fin">
<ItemTemplate> <itemtemplate>
<asp:Label ID="lblfechaFin" runat="server" Text='<%# Eval("FechaFin","{0:dd/MM/yyyy}")%>'> </asp:Label> <asp:Label ID="lblfechaFin" runat="server" Text='<%# Eval("FechaFin","{0:dd/MM/yyyy}")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Estatus"> <asp:TemplateField HeaderText="Estatus">
<ItemTemplate> <itemtemplate>
<asp:Label ID="lblestatus" runat="server" Text='<%# Eval("EstatusText")%>'> </asp:Label> <asp:Label ID="lblestatus" runat="server" Text='<%# Eval("EstatusText")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Observaciones"> <asp:TemplateField HeaderText="Observaciones">
<ItemTemplate> <itemtemplate>
<asp:Label ID="lblobservaciones" runat="server" Text='<%# Eval("Observaciones")%>'> </asp:Label> <asp:Label ID="lblobservaciones" runat="server" Text='<%# Eval("Observaciones")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Fecha solicitud"> <asp:TemplateField HeaderText="Fecha solicitud">
<ItemTemplate> <itemtemplate>
<asp:Label runat="server" Text='<%# Eval("FechaIng","{0:dd/MM/yyyy HH:mm}")%>'> </asp:Label> <asp:Label runat="server" Text='<%# Eval("FechaIng","{0:dd/MM/yyyy HH:mm}")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Solicitó"> <asp:TemplateField HeaderText="Solicitó">
<ItemTemplate> <itemtemplate>
<asp:Label runat="server" Text='<%# Eval("UsuarioIng")%>'> </asp:Label> <asp:Label runat="server" Text='<%# Eval("UsuarioIng")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
</Columns> </columns>
</asp:GridView> </asp:GridView>
</div> </div>
</div> </div>
@@ -535,51 +542,52 @@
<asp:GridView ID="GVSolicitudesNominas" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False" <asp:GridView ID="GVSolicitudesNominas" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall" AutoGenerateColumns="False"
ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros" ShowHeaderWhenEmpty="true" EmptyDataText="No se encontraron registros"
DataKeyNames="idSolicitudNominas,idSolicitudCFDI,idSolicitudMetadata,Estatus,Observaciones,FechaInicio,FechaFin,FechaIng,CveUsuarioIng,CveEmpresa"> DataKeyNames="idSolicitudNominas,idSolicitudCFDI,idSolicitudMetadata,Estatus,Observaciones,FechaInicio,FechaFin,FechaIng,CveUsuarioIng,CveEmpresa">
<Columns> <columns>
<asp:TemplateField HeaderText="Folio"> <asp:TemplateField HeaderText="Folio">
<ItemTemplate> <itemtemplate>
<asp:Label runat="server" Text='<%# Eval("idSolicitudNominas")%>'> </asp:Label> <asp:Label runat="server" Text='<%# Eval("idSolicitudNominas")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Inicio"> <asp:TemplateField HeaderText="Fecha Inicio">
<ItemTemplate> <itemtemplate>
<asp:Label ID="lblfechaInicio" runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy}")%>'> </asp:Label> <asp:Label ID="lblfechaInicio" runat="server" Text='<%# Eval("FechaInicio","{0:dd/MM/yyyy}")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Fecha Fin"> <asp:TemplateField HeaderText="Fecha Fin">
<ItemTemplate> <itemtemplate>
<asp:Label ID="lblfechaFin" runat="server" Text='<%# Eval("FechaFin","{0:dd/MM/yyyy}")%>'> </asp:Label> <asp:Label ID="lblfechaFin" runat="server" Text='<%# Eval("FechaFin","{0:dd/MM/yyyy}")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="No CFDI"> <asp:TemplateField HeaderText="No CFDI">
<ItemTemplate> <itemtemplate>
<asp:Label ID="lblobservaciones" runat="server" Text='<%# Eval("numeroCFDIs")%>'> </asp:Label> <asp:Label ID="lblobservaciones" runat="server" Text='<%# Eval("numeroCFDIs")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Observaciones"> <asp:TemplateField HeaderText="Observaciones">
<ItemTemplate> <itemtemplate>
<asp:Label ID="lblobservaciones" runat="server" Text='<%# Eval("Observaciones")%>'> </asp:Label> <asp:Label ID="lblobservaciones" runat="server" Text='<%# Eval("Observaciones")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Fecha solicitud"> <asp:TemplateField HeaderText="Fecha solicitud">
<ItemTemplate> <itemtemplate>
<asp:Label runat="server" Text='<%# Eval("FechaIng","{0:dd/MM/yyyy HH:mm}")%>'> </asp:Label> <asp:Label runat="server" Text='<%# Eval("FechaIng","{0:dd/MM/yyyy HH:mm}")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Solicitó"> <asp:TemplateField HeaderText="Solicitó">
<ItemTemplate> <itemtemplate>
<asp:Label runat="server" Text='<%# Eval("UsuarioIng")%>'> </asp:Label> <asp:Label runat="server" Text='<%# Eval("UsuarioIng")%>'></asp:Label>
</ItemTemplate> </itemtemplate>
</asp:TemplateField> </asp:TemplateField>
</Columns> </columns>
</asp:GridView> </asp:GridView>
</div> </div>
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<asp:LinkButton ID="LnkverificarSolicitudes" CssClass="btn btn-primary" OnClick="LnkverificarSolicitudes_Click" runat="server">Verificar pendientes</asp:LinkButton>
<button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button> <button type="button" class="btn btn-default" data-dismiss="modal">Cerrar</button>
</div> </div>
</ContentTemplate> </contenttemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
</asp:Content> </asp:Content>

View File

@@ -179,9 +179,6 @@ public partial class SAT_SolicitudesNominaSat : ClsPaginas
} }
} }
UPModalViewSolicitudes.Update(); UPModalViewSolicitudes.Update();
var api = new GeneralesAPI();
api.GeneraSolicitud();
api.VerificaSolicitudesNominas();
} }
protected void LnkShowSolicitudes_Click(object sender, EventArgs e) protected void LnkShowSolicitudes_Click(object sender, EventArgs e)
{ {
@@ -218,8 +215,17 @@ public partial class SAT_SolicitudesNominaSat : ClsPaginas
} }
} }
protected void LnkverificarSolicitudes_Click(object sender, EventArgs e)
{
var api = new GeneralesAPI();
api.GeneraSolicitud();
api.VerificaSolicitudesNominas();
cargasolicitudes();
}
} }
public class GeneralesAPI : ADSNetLibrary.Helpers.Conexiones.SIGAPI.BaseSIGAPI public class GeneralesAPI : ADSNetLibrary.Helpers.Conexiones.SIGAPI.BaseSIGAPI
{ {
public GeneralesAPI(string domainApi = "http://localhost:4001/", string token = "") : base(domainApi, token) { } public GeneralesAPI(string domainApi = "http://localhost:4001/", string token = "") : base(domainApi, token) { }

View File

@@ -178,10 +178,10 @@
<asp:BoundField DataField="PrecioLista" NullDisplayText="N/A" ItemStyle-Width="10%" HeaderText="Importe" DataFormatString="$ {0:N2}" ItemStyle-HorizontalAlign="right" /> <asp:BoundField DataField="PrecioLista" NullDisplayText="N/A" ItemStyle-Width="10%" HeaderText="Importe" DataFormatString="$ {0:N2}" ItemStyle-HorizontalAlign="right" />
<asp:TemplateField HeaderText=""> <asp:TemplateField HeaderText="">
<ItemTemplate> <ItemTemplate>
<asp:TextBox ID="TxtPrecio" runat="server" Text='<%# Eval("PrecioLista", "{0:N2}")%>' CssClass="CssCamviaPrecio" MaxLength="39" Width="60px"></asp:TextBox> <asp:TextBox ID="TxtPrecio" runat="server" Text='<%# Eval("PrecioLista", "{0:0.######}")%>' CssClass="CssCamviaPrecio" MaxLength="39" Width="60px" onkeypress="return onlyNumberKey(event)"></asp:TextBox>
<ajax:FilteredTextBoxExtender runat="server" TargetControlID="TxtPrecio" FilterType="Numbers,Custom" ValidChars="." /> <%--<ajax:FilteredTextBoxExtender runat="server" TargetControlID="TxtPrecio" FilterType="Numbers,Custom" ValidChars="." />
<asp:RegularExpressionValidator ID="REVTxtPrecio" runat="server" ControlToValidate="TxtPrecio" Display="None" EnableClientScript="True" ErrorMessage="El campo <b>''PrecioLista''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." ValidationGroup="GrpGuardar" ValidationExpression="^[0-9]{1,15}(?:\.[0-9]{1,4})?$" /> <asp:RegularExpressionValidator ID="REVTxtPrecio" runat="server" ControlToValidate="TxtPrecio" Display="None" EnableClientScript="True" ErrorMessage="El campo <b>''PrecioLista''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." ValidationGroup="GrpGuardar" ValidationExpression="^[0-9]{1,15}(?:\.[0-9]{1,4})?$" />
<ajax:ValidatorCalloutExtender ID="VCPrecio" runat="server" HighlightCssClass="vco" TargetControlID="REVTxtPrecio" Width="300px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCPrecio" runat="server" HighlightCssClass="vco" TargetControlID="REVTxtPrecio" Width="300px"></ajax:ValidatorCalloutExtender>--%>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Precio Mínimo" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Right"> <asp:TemplateField HeaderText="Precio Mínimo" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Right">
@@ -191,10 +191,10 @@
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText=""> <asp:TemplateField HeaderText="">
<ItemTemplate> <ItemTemplate>
<asp:TextBox ID="TxtPrecioMinimo" runat="server" Text='<%# Eval("PrecioMinimo", "{0:N2}")%>' CssClass="CssCamviaPrecio" MaxLength="39" Width="60px"></asp:TextBox> <asp:TextBox ID="TxtPrecioMinimo" runat="server" Text='<%# Eval("PrecioMinimo", "{0:0.######}")%>' CssClass="CssCamviaPrecio" MaxLength="39" Width="60px" onkeypress="return onlyNumberKey(event)"></asp:TextBox>
<ajax:FilteredTextBoxExtender runat="server" TargetControlID="TxtPrecioMinimo" FilterType="Numbers,Custom" ValidChars="." /> <%-- <ajax:FilteredTextBoxExtender runat="server" TargetControlID="TxtPrecioMinimo" FilterType="Numbers,Custom" ValidChars="." />
<asp:RegularExpressionValidator ID="REVTxtPrecioMinimo" runat="server" ControlToValidate="TxtPrecioMinimo" Display="None" EnableClientScript="True" ErrorMessage="El campo <b>''PrecioLista''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." ValidationGroup="GrpGuardar" ValidationExpression="^[0-9]{1,15}(?:\.[0-9]{1,4})?$" /> <asp:RegularExpressionValidator ID="REVTxtPrecioMinimo" runat="server" ControlToValidate="TxtPrecioMinimo" Display="None" EnableClientScript="True" ErrorMessage="El campo <b>''PrecioLista''</b> no tiene el formato correcto, por favor corrija e intente de nuevo (Solo formato numérico)." ValidationGroup="GrpGuardar" ValidationExpression="^[0-9]{1,15}(?:\.[0-9]{1,4})?$" />
<ajax:ValidatorCalloutExtender ID="VCTxtPrecioMinimo" runat="server" HighlightCssClass="vco" TargetControlID="REVTxtPrecioMinimo" Width="300px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCTxtPrecioMinimo" runat="server" HighlightCssClass="vco" TargetControlID="REVTxtPrecioMinimo" Width="300px"></ajax:ValidatorCalloutExtender>--%>
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>
@@ -239,7 +239,7 @@
<div class="col-md-12"> <div class="col-md-12">
<div class="col-md-3" style="text-align: left"> <div class="col-md-3" style="text-align: left">
<input id="ChkSeleccionarTodos" type="checkbox" title="Seleccionar Todos" onclick="SeleccionarTodosChkGvSucursa()" /> <input id="ChkSeleccionarTodos" type="checkbox" title="Seleccionar Todos" onclick="SeleccionarTodosChkGvSucursa()" />
Seleccionar Todos Seleccionar Todos
</div> </div>
<div class="col-md-9" style="text-align: right"> <div class="col-md-9" style="text-align: right">
@@ -266,7 +266,7 @@
</asp:TemplateField> </asp:TemplateField>
<asp:TemplateField HeaderText="Precio Mínimo"> <asp:TemplateField HeaderText="Precio Mínimo">
<ItemTemplate> <ItemTemplate>
<asp:TextBox ID="TxtPrecioMinimo" Style="text-align: right" runat="server" CausesValidation="true" MaxLength="39" Text='<%# Eval("PrecioMinimo", "{0:N2}")%>' ValidationGroup="GrpEditGuardarO" Width="90px" CssClass="CssMCamviaPrecio"></asp:TextBox> <asp:TextBox ID="TxtPrecioMinimo" Style="text-align: right" runat="server" CausesValidation="true" MaxLength="39" Text='<%# Eval("PrecioMinimo", "{0:0.######}")%>' ValidationGroup="GrpEditGuardarO" Width="90px" CssClass="CssMCamviaPrecio"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTxtPrecioMinimo" runat="server" ControlToValidate="TxtPrecioMinimo" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Importe''</b> es necesario, por favor ingréselo." ValidationGroup="GrpEditGuardarS"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVTxtPrecioMinimo" runat="server" ControlToValidate="TxtPrecioMinimo" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Importe''</b> es necesario, por favor ingréselo." ValidationGroup="GrpEditGuardarS"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOTxtPrecioMinimo" runat="server" HighlightCssClass="vco" TargetControlID="RFVTxtPrecioMinimo" Width="100px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="VCOTxtPrecioMinimo" runat="server" HighlightCssClass="vco" TargetControlID="RFVTxtPrecioMinimo" Width="100px"></ajax:ValidatorCalloutExtender>
<ajax:FilteredTextBoxExtender ID="FilTxtPrecioMinimo" runat="server" TargetControlID="TxtPrecioMinimo" FilterType="Numbers,Custom" ValidChars="." InvalidChars=",-+" /> <ajax:FilteredTextBoxExtender ID="FilTxtPrecioMinimo" runat="server" TargetControlID="TxtPrecioMinimo" FilterType="Numbers,Custom" ValidChars="." InvalidChars=",-+" />
@@ -364,84 +364,99 @@
</div> </div>
</asp:Content> </asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server"> <asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<script> <script>
function onlyNumberKey(evt) {
// Only ASCII character in that range allowed
var ASCIICode = (evt.which) ? evt.which : evt.keyCode
if (ASCIICode > 31 && (ASCIICode < 48 || ASCIICode > 57))
{
if (ASCIICode == 46) {
return true
} else {
return false;
}
}
return true;
}
function CambiaImporte() { function CambiaImporte() {
var topLevelElem = document.getElementById("form1"); var topLevelElem = document.getElementById("form1");
var checks = topLevelElem.getElementsByTagName("input"); var checks = topLevelElem.getElementsByTagName("input");
var idd = ''; var idd = '';
var valor = $('#<%= TxtImporte.ClientID %>').val(); var valor = $('#<%= TxtImporte.ClientID %>').val();
for (var i = 0; i < checks.length; i++) { for (var i = 0; i < checks.length; i++) {
if (checks[i].type == "checkbox") { if (checks[i].type == "checkbox") {
debugger; debugger;
if (checks[i].checked) { if (checks[i].checked) {
idd = checks[i].id.replace('C_GVPrecios_chkPS_', '') idd = checks[i].id.replace('C_GVPrecios_chkPS_', '')
if ($get('C_GVPrecios_TxtPrecio_' + idd) != null) { if ($get('C_GVPrecios_TxtPrecio_' + idd) != null) {
$get('C_GVPrecios_TxtPrecio_' + idd).value = FormatoNumero(ToDouble(valor), 2); $get('C_GVPrecios_TxtPrecio_' + idd).value = FormatoNumero(ToDouble(valor), 2);
} }
} }
} }
} }
} }
function CambiaPrecio() { function CambiaPrecio() {
var topLevelElem = document.getElementById("form1"); var topLevelElem = document.getElementById("form1");
var checks = topLevelElem.getElementsByTagName("input"); var checks = topLevelElem.getElementsByTagName("input");
var idd = ''; var idd = '';
var valor = $('#<%= TxtPrecio.ClientID %>').val(); var valor = $('#<%= TxtPrecio.ClientID %>').val();
//if (!isNaN(valor) && valor.length > 0) { //if (!isNaN(valor) && valor.length > 0) {
// $('.CssCamviaPrecio').val(valor); // $('.CssCamviaPrecio').val(valor);
//} //}
for (var i = 0; i < checks.length; i++) { for (var i = 0; i < checks.length; i++) {
if (checks[i].type == "checkbox") { if (checks[i].type == "checkbox") {
debugger; debugger;
if (checks[i].checked) { if (checks[i].checked) {
idd = checks[i].id.replace('C_GVPrecios_chkPS_', '') idd = checks[i].id.replace('C_GVPrecios_chkPS_', '')
if ($get('C_GVPrecios_TxtPrecioMinimo_' + idd) != null) { if ($get('C_GVPrecios_TxtPrecioMinimo_' + idd) != null) {
$get('C_GVPrecios_TxtPrecioMinimo_' + idd).value = FormatoNumero(ToDouble(valor), 2); $get('C_GVPrecios_TxtPrecioMinimo_' + idd).value = FormatoNumero(ToDouble(valor), 2);
} }
} }
} }
} }
} }
function CambiaPrecioModal() { function CambiaPrecioModal() {
var ChecksGv = $('.CsMCheckGvSucursal').find('input[type=checkbox]'); var ChecksGv = $('.CsMCheckGvSucursal').find('input[type=checkbox]');
var valor = $('#<%= TxtAplicarPrecio.ClientID %>').val(); var valor = $('#<%= TxtAplicarPrecio.ClientID %>').val();
if (!isNaN(valor) && valor.length > 0) { if (!isNaN(valor) && valor.length > 0) {
$(".CssMCamviaPrecio").each(function (index) { $(".CssMCamviaPrecio").each(function (index) {
if ($($(ChecksGv).get(index)).attr('checked')) { if ($($(ChecksGv).get(index)).attr('checked')) {
$(this).val(valor); $(this).val(valor);
} }
}); });
} }
} }
function SeleccionarTodosChkGvSucursa() { function SeleccionarTodosChkGvSucursa() {
if ($('#ChkSeleccionarTodos').attr('checked')) { if ($('#ChkSeleccionarTodos').attr('checked')) {
$('.CsMCheckGvSucursal').find('input[type=checkbox]').prop('checked', true); $('.CsMCheckGvSucursal').find('input[type=checkbox]').prop('checked', true);
} else { } else {
$('.CsMCheckGvSucursal').find('input[type=checkbox]').prop('checked', false); $('.CsMCheckGvSucursal').find('input[type=checkbox]').prop('checked', false);
} }
} }
function FncSeleccionaChk(chk) { function FncSeleccionaChk(chk) {
chk.checked = true; chk.checked = true;
} }
</script> </script>
</asp:Content> </asp:Content>

View File

@@ -121,13 +121,13 @@ Partial Class MetasVendedores
End Sub End Sub
Private Sub LnkExportar_Click(sender As Object, e As EventArgs) Handles LnkExportar.Click Private Sub LnkExportar_Click(sender As Object, e As EventArgs) Handles LnkExportar.Click
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa) Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
Dim params As New List(Of ReportParameter) Dim params As New List(Of ReportParameter)
params.Add(New ReportParameter("pEmp", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("pEmp", UsuarioActual.Empresa.Empresa))
If Imagen.Exists Then If Imagen.Exists Then
params.Add(New ReportParameter("pImg", logouri)) params.Add(New ReportParameter("pImg", $"file://{Imagen.FullName}"))
Else Else
params.Add(New ReportParameter("pImg", "")) params.Add(New ReportParameter("pImg", ""))
End If End If

View File

@@ -3284,10 +3284,10 @@ Partial Class PV
Exit Sub Exit Sub
End If End If
If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso ChkServicioDomicilio.Checked AndAlso GvInv.Rows.Cast(Of GridViewRow)().Count(Function(gvr) gvr.FCCheckBox("cbInv").Checked) <= 0 Then 'If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso ChkServicioDomicilio.Checked AndAlso GvInv.Rows.Cast(Of GridViewRow)().Count(Function(gvr) gvr.FCCheckBox("cbInv").Checked) <= 0 Then
Alert("Debe tener producto seleccionados para servicio a domicilio.", TipoMensaje.MsgAdvertencia) ' Alert("Debe tener producto seleccionados para servicio a domicilio.", TipoMensaje.MsgAdvertencia)
Exit Sub ' Exit Sub
End If 'End If
If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso ChkServicioDomicilio.Checked AndAlso GvInv.Rows.Cast(Of GridViewRow)().Count(Function(gvr) gvr.FCCheckBox("cbInv").Checked) > 0 Then If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso ChkServicioDomicilio.Checked AndAlso GvInv.Rows.Cast(Of GridViewRow)().Count(Function(gvr) gvr.FCCheckBox("cbInv").Checked) > 0 Then
For Each GvRow As GridViewRow In GvInv.Rows For Each GvRow As GridViewRow In GvInv.Rows
@@ -4393,7 +4393,7 @@ Partial Class PV
End If End If
Else Else
If DrPS("CveClasificacion").ToString.ToEntero.Contiene(20516, 20515) Then If DrPS("CveClasificacion").ToString.ToEntero.Contiene(20516, 20515) Then
Descuento = PU * ClasificacionesDescuentos(DrPS("CveClasificacion").ToString.ToEntero) Descuento = ((Cantidad * PU) * ClasificacionesDescuentos(DrPS("CveClasificacion").ToString.ToEntero)).RoundSQL(2)
End If End If
End If End If

View File

@@ -6,10 +6,10 @@ Imports Microsoft.Reporting.WebForms
Imports System.Data Imports System.Data
Partial Class Ventas_RepProductosServicios Partial Class Ventas_RepProductosServicios
Inherits ClsPaginas Inherits ClsPaginas
#Region "PROPIEDADES" #Region "PROPIEDADES"
Private Property DtVentas As DataTable Private Property DtVentas As DataTable
Get Get
Return DirectCast(ViewState("DtVentas"), DataTable) Return DirectCast(ViewState("DtVentas"), DataTable)
@@ -52,24 +52,24 @@ Partial Class Ventas_RepProductosServicios
Set(value As Integer) Set(value As Integer)
ViewState("TipoCambio") = value ViewState("TipoCambio") = value
End Set End Set
End Property End Property
#End Region #End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then If Not IsPostBack Then
If UsuarioActual.CveEmpresa = 2 AndAlso UsuarioActual.CveUsuario.Contiene(77, 21) Then Response.Redirect("/Inicio.aspx") If UsuarioActual.CveEmpresa = 2 AndAlso UsuarioActual.CveUsuario.Contiene(77, 21) Then Response.Redirect("/Inicio.aspx")
CargarMarcas() CargarMarcas()
SetValues() SetValues()
End If End If
End Sub End Sub
#Region " CARGA DATOS INICIALES " #Region " CARGA DATOS INICIALES "
Private Sub CargaGrupo() Private Sub CargaGrupo()
DdlGrupo.Items.Insert(0, New ListItem("Categoria", "3")) DdlGrupo.Items.Insert(0, New ListItem("Categoria", "3"))
DdlGrupo.Items.Insert(1, New ListItem("Clasificación", "4")) DdlGrupo.Items.Insert(1, New ListItem("Clasificación", "4"))
@@ -89,7 +89,7 @@ Partial Class Ventas_RepProductosServicios
DdlGrupo.Items.Insert(15, New ListItem("Cliente - PS", "20")) DdlGrupo.Items.Insert(15, New ListItem("Cliente - PS", "20"))
DdlGrupo.Items.Insert(16, New ListItem("Sucursal - PS", "21")) DdlGrupo.Items.Insert(16, New ListItem("Sucursal - PS", "21"))
DdlGrupo.Items.Insert(17, New ListItem("Familia - Marca - Tipo", "22")) DdlGrupo.Items.Insert(17, New ListItem("Familia - Marca - Tipo", "22"))
DdlGrupo.Items.Insert(18, New ListItem("Tipo Cliente", "23")) DdlGrupo.Items.Insert(18, New ListItem("Tipo Cliente", "23"))
DdlGrupo.Items.Insert(18, New ListItem("Marca", "24")) DdlGrupo.Items.Insert(18, New ListItem("Marca", "24"))
DdlGrupo.Items.Insert(18, New ListItem("Cliente Sucursal", "26")) DdlGrupo.Items.Insert(18, New ListItem("Cliente Sucursal", "26"))
@@ -168,24 +168,24 @@ Partial Class Ventas_RepProductosServicios
'Cargo Clasificaciones 'Cargo Clasificaciones
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa) DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa)
DdlClasificacion.DataBind() DdlClasificacion.DataBind()
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
DvLitraje.Visible = True DvLitraje.Visible = True
'garantia 'garantia
divgarantia1.Visible = True divgarantia1.Visible = True
divgarantia2.Visible = True divgarantia2.Visible = True
divdistribuidor1.Visible = True divdistribuidor1.Visible = True
divdistribuidor2.Visible = True divdistribuidor2.Visible = True
DdlClasificacion2.DataSource = GlobalDTClasificaciones2(UsuarioActual.CveEmpresa) DdlClasificacion2.DataSource = GlobalDTClasificaciones2(UsuarioActual.CveEmpresa)
DdlClasificacion2.DataBind() DdlClasificacion2.DataBind()
divClasif2texto.Visible = True divClasif2texto.Visible = True
divClasif2.Visible = True divClasif2.Visible = True
DdlGrupo.Items.Add(New ListItem("Clasificacion2", "25")) DdlGrupo.Items.Add(New ListItem("Clasificacion2", "25"))
End If End If
@@ -196,7 +196,7 @@ Partial Class Ventas_RepProductosServicios
DdlSubProyectoEjecucion.DataBind() DdlSubProyectoEjecucion.DataBind()
'Vendedor 'Vendedor
DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=-1).FiltraParametros("VendedorTipo in (1,4)") 'vendedores y vendedores de piso DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=-1).FiltraParametros("VendedorTipo in (1,4)") 'vendedores y vendedores de piso
DdlVendedor.DataBind() DdlVendedor.DataBind()
'CargaUsuarios 'CargaUsuarios
@@ -259,21 +259,28 @@ Partial Class Ventas_RepProductosServicios
DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa, -1) DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa, -1)
DdlClientes.DataBind() DdlClientes.DataBind()
DdlClientes.ddl.Items.Insert(0, New ListItem("Todos", "-1")) DdlClientes.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
End If End If
If UsuarioActual.CveVendedor > 0 AndAlso Not UsuarioActual.TienePermisoProceso(263) Then If UsuarioActual.CveVendedor > 0 AndAlso Not UsuarioActual.TienePermisoProceso(263) Then
DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString()) DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString())
DdlVendedor.Attributes.Add("disabled", "disabled") DdlVendedor.Attributes.Add("disabled", "disabled")
DdlVendedor.Enabled = False DdlVendedor.Enabled = False
End If End If
txtFechaI.Text = Now.FirstDayOfMonth.ToShortDateString txtFechaI.Text = Now.FirstDayOfMonth.ToShortDateString
txtFechaF.Text = Now.ToShortDateString txtFechaF.Text = Now.ToShortDateString
End Sub If UsuarioActual.TienePermisoProceso(339) Then
GvDatos.Columns(2).Visible = False
GvDatos.Columns(3).Visible = False
GvDatos.Columns(4).Visible = False
GvDatos.Columns(5).Visible = False
End If
End Sub
#End Region #End Region
#Region " CARGA DATOS " #Region " CARGA DATOS "
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
CargaDatos() CargaDatos()
@@ -300,7 +307,7 @@ Partial Class Ventas_RepProductosServicios
DdlPS.SelectedValue.ToEntero, FechaI, FechaF, FechaIEjec, FechaFEjec, CveCliente, DdlPS.SelectedValue.ToEntero, FechaI, FechaF, FechaIEjec, FechaFEjec, CveCliente,
DdlSubProyectoEjecucion.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, DdlUsuario.SelectedValue.ToEntero, DdlEstatus.SelectedValue.ToEntero, "-1", DdlSubProyectoEjecucion.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, DdlUsuario.SelectedValue.ToEntero, DdlEstatus.SelectedValue.ToEntero, "-1",
UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero, CveUsuarioConsulta:=UsuarioActual.CveUsuario, TipoDocto:=TipoComprobante, UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero, CveUsuarioConsulta:=UsuarioActual.CveUsuario, TipoDocto:=TipoComprobante,
CveClienteClasificacion:=DdlClienteClasificacion.SelectedValue.ToEntero, TipoCambio:=TipoCambio, TCEspecifico:=TCEspecifico, CveProveedorCompra:=CveProveedorCompra, CveClienteClasificacion:=DdlClienteClasificacion.SelectedValue.ToEntero, TipoCambio:=TipoCambio, TCEspecifico:=TCEspecifico, CveProveedorCompra:=CveProveedorCompra,
CveMarca:=DdlMarcaPSDes.SelectedValue.ToEntero, MostrarLitraje:=ChkLitraje.Checked, TipoCliente:=DdlTipoCliente.SelectedValue.ToEntero, EsGarantia:=DdlGarantia.SelectedValue.ToEntero, ModalidadContable:=ModalidadContable, CveMarca:=DdlMarcaPSDes.SelectedValue.ToEntero, MostrarLitraje:=ChkLitraje.Checked, TipoCliente:=DdlTipoCliente.SelectedValue.ToEntero, EsGarantia:=DdlGarantia.SelectedValue.ToEntero, ModalidadContable:=ModalidadContable,
CveCondicionesPago:=DdlCondicionesPago.SelectedValue.ToEntero, EsDistribuidor:=DdlDistribuidor.SelectedValue.ToEntero, CveClasificacion2:=DdlClasificacion2.SelectedValue.ToEntero) Then CveCondicionesPago:=DdlCondicionesPago.SelectedValue.ToEntero, EsDistribuidor:=DdlDistribuidor.SelectedValue.ToEntero, CveClasificacion2:=DdlClasificacion2.SelectedValue.ToEntero) Then
GvDatos.DataSource = ObjVentas.DtResultados GvDatos.DataSource = ObjVentas.DtResultados
@@ -324,55 +331,55 @@ Partial Class Ventas_RepProductosServicios
DivMarca.Visible = True DivMarca.Visible = True
LblMarca.Visible = True LblMarca.Visible = True
Using ObjMarcas As New ClsProductosServicios Using ObjMarcas As New ClsProductosServicios
If ObjMarcas.GetMarcas(UsuarioActual.CveEmpresa) Then If ObjMarcas.GetMarcas(UsuarioActual.CveEmpresa) Then
DdlMarcaPSDes.DataSource = ObjMarcas.DtResultados DdlMarcaPSDes.DataSource = ObjMarcas.DtResultados
DdlMarcaPSDes.DataBind() DdlMarcaPSDes.DataBind()
End If End If
End Using End Using
End If End If
DdlMarcaPSDes.Items.Insert(0, New ListItem(" Todos ", "-1")) DdlMarcaPSDes.Items.Insert(0, New ListItem(" Todos ", "-1"))
End Sub End Sub
#End Region #End Region
#Region " GV DATOS - PERSONALIZAR " #Region " GV DATOS - PERSONALIZAR "
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.RowType = DataControlRowType.DataRow Then
Dim Css As String = "Texto" Dim Css As String = "Texto"
Dim CveClasificacionDetalle As String = "-1" Dim CveClasificacionDetalle As String = "-1"
Dim cveMarca As String = DdlMarcaPSDes.SelectedValue Dim cveMarca As String = DdlMarcaPSDes.SelectedValue
If DdlGrupo.SelectedValue.ToEntero = 22 Then If DdlGrupo.SelectedValue.ToEntero = 22 Then
Dim tipo As Integer = If(e.Row.DBCampo("CveClasificacionDetalle").ToEntero() > 0, 4, If(e.Row.DBCampo("CveMarca").ToEntero() > 0, 3, If(e.Row.DBCampo("CveClasificacion").ToEntero() > 0, 2, 1))) Dim tipo As Integer = If(e.Row.DBCampo("CveClasificacionDetalle").ToEntero() > 0, 4, If(e.Row.DBCampo("CveMarca").ToEntero() > 0, 3, If(e.Row.DBCampo("CveClasificacion").ToEntero() > 0, 2, 1)))
Select Case tipo Select Case tipo
Case 4 Case 4
CveClasificacionDetalle = e.Row.DBCampo("CveClasificacionDetalle").ToString() ' String.Format("{0}&CveClasificacionDetalle={1}&CveMarca={2}", squery, e.Row.DBCampo("CveClasificacionDetalle").ToEntero(), e.Row.DBCampo("CveMarca").ToEntero()) CveClasificacionDetalle = e.Row.DBCampo("CveClasificacionDetalle").ToString() ' String.Format("{0}&CveClasificacionDetalle={1}&CveMarca={2}", squery, e.Row.DBCampo("CveClasificacionDetalle").ToEntero(), e.Row.DBCampo("CveMarca").ToEntero())
cveMarca = e.Row.DBCampo("CveMarca").ToString() cveMarca = e.Row.DBCampo("CveMarca").ToString()
Case 3 Case 3
'squery = String.Format("{0}&CveMarca{1}", squery, e.Row.DBCampo("CveMarca").ToEntero()) 'squery = String.Format("{0}&CveMarca{1}", squery, e.Row.DBCampo("CveMarca").ToEntero())
cveMarca = e.Row.DBCampo("CveMarca").ToString() cveMarca = e.Row.DBCampo("CveMarca").ToString()
e.Row.CssClass = "SubTotalesB" e.Row.CssClass = "SubTotalesB"
Case 2 Case 2
e.Row.CssClass = "SubTotales" e.Row.CssClass = "SubTotales"
Case 1 Case 1
e.Row.CssClass = "Totales" e.Row.CssClass = "Totales"
End Select End Select
Else Else
If e.Row.DBCampo("Orden") = "" Then If e.Row.DBCampo("Orden") = "" Then
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Center e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Center
e.Row.Cells(0).Width = Unit.Pixel(200) e.Row.Cells(0).Width = Unit.Pixel(200)
e.Row.Cells(1).HorizontalAlign = HorizontalAlign.Center e.Row.Cells(1).HorizontalAlign = HorizontalAlign.Center
e.Row.Cells(1).Width = Unit.Pixel(60) e.Row.Cells(1).Width = Unit.Pixel(60)
e.Row.Cells(2).Width = Unit.Pixel(90) e.Row.Cells(2).Width = Unit.Pixel(90)
e.Row.Cells(3).Width = Unit.Pixel(90) e.Row.Cells(3).Width = Unit.Pixel(90)
e.Row.Cells(5).Width = Unit.Pixel(80) e.Row.Cells(5).Width = Unit.Pixel(80)
e.Row.Cells(8).Width = Unit.Pixel(100) e.Row.Cells(8).Width = Unit.Pixel(100)
e.Row.CssClass = "Totales" e.Row.CssClass = "Totales"
Css = "Totales" Css = "Totales"
ElseIf DdlGrupo.SelectedValue.Contiene("20", "21") And Not e.Row.DBCampo("CvePS").ToEntero > 0 Then ElseIf DdlGrupo.SelectedValue.Contiene("20", "21") And Not e.Row.DBCampo("CvePS").ToEntero > 0 Then
e.Row.CssClass = "SubTotales" e.Row.CssClass = "SubTotales"
End If End If
End If End If
' PARA LIGA ' PARA LIGA
@@ -386,7 +393,7 @@ Partial Class Ventas_RepProductosServicios
e.Row.DBCampo("CveProyecto"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveCategoria"), e.Row.DBCampo("CveClasificacion"), e.Row.DBCampo("CvePS"), e.Row.DBCampo("CveProyecto"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveCategoria"), e.Row.DBCampo("CveClasificacion"), e.Row.DBCampo("CvePS"),
e.Row.DBCampo("CveCliente"), e.Row.DBCampo("CveSubProyectoEjecucion"), e.Row.DBCampo("Vendedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveEstatusFactura"), e.Row.DBCampo("CveCliente"), e.Row.DBCampo("CveSubProyectoEjecucion"), e.Row.DBCampo("Vendedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveEstatusFactura"),
e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("AnioEjec"), e.Row.DBCampo("MesEjec"), e.Row.DBCampo("AnioMesEjec"), e.Row.DBCampo("FechaEjec"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("AnioEjec"), e.Row.DBCampo("MesEjec"), e.Row.DBCampo("AnioMesEjec"), e.Row.DBCampo("FechaEjec"),
FechaI, FechaF, FechaIEjec, FechaFEjec, e.Row.DBCampo("TipoDocto"), e.Row.DBCampo("CveGpo"), e.Row.DBCampo("CveMoneda"), e.Row.DBCampo("TipoCambio"), e.Row.DBCampo("TCEspecifico"), e.Row.DBCampo("CveClienteClasificacion"), e.Row.DBCampo("CveProveedorCompra"), cveMarca, FechaI, FechaF, FechaIEjec, FechaFEjec, e.Row.DBCampo("TipoDocto"), e.Row.DBCampo("CveGpo"), e.Row.DBCampo("CveMoneda"), e.Row.DBCampo("TipoCambio"), e.Row.DBCampo("TCEspecifico"), e.Row.DBCampo("CveClienteClasificacion"), e.Row.DBCampo("CveProveedorCompra"), cveMarca,
CveClasificacionDetalle, If(DdlGrupo.SelectedValue.ToEntero = 23, e.Row.DBCampo("TipoCliente"), DdlTipoCliente.SelectedValue), If(Not ChkLecturaAdmin.Checked, 1, 0), CveClasificacionDetalle, If(DdlGrupo.SelectedValue.ToEntero = 23, e.Row.DBCampo("TipoCliente"), DdlTipoCliente.SelectedValue), If(Not ChkLecturaAdmin.Checked, 1, 0),
e.Row.DBCampo("EsGarantia"), e.Row.DBCampo("CveCondicionesPago"), IIf(e.Row.DBCampo("MostrarLitraje") = "True", 1, 0), e.Row.DBCampo("EsDistribuidor"), e.Row.DBCampo("CveClienteSucursal").ToString.ToEntero, DdlClasificacion2.SelectedValue) e.Row.DBCampo("EsGarantia"), e.Row.DBCampo("CveCondicionesPago"), IIf(e.Row.DBCampo("MostrarLitraje") = "True", 1, 0), e.Row.DBCampo("EsDistribuidor"), e.Row.DBCampo("CveClienteSucursal").ToString.ToEntero, DdlClasificacion2.SelectedValue)
@@ -437,10 +444,10 @@ Partial Class Ventas_RepProductosServicios
End If End If
UPDatos.Update() UPDatos.Update()
End Sub End Sub
#End Region #End Region
#Region " SELECTED INDEX CHANGED" #Region " SELECTED INDEX CHANGED"
Protected Sub DdlClienteClasificacion_SelectedIndexChanged(sender As Object, e As EventArgs) Protected Sub DdlClienteClasificacion_SelectedIndexChanged(sender As Object, e As EventArgs)
CargaClientes() CargaClientes()
@@ -492,8 +499,8 @@ Partial Class Ventas_RepProductosServicios
If DdlTipoComprobante.SelectedValue <> "-1" Then If DdlTipoComprobante.SelectedValue <> "-1" Then
DdlEstatus.DataSource = GlobalDTEstatusFactura.FiltraParametros(String.Format("TipoDocto = '{0}'", DdlTipoComprobante.SelectedValue)) DdlEstatus.DataSource = GlobalDTEstatusFactura.FiltraParametros(String.Format("TipoDocto = '{0}'", DdlTipoComprobante.SelectedValue))
Else Else
DdlEstatus.DataSource = GlobalDTEstatusFactura DdlEstatus.DataSource = GlobalDTEstatusFactura
End If End If
DdlEstatus.Items.Add(New ListItem("Todos", "-1")) DdlEstatus.Items.Add(New ListItem("Todos", "-1"))
DdlEstatus.DataBind() DdlEstatus.DataBind()
@@ -511,10 +518,10 @@ Partial Class Ventas_RepProductosServicios
LiEspecifico.Visible = False LiEspecifico.Visible = False
End If End If
UpBodyTipoCambio.Update() UpBodyTipoCambio.Update()
End Sub End Sub
#End Region #End Region
#Region " IMPRIMIR " #Region " IMPRIMIR "
Protected Sub LnkPdf_Click(sender As Object, e As EventArgs) Handles LnkPdf.Click Protected Sub LnkPdf_Click(sender As Object, e As EventArgs) Handles LnkPdf.Click
If GvDatos.Rows.Count > 0 Then If GvDatos.Rows.Count > 0 Then
@@ -531,21 +538,21 @@ Partial Class Ventas_RepProductosServicios
FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.ToDate, MinFecha) FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.ToDate, MinFecha)
FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.ToDate, MaxFecha) FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.ToDate, MaxFecha)
FechaIEjec = If(IsDate(TxtFechaIEjec.Text.Trim()), TxtFechaIEjec.Text.ToDate, MinFecha) FechaIEjec = If(IsDate(TxtFechaIEjec.Text.Trim()), TxtFechaIEjec.Text.ToDate, MinFecha)
FechaFEjec = If(IsDate(TxtFechaFEjec.Text.Trim()), TxtFechaFEjec.Text.ToDate, MaxFecha) FechaFEjec = If(IsDate(TxtFechaFEjec.Text.Trim()), TxtFechaFEjec.Text.ToDate, MaxFecha)
Dim Cliente = If(DdlClientes.SelectedText = "", "", $"&emsp;<b>Cliente:</b>&nbsp;{DdlClientes.SelectedText}") Dim Cliente = If(DdlClientes.SelectedText = "", "", $"&emsp;<b>Cliente:</b>&nbsp;{DdlClientes.SelectedText}")
Dim Proveedor = If(DdlProveedor.SelectedValue = "", "", $"&emsp;<b>Proveedor:</b>&nbsp;{DdlProveedor.SelectedText}") Dim Proveedor = If(DdlProveedor.SelectedValue = "", "", $"&emsp;<b>Proveedor:</b>&nbsp;{DdlProveedor.SelectedText}")
Dim FechaInicio = If(txtFechaI.Text = "", "", $"&emsp;<b>Fecha Inicio:</b>&nbsp;{txtFechaI.Text}") Dim FechaInicio = If(txtFechaI.Text = "", "", $"&emsp;<b>Fecha Inicio:</b>&nbsp;{txtFechaI.Text}")
Dim FechaFin = If(txtFechaF.Text = "", "", $"&emsp;<b>Fecha Fin:</b>&nbsp;{txtFechaF.Text}") Dim FechaFin = If(txtFechaF.Text = "", "", $"&emsp;<b>Fecha Fin:</b>&nbsp;{txtFechaF.Text}")
Dim Grupo = If(DdlGrupo.SelectedValue = "-1", "", $"&emsp;<b>Agrupado por:</b>&nbsp;{DdlGrupo.SelectedItem.Text}") Dim Grupo = If(DdlGrupo.SelectedValue = "-1", "", $"&emsp;<b>Agrupado por:</b>&nbsp;{DdlGrupo.SelectedItem.Text}")
Dim Categoria = If(DdlCategoria.SelectedValue = "-1", "", $"&emsp;<b>Categoria:</b>&nbsp;{DdlCategoria.SelectedItem.Text }") Dim Categoria = If(DdlCategoria.SelectedValue = "-1", "", $"&emsp;<b>Categoria:</b>&nbsp;{DdlCategoria.SelectedItem.Text }")
Dim Clasificacion = If(DdlClasificacion.SelectedValue = "-1", "", $"&emsp;<b>Clasificación:</b>&nbsp;{DdlClasificacion.SelectedItem.Text}") Dim Clasificacion = If(DdlClasificacion.SelectedValue = "-1", "", $"&emsp;<b>Clasificación:</b>&nbsp;{DdlClasificacion.SelectedItem.Text}")
Dim PS = If(DdlPS.SelectedValue = "-1", "", $"&emsp;<b>P.S.:</b>&nbsp;{DdlPS.SelectedText}") Dim PS = If(DdlPS.SelectedValue = "-1", "", $"&emsp;<b>P.S.:</b>&nbsp;{DdlPS.SelectedText}")
Dim Proyecto = If(DdlSubProyecto.SelectedValue = "-1", "", $"&emsp;<b>Proyecto:</b>&nbsp;{DdlSubProyecto.SelectedItem.Text}") Dim Proyecto = If(DdlSubProyecto.SelectedValue = "-1", "", $"&emsp;<b>Proyecto:</b>&nbsp;{DdlSubProyecto.SelectedItem.Text}")
Dim Estatus = If(DdlEstatus.SelectedValue = "-1", "", $"&emsp;<b>Estatus:</b>&nbsp;{DdlEstatus.SelectedItem.Text}") Dim Estatus = If(DdlEstatus.SelectedValue = "-1", "", $"&emsp;<b>Estatus:</b>&nbsp;{DdlEstatus.SelectedItem.Text}")
Dim Usuario = If(DdlUsuario.SelectedValue = "-1", "", $"&emsp;<b>Usuario:</b>&nbsp;{DdlUsuario.SelectedItem.Text}") Dim Usuario = If(DdlUsuario.SelectedValue = "-1", "", $"&emsp;<b>Usuario:</b>&nbsp;{DdlUsuario.SelectedItem.Text}")
If DtVentas IsNot Nothing AndAlso DtVentas.Rows.Count > 0 Then If DtVentas IsNot Nothing AndAlso DtVentas.Rows.Count > 0 Then
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)) Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa) Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
@@ -555,7 +562,7 @@ Partial Class Ventas_RepProductosServicios
params.Add(New ReportParameter("FechaFin", If(txtFechaF.Text <> "", FechaF.ToShortDateString, ""))) params.Add(New ReportParameter("FechaFin", If(txtFechaF.Text <> "", FechaF.ToShortDateString, "")))
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString)) params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString))
params.Add(New ReportParameter("Filtros", $"{Grupo}{Cliente}{FechaInicio}{FechaFin}{Categoria}{Clasificacion}{PS}{Proyecto}{Estatus}{Usuario}{Proveedor}")) params.Add(New ReportParameter("Filtros", $"{Grupo}{Cliente}{FechaInicio}{FechaFin}{Categoria}{Clasificacion}{PS}{Proyecto}{Estatus}{Usuario}{Proveedor}"))
If Imagen.Exists Then If Imagen.Exists Then
params.Add(New ReportParameter("LogoPath", logouri)) params.Add(New ReportParameter("LogoPath", logouri))
@@ -567,12 +574,12 @@ Partial Class Ventas_RepProductosServicios
Alert("No hay información para mostrar.", TipoMensaje.MsgAdvertencia) Alert("No hay información para mostrar.", TipoMensaje.MsgAdvertencia)
End If End If
End Sub End Sub
#End Region #End Region
#Region "GRAFICA" #Region "GRAFICA"
Protected Sub LnkVerGrafica_Click(sender As Object, e As EventArgs) Protected Sub LnkVerGrafica_Click(sender As Object, e As EventArgs)
If Not DtVentas IsNot Nothing AndAlso DtVentas.Rows.Count > 0 Then If Not DtVentas IsNot Nothing AndAlso DtVentas.Rows.Count > 0 Then
Alert("No hay datos disponibles", TipoMensaje.MsgAdvertencia) Alert("No hay datos disponibles", TipoMensaje.MsgAdvertencia)
@@ -704,9 +711,9 @@ Partial Class Ventas_RepProductosServicios
Protected Sub DdlVer_SelectedIndexChanged(sender As Object, e As EventArgs) Protected Sub DdlVer_SelectedIndexChanged(sender As Object, e As EventArgs)
CambioGrafica() CambioGrafica()
End Sub End Sub
#End Region #End Region
End Class End Class

View File

@@ -270,6 +270,14 @@ Partial Class Ventas_RepProductosServiciosDetalle
TCEspecifico = 0 TCEspecifico = 0
TipoCambio = 1 TipoCambio = 1
If UsuarioActual.TienePermisoProceso(339) Then
GvDatos.Columns(10).Visible = False
GvDatos.Columns(11).Visible = False
GvDatos.Columns(12).Visible = False
GvDatos.Columns(13).Visible = False
GvDatos.Columns(14).Visible = False
End If
End Sub End Sub
Private Sub CargaSucursales(CveCliente As Integer, CveClienteSucursal As Integer) Private Sub CargaSucursales(CveCliente As Integer, CveClienteSucursal As Integer)

File diff suppressed because it is too large Load Diff

View File

@@ -2152,7 +2152,14 @@ Partial Class Ventas
ViewState("EsGarantia") = value ViewState("EsGarantia") = value
End Set End Set
End Property End Property
Private Property DtMercancias As DataTable
Get
Return If(IsNothing(ViewState("DtMercancias")), Nothing, CType(ViewState("DtMercancias"), DataTable))
End Get
Set(value As DataTable)
ViewState("DtMercancias") = value
End Set
End Property
#End Region #End Region
'#Region "AuxiliarConta" '#Region "AuxiliarConta"
@@ -2452,6 +2459,7 @@ Partial Class Ventas
CargaClasificaciones() CargaClasificaciones()
CargaPS(-1, DdlPS) CargaPS(-1, DdlPS)
CargaPS(-1, DdlPSMercancia)
'CargaPSRemision(-1, DdlPSRemision) 'CargaPSRemision(-1, DdlPSRemision)
CargaPSPyME(-1, DdlPSPyME) CargaPSPyME(-1, DdlPSPyME)
@@ -5322,6 +5330,11 @@ Partial Class Ventas
BtnsFacturar.Visible = True BtnsFacturar.Visible = True
End If End If
'VERIFICA SI YA SE FACTURO COMPLETAMENTE
If TmpDT.SUM("CantidadFacturadaRem") = TmpDT.SUM("Cantidad") Then
BtnsFacturar.Visible = False
End If
'VERIFICA SI TIENE USADOS O GARANTIAS PENDIENTES 'VERIFICA SI TIENE USADOS O GARANTIAS PENDIENTES
If BtnsFacturar.Visible Then If BtnsFacturar.Visible Then
If (Not EsGarantia AndAlso (DtUsadosPendientes IsNot Nothing AndAlso DtUsadosPendientes.Rows.Count > 0)) Then If (Not EsGarantia AndAlso (DtUsadosPendientes IsNot Nothing AndAlso DtUsadosPendientes.Rows.Count > 0)) Then
@@ -11021,12 +11034,18 @@ Partial Class Ventas
ObjFactura.EsGarantia = Me.EsGarantia ObjFactura.EsGarantia = Me.EsGarantia
If UsuarioActual.Empresa.Funcionalidad(558).ToEntero() = 1 AndAlso TrKilometraje.Visible Then
ObjFactura.Kilometraje = TxtKilometraje.Text.Trim.ToDecimal()
End If
'ASIGNAR RFC RECEPTOR 'ASIGNAR RFC RECEPTOR
If ObjFactura.Timbre IsNot Nothing Then If ObjFactura.Timbre IsNot Nothing Then
If ObjFactura.Timbre.Receptor IsNot Nothing Then If ObjFactura.Timbre.Receptor IsNot Nothing Then
ObjFactura.RFCReceptor = ObjFactura.Timbre.Receptor.RFC ObjFactura.RFCReceptor = ObjFactura.Timbre.Receptor.RFC
End If End If
End If End If
ObjFactura.DtMercancias = DtMercancias
End Sub End Sub
Private Sub CreaObjetosVentaDevolucion() Private Sub CreaObjetosVentaDevolucion()
@@ -11358,7 +11377,7 @@ Partial Class Ventas
Timbre.Receptor.DomicilioFiscalReceptor = Obj.ClienteSucursal.CP Timbre.Receptor.DomicilioFiscalReceptor = Obj.ClienteSucursal.CP
Else Else
Timbre.Receptor.RFC = Obj.Cliente.RFC Timbre.Receptor.RFC = Obj.Cliente.RFC
Timbre.Receptor.Nombre = Obj.Cliente.Nombre Timbre.Receptor.Nombre = Obj.Cliente.NombreComercial
Timbre.Receptor.DomicilioFiscalReceptor = Obj.Cliente.CP Timbre.Receptor.DomicilioFiscalReceptor = Obj.Cliente.CP
End If End If
@@ -14383,15 +14402,16 @@ Partial Class Ventas
End If End If
End If 'DEBE GENERAR MOVIMIENTO SI SE FACTURAON PRODUCTOS, O NO SE REALIZA UNA REFACTURACION
Dim DebeGenerarMovimiento As Boolean = TmpDT.COUNT("CvePS", "CveTipoPS = 2") > 0 AndAlso (NuevaFactura <> 1)
Dim DebeGenerarMovimiento As Boolean = TmpDT.COUNT("CvePS", "CveTipoPS = 2") > 0 'VERIFICA QUE SE REALIZO EL MOVIMIENTO DE ALMACEN
'VERIFICA QUE SE REALIZO EL MOVIMIENTO DE ALMACEN If Not OcurrioError AndAlso DebeGenerarMovimiento AndAlso UsuarioActual.Empresa.Funcionalidad(558) = "1" AndAlso UsuarioActual.Empresa.Funcionalidad(567) = "1" AndAlso factura.TipoDocto.Contiene("Ing", "Rem") Then
If DebeGenerarMovimiento AndAlso UsuarioActual.Empresa.Funcionalidad(558) = "1" AndAlso UsuarioActual.Empresa.Funcionalidad(567) = "1" AndAlso factura.TipoDocto.Contiene("Ing", "Rem") Then If Not (ObjInventario.GetInv_Mov(factura.CveVenta, UsuarioActual.CveEmpresa) AndAlso ObjInventario.DtResultados.Rows.Count > 0) Then
If Not (ObjInventario.GetInv_Mov(factura.CveVenta, UsuarioActual.CveEmpresa) AndAlso ObjInventario.DtResultados.Rows.Count > 0) Then OcurrioError = True
OcurrioError = True ErrorList.Add("Ocurrió un error al verificar inventario.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
ErrorList.Add("Ocurrió un error al verificar inventario.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico") End If
End If End If
End If End If
End If End If
@@ -14831,12 +14851,11 @@ Partial Class Ventas
'TIMBRADO NUEVO 'TIMBRADO NUEVO
Try Try
PdfFactura(ObjFactura) Dim ObjetoPDF As Byte() = DescargarFactura(ObjFactura.CveVenta, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario)
'If DdlTipoComprobante.SelectedValue = "Ing" Or DdlTipoComprobante.SelectedValue = "Ant" Then
' PdfFactura(ObjFactura) If ObjetoPDF Is Nothing OrElse ObjetoPDF.Length = 0 Then
' 'Else PdfFactura(ObjFactura, AplicaPagare:=If(ObjFactura.TipoDocto.Contiene("Ing", "Rem", "Ant"), "1", "0"))
' ' pdf = PdfFactura(ObjFactura) End If
'End If
Catch ex As Exception Catch ex As Exception
Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgError) Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgError)
@@ -14935,7 +14954,7 @@ Partial Class Ventas
'TIMBRADO NUEVO 'TIMBRADO NUEVO
Try Try
pdf = PdfFactura(ObjFactura) pdf = PdfFactura(ObjFactura, AplicaPagare:="1")
Catch ex As Exception Catch ex As Exception
Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgError) Alert("Ocurrió un error al generar el PDF", TipoMensaje.MsgError)
End Try End Try
@@ -22241,10 +22260,10 @@ Partial Class Ventas
Return Retorno Return Retorno
End If End If
If Not PermiteCredito AndAlso TienePagos AndAlso TxtTotal.Text.ToDecimal > 0 Then If (Not PermiteCredito OrElse RBLPago.SelectedValue = "2") AndAlso TienePagos AndAlso TxtTotal.Text.ToDecimal > 0 Then
Dim TotalPago As Decimal = DtPagos.SUM("Importe").ToDecimal() + AmortizacionNC Dim TotalPago As Decimal = DtPagos.SUM("Importe").ToDecimal() + AmortizacionNC
If TotalPago < TxtTotal.Text.ToDecimal Then If TotalPago <> TxtTotal.Text.ToDecimal Then
If MostrarAlertas Then If MostrarAlertas Then
Alert("La suma de los pagos debe ser igual al total de la venta.", TipoMensaje.MsgAdvertencia) Alert("La suma de los pagos debe ser igual al total de la venta.", TipoMensaje.MsgAdvertencia)
End If End If
@@ -22319,7 +22338,7 @@ Partial Class Ventas
If Not PermiteCredito AndAlso TienePagos AndAlso TxtTotal.Text.ToDecimal > 0 Then If Not PermiteCredito AndAlso TienePagos AndAlso TxtTotal.Text.ToDecimal > 0 Then
Dim TotalPago As Decimal = DtPagos.SUM("Importe").ToDecimal() + AmortizacionNC Dim TotalPago As Decimal = DtPagos.SUM("Importe").ToDecimal() + AmortizacionNC
If TotalPago < TxtTotal.Text.ToDecimal Then If TotalPago <> TxtTotal.Text.ToDecimal Then
If MostrarAlertas Then If MostrarAlertas Then
Alert("La suma de los pagos debe ser igual al total de la venta.", TipoMensaje.MsgAdvertencia) Alert("La suma de los pagos debe ser igual al total de la venta.", TipoMensaje.MsgAdvertencia)
End If End If
@@ -22640,6 +22659,7 @@ Partial Class Ventas
GvInv.DataSource = DtTemporal GvInv.DataSource = DtTemporal
GvInv.DataBind() GvInv.DataBind()
UpINV.Update() UpINV.Update()
End Sub End Sub
#End Region #End Region
@@ -32994,27 +33014,27 @@ Partial Class Ventas
' Return File ' Return File
'End Function 'End Function
'Private Function DescargarFactura(CveVenta As Integer, CveEmpresa As Integer, Optional GetBytes As Boolean = True) As Byte() Private Function DescargarFactura(CveVenta As Integer, CveEmpresa As Integer, CveUsuarioCreo As Integer, Optional GetBytes As Boolean = True) As Byte()
' Dim Url = New Uri(String.Format("http://{0}:{1}/Compras/PopUpVerFactura.aspx?P={2}", HttpContext.Current.Request.Url.Host, HttpContext.Current.Request.Url.Port, Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1", CveVenta)))) 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", CveVenta))))
' Dim File As Byte() = Nothing Dim File As Byte() = Nothing
' Try Try
' Using httpClient = New HttpClient() Using httpClient = New HttpClient()
' httpClient.Timeout = New TimeSpan(0, 15, 0) httpClient.Timeout = New TimeSpan(0, 2, 0)
' Using request = New HttpRequestMessage(HttpMethod.Get, Url) Using request = New HttpRequestMessage(HttpMethod.Get, Url)
' request.Headers.Add("ADSToken", Encripta(String.Format("CVEEMPRESA={0}&TICKS={1}&CveUsuario=100", CveEmpresa, DateTime.UtcNow.Ticks))) request.Headers.Add("ADSToken", Encripta(String.Format("CVEEMPRESA={0}&TICKS={1}&CveUsuario={2}", CveEmpresa, DateTime.UtcNow.Ticks, CveUsuarioCreo)))
' Dim response = httpClient.SendAsync(request).Result Dim response = httpClient.SendAsync(request).Result
' If GetBytes AndAlso response.StatusCode = Net.HttpStatusCode.OK Then If GetBytes AndAlso response.StatusCode = Net.HttpStatusCode.OK Then
' File = response.Content.ReadAsByteArrayAsync().Result File = response.Content.ReadAsByteArrayAsync().Result
' End If End If
' End Using End Using
' End Using End Using
' Catch ex As Exception Catch ex As Exception
' File = Nothing File = Nothing
' OnError("Ocurrió un error al descargar la factura", ex) OnError("Ocurrió un error al descargar la factura", ex)
' End Try End Try
' Return File Return File
'End Function End Function
Protected Sub LnkGenerarOC_Click(sender As Object, e As EventArgs) Protected Sub LnkGenerarOC_Click(sender As Object, e As EventArgs)
Response.Redirect($"~/OC/OC.aspx?CveCotizacion={Me.CveVenta}&Tipo=OC") Response.Redirect($"~/OC/OC.aspx?CveCotizacion={Me.CveVenta}&Tipo=OC")
End Sub End Sub
@@ -34281,7 +34301,7 @@ Partial Class Ventas
If CveEntregaAlmacen > 0 Then If CveEntregaAlmacen > 0 Then
For Each RowPS As DataRow In ObjFactura.DtDetalle.FiltraParametros("CveTipoPS = 2").Rows For Each RowPS As DataRow In ObjFactura.DtMercancias.Rows
If Not ObjGral.AddEntregaAlmacenRutaDetalle(CveEntregaAlmacen, RowPS("CvePS").ToString().ToEntero, RowPS("Cantidad").ToString().ToEntero, RowPS("CveUM").ToString().ToEntero, UsuarioActual.CveUsuario) Then If Not ObjGral.AddEntregaAlmacenRutaDetalle(CveEntregaAlmacen, RowPS("CvePS").ToString().ToEntero, RowPS("Cantidad").ToString().ToEntero, RowPS("CveUM").ToString().ToEntero, UsuarioActual.CveUsuario) Then
ErrorProceso = True ErrorProceso = True
Exit For Exit For
@@ -34458,6 +34478,65 @@ Partial Class Ventas
UpEmitirTransitorio.Update() UpEmitirTransitorio.Update()
End Sub End Sub
Protected Sub LnkAgregarMercancia_Click(sender As Object, e As EventArgs)
TxtCantidadMercancia.Text = ""
DdlPSMercancia.SelectedValue = ""
DdlPSMercancia.SelectedText = "Seleccione"
UpAgregarMercancia.Update()
RegistraScript("$('#DivAddMercancia').modal('show');", "M1")
End Sub
Protected Sub LnkAddPSMercancia_Click(sender As Object, e As EventArgs)
If DtMercancias Is Nothing Then
DtMercancias = New DataTable()
DtMercancias.Columns.Add(New DataColumn("Consec", GetType(Integer)))
DtMercancias.Columns.Add(New DataColumn("Cantidad", GetType(Integer)))
DtMercancias.Columns.Add(New DataColumn("CvePS", GetType(Integer)))
DtMercancias.Columns.Add(New DataColumn("CveUM", GetType(Integer)))
DtMercancias.Columns.Add(New DataColumn("CodigoPS", GetType(String)))
End If
Dim CvePS As Integer = DdlPSMercancia.SelectedValue.ToEntero()
Dim DrPS As DataRow = GlobalDTPSSimplificado(CveEmpresa:=UsuarioActual.CveEmpresa, CvePS:=CvePS).FiltroPrimero("")
If DrPS Is Nothing Then
Alert("No se encontró el producto/servicio", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
Dim NewRow As DataRow = DtMercancias.NewRow
NewRow("Consec") = DtMercancias.MAX("Consec").ToEntero() + 1
NewRow("Cantidad") = TxtCantidadMercancia.Text.ToDecimal()
NewRow("CvePS") = DrPS("CvePS")
NewRow("CveUM") = DrPS("CveUnidadMedida")
NewRow("CodigoPS") = DrPS("PSCodigo")
DtMercancias.Rows.Add(NewRow)
GvMercanciasCP.DataSource = DtMercancias
GvMercanciasCP.DataBind()
TxtCantidadMercancia.Text = ""
DdlPSMercancia.SelectedValue = ""
DdlPSMercancia.SelectedText = "Seleccione"
UpAgregarMercancia.Update()
UpEmitirTransitorio.Update()
End Sub
Protected Sub GvMercanciasCP_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GvMercanciasCP.RowDeleting
Dim DbRow As DataRow = Nothing
DbRow = DtMercancias.Rows(e.RowIndex)
DtMercancias.Rows.Remove(DbRow)
GvMercanciasCP.DataSource = DtMercancias
GvMercanciasCP.DataBind()
Alert("Eliminado Correctamente.", TipoMensaje.MsgInformacion)
UpEmitirTransitorio.Update()
End Sub
#End Region #End Region
Protected Sub BtnGenerarPoliza_Click(sender As Object, e As EventArgs) Protected Sub BtnGenerarPoliza_Click(sender As Object, e As EventArgs)
@@ -34499,5 +34578,7 @@ Partial Class Ventas
End Sub End Sub
End Class End Class

View File

@@ -1150,6 +1150,54 @@ Public Class WSGPSApp
End Function End Function
<WebMethod>
Public Function GetRutas(CveCliente As Integer, CveRuta As Integer, MostrarPuntos As Boolean) As String
Dim DtRutas As DataTable = Nothing
Using ObjGPS As New ClsGPS
If ObjGPS.GetRutas(CveRuta, CveCliente) Then
DtRutas = ObjGPS.DtResultados.Copy()
End If
End Using
Dim Rutas As New List(Of Object)
If DtRutas IsNot Nothing Then
For Each Row As DataRow In DtRutas.Rows
Dim Coordenadas As List(Of MWSGeolocation2) = Nothing
If MostrarPuntos Then
Coordenadas = SQLToGmapsPolyline(Row("Poligono").ToString())
End If
Rutas.Add(New With {
.CveRuta = Row("CveRuta").ToString().ToEntero(),
.Ruta = Row("Ruta").ToString(),
.Folio = Row("Folio").ToString(),
.Fecha = Row("FechaIng").ToString(),
.CveDispositivo = Row("CveDispositivo").ToString().ToEntero(),
.CveUsuarioIngreso = Row("CveUsuarioIngreso").ToString().ToEntero(),
.Coordenadas = Coordenadas
})
Next
End If
Return JsonConvert.SerializeObject(Rutas)
End Function
<WebMethod>
Public Function GetRutaPuntosRecoleecion(CveRuta As Integer) As String
Dim Retorno As String = "[]"
Using ObjGPS As New ClsGPS
If ObjGPS.GetRutasPuntosRecoleecion(CveRuta) Then
Retorno = ObjGPS.DtResultados.DataTableToJSONIPP()
End If
End Using
Return Retorno
End Function
#Region "F U N C I O N E S" #Region "F U N C I O N E S"
Private Function CargarEventos(CveCliente As Integer, FechaI As DateTime, FechaF As DateTime) As MWSDashboard2 Private Function CargarEventos(CveCliente As Integer, FechaI As DateTime, FechaF As DateTime) As MWSDashboard2
Dim ObjGPS As New ClsGPS Dim ObjGPS As New ClsGPS
@@ -1225,6 +1273,28 @@ Public Class WSGPSApp
Next Next
Return Var Return Var
End Function End Function
Private Function SQLToGmapsPolyline(CoordsSQL As String) As List(Of MWSGeolocation2)
Dim CoordsPoligono As String = CoordsSQL.Replace($"LINESTRING", "").Replace(")", "").Replace("(", "")
Dim CoordsPuntos() As String = CoordsPoligono.Split(","c)
Dim puntos As New List(Of MWSGeolocation2)
For Each coordenada As String In CoordsPuntos
Dim Var As New MWSGeolocation2
If coordenada Is CoordsPuntos.Last Then
Dim latlng() As String = coordenada.Trim.Split(" "c)
Var.Latitud = latlng(1).ToDouble()
Var.Longitud = latlng(0).ToDouble()
Else
Dim latlng() As String = coordenada.Trim.Split(" "c)
Var.Latitud = latlng(1).ToDouble()
Var.Longitud = latlng(0).ToDouble()
End If
puntos.Add(Var)
Next
Return puntos
End Function
Private Function GetJson(ByVal dt As DataTable) As String Private Function GetJson(ByVal dt As DataTable) As String
Dim serializer As New System.Web.Script.Serialization.JavaScriptSerializer() Dim serializer As New System.Web.Script.Serialization.JavaScriptSerializer()
Dim rows As New List(Of Dictionary(Of String, Object))() Dim rows As New List(Of Dictionary(Of String, Object))()

View File

@@ -492,6 +492,10 @@