This commit is contained in:
Oscar Irigoyen
2023-04-20 16:16:11 -07:00
73 changed files with 13581 additions and 13456 deletions

View File

@@ -2985,7 +2985,7 @@ Public Class ClsContratos
End Function End Function
Public Function AddPresupuestosDetalle(CvePresupuesto As Integer, CveClasificacion As Integer, CveTipoGasto As Integer, Importe As Decimal, Observacion As String) As Boolean Public Function AddPresupuestosDetalle(CvePresupuesto As Integer, CveClasificacion As Integer, CveTipoGasto As Integer, Importe As Decimal, Observacion As String, Optional CveConceptoContableNom As Integer = -1) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Con_PresupuestosDetalleAdd") DataAdapter("PA_Con_PresupuestosDetalleAdd")
@@ -2996,6 +2996,7 @@ Public Class ClsContratos
.Add("@Importe", SqlDbType.Money).Value = Importe .Add("@Importe", SqlDbType.Money).Value = Importe
.Add("@Observacion", SqlDbType.VarChar).Value = Observacion .Add("@Observacion", SqlDbType.VarChar).Value = Observacion
.Add("@CveTipoGasto", SqlDbType.Int).Value = CveTipoGasto .Add("@CveTipoGasto", SqlDbType.Int).Value = CveTipoGasto
.Add("@CveConceptoContableNom", SqlDbType.Int).Value = CveConceptoContableNom
End With End With
Try Try
@@ -3029,7 +3030,7 @@ Public Class ClsContratos
Return Retorno Return Retorno
End Function End Function
Public Function UpdatePresupuestosDetalle(CvePresupuestoDetalle As Integer, CveClasificacion As Integer, ImporteVigente As Decimal, Observacion As String) As Boolean Public Function UpdatePresupuestosDetalle(CvePresupuestoDetalle As Integer, CveClasificacion As Integer, ImporteVigente As Decimal, Observacion As String, Optional CveConceptoContableNom As Integer = -1) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Con_PresupuestosDetalleUpdate") DataAdapter("PA_Con_PresupuestosDetalleUpdate")
@@ -3039,6 +3040,7 @@ Public Class ClsContratos
.Add("@CveClasificacion", SqlDbType.Int).Value = CveClasificacion .Add("@CveClasificacion", SqlDbType.Int).Value = CveClasificacion
.Add("@ImporteVigente", SqlDbType.Money).Value = ImporteVigente .Add("@ImporteVigente", SqlDbType.Money).Value = ImporteVigente
.Add("@Observacion", SqlDbType.VarChar).Value = Observacion .Add("@Observacion", SqlDbType.VarChar).Value = Observacion
.Add("@CveConceptoContableNom", SqlDbType.Int).Value = CveConceptoContableNom
End With End With
Try Try
@@ -3068,7 +3070,7 @@ Public Class ClsContratos
End Try End Try
Return Retorno Return Retorno
End Function End Function
Public Function GetPresupuestosRep(CvePresupuesto As Integer, CveTipoGasto As Integer, Agrupador As Integer, FechaI As Date, FechaF As Date, CveEmpresa As Integer, CveProyecto As Integer, CveSubProyecto As Integer, CveUsuarioConsulta As Integer, CveClasificacion As Integer) As Boolean Public Function GetPresupuestosRep(CvePresupuesto As Integer, CveTipoGasto As Integer, Agrupador As Integer, FechaI As Date, FechaF As Date, CveEmpresa As Integer, CveProyecto As Integer, CveSubProyecto As Integer, CveUsuarioConsulta As Integer, CveAgrupador As Integer) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Con_PresupuestosRep") DataAdapter("PA_Con_PresupuestosRep")
@@ -3082,7 +3084,7 @@ Public Class ClsContratos
.Add("@CveProyecto", SqlDbType.Int).Value = CveProyecto .Add("@CveProyecto", SqlDbType.Int).Value = CveProyecto
.Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
.Add("@CveUsuarioConsulta", SqlDbType.Int).Value = CveUsuarioConsulta .Add("@CveUsuarioConsulta", SqlDbType.Int).Value = CveUsuarioConsulta
.Add("@CveClasificacion", SqlDbType.Int).Value = CveClasificacion .Add("@CveAgrupador", SqlDbType.Int).Value = CveAgrupador
End With End With
Try Try
@@ -3121,7 +3123,7 @@ Public Class ClsContratos
Return Retorno Return Retorno
End Function End Function
Public Function GetPresupuestosRepDetalle(CveProyecto As Integer, CveSubProyecto As Integer, CveClasificacion As Integer, CveTipoGasto As Integer, Agrupador As Integer, Gpo As Integer, FechaI As Date, FechaF As Date, CveEmpresa As Integer, CveUsuario As Integer) As Boolean Public Function GetPresupuestosRepDetalle(CveProyecto As Integer, CveSubProyecto As Integer, CveClasificacion As Integer, CveTipoGasto As Integer, Agrupador As Integer, Gpo As Integer, FechaI As Date, FechaF As Date, CveEmpresa As Integer, CveUsuario As Integer, Optional CveConceptoContableNom As Integer = -1) As Boolean
Dim Retorno As Boolean = False Dim Retorno As Boolean = False
DataAdapter("PA_Con_PresupuestosRepDetalle") DataAdapter("PA_Con_PresupuestosRepDetalle")
@@ -3129,6 +3131,7 @@ Public Class ClsContratos
.Add("@CveProyecto", SqlDbType.Int).Value = CveProyecto .Add("@CveProyecto", SqlDbType.Int).Value = CveProyecto
.Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
.Add("@CveClasificacion", SqlDbType.Int).Value = CveClasificacion .Add("@CveClasificacion", SqlDbType.Int).Value = CveClasificacion
.Add("@CveConceptoContableNom", SqlDbType.Int).Value = CveConceptoContableNom
.Add("@CveTipoGasto", SqlDbType.Int).Value = CveTipoGasto .Add("@CveTipoGasto", SqlDbType.Int).Value = CveTipoGasto
.Add("@Agrupador", SqlDbType.Int).Value = Agrupador .Add("@Agrupador", SqlDbType.Int).Value = Agrupador
.Add("@Gpo", SqlDbType.Int).Value = Gpo .Add("@Gpo", SqlDbType.Int).Value = Gpo

View File

@@ -605,7 +605,12 @@ Public Class ClsNominas
End If End If
retorno = True retorno = True
Catch ex As Exception Catch ex As Exception
OnError("Ocurrió un error al registrar la provisión de nómina.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo()) If ex.Message.Contains("No se puede registrar una prepóliza en un periodo cerrado") Then
OnError("No se puede registrar la provisión, periodo contable cerrado.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
Else
OnError("Ocurrió un error al registrar la provisión de nómina.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End If
End Try End Try
Return retorno Return retorno
End Function End Function

View File

@@ -4002,28 +4002,28 @@ Public Class ClsPaginas
Application(AppNombre) = value Application(AppNombre) = value
End Set End Set
End Property End Property
Public Shared Property GlobalDTClasificacionPorcentaje(CveEmpresa As Integer, Optional CveClasicacionPorcentaje As Integer = -1, Optional CveClasicacion As Integer = -1, Optional PorcentajeIVA As Double = -1) As DataTable 'Public Shared Property GlobalDTClasificacionPorcentaje2(CveEmpresa As Integer, Optional CveClasicacionPorcentaje As Integer = -1, Optional CveClasicacion As Integer = -1, Optional PorcentajeIVA As Double = -1) As DataTable
Get ' Get
Dim AppNombre As String = $"GlobalDTClasificacionPorcentaje-{CveEmpresa}" ' Dim AppNombre As String = $"GlobalDTClasificacionPorcentaje-{CveEmpresa}"
If HttpContext.Current.Application(AppNombre) Is Nothing Then ' If HttpContext.Current.Application(AppNombre) Is Nothing Then
Using ObjVenta As New ClsGenerales ' Using ObjVenta As New ClsGenerales
If ObjVenta.GetClasificacionPorcentaje(CveEmpresa, CveClasificacion:=-1) Then HttpContext.Current.Application(AppNombre) = ObjVenta.DtResultados ' If ObjVenta.GetClasificacionPorcentaje(CveEmpresa, CveClasificacion:=-1) Then HttpContext.Current.Application(AppNombre) = ObjVenta.DtResultados
End Using ' End Using
End If ' End If
Dim Str As StringBuilder = New StringBuilder() ' Dim Str As StringBuilder = New StringBuilder()
If CveClasicacionPorcentaje <> -1 Then Str.AppendFormat(" {0} CveClasicacionPorcentaje = {1}", If(Str.Length > 0, "AND", ""), CveClasicacionPorcentaje) ' If CveClasicacionPorcentaje <> -1 Then Str.AppendFormat(" {0} CveClasicacionPorcentaje = {1}", If(Str.Length > 0, "AND", ""), CveClasicacionPorcentaje)
If CveClasicacion <> -1 Then Str.AppendFormat(" {0} CveClasicacion = {1}", If(Str.Length > 0, "AND", ""), CveClasicacion) ' If CveClasicacion <> -1 Then Str.AppendFormat(" {0} CveClasicacion = {1}", If(Str.Length > 0, "AND", ""), CveClasicacion)
If PorcentajeIVA <> -1 Then Str.AppendFormat(" {0} PorcentajeIVA = {1}", If(Str.Length > 0, "AND", ""), PorcentajeIVA) ' If PorcentajeIVA <> -1 Then Str.AppendFormat(" {0} PorcentajeIVA = {1}", If(Str.Length > 0, "AND", ""), PorcentajeIVA)
Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), Str.ToString, "", DataViewRowState.CurrentRows) ' Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), Str.ToString, "", DataViewRowState.CurrentRows)
GlobalDTClasificacionPorcentaje = Dv.ToTable ' GlobalDTClasificacionPorcentaje2 = Dv.ToTable
Dv.Dispose() ' Dv.Dispose()
End Get ' End Get
Set(value As DataTable) ' Set(value As DataTable)
Dim AppNombre As String = $"GlobalDTClasificacionPorcentaje-{CveEmpresa}" ' Dim AppNombre As String = $"GlobalDTClasificacionPorcentaje-{CveEmpresa}"
HttpContext.Current.Application(AppNombre) = value ' HttpContext.Current.Application(AppNombre) = value
End Set ' End Set
End Property 'End Property
Property GlobalDTPaqueterias(CveEmpresa As Integer, Optional TipoPaqueteria As Integer = -1) As DataTable Property GlobalDTPaqueterias(CveEmpresa As Integer, Optional TipoPaqueteria As Integer = -1) As DataTable
Get Get
Dim AppNombre As String = $"GlobalDTPaqueterias-{CveEmpresa}" Dim AppNombre As String = $"GlobalDTPaqueterias-{CveEmpresa}"
@@ -6326,6 +6326,10 @@ Public Class ClsPaginas
Dim rds4 As New ReportDataSource With {.Name = "DataSet4", .Value = If(Vta.DtDocumentosRelacionados IsNot Nothing, Vta.DtDocumentosRelacionados, New DataTable)} ' sino esta creado el objeto, lo creamos, para que no truene el reporte Dim rds4 As New ReportDataSource With {.Name = "DataSet4", .Value = If(Vta.DtDocumentosRelacionados IsNot Nothing, Vta.DtDocumentosRelacionados, New DataTable)} ' sino esta creado el objeto, lo creamos, para que no truene el reporte
lrds.Add(rds4) lrds.Add(rds4)
If UsuarioActual.Empresa.Funcionalidad(707) = "1" OrElse UsarStimulsoft Then If UsuarioActual.Empresa.Funcionalidad(707) = "1" OrElse UsarStimulsoft Then
If Vta.Cliente.CodigoRegimenFiscal.ToString.Length > 0 Then
params.Add(New ReportParameter("ClienteRegimenFiscal", $"{Vta.Cliente.CodigoRegimenFiscal}-{Vta.Cliente.RegimenFiscal}"))
End If
If Vta.DtDocumentosRelacionados IsNot Nothing AndAlso Vta.DtDocumentosRelacionados.Rows.Count > 0 Then If Vta.DtDocumentosRelacionados IsNot Nothing AndAlso Vta.DtDocumentosRelacionados.Rows.Count > 0 Then
params.Add(New ReportParameter("TieneDocumentosRelacionados", "True")) params.Add(New ReportParameter("TieneDocumentosRelacionados", "True"))
Else Else
@@ -7321,6 +7325,7 @@ Public Class ClsPaginas
Dim Importe = "" Dim Importe = ""
Dim TotalLetra = "" Dim TotalLetra = ""
Dim FechaRecibo = "" Dim FechaRecibo = ""
Dim ProveedorIntermediario As String = ""
Dim RegimenFiscalCodigo As String = "" Dim RegimenFiscalCodigo As String = ""
Dim CFDIVersion As String = If(UsuarioActual.Empresa.Funcionalidad(350) = "1", "4.0", "3.3") Dim CFDIVersion As String = If(UsuarioActual.Empresa.Funcionalidad(350) = "1", "4.0", "3.3")
@@ -7385,6 +7390,7 @@ Public Class ClsPaginas
CveCliente = ObjBancos.DtResultados.FiltroPrimeroValor("CveCliente").ToEntero CveCliente = ObjBancos.DtResultados.FiltroPrimeroValor("CveCliente").ToEntero
CveMoneda = ObjBancos.DtResultados.FiltroPrimeroValor("CveMoneda").ToEntero CveMoneda = ObjBancos.DtResultados.FiltroPrimeroValor("CveMoneda").ToEntero
FechaComprobante = ObjBancos.DtResultados.FiltroPrimeroValor("Fecha").ToDate FechaComprobante = ObjBancos.DtResultados.FiltroPrimeroValor("Fecha").ToDate
ProveedorIntermediario = ObjBancos.DtResultados.FiltroPrimeroValor("ProveedorIntermediario")
SerieFolio = $"{Serie}-{Folio}" SerieFolio = $"{Serie}-{Folio}"
End If End If
ObjBancos.Dispose() ObjBancos.Dispose()
@@ -7628,6 +7634,11 @@ Public Class ClsPaginas
Else Else
params.Add(New ReportParameter("LogoPath", "")) params.Add(New ReportParameter("LogoPath", ""))
End If End If
If UsuarioActual.CveEmpresa = 145 Then
params.Add(New ReportParameter("ProveedorIntermediario", ProveedorIntermediario))
End If
If File.Exists($"{UsuarioActual.Empresa.Ruta}Formatos\ReciboDePago.rdlc") Then If File.Exists($"{UsuarioActual.Empresa.Ruta}Formatos\ReciboDePago.rdlc") Then
rutaArchivo = $"{UsuarioActual.Empresa.Ruta}Formatos\ReciboDePago.rdlc" rutaArchivo = $"{UsuarioActual.Empresa.Ruta}Formatos\ReciboDePago.rdlc"
Else Else
@@ -7772,9 +7783,10 @@ Public Class ClsPaginas
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, 26, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, ImporteMN, 26, CompraActual.SerieFolio, Concepto, Ret.IdCtaContableAcreditable, CveCompra:=CompraActual.CveCompra, CveProveedor:=CompraActual.CveProveedor, CveIE:=Pago.CveIE, CvePersonal:=Pago.CvePersonal, TipoCambio:=CompraActual.TC, TipoCambioPago:=Pago.TCPago, ImporteME:=ImporteME, CveSubProyecto:=CompraActual.CveSubProyecto) Then ErrorMovtos = True
End If End If
End If End If
'si tiene otros gastos/ingresos 'si tiene otros gastos/ingresos
ImporteMovimiento = Pago.OtroGastoIngreso If Not ErrorMovtos AndAlso Pago.OtroGastoIngreso <> 0 Then
If Not ErrorMovtos AndAlso ImporteMovimiento <> 0 Then ImporteMovimiento = (Pago.OtroGastoIngreso * If(Pago.CveMonedaPago = 1, 1, Pago.TCPago)).RoundSQL ' cuando hay pagos en diferente moneda hay TC en ambos lados
Dim tOtCveCon As Integer = 211 Dim tOtCveCon As Integer = 211
Dim tOtTipoMovto As Boolean = False Dim tOtTipoMovto As Boolean = False
Dim IdCta As Integer = If(UsuarioActual.Empresa.TipoContabilidad = 2, UsuarioActual.Empresa.Funcionalidad(266).ToEntero(), 0) Dim IdCta As Integer = If(UsuarioActual.Empresa.TipoContabilidad = 2, UsuarioActual.Empresa.Funcionalidad(266).ToEntero(), 0)
@@ -7834,10 +7846,10 @@ Public Class ClsPaginas
Dim Diferencia As Decimal = 0 Dim Diferencia As Decimal = 0
If tImporteCompra <> tImportePago Then If tImporteCompra <> tImportePago Then
If tImporteCompra > tImportePago Then If tImporteCompra > tImportePago Then
ConceptoContable = 64 : IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria ConceptoContable = 64
TipoMovimiento = True TipoMovimiento = True
Else Else
ConceptoContable = 65 : IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria ConceptoContable = 65
TipoMovimiento = False TipoMovimiento = False
End If End If
Diferencia = (tImporteCompra - tImportePago).Abs.RoundSQL Diferencia = (tImporteCompra - tImportePago).Abs.RoundSQL
@@ -7913,18 +7925,18 @@ Public Class ClsPaginas
Ret.CveConceptoAcreditable = 19 Ret.CveConceptoAcreditable = 19
Ret.CveConceptoxAcreditar = 14 Ret.CveConceptoxAcreditar = 14
End If End If
If UsuarioActual.Empresa.TipoContabilidad = 2 Then 'If UsuarioActual.Empresa.TipoContabilidad = 2 Then
Dim IdCtaIVAXAcreditar, IdCtaIVAAcreditable, IdCtaIVANOAcreditable As Integer ' Dim IdCtaIVAXAcreditar, IdCtaIVAAcreditable, IdCtaIVANOAcreditable As Integer
Dim dt As DataTable = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA) ' Dim dt As DataTable = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA)
If dt.Rows.Count > 0 Then ' If dt.Rows.Count > 0 Then
IdCtaIVAXAcreditar = dt.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero ' IdCtaIVAXAcreditar = dt.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
IdCtaIVAAcreditable = dt.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero ' IdCtaIVAAcreditable = dt.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
IdCtaIVANOAcreditable = dt.Rows(0)("IdCtaIVANoAcreditable").ToString.ToEntero ' IdCtaIVANOAcreditable = dt.Rows(0)("IdCtaIVANoAcreditable").ToString.ToEntero
End If ' End If
Ret.IdCtaContableAcreditable = IdCtaIVAAcreditable ' Ret.IdCtaContableAcreditable = IdCtaIVAAcreditable
Ret.IdCtaContablexAcreditar = IdCtaIVAXAcreditar ' Ret.IdCtaContablexAcreditar = IdCtaIVAXAcreditar
Ret.IdCtaContIVANoAcreditable = IdCtaIVANOAcreditable ' Ret.IdCtaContIVANoAcreditable = IdCtaIVANOAcreditable
End If 'End If
Return Ret Return Ret
End Get End Get
End Property End Property
@@ -8283,8 +8295,9 @@ Public Class ClsPaginas
End If End If
End If End If
'si tiene otros gastos/ingresos 'si tiene otros gastos/ingresos
ImporteMovimiento = Pago.OtroGastoIngreso
If Not ErrorMovtos AndAlso ImporteMovimiento <> 0 Then If Not ErrorMovtos AndAlso Pago.OtroGastoIngreso <> 0 Then
ImporteMovimiento = (Pago.OtroGastoIngreso * If(Pago.CveMonedaPago = 1, 1, Pago.TCPago)).RoundSQL ' cuando hay pagos en diferente moneda hay TC en ambos lados
Dim tOtCveCon As Integer = 78 Dim tOtCveCon As Integer = 78
Dim tOtTipoMovto As Boolean = True Dim tOtTipoMovto As Boolean = True
If ImporteMovimiento < 0 Then If ImporteMovimiento < 0 Then
@@ -8300,10 +8313,10 @@ Public Class ClsPaginas
tImportePago += Pago.ImporteFluctuacionAdicional 'para los casos de aplicación de tImportePago += Pago.ImporteFluctuacionAdicional 'para los casos de aplicación de
If tImporteVenta <> tImportePago Then If tImporteVenta <> tImportePago Then
If tImporteVenta < tImportePago Then If tImporteVenta < tImportePago Then
ConceptoContable = 64 : IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria ConceptoContable = 64
TipoMovimiento = True TipoMovimiento = True
Else Else
ConceptoContable = 65 : IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria ConceptoContable = 65
TipoMovimiento = False TipoMovimiento = False
End If End If
Diferencia = (tImporteVenta - tImportePago).Abs.RoundSQL Diferencia = (tImporteVenta - tImportePago).Abs.RoundSQL

View File

@@ -404,18 +404,18 @@ Public Class ClsSisEmpresas
'Nuevos Datos 'Nuevos Datos
_Empresa.AreaGeografica = Data.Rows(0)("AreaGeografica").ToString _Empresa.AreaGeografica = Data.Rows(0)("AreaGeografica").ToString
_Empresa.IdCuentaIVAxAcreditar = Data.Rows(0)("IdCuentaIVAxAcreditar").ToString.ToEntero '_Empresa.IdCuentaIVAxAcreditar = Data.Rows(0)("IdCuentaIVAxAcreditar").ToString.ToEntero
_Empresa.IdCuentaIVAAcreditable = Data.Rows(0)("IdCuentaIVAAcreditable").ToString.ToEntero '_Empresa.IdCuentaIVAAcreditable = Data.Rows(0)("IdCuentaIVAAcreditable").ToString.ToEntero
_Empresa.IdCuentaIVAxTrasladar = Data.Rows(0)("IdCuentaIVAxTrasladar").ToString.ToEntero '_Empresa.IdCuentaIVAxTrasladar = Data.Rows(0)("IdCuentaIVAxTrasladar").ToString.ToEntero
_Empresa.IdCuentaIVATrasladado = Data.Rows(0)("IdCuentaIVATrasladado").ToString.ToEntero '_Empresa.IdCuentaIVATrasladado = Data.Rows(0)("IdCuentaIVATrasladado").ToString.ToEntero
_Empresa.IdCuentaRetIVACirculacion = Data.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero '_Empresa.IdCuentaRetIVACirculacion = Data.Rows(0)("IdCuentaRetIVACirculacion").ToString.ToEntero
_Empresa.IdCuentaRetISRCirculacion = Data.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero '_Empresa.IdCuentaRetISRCirculacion = Data.Rows(0)("IdCuentaRetISRCirculacion").ToString.ToEntero
_Empresa.IdCuentaDSV = Data.Rows(0)("Conta_IdCuentaDescuentoVenta").ToString.ToEntero '_Empresa.IdCuentaDSV = Data.Rows(0)("Conta_IdCuentaDescuentoVenta").ToString.ToEntero
_Empresa.IdCuentaImpuestosLocales = Data.Rows(0)("Conta_IdCuentaImpuestosLocales").ToString.ToEntero '_Empresa.IdCuentaImpuestosLocales = Data.Rows(0)("Conta_IdCuentaImpuestosLocales").ToString.ToEntero
_Empresa.IdCuentaIEPSxAcreditar = Data.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero '_Empresa.IdCuentaIEPSxAcreditar = Data.Rows(0)("IdCuentaIEPSxAcreditar").ToString.ToEntero
_Empresa.IdCuentaIEPSAcreditable = Data.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero '_Empresa.IdCuentaIEPSAcreditable = Data.Rows(0)("IdCuentaIEPSAcreditable").ToString.ToEntero
_Empresa.IdCuentaIEPSxTrasladar = Data.Rows(0)("IdCuentaIEPSxTrasladar").ToString.ToEntero '_Empresa.IdCuentaIEPSxTrasladar = Data.Rows(0)("IdCuentaIEPSxTrasladar").ToString.ToEntero
_Empresa.IdCuentaIEPSTrasladado = Data.Rows(0)("IdCuentaIEPSTrasladado").ToString.ToEntero '_Empresa.IdCuentaIEPSTrasladado = Data.Rows(0)("IdCuentaIEPSTrasladado").ToString.ToEntero
_Empresa.IdCuentaOtrosIngresos = Data.Rows(0)("Conta_IdCuentaOtrosIngresos").ToString.ToEntero _Empresa.IdCuentaOtrosIngresos = Data.Rows(0)("Conta_IdCuentaOtrosIngresos").ToString.ToEntero
'_Empresa.IdCtaProveedor = Data.Rows(0)("IdCtaProveedor").ToString.ToEntero '_Empresa.IdCtaProveedor = Data.Rows(0)("IdCtaProveedor").ToString.ToEntero
@@ -428,7 +428,7 @@ Public Class ClsSisEmpresas
'_Empresa.IdCtaAnticipoProveedores = Data.Rows(0)("IdCtaAnticipoProveedores").ToString.ToEntero '_Empresa.IdCtaAnticipoProveedores = Data.Rows(0)("IdCtaAnticipoProveedores").ToString.ToEntero
_Empresa.Buzon_Tipo = Data.Rows(0)("Buzon_Tipo").ToString _Empresa.Buzon_Tipo = Data.Rows(0)("Buzon_Tipo").ToString
_Empresa.ContaContabilizacionNC = Data.Rows(0)("Conta_ContabilizacionNC").ToString.ToEntero '_Empresa.ContaContabilizacionNC = Data.Rows(0)("Conta_ContabilizacionNC").ToString.ToEntero
'_Empresa.Ruta = String.Format("{0}Empresas\{1}\", ModExtensiones.DirectorioBaseEmpresas, _Empresa.CveEmpresa) '_Empresa.Ruta = String.Format("{0}Empresas\{1}\", ModExtensiones.DirectorioBaseEmpresas, _Empresa.CveEmpresa)
_Empresa.PV_TerminalTipo = Data.Rows(0)("PV_TerminalTipo").ToString.ToEntero _Empresa.PV_TerminalTipo = Data.Rows(0)("PV_TerminalTipo").ToString.ToEntero
_Empresa.EjercicioActual = Data.Rows(0)("EjercicioActual").ToString.ToEntero _Empresa.EjercicioActual = Data.Rows(0)("EjercicioActual").ToString.ToEntero
@@ -437,8 +437,8 @@ Public Class ClsSisEmpresas
_Empresa.MetodoOC = Data.Rows(0)("MetodoOC").ToString.ToEntero _Empresa.MetodoOC = Data.Rows(0)("MetodoOC").ToString.ToEntero
_Empresa.CveMetodoInventario = Data.Rows(0)("Inv_CveMetodoInventario").ToString.ToEntero _Empresa.CveMetodoInventario = Data.Rows(0)("Inv_CveMetodoInventario").ToString.ToEntero
_Empresa.RequiereCentroCostos = Data.Rows(0)("RequiereCentroCostos").ToString <> "No" _Empresa.RequiereCentroCostos = Data.Rows(0)("RequiereCentroCostos").ToString <> "No"
_Empresa.IdCuentaPerdidaCambiaria = Data.Rows(0)("IdCuentaPerdidaCambiaria").ToString.ToEntero '_Empresa.IdCuentaPerdidaCambiaria = Data.Rows(0)("IdCuentaPerdidaCambiaria").ToString.ToEntero
_Empresa.IdCuentaGananciaCambiaria = Data.Rows(0)("IdCuentaGananciaCambiaria").ToString.ToEntero '_Empresa.IdCuentaGananciaCambiaria = Data.Rows(0)("IdCuentaGananciaCambiaria").ToString.ToEntero
_Empresa.Tipo_CentroCosto = Data.Rows(0)("Tipo_CentroCosto").ToString.ToEntero _Empresa.Tipo_CentroCosto = Data.Rows(0)("Tipo_CentroCosto").ToString.ToEntero
_Empresa.GrupoEmpresa = Data.Rows(0)("GrupoEmpresa").ToString.ToEntero _Empresa.GrupoEmpresa = Data.Rows(0)("GrupoEmpresa").ToString.ToEntero
_Empresa.PlantillaMailVenta = Data.Rows(0)("PlantillaMailVenta").ToString _Empresa.PlantillaMailVenta = Data.Rows(0)("PlantillaMailVenta").ToString
@@ -467,7 +467,6 @@ Public Class ClsSisEmpresas
_Empresa.RutaArchivos = Data.Rows(0)("RutaArchivos").ToString _Empresa.RutaArchivos = Data.Rows(0)("RutaArchivos").ToString
Else Else
'Alert("No se encontró la Empresa solicitada.", TipoMensaje.MsgAdvertencia) 'Alert("No se encontró la Empresa solicitada.", TipoMensaje.MsgAdvertencia)
End If End If

View File

@@ -53,7 +53,6 @@ Public Class Empresa
Public CvePAC As Integer Public CvePAC As Integer
Public CveRegimenFiscal As Integer Public CveRegimenFiscal As Integer
Public Property Tipo_CentroCosto As Integer Public Property Tipo_CentroCosto As Integer
Public Property MostrarRetISR As Boolean Public Property MostrarRetISR As Boolean
Public Property Regimen As String Public Property Regimen As String
@@ -63,7 +62,6 @@ Public Class Empresa
Public Property RegistroCompleto As Integer Public Property RegistroCompleto As Integer
Public Property Importe As Decimal Public Property Importe As Decimal
Public Property CveMetodoPago As Integer Public Property CveMetodoPago As Integer
Public Property CodigoRegimenFiscal As String Public Property CodigoRegimenFiscal As String
Public Property RegimenFiscal As String Public Property RegimenFiscal As String
Public Property EstatusFacturacion As Boolean Public Property EstatusFacturacion As Boolean
@@ -108,23 +106,23 @@ Public Class Empresa
Return String.Format("{0}\{1}\", Extensiones.ModExtensiones.DirectorioEmpresas, Me.CveEmpresa) Return String.Format("{0}\{1}\", Extensiones.ModExtensiones.DirectorioEmpresas, Me.CveEmpresa)
End If End If
End Get End Get
End Property End Property
Public Property IdCuentaIVAxTrasladar As Integer 'Public Property IdCuentaIVAxTrasladar As Integer
Public Property IdCuentaIVATrasladado As Integer 'Public Property IdCuentaIVATrasladado As Integer
Public Property IdCuentaPerdidaCambiaria As Integer 'Public Property IdCuentaPerdidaCambiaria As Integer
Public Property IdCuentaGananciaCambiaria As Integer 'Public Property IdCuentaGananciaCambiaria As Integer
Public Property ContaContabilizacionNC As Integer ' Public Property ContaContabilizacionNC As Integer
Public Property PV_TerminalTipo As Integer Public Property PV_TerminalTipo As Integer
Public Property PlantillaMailVenta As String Public Property PlantillaMailVenta As String
Public Property AsuntoPlantillaMailVenta As String Public Property AsuntoPlantillaMailVenta As String
'Nuevas 'Nuevas
Public Property IdCuentaIVAxAcreditar As Integer 'Public Property IdCuentaIVAxAcreditar As Integer
Public Property IdCuentaIVAAcreditable As Integer 'Public Property IdCuentaIVAAcreditable As Integer
Public Property IdCuentaRetIVACirculacion As Integer 'Public Property IdCuentaRetIVACirculacion As Integer
Public Property IdCuentaRetISRCirculacion As Integer 'Public Property IdCuentaRetISRCirculacion As Integer
Public Property IdCuentaDSV As Integer 'Public Property IdCuentaDSV As Integer
Public Property IdCuentaImpuestosLocales As Integer 'Public Property IdCuentaImpuestosLocales As Integer
Public Property IdCtaProveedor As Integer Public Property IdCtaProveedor As Integer
Public Property IdCtaCliente As Integer Public Property IdCtaCliente As Integer
Public Property IdCtaDeudores As Integer Public Property IdCtaDeudores As Integer
@@ -134,10 +132,6 @@ Public Class Empresa
Public Property IdCtaAnticipoProveedores As Integer Public Property IdCtaAnticipoProveedores As Integer
'Nuevos Datos 'Nuevos Datos
Public Property IdCuentaIEPSxAcreditar As Integer
Public Property IdCuentaIEPSAcreditable As Integer
Public Property IdCuentaIEPSxTrasladar As Integer
Public Property IdCuentaIEPSTrasladado As Integer
Public Property PorDepreciacion As Decimal Public Property PorDepreciacion As Decimal
Public Property CvePlataforma As Integer Public Property CvePlataforma As Integer
Public Property CveDistribuidor As Integer Public Property CveDistribuidor As Integer

View File

@@ -158,8 +158,13 @@ Public Class LogicNominas
Dim drow As DataRow = objNomina.DtResultados.Rows(0) Dim drow As DataRow = objNomina.DtResultados.Rows(0)
CvePersonal = drow("CvePersonal").ToString().ToEntero() CvePersonal = drow("CvePersonal").ToString().ToEntero()
CvePeriodo = drow("CvePeriodo").ToString().ToEntero() CvePeriodo = drow("CvePeriodo").ToString().ToEntero()
totalDb = drow("Total").ToString().ToDecimal() If TimbreIndemnizacion Then
subTotalDb = drow("SubTotal").ToString().ToDecimal() totalDb = drow("TotalFin").ToString().ToDecimal()
subTotalDb = drow("SubTotalFin").ToString().ToDecimal()
Else
totalDb = drow("Total").ToString().ToDecimal()
subTotalDb = drow("SubTotal").ToString().ToDecimal()
End If
cfdi.Nomina.Antiguedad = drow("Antiguedad").ToString().ToEntero() cfdi.Nomina.Antiguedad = drow("Antiguedad").ToString().ToEntero()
cfdi.Nomina.UltimoSueldoOrdinario = drow("UltimoSueldoOrdinario").ToString().ToDecimal() cfdi.Nomina.UltimoSueldoOrdinario = drow("UltimoSueldoOrdinario").ToString().ToDecimal()
Serie = objNomina.Serie Serie = objNomina.Serie

View File

@@ -2421,10 +2421,10 @@ Namespace Modelos
SeContabiliza = False SeContabiliza = False
End If End If
If ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=ObjFactura.DtDetalle.MAX("PorcentajeIVA").ToDouble).Rows.Count > 0 Then 'If ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=ObjFactura.DtDetalle.MAX("PorcentajeIVA").ToDouble).Rows.Count > 0 Then
IdCtaIVAXTrasladar = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=DtDetalle.MAX("PorcentajeIVA").ToDouble).Rows(0)("IdCtaIVAXTrasladar").ToString.ToEntero ' IdCtaIVAXTrasladar = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=DtDetalle.MAX("PorcentajeIVA").ToDouble).Rows(0)("IdCtaIVAXTrasladar").ToString.ToEntero
IdCtaIVATrasladado = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=DtDetalle.MAX("PorcentajeIVA").ToDouble).Rows(0)("IdCtaIVATrasladado").ToString.ToEntero ' IdCtaIVATrasladado = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=DtDetalle.MAX("PorcentajeIVA").ToDouble).Rows(0)("IdCtaIVATrasladado").ToString.ToEntero
End If 'End If
Dim UsaComplementariaClientes As Boolean = True Dim UsaComplementariaClientes As Boolean = True
'If UsuarioActual.CveEmpresa.Contiene(1, 119) Then UsaComplementariaClientes = True 'If UsuarioActual.CveEmpresa.Contiene(1, 119) Then UsaComplementariaClientes = True
@@ -2491,11 +2491,9 @@ Namespace Modelos
If difFluctuacion < 0 Then If difFluctuacion < 0 Then
CveConceptoFluctua = 65 CveConceptoFluctua = 65
TipoMovtoFluctua = False TipoMovtoFluctua = False
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
Else Else
CveConceptoFluctua = 64 CveConceptoFluctua = 64
TipoMovtoFluctua = True TipoMovtoFluctua = True
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
End If End If
Dim ImporteFluctuacion As Decimal = Math.Abs((importeMovimiento * difFluctuacion).RoundSQL) Dim ImporteFluctuacion As Decimal = Math.Abs((importeMovimiento * difFluctuacion).RoundSQL)
@@ -2798,11 +2796,9 @@ Namespace Modelos
If difFluctuacion < 0 Then If difFluctuacion < 0 Then
CveConceptoFluctua = 65 CveConceptoFluctua = 65
TipoMovtoFluctua = False TipoMovtoFluctua = False
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
Else Else
CveConceptoFluctua = 64 CveConceptoFluctua = 64
TipoMovtoFluctua = True TipoMovtoFluctua = True
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
End If End If
Dim ImporteFluctuacion As Decimal = Math.Abs((Importe251 * difFluctuacion).RoundSQL) * ValorMultiplicador Dim ImporteFluctuacion As Decimal = Math.Abs((Importe251 * difFluctuacion).RoundSQL) * ValorMultiplicador
@@ -2889,11 +2885,9 @@ Namespace Modelos
If difFluctuacion < 0 Then If difFluctuacion < 0 Then
CveConceptoFluctua = 65 CveConceptoFluctua = 65
TipoMovtoFluctua = False TipoMovtoFluctua = False
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
Else Else
CveConceptoFluctua = 64 CveConceptoFluctua = 64
TipoMovtoFluctua = True TipoMovtoFluctua = True
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
End If End If
Dim ImporteFluctuacion As Decimal = Math.Abs((importeMovimientoDev * difFluctuacion).RoundSQL) * ValorMultiplicador Dim ImporteFluctuacion As Decimal = Math.Abs((importeMovimientoDev * difFluctuacion).RoundSQL) * ValorMultiplicador
@@ -3183,11 +3177,9 @@ Namespace Modelos
If difFluctuacion < 0 Then If difFluctuacion < 0 Then
CveConceptoFluctua = 65 CveConceptoFluctua = 65
TipoMovtoFluctua = False TipoMovtoFluctua = False
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
Else Else
CveConceptoFluctua = 64 CveConceptoFluctua = 64
TipoMovtoFluctua = True TipoMovtoFluctua = True
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
End If End If
Dim ImporteFluctuacion As Decimal = Math.Abs((Importe251 * difFluctuacion).RoundSQL) * ValorMultiplicador Dim ImporteFluctuacion As Decimal = Math.Abs((Importe251 * difFluctuacion).RoundSQL) * ValorMultiplicador
@@ -3332,20 +3324,20 @@ Namespace Modelos
CveVentaAmortizacionAplicar = ObjFactura.CveVenta CveVentaAmortizacionAplicar = ObjFactura.CveVenta
End If End If
'código fijo en base el porcentaje iva, que se afecten las clasificaciones ''código fijo en base el porcentaje iva, que se afecten las clasificaciones
For i = 0 To TmpDTDetalle.Rows.Count - 1 'For i = 0 To TmpDTDetalle.Rows.Count - 1
'se excluyen las clasificaciones anteriores para que se asignen las de ingreso ' 'se excluyen las clasificaciones anteriores para que se asignen las de ingreso
If Not TmpDTDetalle(i)("CveClasificacion").ToString.Contiene("19958", "19933") Then ' If Not TmpDTDetalle(i)("CveClasificacion").ToString.Contiene("19958", "19933") Then
'reclasifica la clasificación del producto, por la del ingreso correspondiente a su iva ' 'reclasifica la clasificación del producto, por la del ingreso correspondiente a su iva
If ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString.ToDecimal).Rows.Count > 0 Then ' If ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString.ToDecimal).Rows.Count > 0 Then
TmpDTDetalle(i)("CveClasificacion") = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString.ToDecimal).Rows(0)("CveClasificacion").ToString ' TmpDTDetalle(i)("CveClasificacion") = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString.ToDecimal).Rows(0)("CveClasificacion").ToString
End If ' End If
End If ' End If
Next 'Next
DT = TmpDTDetalle.FiltraParametros($"CvePS <> {ObjFactura.CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA"}) DT = TmpDTDetalle.FiltraParametros($"CvePS <> {ObjFactura.CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA"})
@@ -3396,23 +3388,23 @@ Namespace Modelos
CveVentaAmortizacionAplicar = ObjFactura.CveVenta CveVentaAmortizacionAplicar = ObjFactura.CveVenta
End If End If
If UsuarioActual.CveEmpresa = 119 Then 'If UsuarioActual.CveEmpresa = 119 Then
'código fijo en base el porcentaje iva, que se afecten las clasificaciones ' 'código fijo en base el porcentaje iva, que se afecten las clasificaciones
For i = 0 To TmpDTDetalle.Rows.Count - 1 ' For i = 0 To TmpDTDetalle.Rows.Count - 1
'se excluyen las clasificaciones anteriores para que se asignen las de ingreso ' 'se excluyen las clasificaciones anteriores para que se asignen las de ingreso
If Not TmpDTDetalle(i)("CveClasificacion").ToString.Contiene("19958", "19933", "20242") Then ' If Not TmpDTDetalle(i)("CveClasificacion").ToString.Contiene("19958", "19933", "20242") Then
If ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDouble).Rows.Count > 0 Then ' If ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDouble).Rows.Count > 0 Then
TmpDTDetalle(i)("CveClasificacion") = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDouble).Rows(0)("CveClasificacion").ToString ' TmpDTDetalle(i)("CveClasificacion") = ClsPaginas.GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDouble).Rows(0)("CveClasificacion").ToString
End If ' End If
End If ' End If
Next ' Next
End If 'End If
DT = TmpDTDetalle.FiltraParametros($"CvePS <> {ObjFactura.CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA"}) DT = TmpDTDetalle.FiltraParametros($"CvePS <> {ObjFactura.CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA"})
@@ -3583,9 +3575,6 @@ Namespace Modelos
importeMovimiento = importeMovimiento * -1 importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1 importeMX = importeMX * -1
IdCtaContable = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
Else
IdCtaContable = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
End If End If
CveSubProyectoContabilizar = CveSubProyectoVenta CveSubProyectoContabilizar = CveSubProyectoVenta
@@ -3693,7 +3682,6 @@ Namespace Modelos
End If End If
'IVA X TRASLADAR 'IVA X TRASLADAR
IdCtaIVAXTrasladar = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 13, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 13, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString)
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, (importeMovimiento * ObjFactura.IVA) / ObjFactura.Total, Referencia, 13, Concepto, Fecha, IdCtaIVAXTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IVA) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, (importeMovimiento * ObjFactura.IVA) / ObjFactura.Total, Referencia, 13, Concepto, Fecha, IdCtaIVAXTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IVA) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then
ErrorPrepoliza = True ErrorPrepoliza = True
@@ -3701,7 +3689,6 @@ Namespace Modelos
End If End If
'IVA PAGADO 'IVA PAGADO
IdCtaIVATrasladado = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 61, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 61, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString)
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, (importeMovimiento * ObjFactura.IVA) / ObjFactura.Total, Referencia, 61, Concepto, Fecha, IdCtaIVATrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IVA) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, (importeMovimiento * ObjFactura.IVA) / ObjFactura.Total, Referencia, 61, Concepto, Fecha, IdCtaIVATrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IVA) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then
ErrorPrepoliza = True ErrorPrepoliza = True
@@ -3710,14 +3697,14 @@ Namespace Modelos
'IEPS X TRASLADAR 'IEPS X TRASLADAR
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 38, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 38, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString)
If ObjFactura.IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, (importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total, Referencia, 38, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSxTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then If ObjFactura.IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, (importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total, Referencia, 38, Concepto, Fecha, 0, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then
ErrorPrepoliza = True ErrorPrepoliza = True
Exit For Exit For
End If End If
'IEPS PAGADO 'IEPS PAGADO
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 39, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 39, ObjFactura.Cliente.Nombre, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString)
If ObjFactura.IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, (importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total, Referencia, 39, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSTrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then If ObjFactura.IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, (importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total, Referencia, 39, Concepto, Fecha, 0, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then
ErrorPrepoliza = True ErrorPrepoliza = True
Exit For Exit For
End If End If

View File

@@ -1,176 +1,176 @@
Imports System.Data Imports System.Data
Imports Extensiones Imports Extensiones
Public Class Timbres Public Class Timbres
Private _MsgError As StringBuilder Private _MsgError As StringBuilder
Private _MensajeAlert As StringBuilder Private _MensajeAlert As StringBuilder
Public Property TieneError As Boolean Public Property TieneError As Boolean
Public ReadOnly Property MsgError As String Public ReadOnly Property MsgError As String
Get Get
Return _MsgError.ToString Return _MsgError.ToString
End Get End Get
End Property End Property
Public ReadOnly Property MensajeAlert As String Public ReadOnly Property MensajeAlert As String
Get Get
Return _MensajeAlert.ToString Return _MensajeAlert.ToString
End Get End Get
End Property End Property
Private Property CveMovimiento As Integer Private Property CveMovimiento As Integer
Private Property UsuarioActual As Usuario Private Property UsuarioActual As Usuario
Private Property AplicaCP As Boolean Private Property AplicaCP As Boolean
Private Property FechaSalida As Date Private Property FechaSalida As Date
Private Property Serie As String Private Property Serie As String
Private Property Folio As Integer Private Property Folio As Integer
Private Property CveTimbre As Integer Private Property CveTimbre As Integer
Private Property CPCliente As Integer Private Property CPCliente As Integer
Public Property ObjFactura As Modelos.Factura Public Property ObjFactura As Modelos.Factura
Public Sub New() Public Sub New()
End Sub End Sub
Public Sub New(TipoDocto As String, tCveTimbre As Integer, tUsuarioActual As Usuario) Public Sub New(TipoDocto As String, tCveTimbre As Integer, tUsuarioActual As Usuario)
_MsgError = New StringBuilder _MsgError = New StringBuilder
UsuarioActual = tUsuarioActual UsuarioActual = tUsuarioActual
CveTimbre = tCveTimbre CveTimbre = tCveTimbre
CreaObjetosTraslados(TipoDocto, tCveTimbre) CreaObjetosTraslados(TipoDocto, tCveTimbre)
End Sub End Sub
Private Sub CreaObjetosTraslados(TipoDocto As String, CveTimbre As Integer) Private Sub CreaObjetosTraslados(TipoDocto As String, CveTimbre As Integer)
ObjFactura = New Modelos.Factura ObjFactura = New Modelos.Factura
ObjFactura.Version = "3.3" ObjFactura.Version = "3.3"
If UsuarioActual.Empresa.Funcionalidad(350) = "1" Then ObjFactura.Version = "4.0" If UsuarioActual.Empresa.Funcionalidad(350) = "1" Then ObjFactura.Version = "4.0"
ObjFactura.CveUsuario = UsuarioActual.CveUsuario ObjFactura.CveUsuario = UsuarioActual.CveUsuario
ObjFactura.CveEmpresa = UsuarioActual.CveEmpresa ObjFactura.CveEmpresa = UsuarioActual.CveEmpresa
ObjFactura.UsuarioActual = UsuarioActual ObjFactura.UsuarioActual = UsuarioActual
'ObjFactura.TipoCambio = 1 'ObjFactura.TipoCambio = 1
ObjFactura.ConvertirPesos = False ObjFactura.ConvertirPesos = False
ObjFactura.CveMoneda = 1 ObjFactura.CveMoneda = 1
ObjFactura.Moneda = "XXX" ObjFactura.Moneda = "XXX"
ObjFactura.MonedaSAT = "XXX" ObjFactura.MonedaSAT = "XXX"
ObjFactura.MonedaAbreviatura = "XXX" ObjFactura.MonedaAbreviatura = "XXX"
ObjFactura.TipoDocto = TipoDocto ObjFactura.TipoDocto = TipoDocto
ObjFactura.TipoComprobante = "T" ObjFactura.TipoComprobante = "T"
ObjFactura.Fecha = Now ObjFactura.Fecha = Now
ObjFactura.FechaPago = Now ObjFactura.FechaPago = Now
ObjFactura.FechaEjecucion = Now ObjFactura.FechaEjecucion = Now
ObjFactura.UsuarioCreo = UsuarioActual.Usuario ObjFactura.UsuarioCreo = UsuarioActual.Usuario
ObjFactura.TipoDocumento = "Traspaso" ObjFactura.TipoDocumento = "Traspaso"
ObjFactura.RFCReceptor = "XAXX010101000" ' RFC empresa traslado , si es entrega RFC Cliente ObjFactura.RFCReceptor = "XAXX010101000" ' RFC empresa traslado , si es entrega RFC Cliente
ObjFactura.Inv_CveMovimiento = CveMovimiento ObjFactura.Inv_CveMovimiento = CveMovimiento
ObjFactura.CveTimbre = CveTimbre ObjFactura.CveTimbre = CveTimbre
If CveTimbre > 0 AndAlso ObjFactura.TipoComprobante = "T" Then If CveTimbre > 0 AndAlso ObjFactura.TipoComprobante = "T" Then
ObjFactura.Timbre = PreParaTimbreCartaPorte(ObjFactura) ObjFactura.Timbre = PreParaTimbreCartaPorte(ObjFactura)
End If End If
End Sub End Sub
Private Function PreParaTimbreCartaPorte(Obj As Modelos.Factura) As CFDITimbre Private Function PreParaTimbreCartaPorte(Obj As Modelos.Factura) As CFDITimbre
Dim Timbre As New CFDITimbre Dim Timbre As New CFDITimbre
Timbre.Comprobante.TipoComprobante = "T" Timbre.Comprobante.TipoComprobante = "T"
Timbre.Comprobante.Fecha = Obj.Fecha Timbre.Comprobante.Fecha = Obj.Fecha
Timbre.Comprobante.FormadePago = Obj.FormaPagoSAT33 Timbre.Comprobante.FormadePago = Obj.FormaPagoSAT33
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 = "XXX" Timbre.Comprobante.Moneda = "XXX"
Timbre.Comprobante.TipoCambio = "" ' CONDICIÓN SI LA MONEDA ES 'XXX' Timbre.Comprobante.TipoCambio = "" ' CONDICIÓN SI LA MONEDA ES 'XXX'
Timbre.Receptor.UsoCFDI = "S01" Timbre.Receptor.UsoCFDI = "S01"
If ObjFactura.Version = "3.3" Then Timbre.Receptor.UsoCFDI = "P01" If ObjFactura.Version = "3.3" Then Timbre.Receptor.UsoCFDI = "P01"
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
Timbre.Comprobante.LugarExpedicion = UsuarioActual.Empresa.CP.ToString Timbre.Comprobante.LugarExpedicion = UsuarioActual.Empresa.CP.ToString
'DETALLES 'DETALLES
Dim tPS As String = "" Dim tPS As String = ""
Dim CartaPorte As New CFDICartaPorte Dim CartaPorte As New CFDICartaPorte
CartaPorte.TranspInternac = "No" CartaPorte.TranspInternac = "No"
CartaPorte.EntradaSalidaMercancia = "" CartaPorte.EntradaSalidaMercancia = ""
CartaPorte.ViaEntradaSalida = "" CartaPorte.ViaEntradaSalida = ""
CartaPorte.Mercancias.UnidadPeso = "KGM" CartaPorte.Mercancias.UnidadPeso = "KGM"
CartaPorte.Mercancias.CargoporTasacion = 0 CartaPorte.Mercancias.CargoporTasacion = 0
Dim FI As Date = New Date(1900, 1, 1) Dim FI As Date = New Date(1900, 1, 1)
Dim FF As Date = New Date(9999, 1, 1) Dim FF As Date = New Date(9999, 1, 1)
Dim FechaLlegada As DateTime Dim FechaLlegada As DateTime
Dim Distancia As Integer = 1 Dim Distancia As Integer = 1
Dim ObjGrales As New ClsGenerales Dim ObjGrales As New ClsGenerales
If ObjGrales.GetGralTimbre(CveTimbre, Obj.TipoDocto, FI, FF, -1, UsuarioActual.CveEmpresa, -1) Then If ObjGrales.GetGralTimbre(CveTimbre, Obj.TipoDocto, FI, FF, -1, UsuarioActual.CveEmpresa, -1) Then
If ObjGrales.DtResultados.Rows.Count = 1 Then If ObjGrales.DtResultados.Rows.Count = 1 Then
Dim DtMovimientos As DataTable = Nothing Dim DtMovimientos As DataTable = Nothing
Dim drT As DataRow = ObjGrales.DtResultados.Rows(0) Dim drT As DataRow = ObjGrales.DtResultados.Rows(0)
Timbre.Receptor.RFC = drT("EmpresaRFC").ToString Timbre.Receptor.RFC = drT("EmpresaRFC").ToString
Timbre.Receptor.Nombre = drT("EmpresaNombre").ToString Timbre.Receptor.Nombre = drT("EmpresaNombre").ToString
Timbre.Receptor.DomicilioFiscalReceptor = drT("DomicilioFiscalReceptor").ToString Timbre.Receptor.DomicilioFiscalReceptor = drT("DomicilioFiscalReceptor").ToString
Timbre.Receptor.RegimenFiscalReceptor = drT("CodigoRegimenFiscalReceptor").ToString Timbre.Receptor.RegimenFiscalReceptor = drT("CodigoRegimenFiscalReceptor").ToString
CveMovimiento = drT("CveMovimientoAlmacen").ToString.ToEntero CveMovimiento = drT("CveMovimientoAlmacen").ToString.ToEntero
FechaSalida = drT("FechaEntrega").ToString.ToDateTime FechaSalida = drT("FechaEntrega").ToString.ToDateTime
FechaLlegada = drT("FechaLlegada").ToString.ToDateTime FechaLlegada = drT("FechaLlegada").ToString.ToDateTime
Distancia = drT("Distancia").ToString.ToEntero Distancia = drT("Distancia").ToString.ToEntero
ObjFactura.Folio = drT("Folio").ToString.ToEntero ObjFactura.Folio = drT("Folio").ToString.ToEntero
ObjFactura.Serie = drT("Serie").ToString ObjFactura.Serie = drT("Serie").ToString
Timbre.Comprobante.Serie = Obj.Serie Timbre.Comprobante.Serie = Obj.Serie
Timbre.Comprobante.Folio = Obj.Folio.ToString Timbre.Comprobante.Folio = Obj.Folio.ToString
If drT("FolioFiscalRelacionado").ToString <> "" Then If drT("FolioFiscalRelacionado").ToString <> "" Then
Timbre.CFDIRelacionados.TipoRelacion = "05" Timbre.CFDIRelacionados.TipoRelacion = "05"
Timbre.CFDIRelacionados.UUID.Add(drT("FolioFiscalRelacionado").ToString) Timbre.CFDIRelacionados.UUID.Add(drT("FolioFiscalRelacionado").ToString)
End If End If
If ObjGrales.GetGralMovimientosDetalleTimbre(CveTimbre, UsuarioActual.CveEmpresa) Then If ObjGrales.GetGralMovimientosDetalleTimbre(CveTimbre, UsuarioActual.CveEmpresa) Then
DtMovimientos = ObjGrales.DtResultados DtMovimientos = ObjGrales.DtResultados
Else Else
TieneError = True TieneError = True
_MsgError.AppendLine("Error al obtener Movimientos") _MsgError.AppendLine("Error al obtener Movimientos")
End If End If
ObjFactura.DtDetalle = DtMovimientos ObjFactura.DtDetalle = DtMovimientos
AplicaCP = Boolean.Parse(drT("AplicaCP").ToString) AplicaCP = Boolean.Parse(drT("AplicaCP").ToString)
ObjFactura.CveSubProyecto = drT("CveSubProyecto").ToString.ToEntero ObjFactura.CveSubProyecto = drT("CveSubProyecto").ToString.ToEntero
ObjFactura.SetSubProyecto() ObjFactura.SetSubProyecto()
ObjFactura.SetSubProyectoMatriz() ObjFactura.SetSubProyectoMatriz()
If AplicaCP Then If AplicaCP Then
CartaPorte.FiguraTransporte.AutoTransporte.PermisoSCT = drT("ClaveTipoPermisoSCT").ToString '"TPAF01" CartaPorte.FiguraTransporte.AutoTransporte.PermisoSCT = drT("ClaveTipoPermisoSCT").ToString '"TPAF01"
CartaPorte.FiguraTransporte.AutoTransporte.NumPermisoSCT = drT("NumPermisoSCT").ToString CartaPorte.FiguraTransporte.AutoTransporte.NumPermisoSCT = drT("NumPermisoSCT").ToString
CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroResponsabilidadCivil = drT("NombreAseguradora").ToString CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroResponsabilidadCivil = drT("NombreAseguradora").ToString
CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroResponsabilidadCivil = drT("NumPolizaSeguro").ToString CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroResponsabilidadCivil = drT("NumPolizaSeguro").ToString
If Obj.DtDetalle IsNot Nothing AndAlso Obj.DtDetalle.Rows.Count > 0 Then If Obj.DtDetalle IsNot Nothing AndAlso Obj.DtDetalle.Rows.Count > 0 Then
If Obj.DtDetalle.MAX("ClaveMaterialPeligroso") <> "" Then If Obj.DtDetalle.MAX("ClaveMaterialPeligroso") <> "" Then
CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente = drT("NombreAseguradoraMedioAmbiente").ToString CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroMedioAmbiente = drT("NombreAseguradoraMedioAmbiente").ToString
@@ -178,43 +178,43 @@ Public Class Timbres
End If End If
End If End If
CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroCarga = drT("NombreAseguradoraCarga").ToString CartaPorte.FiguraTransporte.AutoTransporte.NombreSeguroCarga = drT("NombreAseguradoraCarga").ToString
CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroCarga = drT("NumPolizaSeguroCarga").ToString CartaPorte.FiguraTransporte.AutoTransporte.PolizaSeguroCarga = drT("NumPolizaSeguroCarga").ToString
CartaPorte.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular = drT("ConfigCartaPorte").ToString CartaPorte.FiguraTransporte.AutoTransporte.Vehiculo.ConfigVehicular = drT("ConfigCartaPorte").ToString
CartaPorte.FiguraTransporte.AutoTransporte.Vehiculo.PlacaVM = drT("Placa").ToString CartaPorte.FiguraTransporte.AutoTransporte.Vehiculo.PlacaVM = drT("Placa").ToString
CartaPorte.FiguraTransporte.AutoTransporte.Vehiculo.AnioModeloVM = drT("Anio").ToString.ToEntero CartaPorte.FiguraTransporte.AutoTransporte.Vehiculo.AnioModeloVM = drT("Anio").ToString.ToEntero
If drT("ClaveTipoRemolque1").ToString <> "" Then If drT("ClaveTipoRemolque1").ToString <> "" Then
Dim Rem1 As New CFDICartaPorteRemolque With {.SubTipoRemolque = drT("ClaveTipoRemolque1"), .Placa = drT("PlacaRemolque1")} Dim Rem1 As New CFDICartaPorteRemolque With {.SubTipoRemolque = drT("ClaveTipoRemolque1"), .Placa = drT("PlacaRemolque1")}
CartaPorte.FiguraTransporte.AutoTransporte.Remolques.Add(Rem1) CartaPorte.FiguraTransporte.AutoTransporte.Remolques.Add(Rem1)
End If End If
If drT("ClaveTipoRemolque2").ToString <> "" Then If drT("ClaveTipoRemolque2").ToString <> "" Then
Dim Rem2 As New CFDICartaPorteRemolque With {.SubTipoRemolque = drT("ClaveTipoRemolque2"), .Placa = drT("PlacaRemolque2")} Dim Rem2 As New CFDICartaPorteRemolque With {.SubTipoRemolque = drT("ClaveTipoRemolque2"), .Placa = drT("PlacaRemolque2")}
CartaPorte.FiguraTransporte.AutoTransporte.Remolques.Add(Rem2) CartaPorte.FiguraTransporte.AutoTransporte.Remolques.Add(Rem2)
End If End If
Dim DomOrigen As CFDICartaPorteDomicilio = Nothing Dim DomOrigen As CFDICartaPorteDomicilio = Nothing
DomOrigen = New CFDICartaPorteDomicilio With {.Calle = drT("DirOriCalle").ToString, DomOrigen = New CFDICartaPorteDomicilio With {.Calle = drT("DirOriCalle").ToString,
.Colonia = drT("DirOriClaveSATColonia").ToString, .Colonia = drT("DirOriClaveSATColonia").ToString,
.CP = drT("DirOriCP").ToString, .CP = drT("DirOriCP").ToString,
.Estado = drT("DirOriClaveSATEstado").ToString, .Estado = drT("DirOriClaveSATEstado").ToString,
.Pais = drT("DirOriClaveSATPais").ToString, .Pais = drT("DirOriClaveSATPais").ToString,
.Municipio = drT("DIrOriClaveSATMunicipio").ToString, .Municipio = drT("DIrOriClaveSATMunicipio").ToString,
.Localidad = drT("DirOriClaveSATLocalidad").ToString} .Localidad = drT("DirOriClaveSATLocalidad").ToString}
Dim DomDestino As CFDICartaPorteDomicilio = Nothing Dim DomDestino As CFDICartaPorteDomicilio = Nothing
DomDestino = New CFDICartaPorteDomicilio With {.Calle = drT("DirDesCalle").ToString, DomDestino = New CFDICartaPorteDomicilio With {.Calle = drT("DirDesCalle").ToString,
.Colonia = drT("DirDesClaveSATColonia").ToString, .Colonia = drT("DirDesClaveSATColonia").ToString,
.CP = drT("DirDesCP").ToString, .CP = drT("DirDesCP").ToString,
.Estado = drT("DirDesClaveSATEstado").ToString, .Estado = drT("DirDesClaveSATEstado").ToString,
.Pais = drT("DirDesClaveSATPais").ToString, .Pais = drT("DirDesClaveSATPais").ToString,
.Municipio = drT("DirDesClaveSATMunicipio").ToString, .Municipio = drT("DirDesClaveSATMunicipio").ToString,
.Localidad = drT("DirDesClaveSATLocalidad").ToString} .Localidad = drT("DirDesClaveSATLocalidad").ToString}
Dim NumRegIdTrib As String = "" Dim NumRegIdTrib As String = ""
Dim ResidenciaFiscal As String = "" Dim ResidenciaFiscal As String = ""
If drT("DestinatarioRFC").ToString.Contiene("XEXX010101000") Then ' cuando es Extranjero, debe de llevar un numregidtrib If drT("DestinatarioRFC").ToString.Contiene("XEXX010101000") Then ' cuando es Extranjero, debe de llevar un numregidtrib
ResidenciaFiscal = DomDestino.Pais ResidenciaFiscal = DomDestino.Pais
@@ -324,62 +324,62 @@ Public Class Timbres
'' T R A S L A D O S '' T R A S L A D O S
'DETALLES 'DETALLES
If Obj.DtDetalle IsNot Nothing Then If Obj.DtDetalle IsNot Nothing Then
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 UsuarioActual.CveEmpresa = 15 Then drr("UM") = "" 'LES COMENTAN QUE NO DEBE IR LA ETIQUETA DE LA UNIDAD EN EL PRODUCTO If UsuarioActual.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 = "", .CuentaPredial = "",
.ObjetoImpuesto = "01"} .ObjetoImpuesto = "01"}
'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
Timbre.Conceptos.Add(concepto) Timbre.Conceptos.Add(concepto)
i += 1 i += 1
Next Next
Else Else
TieneError = True TieneError = True
_MsgError.AppendLine("timbrado son detalle de productos") _MsgError.AppendLine("timbrado son detalle de productos")
End If End If
End If End If
Else Else
TieneError = True TieneError = True
_MsgError.AppendLine("Consultar datos de timbrado") _MsgError.AppendLine("Consultar datos de timbrado")
End If End If
ObjGrales.Dispose() ObjGrales.Dispose()
Else Else
Timbre = Nothing Timbre = Nothing
_MsgError.AppendLine("Consultar datos de timbrado") _MsgError.AppendLine("Consultar datos de timbrado")
End If End If
Return Timbre Return Timbre
End Function End Function
Public Class MMensajeCartaPorte Public Class MMensajeCartaPorte
Public Property TieneError As Boolean Public Property TieneError As Boolean
Public Property Mensaje As String Public Property Mensaje As String
@@ -633,4 +633,4 @@ Public Class Timbres
End Function End Function
End Class End Class

View File

@@ -3975,6 +3975,7 @@ Namespace Extensiones
HeaderBar = New StringBuilder("<li><i class='fa fa-home'></i><a href='/Inicio.aspx'>Inicio</a></li>") HeaderBar = New StringBuilder("<li><i class='fa fa-home'></i><a href='/Inicio.aspx'>Inicio</a></li>")
MenuHTML = New StringBuilder() MenuHTML = New StringBuilder()
modpadres = New List(Of String) modpadres = New List(Of String)
headerstr = New List(Of String)
End Sub End Sub
Property CveModuloSeleccionado As Integer Property CveModuloSeleccionado As Integer
@@ -3986,6 +3987,7 @@ Namespace Extensiones
Property ScriptColorGrupoModulo As String Property ScriptColorGrupoModulo As String
Property strdomain As String Property strdomain As String
Property modpadres As List(Of String) Property modpadres As List(Of String)
Property headerstr As List(Of String)
End Class End Class

View File

@@ -1851,7 +1851,8 @@ Public Class E141 : Implements IHttpHandler
New JProperty("short_description", ""), New JProperty("short_description", ""),
New JProperty("description", ""), New JProperty("description", ""),
New JProperty("currency", 1), New JProperty("currency", 1),
New JProperty("promo_price", RowPS("PrecioPromocion")) New JProperty("promo_price", RowPS("PrecioPromocion")),
New JProperty("product_related", RowPS("CodigosRelacionados"))
) )
ArrayPS.Add(producto) ArrayPS.Add(producto)

View File

@@ -345,7 +345,6 @@ Partial Class Bancos_DepositoTerminal
ImporteMovimiento = gvr.DataKey("IVA").ToDecimal * PorcentajePago ImporteMovimiento = gvr.DataKey("IVA").ToDecimal * PorcentajePago
importeMX = Math.Round(ImporteMovimiento * tipoCambioVenta, 2) importeMX = Math.Round(ImporteMovimiento * tipoCambioVenta, 2)
IdCtaContable = UsuarioActual.Empresa.IdCuentaIVAxTrasladar
If tipoCambioVenta > 1 Then ConceptoMovimiento += $" TC:{tipoCambioVenta} ${ImporteMovimiento.FormatoNumero(2)}" If tipoCambioVenta > 1 Then ConceptoMovimiento += $" TC:{tipoCambioVenta} ${ImporteMovimiento.FormatoNumero(2)}"
Case 62 'Ret IVA Trasladado Case 62 'Ret IVA Trasladado
@@ -387,7 +386,6 @@ Partial Class Bancos_DepositoTerminal
ImporteMovimiento = gvr.DataKey("IVA").ToDecimal * PorcentajePago ImporteMovimiento = gvr.DataKey("IVA").ToDecimal * PorcentajePago
importeMX = Math.Round(ImporteMovimiento * tipoCambioManual, 2) importeMX = Math.Round(ImporteMovimiento * tipoCambioManual, 2)
IdCtaContable = UsuarioActual.Empresa.IdCuentaIVATrasladado
If tipoCambioManual > 1 Then ConceptoMovimiento += $" TC:{tipoCambioManual} ${ImporteMovimiento.FormatoNumero(2)}" If tipoCambioManual > 1 Then ConceptoMovimiento += $" TC:{tipoCambioManual} ${ImporteMovimiento.FormatoNumero(2)}"
Case 38 'IEPS por trasladar Case 38 'IEPS por trasladar
@@ -395,14 +393,10 @@ Partial Class Bancos_DepositoTerminal
ImporteMovimiento = gvr.DataKey("IEPS").ToDecimal * PorcentajePago ImporteMovimiento = gvr.DataKey("IEPS").ToDecimal * PorcentajePago
importeMX = Math.Round(ImporteMovimiento * tipoCambioVenta, 2) importeMX = Math.Round(ImporteMovimiento * tipoCambioVenta, 2)
IdCtaContable = UsuarioActual.Empresa.IdCuentaIEPSxTrasladar
Case 39 'IEPS Trasladado Case 39 'IEPS Trasladado
ImporteMovimiento = gvr.DataKey("IEPS").ToDecimal * PorcentajePago ImporteMovimiento = gvr.DataKey("IEPS").ToDecimal * PorcentajePago
importeMX = Math.Round(ImporteMovimiento * tipoCambioManual, 2) importeMX = Math.Round(ImporteMovimiento * tipoCambioManual, 2)
IdCtaContable = UsuarioActual.Empresa.IdCuentaIEPSTrasladado
Case 78 'Otros Ingresos Case 78 'Otros Ingresos
If ChkAjusteOI.Checked Then If ChkAjusteOI.Checked Then
ImporteMovimiento = gvr.FCTextBox("TxtComision").Text.ToDecimal ImporteMovimiento = gvr.FCTextBox("TxtComision").Text.ToDecimal

View File

@@ -540,12 +540,12 @@ public partial class Bancos_Devoluciones : ClsPaginas
} }
//IVA //IVA
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, false, -gvr.FCTextBox("TxtIVA").Text.ToDecimal(), Ref, 13, Conc, DateTime.Now, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE, CveIEDevolucion: gvr.DataKey("CveIE").ToEntero(), CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero(), CveCliente: DdlCliente.SelectedValue.ToEntero(), ImporteMX: -gvr.FCTextBox("TxtIVA").Text.ToDecimal())) if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, false, -gvr.FCTextBox("TxtIVA").Text.ToDecimal(), Ref, 13, Conc, DateTime.Now, 0, -1, CveIE, CveIEDevolucion: gvr.DataKey("CveIE").ToEntero(), CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero(), CveCliente: DdlCliente.SelectedValue.ToEntero(), ImporteMX: -gvr.FCTextBox("TxtIVA").Text.ToDecimal()))
{ {
MsgError = "No se pudo insertar concepto de IVA"; MsgError = "No se pudo insertar concepto de IVA";
} }
if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, -gvr.FCTextBox("TxtIVA").Text.ToDecimal(), Ref, 61, Conc, DateTime.Now, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE, CveIEDevolucion: gvr.DataKey("CveIE").ToEntero(), CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero(), CveCliente: DdlCliente.SelectedValue.ToEntero(), ImporteMX: -gvr.FCTextBox("TxtIVA").Text.ToDecimal())) if (!ObjMov.AddPrePolizasDetalle(CvePrePoliza, true, -gvr.FCTextBox("TxtIVA").Text.ToDecimal(), Ref, 61, Conc, DateTime.Now,0, -1, CveIE, CveIEDevolucion: gvr.DataKey("CveIE").ToEntero(), CveSubProyecto: DdlSubProyecto.SelectedValue.ToEntero(), CveCliente: DdlCliente.SelectedValue.ToEntero(), ImporteMX: -gvr.FCTextBox("TxtIVA").Text.ToDecimal()))
{ {
MsgError = "No se pudo insertar concepto de IVA"; MsgError = "No se pudo insertar concepto de IVA";
} }

View File

@@ -758,8 +758,60 @@
<asp:Label ID="LblTotalBancos" runat="server" Text=""></asp:Label> <asp:Label ID="LblTotalBancos" runat="server" Text=""></asp:Label>
</ContentTemplate> </ContentTemplate>
</ajax:TabPanel> </ajax:TabPanel>
<ajax:TabPanel runat="server" ID="TabAcreedoresDiversos" HeaderText="AcreedoresDiversos">
<ContentTemplate>
<br />
<div class="row">
<div class="col-md-5 form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtConceptoAcreedoresDiversos" ClientIDMode="Static" Style="text-transform: uppercase;" runat="server" MaxLength="100" CssClass="form-control " Width="90%"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtConceptoAcreedoresDiversos"
ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Concepto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardarAcreedoresDiversos"></asp:RequiredFieldValidator>
<label for="TxtConceptoAcreedoresDiversos">Concepto:</label>
<i></i>
</div>
<div class="col-md-2 form-group form-md-line-input input-iconright">
<asp:DropDownList ID="DdlSubProyectoAcreedoresDiversos" ClientIDMode="Static" runat="server" AppendDataBoundItems="true" DataTextField="SubProyecto" DataValueField="CveSubProyecto" CssClass="form-control input-sm select2me js-referencia-programmatic marginFixRow" Width="90%">
</asp:DropDownList>
<label for="DdlSubProyectoAcreedoresDiversos">
<asp:Label runat="server" ID="LblSubProyectoAcreedoresDiversos"></asp:Label>
</label>
<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" CssClass="help-block errorimput" InitialValue="-1" ControlToValidate="DdlSubProyectoAcreedoresDiversos" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpGuardarAcreedoresDiversos"></asp:RequiredFieldValidator>
<i></i>
</div>
<div class="col-md-6" style="text-align: right!important">
<asp:HiddenField ID="HdnAcreedoresDiversosCvePrePoliza" runat="server" />
<asp:HyperLink ID="HplAcreedoresDiversosPoliza" runat="server" Text="Ver Póliza" CssClass="Texto" Visible="false" />
<asp:Button ID="BtnAcreedoresDiversosRemove" runat="server" Text="Eliminar" Visible="false" OnClick="BtnAcreedoresDiversosRemove_Click" class="btn btn-primary" data-toggle="confirmation" data-popout="true" data-original-title="Está seguro de eliminar?" data-btn-ok-label="si" />
<asp:Button Text="Generar Acreedores Diversos" runat="server" ID="BtnGeneraAcreeedoresDiversos" OnClick="BtnGeneraAcreeedoresDiversos_Click" Style="margin-left: 30px;" class="btn btn-primary" ValidationGroup="GrpGuardarAcreedoresDiversos" />
</div>
</div>
<br />
<div style="float: right; margin-right: 50px;">
</div>
<asp:GridView ID="GvAcreedorDiversos" Width="99%" runat="server" AutoGenerateColumns="False"
DataKeyNames="TipoCambio,Fluctuacion,RazonSocial,CveProveedor"
EmptyDataText="No se Encontraron" ToolTip=""
CssClass="table table-hover table-striped ScrollAD mysmallbtn" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Acreedor" DataField="RazonSocial" ItemStyle-Width="250" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Saldo" DataField="Saldo" ItemStyle-Width="100" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField HeaderText="T.C. último ajuste" DataField="TipoCambio" ItemStyle-Width="100" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField HeaderText="Fluctuación" DataField="Fluctuacion" DataFormatString="{0:N2}" ItemStyle-Width="100" ItemStyle-HorizontalAlign="Right" />
</Columns>
</asp:GridView>
<asp:Label ID="LblTotalAcreedoresDiversos" runat="server" Text=""></asp:Label>
</ContentTemplate>
</ajax:TabPanel>
<ajax:TabPanel runat="server" ID="TabFilial" HeaderText="Filial"> <ajax:TabPanel runat="server" ID="TabFilial" HeaderText="Filial" Visible="false" >
<ContentTemplate> <ContentTemplate>
<br /> <br />
@@ -806,17 +858,7 @@
<asp:BoundField HeaderText="Fluctuación" DataField="Fluctuacion" DataFormatString="{0:N2}" ItemStyle-Width="100" ItemStyle-HorizontalAlign="Right" /> <asp:BoundField HeaderText="Fluctuación" DataField="Fluctuacion" DataFormatString="{0:N2}" ItemStyle-Width="100" ItemStyle-HorizontalAlign="Right" />
</Columns> </Columns>
</asp:GridView> </asp:GridView>
<asp:GridView ID="GvAcreedorDiversos" Width="99%" runat="server" AutoGenerateColumns="False"
DataKeyNames="TipoCambio,Fluctuacion,RazonSocial,CveProveedor"
EmptyDataText="No se Encontraron" ToolTip=""
CssClass="table table-hover table-striped ScrollAD mysmallbtn" GridLines="None">
<Columns>
<asp:BoundField HeaderText="Acreedor" DataField="RazonSocial" ItemStyle-Width="250" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField HeaderText="Saldo" DataField="Saldo" ItemStyle-Width="100" DataFormatString="{0:N2}" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField HeaderText="T.C. último ajuste" DataField="TipoCambio" ItemStyle-Width="100" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField HeaderText="Fluctuación" DataField="Fluctuacion" DataFormatString="{0:N2}" ItemStyle-Width="100" ItemStyle-HorizontalAlign="Right" />
</Columns>
</asp:GridView>
<asp:Label ID="Label1" runat="server" Text=""></asp:Label> <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
</ContentTemplate> </ContentTemplate>
</ajax:TabPanel> </ajax:TabPanel>

View File

@@ -36,6 +36,8 @@ Partial Class Bancos_FluctuacionCambiaria
CargarCentrosDeCosto(Nothing, DdlSubProyectoAcreeedoresAnt, Nothing, LblSubProyectoAcreedoresAnt, "") CargarCentrosDeCosto(Nothing, DdlSubProyectoAcreeedoresAnt, Nothing, LblSubProyectoAcreedoresAnt, "")
CargarCentrosDeCosto(Nothing, DdlSubproyectoBancos, Nothing, LblSubProyectoBancos, "") CargarCentrosDeCosto(Nothing, DdlSubproyectoBancos, Nothing, LblSubProyectoBancos, "")
CargarCentrosDeCosto(Nothing, DdlSubProyectoFiliales, Nothing, LblSubProyectoFiliales, "") CargarCentrosDeCosto(Nothing, DdlSubProyectoFiliales, Nothing, LblSubProyectoFiliales, "")
CargarCentrosDeCosto(Nothing, DdlSubProyectoAcreedoresDiversos, Nothing, LblSubProyectoAcreedoresDiversos, "")
CargarCentrosDeCosto(Nothing, DdlSubProyectoDeudores, Nothing, LblSubProyectoDeudores, "") CargarCentrosDeCosto(Nothing, DdlSubProyectoDeudores, Nothing, LblSubProyectoDeudores, "")
CargaUltimaFluctuacion() CargaUltimaFluctuacion()
@@ -66,6 +68,10 @@ Partial Class Bancos_FluctuacionCambiaria
End Sub End Sub
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs) Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
CargaDatos()
End Sub
Private Sub CargaDatos()
CargaTipoCambio() CargaTipoCambio()
If T.ActiveTabIndex = 0 Then CargaDatosProveedores() If T.ActiveTabIndex = 0 Then CargaDatosProveedores()
If T.ActiveTabIndex = 1 Then CargaDatosProveedoresAnticipos() If T.ActiveTabIndex = 1 Then CargaDatosProveedoresAnticipos()
@@ -77,7 +83,7 @@ Partial Class Bancos_FluctuacionCambiaria
If T.ActiveTabIndex = 7 Then CargaDatosAcreedoresDiversos() 'CargaDatosFiliales() If T.ActiveTabIndex = 7 Then CargaDatosAcreedoresDiversos() 'CargaDatosFiliales()
If T.ActiveTabIndex = 8 Then CargaDatosDeudores() If T.ActiveTabIndex = 8 Then CargaDatosDeudores()
UpTabs.Update() UpTabs.Update()
End Sub End Sub
@@ -288,8 +294,9 @@ Partial Class Bancos_FluctuacionCambiaria
HdnAcreedorAntCvePrePoliza.Value = ObjBancos.DtResultados.MAX("CvePrePoliza").ToString HdnAcreedorAntCvePrePoliza.Value = ObjBancos.DtResultados.MAX("CvePrePoliza").ToString
BtnAcreedoresAntRemove.Visible = HdnAcreedorAntCvePrePoliza.Value.ToEntero > 0 BtnAcreedoresAntRemove.Visible = HdnAcreedorAntCvePrePoliza.Value.ToEntero > 0
BtnGeneraAcreedoresAnt.Visible = Not HdnAcreedorAntCvePrePoliza.Value.ToEntero > 0 BtnGeneraAcreedoresAnt.Visible = Not HdnAcreedorAntCvePrePoliza.Value.ToEntero > 0
HdnCveFluctuacionBitacora.Value = ObjBancos.DtResultados.MAX("CveFluctuacionBitacora").ToString
HplAcreedorAntLiga.Visible = HdnAcreedorCvePrePoliza.Value.ToEntero > 0 HplAcreedorAntLiga.Visible = HdnAcreedorAntCvePrePoliza.Value.ToEntero > 0
HplAcreedorAntLiga.NavigateUrl = String.Format("/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}", ObjBancos.DtResultados.MAX("CvePrePoliza").ToString) HplAcreedorAntLiga.NavigateUrl = String.Format("/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}", ObjBancos.DtResultados.MAX("CvePrePoliza").ToString)
GvAcreedoresAnt.DataSource = ObjBancos.DtResultados GvAcreedoresAnt.DataSource = ObjBancos.DtResultados
LblTotalAcreedoresAnt.Text = ObjBancos.DtResultados.SUM("Fluctuacion").FormatoNumero LblTotalAcreedoresAnt.Text = ObjBancos.DtResultados.SUM("Fluctuacion").FormatoNumero
@@ -379,9 +386,17 @@ Partial Class Bancos_FluctuacionCambiaria
Private Sub CargaDatosAcreedoresDiversos() Private Sub CargaDatosAcreedoresDiversos()
Dim ObjBancos As New ClsBancos Dim ObjBancos As New ClsBancos
LblTotalAcreedores.Text = "0.00" LblTotalAcreedores.Text = "0.00"
If ObjBancos.GetFluctuaciones(FechaUltimoDiaMes, 88, UsuarioActual.CveEmpresa) Then If ObjBancos.GetFluctuaciones(FechaUltimoDiaMes, 88, UsuarioActual.CveEmpresa) Then
GvAcreedorDiversos.DataSource = ObjBancos.DtResultados.FiltraParametros("Saldo > 0") HdnAcreedoresDiversosCvePrePoliza.Value = ObjBancos.DtResultados.MAX("CvePrePoliza").ToString
LblTotalAcreedores.Text = ObjBancos.DtResultados.SUM("Fluctuacion").FormatoNumero HdnCveFluctuacionBitacora.Value = ObjBancos.DtResultados.MAX("CveFluctuacionBitacora").ToString
BtnAcreedoresDiversosRemove.Visible = HdnAcreedoresDiversosCvePrePoliza.Value.ToEntero > 0
BtnGeneraAcreeedoresDiversos.Visible = Not HdnAcreedoresDiversosCvePrePoliza.Value.ToEntero > 0
HplAcreedoresDiversosPoliza.Visible = HdnAcreedoresDiversosCvePrePoliza.Value.ToEntero > 0
HplAcreedoresDiversosPoliza.NavigateUrl = String.Format("/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}", ObjBancos.DtResultados.MAX("CvePrePoliza").ToString)
GvAcreedorDiversos.DataSource = ObjBancos.DtResultados
LblTotalAcreedoresDiversos.Text = ObjBancos.DtResultados.SUM("Fluctuacion").FormatoNumero
Else Else
GvAcreedorDiversos.DataSource = Nothing GvAcreedorDiversos.DataSource = Nothing
Alert("Ocurrio un error al cargar los acreedores", TipoMensaje.MsgAdvertencia) Alert("Ocurrio un error al cargar los acreedores", TipoMensaje.MsgAdvertencia)
@@ -413,9 +428,7 @@ Partial Class Bancos_FluctuacionCambiaria
Dim ErrorRegistrar As Boolean = False Dim ErrorRegistrar As Boolean = False
CveCuentaPerdida = 0 '55379 CveCuentaPerdida = 0 '55379
CveCuentaGanancia = 0 ' 55382 CveCuentaGanancia = 0 ' 55382
idCtaPerdida = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria '1227
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Total = LblTotal.ToDecimal Total = LblTotal.ToDecimal
@@ -493,9 +506,7 @@ Partial Class Bancos_FluctuacionCambiaria
Dim ErrorRegistrar As Boolean = False Dim ErrorRegistrar As Boolean = False
CveCuentaPerdida = 0 '55379 CveCuentaPerdida = 0 '55379
CveCuentaGanancia = 0 ' 55382 CveCuentaGanancia = 0 ' 55382
idCtaPerdida = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria '1227
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Total = LblTotal.ToDecimal Total = LblTotal.ToDecimal
@@ -577,9 +588,7 @@ Partial Class Bancos_FluctuacionCambiaria
Dim ErrorRegistrar As Boolean = False Dim ErrorRegistrar As Boolean = False
CveCuentaPerdida = 0 '55379 CveCuentaPerdida = 0 '55379
CveCuentaGanancia = 0 ' 55382 CveCuentaGanancia = 0 ' 55382
idCtaPerdida = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria '1227
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Dim TCUltimaFluctuacion As Decimal = GlobalTipoCambio(FechaUltimoDiaMes).ToDecimal() Dim TCUltimaFluctuacion As Decimal = GlobalTipoCambio(FechaUltimoDiaMes).ToDecimal()
@@ -674,9 +683,7 @@ Partial Class Bancos_FluctuacionCambiaria
Dim ErrorRegistrar As Boolean = False Dim ErrorRegistrar As Boolean = False
CveCuentaPerdida = 0 '55379 CveCuentaPerdida = 0 '55379
CveCuentaGanancia = 0 ' 55382 CveCuentaGanancia = 0 ' 55382
idCtaPerdida = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria '1227
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Dim TCUltimaFluctuacion As Decimal = GlobalTipoCambio(FechaUltimoDiaMes).ToDecimal() Dim TCUltimaFluctuacion As Decimal = GlobalTipoCambio(FechaUltimoDiaMes).ToDecimal()
@@ -780,9 +787,7 @@ Partial Class Bancos_FluctuacionCambiaria
Dim ErrorRegistrar As Boolean = False Dim ErrorRegistrar As Boolean = False
CveCuentaPerdida = 0 '55379 CveCuentaPerdida = 0 '55379
CveCuentaGanancia = 0 ' 55382 CveCuentaGanancia = 0 ' 55382
idCtaPerdida = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria '1227
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Total = LblTotalAcreedores.Text.ToDecimal Total = LblTotalAcreedores.Text.ToDecimal
@@ -869,9 +874,7 @@ Partial Class Bancos_FluctuacionCambiaria
Dim ErrorRegistrar As Boolean = False Dim ErrorRegistrar As Boolean = False
CveCuentaPerdida = 0 '55379 CveCuentaPerdida = 0 '55379
CveCuentaGanancia = 0 ' 55382 CveCuentaGanancia = 0 ' 55382
idCtaPerdida = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria '1227
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Total = LblTotalAcreedoresAnt.Text.ToDecimal Total = LblTotalAcreedoresAnt.Text.ToDecimal
@@ -952,9 +955,7 @@ Partial Class Bancos_FluctuacionCambiaria
Dim CvePrePoliza As Integer = Conta.AddPrePolizas("Banc/FluctuaB", 1, 0, 0, 1, FechaUltimoDiaMes, TxtConceptoBancos.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Dim CvePrePoliza As Integer = Conta.AddPrePolizas("Banc/FluctuaB", 1, 0, 0, 1, FechaUltimoDiaMes, TxtConceptoBancos.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
CveCuentaPerdida = 0 ' 55379 CveCuentaPerdida = 0 ' 55379
CveCuentaGanancia = 0 ' 55382 CveCuentaGanancia = 0 ' 55382
idCtaPerdida = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria '1227
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Total = LblTotalBancos.Text.ToDecimal Total = LblTotalBancos.Text.ToDecimal
@@ -1038,9 +1039,7 @@ Partial Class Bancos_FluctuacionCambiaria
Dim ErrorRegistrar As Boolean = False Dim ErrorRegistrar As Boolean = False
CveCuentaPerdida = 0 '55379 CveCuentaPerdida = 0 '55379
CveCuentaGanancia = 0 ' 55382 CveCuentaGanancia = 0 ' 55382
idCtaPerdida = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria '1227
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Dim TCCierreFluctuacion As Decimal = LtTipoCambioActual.Text.ToDecimal Dim TCCierreFluctuacion As Decimal = LtTipoCambioActual.Text.ToDecimal
@@ -1102,8 +1101,8 @@ Partial Class Bancos_FluctuacionCambiaria
Dim Total As Decimal = 0 Dim Total As Decimal = 0
Dim Conta As New ClsContabilidad Dim Conta As New ClsContabilidad
Dim Banco As New ClsBancos(Conta.IniciaTransacSQL()) Dim Banco As New ClsBancos(Conta.IniciaTransacSQL())
Dim ObjContPaq As New ClsContPAQi(UsuarioActual.Empresa) 'Dim ObjContPaq As New ClsContPAQi(UsuarioActual.Empresa)
ObjContPaq.IniciaTransacSQL() 'ObjContPaq.IniciaTransacSQL()
Dim CvePrePoliza As Integer = Conta.AddPrePolizas("Banc/FluctuaFilial", 1, 0, 0, 1, FechaUltimoDiaMes, TxtConceptoFiliales.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Dim CvePrePoliza As Integer = Conta.AddPrePolizas("Banc/FluctuaFilial", 1, 0, 0, 1, FechaUltimoDiaMes, TxtConceptoFiliales.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
Dim idCta As Integer = 0 Dim idCta As Integer = 0
Dim CveCuenta As Integer = 0 Dim CveCuenta As Integer = 0
@@ -1116,9 +1115,7 @@ Partial Class Bancos_FluctuacionCambiaria
Dim ErrorRegistrar As Boolean = False Dim ErrorRegistrar As Boolean = False
CveCuentaPerdida = 0 '55379 CveCuentaPerdida = 0 '55379
CveCuentaGanancia = 0 ' 55382 CveCuentaGanancia = 0 ' 55382
idCtaPerdida = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria '1227
IdCtaGanancia = UsuarioActual.Empresa.IdCuentaGananciaCambiaria '1230
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Dim TCCierreFluctuacion As Decimal = LtTipoCambioActual.Text.ToDecimal Dim TCCierreFluctuacion As Decimal = LtTipoCambioActual.Text.ToDecimal
@@ -1157,9 +1154,6 @@ Partial Class Bancos_FluctuacionCambiaria
Banco.UpdateBancosTipoCambioValuacion(TCCierreFluctuacion, gvr.DataKey("CveIE").ToEntero, UsuarioActual.CveEmpresa) Banco.UpdateBancosTipoCambioValuacion(TCCierreFluctuacion, gvr.DataKey("CveIE").ToEntero, UsuarioActual.CveEmpresa)
End If End If
Next Next
If Not ErrorRegistrar Then If Not ErrorRegistrar Then
@@ -1168,28 +1162,96 @@ Partial Class Bancos_FluctuacionCambiaria
Dim AutoConta As Boolean = UsuarioActual.Empresa.Funcionalidad(200) = "1" Dim AutoConta As Boolean = UsuarioActual.Empresa.Funcionalidad(200) = "1"
If AutoConta Then If AutoConta Then
If Conta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa, ObjConta:=ObjContPaq) Then If Conta.ContabilizarPrePoliza(CvePrePoliza, UsuarioActual.CveUsuario, UsuarioActual.Empresa) Then
Else Else
Alert("Ocurrio un Error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError) Alert("Ocurrio un Error al contabilizar, pongase en contacto con Soporte Técnico", TipoMensaje.MsgError)
End If End If
End If End If
If ObjContPaq IsNot Nothing Then ObjContPaq.Commit() ' If ObjContPaq IsNot Nothing Then ObjContPaq.Commit()
'Fin autoconta 'Fin autoconta
Conta.Commit() Conta.Commit()
Alert(String.Format("La Fluctuación se ha generado <br/> <a href='/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}'>Ver Póliza</a>", CvePrePoliza), TipoMensaje.MsgInformacion) Alert(String.Format("La Fluctuación se ha generado <br/> <a href='/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}' class='Texto'>Ver Póliza</a>", CvePrePoliza), TipoMensaje.MsgInformacion)
Else Else
Conta.RollBack() Conta.RollBack()
ObjContPaq.RollBack() 'ObjContPaq.RollBack()
End If End If
Conta.Dispose() Conta.Dispose()
Banco.Dispose() Banco.Dispose()
ObjContPaq.Dispose() 'ObjContPaq.Dispose()
End Sub End Sub
#End Region #End Region
#Region "FLUCTUACION ACREEDORES DIVEROS"
Protected Sub BtnGeneraAcreeedoresDiversos_Click(sender As Object, e As EventArgs)
Dim Conta As New ClsContabilidad
Dim Banco As New ClsBancos(Conta.IniciaTransacSQL())
Dim CvePrePoliza As Integer = Conta.AddPrePolizas("Banc/FluctuaAD", 1, 0, 0, 1, FechaUltimoDiaMes, TxtConceptoAcreedoresDiversos.Text, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
Dim CveConceptoContable As Integer
Dim TipoMovto As Boolean
Dim ErrorRegistrar As Boolean = False
Dim TC As Decimal = 2 ' se pone 2, para que cumpla con el check constrains de complementarias
Dim TCCierreFluctuacion As Decimal = LtTipoCambioActual.Text.ToDecimal
Dim TotalAcumulado As Decimal = 0
Dim ConceptoFluctuacion As String = String.Format("Fluctuación Acreedores Diversos {0:d} ", FechaUltimoDiaMes)
For Each gvr As GridViewRow In GvAcreedorDiversos.Rows
TotalAcumulado += gvr.DataKey("Fluctuacion").ToDecimal
Next
'TotalAcumulado = GvAcreedorDiversos.Rows.Cast(Of GridViewRow)().Sum(Function(gvr) Convert.ToDecimal(GvAcreedorDiversos.DataKeys(gvr.RowIndex)("Fluctuacion")))
If TotalAcumulado < 0 Then
CveConceptoContable = 64 : TipoMovto = True
Else
CveConceptoContable = 65 : TipoMovto = False
End If
'saco las cuentas de pérdida y ganancia
For Each gvr As GridViewRow In GvAcreedorDiversos.Rows
If gvr.DataKey("Fluctuacion").ToDecimal <> 0 Then
'movimiento de complementaria
If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, gvr.DataKey("Fluctuacion").ToDecimal, ConceptoFluctuacion, 351, ConceptoFluctuacion & gvr.DataKey("RazonSocial"), Now, 0, 0, TipoCambio:=TC, ImporteMX:=gvr.DataKey("Fluctuacion").ToDecimal, ImporteME:=gvr.DataKey("Fluctuacion").ToDecimal, CveProveedor:=gvr.DataKey("CveProveedor").ToEntero, CveSubProyecto:=DdlSubProyectoAcreedoresDiversos.SelectedValue.ToEntero) Then
ErrorRegistrar = True
Exit For
End If
End If
Next
If Not ErrorRegistrar Then
If Not Conta.AddPrePolizasDetalle(CvePrePoliza, TipoMovto, Math.Abs(TotalAcumulado), ConceptoFluctuacion, CveConceptoContable, ConceptoFluctuacion, Now, 0, 0, ImporteMX:=Math.Abs(TotalAcumulado), CveSubProyecto:=DdlSubProyectoAcreedoresDiversos.SelectedValue.ToEntero) Then
ErrorRegistrar = True
End If
End If
If Not ErrorRegistrar Then
If Not Banco.UpdateFluctuacionesBitacoraPrePoliza(CvePrePoliza, 9, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
ErrorRegistrar = True
End If
Conta.Commit()
Alert(String.Format("La Fluctuación se ha generado <br/> <a href='/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}' class='Texto'>Ver Póliza</a>", CvePrePoliza), TipoMensaje.MsgInformacion)
Else
Conta.RollBack()
'ObjContPaq.RollBack()
End If
Conta.Dispose()
Banco.Dispose()
'ObjContPaq.Dispose()
End Sub
#End Region
#Region "GRIDVIEWS" #Region "GRIDVIEWS"
@@ -1236,7 +1298,7 @@ Partial Class Bancos_FluctuacionCambiaria
If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnProveedorCvePrePoliza.Value.ToEntero, 1, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnProveedorCvePrePoliza.Value.ToEntero, 1, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
Banco.Commit() Banco.Commit()
BtnProveedoresRemove.visible = False BtnProveedoresRemove.visible = False
Alert("Flucturación eliminada.") Alert("Fluctuación eliminada.")
Else Else
Banco.RollBack() Banco.RollBack()
End If End If
@@ -1251,7 +1313,7 @@ Partial Class Bancos_FluctuacionCambiaria
If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnProveedorAntCvePrePoliza.Value.ToEntero, 2, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnProveedorAntCvePrePoliza.Value.ToEntero, 2, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
Banco.Commit() Banco.Commit()
BtnProveedoresAntRemove.Visible = False BtnProveedoresAntRemove.Visible = False
Alert("Flucturación eliminada.") Alert("Fluctuación eliminada.")
Else Else
Banco.RollBack() Banco.RollBack()
End If End If
@@ -1265,7 +1327,7 @@ Partial Class Bancos_FluctuacionCambiaria
If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnClienteCvePrePoliza.Value.ToEntero, 3, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnClienteCvePrePoliza.Value.ToEntero, 3, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
Banco.Commit() Banco.Commit()
BtnClientesRemove.Visible = False BtnClientesRemove.Visible = False
Alert("Flucturación eliminada.") Alert("Fluctuación eliminada.")
Else Else
Banco.RollBack() Banco.RollBack()
End If End If
@@ -1279,7 +1341,7 @@ Partial Class Bancos_FluctuacionCambiaria
If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnClienteAntCvePrePoliza.Value.ToEntero, 4, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnClienteAntCvePrePoliza.Value.ToEntero, 4, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
Banco.Commit() Banco.Commit()
BtnClientesAntRemove.Visible = False BtnClientesAntRemove.Visible = False
Alert("Flucturación eliminada.") Alert("Fluctuación eliminada.")
Else Else
Banco.RollBack() Banco.RollBack()
End If End If
@@ -1293,7 +1355,7 @@ Partial Class Bancos_FluctuacionCambiaria
If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnAcreedorCvePrePoliza.Value.ToEntero, 5, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnAcreedorCvePrePoliza.Value.ToEntero, 5, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
Banco.Commit() Banco.Commit()
BtnAcreedoresRemove.Visible = False BtnAcreedoresRemove.Visible = False
Alert("Flucturación eliminada.") Alert("Fluctuación eliminada.")
Else Else
Banco.RollBack() Banco.RollBack()
End If End If
@@ -1307,7 +1369,7 @@ Partial Class Bancos_FluctuacionCambiaria
If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnAcreedorAntCvePrePoliza.Value.ToEntero, 6, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnAcreedorAntCvePrePoliza.Value.ToEntero, 6, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
Banco.Commit() Banco.Commit()
BtnAcreedoresAntRemove.Visible = False BtnAcreedoresAntRemove.Visible = False
Alert("Flucturación eliminada.") Alert("Fluctuación eliminada.")
Else Else
Banco.RollBack() Banco.RollBack()
End If End If
@@ -1352,4 +1414,19 @@ Partial Class Bancos_FluctuacionCambiaria
End Sub End Sub
#End Region #End Region
Protected Sub BtnAcreedoresDiversosRemove_Click(sender As Object, e As EventArgs)
Dim Banco As New ClsBancos
Banco.IniciaTransacSQL()
If Banco.FluctuacionesBitacoraPrePolizaRemove(HdnAcreedoresDiversosCvePrePoliza.Value.ToEntero, 9, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
Banco.Commit()
BtnAcreedoresDiversosRemove.Visible = False
CargaDatos()
Alert("Fluctuación eliminada.")
Else
Banco.RollBack()
End If
Banco.Dispose()
End Sub
End Class End Class

View File

@@ -265,6 +265,7 @@
<asp:ListItem Value="C">Clientes</asp:ListItem> <asp:ListItem Value="C">Clientes</asp:ListItem>
<asp:ListItem Value="P">Proveedor</asp:ListItem> <asp:ListItem Value="P">Proveedor</asp:ListItem>
<asp:ListItem Value="FE">Viáticos</asp:ListItem> <asp:ListItem Value="FE">Viáticos</asp:ListItem>
<asp:ListItem Value="AC">Acreedor</asp:ListItem>
</asp:RadioButtonList> </asp:RadioButtonList>
<asp:HiddenField ID="HdnCveCliente" runat="server" ClientIDMode="Static" Value="-1" /> <asp:HiddenField ID="HdnCveCliente" runat="server" ClientIDMode="Static" Value="-1" />
<asp:HiddenField ID="HdnCveProveedor" runat="server" ClientIDMode="Static" Value="-1" /> <asp:HiddenField ID="HdnCveProveedor" runat="server" ClientIDMode="Static" Value="-1" />

View File

@@ -2818,7 +2818,7 @@ Partial Class Bancos_IE
If TxtIvaIxC.Text.ToDouble > 0 Then If TxtIvaIxC.Text.ToDouble > 0 Then
Dim PorcentajeIVA = (TxtIvaIxC.Text.ToDecimal() / (TxtImporte.Text.ToDecimal() - TxtIvaIxC.Text.ToDecimal())).RoundSQL(2) Dim PorcentajeIVA = (TxtIvaIxC.Text.ToDecimal() / (TxtImporte.Text.ToDecimal() - TxtIvaIxC.Text.ToDecimal())).RoundSQL(2)
'Iva 'Iva
ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -TxtIvaIxC.Text.ToDecimal, Ref, 61, Conc, Now, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, PorcentajeImpuesto:=If(PorcentajeIVA.ToString().Contiene("0.08", "0.16"), PorcentajeIVA, 0)) ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -TxtIvaIxC.Text.ToDecimal, Ref, 61, Conc, Now, 0, -1, CveIE, CveIEDevolucion:=DdlIEDevolucion.SelectedValue.ToEntero, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=-TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, PorcentajeImpuesto:=If(PorcentajeIVA.ToString().Contiene("0.08", "0.16"), PorcentajeIVA, 0))
End If End If
'Bancos 'Bancos
@@ -2935,7 +2935,7 @@ Partial Class Bancos_IE
Dim CveConIVA As Integer = 61 Dim CveConIVA As Integer = 61
If UsuarioActual.CveEmpresa = 70 Then CveConIVA = 299 If UsuarioActual.CveEmpresa = 70 Then CveConIVA = 299
Dim PorcentajeIVA = (TxtIvaIxC.Text.ToDecimal() / (TxtImporte.Text.ToDecimal() - TxtIvaIxC.Text.ToDecimal())).RoundSQL(2) Dim PorcentajeIVA = (TxtIvaIxC.Text.ToDecimal() / (TxtImporte.Text.ToDecimal() - TxtIvaIxC.Text.ToDecimal())).RoundSQL(2)
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtIvaIxC.Text.ToDecimal, Concepto, CveConIVA, Concepto, FechaMovimiento, UsuarioActual.Empresa.IdCuentaIVAxTrasladar, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, PorcentajeImpuesto:=PorcentajeIVA) Then If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, TxtIvaIxC.Text.ToDecimal, Concepto, CveConIVA, Concepto, FechaMovimiento, 0, -1, CveIE:=CveIE, CveCompra:=CveCompra, CveProveedor:=CveProveedor, CvePersonal:=CvePersonal, CveCreditoDetalle:=CveCreditoDetalle, CveCliente:=CveCliente, ImporteMX:=TxtIvaIxC.Text.ToDecimal, ImporteME:=tImporteMonedaExtranjera, PorcentajeImpuesto:=PorcentajeIVA) Then
MsgError = "Ocurrió un error al registrar el asiento del ingreso." MsgError = "Ocurrió un error al registrar el asiento del ingreso."
End If End If
End If End If
@@ -3244,14 +3244,14 @@ Partial Class Bancos_IE
If DiferenciaTC < 0 Then If DiferenciaTC < 0 Then
'64 '64
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaImportes, ReferenciaAplicar, 64, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaGananciaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, TipoCambio:=TCCompra) Then If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaImportes, ReferenciaAplicar, 64, ConceptoAplicar, Now, 0, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, TipoCambio:=TCCompra) Then
MsgError = "Ocurrió un error al registrar el asiento de ganancia cambiaria" MsgError = "Ocurrió un error al registrar el asiento de ganancia cambiaria"
Exit Select Exit Select
End If End If
Else Else
'65 '65
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, DiferenciaImportes, ReferenciaAplicar, 65, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, TipoCambio:=TCCompra) Then If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, DiferenciaImportes, ReferenciaAplicar, 65, ConceptoAplicar, Now, 0, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, TipoCambio:=TCCompra) Then
MsgError = "Ocurrió un error al registrar el asiento de perdidada cfambiaria" MsgError = "Ocurrió un error al registrar el asiento de perdidada cfambiaria"
Exit Select Exit Select
End If End If
@@ -3282,9 +3282,9 @@ Partial Class Bancos_IE
Dim IEPSDev As Decimal = dr("IEPS").ToString.ToDecimal Dim IEPSDev As Decimal = dr("IEPS").ToString.ToDecimal
PorcentajeCompraDevDinC = ObjCompras.DtResultados.Rows(0)("PorcentajeIVA").ToString.ToDecimal PorcentajeCompraDevDinC = ObjCompras.DtResultados.Rows(0)("PorcentajeIVA").ToString.ToDecimal
Dim DTCuentas As DataTable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeCompraDevDinC) 'Dim DTCuentas As DataTable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeCompraDevDinC)
Dim IdCtaIVAXAcreditarDevDinC = DTCuentas.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero 'Dim IdCtaIVAXAcreditarDevDinC = DTCuentas.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
Dim IdCtaIVAAcreditableDevDinC = DTCuentas.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero 'Dim IdCtaIVAAcreditableDevDinC = DTCuentas.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
Dim IVADevMN As Decimal = 0 Dim IVADevMN As Decimal = 0
Dim IEPSDevMN As Decimal = 0 Dim IEPSDevMN As Decimal = 0
Dim PorcentajeDevolucion As Decimal = ((ImporteAplicar * 100D / TotalCompraDev) / 100).RoundSQL(2) Dim PorcentajeDevolucion As Decimal = ((ImporteAplicar * 100D / TotalCompraDev) / 100).RoundSQL(2)
@@ -3305,11 +3305,11 @@ Partial Class Bancos_IE
If IVADev > 0 Then If IVADev > 0 Then
IdCtaIVADevolucionIMPUESTOS = IdCtaIVAXAcreditarDevDinC ' IdCtaIVADevolucionIMPUESTOS = IdCtaIVAXAcreditarDevDinC
If ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -IVADev, ReferenciaAplicar, 14, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, PorcentajeImpuesto:=PorcentajeCompraDevDinC) Then If ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -IVADev, ReferenciaAplicar, 14, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, PorcentajeImpuesto:=PorcentajeCompraDevDinC) Then
IdCtaIVADevolucionIMPUESTOS = IdCtaIVAAcreditableDevDinC ' IdCtaIVADevolucionIMPUESTOS = IdCtaIVAAcreditableDevDinC
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -IVADev, ReferenciaAplicar, 19, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, PorcentajeImpuesto:=PorcentajeCompraDevDinC) Then If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, -IVADev, ReferenciaAplicar, 19, ConceptoAplicar, Now, IdCtaIVADevolucionIMPUESTOS, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=-IVADevMN, ImporteME:=-IVADev, PorcentajeImpuesto:=PorcentajeCompraDevDinC) Then
MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución" MsgError = "Ocurrió un error al registrar el asiento de impuestos de devolución"
@@ -3453,14 +3453,14 @@ Partial Class Bancos_IE
If DiferenciaTC < 0 Then If DiferenciaTC < 0 Then
'64 '64
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaImportes, ReferenciaAplicar, 64, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaGananciaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, TipoCambio:=TCCompra) Then If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaImportes, ReferenciaAplicar, 64, ConceptoAplicar, Now, 0, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, TipoCambio:=TCCompra) Then
MsgError = "Ocurrió un error al registrar el asiento de ganancia cambiaria" MsgError = "Ocurrió un error al registrar el asiento de ganancia cambiaria"
Exit Select Exit Select
End If End If
Else Else
'65 '65
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, DiferenciaImportes, ReferenciaAplicar, 65, ConceptoAplicar, Now, UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, TipoCambio:=TCCompra) Then If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, False, DiferenciaImportes, ReferenciaAplicar, 65, ConceptoAplicar, Now, 0, -1, CveIE, CveCompra:=CveCompraDeCDin, CveProveedor:=CveProveedor, ImporteMX:=DiferenciaImportes, ImporteME:=0, TipoCambio:=TCCompra) Then
MsgError = "Ocurrió un error al registrar el asiento de perdidada cfambiaria" MsgError = "Ocurrió un error al registrar el asiento de perdidada cfambiaria"
Exit Select Exit Select
End If End If
@@ -3489,17 +3489,17 @@ Partial Class Bancos_IE
Dim IEPSDev As Decimal = dr("IEPS").ToString.ToDecimal Dim IEPSDev As Decimal = dr("IEPS").ToString.ToDecimal
PorcentajeCompraDevDinC = ObjCompras.DtResultados.Rows(0)("PorcentajeIVA").ToString.ToDecimal PorcentajeCompraDevDinC = ObjCompras.DtResultados.Rows(0)("PorcentajeIVA").ToString.ToDecimal
Dim DTCuentas As DataTable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeCompraDevDinC) 'Dim DTCuentas As DataTable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeCompraDevDinC)
Dim IdCtaIVAXAcreditarDevDinC As Integer Dim IdCtaIVAXAcreditarDevDinC As Integer
Dim IdCtaIVAAcreditableDevDinC As Integer Dim IdCtaIVAAcreditableDevDinC As Integer
If DTCuentas IsNot Nothing AndAlso DTCuentas.Rows.Count > 0 Then 'If DTCuentas IsNot Nothing AndAlso DTCuentas.Rows.Count > 0 Then
IdCtaIVAXAcreditarDevDinC = DTCuentas.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero ' IdCtaIVAXAcreditarDevDinC = DTCuentas.Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
IdCtaIVAAcreditableDevDinC = DTCuentas.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero ' IdCtaIVAAcreditableDevDinC = DTCuentas.Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
Else 'Else
MsgError = "Sin Registros de porcentaje impuesto" ' MsgError = "Sin Registros de porcentaje impuesto"
End If 'End If
Dim IVADevMN As Decimal = 0 Dim IVADevMN As Decimal = 0
Dim IEPSDevMN As Decimal = 0 Dim IEPSDevMN As Decimal = 0

View File

@@ -409,13 +409,11 @@ public partial class Bancos_PagoAcreedor : ClsPaginas
if (TCPago > TC) if (TCPago > TC)
{ {
CveConceptoDiferenciaCambiaria = 65; CveConceptoDiferenciaCambiaria = 65;
IdCtaContableDiferenciaCambiaria = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria;
TipoMovto = false; TipoMovto = false;
} }
else if (TCPago < TC) else if (TCPago < TC)
{ {
CveConceptoDiferenciaCambiaria = 64; CveConceptoDiferenciaCambiaria = 64;
IdCtaContableDiferenciaCambiaria = UsuarioActual.Empresa.IdCuentaGananciaCambiaria;
TipoMovto = true; TipoMovto = true;
} }
Importe = ((Importe * TCPago) - (Importe * TC)).Abs(); Importe = ((Importe * TCPago) - (Importe * TC)).Abs();

View File

@@ -780,16 +780,13 @@ public partial class Bancos_PagoDeudor : ClsPaginas
if (TC < TCDoc) if (TC < TCDoc)
{ {
CveConceptoDiferenciaCambiaria = 65; CveConceptoDiferenciaCambiaria = 65;
IdCtaContableDiferenciaCambiaria = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria;
TipoMovto = false; TipoMovto = false;
Importe = (Importe * gvr.DataKey("TipoCambio").ToDecimal()) - (Importe * TC); Importe = (Importe * gvr.DataKey("TipoCambio").ToDecimal()) - (Importe * TC);
} }
else if (TC > TCDoc) else if (TC > TCDoc)
{ {
CveConceptoDiferenciaCambiaria = 64; CveConceptoDiferenciaCambiaria = 64;
IdCtaContableDiferenciaCambiaria = UsuarioActual.Empresa.IdCuentaGananciaCambiaria;
TipoMovto = true; TipoMovto = true;
Importe = (Importe * TC) - (Importe * gvr.DataKey("TipoCambio").ToDecimal()); Importe = (Importe * TC) - (Importe * gvr.DataKey("TipoCambio").ToDecimal());
} }
ImporteMN = Importe; ImporteMN = Importe;

View File

@@ -108,7 +108,7 @@ Partial Class Bancos_PolizaCheque
DirectCast(Master.FindControl("TSM"), ScriptManager).EnablePageMethods = True DirectCast(Master.FindControl("TSM"), ScriptManager).EnablePageMethods = True
Dim dt As DataTable = Nothing Dim dt As DataTable = Nothing
If UsuarioActual.Empresa.UsaContabilidad Then If UsuarioActual.Empresa.TipoContabilidad = 2 Then
Dim Conta As New ClsContPAQi(UsuarioActual.Empresa) Dim Conta As New ClsContPAQi(UsuarioActual.Empresa)
If Conta.GetCuentas(-1, "-1", 1) Then If Conta.GetCuentas(-1, "-1", 1) Then
@@ -118,6 +118,17 @@ Partial Class Bancos_PolizaCheque
End If End If
Conta.Dispose() Conta.Dispose()
End If
If UsuarioActual.Empresa.TipoContabilidad = 1 Then
Dim Conta As New ClsContabilidad
If Conta.GetCuentas(-1, "-1", 1, UsuarioActual.CveEmpresa) Then
dt = Conta.DtResultados
DtCuentasContables = Conta.DtResultados
Session("DtCuentas") = Conta.DtResultados
End If
Conta.Dispose()
End If End If
TipoPlantilla = 0 TipoPlantilla = 0
@@ -405,9 +416,8 @@ Partial Class Bancos_PolizaCheque
NombreCuenta = "" NombreCuenta = ""
If UsuarioActual.Empresa.UsaContabilidad Then If UsuarioActual.Empresa.UsaContabilidad Then
If drt("IdCtaContable").ToString.ToEntero > 0 Then 'DtCuentasContables If UsuarioActual.Empresa.TipoContabilidad = 1 AndAlso drt("CveCuenta").ToString.ToEntero > 0 Then
Dim drr As DataRow = DtCuentasContables.FiltroPrimero(String.Format("Id={0}", drt("IdCtaContable").ToString)) Dim drr As DataRow = DtCuentasContables.FiltroPrimero(String.Format("CveCuenta={0}", drt("CveCuenta").ToString))
If drr IsNot Nothing Then If drr IsNot Nothing Then
IdCuenta = drt("IdCtaContable").ToString.ToEntero IdCuenta = drt("IdCtaContable").ToString.ToEntero
@@ -416,41 +426,43 @@ Partial Class Bancos_PolizaCheque
'Cuenta = drr("Nombre").ToString() 'Cuenta = drr("Nombre").ToString()
End If End If
EsComodin = 0 EsComodin = 0
End If
If UsuarioActual.Empresa.TipoContabilidad = 2 Then
If drt("IdCtaContable").ToString.ToEntero > 0 Then 'DtCuentasContables
Dim drr As DataRow = DtCuentasContables.FiltroPrimero(String.Format("Id={0}", drt("IdCtaContable").ToString))
ElseIf drt("CveConcepto").ToString = "30" Then
'saco la clave de la cuenta bancaria seleccionada
If DdlCuenta.SelectedValue.ToEntero > 0 And drt("CveConcepto").ToString = "30" Then 'DtCuentasContables
Dim drr As DataRow = DtCuentasContables.FiltroPrimero(String.Format("Id={0}", IdCuentaBancos(DdlCuenta.SelectedValue.ToEntero)))
If drr IsNot Nothing Then If drr IsNot Nothing Then
IdCuenta = drr("Id").ToString.ToEntero IdCuenta = drt("IdCtaContable").ToString.ToEntero
CodigoCuenta = drr("CuentaFormato").ToString() CodigoCuenta = drr("CuentaFormato").ToString()
NombreCuenta = drr("Nombre").ToString() NombreCuenta = drr("Nombre").ToString()
' Cuenta = drr("Nombre").ToString() 'Cuenta = drr("Nombre").ToString()
EsComodin = 1
Else
' Rad.Checked = False
If UsuarioActual.CveEmpresa <> 126 Then
Alert("La Cuenta Bancaria no se ha vinculado a la cuenta contable", TipoMensaje.MsgAdvertencia)
GvMov.DataBind()
UPMovs.Update()
Exit Sub
End If
End If End If
EsComodin = 0
ElseIf drt("CveConcepto").ToString = "30" Then
'saco la clave de la cuenta bancaria seleccionada
If DdlCuenta.SelectedValue.ToEntero > 0 And drt("CveConcepto").ToString = "30" Then 'DtCuentasContables
Dim drr As DataRow = DtCuentasContables.FiltroPrimero(String.Format("Id={0}", IdCuentaBancos(DdlCuenta.SelectedValue.ToEntero)))
If drr IsNot Nothing Then
IdCuenta = drr("Id").ToString.ToEntero
CodigoCuenta = drr("CuentaFormato").ToString()
NombreCuenta = drr("Nombre").ToString()
' Cuenta = drr("Nombre").ToString()
EsComodin = 1
End If
End If
ElseIf drt("CveConcepto").ToString.ToEntero = 135 And IdCtaFondoGarantia > 0 Then
Dim drr As DataRow = DtCuentasContables.FiltroPrimero(String.Format("Id={0}", IdCtaFondoGarantia))
IdCuenta = IdCtaFondoGarantia
CodigoCuenta = drr("CuentaFormato").ToString()
NombreCuenta = drr("Nombre").ToString()
'Cuenta = drr("Nombre").ToString()
EsComodin = 0
End If End If
ElseIf drt("CveConcepto").ToString.ToEntero = 135 And IdCtaFondoGarantia > 0 Then
Dim drr As DataRow = DtCuentasContables.FiltroPrimero(String.Format("Id={0}", IdCtaFondoGarantia))
IdCuenta = IdCtaFondoGarantia
CodigoCuenta = drr("CuentaFormato").ToString()
NombreCuenta = drr("Nombre").ToString()
'Cuenta = drr("Nombre").ToString()
EsComodin = 0
End If End If
End If End If

View File

@@ -1122,7 +1122,7 @@ Partial Class Bancos_PopIEVentas
trCuentaDeposito.Visible = False trCuentaDeposito.Visible = False
Dim Dep As New ClsGenerales Dim Dep As New ClsGenerales
If Dep.GetCuentasDepositos(CveCliente:=CveCliente) Then If Dep.GetCuentasDepositos(CveCliente:=CveCliente, CveEmpresa:=UsuarioActual.CveEmpresa) Then
If DdlTipoTransaccion.SelectedValue = "9" Then If DdlTipoTransaccion.SelectedValue = "9" Then
DdlCuentaDeposito.DataSource = Dep.DtResultados.FiltraParametros("EstatusPagoElectronico = 'True' AND Estatus ='True'") DdlCuentaDeposito.DataSource = Dep.DtResultados.FiltraParametros("EstatusPagoElectronico = 'True' AND Estatus ='True'")
@@ -1905,13 +1905,6 @@ Partial Class Bancos_PopIEVentas
PorcentajeImpuesto = MovimientoPagar.PorcentajeIVA PorcentajeImpuesto = MovimientoPagar.PorcentajeIVA
Dim IdCtaIVAXTrasladar As Integer = 0
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXTrasladar").ToString.ToEntero
End If
IdCtaContable = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
Case 61 'Iva Trasladado Case 61 'Iva Trasladado
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
@@ -1937,13 +1930,7 @@ Partial Class Bancos_PopIEVentas
If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}" If tipoCambioPago > 1 Then ConceptoMovimiento += $" TC:{tipoCambioPago} ${ImporteMovimiento.FormatoNumero(2)}"
PorcentajeImpuesto = MovimientoPagar.PorcentajeIVA PorcentajeImpuesto = MovimientoPagar.PorcentajeIVA
Dim IdCtaIVATrasladado As Integer = 0
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
IdCtaIVATrasladado = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVATrasladado").ToString.ToEntero
End If
IdCtaContable = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
Case 38 'IEPS por trasladar Case 38 'IEPS por trasladar
If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then If CveMoneda = 1 AndAlso CveMonedaVenta = 1 Then
@@ -2078,7 +2065,6 @@ Partial Class Bancos_PopIEVentas
Case 64 'Ganancia Case 64 'Ganancia
If CveMoneda <> 1 OrElse CveMonedaVenta <> 1 Then If CveMoneda <> 1 OrElse CveMonedaVenta <> 1 Then
IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
Dim tImporteVenta, tImportePago, Diferencia As Decimal Dim tImporteVenta, tImportePago, Diferencia As Decimal
ImporteMovimiento = 0 ImporteMovimiento = 0
@@ -2100,11 +2086,9 @@ Partial Class Bancos_PopIEVentas
If tImporteVenta <> tImportePago Then If tImporteVenta <> tImportePago Then
If tImporteVenta < tImportePago Then If tImporteVenta < tImportePago Then
ConceptoContable = 64 ConceptoContable = 64
IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
TipoMovimiento = True TipoMovimiento = True
Else Else
ConceptoContable = 65 ConceptoContable = 65
IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
TipoMovimiento = False TipoMovimiento = False
End If End If
Diferencia = Math.Abs(tImporteVenta - tImportePago) Diferencia = Math.Abs(tImporteVenta - tImportePago)

View File

@@ -115,18 +115,18 @@
</div> </div>
<div class="col-md-4" id="DivMovtoPermanente" runat="server" visible="false"> <div class="col-md-4" id="DivMovtoPermanente" runat="server" visible="false">
<div class="row"> <div class="row">
<div class="col-md-3"> <div class="col-md-4 control-label">
<asp:Label runat="server" Text="Concep. Nom:"></asp:Label> <asp:Label runat="server" Text="Concep. Nom:"></asp:Label>
</div> </div>
<div class="col-md-9"> <div class="col-md-8">
<asp:DropDownList ID="DdlConcepto" runat="server" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList> <asp:DropDownList ID="DdlConcepto" runat="server" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-md-3"> <div class="col-md-4 control-label">
<asp:Label runat="server" Text="Tipo Desc.:"></asp:Label> <asp:Label runat="server" Text="Tipo Desc.:"></asp:Label>
</div> </div>
<div class="col-md-9"> <div class="col-md-8">
<asp:DropDownList ID="DdlTipoDescto" runat="server" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardarPrestamo"> <asp:DropDownList ID="DdlTipoDescto" runat="server" DataTextField="CodigoConcepto" DataValueField="CveConcepto" Class="form-control input-sm select2me" Width="100%" ValidationGroup="GrpGuardarPrestamo">
<asp:ListItem Value="-1" Text="Seleccione" Enabled="true"></asp:ListItem> <asp:ListItem Value="-1" Text="Seleccione" Enabled="true"></asp:ListItem>
<%-- <asp:ListItem Value="1" Text="Importe"></asp:ListItem> <%-- <asp:ListItem Value="1" Text="Importe"></asp:ListItem>
@@ -137,18 +137,18 @@
</div> </div>
</div> </div>
<div class="row" id="DivImportePrestamo" runat="server" visible="false"> <div class="row" id="DivImportePrestamo" runat="server" visible="false">
<div class="col-md-3"> <div class="col-md-4 control-label">
<asp:Label runat="server" Text="Importe prestamo:"></asp:Label> <asp:Label runat="server" Text="Importe prestamo:"></asp:Label>
</div> </div>
<div class="col-md-9"> <div class="col-md-8">
<asp:Label runat="server" Text="" ID="LblPrestamo" ClientIDMode="Static"></asp:Label> <asp:Label runat="server" Text="" ID="LblPrestamo" ClientIDMode="Static"></asp:Label>
</div> </div>
</div> </div>
<div class="row" id="DivValor" runat="server"> <div class="row" id="DivValor" runat="server">
<div class="col-md-3"> <div class="col-md-4 control-label">
<asp:Label runat="server" Text="Valor:"></asp:Label> <asp:Label runat="server" Text="Valor:"></asp:Label>
</div> </div>
<div class="col-md-9"> <div class="col-md-8">
<asp:TextBox ID="TxtValor" CssClass="form-control input-sm" runat="server" Style="text-align: right;" onkeyup="FormatoMoneda(this)" AutoComplete="off"></asp:TextBox> <asp:TextBox ID="TxtValor" CssClass="form-control input-sm" runat="server" Style="text-align: right;" onkeyup="FormatoMoneda(this)" AutoComplete="off"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FTVValor" runat="server" TargetControlID="TxtValor" FilterType="Custom, Numbers" ValidChars="+-.," /> <ajax:FilteredTextBoxExtender ID="FTVValor" runat="server" TargetControlID="TxtValor" FilterType="Custom, Numbers" ValidChars="+-.," />
<asp:RequiredFieldValidator ID="RfvMontoLimite" runat="server" Display="None" ControlToValidate="TxtValor" CssClass="help-block errorimput" <asp:RequiredFieldValidator ID="RfvMontoLimite" runat="server" Display="None" ControlToValidate="TxtValor" CssClass="help-block errorimput"

View File

@@ -1877,10 +1877,10 @@ Partial Class Bancos_ProveedoresAbonar
Dim IdCtaIVAXAcreditar As Integer = 0 Dim IdCtaIVAXAcreditar As Integer = 0
Dim IdCtaIVAAcreditable As Integer = 0 Dim IdCtaIVAAcreditable As Integer = 0
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then 'If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
IdCtaIVAXAcreditar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero ' IdCtaIVAXAcreditar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
IdCtaIVAAcreditable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero ' IdCtaIVAAcreditable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
End If 'End If
Dim IVA As Decimal = PorcentajePago * gr.DataKey("IVA").ToDecimal Dim IVA As Decimal = PorcentajePago * gr.DataKey("IVA").ToDecimal
@@ -1930,11 +1930,11 @@ Partial Class Bancos_ProveedoresAbonar
End If End If
If TCCompra > TCPago Then If TCCompra > TCPago Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 64, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=UsuarioActual.Empresa.IdCuentaGananciaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveSubProyecto:=CveSubProyecto, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CveCompra:=gr.DataKey("CveCompra").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCCompra, TipoCambioPago:=TCPago, Contabilizable:=EsContabilizable) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 64, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=0, CveIE:=-1, IdSegmentoNegocio:=-1, CveSubProyecto:=CveSubProyecto, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CveCompra:=gr.DataKey("CveCompra").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCCompra, TipoCambioPago:=TCPago, Contabilizable:=EsContabilizable) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If
Else Else
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 65, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveSubProyecto:=CveSubProyecto, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CveCompra:=gr.DataKey("CveCompra").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCCompra, TipoCambioPago:=TCPago, Contabilizable:=EsContabilizable) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 65, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=0, CveIE:=-1, IdSegmentoNegocio:=-1, CveSubProyecto:=CveSubProyecto, CveProveedor:=gr.DataKey("CveProveedor").ToEntero, CveCompra:=gr.DataKey("CveCompra").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCCompra, TipoCambioPago:=TCPago, Contabilizable:=EsContabilizable) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If
End If End If

View File

@@ -5908,10 +5908,10 @@ Partial Class Compras_Compras
' Dim IdCtaIVAAcreditable As Integer = 0 ' Dim IdCtaIVAAcreditable As Integer = 0
Dim GuardoConcepto18 As Boolean = False Dim GuardoConcepto18 As Boolean = False
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA).Rows.Count > 0 Then 'If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA).Rows.Count > 0 Then
IdCtaIVAXAcreditar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA).Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero ' IdCtaIVAXAcreditar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA).Rows(0)("IdCtaIVAXAcreditar").ToString.ToEntero
' IdCtaIVAAcreditable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA).Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero ' ' IdCtaIVAAcreditable = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeIVA).Rows(0)("IdCtaIVAAcreditable").ToString.ToEntero
End If 'End If
'********************** Variables '********************** '********************** Variables '**********************
@@ -6363,11 +6363,9 @@ Partial Class Compras_Compras
If TipoCambioCompra > TCPago Then If TipoCambioCompra > TCPago Then
ConceptoContable = 64 ConceptoContable = 64
IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
TipoMovimiento = True TipoMovimiento = True
Else Else
ConceptoContable = 65 ConceptoContable = 65
IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
TipoMovimiento = False TipoMovimiento = False
End If End If
If TCPago <> TipoCambioCompra Then If TCPago <> TipoCambioCompra Then
@@ -6828,10 +6826,8 @@ Partial Class Compras_Compras
If diferenciaTransito <> 0 Then If diferenciaTransito <> 0 Then
Dim tCveCon As Integer = 65 Dim tCveCon As Integer = 65
IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
If diferenciaTransito < 0 Then If diferenciaTransito < 0 Then
tCveCon = 64 tCveCon = 64
IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
End If End If
diferenciaTransito = Math.Abs(diferenciaTransito) diferenciaTransito = Math.Abs(diferenciaTransito)
@@ -7368,11 +7364,9 @@ Partial Class Compras_Compras
If importeMovimiento > 0 Then If importeMovimiento > 0 Then
ConceptoContable = 64 ConceptoContable = 64
TipoMovimiento = True TipoMovimiento = True
IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
ElseIf importeMovimiento < 0 Then ElseIf importeMovimiento < 0 Then
ConceptoContable = 65 ConceptoContable = 65
TipoMovimiento = False TipoMovimiento = False
IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
End If End If
importeMovimiento = importeMovimiento.Abs.RoundSQL() importeMovimiento = importeMovimiento.Abs.RoundSQL()

View File

@@ -1823,11 +1823,8 @@ Partial Class Compras_Proveedores
If ObjContaAC IsNot Nothing Then ObjContaAC.Commit() If ObjContaAC IsNot Nothing Then ObjContaAC.Commit()
'ACTUALIZAR GLOBAL 'ACTUALIZAR GLOBAL
'If ObjProveedores.GetProveedores(ClsCompProveedores.TipoConsulta.ParaGlobalDT, -1, "-1", "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) Then
GlobalDTCompProveedores(UsuarioActual.CveEmpresa) = Nothing GlobalDTCompProveedores(UsuarioActual.CveEmpresa) = Nothing
'Else GlobalDTProveedoresCuentas(UsuarioActual.CveEmpresa, -1) = Nothing
' ErrorBancos = True
'End If
Alert("El Proveedor se guardó correctamente. " & "<br />" & MsgCuentaContable, TipoMensaje.MsgInformacion, If(Request("CveFactura") Is Nothing, "document.location.href=""/Compras/CatProveedores.aspx""", "window.opener.location.href = window.opener.location.href; window.close();")) Alert("El Proveedor se guardó correctamente. " & "<br />" & MsgCuentaContable, TipoMensaje.MsgInformacion, If(Request("CveFactura") Is Nothing, "document.location.href=""/Compras/CatProveedores.aspx""", "window.opener.location.href = window.opener.location.href; window.close();"))
RecargaGlobalCuentasBancarias() RecargaGlobalCuentasBancarias()
@@ -3416,7 +3413,9 @@ Partial Class Compras_Proveedores
If CveProveedor > 0 Then If CveProveedor > 0 Then
If ObjCuentasBancos.RemoveCuentasDepositos(GvRow.DataKey("CveCuentaDeposito").ToEntero, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario) Then If ObjCuentasBancos.RemoveCuentasDepositos(GvRow.DataKey("CveCuentaDeposito").ToEntero, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario) Then
DTCuentasBancos.Clear() DTCuentasBancos.Clear()
DTCuentasBancos.Merge(ObjCuentasBancos.DtResultados.FiltraParametros(String.Format("CveProveedor = {0}", CveProveedor))) 'recargar las cuentas
GlobalDTProveedoresCuentas(UsuarioActual.CveEmpresa, -1) = Nothing
DTCuentasBancos = GlobalDTProveedoresCuentas(UsuarioActual.CveEmpresa, CveProveedor)
Alert("Cuenta Bancaria borrada con éxito.", TipoMensaje.MsgInformacion) Alert("Cuenta Bancaria borrada con éxito.", TipoMensaje.MsgInformacion)
Else Else
@@ -3430,12 +3429,11 @@ Partial Class Compras_Proveedores
CargaPSGridCuentasBancos(ViewState("OrdenCuentasBancos").ToString) CargaPSGridCuentasBancos(ViewState("OrdenCuentasBancos").ToString)
ObjCuentasBancos.Dispose() ObjCuentasBancos.Dispose()
RecargaGlobalCuentasBancarias()
End Sub End Sub
Private Sub RecargaGlobalCuentasBancarias(Optional ByVal CveCuenta As Integer = -1) Private Sub RecargaGlobalCuentasBancarias(Optional ByVal CveCuenta As Integer = -1)
If CveProveedor > 0 Then If CveProveedor > 0 Then
GlobalDTProveedoresCuentas(UsuarioActual.CveEmpresa, -1) = Nothing GlobalDTProveedoresCuentas(UsuarioActual.CveEmpresa, -1) = Nothing
End If End If
End Sub End Sub

View File

@@ -1,330 +1,326 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepComprasAF.aspx.vb" Inherits="Compras_RepComprasAF" %> <%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepComprasAF.aspx.vb" Inherits="Compras_RepComprasAF" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server"> <asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content> </asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server"> <asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style> <style>
#chartdiv { #chartdiv {
width: 100%; width: 100%;
height: 500px; height: 500px;
} }
</style> </style>
</asp:Content> </asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server"> <asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Reporte de Compras Activo Fijo Reporte de Compras Activo Fijo
</asp:Content> </asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server"> <asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</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="LinkPDF" runat="server"><i class="fa fa-ad-pdf"></i> Generar PDF</asp:LinkButton> <asp:LinkButton ID="LinkPDF" runat="server"><i class="fa fa-ad-pdf"></i> Generar PDF</asp:LinkButton>
</li> </li>
<li> <li>
<asp:LinkButton ID="LnkExportar" runat="server"><i class="fa fa-ad-excel"></i> Generar Excel</asp:LinkButton> <asp:LinkButton ID="LnkExportar" runat="server"><i class="fa fa-ad-excel"></i> Generar Excel</asp:LinkButton>
</li> </li>
<li> <li>
<asp:HyperLink NavigateUrl="javascript:;" data-toggle="modal" data-target="#DivTipoCambio" ID="ImgTipoCambio" runat="server"> <i class="fa fa-money"></i> Ver Dlls en pesos</asp:HyperLink> <asp:HyperLink NavigateUrl="javascript:;" data-toggle="modal" data-target="#DivTipoCambio" ID="ImgTipoCambio" runat="server"> <i class="fa fa-money"></i> Ver Dlls en pesos</asp:HyperLink>
</li> </li>
<li> <li>
<a target="_blank" class="ayuda" href="../Documentacion/DocumentacionCompras.aspx#RepComprasAF">&nbsp</a> <a target="_blank" class="ayuda" href="../Documentacion/DocumentacionCompras.aspx#RepComprasAF">&nbsp</a>
</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="LnkVerGrafica" OnClick="LnkVerGrafica_Click" runat="server">Ver Grafica</asp:LinkButton> <asp:LinkButton ID="LnkVerGrafica" OnClick="LnkVerGrafica_Click" runat="server">Ver Grafica</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">
</asp:Content> </asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server"> <asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UPFiltros" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<div class="portlet solid grey-cascade portlet-filter" id="idnecesaria"> <div class="portlet solid grey-cascade portlet-filter" id="idnecesaria">
<div class="portlet-title portlet-filterT smalltitle"> <div class="portlet-title portlet-filterT smalltitle">
<div class="tools"> <div class="tools">
<asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" /> <asp:Button ID="BtnConsultar" runat="server" Text="Consultar" class="btn btn-primary" />
<a href="javascript:;" class="expand"></a> <a href="javascript:;" class="expand"></a>
</div> </div>
<div class="titlefiltros caption "> <div class="titlefiltros caption ">
<div class="row"> <div class="row">
<div class="col-md-1">Fecha Inicio:</div> <div class="col-md-1">Fecha Inicio:</div>
<div class="col-md-2"> <div class="col-md-2">
<div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy" style="padding: 0px;"> <div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy" style="padding: 0px;">
<asp:TextBox Style="width: 115px !important" ID="txtFechaI" runat="server" CssClass="form-control text-size-12" CausesValidation="true" MaxLength="10"></asp:TextBox> <asp:TextBox Style="width: 115px !important" ID="txtFechaI" runat="server" CssClass="form-control text-size-12" CausesValidation="true" MaxLength="10"></asp:TextBox>
<span class="input-group-btn "> <span class="input-group-btn ">
<asp:LinkButton ID="imgCalendario" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton> <asp:LinkButton ID="imgCalendario" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span> </span>
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender> <ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="txtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario" TargetControlID="txtFechaI" PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender> <ajax:CalendarExtender runat="server" ID="Calendario" TargetControlID="txtFechaI" PopupButtonID="ImgCalendario" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="rfvFechaI" runat="server" ControlToValidate="txtFechaI" Display="None" ErrorMessage="El campo <b>''Fecha Inicial''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaI" runat="server" ControlToValidate="txtFechaI" 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> <asp:CompareValidator ID="cvFechaI" runat="server" ControlToValidate="txtFechaI" 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="vcoFfvFI" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaI" Width="350px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="vcoFfvFI" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="vcoCvFI" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaI" Width="350px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="vcoCvFI" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div> </div>
</div> </div>
<div class="col-md-1">Fecha Fin:</div> <div class="col-md-1">Fecha Fin:</div>
<div class="col-md-2"> <div class="col-md-2">
<div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy" style="padding: 0px;"> <div class="input-group input-sm input-small date date-picker" data-date-format="dd/mm/yyyy" style="padding: 0px;">
<asp:TextBox Style="width: 115px !important" ID="txtFechaF" runat="server" CssClass="form-control text-size-12" CausesValidation="true" MaxLength="10"></asp:TextBox> <asp:TextBox Style="width: 115px !important" ID="txtFechaF" runat="server" CssClass="form-control text-size-12" CausesValidation="true" MaxLength="10"></asp:TextBox>
<span class="input-group-btn "> <span class="input-group-btn ">
<asp:LinkButton ID="imgCalendarioF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton> <asp:LinkButton ID="imgCalendarioF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
</span> </span>
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="txtFechaF" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender> <ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="txtFechaF" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<ajax:CalendarExtender runat="server" ID="Calendario2" TargetControlID="txtFechaF" PopupButtonID="imgCalendarioF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender> <ajax:CalendarExtender runat="server" ID="Calendario2" TargetControlID="txtFechaF" PopupButtonID="imgCalendarioF" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<asp:RequiredFieldValidator ID="rfvFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="rfvFechaF" runat="server" ControlToValidate="txtFechaF" Display="None" ErrorMessage="El campo <b>''Fecha Final''</b> es requerido por la aplicación, por favor ingrese una fecha." ValidationGroup="Valida"></asp:RequiredFieldValidator>
<asp:CompareValidator ID="cvFechaF" runat="server" ControlToValidate="txtFechaF" 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> <asp:CompareValidator ID="cvFechaF" runat="server" ControlToValidate="txtFechaF" 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="vcoRfvFF" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaF" Width="350px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="vcoRfvFF" runat="server" HighlightCssClass="vco" TargetControlID="rfvFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
<ajax:ValidatorCalloutExtender ID="vcoCvFF" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaF" Width="350px"></ajax:ValidatorCalloutExtender> <ajax:ValidatorCalloutExtender ID="vcoCvFF" runat="server" HighlightCssClass="vco" TargetControlID="cvFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
</div> </div>
</div> </div>
<div class="col-md-1 ">Grupo:</div> <div class="col-md-1 ">Grupo:</div>
<div class=" col-md-2 "> <div class=" col-md-2 ">
<asp:DropDownList CssClass=" select2me" ID="DdlGrupo" runat="server" Width="95%"> <asp:DropDownList CssClass=" select2me" ID="DdlGrupo" runat="server" Width="95%">
<asp:ListItem Text="Año" Value="1"></asp:ListItem> <asp:ListItem Text="Año" Value="1"></asp:ListItem>
<asp:ListItem Text="Mes" Value="2"></asp:ListItem> <asp:ListItem Text="Mes" Value="2"></asp:ListItem>
<asp:ListItem Selected="True" Text="Año/Mes" Value="3"></asp:ListItem> <asp:ListItem Selected="True" Text="Año/Mes" Value="3"></asp:ListItem>
<asp:ListItem Text="Fecha" Value="4"></asp:ListItem> <asp:ListItem Text="Fecha" Value="4"></asp:ListItem>
<asp:ListItem Text="Proveedor" Value="5"></asp:ListItem> <asp:ListItem Text="Proveedor" Value="5"></asp:ListItem>
<asp:ListItem Text="Activo Fijo" Value="6"></asp:ListItem> <asp:ListItem Text="Activo Fijo" Value="6"></asp:ListItem>
<asp:ListItem Text="Activo Fijo Tipo" Value="7"></asp:ListItem> <asp:ListItem Text="Activo Fijo Tipo" Value="7"></asp:ListItem>
<asp:ListItem Text="Activo Fijo SubTipo" Value="8"></asp:ListItem> <asp:ListItem Text="Activo Fijo SubTipo" Value="8"></asp:ListItem>
<asp:ListItem Text="Producto" Value="9"></asp:ListItem> <asp:ListItem Text="Producto" Value="9"></asp:ListItem>
<asp:ListItem Text="Clasificación" Value="10"></asp:ListItem> <asp:ListItem Text="Clasificación" Value="10"></asp:ListItem>
<asp:ListItem Text="Clasificación2" Value="11"></asp:ListItem> <asp:ListItem Text="Clasificación2" Value="11"></asp:ListItem>
</asp:DropDownList> </asp:DropDownList>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="portlet-body" style="display: none"> <div class="portlet-body" style="display: none">
<div class="row"> <div class="row">
<div class="col-md-1">Tipo Activo Fijo: </div> <div class="col-md-1">Tipo Activo Fijo: </div>
<div class="col-md-2"> <div class="col-md-2">
<asp:DropDownList ID="DdlTipoActivoFijo" runat="server" CssClass="form-control input-sm select2me input-small" AppendDataBoundItems="True" AutoPostBack="True" DataTextField="TipoActivoFijo" DataValueField="CveTipoActivoFijo" Width="95%"> <asp:DropDownList ID="DdlTipoActivoFijo" runat="server" CssClass="form-control input-sm select2me input-small" AutoPostBack="True" DataTextField="TipoActivoFijo" DataValueField="CveTipoActivoFijo" Width="95%">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem> </asp:DropDownList>
</asp:DropDownList> </div>
</div> <div class="col-md-1">SubTipo Fijo:</div>
<div class="col-md-1">SubTipo Fijo:</div> <div class="col-md-2">
<div class="col-md-2"> <asp:DropDownList ID="DdlSubTipoActivoFijo" CssClass="form-control input-sm select2me input-small" runat="server" AutoPostBack="True" DataTextField="SubTipoActivoFijo" DataValueField="CveSubTipoActivoFijo" Width="95%">
<asp:DropDownList ID="DdlSubTipoActivoFijo" CssClass="form-control input-sm select2me input-small" runat="server" AppendDataBoundItems="True" AutoPostBack="True" DataTextField="SubTipoActivoFijo" DataValueField="CveSubTipoActivoFijo" Width="95%"> </asp:DropDownList>
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem> </div>
</asp:DropDownList> <div class="col-md-1">Activo Fijo:</div>
</div> <div class="col-md-2">
<div class="col-md-1">Activo Fijo:</div> <asp:DropDownList ID="DdlActivoFijo" runat="server" CssClass=" form-control input-sm select2me" DataTextField="Descripcion" DataValueField="CveActivoFijo" Width="95%">
<div class="col-md-2"> </asp:DropDownList>
<asp:DropDownList ID="DdlActivoFijo" runat="server" CssClass=" form-control input-sm select2me" AppendDataBoundItems="true" DataTextField="Descripcion" DataValueField="CveActivoFijo" Width="95%"> </div>
<asp:ListItem Selected="True" Text="Todas" Value="-1"></asp:ListItem> <div class="col-md-1">Moneda:</div>
</asp:DropDownList> <div class="col-md-2">
</div> <asp:DropDownList ID="DdlMonedas" runat="server" DataTextField="Moneda" CssClass="form-control input-sm select2me" DataValueField="CveMoneda" Width="95%">
<div class="col-md-1">Moneda:</div> </asp:DropDownList>
<div class="col-md-2"> </div>
<asp:DropDownList ID="DdlMonedas" runat="server" AppendDataBoundItems="true" DataTextField="Moneda" CssClass="form-control input-sm select2me" DataValueField="CveMoneda" Width="95%"> </div>
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem> <div class="row ">
</asp:DropDownList> <asp:Label ID="LblProyecto" runat="server" class="col-md-1 truncate">Proyecto:</asp:Label>
</div> <div runat="server" id="DivProyecto" class="col-md-2">
</div> <asp:DropDownList ID="DdlProyecto" CssClass=" form-control input-sm select2me" runat="server" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Width="95%">
<div class="row "> </asp:DropDownList>
<asp:Label ID="LblProyecto" runat="server" class="col-md-1 truncate">Proyecto:</asp:Label> </div>
<div runat="server" id="DivProyecto" class="col-md-2"> <asp:Label runat="server" ID="LblSubProyecto" CssClass="col-md-1 truncate">SubProyecto:</asp:Label>
<asp:DropDownList ID="DdlProyecto" CssClass=" form-control input-sm select2me" runat="server" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Proyecto" DataValueField="CveProyecto" Width="95%"> <div class="col-md-2">
</asp:DropDownList> <asp:DropDownList ID="DdlSubProyecto" CssClass="form-control input-sm select2me" runat="server" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Width="95%" AutoPostBack="True">
</div> </asp:DropDownList>
<asp:Label runat="server" ID="LblSubProyecto" CssClass="col-md-1 truncate">SubProyecto:</asp:Label> </div>
<div class="col-md-2"> <div class="col-md-1 ">Proveedor:</div>
<asp:DropDownList ID="DdlSubProyecto" CssClass="form-control input-sm select2me" runat="server" DataTextField="SubProyecto" DataValueField="CveSubProyecto" Width="95%" AutoPostBack="True"> <div class="col-md-2 ">
</asp:DropDownList> <asp:DropDownList CssClass=" select2me" ID="DdlProveedores" runat="server" DataTextField="RazonSocial" DataValueField="CveProveedor" Width="95%">
</div> </asp:DropDownList>
<div class="col-md-1 ">Proveedor:</div> </div>
<div class="col-md-2 "> <div class="col-md-1">Tipo de Compra:</div>
<asp:DropDownList CssClass=" select2me" ID="DdlProveedores" runat="server" AppendDataBoundItems="true" DataTextField="RazonSocial" DataValueField="CveProveedor" Width="95%"> <div class="col-md-2">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem> <asp:DropDownList ID="DdlTipoCompra" runat="server" CssClass="form-control input-sm select2me" Width="95%">
</asp:DropDownList> <asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</div> <asp:ListItem Text="Insumos" Value="1"></asp:ListItem>
<div class="col-md-1">Tipo de Compra:</div> <asp:ListItem Text="Compras" Value="2"></asp:ListItem>
<div class="col-md-2"> </asp:DropDownList>
<asp:DropDownList ID="DdlTipoCompra" runat="server" CssClass="form-control input-sm select2me" Width="95%"> </div>
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
<asp:ListItem Text="Insumos" Value="1"></asp:ListItem> </div>
<asp:ListItem Text="Compras" Value="2"></asp:ListItem> <div class="row">
</asp:DropDownList>
</div> <div class="col-md-1">Clasificación:</div>
<div class="col-md-2">
</div> <asp:DropDownList ID="DdlClasificacion" runat="server" CssClass=" form-control input-sm select2me" AutoPostBack="true" DataTextField="Clasificacion" DataValueField="CveClasificacion" Width="95%">
<div class="row"> </asp:DropDownList>
</div>
<div class="col-md-1">Clasificación:</div>
<div class="col-md-2">
<asp:DropDownList ID="DdlClasificacion" runat="server" CssClass=" form-control input-sm select2me" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Clasificacion" DataValueField="CveClasificacion" Width="95%"> <div class="col-md-1">Clasificación 2:</div>
<asp:ListItem Selected="True" Text="Todas" Value="-1"></asp:ListItem> <div class="col-md-2">
</asp:DropDownList> <asp:DropDownList ID="DdlClasificacion2" runat="server" CssClass=" form-control input-sm select2me" AutoPostBack="true" DataTextField="Clasificacion" DataValueField="CveClasificacion" Width="95%">
</div> </asp:DropDownList>
</div>
<div class="col-md-1">Clasificación 2:</div> <div class="col-md-1">Producto Servicio:</div>
<div class="col-md-2"> <div class="col-md-2">
<asp:DropDownList ID="DdlClasificacion2" runat="server" CssClass=" form-control input-sm select2me" AppendDataBoundItems="true" AutoPostBack="true" DataTextField="Clasificacion" DataValueField="CveClasificacion" Width="95%"> <ADS:Dropdownlost runat="server" ID="DdlPS" CssStyle="width: 100%;" CssClassDdl="select2me" DataTextField="PSCodigo" DataValueField="CvePS" Width="95%" />
<asp:ListItem Selected="True" Text="Todas" Value="-1"></asp:ListItem> </div>
</asp:DropDownList> </div>
</div> </div>
</div>
<div class="col-md-1">Producto Servicio:</div> </ContentTemplate>
<div class="col-md-2"> </asp:UpdatePanel>
<ADS:Dropdownlost runat="server" ID="DdlPS" CssStyle="width: 100%;" CssClassDdl="select2me" DataTextField="PSCodigo" DataValueField="CvePS" Width="95%" /> <br />
</div> <div class="row">
</div> <div class="col-md-8">
</div> <asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional">
</div> <ContentTemplate>
</ContentTemplate> <asp:GridView ID="GvDatos" runat="server" data-sort="true" DataKeyNames="GPO,Cantidad,Total,Moneda" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros con los filtros especificados" CssClass="table table-advance table-hover Widthall ScrollAD"
</asp:UpdatePanel> ToolTip="Listado de Ventas" GridLines="None">
<br /> <Columns>
<div class="col-md-8" > <asp:TemplateField HeaderText="Grupo">
<asp:UpdatePanel ID="UPDatos" runat="server" UpdateMode="Conditional"> <ItemTemplate>
<ContentTemplate> <asp:Label ID="LblGPO" runat="server" Text='<%# If(Eval("GPO").ToString = "", Eval("Moneda"), Eval("GPO")) %>'></asp:Label>
<asp:GridView ID="GvDatos" runat="server" data-sort="true" DataKeyNames="GPO,Cantidad,Total,Moneda" AutoGenerateColumns="False" EmptyDataText="No se encontraron registros con los filtros especificados" </ItemTemplate>
ToolTip="Listado de Ventas" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" GridLines="None"> </asp:TemplateField>
<Columns> <asp:TemplateField ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Right" HeaderText="Cantidad">
<asp:TemplateField HeaderText="Grupo"> <ItemTemplate>
<ItemTemplate> <asp:Label ID="LblCantidad" runat="server" Text='<%# Eval("Cantidad", "{0:N0}") %>'></asp:Label>
<asp:Label ID="LblGPO" runat="server" Text='<%# If(Eval("GPO").ToString = "", Eval("Moneda"), Eval("GPO")) %>'></asp:Label> </ItemTemplate>
</ItemTemplate> </asp:TemplateField>
</asp:TemplateField> <asp:TemplateField ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Right" HeaderText="Total">
<asp:TemplateField ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Right" HeaderText="Cantidad"> <ItemTemplate>
<ItemTemplate> <asp:Label ID="LblCantidad" Style="margin-right: 15px" runat="server" Text='<%# Eval("Total", "{0:N2}") %>'></asp:Label>
<asp:Label ID="LblCantidad" runat="server" Text='<%# Eval("Cantidad", "{0:N0}") %>'></asp:Label> </ItemTemplate>
</ItemTemplate> </asp:TemplateField>
</asp:TemplateField> </Columns>
<asp:TemplateField ItemStyle-Width="15%" ItemStyle-HorizontalAlign="Right" HeaderText="Total"> </asp:GridView>
<ItemTemplate> </ContentTemplate>
<asp:Label ID="LblCantidad" Style="margin-right: 15px" runat="server" Text='<%# Eval("Total", "{0:N2}") %>'></asp:Label> </asp:UpdatePanel>
</ItemTemplate> </div>
</asp:TemplateField> </div>
</Columns> <asp:UpdatePanel runat="server" ID="UpTipoCambio" UpdateMode="Conditional">
</asp:GridView> <ContentTemplate>
</ContentTemplate> <div id="DivTipoCambio" class="modal fade" role="dialog">
</asp:UpdatePanel> <div class="modal-dialog">
</div> <div class="modal-content">
<asp:UpdatePanel runat="server" ID="UpTipoCambio" UpdateMode="Conditional"> <div class="modal-header">
<ContentTemplate> <button type="button" class="close" data-dismiss="modal">&times;</button>
<div id="DivTipoCambio" class="modal fade" role="dialog"> <h4 class="modal-title">
<div class="modal-dialog"> <asp:Label ID="Label1" runat="server" ClientIDMode="Static" Text="Cambiar Tipo Cambio de Dólares"></asp:Label></h4>
<div class="modal-content"> </div>
<div class="modal-header"> <div class="modal-body">
<button type="button" class="close" data-dismiss="modal">&times;</button> <asp:UpdatePanel runat="server" ID="UpBodyTipoCambio" UpdateMode="Conditional">
<h4 class="modal-title"> <ContentTemplate>
<asp:Label ID="Label1" runat="server" ClientIDMode="Static" Text="Cambiar Tipo Cambio de Dólares"></asp:Label></h4> <asp:RadioButtonList runat="server" ID="RblTipoCambio" AutoPostBack="true">
</div> <asp:ListItem Selected="true" Text="Moneda Original" Value="1"></asp:ListItem>
<div class="modal-body"> <asp:ListItem Text="Dólares en Tipo Cambio de la Fecha Compra" Value="2"></asp:ListItem>
<asp:UpdatePanel runat="server" ID="UpBodyTipoCambio" UpdateMode="Conditional"> <asp:ListItem Text="Tipo Cambio Especifico" Value="3"></asp:ListItem>
<ContentTemplate> </asp:RadioButtonList>
<asp:RadioButtonList runat="server" ID="RblTipoCambio" AutoPostBack="true"> <div class="row" style="margin-left: 10px;" runat="server" id="LiEspecifico" visible="false">
<asp:ListItem Selected="true" Text="Moneda Original" Value="1"></asp:ListItem>
<asp:ListItem Text="Dólares en Tipo Cambio de la Fecha Compra" Value="2"></asp:ListItem>
<asp:ListItem Text="Tipo Cambio Especifico" Value="3"></asp:ListItem>
</asp:RadioButtonList>
<div class="row" style="margin-left: 10px;" runat="server" id="LiEspecifico" visible="false">
Especifico: Especifico:
<asp:TextBox ID="TxtEspecifico" runat="server" Width="55px" />
</div> <asp:TextBox ID="TxtEspecifico" runat="server" Width="55px" />
</ContentTemplate> </div>
</asp:UpdatePanel> </ContentTemplate>
</div> </asp:UpdatePanel>
<div class="modal-footer"> </div>
<asp:Button ID="BtnTipoCambio" runat="server" Text="Aceptar" class="btn btn-primary" /> <div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button> <asp:Button ID="BtnTipoCambio" runat="server" Text="Aceptar" class="btn btn-primary" />
</div> <button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>
</div> </div>
</div> </div>
</div> </div>
</ContentTemplate> </div>
</asp:UpdatePanel> </ContentTemplate>
<div id="DivModalGrafica" class="modal ADS fade" role="dialog"> </asp:UpdatePanel>
<asp:UpdatePanel class="modal-dialog modal-lg" runat="server" ID="UPModalProd" UpdateMode="Conditional"> <div id="DivModalGrafica" class="modal ADS fade" role="dialog">
<ContentTemplate> <asp:UpdatePanel class="modal-dialog modal-lg" runat="server" ID="UPModalProd" UpdateMode="Conditional">
<div class="modal-content"> <ContentTemplate>
<div class="modal-header"> <div class="modal-content">
<button type="button" class="close" data-dismiss="modal">&times;</button> <div class="modal-header">
<h4 class="modal-title"> <button type="button" class="close" data-dismiss="modal">&times;</button>
<asp:Label ID="LblTituloGrafica" runat="server" ClientIDMode="Static" Text=""></asp:Label> <h4 class="modal-title">
</h4> <asp:Label ID="LblTituloGrafica" runat="server" ClientIDMode="Static" Text=""></asp:Label>
</div> </h4>
<div class="modal-body"> </div>
<div class="row"> <div class="modal-body">
<div class="col-md-2"></div> <div class="row">
<label class="col-md-1 truncate">Grafica:</label> <div class="col-md-2"></div>
<div class="col-md-2"> <label class="col-md-1 truncate">Grafica:</label>
<asp:DropDownList ID="DdlGrafica" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DdlGrafica_SelectedIndexChanged" AppendDataBoundItems="true" Class="table-group-action-input form-control input-inline input-small input-sm select2me"> <div class="col-md-2">
<asp:ListItem Selected="True" Text="Barras" Value="1"></asp:ListItem> <asp:DropDownList ID="DdlGrafica" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DdlGrafica_SelectedIndexChanged" AppendDataBoundItems="true" Class="table-group-action-input form-control input-inline input-small input-sm select2me">
<asp:ListItem Text="Pastel" Value="2"></asp:ListItem> <asp:ListItem Selected="True" Text="Barras" Value="1"></asp:ListItem>
</asp:DropDownList> <asp:ListItem Text="Pastel" Value="2"></asp:ListItem>
</div> </asp:DropDownList>
<label class="col-md-1 truncate">&nbsp;&nbsp;&nbsp;Ver:</label> </div>
<div class="col-md-2"> <label class="col-md-1 truncate">&nbsp;&nbsp;&nbsp;Ver:</label>
<asp:DropDownList ID="DdlVer" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DdlVer_SelectedIndexChanged" AppendDataBoundItems="true" Class="table-group-action-input form-control input-inline input-small input-sm select2me"> <div class="col-md-2">
<asp:ListItem Selected="True" Text="Total" Value="1"></asp:ListItem> <asp:DropDownList ID="DdlVer" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DdlVer_SelectedIndexChanged" AppendDataBoundItems="true" Class="table-group-action-input form-control input-inline input-small input-sm select2me">
<asp:ListItem Text="Cantidad" Value="2"></asp:ListItem> <asp:ListItem Selected="True" Text="Total" Value="1"></asp:ListItem>
</asp:DropDownList> <asp:ListItem Text="Cantidad" Value="2"></asp:ListItem>
</div> </asp:DropDownList>
</div> </div>
<br /> </div>
<div id="chartdiv"></div> <br />
</div> <div id="chartdiv"></div>
<div class="modal-footer"> </div>
<button type="button" class="btn btn-danger" data-dismiss="modal">Cerrar</button> <div class="modal-footer">
</div> <button type="button" class="btn btn-danger" data-dismiss="modal">Cerrar</button>
</div> </div>
</ContentTemplate> </div>
</asp:UpdatePanel> </ContentTemplate>
</div> </asp:UpdatePanel>
</asp:Content> </div>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server"> </asp:Content>
<script src="https://www.amcharts.com/lib/3/amcharts.js"></script> <asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script src="https://www.amcharts.com/lib/3/serial.js"></script> <script src="https://www.amcharts.com/lib/3/amcharts.js"></script>
<script src="https://www.amcharts.com/lib/3/pie.js"></script> <script src="https://www.amcharts.com/lib/3/serial.js"></script>
<script src="https://www.amcharts.com/lib/3/plugins/export/export.min.js"></script> <script src="https://www.amcharts.com/lib/3/pie.js"></script>
<link rel="stylesheet" href="https://www.amcharts.com/lib/3/plugins/export/export.css" type="text/css" media="all" /> <script src="https://www.amcharts.com/lib/3/plugins/export/export.min.js"></script>
<script src="https://www.amcharts.com/lib/3/themes/light.js"></script> <link rel="stylesheet" href="https://www.amcharts.com/lib/3/plugins/export/export.css" type="text/css" media="all" />
<script src="https://www.amcharts.com/lib/3/themes/light.js"></script>
<script> <script>
function CargaGraficaBarras(data) { function CargaGraficaBarras(data) {
var chart = AmCharts.makeChart("chartdiv", { var chart = AmCharts.makeChart("chartdiv", {
"type": "serial", "type": "serial",
"theme": "light", "theme": "light",
"dataProvider": data, "dataProvider": data,
"startDuration": 2, "startDuration": 2,
"valueAxes": [{ "valueAxes": [{
"position": "left", "position": "left",
"title": "Ventas" "title": "Ventas"
}], }],
"graphs": [{ "graphs": [{
"balloonText": "[[category]]: <b>[[value]]</b> [[Moneda]]", "balloonText": "[[category]]: <b>[[value]]</b> [[Moneda]]",
"colorField": "Color", "colorField": "Color",
"fillAlphas": 1, "fillAlphas": 1,
"lineAlpha": 0.1, "lineAlpha": 0.1,
"type": "column", "type": "column",
"valueField": "Valor" "valueField": "Valor"
}], }],
"depth3D": 20, "depth3D": 20,
"angle": 30, "angle": 30,
"chartCursor": { "chartCursor": {
"categoryBalloonEnabled": false, "categoryBalloonEnabled": false,
"cursorAlpha": 0, "cursorAlpha": 0,
"zoomable": false "zoomable": false
}, },
"categoryField": "Texto", "categoryField": "Texto",
"categoryAxis": { "categoryAxis": {
"gridPosition": "start", "gridPosition": "start",
"labelRotation": 90 "labelRotation": 90
}, },
"export": { "export": {
"enabled": true "enabled": true
} }
}); });
} }
function CargaGraficaPastel(data) { function CargaGraficaPastel(data) {
var chart = AmCharts.makeChart("chartdiv", { var chart = AmCharts.makeChart("chartdiv", {
"type": "pie", "type": "pie",
"theme": "light", "theme": "light",
"dataProvider": "dataProvider":
@@ -335,12 +331,12 @@
"depth3D": 0, "depth3D": 0,
"balloonText": "[[title]]<br><span style='font-size:14px'><b>[[value]]</b> ([[percents]]% [[Moneda]])</span>", "balloonText": "[[title]]<br><span style='font-size:14px'><b>[[value]]</b> ([[percents]]% [[Moneda]])</span>",
"angle": 0, "angle": 0,
"export": { "export": {
"enabled": true "enabled": true
} }
}); });
} }
</script> </script>
</asp:Content> </asp:Content>

View File

@@ -59,16 +59,20 @@ Partial Class Compras_RepComprasAF
txtFechaI.Text = $"01/{Now.Month}/{Now.Year}" txtFechaI.Text = $"01/{Now.Month}/{Now.Year}"
DdlProveedores.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa) DdlProveedores.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa)
DdlProveedores.DataBind() DdlProveedores.DataBind()
DdlProveedores.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlMonedas.DataSource = GlobalDTMonedas() DdlMonedas.DataSource = GlobalDTMonedas()
DdlMonedas.DataBind() DdlMonedas.DataBind()
DdlMonedas.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlTipoActivoFijo.DataSource = GlobalDTTipoActivoFijo(UsuarioActual.CveEmpresa).FiltraParametros("", "TipoActivoFijo") DdlTipoActivoFijo.DataSource = GlobalDTTipoActivoFijo(UsuarioActual.CveEmpresa).FiltraParametros("", "TipoActivoFijo")
DdlTipoActivoFijo.DataBind() DdlTipoActivoFijo.DataBind()
DdlTipoActivoFijo.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltraParametros(" Codigo = '' OR Codigo IS NULL ", Orderby:="Clasificacion") DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltraParametros(" Codigo = '' OR Codigo IS NULL ", Orderby:="Clasificacion")
DdlClasificacion.DataBind() DdlClasificacion.DataBind()
DdlClasificacion.Items.Insert(0, New ListItem("Seleccione", "-1"))
Dim ObjClasificacion As New ClsClasificaciones Dim ObjClasificacion As New ClsClasificaciones
@@ -81,9 +85,11 @@ Partial Class Compras_RepComprasAF
ObjClasificacion.Dispose() ObjClasificacion.Dispose()
DdlClasificacion2.DataBind() DdlClasificacion2.DataBind()
DdlClasificacion2.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlActivoFijo.DataSource = GlobalDTActivoFijos(UsuarioActual.CveEmpresa) DdlActivoFijo.DataSource = GlobalDTActivoFijos(UsuarioActual.CveEmpresa)
DdlActivoFijo.DataBind() DdlActivoFijo.DataBind()
DdlActivoFijo.Items.Insert(0, New ListItem("Seleccione", "-1"))
CargarCentrosDeCosto(DdlProyecto, DdlSubProyecto, LblProyecto, LblSubProyecto, divProyecto:=DivProyecto) CargarCentrosDeCosto(DdlProyecto, DdlSubProyecto, LblProyecto, LblSubProyecto, divProyecto:=DivProyecto)

View File

@@ -181,11 +181,9 @@ Partial Class Compras_RepNotasCredito
If difFluctuacion < 0 Then If difFluctuacion < 0 Then
CveConceptoFluctua = 65 CveConceptoFluctua = 65
TipoMovtoFluctua = False TipoMovtoFluctua = False
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
Else Else
CveConceptoFluctua = 64 CveConceptoFluctua = 64
TipoMovtoFluctua = True TipoMovtoFluctua = True
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
End If End If
Dim ImporteFluctuacion As Decimal = Math.Abs((Importe * difFluctuacion).RoundSQL) Dim ImporteFluctuacion As Decimal = Math.Abs((Importe * difFluctuacion).RoundSQL)

View File

@@ -93,9 +93,9 @@ Partial Class Contabilidad_CatClasificacionPorcentaje
DdlIdCtaIVAXTrasladar.SelectedValue, DdlIdCtaIVATrasladado.SelectedValue, UsuarioActual.CveEmpresa) Then DdlIdCtaIVAXTrasladar.SelectedValue, DdlIdCtaIVATrasladado.SelectedValue, UsuarioActual.CveEmpresa) Then
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarTiposD")) RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarTiposD"))
Alert("Clasificación porcentaje agregado correctamente") Alert("Clasificación porcentaje agregado correctamente")
If ObjGenerales.GetClasificacionPorcentaje(-1) Then 'If ObjGenerales.GetClasificacionPorcentaje(-1) Then
GlobalDTClasificacionPorcentaje(-1) = ObjGenerales.DtResultados ' GlobalDTClasificacionPorcentaje(-1) = ObjGenerales.DtResultados
End If 'End If
CargaDatos() CargaDatos()
CargaContPaq() CargaContPaq()
UpDatos.Update() UpDatos.Update()
@@ -105,9 +105,9 @@ Partial Class Contabilidad_CatClasificacionPorcentaje
DdlIdCtaIVAAcreditable.SelectedValue, DdlIdCtaIVAXTrasladar.SelectedValue, DdlIdCtaIVATrasladado.SelectedValue) Then DdlIdCtaIVAAcreditable.SelectedValue, DdlIdCtaIVAXTrasladar.SelectedValue, DdlIdCtaIVATrasladado.SelectedValue) Then
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarTiposD")) RegistraScript(String.Format("$('#{0}').modal('hide');", "DivAgregarTiposD"))
Alert("Clasificación porcentaje actualizado correctamente") Alert("Clasificación porcentaje actualizado correctamente")
If ObjGenerales.GetClasificacionPorcentaje(-1) Then 'If ObjGenerales.GetClasificacionPorcentaje(-1) Then
GlobalDTClasificacionPorcentaje(-1) = ObjGenerales.DtResultados ' GlobalDTClasificacionPorcentaje(-1) = ObjGenerales.DtResultados
End If 'End If
CargaDatos() CargaDatos()
CargaContPaq() CargaContPaq()
UpDatos.Update() UpDatos.Update()
@@ -120,9 +120,9 @@ Partial Class Contabilidad_CatClasificacionPorcentaje
Dim objgenerales As New ClsGenerales Dim objgenerales As New ClsGenerales
If objgenerales.RemoveClasificacionPorcentaje(GvDatos.DataKeys(e.RowIndex).Value.ToString) Then If objgenerales.RemoveClasificacionPorcentaje(GvDatos.DataKeys(e.RowIndex).Value.ToString) Then
Alert("la clasificación porcentaje se eliminó correctamente") Alert("la clasificación porcentaje se eliminó correctamente")
If objgenerales.GetClasificacionPorcentaje(-1) Then 'If objgenerales.GetClasificacionPorcentaje(-1) Then
GlobalDTClasificacionPorcentaje(-1) = objgenerales.DtResultados ' GlobalDTClasificacionPorcentaje(-1) = objgenerales.DtResultados
End If 'End If
CargaDatos() CargaDatos()
CargaContPaq() CargaContPaq()
UpDatos.Update() UpDatos.Update()

View File

@@ -1,29 +0,0 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="DIOTChilo.aspx.vb" Inherits="Contabilidad_DIOTChilo" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
</asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
</asp:Content>
<asp:Content ID="Content6" ContentPlaceHolderID="HA" runat="Server">
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<div class="row">
<div class="col-md-3">
<asp:TextBox ID="TxtPoliza" runat="server" Width="50%" CssClass="form-control"></asp:TextBox>
<asp:Button ID="BtnContabilizar" runat="server" CssClass="form-control btn btn-primary" Text="Fierro Compa!" Width="50%" />
</div>
</div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
</asp:Content>

View File

@@ -1,121 +0,0 @@
Imports System.Data
Imports Extensiones
Partial Class Contabilidad_DIOTChilo
Inherits Page
Private Sub Contabilidad_DIOTChilo_Load(sender As Object, e As EventArgs) Handles Me.Load
End Sub
Private Sub BtnContabilizar_Click(sender As Object, e As EventArgs) Handles BtnContabilizar.Click
Dim ObjContabilidad As New ClsContabilidad
Dim ObjConta As ClsContPAQi = Nothing
Dim ObjEmpres As New Empresa()
ObjEmpres.Empresa = "EXPLORACIONES MINERAS DEL DESIERTO S.A DE C.V"
ObjEmpres.ServerContPAQi = "192.168.0.2\COMPAC,1430"
ObjEmpres.BDContPAQi = "ctEMD"
ObjEmpres.UsrContPAQi = "sa"
ObjEmpres.PwdContPAQi = "AsS151026r37"
Dim OcurrioError = False
Dim Mensaje = ""
If ObjConta Is Nothing Then
ObjConta = New ClsContPAQi(ObjEmpres)
ObjConta.IniciaTransacSQL()
End If
Dim tIdPoliza As Integer
Dim Fecha As Date
Dim ContaFolio As Integer
If ObjContabilidad.GetPrePoliza(TxtPoliza.Text.ToEntero, 13) Then
tIdPoliza = ObjContabilidad.DtResultados(0)("IdPoliza").ToString.ToEntero
Fecha = ObjContabilidad.DtResultados(0)("Fecha").ToString.ToDate
ContaFolio = ObjContabilidad.DtResultados(0)("FolioPoliza").ToString.ToEntero
End If
If ObjContabilidad.GetDIOTValores(TxtPoliza.Text.ToEntero) Then
If ObjContabilidad.DtResultados.Rows.Count.ToEntero > 0 Then
Dim IdProveedor As Integer
Dim RFC As String = ""
Dim RazonSocial As String = ""
Dim IdCtaContProveedores As Integer
For Each dr As DataRow In ObjContabilidad.DtResultados.Rows
RFC = dr("RFC").ToString
RazonSocial = dr("RazonSocial").ToString
IdCtaContProveedores = dr("IdCtaContProveedores").ToString.ToEntero
If IdCtaContProveedores > 0 Then
'busco la clave del proveedor en la contabilidad por su cuenta contable
If ObjConta.GetProveedores(IdCuentaContable:=IdCtaContProveedores) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
Dim drt As DataRow = ObjConta.DtResultados.Rows(0) : IdProveedor = drt("Id").ToString.ToEntero
End If
End If
Else
'busco la clave del proveedor en la contabilidad por su cuenta contable
If ObjConta.GetProveedores(RFC:=RFC) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
Dim drtt As DataRow = ObjConta.DtResultados.Rows(0) : IdProveedor = drtt("Id").ToString.ToEntero
End If
Else
'registro el proveedor generico
Select Case 13
Case Else : IdProveedor = 0
End Select
End If
End If
If IdProveedor <= 0 Then
IdProveedor = ObjConta.AddProveedor(IdCtaContProveedores, RFC, RazonSocial, "")
If IdProveedor <= 0 Then
OcurrioError = True
End If
End If
If Not OcurrioError Then
If dr("Total").ToString.ToDecimal <> 0.00 Then
If Not ObjConta.AddDevolucionesIVA(tIdPoliza, dr("CuentaBancos").ToString.ToEntero,
IdProveedor,
16,
dr("SubTotal").ToString.ToDecimal,
dr("IvaAcreditable").ToString.ToDecimal,
dr("IVARetenido").ToString.ToDecimal,
dr("ISRRetenido").ToString.ToDecimal,
Fecha,
ContaFolio,
dr("Serie").ToString.ToString,
dr("Folio").ToString.StrToNum, dr("FolioFiscal").ToString, 13) Then
OcurrioError = True
Mensaje = "La Poliza o la Cuenta no son válidas"
Exit For
End If
End If
End If
Next
If OcurrioError Then
ObjConta.RollBack()
Else
'Alert(String.Format("<a href='/Contabilidad/RegPoliza.aspx?IdPoliza={0}' class='Texto' target='_blank'>{1}</a><br/>", tIdPoliza, ObjConta.Folio))
ObjConta.Commit()
End If
End If
End If
End Sub
End Class

View File

@@ -810,9 +810,9 @@ Partial Class Contabilidad_DiarioAmortizaciones
FluctuacionCambiariaIVA = Math.Round((IVAAcreditable * TipoCambioFechaCompra) - (IVAAcreditable * TipoCambioPago), 2) 'FLUCTUACION CAMBIARIA DE IVA FluctuacionCambiariaIVA = Math.Round((IVAAcreditable * TipoCambioFechaCompra) - (IVAAcreditable * TipoCambioPago), 2) 'FLUCTUACION CAMBIARIA DE IVA
If FluctuacionCambiariaIVA < 0 Then If FluctuacionCambiariaIVA < 0 Then
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaGananciaCambiaria : tempMovto = True ' ganancia cambiaria tempMovto = True ' ganancia cambiaria
Else Else
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria : tempMovto = False ' perdida cambiaria tempMovto = False ' perdida cambiaria
End If End If
If Math.Abs(FluctuacionCambiariaIVA) <> 0 Then If Math.Abs(FluctuacionCambiariaIVA) <> 0 Then
If Not Conta.AddMovimiento(IDPoliza, CtaFluctuacion, tempMovto, Math.Abs(FluctuacionCambiariaIVA), gvrc.FCHiddenField("HdnSerieFolio").Value, "Fluctuacion IVA " & ConceptoDetalle, 0, Fecha, gvr.DataKey("CveProveedor").ContaReferencia(TipoContaReferencia.Proveedor), 0) Then MsgError = "No se pudo insertar movimiento contable" : Exit For ' no lleva moneda extranjera If Not Conta.AddMovimiento(IDPoliza, CtaFluctuacion, tempMovto, Math.Abs(FluctuacionCambiariaIVA), gvrc.FCHiddenField("HdnSerieFolio").Value, "Fluctuacion IVA " & ConceptoDetalle, 0, Fecha, gvr.DataKey("CveProveedor").ContaReferencia(TipoContaReferencia.Proveedor), 0) Then MsgError = "No se pudo insertar movimiento contable" : Exit For ' no lleva moneda extranjera
@@ -823,9 +823,9 @@ Partial Class Contabilidad_DiarioAmortizaciones
If Dif < 0 Then If Dif < 0 Then
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaGananciaCambiaria : tempMovto = True ' ganancia cambiaria tempMovto = True ' ganancia cambiaria
Else Else
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria : tempMovto = False ' perdida cambiaria tempMovto = False ' perdida cambiaria
End If End If
ConceptoDetalle = String.Format("{0} TC:{1} ${2}", gvr.FCTextBox("TxtDescripcion").Text, TipoCambioPago, Math.Abs(Dif).FormatoNumero) ConceptoDetalle = String.Format("{0} TC:{1} ${2}", gvr.FCTextBox("TxtDescripcion").Text, TipoCambioPago, Math.Abs(Dif).FormatoNumero)
@@ -858,9 +858,9 @@ Partial Class Contabilidad_DiarioAmortizaciones
FluctuacionCambiariaIVA = Math.Round((IVAAcreditable * TipoCambioFechaCompra) - (IVAAcreditable * TipoCambioPago), 2) 'FLUCTUACION CAMBIARIA DE IVA FluctuacionCambiariaIVA = Math.Round((IVAAcreditable * TipoCambioFechaCompra) - (IVAAcreditable * TipoCambioPago), 2) 'FLUCTUACION CAMBIARIA DE IVA
If FluctuacionCambiariaIVA < 0 Then If FluctuacionCambiariaIVA < 0 Then
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaGananciaCambiaria : tempMovto = True ' ganancia cambiaria tempMovto = True ' ganancia cambiaria
Else Else
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria : tempMovto = False ' perdida cambiaria tempMovto = False ' perdida cambiaria
End If End If
If Math.Abs(FluctuacionCambiariaIVA) <> 0 Then If Math.Abs(FluctuacionCambiariaIVA) <> 0 Then
If Not Conta.AddMovimiento(IDPoliza, CtaFluctuacion, tempMovto, Math.Abs(FluctuacionCambiariaIVA), gvrc.FCHiddenField("HdnSerieFolio").Value, "Fluctuacion IVA " & ConceptoDetalle, 0, Fecha, gvr.DataKey("CveProveedor").ContaReferencia(TipoContaReferencia.Proveedor), 0) Then MsgError = "No se pudo insertar movimiento contable" : Exit For ' no lleva moneda extranjera If Not Conta.AddMovimiento(IDPoliza, CtaFluctuacion, tempMovto, Math.Abs(FluctuacionCambiariaIVA), gvrc.FCHiddenField("HdnSerieFolio").Value, "Fluctuacion IVA " & ConceptoDetalle, 0, Fecha, gvr.DataKey("CveProveedor").ContaReferencia(TipoContaReferencia.Proveedor), 0) Then MsgError = "No se pudo insertar movimiento contable" : Exit For ' no lleva moneda extranjera
@@ -871,9 +871,9 @@ Partial Class Contabilidad_DiarioAmortizaciones
If Dif < 0 Then If Dif < 0 Then
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaGananciaCambiaria : tempMovto = True ' ganancia cambiaria tempMovto = True ' ganancia cambiaria
Else Else
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria : tempMovto = False ' perdida cambiaria tempMovto = False ' perdida cambiaria
End If End If
ConceptoDetalle = String.Format("{0} TC:{1} ${2}", gvr.FCTextBox("TxtDescripcion").Text, TipoCambioPago, Math.Abs(Dif).FormatoNumero) ConceptoDetalle = String.Format("{0} TC:{1} ${2}", gvr.FCTextBox("TxtDescripcion").Text, TipoCambioPago, Math.Abs(Dif).FormatoNumero)
@@ -1123,7 +1123,7 @@ Partial Class Contabilidad_DiarioAmortizaciones
IVAxAcreditar = IVAAcreditable IVAxAcreditar = IVAAcreditable
IVAAcreditable = 0 IVAAcreditable = 0
If UsuarioActual.Empresa.ContaContabilizacionNC = 1 Then If 1 = 1 Then
TipoCambioCompra = TipoCambioCompra * -1 'cuando el movimiento de las nc, sea <> cero, quiero decir que solo convertimos a negativos los valores TipoCambioCompra = TipoCambioCompra * -1 'cuando el movimiento de las nc, sea <> cero, quiero decir que solo convertimos a negativos los valores
TipoCambioPago = TipoCambioPago * -1 TipoCambioPago = TipoCambioPago * -1
TipoCambioFechaCompra = TipoCambioFechaCompra * -1 TipoCambioFechaCompra = TipoCambioFechaCompra * -1
@@ -1301,9 +1301,9 @@ Partial Class Contabilidad_DiarioAmortizaciones
If UsuarioActual.CveEmpresa = 66 Then If UsuarioActual.CveEmpresa = 66 Then
FluctuacionCambiariaIVA = Math.Round((IVAAcreditable * TipoCambioFechaCompra) - (IVAAcreditable * TipoCambioPago), 2) 'FLUCTUACION CAMBIARIA DE IVA FluctuacionCambiariaIVA = Math.Round((IVAAcreditable * TipoCambioFechaCompra) - (IVAAcreditable * TipoCambioPago), 2) 'FLUCTUACION CAMBIARIA DE IVA
If FluctuacionCambiariaIVA < 0 Then If FluctuacionCambiariaIVA < 0 Then
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaGananciaCambiaria : tempMovto = True ' ganancia cambiaria tempMovto = True ' ganancia cambiaria
Else Else
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria : tempMovto = False ' perdida cambiaria tempMovto = False ' perdida cambiaria
End If End If
If Math.Abs(FluctuacionCambiariaIVA) <> 0 Then If Math.Abs(FluctuacionCambiariaIVA) <> 0 Then
If Not Conta.AddMovimiento(IDPoliza, CtaFluctuacion, tempMovto, Math.Abs(FluctuacionCambiariaIVA), gvrc.FCHiddenField("HdnSerieFolio").Value, "Fluctuación IVA " & ConceptoDetalle, 0, Fecha, gvr.DataKey("CveProveedor").ContaReferencia(TipoContaReferencia.Proveedor), 0) Then MsgError = "No se pudo insertar movimiento contable" : Exit For ' no lleva moneda extranjera If Not Conta.AddMovimiento(IDPoliza, CtaFluctuacion, tempMovto, Math.Abs(FluctuacionCambiariaIVA), gvrc.FCHiddenField("HdnSerieFolio").Value, "Fluctuación IVA " & ConceptoDetalle, 0, Fecha, gvr.DataKey("CveProveedor").ContaReferencia(TipoContaReferencia.Proveedor), 0) Then MsgError = "No se pudo insertar movimiento contable" : Exit For ' no lleva moneda extranjera
@@ -1320,9 +1320,9 @@ Partial Class Contabilidad_DiarioAmortizaciones
If Dif < 0 Then If Dif < 0 Then
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaGananciaCambiaria : tempMovto = True ' ganancia cambiaria tempMovto = True ' ganancia cambiaria
Else Else
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria : tempMovto = False ' perdida cambiaria tempMovto = False ' perdida cambiaria
End If End If
ConceptoDetalle = String.Format("{0} TC:{1} ${2}", gvr.FCTextBox("TxtDescripcion").Text, TipoCambioPago, Math.Abs(Dif).FormatoNumero) ConceptoDetalle = String.Format("{0} TC:{1} ${2}", gvr.FCTextBox("TxtDescripcion").Text, TipoCambioPago, Math.Abs(Dif).FormatoNumero)

View File

@@ -344,7 +344,7 @@ Partial Class Contabilidad_DiarioCompras
If gvr.DataKey("TipoDocto") = "NC" Then If gvr.DataKey("TipoDocto") = "NC" Then
If UsuarioActual.Empresa.ContaContabilizacionNC <> 0 Then If 1 <> 0 Then
'cuando el movimiento de las nc, sea <> cero, quiero decir que solo convertimos a negativos los valores 'cuando el movimiento de las nc, sea <> cero, quiero decir que solo convertimos a negativos los valores
MultNC = -1 MultNC = -1
Else Else

View File

@@ -697,7 +697,7 @@ Partial Class Contabilidad_DiarioPagos
If gvrc.FCHiddenField("HdnTipoDocto").Value = "NC" Then If gvrc.FCHiddenField("HdnTipoDocto").Value = "NC" Then
If UsuarioActual.Empresa.ContaContabilizacionNC = 1 Then If 1 = 1 Then
TipoCambioCompra = TipoCambioCompra * -1 'cuando el movimiento de las nc, sea <> cero, quiero decir que solo convertimos a negativos los valores TipoCambioCompra = TipoCambioCompra * -1 'cuando el movimiento de las nc, sea <> cero, quiero decir que solo convertimos a negativos los valores
TipoCambioPago = TipoCambioPago * -1 TipoCambioPago = TipoCambioPago * -1
TipoCambioFechaCompra = TipoCambioFechaCompra * -1 TipoCambioFechaCompra = TipoCambioFechaCompra * -1
@@ -1054,9 +1054,9 @@ Partial Class Contabilidad_DiarioPagos
If UsuarioActual.CveEmpresa = 66 Then If UsuarioActual.CveEmpresa = 66 Then
FluctuacionCambiariaIVA = Math.Round((IVAAcreditable * TipoCambioFechaCompra) - (IVAAcreditable * TipoCambioPago), 2) 'FLUCTUACION CAMBIARIA DE IVA FluctuacionCambiariaIVA = Math.Round((IVAAcreditable * TipoCambioFechaCompra) - (IVAAcreditable * TipoCambioPago), 2) 'FLUCTUACION CAMBIARIA DE IVA
If FluctuacionCambiariaIVA < 0 Then If FluctuacionCambiariaIVA < 0 Then
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaGananciaCambiaria : tempMovto = True ' ganancia cambiaria tempMovto = True ' ganancia cambiaria
Else Else
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria : tempMovto = False ' perdida cambiaria tempMovto = False ' perdida cambiaria
End If End If
If Math.Abs(FluctuacionCambiariaIVA) <> 0 Then If Math.Abs(FluctuacionCambiariaIVA) <> 0 Then
If Not Conta.AddMovimiento(IDPoliza, CtaFluctuacion, tempMovto, Math.Abs(FluctuacionCambiariaIVA), gvrc.FCHiddenField("HdnSerieFolio").Value, "Fluctuación IVA " & ConceptoDetalle, IdSegNeg, Fecha, gvr.DataKey("CveProveedor").ContaReferencia(TipoContaReferencia.Proveedor), 0) Then MsgError = "No se pudo insertar movimiento contable" : Exit For ' no lleva moneda extranjera If Not Conta.AddMovimiento(IDPoliza, CtaFluctuacion, tempMovto, Math.Abs(FluctuacionCambiariaIVA), gvrc.FCHiddenField("HdnSerieFolio").Value, "Fluctuación IVA " & ConceptoDetalle, IdSegNeg, Fecha, gvr.DataKey("CveProveedor").ContaReferencia(TipoContaReferencia.Proveedor), 0) Then MsgError = "No se pudo insertar movimiento contable" : Exit For ' no lleva moneda extranjera
@@ -1073,9 +1073,9 @@ Partial Class Contabilidad_DiarioPagos
If Dif < 0 Then If Dif < 0 Then
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaGananciaCambiaria : tempMovto = True ' ganancia cambiaria tempMovto = True ' ganancia cambiaria
Else Else
CtaFluctuacion = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria : tempMovto = False ' perdida cambiaria tempMovto = False ' perdida cambiaria
End If End If
ConceptoDetalle = String.Format("{0} TC:{1} ${2}", gvr.FCTextBox("TxtDescripcion").Text, TipoCambioPago, Math.Abs(Dif).FormatoNumero) ConceptoDetalle = String.Format("{0} TC:{1} ${2}", gvr.FCTextBox("TxtDescripcion").Text, TipoCambioPago, Math.Abs(Dif).FormatoNumero)

View File

@@ -479,7 +479,7 @@ Partial Class ContabilidadC_RegPrePolizaS
ObjContabilidad.GetContabilizacionDiarioDetalle(CvePrePoliza) ObjContabilidad.GetContabilizacionDiarioDetalle(CvePrePoliza)
DtMovimientos = ObjContabilidad.DtResultados.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa}") DtMovimientos = ObjContabilidad.DtResultados.FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa}")
If dr("Modulo").ToString.Contiene("Banc/FluctuaA", "Banc/FluctuaC", "Banc/FluctuaV", "Banc/FluctuaFilial") Then If dr("Modulo").ToString.Contiene("Banc/FluctuaA", "Banc/FluctuaC", "Banc/FluctuaV", "Banc/FluctuaFilial", "Banc/FluctuaAD") Then
BtnEliminar.Enabled = False BtnEliminar.Enabled = False
BtnEliminar.ToolTip = "No se puede eliminar al prepóliza, eliminarlos desde el módulo" BtnEliminar.ToolTip = "No se puede eliminar al prepóliza, eliminarlos desde el módulo"
End If End If
@@ -1382,7 +1382,7 @@ Partial Class ContabilidadC_RegPrePolizaS
If CveCliente > 0 Then If CveCliente > 0 Then
DvModalconceptoCliente.Visible = True DvModalconceptoCliente.Visible = True
DdlClientesE.SelectedText = GlobalDTCliente(UsuarioActual.CveEmpresa, CveCliente:=CveCliente).FiltroPrimeroValor("NombreComercial", "") 'DdlClientesE.SelectedText = GlobalDTCliente(UsuarioActual.CveEmpresa, CveCliente:=CveCliente).FiltroPrimeroValor("NombreComercial", "")
DdlClientesE.ddl.Items.Insert(0, New ListItem(GlobalDTCliente(UsuarioActual.CveEmpresa, CveCliente:=CveCliente).FiltroPrimeroValor("NombreComercial", ""), CveCliente)) DdlClientesE.ddl.Items.Insert(0, New ListItem(GlobalDTCliente(UsuarioActual.CveEmpresa, CveCliente:=CveCliente).FiltroPrimeroValor("NombreComercial", ""), CveCliente))
DdlClientesE.SelectedValue = CveCliente DdlClientesE.SelectedValue = CveCliente

View File

@@ -74,19 +74,6 @@ Partial Class RepCuadreContaAdmon
Case 8 'Ant Proveedores Case 8 'Ant Proveedores
Return 204 Return 204
Case 9 'IVA x Acreditar
Return UsuarioActual.Empresa.IdCuentaIVAxAcreditar
Case 10 'IVA Acreditado
Return UsuarioActual.Empresa.IdCuentaIVAAcreditable
Case 11 'IVA x Trasladar
Return UsuarioActual.Empresa.IdCuentaIVAxTrasladar
Case 12 'IVA Trasladado
Return UsuarioActual.Empresa.IdCuentaIVATrasladado
Case 13 'Ingresos Case 13 'Ingresos
Return 222 Return 222

View File

@@ -83,18 +83,6 @@ Partial Class RepCuadreContaAdmonDetalle
Case 8 'Ant Proveedores Case 8 'Ant Proveedores
Return 204 Return 204
Case 9 'IVA x Acreditar
Return UsuarioActual.Empresa.IdCuentaIVAxAcreditar
Case 10 'IVA Acreditado
Return UsuarioActual.Empresa.IdCuentaIVAAcreditable
Case 11 'IVA x Trasladar
Return UsuarioActual.Empresa.IdCuentaIVAxTrasladar
Case 12 'IVA Trasladado
Return UsuarioActual.Empresa.IdCuentaIVATrasladado
Case 13 'Ingresos Case 13 'Ingresos
Return 222 Return 222

View File

@@ -105,7 +105,8 @@
<asp:BoundField DataField="ConceptoContable" ItemStyle-Width="250px" HeaderText="Concepto Contable" /> <asp:BoundField DataField="ConceptoContable" ItemStyle-Width="250px" HeaderText="Concepto Contable" />
<asp:BoundField DataField="TipoGlobalStr" ItemStyle-Width="50px" HeaderText="Tipo Global" /> <asp:BoundField DataField="TipoGlobalStr" ItemStyle-Width="50px" HeaderText="Tipo Global" />
<asp:BoundField DataField="CuentaCodigo" ItemStyle-Width="100px" HeaderText="Código Cuenta" /> <asp:BoundField DataField="CuentaCodigo" ItemStyle-Width="100px" HeaderText="Código Cuenta" />
<asp:BoundField DataField="CuentaNombre" HeaderText="Nombre Cuenta" /> <asp:BoundField DataField="CuentaNombre" HeaderText="Nombre Cuenta" />
<asp:BoundField DataField="PorcentajeImpuesto" HeaderText="%" />
<asp:TemplateField ItemStyle-Width="49px"> <asp:TemplateField ItemStyle-Width="49px">
<ItemTemplate> <ItemTemplate>

View File

@@ -1,318 +1,342 @@
<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="Presupuestos.aspx.vb" Inherits="Contratos_Presupuestos" %> <%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="Presupuestos.aspx.vb" Inherits="Contratos_Presupuestos" %>
<asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server"> <asp:Content ID="Content1" ContentPlaceHolderID="CP" runat="Server">
</asp:Content> </asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server"> <asp:Content ID="Content2" ContentPlaceHolderID="Css" runat="Server">
<style> <style>
.dashboard-stat2 .display .number h3 { .dashboard-stat2 .display .number h3 {
font-size: 16px; font-size: 16px;
} }
</style> </style>
</asp:Content> </asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server"> <asp:Content ID="Content3" ContentPlaceHolderID="E" runat="Server">
Presupuestos Presupuestos
</asp:Content> </asp:Content>
<asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server"> <asp:Content ID="Content4" ContentPlaceHolderID="HB" runat="Server">
</asp:Content> </asp:Content>
<asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server"> <asp:Content ID="Content5" ContentPlaceHolderID="H" runat="Server">
<asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional"> <asp:UpdatePanel ID="UpAcciones" runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<li> <li>
<asp:LinkButton ID="LnkAutorizar" runat="server" data-toggle="confirmation" data-popout="true" data-original-title="¿Desea autorizar el presupuesto?" data-btn-ok-label="si"><i class="fa fa-check"></i> Autorizar</asp:LinkButton> <asp:LinkButton ID="LnkAutorizar" runat="server" data-toggle="confirmation" data-popout="true" data-original-title="¿Desea autorizar el presupuesto?" data-btn-ok-label="si"><i class="fa fa-check"></i> Autorizar</asp:LinkButton>
</li> </li>
<li> <li>
<asp:LinkButton ID="LnkCargaPresupuesto" OnClick="LnkCargaPresupuesto_Click" runat="server"><i class="fa fa-upload"></i>Cargar Presupuesto</asp:LinkButton> <asp:LinkButton ID="LnkCargaPresupuesto" OnClick="LnkCargaPresupuesto_Click" runat="server"><i class="fa fa-upload"></i>Cargar Presupuesto</asp:LinkButton>
</li> </li>
<li> <li>
<asp:HyperLink ID="HlModificar" Target="_blank" Visible="false" runat="server"><i class="fa fa-edit"></i> Modificar Presupuesto</asp:HyperLink> <asp:HyperLink ID="HlModificar" Target="_blank" Visible="false" runat="server"><i class="fa fa-edit"></i> Modificar Presupuesto</asp:HyperLink>
</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">
</asp:Content> </asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server"> <asp:Content ID="Content7" ContentPlaceHolderID="C" runat="Server">
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-4">
<div class="portlet light smmallpadding bordered"> <div class="portlet light smmallpadding bordered">
<div class="portlet-title"> <div class="portlet-title">
<div class="caption"> <div class="caption">
<i class="fa fa-info-circle"></i>Datos Generales <i class="fa fa-info-circle"></i>Datos Generales
</div>
<div class="tools"> </div>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a> <div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a> <a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div> <a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div> </div>
<div class="portlet-body"> </div>
<asp:UpdatePanel ID="UpDatosG" runat="server" UpdateMode="Conditional"> <div class="portlet-body">
<ContentTemplate> <asp:UpdatePanel ID="UpDatosG" runat="server" UpdateMode="Conditional">
<div class="rowpadding"> <ContentTemplate>
<div class="row"> <div class="rowpadding">
<label class="col-md-2 truncate">Nombre:</label> <div class="row">
<div class="col-md-10"> <label class="col-md-2 truncate">Nombre:</label>
<asp:TextBox ID="TxtPresupuesto" runat="server" CssClass="form-control input-sm"></asp:TextBox> <div class="col-md-10">
<asp:RequiredFieldValidator ID="RFVPresupuesto" runat="server" ControlToValidate="TxtPresupuesto" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator> <asp:TextBox ID="TxtPresupuesto" runat="server" CssClass="form-control input-sm"></asp:TextBox>
<ajax:ValidatorCalloutExtender ID="VCEPresupuesto" runat="server" HighlightCssClass="vco" TargetControlID="RFVPresupuesto"></ajax:ValidatorCalloutExtender> <asp:RequiredFieldValidator ID="RFVPresupuesto" runat="server" ControlToValidate="TxtPresupuesto" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
</div> <ajax:ValidatorCalloutExtender ID="VCEPresupuesto" runat="server" HighlightCssClass="vco" TargetControlID="RFVPresupuesto"></ajax:ValidatorCalloutExtender>
</div> </div>
<div class="row"> </div>
<label class="col-md-2 truncate">Observaciones:</label> <div class="row">
<div class="col-md-10"> <label class="col-md-2 truncate">Observaciones:</label>
<asp:TextBox ID="TxtDescripcion" runat="server" CssClass="form-control" TextMode="MultiLine"></asp:TextBox> <div class="col-md-10">
<asp:RequiredFieldValidator ID="RFVObservacion" runat="server" ControlToValidate="TxtDescripcion" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Observación''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator> <asp:TextBox ID="TxtDescripcion" runat="server" CssClass="form-control" TextMode="MultiLine"></asp:TextBox>
<ajax:ValidatorCalloutExtender ID="VCEObs" runat="server" HighlightCssClass="vco" TargetControlID="RFVObservacion"></ajax:ValidatorCalloutExtender> <asp:RequiredFieldValidator ID="RFVObservacion" runat="server" ControlToValidate="TxtDescripcion" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Observación''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
</div> <ajax:ValidatorCalloutExtender ID="VCEObs" runat="server" HighlightCssClass="vco" TargetControlID="RFVObservacion"></ajax:ValidatorCalloutExtender>
</div> </div>
<div class="row"> </div>
<label class="col-md-2 truncate">Proyecto:</label> </div>
<div class="col-md-10"> </ContentTemplate>
<asp:DropDownList ID="DdlProyecto" runat="server" AutoPostBack="true" CssClass="form-control input-sm select2me" DataTextField="Proyecto" DataValueField="CveProyecto"></asp:DropDownList> </asp:UpdatePanel>
<asp:CompareValidator ID="CVProyecto" runat="server" ControlToValidate="DdlProyecto" ValueToCompare="0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />Debe seleccionar un <b>''Proyecto''</b>, por favor seleccione uno." Operator="GreaterThan" Type="Integer" ValidationGroup="GrpGuardar"></asp:CompareValidator> </div>
<ajax:ValidatorCalloutExtender ID="VCEProyecto" runat="server" HighlightCssClass="vco" TargetControlID="CVProyecto"></ajax:ValidatorCalloutExtender> </div>
</div> </div>
</div> <div class="col-md-4">
<div class="row"> <div class="portlet light smmallpadding bordered">
<label class="col-md-2 truncate">Sub Proyecto:</label> <div class="portlet-title">
<div class="col-md-10"> <div class="caption">
<asp:DropDownList ID="DdlSubProyecto" runat="server" CssClass="form-control input-sm select2me" DataTextField="SubProyecto2" DataValueField="CveSubProyecto"></asp:DropDownList> <i class="fa fa-info-circle"></i>Configuración
<asp:CompareValidator ID="CVSubProyeco" runat="server" ControlToValidate="DdlSubProyecto" ValueToCompare="0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />Debe seleccionar un <b>''Proyecto''</b>, por favor seleccione uno." Operator="GreaterThan" Type="Integer" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:ValidatorCalloutExtender ID="VCESubProyecto" runat="server" HighlightCssClass="vco" TargetControlID="CVSubProyeco"></ajax:ValidatorCalloutExtender> </div>
</div> <div class="tools">
</div> <a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
<div class="row"> <a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<div class="col-md-6"> </div>
<div class="row"> </div>
<label class="col-md-4 truncate">Fecha Inicio:</label> <div class="portlet-body">
<div class="col-md-8"> <asp:UpdatePanel ID="UpDatosG2" runat="server" UpdateMode="Conditional">
<div style="display: inline-block; vertical-align: text-bottom;"> <ContentTemplate>
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;"> <div class="rowpadding">
<asp:TextBox ID="TxtFechaI" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 118px" MaxLength="10"></asp:TextBox> <div class="row">
<span class="input-group-btn "> <label class="col-md-2 truncate">Proyecto:</label>
<asp:LinkButton ID="ImgFechaI" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton> <div class="col-md-10">
</span> <asp:DropDownList ID="DdlProyecto" runat="server" AutoPostBack="true" CssClass="form-control input-sm select2me" DataTextField="Proyecto" DataValueField="CveProyecto"></asp:DropDownList>
<ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="TxtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender> <asp:CompareValidator ID="CVProyecto" runat="server" ControlToValidate="DdlProyecto" ValueToCompare="0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />Debe seleccionar un <b>''Proyecto''</b>, por favor seleccione uno." Operator="GreaterThan" Type="Integer" ValidationGroup="GrpGuardar"></asp:CompareValidator>
<ajax:CalendarExtender runat="server" ID="CEFechaI" TargetControlID="TxtFechaI" PopupButtonID="ImgFechaI" Format="dd/MM/yyyy" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender> <ajax:ValidatorCalloutExtender ID="VCEProyecto" runat="server" HighlightCssClass="vco" TargetControlID="CVProyecto"></ajax:ValidatorCalloutExtender>
<asp:RequiredFieldValidator ID="RFVFechaI" runat="server" ControlToValidate="TxtFechaI" 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="GrpGuardar"></asp:RequiredFieldValidator> </div>
<asp:CompareValidator ID="CVFechaI" runat="server" ControlToValidate="TxtFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />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="GrpGuardar"></asp:CompareValidator> </div>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaI" Width="350px"></ajax:ValidatorCalloutExtender> <div class="row">
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaI" Width="350px"></ajax:ValidatorCalloutExtender> <label class="col-md-2 truncate">Sub Proyecto:</label>
</div> <div class="col-md-10">
</div> <asp:DropDownList ID="DdlSubProyecto" runat="server" CssClass="form-control input-sm select2me" DataTextField="SubProyecto2" DataValueField="CveSubProyecto"></asp:DropDownList>
</div> <asp:CompareValidator ID="CVSubProyeco" runat="server" ControlToValidate="DdlSubProyecto" ValueToCompare="0" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />Debe seleccionar un <b>''Proyecto''</b>, por favor seleccione uno." Operator="GreaterThan" Type="Integer" ValidationGroup="GrpGuardar"></asp:CompareValidator>
</div> <ajax:ValidatorCalloutExtender ID="VCESubProyecto" runat="server" HighlightCssClass="vco" TargetControlID="CVSubProyeco"></ajax:ValidatorCalloutExtender>
</div> </div>
<div class="col-md-6"> </div>
<div class="row"> <div class="row">
<label class="col-md-4 truncate">Fecha Fin:</label> <div class="col-md-6">
<div class="col-md-8"> <div class="row">
<div style="display: inline-block; vertical-align: text-bottom;"> <label class="col-md-4 truncate">Fecha Inicio:</label>
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;"> <div class="col-md-8">
<asp:TextBox ID="TxtFechaF" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 118px" MaxLength="10"></asp:TextBox> <div style="display: inline-block; vertical-align: text-bottom;">
<span class="input-group-btn "> <div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:LinkButton ID="ImgFechaF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton> <asp:TextBox ID="TxtFechaI" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 118px" MaxLength="10"></asp:TextBox>
</span> <span class="input-group-btn ">
<ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="TxtFechaF" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender> <asp:LinkButton ID="ImgFechaI" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
<ajax:CalendarExtender runat="server" ID="CEFecha" TargetControlID="TxtFechaF" PopupButtonID="ImgFechaF" Format="dd/MM/yyyy" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender> </span>
<asp:RequiredFieldValidator ID="RFVFechaF" runat="server" ControlToValidate="TxtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator> <ajax:MaskedEditExtender ID="MEEFechaI" runat="server" TargetControlID="TxtFechaI" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<asp:CompareValidator ID="CVFechaF" runat="server" ControlToValidate="TxtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />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="GrpGuardar"></asp:CompareValidator> <ajax:CalendarExtender runat="server" ID="CEFechaI" TargetControlID="TxtFechaI" PopupButtonID="ImgFechaI" Format="dd/MM/yyyy" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
<ajax:ValidatorCalloutExtender ID="VCOFecha1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaF" Width="350px"></ajax:ValidatorCalloutExtender> <asp:RequiredFieldValidator ID="RFVFechaI" runat="server" ControlToValidate="TxtFechaI" 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="GrpGuardar"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOFecha2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaF" Width="350px"></ajax:ValidatorCalloutExtender> <asp:CompareValidator ID="CVFechaI" runat="server" ControlToValidate="TxtFechaI" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />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="GrpGuardar"></asp:CompareValidator>
</div> <ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div> <ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaI" Width="350px"></ajax:ValidatorCalloutExtender>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</ContentTemplate> <div class="col-md-6">
</asp:UpdatePanel> <div class="row">
</div> <label class="col-md-4 truncate">Fecha Fin:</label>
</div> <div class="col-md-8">
</div> <div style="display: inline-block; vertical-align: text-bottom;">
<div class="col-md-6" runat="server" id="DivIndicadores" visible="false"> <div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:UpdatePanel UpdateMode="Conditional" ID="UpIndicadores" runat="server"> <asp:TextBox ID="TxtFechaF" runat="server" CssClass="form-control" CausesValidation="true" Style="width: 118px" MaxLength="10"></asp:TextBox>
<ContentTemplate> <span class="input-group-btn ">
<div class="row"> <asp:LinkButton ID="ImgFechaF" class="btn default " Text="<i class='fa fa-calendar'></i>" runat="server"></asp:LinkButton>
<div class="col-md-12"> </span>
<h3><b>Estatus: </b> <ajax:MaskedEditExtender ID="MEEFechaF" runat="server" TargetControlID="TxtFechaF" Mask="99/99/9999" MaskType="Date" DisplayMoney="Left" AcceptNegative="Left"></ajax:MaskedEditExtender>
<asp:Literal ID="LtlEstatus" runat="server"></asp:Literal></h3> <ajax:CalendarExtender runat="server" ID="CEFecha" TargetControlID="TxtFechaF" PopupButtonID="ImgFechaF" Format="dd/MM/yyyy" PopupPosition="BottomRight" Enabled="True"></ajax:CalendarExtender>
</div> <asp:RequiredFieldValidator ID="RFVFechaF" runat="server" ControlToValidate="TxtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Fecha''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
</div> <asp:CompareValidator ID="CVFechaF" runat="server" ControlToValidate="TxtFechaF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />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="GrpGuardar"></asp:CompareValidator>
<div class="row"> <ajax:ValidatorCalloutExtender ID="VCOFecha1" runat="server" HighlightCssClass="vco" TargetControlID="RFVFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
<div class="col-lg-4 col-md-4"> <ajax:ValidatorCalloutExtender ID="VCOFecha2" runat="server" HighlightCssClass="vco" TargetControlID="CVFechaF" Width="350px"></ajax:ValidatorCalloutExtender>
<div class="dashboard-stat2 " style="border-style: solid; border-color: whitesmoke; padding-top px;"> </div>
<div class="display" style="margin-bottom: 0px"> </div>
<div class="number"> </div>
<h3 class="font-red-haze"> </div>
<small class="font-red-haze">$</small> </div>
<span data-counter="counterup"> </div>
<asp:Literal runat="server" ID="LtlAutorizado"></asp:Literal></span> </div>
</h3> </ContentTemplate>
<small>IMPORTE</small> </asp:UpdatePanel>
</div> </div>
</div>
</div>
<div class="col-md-4" runat="server" id="DivIndicadores" visible="false">
<asp:UpdatePanel UpdateMode="Conditional" ID="UpIndicadores" runat="server">
<ContentTemplate>
<div class="row">
<div class="col-md-12">
<h3><b>Estatus: </b>
<asp:Literal ID="LtlEstatus" runat="server"></asp:Literal></h3>
</div>
</div>
<div class="row">
<div class="col-lg-4 col-md-4">
<div class="dashboard-stat2 " style="border-style: solid; border-color: whitesmoke; padding-top px;">
<div class="display" style="margin-bottom: 0px">
<div class="number">
<h3 class="font-red-haze">
<small class="font-red-haze">$</small>
<span data-counter="counterup">
<asp:Literal runat="server" ID="LtlAutorizado"></asp:Literal></span>
</h3>
<small>IMPORTE</small>
</div>
<%--<div class="icon"> <%--<div class="icon">
<i class="fa fa-credit-card"></i> <i class="fa fa-credit-card"></i>
</div>--%> </div>--%>
</div> </div>
</div> </div>
</div> </div>
<div class="col-lg-4 col-md-4"> <div class="col-lg-4 col-md-4">
<div class="dashboard-stat2 " style="border-style: solid; border-color: whitesmoke; padding: 5px 5px 25px 5px;"> <div class="dashboard-stat2 " style="border-style: solid; border-color: whitesmoke; padding: 5px 5px 25px 5px;">
<div class="display"> <div class="display">
<div class="number"> <div class="number">
<h3 class="font-blue-sharp"> <h3 class="font-blue-sharp">
<small class="font-blue-sharp">$</small> <small class="font-blue-sharp">$</small>
<span data-counter="counterup"> <span data-counter="counterup">
<asp:Literal runat="server" ID="LtlEjercido"></asp:Literal></span> <asp:Literal runat="server" ID="LtlEjercido"></asp:Literal></span>
</h3> </h3>
<small>EJERCIDO</small> <small>EJERCIDO</small>
</div> </div>
<%--<div class="icon"> <%--<div class="icon">
<i class="icon-pie-chart"></i> <i class="icon-pie-chart"></i>
</div>--%> </div>--%>
</div> </div>
<div class="progress-info"> <div class="progress-info">
<div class="progress"> <div class="progress">
<span style="width: 50%;" id="PBEjercido" runat="server" class="progress-bar progress-bar-info blue-sharp"> <span style="width: 50%;" id="PBEjercido" runat="server" class="progress-bar progress-bar-info blue-sharp">
<span class="sr-only"> <span class="sr-only">
<asp:Literal runat="server" ID="LtlPorcenEjercido"></asp:Literal></span> <asp:Literal runat="server" ID="LtlPorcenEjercido"></asp:Literal></span>
</span> </span>
</div> </div>
<div class="status"> <div class="status">
<div class="status-title">Porcentaje Ejercido </div> <div class="status-title">Porcentaje Ejercido </div>
<div class="status-number"> <div class="status-number">
<asp:Literal runat="server" ID="Literal3"></asp:Literal> <asp:Literal runat="server" ID="Literal3"></asp:Literal>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="col-lg-4 col-md-4"> <div class="col-lg-4 col-md-4">
<div class="dashboard-stat2 " style="border-style: solid; border-color: whitesmoke; padding: 5px 5px 25px 5px;"> <div class="dashboard-stat2 " style="border-style: solid; border-color: whitesmoke; padding: 5px 5px 25px 5px;">
<div class="display"> <div class="display">
<div class="number"> <div class="number">
<h3 class="font-green-sharp"> <h3 class="font-green-sharp">
<small class="font-green-sharp">$</small> <small class="font-green-sharp">$</small>
<span data-counter="counterup"> <span data-counter="counterup">
<asp:Literal runat="server" ID="LtlPorEjercer"></asp:Literal></span> <asp:Literal runat="server" ID="LtlPorEjercer"></asp:Literal></span>
</h3> </h3>
<small>POR EJERCER</small> <small>POR EJERCER</small>
</div> </div>
<%--<div class="icon"> <%--<div class="icon">
<i class="icon-pie-chart"></i> <i class="icon-pie-chart"></i>
</div>--%> </div>--%>
</div> </div>
<div class="progress-info"> <div class="progress-info">
<div class="progress"> <div class="progress">
<span style="width: 50%;" id="PBPorEjercer" runat="server" class="progress-bar progress-bar-success green-sharp"> <span style="width: 50%;" id="PBPorEjercer" runat="server" class="progress-bar progress-bar-success green-sharp">
<span class="sr-only"> <span class="sr-only">
<asp:Literal runat="server" ID="LtlPorcentPorEjer"></asp:Literal></span> <asp:Literal runat="server" ID="LtlPorcentPorEjer"></asp:Literal></span>
</span> </span>
</div> </div>
<div class="status"> <div class="status">
<div class="status-title">Porcentaje Por Ejercer </div> <div class="status-title">Porcentaje Por Ejercer </div>
<div class="status-number"> <div class="status-number">
<asp:Literal runat="server" ID="LtlPorcentaje"></asp:Literal> <asp:Literal runat="server" ID="LtlPorcentaje"></asp:Literal>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
</div> </div>
<br /> <br />
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<div class="portlet light smmallpadding bordered"> <div class="portlet light smmallpadding bordered">
<div class="portlet-title"> <div class="portlet-title">
<div class="caption" style="align-items: center"> <div class="caption" style="align-items: center">
<i class="fa fa-info-circle"></i>Presupuestos <i class="fa fa-info-circle"></i>Presupuestos
</div>
<div class="tools"> </div>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a> <div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a> <a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div> <a href="javascript:;" class="collapse" data-original-title="" title=""></a>
</div> </div>
<div class="portlet-body"> </div>
<div class="rowpadding"> <div class="portlet-body">
<asp:UpdatePanel ID="UpGvClasificaciones" runat="server" UpdateMode="Conditional"> <div class="rowpadding">
<ContentTemplate> <asp:UpdatePanel ID="UpGvClasificaciones" runat="server" UpdateMode="Conditional">
<asp:GridView ID="GvPresupuestos" runat="server" GridLines="None" EmptyDataText="No se encontraron presupuestos" CssClass="table table-hover table-striped Widthall ScrollAD" ShowFooter="true" data-footer="1" AutoGenerateColumns="False" data-heighterror="600" <ContentTemplate>
DataKeyNames="CvePresupuestoDetalle,CveClasificacion,CveTipoGasto"> <asp:GridView ID="GvPresupuestos" runat="server" GridLines="None" EmptyDataText="No se encontraron presupuestos" CssClass="table table-hover table-striped Widthall ScrollAD" ShowFooter="true" data-footer="1" AutoGenerateColumns="False" data-heighterror="600"
<Columns> DataKeyNames="CvePresupuestoDetalle,CveAgrupador,CveTipoGasto,Tipo">
<asp:BoundField HeaderText="Clasificación" DataField="Clasificacion" /> <Columns>
<asp:TemplateField HeaderText="Importe" HeaderStyle-HorizontalAlign="Left" FooterStyle-HorizontalAlign="Right"> <asp:BoundField HeaderText="Clasificación" DataField="Agrupador" />
<ItemTemplate> <asp:TemplateField HeaderText="Importe" HeaderStyle-HorizontalAlign="Left" FooterStyle-HorizontalAlign="Right">
<asp:Label ID="LblImporteClasiTotal" runat="server" Visible="false"></asp:Label> <ItemTemplate>
<asp:TextBox ID="TxtImporteClasi" runat="server" Text='<%#Eval("Importe") %>'></asp:TextBox> <asp:Label ID="LblImporteClasiTotal" runat="server" Visible="false"></asp:Label>
<ajax:FilteredTextBoxExtender ID="SoloNumerosCantidad" runat="server" TargetControlID="TxtImporteClasi" FilterType="Custom, Numbers" ValidChars=".," /> <asp:TextBox ID="TxtImporteClasi" runat="server" Text='<%#Eval("Importe") %>' CssClass="form-control input-sm"></asp:TextBox>
</ItemTemplate> <ajax:FilteredTextBoxExtender ID="SoloNumerosCantidad" runat="server" TargetControlID="TxtImporteClasi" FilterType="Custom, Numbers" ValidChars=".," />
<FooterTemplate> </ItemTemplate>
<b>Total :</b> <FooterTemplate>
<asp:Label ID="LblTotal" CssClass="LabelGVTotal" runat="server"></asp:Label> <b>Total :</b>
</FooterTemplate> <asp:Label ID="LblTotal" CssClass="LabelGVTotal" runat="server"></asp:Label>
</asp:TemplateField> </FooterTemplate>
<asp:TemplateField HeaderText="Observaciones" HeaderStyle-HorizontalAlign="Left"> </asp:TemplateField>
<ItemTemplate> <asp:TemplateField HeaderText="Observaciones" HeaderStyle-HorizontalAlign="Left">
<asp:TextBox ID="TxtObservacion" runat="server" CssClass="form-control input-sm" Text='<%# Eval("Observacion") %>'></asp:TextBox> <ItemTemplate>
</ItemTemplate> <asp:TextBox ID="TxtObservacion" runat="server" CssClass="form-control input-sm" Text='<%# Eval("Observacion") %>'></asp:TextBox>
</asp:TemplateField> </ItemTemplate>
<asp:BoundField HeaderText="Tipo Gasto" DataField="TipoGasto" /> </asp:TemplateField>
</Columns> <asp:BoundField HeaderText="Tipo Gasto" DataField="TipoGasto" />
<FooterStyle CssClass="Totales" /> </Columns>
</asp:GridView> <FooterStyle CssClass="Totales" />
</ContentTemplate> </asp:GridView>
</asp:UpdatePanel> </ContentTemplate>
</div> </asp:UpdatePanel>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<asp:UpdatePanel ID="UpGuardar" runat="server"> </div>
<ContentTemplate> <asp:UpdatePanel ID="UpGuardar" runat="server">
<div class="row"> <ContentTemplate>
<div class="col-md-5"></div> <div class="row">
<div class="col-md-2"> <div class="col-md-5"></div>
<asp:Button ID="BtnGuardar" runat="server" Text="Guardar" CssClass="btn btn-primary" ValidationGroup="GrpGuardar" /> <div class="col-md-2">
</div> <asp:Button ID="BtnGuardar" runat="server" Text="Guardar" CssClass="btn btn-primary" ValidationGroup="GrpGuardar" />
<div class="col-md-5"></div> </div>
</div> <div class="col-md-5"></div>
</ContentTemplate> </div>
</asp:UpdatePanel> </ContentTemplate>
<div id="ModalCargaPresupuesto" class="modal ADS fade" role="dialog"> </asp:UpdatePanel>
<asp:UpdatePanel ID="UPCargaPresup" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional"> <div id="ModalCargaPresupuesto" class="modal ADS fade" role="dialog">
<ContentTemplate> <asp:UpdatePanel ID="UPCargaPresup" class="modal-dialog" tabindex="-1" runat="server" UpdateMode="Conditional">
<div class="modal-content rowpadding"> <ContentTemplate>
<div class="modal-header"> <div class="modal-content rowpadding">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"> <div class="modal-header">
<span aria-hidden="true">&times;</span> <button type="button" class="close" data-dismiss="modal" aria-label="Close">
</button> <span aria-hidden="true">&times;</span>
<h4 class="modal-title" runat="server" style="text-align: left">Cargar Presupuesto </h4> </button>
</div> <h4 class="modal-title" runat="server" style="text-align: left">Cargar Presupuesto </h4>
<div class="modal-body"> </div>
<div class="modal-body">
<div class="portlet light smmallpadding bordered">
<div class="portlet-title"> <div class="portlet light smmallpadding bordered">
<div class="caption font-green"> <div class="portlet-title">
<i class="fa fa-upload font-green"></i> <div class="caption font-green">
<span class="caption-subject bold uppercase">Cargar archivo </span> <i class="fa fa-upload font-green"></i>
</div> <span class="caption-subject bold uppercase">Cargar archivo </span>
<div class="tools"> </div>
<a href="javascript:;" class="collapse" data-original-title="" title=""></a> <div class="tools">
</div> <a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<div class="actions"> </div>
<div class="btn-group"> <div class="actions">
<asp:LinkButton ID="LnkFormatoPresup" OnClick="LnkFormatoPresup_Click" CssClass="btn yellow-gold" runat="server"><i class="fa fa-download"></i> Descargar Plantilla</asp:LinkButton> <div class="btn-group">
</div> <asp:LinkButton ID="LnkFormatoPresup" OnClick="LnkFormatoPresup_Click" CssClass="btn yellow-gold" runat="server"><i class="fa fa-download"></i> Descargar Plantilla</asp:LinkButton>
</div> </div>
</div> </div>
<div class="portlet-body rowpadding "> </div>
<div class="portlet-body rowpadding ">
<!--<div class=" row"> <!--<div class=" row">
<div class="col-md-3">Concepto</div> <div class="col-md-3">Concepto</div>
<div class="col-md-6"> <div class="col-md-6">
@@ -320,52 +344,52 @@
</div> </div>
</div> </div>
--> -->
<asp:TextBox ID="TxtCargarPresup" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox> <asp:TextBox ID="TxtCargarPresup" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
</div> </div>
</div> </div>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<asp:UpdatePanel runat="server" UpdateMode="Conditional"> <asp:UpdatePanel runat="server" UpdateMode="Conditional">
<ContentTemplate> <ContentTemplate>
<asp:LinkButton ID="LnkCargarPresup" OnClick="LnkCargarPresup_Click" CssClass="btn btn-primary" runat="server">Procesar</asp:LinkButton> <asp:LinkButton ID="LnkCargarPresup" OnClick="LnkCargarPresup_Click" CssClass="btn btn-primary" runat="server">Procesar</asp:LinkButton>
</ContentTemplate> </ContentTemplate>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
</div> </div>
</ContentTemplate> </ContentTemplate>
<Triggers> <Triggers>
<asp:PostBackTrigger ControlID="LnkFormatoPresup" /> <asp:PostBackTrigger ControlID="LnkFormatoPresup" />
</Triggers> </Triggers>
</asp:UpdatePanel> </asp:UpdatePanel>
</div> </div>
</asp:Content> </asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server"> <asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script type="text/javascript"> <script type="text/javascript">
function calculaTotalTipoGasto(TipoGasto) { function calculaTotalTipoGasto(TipoGasto) {
var total = 0; var total = 0;
$(".txt" + TipoGasto).each(function () { $(".txt" + TipoGasto).each(function () {
total += ToDouble(this.value); total += ToDouble(this.value);
}); });
$(".LabelGVTotal" + TipoGasto).text('$ ' + formato_numero(total, 2, '.', ',')); $(".LabelGVTotal" + TipoGasto).text('$ ' + formato_numero(total, 2, '.', ','));
} }
function calculaTotal() { function calculaTotal() {
var total = 0; var total = 0;
$(".sumaGV").each(function () { $(".sumaGV").each(function () {
total += ToDouble(this.value); total += ToDouble(this.value);
}); });
$(".LabelGVTotal").text('$ ' + formato_numero(total, 2, '.', ',')); $(".LabelGVTotal").text('$ ' + formato_numero(total, 2, '.', ','));
} }
function formato_numero(numero, decimales, separador_decimal, separador_miles) { function formato_numero(numero, decimales, separador_decimal, separador_miles) {
numero = parseFloat(numero); numero = parseFloat(numero);
if (isNaN(numero)) { if (isNaN(numero)) {
return ""; return "";
} }
if (decimales !== undefined) { if (decimales !== undefined) {
// Redondeamos // Redondeamos
numero = numero.toFixed(decimales); numero = numero.toFixed(decimales);
} }
// Convertimos el punto en separador_decimal // Convertimos el punto en separador_decimal
@@ -374,13 +398,13 @@
if (separador_miles) { if (separador_miles) {
// Añadimos los separadores de miles // Añadimos los separadores de miles
var miles = new RegExp("(-?[0-9]+)([0-9]{3})"); var miles = new RegExp("(-?[0-9]+)([0-9]{3})");
while (miles.test(numero)) { while (miles.test(numero)) {
numero = numero.replace(miles, "$1" + separador_miles + "$2"); numero = numero.replace(miles, "$1" + separador_miles + "$2");
} }
} }
return numero; return numero;
} }
</script> </script>
</asp:Content> </asp:Content>

View File

@@ -5,10 +5,10 @@ Imports System.Data
Imports Extensiones Imports Extensiones
Partial Class Contratos_Presupuestos Partial Class Contratos_Presupuestos
Inherits ClsPaginas Inherits ClsPaginas
#Region "P R O P I E D A D E S" #Region "P R O P I E D A D E S"
Public Property CvePresupuesto() As Integer Public Property CvePresupuesto() As Integer
Get Get
Return ViewState("CvePresupuesto").ToString.ToEntero Return ViewState("CvePresupuesto").ToString.ToEntero
@@ -37,10 +37,10 @@ Partial Class Contratos_Presupuestos
Set(ByVal value As DataTable) Set(ByVal value As DataTable)
ViewState("DtClasificaciones") = value ViewState("DtClasificaciones") = 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
CvePresupuesto = IfNull(Request("CvePresupuesto"), -1).ToString.ToEntero CvePresupuesto = IfNull(Request("CvePresupuesto"), -1).ToString.ToEntero
@@ -56,8 +56,8 @@ Partial Class Contratos_Presupuestos
UpGvClasificaciones.Update() UpGvClasificaciones.Update()
UpIndicadores.Update() UpIndicadores.Update()
End If End If
End Sub End Sub
#Region "I N I C I A L I Z A - V A L O R E S" #Region "I N I C I A L I Z A - V A L O R E S"
Private Sub InicializaValores() Private Sub InicializaValores()
TxtFechaI.Text = $"01/01/{Now.Year}" TxtFechaI.Text = $"01/01/{Now.Year}"
@@ -125,13 +125,13 @@ Partial Class Contratos_Presupuestos
End Select End Select
End If End If
If e.Row.RowType = DataControlRowType.Footer Then If e.Row.RowType = DataControlRowType.Footer Then
Dim Importe = DtClasificaciones.SUM("Importe", "CveClasificacion IS NOT NULL") Dim Importe = DtClasificaciones.SUM("Importe", "CveAgrupador IS NOT NULL")
e.Row.FCLabel("LblTotal").Text = String.Format("{0:C}", Importe) e.Row.FCLabel("LblTotal").Text = String.Format("{0:C}", Importe)
End If End If
End Sub End Sub
#End Region #End Region
#Region "C A R G A - D A T O S" #Region "C A R G A - D A T O S"
Private Sub CargaDatos() Private Sub CargaDatos()
CargaMoneda() CargaMoneda()
@@ -245,9 +245,9 @@ Partial Class Contratos_Presupuestos
HlModificar.Visible = True HlModificar.Visible = True
HlModificar.NavigateUrl = $"/Contratos/ModificarPresupuesto.aspx?CvePresupuesto={CvePresupuesto}" HlModificar.NavigateUrl = $"/Contratos/ModificarPresupuesto.aspx?CvePresupuesto={CvePresupuesto}"
End If End If
End Sub End Sub
#End Region #End Region
#Region "G U A R D A R " #Region "G U A R D A R "
Private Function ValidaDatos() As Boolean Private Function ValidaDatos() As Boolean
If String.IsNullOrEmpty(TxtPresupuesto.Text.Trim) Then If String.IsNullOrEmpty(TxtPresupuesto.Text.Trim) Then
@@ -327,23 +327,39 @@ Partial Class Contratos_Presupuestos
For Each GvRow As GridViewRow In GvPresupuestos.Rows For Each GvRow As GridViewRow In GvPresupuestos.Rows
If GvRow.RowType = DataControlRowType.DataRow Then If GvRow.RowType = DataControlRowType.DataRow Then
Dim CveClasificacion = GvRow.DataKey("CveClasificacion").ToEntero Dim CveAgrupador = GvRow.DataKey("CveAgrupador").ToEntero
Dim CveTipoGasto = GvRow.DataKey("CveTipoGasto").ToEntero Dim Tipo As Integer = GvRow.DataKey("Tipo").ToEntero
Dim CveTipoGasto = -1
Dim CveClasificacion As Integer = -1
Dim CveConceptoContableNom As Integer = -1
If Tipo = 1 Then
CveClasificacion = CveAgrupador
CveTipoGasto = GvRow.DataKey("CveTipoGasto").ToEntero
End If
If Tipo = 2 Then
CveConceptoContableNom = CveAgrupador
End If
Dim CvePresupuestoDetalle = GvRow.DataKey("CvePresupuestoDetalle").ToEntero Dim CvePresupuestoDetalle = GvRow.DataKey("CvePresupuestoDetalle").ToEntero
Dim Importe = GvRow.FCTextBox("TxtImporteClasi").Text.ToDecimal Dim Importe = GvRow.FCTextBox("TxtImporteClasi").Text.ToDecimal
Dim Obs = GvRow.FCTextBox("TxtObservacion").Text.Trim Dim Obs = GvRow.FCTextBox("TxtObservacion").Text.Trim
'ACTUALIZA EL REGISTRO EXISTENTE 'ACTUALIZA EL REGISTRO EXISTENTE
If CvePresupuestoDetalle > 0 Then If CvePresupuestoDetalle > 0 Then
TieneError = Not ObjCont.UpdatePresupuestosDetalle(CvePresupuestoDetalle, CveClasificacion, Importe, Obs) TieneError = Not ObjCont.UpdatePresupuestosDetalle(CvePresupuestoDetalle, CveClasificacion, Importe, Obs, CveConceptoContableNom:=CveConceptoContableNom)
If TieneError Then If TieneError Then
Exit For Exit For
End If End If
'AGREGA LA CLASIFICACION SI NO EXISTE EN EN EL DT DETALLE 'AGREGA LA CLASIFICACION SI NO EXISTE EN EN EL DT DETALLE
Else Else
If Importe > 0 And CveClasificacion > 0 Then If Importe > 0 And CveAgrupador > 0 Then
TieneError = Not ObjCont.AddPresupuestosDetalle(CvePresupuesto, CveClasificacion, CveTipoGasto, Importe, Obs) TieneError = Not ObjCont.AddPresupuestosDetalle(CvePresupuesto, CveClasificacion, CveTipoGasto, Importe, Obs, CveConceptoContableNom:=CveConceptoContableNom)
If TieneError Then If TieneError Then
Exit For Exit For
End If End If
@@ -385,18 +401,33 @@ Partial Class Contratos_Presupuestos
If CvePresupuestoNuevo > 0 Then If CvePresupuestoNuevo > 0 Then
Dim ImporteClasi = 0.0D Dim ImporteClasi = 0.0D
Dim CveClasificacion = -1
Dim ObsDetalle = "" Dim ObsDetalle = ""
For Each GvRow As GridViewRow In GvPresupuestos.Rows For Each GvRow As GridViewRow In GvPresupuestos.Rows
If GvRow.RowType = DataControlRowType.DataRow Then If GvRow.RowType = DataControlRowType.DataRow Then
ImporteClasi = GvRow.FCTextBox("TxtImporteClasi").Text.ToDecimal ImporteClasi = GvRow.FCTextBox("TxtImporteClasi").Text.ToDecimal
CveClasificacion = GvRow.DataKey("CveClasificacion").ToEntero
Dim CveTipoGasto = GvRow.DataKey("CveTipoGasto").ToEntero
ObsDetalle = GvRow.FCTextBox("TxtObservacion").Text.Trim ObsDetalle = GvRow.FCTextBox("TxtObservacion").Text.Trim
Dim CveAgrupador = GvRow.DataKey("CveAgrupador").ToEntero
Dim Tipo As Integer = GvRow.DataKey("Tipo").ToEntero
Dim CveClasificacion As Integer = -1
Dim CveConceptoContableNom As Integer = -1
Dim CveTipoGasto As Integer = -1
If Tipo = 1 Then
CveClasificacion = CveAgrupador
CveTipoGasto = GvRow.DataKey("CveTipoGasto").ToEntero
End If
If Tipo = 2 Then
CveConceptoContableNom = CveAgrupador
End If
If CveClasificacion > 0 Then If CveClasificacion > 0 Then
If ImporteClasi > 0 Then If ImporteClasi > 0 Then
TieneError = Not ObjCont.AddPresupuestosDetalle(CvePresupuestoNuevo, CveClasificacion, CveTipoGasto, ImporteClasi, ObsDetalle) TieneError = Not ObjCont.AddPresupuestosDetalle(CvePresupuestoNuevo, CveClasificacion, CveTipoGasto, ImporteClasi, ObsDetalle, CveConceptoContableNom:=CveConceptoContableNom)
If TieneError Then If TieneError Then
Exit For Exit For
End If End If
@@ -427,11 +458,11 @@ Partial Class Contratos_Presupuestos
Alert("Se agregó el presupuesto correctamente.", TipoMensaje.MsgInformacion, Liga) Alert("Se agregó el presupuesto correctamente.", TipoMensaje.MsgInformacion, Liga)
End If End If
End Sub End Sub
#End Region #End Region
Protected Sub LnkAutorizar_Click(sender As Object, e As EventArgs) Handles LnkAutorizar.Click Protected Sub LnkAutorizar_Click(sender As Object, e As EventArgs) Handles LnkAutorizar.Click
If ValidaDatos() Then If ValidaDatos() Then
If ActualizarPresupuesto() Then If ActualizarPresupuesto() Then

View File

@@ -233,7 +233,7 @@
</div> </div>
<div class="col-md-1" style="max-width: 120px">Clasificacion:</div> <div class="col-md-1" style="max-width: 120px">Clasificacion:</div>
<div class="col-md-2"> <div class="col-md-2">
<asp:DropDownList ID="DdlClasificacion" DataTextField="Clasificacion" AppendDataBoundItems="true" DataValueField="CveClasificacion" Width="200px" runat="server" CssClass="form-control input-sm select2me"> <asp:DropDownList ID="DdlClasificacion" DataTextField="Agrupador" DataValueField="CveAgrupador" Width="200px" runat="server" CssClass="form-control input-sm select2me">
</asp:DropDownList> </asp:DropDownList>
</div> </div>
<div class="col-md-1" style="max-width: 120px">Tipo Gasto:</div> <div class="col-md-1" style="max-width: 120px">Tipo Gasto:</div>

View File

@@ -8,9 +8,9 @@ Imports Extensiones
Imports Microsoft.Reporting.WebForms Imports Microsoft.Reporting.WebForms
Partial Class Contratos_RepPresupuestos Partial Class Contratos_RepPresupuestos
Inherits ClsPaginas Inherits ClsPaginas
#Region "P R O P I E D A D E S" #Region "P R O P I E D A D E S"
Public Property DtPresupuestos() As DataTable Public Property DtPresupuestos() As DataTable
Get Get
Return DirectCast(ViewState("DtPresupuestos"), DataTable) Return DirectCast(ViewState("DtPresupuestos"), DataTable)
@@ -18,15 +18,15 @@ Partial Class Contratos_RepPresupuestos
Set(ByVal value As DataTable) Set(ByVal value As DataTable)
ViewState("DtPresupuestos") = value ViewState("DtPresupuestos") = 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
InicializaValores() InicializaValores()
End If End If
End Sub End Sub
#Region " INICIALIZA VALORES " #Region " INICIALIZA VALORES "
Private Sub InicializaValores() Private Sub InicializaValores()
@@ -36,9 +36,14 @@ Partial Class Contratos_RepPresupuestos
DdlTipoGasto.DataSource = GlobalDTTiposGastos(UsuarioActual.CveEmpresa) DdlTipoGasto.DataSource = GlobalDTTiposGastos(UsuarioActual.CveEmpresa)
DdlTipoGasto.DataBind() DdlTipoGasto.DataBind()
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa) Dim dtAgrupador = (From dr In GlobalDTClasificaciones(UsuarioActual.CveEmpresa)
Select New With {.CveAgrupador = dr("CveClasificacion").ToString().ToEntero(), .Agrupador = dr("Clasificacion").ToString()}
).Union(From dr In GlobalDTContaConceptosContables(-1)
Select New With {.CveAgrupador = dr("CveConceptoContable").ToString().ToEntero(), .Agrupador = dr("ConceptoContable").ToString()}).QueryToDataTable(True)
DdlClasificacion.DataSource = dtAgrupador
DdlClasificacion.DataBind()
DdlClasificacion.Items.Insert(0, New ListItem("Todos", "-1")) DdlClasificacion.Items.Insert(0, New ListItem("Todos", "-1"))
DdlClasificacion.DataBind()
DdlProyecto.DataSource = If(UsuarioActual.Empresa.Funcionalidad(102) = "1" AndAlso Not UsuarioActual.TienePermisoProceso(110), GlobalDTProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1).FiltraParametros("", "", {"CveProyecto", "Proyecto"}), GlobalDTProyectos(UsuarioActual.CveEmpresa, -1).FiltraParametros("", "", {"CveProyecto", "Proyecto"})) DdlProyecto.DataSource = If(UsuarioActual.Empresa.Funcionalidad(102) = "1" AndAlso Not UsuarioActual.TienePermisoProceso(110), GlobalDTProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1).FiltraParametros("", "", {"CveProyecto", "Proyecto"}), GlobalDTProyectos(UsuarioActual.CveEmpresa, -1).FiltraParametros("", "", {"CveProyecto", "Proyecto"}))
DdlProyecto.Items.Insert(0, New ListItem("Todos", "-1")) DdlProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
@@ -46,12 +51,12 @@ Partial Class Contratos_RepPresupuestos
CargaSubProyecto() CargaSubProyecto()
UpFiltros.Update() UpFiltros.Update()
End Sub End Sub
#End Region #End Region
#Region " CARGA DATOS " #Region " CARGA DATOS "
Private Sub CargaSubProyecto() Private Sub CargaSubProyecto()
DdlSubProyecto.Items.Clear() DdlSubProyecto.Items.Clear()
If DdlProyecto.SelectedValue.ToEntero > 0 Or UsuarioActual.Empresa.Tipo_CentroCosto = 1 Then If DdlProyecto.SelectedValue.ToEntero > 0 Or UsuarioActual.Empresa.Tipo_CentroCosto = 1 Then
@@ -362,15 +367,15 @@ Partial Class Contratos_RepPresupuestos
EsProyecto = True EsProyecto = True
End If End If
Dim Css = "Texto" Dim Css = "Texto"
Dim Liga = $"/Contratos/RepPresupuestosDetalle.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={False}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}" Dim Liga = $"/Contratos/RepPresupuestosDetalle.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveConceptoContableNom={e.Row.DBCampo("CveConceptoContableNomFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={False}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}"
e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>" e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>"
End If End If
End If End If
End Sub End Sub
#End Region #End Region
Protected Sub ChkMensual_CheckedChanged(sender As Object, e As EventArgs) Handles ChkMensual.CheckedChanged Protected Sub ChkMensual_CheckedChanged(sender As Object, e As EventArgs) Handles ChkMensual.CheckedChanged
DivRepDatos.Visible = Not ChkMensual.Checked DivRepDatos.Visible = Not ChkMensual.Checked
@@ -492,7 +497,7 @@ Partial Class Contratos_RepPresupuestos
Dim FechaFin = e.Row.DBCampo("FechaFFiltro").ToDate.ToShortDateString Dim FechaFin = e.Row.DBCampo("FechaFFiltro").ToDate.ToShortDateString
Dim FechaInicio = e.Row.DBCampo("FechaIFiltro").ToDate.ToShortDateString Dim FechaInicio = e.Row.DBCampo("FechaIFiltro").ToDate.ToShortDateString
Dim Css = "Texto" Dim Css = "Texto"
Dim Liga = $"/Contratos/RepPresupuestosDetalle.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={True}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}" Dim Liga = $"/Contratos/RepPresupuestosDetalle.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveConceptoContableNom={e.Row.DBCampo("CveConceptoContableNomFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={True}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}"
e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>" e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>"
End If End If
Else Else
@@ -506,7 +511,7 @@ Partial Class Contratos_RepPresupuestos
Dim FechaFin = e.Row.DBCampo("FechaFFiltro").ToDate.ToShortDateString Dim FechaFin = e.Row.DBCampo("FechaFFiltro").ToDate.ToShortDateString
Dim FechaInicio = e.Row.DBCampo("FechaIFiltro").ToDate.ToShortDateString Dim FechaInicio = e.Row.DBCampo("FechaIFiltro").ToDate.ToShortDateString
Dim Css = "Texto" Dim Css = "Texto"
Dim Liga = $"/Contratos/RepPresupuestosDetalle.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={True}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}" Dim Liga = $"/Contratos/RepPresupuestosDetalle.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveConceptoContableNom={e.Row.DBCampo("CveConceptoContableNomFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={True}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}"
e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>" e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>"
End If End If
End If End If
@@ -515,8 +520,8 @@ Partial Class Contratos_RepPresupuestos
End Sub End Sub
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As EventArgs) Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As EventArgs)
CargaSubProyecto() CargaSubProyecto()
End Sub End Sub
#Region " IMPRESION - NUEVO " #Region " IMPRESION - NUEVO "
Protected Sub ImgExcel_Click(sender As Object, e As System.EventArgs) Handles ImgExcel.Click Protected Sub ImgExcel_Click(sender As Object, e As System.EventArgs) Handles ImgExcel.Click
GenerarPDF("EXCEL") GenerarPDF("EXCEL")
@@ -555,7 +560,7 @@ Partial Class Contratos_RepPresupuestos
Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia) Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia)
End If End If
End Sub End Sub
#End Region #End Region
End Class End Class

View File

@@ -226,7 +226,7 @@
</div> </div>
<div class="col-md-1" style="max-width: 120px">Clasificacion:</div> <div class="col-md-1" style="max-width: 120px">Clasificacion:</div>
<div class="col-md-2"> <div class="col-md-2">
<asp:DropDownList ID="DdlClasificacion" DataTextField="Clasificacion" AppendDataBoundItems="true" DataValueField="CveClasificacion" Width="200px" runat="server" CssClass="form-control input-sm select2me"> <asp:DropDownList ID="DdlClasificacion" DataTextField="Agrupador" DataValueField="CveAgrupador" Width="200px" runat="server" CssClass="form-control input-sm select2me">
</asp:DropDownList> </asp:DropDownList>
</div> </div>
<div class="col-md-1" style="max-width: 120px">Tipo Gasto:</div> <div class="col-md-1" style="max-width: 120px">Tipo Gasto:</div>

View File

@@ -45,9 +45,14 @@ Partial Class Contratos_RepPresupuestosDetalle
TxtFiltrosFechaInicio.Text = $"01/09/{Now.Year - 1}" TxtFiltrosFechaInicio.Text = $"01/09/{Now.Year - 1}"
TxtFiltrosFechaFin.Text = $"31/08/{Now.Year}" TxtFiltrosFechaFin.Text = $"31/08/{Now.Year}"
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa) Dim dtAgrupador = (From dr In GlobalDTClasificaciones(UsuarioActual.CveEmpresa)
Select New With {.CveAgrupador = dr("CveClasificacion").ToString().ToEntero(), .Agrupador = dr("Clasificacion").ToString()}
).Union(From dr In GlobalDTContaConceptosContables(-1)
Select New With {.CveAgrupador = dr("CveConceptoContable").ToString().ToEntero(), .Agrupador = dr("ConceptoContable").ToString()}).QueryToDataTable(True)
DdlClasificacion.DataSource = dtAgrupador
DdlClasificacion.DataBind()
DdlClasificacion.Items.Insert(0, New ListItem("Todas", "-1")) DdlClasificacion.Items.Insert(0, New ListItem("Todas", "-1"))
DdlClasificacion.DataBind()
DdlTipoGasto.DataSource = GlobalDTTiposGastos(UsuarioActual.CveEmpresa) DdlTipoGasto.DataSource = GlobalDTTiposGastos(UsuarioActual.CveEmpresa)
DdlTipoGasto.DataBind() DdlTipoGasto.DataBind()
@@ -181,7 +186,7 @@ Partial Class Contratos_RepPresupuestosDetalle
EsProyecto = True EsProyecto = True
End If End If
Dim Css = "Texto" Dim Css = "Texto"
Dim Liga = $"/Contratos/RepPresupuestosDetalleCompras.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={False}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}" Dim Liga = $"/Contratos/RepPresupuestosDetalleCompras.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveConceptoContableNom={e.Row.DBCampo("CveConceptoContableNomFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={False}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}"
e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>" e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>"
End If End If
End If End If
@@ -302,7 +307,7 @@ Partial Class Contratos_RepPresupuestosDetalle
EsProyecto = True EsProyecto = True
End If End If
Dim Css = "Texto" Dim Css = "Texto"
Dim Liga = $"/Contratos/RepPresupuestosDetalleCompras.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={False}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}" Dim Liga = $"/Contratos/RepPresupuestosDetalleCompras.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveConceptoContableNom={e.Row.DBCampo("CveConceptoContableNomFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={False}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}"
e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>" e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>"
End If End If
End If End If

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -497,7 +497,7 @@
</Textbox> </Textbox>
</ReportItems> </ReportItems>
<KeepTogether>true</KeepTogether> <KeepTogether>true</KeepTogether>
<Top>6.71618in</Top> <Top>6.90368in</Top>
<Left>0.08209in</Left> <Left>0.08209in</Left>
<Height>1.40294in</Height> <Height>1.40294in</Height>
<Width>8.23953in</Width> <Width>8.23953in</Width>
@@ -2126,116 +2126,6 @@
<PaddingBottom>2pt</PaddingBottom> <PaddingBottom>2pt</PaddingBottom>
</Style> </Style>
</Textbox> </Textbox>
<Textbox Name="Textbox40">
<CanGrow>true</CanGrow>
<CanShrink>true</CanShrink>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Sonora: </Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>7pt</FontSize>
<FontWeight>Bold</FontWeight>
<TextDecoration>None</TextDecoration>
</Style>
</TextRun>
<TextRun>
<Value>Rodríguez (662) 213-0388 - Camino del seri (662) 220-3070 - Colosio (662) 260-8088 - Colosio II (662) 118-9939 - Veracruz (662) 210-0041 - Monteverde (662) 688-1512 - Morelos (662) 211-0805 - Palo Verde (662) 436-3254 - Perisur (662) 254-4849 - Portillo (662) 688-5349 - Progreso (662) 310-5781 - Reforma (662) 213-8724 - Sahuaro (662) 216-1471 - Solidaridad (662) 216-0935 - Quiroga (662) 261-0838 - Guaymas (622) 222-2417 - Nogales (631) 319-0093 - San Luis Rio Colorado (653) 596-1799 - Agua Prieta (633) 688-0080 - Caborca (637) 372-4214 - Magdalena (632) 322-4080 - Cananea (645) 332-2040 - Obregón (644) 412-2002 - Obregón II (644) 413-1543 - Obregón III (644) 413-4501 - Navojoa (642) 422-9852 – </Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>7pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
</Style>
</TextRun>
<TextRun>
<Value>Sinaloa: </Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>7pt</FontSize>
<FontWeight>Bold</FontWeight>
<TextDecoration>None</TextDecoration>
</Style>
</TextRun>
<TextRun>
<Value>Mochis (668) 817-0209 - Mochis II (668) 176-5802 - Guasave (687) 871-5317 - Guamúchil (673) 688-0108 - Calzada (667) 729-2112 - Zapata (667) 992-0876 - Sanalona (667) 713-6671 - Tres Ríos (667) 211-4696 - La Primavera (667) 304-2060 - Corredor Automotriz (667) 715-5004 - Del Valle (667) 721-5577 - Mazatlán (669) 910-2122 - </Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>7pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
</Style>
</TextRun>
<TextRun>
<Value>Baja California</Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>7pt</FontSize>
<FontWeight>Bold</FontWeight>
<TextDecoration>None</TextDecoration>
</Style>
</TextRun>
<TextRun>
<Value>: Tijuana (664) 622-5221 – Tijuana II (664) 626-2615 - Rosarito (661) 612-4461 - Mexicali (686) 567-6102 - Mexicali II (686) 326 02 79 - Tecate (665) 5212080 - Ensenada (646) 172-4075 – Ensenada II (646) 176-2703 - </Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>7pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
</Style>
</TextRun>
<TextRun>
<Value>Baja California Sur</Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>7pt</FontSize>
<FontWeight>Bold</FontWeight>
<TextDecoration>None</TextDecoration>
</Style>
</TextRun>
<TextRun>
<Value>: La Paz (612) 146-3656 - La Paz II (612) 121-3185 - Los Cabos (624) 688 3552 - San José del Cabo (624) 247-4739</Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>7pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
<LineHeight>1pt</LineHeight>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox4</rd:DefaultName>
<Top>10.55218cm</Top>
<Left>0.28679cm</Left>
<Height>2.03224cm</Height>
<Width>20.79751cm</Width>
<ZIndex>13</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox9"> <Textbox Name="Textbox9">
<CanGrow>true</CanGrow> <CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether> <KeepTogether>true</KeepTogether>
@@ -2251,11 +2141,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox5</rd:DefaultName> <rd:DefaultName>Textbox5</rd:DefaultName>
<Top>14.13159cm</Top> <Top>14.60784cm</Top>
<Left>0.31554cm</Left> <Left>0.31554cm</Left>
<Height>0.05496cm</Height> <Height>0.05496cm</Height>
<Width>20.88652cm</Width> <Width>20.88652cm</Width>
<ZIndex>14</ZIndex> <ZIndex>13</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2309,7 +2199,7 @@
<Left>17.15637cm</Left> <Left>17.15637cm</Left>
<Height>0.64028cm</Height> <Height>0.64028cm</Height>
<Width>3.90165cm</Width> <Width>3.90165cm</Width>
<ZIndex>15</ZIndex> <ZIndex>14</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2472,11 +2362,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox4</rd:DefaultName> <rd:DefaultName>Textbox4</rd:DefaultName>
<Top>14.29238cm</Top> <Top>14.76863cm</Top>
<Left>0.22954cm</Left> <Left>0.22954cm</Left>
<Height>2.44366cm</Height> <Height>2.44366cm</Height>
<Width>15.5106cm</Width> <Width>15.5106cm</Width>
<ZIndex>16</ZIndex> <ZIndex>15</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2507,11 +2397,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox19</rd:DefaultName> <rd:DefaultName>Textbox19</rd:DefaultName>
<Top>5.61303in</Top> <Top>5.80053in</Top>
<Left>6.24204in</Left> <Left>6.24204in</Left>
<Height>0.17708in</Height> <Height>0.17708in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>17</ZIndex> <ZIndex>16</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2542,11 +2432,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox19</rd:DefaultName> <rd:DefaultName>Textbox19</rd:DefaultName>
<Top>5.8055in</Top> <Top>5.993in</Top>
<Left>6.24203in</Left> <Left>6.24203in</Left>
<Height>0.17966in</Height> <Height>0.17966in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>18</ZIndex> <ZIndex>17</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2577,11 +2467,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox19</rd:DefaultName> <rd:DefaultName>Textbox19</rd:DefaultName>
<Top>6.00449in</Top> <Top>6.19199in</Top>
<Left>6.24203in</Left> <Left>6.24203in</Left>
<Height>0.18819in</Height> <Height>0.18819in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>19</ZIndex> <ZIndex>18</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2612,11 +2502,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox19</rd:DefaultName> <rd:DefaultName>Textbox19</rd:DefaultName>
<Top>6.21074in</Top> <Top>6.39824in</Top>
<Left>6.25245in</Left> <Left>6.25245in</Left>
<Height>0.17119in</Height> <Height>0.17119in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>20</ZIndex> <ZIndex>19</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2648,11 +2538,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox19</rd:DefaultName> <rd:DefaultName>Textbox19</rd:DefaultName>
<Top>6.40137in</Top> <Top>6.58887in</Top>
<Left>6.26287in</Left> <Left>6.26287in</Left>
<Height>0.19596in</Height> <Height>0.19596in</Height>
<Width>0.94607in</Width> <Width>0.94607in</Width>
<ZIndex>21</ZIndex> <ZIndex>20</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2684,11 +2574,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox42</rd:DefaultName> <rd:DefaultName>Textbox42</rd:DefaultName>
<Top>5.61303in</Top> <Top>5.79903in</Top>
<Left>7.18811in</Left> <Left>7.18811in</Left>
<Height>0.17708in</Height> <Height>0.17708in</Height>
<Width>0.98426in</Width> <Width>0.98426in</Width>
<ZIndex>22</ZIndex> <ZIndex>21</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2719,11 +2609,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox42</rd:DefaultName> <rd:DefaultName>Textbox42</rd:DefaultName>
<Top>5.8055in</Top> <Top>5.9915in</Top>
<Left>7.18811in</Left> <Left>7.18811in</Left>
<Height>0.17966in</Height> <Height>0.17966in</Height>
<Width>0.98425in</Width> <Width>0.98425in</Width>
<ZIndex>23</ZIndex> <ZIndex>22</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2754,11 +2644,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox42</rd:DefaultName> <rd:DefaultName>Textbox42</rd:DefaultName>
<Top>6.00449in</Top> <Top>6.19049in</Top>
<Left>7.19853in</Left> <Left>7.19853in</Left>
<Height>0.18819in</Height> <Height>0.18819in</Height>
<Width>0.98425in</Width> <Width>0.98425in</Width>
<ZIndex>24</ZIndex> <ZIndex>23</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2790,11 +2680,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox42</rd:DefaultName> <rd:DefaultName>Textbox42</rd:DefaultName>
<Top>6.21074in</Top> <Top>6.39674in</Top>
<Left>7.19853in</Left> <Left>7.19853in</Left>
<Height>0.17119in</Height> <Height>0.17119in</Height>
<Width>0.98425in</Width> <Width>0.98425in</Width>
<ZIndex>25</ZIndex> <ZIndex>24</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2826,11 +2716,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox42</rd:DefaultName> <rd:DefaultName>Textbox42</rd:DefaultName>
<Top>6.40137in</Top> <Top>6.58737in</Top>
<Left>7.20895in</Left> <Left>7.20895in</Left>
<Height>0.19596in</Height> <Height>0.19596in</Height>
<Width>0.98425in</Width> <Width>0.98425in</Width>
<ZIndex>26</ZIndex> <ZIndex>25</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2856,11 +2746,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox5</rd:DefaultName> <rd:DefaultName>Textbox5</rd:DefaultName>
<Top>16.93361cm</Top> <Top>17.40986cm</Top>
<Left>0.1428cm</Left> <Left>0.1428cm</Left>
<Height>0.05496cm</Height> <Height>0.05496cm</Height>
<Width>20.88652cm</Width> <Width>20.88652cm</Width>
<ZIndex>27</ZIndex> <ZIndex>26</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2880,7 +2770,7 @@
<Left>1.21932cm</Left> <Left>1.21932cm</Left>
<Height>2.413cm</Height> <Height>2.413cm</Height>
<Width>2.75323cm</Width> <Width>2.75323cm</Width>
<ZIndex>28</ZIndex> <ZIndex>27</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2937,7 +2827,7 @@
<Left>1.22666cm</Left> <Left>1.22666cm</Left>
<Height>0.62233cm</Height> <Height>0.62233cm</Height>
<Width>9.17089cm</Width> <Width>9.17089cm</Width>
<ZIndex>29</ZIndex> <ZIndex>28</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -2974,11 +2864,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox1</rd:DefaultName> <rd:DefaultName>Textbox1</rd:DefaultName>
<Top>9.92663cm</Top> <Top>9.72009cm</Top>
<Left>10.53866cm</Left> <Left>10.83734cm</Left>
<Height>0.64039cm</Height> <Height>0.64039cm</Height>
<Width>9.53276cm</Width> <Width>9.53276cm</Width>
<ZIndex>30</ZIndex> <ZIndex>29</ZIndex>
<Visibility> <Visibility>
<Hidden>=IIF((Sum(IIF(UCase(Fields!Clasificacion.Value) = "AJUSTE" , 1, 0), "DsOC") &gt; 0),false,true)</Hidden> <Hidden>=IIF((Sum(IIF(UCase(Fields!Clasificacion.Value) = "AJUSTE" , 1, 0), "DsOC") &gt; 0),false,true)</Hidden>
</Visibility> </Visibility>
@@ -3027,7 +2917,7 @@
<Left>1.21932cm</Left> <Left>1.21932cm</Left>
<Height>1.32415cm</Height> <Height>1.32415cm</Height>
<Width>19.15078cm</Width> <Width>19.15078cm</Width>
<ZIndex>31</ZIndex> <ZIndex>30</ZIndex>
<Visibility> <Visibility>
<Hidden>=IIF((Sum(IIF(Fields!CveClasificacion.Value = 20775,1,0), "DsOC") = 0) and (Sum(IIF(Fields!CveClasificacion.Value = 20774,1,0), "DsOC") &gt; 0),false,true)</Hidden> <Hidden>=IIF((Sum(IIF(Fields!CveClasificacion.Value = 20775,1,0), "DsOC") = 0) and (Sum(IIF(Fields!CveClasificacion.Value = 20774,1,0), "DsOC") &gt; 0),false,true)</Hidden>
</Visibility> </Visibility>
@@ -3069,7 +2959,7 @@
<Left>1.21932cm</Left> <Left>1.21932cm</Left>
<Height>1.05791cm</Height> <Height>1.05791cm</Height>
<Width>19.15078cm</Width> <Width>19.15078cm</Width>
<ZIndex>32</ZIndex> <ZIndex>31</ZIndex>
<Visibility> <Visibility>
<Hidden>=IIF((Sum(IIF(Fields!CveClasificacion.Value = 20775,1,0), "DsOC") &gt; 0),false,true)</Hidden> <Hidden>=IIF((Sum(IIF(Fields!CveClasificacion.Value = 20775,1,0), "DsOC") &gt; 0),false,true)</Hidden>
</Visibility> </Visibility>
@@ -3106,11 +2996,11 @@
</Paragraph> </Paragraph>
</Paragraphs> </Paragraphs>
<rd:DefaultName>Textbox4</rd:DefaultName> <rd:DefaultName>Textbox4</rd:DefaultName>
<Top>13.6904cm</Top> <Top>14.16665cm</Top>
<Left>0.20852cm</Left> <Left>0.20852cm</Left>
<Height>0.40655cm</Height> <Height>0.40655cm</Height>
<Width>12.88812cm</Width> <Width>12.88812cm</Width>
<ZIndex>33</ZIndex> <ZIndex>32</ZIndex>
<Style> <Style>
<Border> <Border>
<Style>None</Style> <Style>None</Style>
@@ -3121,21 +3011,6 @@
<PaddingBottom>2pt</PaddingBottom> <PaddingBottom>2pt</PaddingBottom>
</Style> </Style>
</Textbox> </Textbox>
<Image Name="Image2">
<Source>Embedded</Source>
<Value>LogoLlantas1</Value>
<Sizing>FitProportional</Sizing>
<Top>12.6957cm</Top>
<Left>0.22461cm</Left>
<Height>0.85359cm</Height>
<Width>20.86494cm</Width>
<ZIndex>34</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
</Style>
</Image>
<Rectangle Name="Rectangle5"> <Rectangle Name="Rectangle5">
<ReportItems> <ReportItems>
<Textbox Name="Textbox41"> <Textbox Name="Textbox41">
@@ -3587,11 +3462,11 @@
</Tablix> </Tablix>
</ReportItems> </ReportItems>
<KeepTogether>true</KeepTogether> <KeepTogether>true</KeepTogether>
<Top>20.69313cm</Top> <Top>21.16938cm</Top>
<Left>0.1428cm</Left> <Left>0.1428cm</Left>
<Height>2.25247cm</Height> <Height>2.25247cm</Height>
<Width>20.89818cm</Width> <Width>20.89818cm</Width>
<ZIndex>35</ZIndex> <ZIndex>33</ZIndex>
<Visibility> <Visibility>
<Hidden>=Microsoft.VisualBasic.Interaction.IIF(First(Fields!SerieFolio.Value, "DataSet4") &lt;&gt; "", False, True)</Hidden> <Hidden>=Microsoft.VisualBasic.Interaction.IIF(First(Fields!SerieFolio.Value, "DataSet4") &lt;&gt; "", False, True)</Hidden>
</Visibility> </Visibility>
@@ -3601,14 +3476,299 @@
</Border> </Border>
</Style> </Style>
</Rectangle> </Rectangle>
<Rectangle Name="Rectangle1">
<ReportItems>
<Textbox Name="Textbox60">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>DESCARGA NUESTRA NUEVA APLICACIÓN</Value>
<Style>
<FontFamily>CALIbri</FontFamily>
<FontSize>12pt</FontSize>
<FontWeight>Bold</FontWeight>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox60</rd:DefaultName>
<Top>0cm</Top>
<Left>0.01593cm</Left>
<Height>0.58237cm</Height>
<Width>20.96485cm</Width>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox61">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Puedes encontrarla en Appstore o Google play </Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
<Color>#000000</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
<Paragraph>
<TextRuns>
<TextRun>
<Value>como Econollantas:</Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
<Color>#000000</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox60</rd:DefaultName>
<Top>0cm</Top>
<Left>0.0506cm</Left>
<Height>1.49135cm</Height>
<Width>5.37042cm</Width>
<ZIndex>1</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox62">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Con tu aplicación el beneficio más</Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
<Color>#000000</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
<Paragraph>
<TextRuns>
<TextRun>
<Value>importante es poder escanear el código QR de tu póliza y siempre traerla contigo para </Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
<Color>#000000</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
<Paragraph>
<TextRuns>
<TextRun>
<Value>atenderte</Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
<Color>#000000</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
<Paragraph>
<TextRuns>
<TextRun>
<Value>MÁS RÁPIDO Y MEJOR.</Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
<Color>#000000</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox60</rd:DefaultName>
<Top>0.6882cm</Top>
<Left>7.25125cm</Left>
<Height>1.98084cm</Height>
<Width>6.56105cm</Width>
<ZIndex>2</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Textbox Name="Textbox63">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Una vez descargada la App, podras agregar tu póliza escaneando el código QR</Value>
<Style>
<FontStyle>Normal</FontStyle>
<FontFamily>Calibri</FontFamily>
<FontSize>9pt</FontSize>
<FontWeight>Normal</FontWeight>
<TextDecoration>None</TextDecoration>
<Color>#000000</Color>
</Style>
</TextRun>
</TextRuns>
<Style>
<TextAlign>Center</TextAlign>
</Style>
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox60</rd:DefaultName>
<Top>0cm</Top>
<Left>14.64769cm</Left>
<Height>1.46939cm</Height>
<Width>6.32076cm</Width>
<ZIndex>3</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
<Image Name="QRCodeDescarga">
<Source>Database</Source>
<Value>=System.Convert.FromBase64String(Parameters!QRDescarga.Value)</Value>
<MIMEType>image/png</MIMEType>
<Sizing>FitProportional</Sizing>
<Top>0.43341in</Top>
<Left>6.67293in</Left>
<Height>0.6035in</Height>
<Width>0.78275in</Width>
<ZIndex>4</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
</Style>
</Image>
<Image Name="Image6">
<Source>Embedded</Source>
<Value>ID3</Value>
<Sizing>FitProportional</Sizing>
<Top>1.7033cm</Top>
<Left>0.09579cm</Left>
<Height>0.93046cm</Height>
<Width>5.37042cm</Width>
<ZIndex>5</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
</Style>
</Image>
</ReportItems>
<KeepTogether>true</KeepTogether>
<Top>10.40145cm</Top>
<Left>0.1258cm</Left>
<Height>2.92445cm</Height>
<Width>20.98078cm</Width>
<ZIndex>34</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
</Style>
</Rectangle>
<Image Name="Image2">
<Source>Embedded</Source>
<Value>logoLlantas21</Value>
<Sizing>FitProportional</Sizing>
<Top>13.33295cm</Top>
<Left>0.22931cm</Left>
<Height>0.85359cm</Height>
<Width>20.86494cm</Width>
<ZIndex>35</ZIndex>
<Style>
<Border>
<Style>None</Style>
</Border>
</Style>
</Image>
</ReportItems> </ReportItems>
<Height>22.9456cm</Height> <Height>23.5806cm</Height>
<Style /> <Style />
</Body> </Body>
<Width>21.23237cm</Width> <Width>21.23237cm</Width>
<Page> <Page>
<PageFooter> <PageFooter>
<Height>0.52388cm</Height> <Height>0.51506cm</Height>
<PrintOnFirstPage>true</PrintOnFirstPage> <PrintOnFirstPage>true</PrintOnFirstPage>
<PrintOnLastPage>true</PrintOnLastPage> <PrintOnLastPage>true</PrintOnLastPage>
<ReportItems> <ReportItems>
@@ -4550,6 +4710,59 @@ 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</ImageData> oblJCKGFtcdoBG36Gzp/B4F8/tY4CODv6gjwrsD5i+R/Cf7tORMqxgAHVrBauZ4gDVsE/HRTktz6LAUmeKBRQz81kspZRDKNBH18z8MWHMKSS4ewYPkilI5MwEMtuhEvFanpqUiIzIJ8kbmQjSaBnjOw40SkqFlidwvkVLfq0WA3vsSF0vz0sBQD4zMUyxT8n8C1998HlQ/gX6ETXu5KuCqdvyrwnzD//2ugQLj+2t1orsF69bTdRdAzAlrANQe0hgdOdw4kLBtT8kXDfggZwnVDyaVr5PnahsU1Lm15t1hQxgrYv0vRr0q4tT6TceDjqA5HU2/eTzM8h+DzaI5g6cIiH0SSIa591jmj5Jyhi6gr68j5PLiYEqx88IExx5sls7lqZeBUQjzTD8kpbPYF5BhQ0F3ZzqApcMaB41cl9advMrg69eOX07+tXXKOjksMUQ855bhgOJ6lmmyUJZBcXGqQIp8p9FSn4ylEwSDw/wzk/AoyDhgJM+6MJ+Mlo3bLImTQJo8ZEQPhStUISGtcBadWAOD/A/iTyYq8ZFetAAAAAElFTkSuQmCC</ImageData>
</EmbeddedImage> </EmbeddedImage>
<EmbeddedImage Name="logoLlantas21">
<MIMEType>image/png</MIMEType>
<ImageData>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</ImageData>
</EmbeddedImage>
</EmbeddedImages> </EmbeddedImages>
<Language>es-MX</Language> <Language>es-MX</Language>
<ConsumeContainerWhitespace>true</ConsumeContainerWhitespace> <ConsumeContainerWhitespace>true</ConsumeContainerWhitespace>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -790,17 +790,12 @@ Partial Class Contratos_FacturacionMasiva
End If End If
importeMovimiento = 0 importeMovimiento = 0
Case 13 'Iva por Trasladar Case 13 'Iva por Trasladar
importeMovimiento = ObjFactura.IVA * ValorMultiplicador importeMovimiento = ObjFactura.IVA * ValorMultiplicador
importeMX = Math.Round(importeMovimiento, 2) * tipoCambio * Multiplicador importeMX = Math.Round(importeMovimiento, 2) * tipoCambio * Multiplicador
FechaMovimiento = ObjFactura.FechaPago FechaMovimiento = ObjFactura.FechaPago
IdCtaContable = UsuarioActual.Empresa.IdCuentaIVAxTrasladar
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}" If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
End Select End Select
If importeMovimiento <> 0 Then If importeMovimiento <> 0 Then

View File

@@ -696,7 +696,8 @@
<div class="row rowpadding" > <div class="row rowpadding" >
<label class="col-md-3">Cliente:</label> <label class="col-md-3">Cliente:</label>
<div class="col-md-9"> <div class="col-md-9">
<asp:DropDownList ID="DdlClienteCarta" AutoPostBack="true" OnSelectedIndexChanged="DdlClienteCarta_SelectedIndexChanged" AppendDataBoundItems="true" runat="server" CssClass="form-control input-sm select2me" DataTextField="NombreComercial" DataValueField="CveCliente"></asp:DropDownList> <%-- <ads:DropDownLost ID="s" AutoPostBack="true" OnSelectedIndexChanged="DdlClienteCarta_SelectedIndexChanged" AppendDataBoundItems="true" runat="server" CssClass="form-control input-sm select2me" DataTextField="NombreComercial" DataValueField="CveCliente"></ads:DropDownLost>--%>
<ADS:Dropdownlost CssClassDdl="select2me" ID="DdlClienteCarta" Width="100%" data-metodo="getcliente" Onselectedindexchange="DdlClienteCarta_SelectedIndexChanged" runat="server" DataTextField="NombreComercial" DataValueField="CveCliente" CssStyle="width: 100%;"></ADS:Dropdownlost>
</div> </div>
</div> </div>
<div class="row rowpadding" > <div class="row rowpadding" >

View File

@@ -5955,10 +5955,10 @@ Partial Class Inventarios_EntradasSalidas
End Sub End Sub
Private Sub CargaClientesCarta() Private Sub CargaClientesCarta()
DdlClienteCarta.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa) 'DdlClienteCarta.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa)
DdlClienteCarta.DataBind() 'DdlClienteCarta.DataBind()
DdlClienteCarta.Items.Insert(0, New ListItem("Seleccione", "-1")) 'DdlClienteCarta.Items.Insert(0, New ListItem("Seleccione", "-1"))
DdlClienteCarta.SelectedValue = "-1" DdlClienteCarta.SelectedValue = "-1"
End Sub End Sub

View File

@@ -867,7 +867,6 @@ Partial Class Inventarios_Remanufactura
importeMovimiento = ObjFactura.IVA * ValorMultiplicador importeMovimiento = ObjFactura.IVA * ValorMultiplicador
importeMX = Math.Round(importeMovimiento, 2) * tipoCambio * Multiplicador importeMX = Math.Round(importeMovimiento, 2) * tipoCambio * Multiplicador
FechaMovimiento = ObjFactura.FechaPago FechaMovimiento = ObjFactura.FechaPago
IdCtaContable = UsuarioActual.Empresa.IdCuentaIVAxTrasladar
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}" If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
Case 38 'IEPS por Trasladar Case 38 'IEPS por Trasladar

View File

@@ -466,7 +466,7 @@
<asp:TemplateField ItemStyle-Width="93px" ItemStyle-HorizontalAlign ="Right"> <asp:TemplateField ItemStyle-Width="93px" ItemStyle-HorizontalAlign ="Right">
<ItemTemplate> <ItemTemplate>
<asp:Literal runat="server" Text='<%# Eval("Cantidad") %>' ID="ltlCantidad"></asp:Literal> <asp:Literal runat="server" Text='<%# Eval("Cantidad") %>' ID="ltlCantidad"></asp:Literal>
<asp:TextBox runat="server" ID="TxtCantidad2" Text='<%# Eval("Cantidad", "{0:###,###,###,##0.##}") %>' Width="50px" Visible="false"></asp:TextBox> <asp:TextBox runat="server" ID="TxtCantidad2" Text='<%# Eval("Cantidad", "{0:###,###,###,##0.######}") %>' Width="50px" Visible="false"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="SoloNumerosCantidadF" runat="server" TargetControlID="TxtCantidad2" FilterType="Numbers,custom" ValidChars="." /> <ajax:FilteredTextBoxExtender ID="SoloNumerosCantidadF" runat="server" TargetControlID="TxtCantidad2" FilterType="Numbers,custom" ValidChars="." />
</ItemTemplate> </ItemTemplate>
</asp:TemplateField> </asp:TemplateField>

View File

@@ -972,7 +972,7 @@ Partial Class Inventarios_TraspasoAlmacen
If Existencia < 0 Then If Existencia < 0 Then
ErrorExistencia = True ErrorExistencia = True
TextoExistencia.AppendFormat(" {1},", gvr.DataKey("No"), gvr.DataKey("CvePS"), If(gvr.DataKey("Serie").ToString().Trim().Length > 0, $" &nbsp; Serie: <b>{gvr.DataKey("Serie")}</b>", ""), (Existencia + gvr.FCTextBox("TxtCantidad2").Text.ToEntero), MsgAdicional) TextoExistencia.AppendFormat("-<b>#{0}</b> {1} {2} &nbsp; Existencia: <b>{3}</b>{4}<br/>", gvr.DataKey("No"), gvr.DataKey("PS"), If(gvr.DataKey("Serie").ToString().Trim().Length > 0, $" &nbsp; Serie: <b>{gvr.DataKey("Serie")}</b>", ""), (Existencia + gvr.FCTextBox("TxtCantidad2").Text.ToDecimal()), MsgAdicional)
End If End If
Next Next

View File

@@ -13,7 +13,7 @@
background-color: #e5e5e5; background-color: #e5e5e5;
} }
.page-sidebar-menu .dnone { .page-sidebar-menu .dnone {
display: none; display: none !important;
} }
.table-striped > tbody > tr:nth-of-type(odd).ADSRow, .table-striped > tbody > tr:nth-of-type(odd).ADSRow,
table > tbody > tr.ADSRow > td, table.table > tbody > tr.ADSRow > td, table > tbody > tr.ADSRow > td, table.table > tbody > tr.ADSRow > td,

View File

@@ -81,6 +81,11 @@
</asp:TemplateField> </asp:TemplateField>
<asp:BoundField DataField="Concepto" HeaderText="Concepto" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Left" /> <asp:BoundField DataField="Concepto" HeaderText="Concepto" ItemStyle-Width="25%" ItemStyle-HorizontalAlign="Left" />
<asp:BoundField DataField="TipoD" HeaderText="Tipo" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left" /> <asp:BoundField DataField="TipoD" HeaderText="Tipo" ItemStyle-Width="10%" ItemStyle-HorizontalAlign="Left" />
<asp:TemplateField HeaderText="Contabiliza" ItemStyle-Width="5%">
<ItemTemplate>
<asp:Literal ID="LtlContab" runat="server" Text='<%# Eval("Contabiliza") %>' ></asp:Literal>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Estado" HeaderText="Estado" ItemStyle-Width="7%" ItemStyle-HorizontalAlign="Left" /> <asp:BoundField DataField="Estado" HeaderText="Estado" ItemStyle-Width="7%" ItemStyle-HorizontalAlign="Left" />
</Columns> </Columns>
</asp:GridView> </asp:GridView>

View File

@@ -277,7 +277,7 @@
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
<div class=""> <div class="">
<asp:Label runat="server" Text="Concepto contable Pasivo" AssociatedControlID="DdlCtaContablePasivo"></asp:Label> <asp:Label runat="server" Text="Concepto contable Pasivo" AssociatedControlID="DdlConceptoContablePasivo"></asp:Label>
<asp:DropDownList ID="DdlConceptoContablePasivo" runat="server" AppendDataBoundItems="True" DataTextField="ConceptoContable" DataValueField="CveConceptoContable" Class="form-control select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList> <asp:DropDownList ID="DdlConceptoContablePasivo" runat="server" AppendDataBoundItems="True" DataTextField="ConceptoContable" DataValueField="CveConceptoContable" Class="form-control select2me" Width="100%" ValidationGroup="GrpGuardar"></asp:DropDownList>
</div> </div>
</div> </div>

View File

@@ -530,7 +530,7 @@ public partial class Nomina_CatConcepto : ClsPaginas
{ {
DdlCtaContableB.SelectedValueExist(drow["CveCuentaB"]); DdlCtaContableB.SelectedValueExist(drow["CveCuentaB"]);
} }
if (ChkContabiliza.Checked && (DdlCtaContable.SelectedValue.ToEntero() <= 0 || (chkCtaImporteNegativoProv.Checked && DdlCtaContableB.SelectedValue.ToEntero() <= 0))) if (ChkContabiliza.Checked && (DdlConceptoContable.SelectedValue.ToEntero() <= 0 || DdlConceptoContablePasivo.SelectedValue.ToEntero() <= 0 || (chkCtaImporteNegativoProv.Checked && DdlConceptoContableB .SelectedValue.ToEntero() <= 0)))
{ {
Alert("el concepto esta marcado como contabilizable pero no estan asignadas correctamente las cuentas.", ModExtensiones.TipoMensaje.MsgAdvertencia); Alert("el concepto esta marcado como contabilizable pero no estan asignadas correctamente las cuentas.", ModExtensiones.TipoMensaje.MsgAdvertencia);
} }
@@ -627,7 +627,7 @@ public partial class Nomina_CatConcepto : ClsPaginas
string formula = TxtFormula.Text; string formula = TxtFormula.Text;
using (ClsNominas objnom = new ClsNominas()) using (ClsNominas objnom = new ClsNominas())
{ {
if (TipoFormula == 0 && !ValidaFormula(formula).Equals("")) if (false &&TipoFormula == 0 && !ValidaFormula(formula).Equals(""))
{ {
Alert("Fórmula no válida. Favor de ingresar una correcta.", ModExtensiones.TipoMensaje.MsgError); Alert("Fórmula no válida. Favor de ingresar una correcta.", ModExtensiones.TipoMensaje.MsgError);
} }

View File

@@ -156,7 +156,7 @@ Partial Class Nomina_ReportePTU
If Not IsNothing(rowc) Then If Not IsNothing(rowc) Then
CveConcepto = rowc("CveConcepto").ToString().ToEntero() CveConcepto = rowc("CveConcepto").ToString().ToEntero()
Else Else
CveConcepto = objNomina.AddConcepto("PTU", "Utilidades", "P", "", True, True, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, -1, -1, -1, 0, -1, 0, 0, 0, 0, 0, -1, 1, -1, -1, -1, -1) CveConcepto = objNomina.AddConcepto("PTU", "Utilidades", "P", "", True, True, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False, -1, -1, -1, 0, -1, 0, 0, 0, 0, 0, -1, 1, -1, -1, -1, -1, -1)
End If End If
If CveConcepto < 1 Then If CveConcepto < 1 Then
continuar = False continuar = False

View File

@@ -888,7 +888,6 @@ Partial Class Ventas_PortalCliente
importeMX = importeMX.RoundSQL() importeMX = importeMX.RoundSQL()
TCGeneral = TCVenta TCGeneral = TCVenta
IdCtaContable = UsuarioActual.Empresa.IdCuentaIVAxTrasladar
If TCVenta > 1 Then ConceptoMovimiento += $" TC:{TCVenta} ${ImporteMovimiento.FormatoNumero(2)}" If TCVenta > 1 Then ConceptoMovimiento += $" TC:{TCVenta} ${ImporteMovimiento.FormatoNumero(2)}"
Case 61 'IVA TRASLADADO Case 61 'IVA TRASLADADO
@@ -905,7 +904,6 @@ Partial Class Ventas_PortalCliente
importeMX = importeMX.RoundSQL() importeMX = importeMX.RoundSQL()
TCGeneral = TCFluctuacion TCGeneral = TCFluctuacion
IdCtaContable = UsuarioActual.Empresa.IdCuentaIVATrasladado
If TCFluctuacion > 1 Then ConceptoMovimiento += $" TC:{TCFluctuacion} ${ImporteMovimiento.FormatoNumero(2)}" If TCFluctuacion > 1 Then ConceptoMovimiento += $" TC:{TCFluctuacion} ${ImporteMovimiento.FormatoNumero(2)}"
Case 8 'RETIVA X TRASLADAR Case 8 'RETIVA X TRASLADAR
@@ -1024,7 +1022,6 @@ Partial Class Ventas_PortalCliente
importeMX = importeMX.RoundSQL() importeMX = importeMX.RoundSQL()
TCGeneral = TCVenta TCGeneral = TCVenta
IdCtaContable = UsuarioActual.Empresa.IdCuentaIEPSxTrasladar
If TCVenta > 1 Then ConceptoMovimiento += $" TC:{TCVenta} ${ImporteMovimiento.FormatoNumero(2)}" If TCVenta > 1 Then ConceptoMovimiento += $" TC:{TCVenta} ${ImporteMovimiento.FormatoNumero(2)}"
Case 39 'IEPS TRASLADADO Case 39 'IEPS TRASLADADO
@@ -1041,13 +1038,11 @@ Partial Class Ventas_PortalCliente
importeMX = importeMX.RoundSQL() importeMX = importeMX.RoundSQL()
TCGeneral = TCFluctuacion TCGeneral = TCFluctuacion
IdCtaContable = UsuarioActual.Empresa.IdCuentaIEPSTrasladado
If TCFluctuacion > 1 Then ConceptoMovimiento += $" TC:{TCFluctuacion} ${ImporteMovimiento.FormatoNumero(2)}" If TCFluctuacion > 1 Then ConceptoMovimiento += $" TC:{TCFluctuacion} ${ImporteMovimiento.FormatoNumero(2)}"
Case 64 'GANANCIA Case 64 'GANANCIA
Continue For 'SKIPEA Continue For 'SKIPEA
If CveMonedaVenta <> 1 Then If CveMonedaVenta <> 1 Then
IdCtaContable = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
If TCPago > TCVenta AndAlso CveMonedaVenta = 2 Then If TCPago > TCVenta AndAlso CveMonedaVenta = 2 Then
ImporteMovimiento = (ImportePago * TCPago) - (ImportePago * TCVenta) ImporteMovimiento = (ImportePago * TCPago) - (ImportePago * TCVenta)
ImporteMovimiento -= ((IVAVenta * PorcentajePago) * TCFluctuacion) - ((IVAVenta * PorcentajePago) * TCVenta) ImporteMovimiento -= ((IVAVenta * PorcentajePago) * TCFluctuacion) - ((IVAVenta * PorcentajePago) * TCVenta)
@@ -1062,7 +1057,6 @@ Partial Class Ventas_PortalCliente
Case 65 'PERDIDA Case 65 'PERDIDA
Continue For 'SKIPEA Continue For 'SKIPEA
If CveMonedaVenta <> 1 Then If CveMonedaVenta <> 1 Then
IdCtaContable = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
If TCPago < TCVenta AndAlso CveMonedaVenta = 2 Then If TCPago < TCVenta AndAlso CveMonedaVenta = 2 Then
ImporteMovimiento = (ImportePago * TCPago) - (ImportePago * TCVenta) ImporteMovimiento = (ImportePago * TCPago) - (ImportePago * TCVenta)
ImporteMovimiento -= ((IVAVenta * PorcentajePago) * TCFluctuacion) - ((IVAVenta * PorcentajePago) * TCVenta) ImporteMovimiento -= ((IVAVenta * PorcentajePago) * TCFluctuacion) - ((IVAVenta * PorcentajePago) * TCVenta)

View File

@@ -216,8 +216,8 @@ function buscadorMenuCaudi() {
hasmenusearch = (localStorage.getItem("HasMenu").toString() == "1") hasmenusearch = (localStorage.getItem("HasMenu").toString() == "1")
} catch (error) { }*/ } catch (error) { }*/
let idTxtMaster = "txtMasterMenu"; let idTxtMaster = "txtMasterMenu";
if ($('#' + idTxtMaster).length == 0 && hasmenusearch) { if (!($('#' + idTxtMaster).hasClass("txtMasterMenukeychange")) && hasmenusearch) {
let buscador = $('' + /*let buscador = $('' +
'<div class="sidebar-search " style="margin-top: 12px;">' + '<div class="sidebar-search " style="margin-top: 12px;">' +
' <div class="input-group">' + ' <div class="input-group">' +
' <input type="text" id="' + idTxtMaster + '" class="form-control" placeholder="Buscar...">' + ' <input type="text" id="' + idTxtMaster + '" class="form-control" placeholder="Buscar...">' +
@@ -228,21 +228,22 @@ function buscadorMenuCaudi() {
' </span>' + ' </span>' +
' </div>' + ' </div>' +
'</div>') '</div>')
$('ul#ulmenulateralmaster li.sidebar-toggler-wrapper').append(buscador); $('ul#ulmenulateralmaster li.sidebar-toggler-wrapper').append(buscador);*/
let tickBar = 0; let tickBar = 0;
let input = $('#' + idTxtMaster); let input = $('#' + idTxtMaster);
input.addClass("txtMasterMenukeychange");
let BuscarMenu = function () { let BuscarMenu = function () {
tickBar = tickBar + 1; tickBar = tickBar + 1;
tickBarnew = tickBar; tickBarnew = tickBar;
setTimeout(function () { setTimeout(function () {
if (tickBarnew == tickBar) { if (tickBarnew == tickBar) {
if (input.val() == '') { $('ul#ulmenulateralmaster li').css('display', ''); } if (input.val() == '') { $('ul#ulmenulateralmasterB li').css('display', ''); }
else { else {
$('ul#ulmenulateralmaster li:not(.sidebar-toggler-wrapper)').css('display', 'none'); $('ul#ulmenulateralmasterB li:not(.sidebar-toggler-wrapper)').css('display', 'none');
$('ul#ulmenulateralmaster li:contains("' + input.val() + '")').css('display', ''); $('ul#ulmenulateralmasterB li:contains("' + input.val() + '")').css('display', '');
$('ul#ulmenulateralmaster li > a[href="javascript:;"]:contains("' + input.val() + '")').parent().find('>ul>li').css('display', ''); $('ul#ulmenulateralmasterB li > a[href="javascript:;"]:contains("' + input.val() + '")').parent().find('>ul>li').css('display', '');
} }
} }
}, 500); }, 500);
@@ -2325,4 +2326,257 @@ function AddFunctionPS(inputProducto, inputAlmace, datos) {
GETPSALMACEN(); GETPSALMACEN();
} }
}); });
} }
/*
*
*
*
*
*
Este
Es
Un
Cambio
Grande
para
que e
el
custom
JS
Se
Refresque
solo
y
no
tengan
que
porner
el
shift F5
esta
es
la prueba e
en
el
local
host
espero que funciones
});
$(window).load(function () {
loadadscroll();
});
function AddFunctionPS(inputProducto, inputAlmace, datos) {
let inProducto = inputProducto;
let inAlmace = inputAlmace;
let PSModal = $('<div class="modal ADS fade msProductos" role="dialog"></div>');
let content = $('<div class="modal-content"></div>');
let Mheader = $('<div class="modal-header "><button type="button" class="close" data-dismiss="modal">×</button><h4 class="modal-title">Productos ó Servicios</h4></div>');
let Mbody = $('<div class="modal-body"></div>');
let MFotter = $('<div class="modal-footer"><div>');
let Minput = $('<input type="text" class="form-control input-sm" placeholder="Buscar" >');
let buscador = $('<div class="input-group"></div>');
let lupa = $('<a href="javascript:;" class="btn submit"><i class="icon-magnifier"></i></a>');
let divResult = $('<div class="result"></div>');
let divPS = $('<div class=" divPS"></div>');
let divAlmacen = $('<div class=" divAlmacen"></div>');
let style = '';
let mcssclass = '.msProductos ';
let newline = '\n\r';
{
style = style.concat(
'<style>', newline,
mcssclass, ' .search-form {', newline,
' margin: 10px 10px 0 0;', newline,
' display: inline-block;', newline,
' width: 350px !important; ', newline,
'}', newline,
mcssclass, ' .search-form .input-group {', newline,
' border-radius: 25px !important; ', newline,
'}', newline,
mcssclass, ' .search-form .input-group .form-control {', newline,
' border: 0;', newline,
' background: transparent !important; ', newline,
' text-indent: 0;', newline,
' padding: 6px 12px;', newline,
' margin: 0; ', newline,
' cursor: text;', newline,
'}', newline,
mcssclass, ' .search-form .input-group .input-group-btn {', newline,
' padding: 0;', newline,
' margin: 0; ', newline,
'}', newline,
mcssclass, ' .search-form .input-group .input-group-btn .btn.submit {', newline,
' margin: 3px 7px 0 0;', newline,
' padding: 0;', newline,
' background: none;', newline,
' display: block;', newline,
'}', newline,
mcssclass, ' .search-form .input-group .input-group-btn .btn.submit > i {', newline,
' font-size: 13px;', newline,
'}', newline,
mcssclass, '.search-form {', newline,
' background: #FFFFFF; }', newline,
mcssclass, '.search-form .input-group {', newline,
' border: 1px solid #ced6de; }', newline,
mcssclass, '.search-form .input-group:hover {', newline,
' border-color: #bfcad4; }', newline,
mcssclass, '.search-form .input-group .form-control {', newline,
' color: #333; }', newline,
mcssclass, '.search-form .input-group .form-control::-moz-placeholder {', newline,
' color: #cbd4dc;', newline,
' opacity: 1; }', newline,
mcssclass, '.search-form .input-group .form-control:-ms-input-placeholder {', newline,
' color: #cbd4dc; }', newline,
mcssclass, '.search-form .input-group .form-control::-webkit-input-placeholder {', newline,
' color: #cbd4dc; }', newline,
mcssclass, '.search-form .input-group .input-group-btn .btn.submit > i {', newline,
' color: #ced6de; }', newline,
mcssclass, ' .list-group{ cursor:pointer;}', newline,
mcssclass, ' .item-almacen .col-sm-2{ text-align:right;padding:0px;}', newline,
mcssclass, ' .item-almacen { padding: 4px;border-bottom: 1px solid #aaa;}', newline,
mcssclass, ' .divPS{ height:500px; overflow: auto;}', newline,
mcssclass, ' .divAlmacen{ background-color:#eee; height:500px; overflow: auto;}', newline,
mcssclass, ' .PStitulo{ background-color:#eee; font-weight: 800;font-size: 14px;padding-top: 6px; padding-bottom: 6px; border-bottom: 1px solid #aaa;}', newline,
'</style>');
}
let myTick = 0;
let textoOld = '';
let LimpiarAlmacen = function () {
divAlmacen.empty();
}
let Limpiarresultado = function () {
divPS.empty();
LimpiarAlmacen();
}
let buscaPSTimer = function (texto) {
let Tick = myTick + 1;
myTick = Tick;
setTimeout(
function () {
if (myTick == Tick) {
if (textoOld != texto) {
buscaPS(texto);
}
textoOld = texto
}
}, 500);
};
let buscaPS = function (texto) {
myTick = 0;
if (datos == null) {
datos = { Name: texto, metodo: 'getps' }
}
let sdata = datos;
sdata.Name = texto;
sdata.metodo = 'getps';
Limpiarresultado();
if (texto.length > 0) {
$.ajax({
url: "/Ashx/SIGWeb.ashx",
data: sdata
}).done(function (data) {
//console.log(data)
if (data.length > 0) {
data = JSON.parse(data)
let dul = $('<ul class="list-group"></ul>')
for (i = 0; i < data.length; i++) {
dul.append('<li class="list-group-item" data-cve="' + data[i].id + '">' + data[i].text + '</li>');
}
divPS.append(dul);
}
});
}
textoOld = texto;
};
let GETPSALMACEN = function () {
PSModal.empty();
buscador.empty();
divResult.empty();
Mbody.empty();
content.append(Mheader);
content.append(Mbody);
content.append(MFotter);
buscador.append(Minput);
buscador.append($('<span class="input-group-btn"></span>').append(lupa));
divResult.append('<div class="row PStitulo"><div class=" col-sm-6 text-center">Productos</div><div class=" col-sm-1 text-left" style="padding: 0px;">Existencia</div><div class=" col-sm-5 text-left">Almacen</div></div>')
divResult.append($('<div class="row"></div>').append($('<div class=" col-sm-6 " style="padding: 0px;" ></div>').append(divPS)).append($('<div class=" col-sm-6 " style="padding: 0px;"></div>').append(divAlmacen)))
Mbody.append($('<div class="search-form"></div>').append(buscador));
Mbody.append(divResult);
PSModal.append($('<div class="modal-dialog modal-lg"></div>').append(content));
PSModal.modal();
};
lupa.bind("click", function () {
buscaPS(Minput.val());
});
Minput.bind("copy paste cut", function () {
buscaPS(Minput.val());
});
Minput.bind("keyup ", function (e) {
if (e.keyCode == 13) {
buscaPS(Minput.val());
e.preventDefault();
} else {
buscaPSTimer(Minput.val());
}
});
PSModal.on('click', '.list-group-item ', function (e) {
let $this = $(this).hasClass('list-group-item') ? $(this) : $(this).closest('.list-group-item');
let cve = $this.data('cve');
let text = $this.text();
let datos = { cveps: cve, metodo: 'getpsalmacen' }
$(PSModal.find('.active')).removeClass('active')
$this.addClass('active');
//console.log('' + cve + ' : ' + text)
LimpiarAlmacen();
$.ajax({
url: "/Ashx/SIGWeb.ashx",
data: datos
}).done(function (data) {
//console.log(data)
LimpiarAlmacen();
if (data.length > 0) {
data = JSON.parse(data)
for (i = 0; i < data.length; i++) {
divAlmacen.append('<div class="row item-almacen" data-cve="' + data[i].id + '"><div class=" col-sm-2 " >' + data[i].existencia + '</div><div class=" col-sm-10 " >' + data[i].almacen + '</div></div>');
}
}
});
});
PSModal.on('shown.bs.modal', function () {
Minput.focus();
});
PSModal.on('click', '.item-almacen', function (e) {
let $this = $(this).hasClass('item-almacen') ? $(this) : $(this).closest('.item-almacen');
let cveps = $(PSModal.find('.active')).data('cve');
let cveAlmacen = $this.data('cve');
if ($(inputProducto).length > 0) { $(inputProducto).val(cveps) }
if ($(inputAlmace).length > 0) { $(inputAlmace).val(cveAlmacen) }
PSModal.modal('hide');
});
$('body').append(PSModal);
$('head').append($(style));
$("body").keyup(function (e) {
if (e.keyCode == 113) {
GETPSALMACEN();
}
});
*
*
*
*
*
*
*
*
*
*/

View File

@@ -340,93 +340,93 @@ Partial Class Sistemas_Empresa
CargaCuentasContables() CargaCuentasContables()
CargaDDLs() CargaDDLs()
Dim Row As DataRow 'Dim Row As DataRow
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVAxAcreditar.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVAxAcreditar.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlIVAxAcreditar.Items.Add(New ListItem(Row("CtaCodigo").ToString, .IdCuentaIVAxAcreditar.ToString)) ' DdlIVAxAcreditar.Items.Add(New ListItem(Row("CtaCodigo").ToString, .IdCuentaIVAxAcreditar.ToString))
DdlIVAxAcreditar.SelectedValue = .IdCuentaIVAxAcreditar.ToString ' DdlIVAxAcreditar.SelectedValue = .IdCuentaIVAxAcreditar.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVAAcreditable.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVAAcreditable.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlIVAAcreditable.Items.Add(New ListItem(Row("CtaCodigo").ToString, .IdCuentaIVAAcreditable.ToString)) ' DdlIVAAcreditable.Items.Add(New ListItem(Row("CtaCodigo").ToString, .IdCuentaIVAAcreditable.ToString))
DdlIVAAcreditable.SelectedValue = .IdCuentaIVAAcreditable.ToString ' ' DdlIVAAcreditable.SelectedValue = .IdCuentaIVAAcreditable.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVAxTrasladar.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVAxTrasladar.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlIVAxTrasladar.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVAxTrasladar.ToString))("CtaCodigo").ToString, .IdCuentaIVAxTrasladar.ToString)) ' DdlIVAxTrasladar.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVAxTrasladar.ToString))("CtaCodigo").ToString, .IdCuentaIVAxTrasladar.ToString))
DdlIVAxTrasladar.SelectedValue = .IdCuentaIVAxTrasladar.ToString ' DdlIVAxTrasladar.SelectedValue = .IdCuentaIVAxTrasladar.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVATrasladado.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVATrasladado.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlIVATrasladado.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVATrasladado.ToString))("CtaCodigo").ToString, .IdCuentaIVATrasladado.ToString)) ' DdlIVATrasladado.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIVATrasladado.ToString))("CtaCodigo").ToString, .IdCuentaIVATrasladado.ToString))
DdlIVATrasladado.SelectedValue = .IdCuentaIVATrasladado.ToString ' DdlIVATrasladado.SelectedValue = .IdCuentaIVATrasladado.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaRetIVACirculacion.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaRetIVACirculacion.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlIVARetenciones.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaRetIVACirculacion.ToString))("CtaCodigo").ToString, .IdCuentaRetIVACirculacion.ToString)) ' DdlIVARetenciones.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaRetIVACirculacion.ToString))("CtaCodigo").ToString, .IdCuentaRetIVACirculacion.ToString))
DdlIVARetenciones.SelectedValue = .IdCuentaRetIVACirculacion.ToString ' DdlIVARetenciones.SelectedValue = .IdCuentaRetIVACirculacion.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaRetISRCirculacion.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaRetISRCirculacion.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlISRCirculacion.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaRetISRCirculacion.ToString))("CtaCodigo").ToString, .IdCuentaRetISRCirculacion.ToString)) ' DdlISRCirculacion.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaRetISRCirculacion.ToString))("CtaCodigo").ToString, .IdCuentaRetISRCirculacion.ToString))
DdlISRCirculacion.SelectedValue = .IdCuentaRetISRCirculacion.ToString ' DdlISRCirculacion.SelectedValue = .IdCuentaRetISRCirculacion.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaPerdidaCambiaria.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaPerdidaCambiaria.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlCuentaPerdidaCambiaria.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaPerdidaCambiaria.ToString))("CtaCodigo").ToString, .IdCuentaPerdidaCambiaria.ToString)) ' DdlCuentaPerdidaCambiaria.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaPerdidaCambiaria.ToString))("CtaCodigo").ToString, .IdCuentaPerdidaCambiaria.ToString))
DdlCuentaPerdidaCambiaria.SelectedValue = .IdCuentaPerdidaCambiaria.ToString ' DdlCuentaPerdidaCambiaria.SelectedValue = .IdCuentaPerdidaCambiaria.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaGananciaCambiaria.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaGananciaCambiaria.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DddlCuentaGananciaCambiaria.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaGananciaCambiaria.ToString))("CtaCodigo").ToString, .IdCuentaGananciaCambiaria.ToString)) ' DddlCuentaGananciaCambiaria.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaGananciaCambiaria.ToString))("CtaCodigo").ToString, .IdCuentaGananciaCambiaria.ToString))
DddlCuentaGananciaCambiaria.SelectedValue = .IdCuentaGananciaCambiaria.ToString ' DddlCuentaGananciaCambiaria.SelectedValue = .IdCuentaGananciaCambiaria.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaDSV.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaDSV.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlDSV.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaDSV.ToString))("CtaCodigo").ToString, .IdCuentaDSV.ToString)) ' DdlDSV.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaDSV.ToString))("CtaCodigo").ToString, .IdCuentaDSV.ToString))
DdlDSV.SelectedValue = .IdCuentaDSV.ToString ' DdlDSV.SelectedValue = .IdCuentaDSV.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaImpuestosLocales.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaImpuestosLocales.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlImpuestosLocales.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaImpuestosLocales.ToString))("CtaCodigo").ToString, .IdCuentaImpuestosLocales.ToString)) ' DdlImpuestosLocales.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaImpuestosLocales.ToString))("CtaCodigo").ToString, .IdCuentaImpuestosLocales.ToString))
DdlImpuestosLocales.SelectedValue = .IdCuentaImpuestosLocales.ToString ' DdlImpuestosLocales.SelectedValue = .IdCuentaImpuestosLocales.ToString
End If 'End If
'NUEVOS DATOS 'NUEVOS DATOS
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSxAcreditar.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSxAcreditar.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlIEPSxAcreditar.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSxAcreditar.ToString))("CtaCodigo").ToString, .IdCuentaIEPSxAcreditar.ToString)) ' DdlIEPSxAcreditar.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSxAcreditar.ToString))("CtaCodigo").ToString, .IdCuentaIEPSxAcreditar.ToString))
DdlIEPSxAcreditar.SelectedValue = .IdCuentaIEPSxAcreditar.ToString ' DdlIEPSxAcreditar.SelectedValue = .IdCuentaIEPSxAcreditar.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSAcreditable.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSAcreditable.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlIEPSAcreditable.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSAcreditable.ToString))("CtaCodigo").ToString, .IdCuentaIEPSAcreditable.ToString)) ' DdlIEPSAcreditable.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSAcreditable.ToString))("CtaCodigo").ToString, .IdCuentaIEPSAcreditable.ToString))
DdlIEPSAcreditable.SelectedValue = .IdCuentaIEPSAcreditable.ToString ' DdlIEPSAcreditable.SelectedValue = .IdCuentaIEPSAcreditable.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSxTrasladar.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSxTrasladar.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlIEPSxTrasladar.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSxTrasladar.ToString))("CtaCodigo").ToString, .IdCuentaIEPSxTrasladar.ToString)) ' DdlIEPSxTrasladar.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSxTrasladar.ToString))("CtaCodigo").ToString, .IdCuentaIEPSxTrasladar.ToString))
DdlIEPSxTrasladar.SelectedValue = .IdCuentaIEPSxTrasladar.ToString ' DdlIEPSxTrasladar.SelectedValue = .IdCuentaIEPSxTrasladar.ToString
End If 'End If
Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSTrasladado.ToString)) 'Row = DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSTrasladado.ToString))
If Not IsNothing(Row) Then 'If Not IsNothing(Row) Then
DdlIEPSTrasladado.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSTrasladado.ToString))("CtaCodigo").ToString, .IdCuentaIEPSTrasladado.ToString)) ' DdlIEPSTrasladado.Items.Add(New ListItem(DtCuentasContables.FiltroPrimero(String.Format("Id = {0} ", .IdCuentaIEPSTrasladado.ToString))("CtaCodigo").ToString, .IdCuentaIEPSTrasladado.ToString))
DdlIEPSTrasladado.SelectedValue = .IdCuentaIEPSTrasladado.ToString ' DdlIEPSTrasladado.SelectedValue = .IdCuentaIEPSTrasladado.ToString
End If 'End If
End If End If
@@ -665,7 +665,7 @@ Partial Class Sistemas_Empresa
Next Next
End If End If
GlobalDTClasificacionPorcentaje(CveEmpresa) = Nothing ' GlobalDTClasificacionPorcentaje(CveEmpresa) = Nothing
End If End If

View File

@@ -1383,14 +1383,12 @@ Partial Class Sistemas_UsuarioDetalle
GlobalDTAlmacenUsuarios(-1, UsuarioActual.CveEmpresa) = Nothing GlobalDTAlmacenUsuarios(-1, UsuarioActual.CveEmpresa) = Nothing
GlobalDTUsuarioResponsable(UsuarioActual.CveEmpresa) = Nothing GlobalDTUsuarioResponsable(UsuarioActual.CveEmpresa) = Nothing
GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa) = Nothing GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa) = Nothing
GlobalDTUsuarios(CveEmpresa:=-1) = Nothing GlobalDTUsuarios(CveEmpresa:=-1) = Nothing
If UsuarioActual.CveUsuario = 100 Or UsuarioActual.CveRol = 1 Then
Alert("Globals Recargados " & UsuarioActual.CveEmpresa) 'If ObjUsuarios.GetUsuariosEmpresas(-1, UsuarioActual.CveEmpresa) Then
End If ' Application("GlobalDTUsuarios") = ObjUsuarios.DtResultados
'If ObjUsuarios.GetUsuariosEmpresas(-1, UsuarioActual.CveEmpresa) Then ' Application("GlobalDTUsuarioResponsable") = ObjUsuarios.DtResultados.FiltraParametros("ProveedoresResponsables > 0")
' Application("GlobalDTUsuarios") = ObjUsuarios.DtResultados 'End If
' Application("GlobalDTUsuarioResponsable") = ObjUsuarios.DtResultados.FiltraParametros("ProveedoresResponsables > 0")
'End If
End Sub End Sub
Private Sub EnviaCorreo() Private Sub EnviaCorreo()

View File

@@ -15,7 +15,7 @@
<!-- BEGIN STYLES --> <!-- BEGIN STYLES -->
<style> <style>
.page-sidebar-menu .dnone { .page-sidebar-menu .dnone {
display: none; display: none !important;
} }
</style> </style>
<%: Scripts.Render("~/bundles/modernizr") %> <%: Scripts.Render("~/bundles/modernizr") %>
@@ -346,8 +346,8 @@
<div class="page-container" runat="server" id="divpagecontainer"> <div class="page-container" runat="server" id="divpagecontainer">
<!-- BEGIN SIDEBAR --> <!-- BEGIN SIDEBAR -->
<div class="page-sidebar-wrapper" runat="server" id="divMenu"> <div class="page-sidebar-wrapper" runat="server" id="divMenuB" style=" position: fixed;">
<div class="page-sidebar navbar-collapse collapse" style="padding-bottom: 120px;"> <div class="page-sidebar navbar-collapse collapse" >
<!-- add "navbar-no-scroll" class to disable the scrolling of the sidebar menu --> <!-- add "navbar-no-scroll" class to disable the scrolling of the sidebar menu -->
<!-- BEGIN SIDEBAR MENU --> <!-- BEGIN SIDEBAR MENU -->
<ul class="page-sidebar-menu" id='ulmenulateralmaster' data-keep-expanded="false" data-auto-scroll="true" data-slide-speed="200"> <ul class="page-sidebar-menu" id='ulmenulateralmaster' data-keep-expanded="false" data-auto-scroll="true" data-slide-speed="200">
@@ -356,28 +356,28 @@
<div class="sidebar-toggler"> <div class="sidebar-toggler">
</div> </div>
<!-- BEGIN SIDEBAR TOGGLER BUTTON --> <!-- BEGIN SIDEBAR TOGGLER BUTTON -->
</li> <div class="sidebar-search " style="margin-top: 12px;">
<div class="input-group">
<%--<li class="sidebar-search-wrapper"> <input type="text" id="txtMasterMenu" class="form-control" placeholder="Buscar..." />
<!-- BEGIN RESPONSIVE QUICK SEARCH FORM --> <span class="input-group-btn">
<form class="sidebar-search" action="extra_search.html" method="POST"> <a href="javascript:;" class="btn BuscarMenu">
<div class="form-container"> <i class="icon-magnifier"></i>
<div class="input-box"> </a>
<a href="javascript:;" class="remove"></a> </span>
<input type="text" placeholder="Search..." />
<input type="button" class="submit" value=" " />
</div>
</div> </div>
</form> </div>
<!--END RESPONSIVE QUICK SEARCH FORM --> </li>
</li>--%>
<asp:Literal ID="Menu" runat="server"></asp:Literal>
</ul> </ul>
<!-- END SIDEBAR MENU --> <!-- END SIDEBAR MENU -->
</div> </div>
</div> </div>
<div class="page-sidebar-wrapper" runat="server" id="divMenu" style="margin-top: 45px;">
<div class="page-sidebar navbar-collapse collapse" style="padding-bottom: 120px;">
<ul class="page-sidebar-menu" id='ulmenulateralmasterB' data-keep-expanded="false" data-auto-scroll="true" data-slide-speed="200">
<asp:Literal ID="Menu" runat="server"></asp:Literal>
</ul>
</div>
</div>
<!-- END SIDEBAR --> <!-- END SIDEBAR -->
<!-- BEGIN CONTENT --> <!-- BEGIN CONTENT -->

View File

@@ -321,7 +321,8 @@ Partial Class Site
estilo = If(drP("Estilo").ToString() <> "", String.Format("<i class='{0}'></i>", drP("Estilo")), "") estilo = If(drP("Estilo").ToString() <> "", String.Format("<i class='{0}'></i>", drP("Estilo")), "")
If menuobj.CveModuloSeleccionado = cveModuloActual Then If menuobj.CveModuloSeleccionado = cveModuloActual Then
menuobj.HeaderBar.AppendFormat("<li><i class='fa fa-angle-right'></i><a href='{0}'>{1}</a></li>", liga, modulo) 'menuobj.HeaderBar.AppendFormat("<li><i class='fa fa-angle-right'></i><a href='{0}'>{1}</a></li>", liga, modulo)
menuobj.headerstr.Add(String.Format("<li><i class='fa fa-angle-right'></i><a href='{0}'>{1}</a></li>", liga, modulo))
menuobj.CveModuloSeleccionadoPadre = CveModulo menuobj.CveModuloSeleccionadoPadre = CveModulo
menuobj.ScriptColorGrupoModulo = ColorPage(drP("CveGrupoModulo").ToString().ToEntero()) menuobj.ScriptColorGrupoModulo = ColorPage(drP("CveGrupoModulo").ToString().ToEntero())
End If End If
@@ -345,8 +346,8 @@ Partial Class Site
'menuobj.MenuHTML = menuobj.MenuHTML.Replace(String.Format("id='m{0}'", cveModuloActual), String.Format("id='m{0}' class='active open'", cveModuloActual)) 'menuobj.MenuHTML = menuobj.MenuHTML.Replace(String.Format("id='m{0}'", cveModuloActual), String.Format("id='m{0}' class='active open'", cveModuloActual))
'menuobj.MenuHTML = menuobj.MenuHTML.Replace(String.Format("id='j{0}'", cveModuloActual), String.Format("id='j{0}' class='selected'", cveModuloActual)) 'menuobj.MenuHTML = menuobj.MenuHTML.Replace(String.Format("id='j{0}'", cveModuloActual), String.Format("id='j{0}' class='selected'", cveModuloActual))
menuobj.headerstr.Insert(0, String.Format("<li><i class='fa fa-angle-right'></i><a href='{0}'>{1}</a></li>", liga, modulo))
menuobj.HeaderBar.AppendFormat("<li><i class='fa fa-angle-right'></i><a href='{0}'>{1}</a></li>", liga, modulo) 'menuobj.HeaderBar.AppendFormat("<li><i class='fa fa-angle-right'></i><a href='{0}'>{1}</a></li>", liga, modulo)
menuobj.CveModuloSeleccionadoPadre = CveModulo menuobj.CveModuloSeleccionadoPadre = CveModulo
End If End If
menuobj.MenuHTML.Append("</ul>") menuobj.MenuHTML.Append("</ul>")
@@ -397,7 +398,9 @@ Partial Class Site
menuobj.strdomain = menuobj.strdomain.Replace(String.Format(":{0}", Request.Url.Port), "") menuobj.strdomain = menuobj.strdomain.Replace(String.Format(":{0}", Request.Url.Port), "")
End If End If
Dim newmenuobj As MenuModal = ArmarMenu(0, menuobj) Dim newmenuobj As MenuModal = ArmarMenu(0, menuobj)
For Each stritem As String In menuobj.headerstr
menuobj.HeaderBar.Append(stritem)
Next
'Dim MenuHTML As New StringBuilder 'Dim MenuHTML As New StringBuilder
'For Each drP As DataRow In Inicio 'For Each drP As DataRow In Inicio

View File

@@ -193,7 +193,7 @@ Partial Class CatMetasVendedores
DtExcel.Rows.Add(dr) DtExcel.Rows.Add(dr)
Next Next
SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet)
Dim FileExcel As New ExcelFile() Dim FileExcel As New ExcelFile()
Dim worksheet = FileExcel.Worksheets.Add(DtExcel.TableName) Dim worksheet = FileExcel.Worksheets.Add(DtExcel.TableName)

View File

@@ -378,7 +378,7 @@
<div class="row"> <div class="row">
<div class="col-md-12" runat="server" id="DivRazonSocial2"> <div class="col-md-12" runat="server" id="DivRazonSocial2">
<div runat="server" id="DivRazonSocial" class="form-group form-md-line-input input-iconright"> <div runat="server" id="DivRazonSocial" class="form-group form-md-line-input input-iconright">
<asp:TextBox ID="TxtNombre" CssClass="form-control " runat="server" MaxLength="150" onkeyup="fncTxt()" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtNombre" CssClass="form-control " runat="server" MaxLength="200" onkeyup="fncTxt()" ClientIDMode="Static"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVNombre" runat="server" ControlToValidate="TxtNombre" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre del Cliente''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVNombre" runat="server" ControlToValidate="TxtNombre" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre del Cliente''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= TxtNombre.ClientID.ToString()%>">Razón Social:</label> <label for="<%= TxtNombre.ClientID.ToString()%>">Razón Social:</label>
<i></i> <i></i>
@@ -419,7 +419,7 @@
<div class="form-group form-md-line-input input-iconright "> <div class="form-group form-md-line-input input-iconright ">
<asp:TextBox ID="TxtNombreComercial" CssClass="form-control" runat="server" MaxLength="150" ClientIDMode="Static"></asp:TextBox> <asp:TextBox ID="TxtNombreComercial" CssClass="form-control" runat="server" MaxLength="200" ClientIDMode="Static"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVNombreComercial" runat="server" ControlToValidate="TxtNombreComercial" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre Comercial''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator> <asp:RequiredFieldValidator ID="RFVNombreComercial" runat="server" ControlToValidate="TxtNombreComercial" CssClass="help-block errorimput" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Nombre Comercial''</b> es necesario, por favor ingréselo." ValidationGroup="GrpGuardar"></asp:RequiredFieldValidator>
<label for="<%= TxtNombreComercial.ClientID.ToString()%>">Nombre Comercial:</label> <label for="<%= TxtNombreComercial.ClientID.ToString()%>">Nombre Comercial:</label>
<i></i> <i></i>

View File

@@ -2504,11 +2504,11 @@ Partial Class Ventas_ClientesAbonar
End If End If
If TCPago > TCVenta Then If TCPago > TCVenta Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 64, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=UsuarioActual.Empresa.IdCuentaGananciaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveCliente:=gr.DataKey("CveCliente").ToEntero, CveVenta:=gr.DataKey("CveVenta").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCVenta, TipoCambioPago:=TCPago, CveSubProyecto:=CveSubProyecto) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 64, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=0, CveIE:=-1, IdSegmentoNegocio:=-1, CveCliente:=gr.DataKey("CveCliente").ToEntero, CveVenta:=gr.DataKey("CveVenta").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCVenta, TipoCambioPago:=TCPago, CveSubProyecto:=CveSubProyecto) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If
Else Else
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 65, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveCliente:=gr.DataKey("CveCliente").ToEntero, CveVenta:=gr.DataKey("CveVenta").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCVenta, TipoCambioPago:=TCPago, CveSubProyecto:=CveSubProyecto) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Math.Abs(ImporteFluctuacion), gr.DataKey("SerieFolio").ToString, 65, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable:=0, CveIE:=-1, IdSegmentoNegocio:=-1, CveCliente:=gr.DataKey("CveCliente").ToEntero, CveVenta:=gr.DataKey("CveVenta").ToEntero, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCVenta, TipoCambioPago:=TCPago, CveSubProyecto:=CveSubProyecto) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If
End If End If
@@ -2525,12 +2525,11 @@ Partial Class Ventas_ClientesAbonar
Dim IdCtaIVAXTrasladar As Integer = 0 Dim IdCtaIVAXTrasladar As Integer = 0
Dim CveCuentaIVAxTrasladar As Integer = 0 Dim CveCuentaIVAxTrasladar As Integer = 0
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then 'If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXTrasladar").ToString.ToEntero ' IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXTrasladar").ToString.ToEntero
CveCuentaIVAxTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("CveCuentaIVAxTrasladar").ToString.ToEntero ' CveCuentaIVAxTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("CveCuentaIVAxTrasladar").ToString.ToEntero
End If 'End If
IdCtaContable = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
If (IVA > 0 Or UsuarioActual.CveEmpresa.Contiene(4, 7, 11, 12, 122) And IVA < 0) AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, ImpuestosMovto, IVA, gr.DataKey("SerieFolio").ToString, 13, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable, -1, CveCliente:=gr.DataKey("CveCliente").ToEntero, CveVenta:=gr.DataKey("CveVenta").ToEntero, ImporteMX:=If(CveMonedaFiltro = 1, IVA, IVA * TCVenta), PorcentajeImpuesto:=PorcentajeImpuesto, TipoCambio:=TCVenta, TipoCambioPago:=TCPago) Then If (IVA > 0 Or UsuarioActual.CveEmpresa.Contiene(4, 7, 11, 12, 122) And IVA < 0) AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, ImpuestosMovto, IVA, gr.DataKey("SerieFolio").ToString, 13, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable, -1, CveCliente:=gr.DataKey("CveCliente").ToEntero, CveVenta:=gr.DataKey("CveVenta").ToEntero, ImporteMX:=If(CveMonedaFiltro = 1, IVA, IVA * TCVenta), PorcentajeImpuesto:=PorcentajeImpuesto, TipoCambio:=TCVenta, TipoCambioPago:=TCPago) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
@@ -2540,7 +2539,6 @@ Partial Class Ventas_ClientesAbonar
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If
IdCtaContable = UsuarioActual.Empresa.IdCuentaIEPSxTrasladar
If IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, ImpuestosMovto, IEPS, gr.DataKey("SerieFolio").ToString, 38, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable, -1, CveCliente:=gr.DataKey("CveCliente").ToEntero, CveVenta:=gr.DataKey("CveVenta").ToEntero, ImporteMX:=If(CveMonedaFiltro = 1, IEPS, IEPS * TCVenta), PorcentajeImpuesto:=PorcentajeImpuesto, TipoCambio:=TCVenta, TipoCambioPago:=TCPago) Then If IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, ImpuestosMovto, IEPS, gr.DataKey("SerieFolio").ToString, 38, ConceptoPartida, TxtFechaIncobrable.Text.ToDate, IdCtaContable, -1, CveCliente:=gr.DataKey("CveCliente").ToEntero, CveVenta:=gr.DataKey("CveVenta").ToEntero, ImporteMX:=If(CveMonedaFiltro = 1, IEPS, IEPS * TCVenta), PorcentajeImpuesto:=PorcentajeImpuesto, TipoCambio:=TCVenta, TipoCambioPago:=TCPago) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If

View File

@@ -6709,7 +6709,7 @@ Partial Class Ventas
CargaDatosEstimaciones(CveCliente) CargaDatosEstimaciones(CveCliente)
End If End If
If ObjCliente.GetClienteImpuestosLocales(CveCliente) Then If ObjCliente.GetClienteImpuestosLocales(CveCliente) AndAlso CveVenta <= 0 Then
'se cargan impuestos locales 'se cargan impuestos locales
Dim DtClienteImpuesto As DataTable = ObjCliente.DtResultados.FiltraParametros("Seleccionado = 1", "Orden") Dim DtClienteImpuesto As DataTable = ObjCliente.DtResultados.FiltraParametros("Seleccionado = 1", "Orden")
@@ -8415,6 +8415,7 @@ Partial Class Ventas
TmpDT.Rows(e.RowIndex)("TiempoEntrega") = GvPS.Rows(e.RowIndex).FCTextBox("TxtTiempoEntrega").Text.Trim TmpDT.Rows(e.RowIndex)("TiempoEntrega") = GvPS.Rows(e.RowIndex).FCTextBox("TxtTiempoEntrega").Text.Trim
TmpDT.Rows(e.RowIndex)("PU") = PU TmpDT.Rows(e.RowIndex)("PU") = PU
TmpDT.Rows(e.RowIndex)("Descuento") = ObjDescuento.ImporteDescuento TmpDT.Rows(e.RowIndex)("Descuento") = ObjDescuento.ImporteDescuento
TmpDT.Rows(e.RowIndex)("Total") = (Cantidad * PU)
TmpDT.Rows(e.RowIndex)("TotalImporte") = (Cantidad * PU).RoundSQL(NumeroDecimales) TmpDT.Rows(e.RowIndex)("TotalImporte") = (Cantidad * PU).RoundSQL(NumeroDecimales)
TmpDT.Rows(e.RowIndex)("ImporteIVA") = (TmpDT.Rows(e.RowIndex)("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestosIVA).RoundSQL(NumeroDecimales) TmpDT.Rows(e.RowIndex)("ImporteIVA") = (TmpDT.Rows(e.RowIndex)("PorcentajeIVA").ToString().ToDecimal * TotalCalculableImpuestosIVA).RoundSQL(NumeroDecimales)
TmpDT.Rows(e.RowIndex)("ImporteIEPS") = (TmpDT.Rows(e.RowIndex)("PorcentajeIEPS").ToString().ToDecimal * TotalCalculableImpuestos).RoundSQL(NumeroDecimales) TmpDT.Rows(e.RowIndex)("ImporteIEPS") = (TmpDT.Rows(e.RowIndex)("PorcentajeIEPS").ToString().ToDecimal * TotalCalculableImpuestos).RoundSQL(NumeroDecimales)
@@ -9364,10 +9365,13 @@ Partial Class Ventas
If (Archivo.Exists Or Archivo2.Exists Or ArchivoSti.Exists Or ArchivoSti2.Exists Or ArchivoSti3.Exists) And IfNull(CveVenta, 0).ToString().ToEntero() > 0 Then If (Archivo.Exists Or Archivo2.Exists Or ArchivoSti.Exists Or ArchivoSti2.Exists Or ArchivoSti3.Exists) And IfNull(CveVenta, 0).ToString().ToEntero() > 0 Then
HplDownPDF.Visible = True HplDownPDF.Visible = True
HplDownPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1", CveVenta))) HplDownPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1", CveVenta)))
If UsuarioActual.CveRol = 1 Then
If UsuarioActual.TienePermisoProceso(359) Then
HplRenerarPDF.Visible = True HplRenerarPDF.Visible = True
HplRenerarPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1&REGENERAR=1", CveVenta))) HplRenerarPDF.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=1&REGENERAR=1", CveVenta)))
End If
If UsuarioActual.CveRol = 1 Then
HplImprimirPDFStimulsoft.Visible = True HplImprimirPDFStimulsoft.Visible = True
HplImprimirPDFStimulsoft.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=0&STIMULSOFT=1", CveVenta))) HplImprimirPDFStimulsoft.NavigateUrl = String.Format("/Compras/PopUpVerFactura.aspx?P={0}", Encripta(String.Format("OP=VTA&CVEVENTA={0}&PAG=1&GUARDAR=0&STIMULSOFT=1", CveVenta)))
End If End If
@@ -13862,10 +13866,10 @@ Partial Class Ventas
SeContabiliza = False SeContabiliza = False
End If End If
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDT.MAX("PorcentajeIVA").ToDouble).Rows.Count > 0 Then 'If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDT.MAX("PorcentajeIVA").ToDouble).Rows.Count > 0 Then
IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDT.MAX("PorcentajeIVA").ToDouble).Rows(0)("IdCtaIVAXTrasladar").ToString().ToEntero() ' IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDT.MAX("PorcentajeIVA").ToDouble).Rows(0)("IdCtaIVAXTrasladar").ToString().ToEntero()
IdCtaIVATrasladado = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDT.MAX("PorcentajeIVA").ToDouble).Rows(0)("IdCtaIVATrasladado").ToString().ToEntero() ' IdCtaIVATrasladado = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDT.MAX("PorcentajeIVA").ToDouble).Rows(0)("IdCtaIVATrasladado").ToString().ToEntero()
End If 'End If
Dim UsaComplementariaClientes As Boolean = True Dim UsaComplementariaClientes As Boolean = True
@@ -14236,14 +14240,12 @@ Partial Class Ventas
If IngresoIVA > 0 Then If IngresoIVA > 0 Then
IdCtaIVAXTrasladar = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 13, NombreCliente, Dr("Folio").ToString, FolioIE.ToString()) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 13, NombreCliente, Dr("Folio").ToString, FolioIE.ToString())
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, False, (importeMovimiento * IngresoIVA) / IngresoTotal, Referencia, 13, Concepto, Fecha, IdCtaIVAXTrasladar, -1, CveVenta:=Dr("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=((importeMovimiento * IngresoIVA) / IngresoTotal) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, False, (importeMovimiento * IngresoIVA) / IngresoTotal, Referencia, 13, Concepto, Fecha, IdCtaIVAXTrasladar, -1, CveVenta:=Dr("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=((importeMovimiento * IngresoIVA) / IngresoTotal) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then
ErrorPrepoliza = True ErrorPrepoliza = True
Exit For Exit For
End If End If
'IVA PAGADO 'IVA PAGADO
IdCtaIVATrasladado = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 61, NombreCliente, Dr("Folio").ToString, FolioIE.ToString()) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 61, NombreCliente, Dr("Folio").ToString, FolioIE.ToString())
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, True, (importeMovimiento * IngresoIVA) / IngresoTotal, Referencia, 61, Concepto, Fecha, IdCtaIVATrasladado, -1, CveVenta:=Dr("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=((importeMovimiento * IngresoIVA) / IngresoTotal) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, True, (importeMovimiento * IngresoIVA) / IngresoTotal, Referencia, 61, Concepto, Fecha, IdCtaIVATrasladado, -1, CveVenta:=Dr("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=((importeMovimiento * IngresoIVA) / IngresoTotal) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then
ErrorPrepoliza = True ErrorPrepoliza = True
@@ -14255,14 +14257,14 @@ Partial Class Ventas
If IngresoIEPS > 0 Then If IngresoIEPS > 0 Then
'IEPS X TRASLADAR 'IEPS X TRASLADAR
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 38, NombreCliente, Dr("Folio").ToString, FolioIE.ToString()) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 38, NombreCliente, Dr("Folio").ToString, FolioIE.ToString())
If IngresoIEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, False, (importeMovimiento * IngresoIEPS) / IngresoTotal, Referencia, 38, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSxTrasladar, -1, CveVenta:=Dr("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=((importeMovimiento * IngresoIEPS) / IngresoTotal) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then If IngresoIEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, False, (importeMovimiento * IngresoIEPS) / IngresoTotal, Referencia, 38, Concepto, Fecha, 0, -1, CveVenta:=Dr("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=((importeMovimiento * IngresoIEPS) / IngresoTotal) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then
ErrorPrepoliza = True ErrorPrepoliza = True
Exit For Exit For
End If End If
'IEPS PAGADO 'IEPS PAGADO
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 39, NombreCliente, Dr("Folio").ToString, FolioIE.ToString()) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 39, NombreCliente, Dr("Folio").ToString, FolioIE.ToString())
If IngresoIEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, True, (importeMovimiento * IngresoIEPS) / IngresoTotal, Referencia, 39, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSTrasladado, -1, CveVenta:=Dr("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=((importeMovimiento * IngresoIEPS) / IngresoTotal) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then If IngresoIEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, True, (importeMovimiento * IngresoIEPS) / IngresoTotal, Referencia, 39, Concepto, Fecha, 0, -1, CveVenta:=Dr("CveVenta").ToString().ToEntero(), CveCliente:=CveCliente, CveIE:=CveIEAnticipo, ImporteMX:=((importeMovimiento * IngresoIEPS) / IngresoTotal) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar) Then
ErrorPrepoliza = True ErrorPrepoliza = True
Exit For Exit For
End If End If
@@ -14319,11 +14321,9 @@ Partial Class Ventas
If difFluctuacion < 0 Then If difFluctuacion < 0 Then
CveConceptoFluctua = 65 CveConceptoFluctua = 65
TipoMovtoFluctua = False TipoMovtoFluctua = False
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
Else Else
CveConceptoFluctua = 64 CveConceptoFluctua = 64
TipoMovtoFluctua = True TipoMovtoFluctua = True
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
End If End If
Dim ImporteFluctuacion As Decimal = Math.Abs((Importe251 * difFluctuacion).RoundSQL) Dim ImporteFluctuacion As Decimal = Math.Abs((Importe251 * difFluctuacion).RoundSQL)
@@ -14429,11 +14429,9 @@ Partial Class Ventas
If difFluctuacion < 0 Then If difFluctuacion < 0 Then
CveConceptoFluctua = 65 CveConceptoFluctua = 65
TipoMovtoFluctua = False TipoMovtoFluctua = False
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaPerdidaCambiaria
Else Else
CveConceptoFluctua = 64 CveConceptoFluctua = 64
TipoMovtoFluctua = True TipoMovtoFluctua = True
IdCtaContableFluctua = UsuarioActual.Empresa.IdCuentaGananciaCambiaria
End If End If
Dim ImporteFluctuacion As Decimal = Math.Abs((importeMovimientoDev * difFluctuacion).RoundSQL) Dim ImporteFluctuacion As Decimal = Math.Abs((importeMovimientoDev * difFluctuacion).RoundSQL)
@@ -14790,30 +14788,30 @@ Partial Class Ventas
' If UsuarioActual.CveEmpresa = 119 Then ' If UsuarioActual.CveEmpresa = 119 Then
'código fijo en base el porcentaje iva, que se afecten las clasificaciones 'código fijo en base el porcentaje iva, que se afecten las clasificaciones
For i = 0 To TmpDTDetalle.Rows.Count - 1 'For i = 0 To TmpDTDetalle.Rows.Count - 1
'se excluyen las clasificaciones anteriores para que se asignen las de ingreso ' 'se excluyen las clasificaciones anteriores para que se asignen las de ingreso
If Not TmpDTDetalle(i)("CveClasificacion").ToString().Contiene("19958", "19933", "18097") Then ' If Not TmpDTDetalle(i)("CveClasificacion").ToString().Contiene("19958", "19933", "18097", "24479") Then
'If TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDecimal > 0 Then ' 'If TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDecimal > 0 Then
' If TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDecimal = 0.08 Then ' ' If TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDecimal = 0.08 Then
' TmpDTDetalle(i)("CveClasificacion") = 20242 'clasif: ventas tasa 8% ' ' TmpDTDetalle(i)("CveClasificacion") = 20242 'clasif: ventas tasa 8%
' Else ' ' Else
' TmpDTDetalle(i)("CveClasificacion") = 19929 'clasif: ventas tasa 16% ' ' TmpDTDetalle(i)("CveClasificacion") = 19929 'clasif: ventas tasa 16%
' End If ' ' End If
' Else ' ' Else
' TmpDTDetalle(i)("CveClasificacion") = 19930 'clasif: ventas tasa 0% ' ' TmpDTDetalle(i)("CveClasificacion") = 19930 'clasif: ventas tasa 0%
' End If ' ' End If
'reclasifica la clasificación del producto, por la del ingreso correspondiente a su iva ' 'reclasifica la clasificación del producto, por la del ingreso correspondiente a su iva
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDecimal).Rows.Count > 0 Then ' If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDecimal).Rows.Count > 0 Then
TmpDTDetalle(i)("CveClasificacion") = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDecimal).Rows(0)("CveClasificacion").ToString() ' TmpDTDetalle(i)("CveClasificacion") = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDecimal).Rows(0)("CveClasificacion").ToString()
End If ' End If
End If ' End If
Next 'Next
' End If ' End If
@@ -14863,23 +14861,23 @@ Partial Class Ventas
Dim CveVentaAplicar = ObjFactura.CveVenta Dim CveVentaAplicar = ObjFactura.CveVenta
Dim CveVentaAmortizacionAplicar = -1 Dim CveVentaAmortizacionAplicar = -1
If UsuarioActual.CveEmpresa = 119 Then 'If UsuarioActual.CveEmpresa = 119 Then
'código fijo en base el porcentaje iva, que se afecten las clasificaciones ' 'código fijo en base el porcentaje iva, que se afecten las clasificaciones
For i = 0 To TmpDTDetalle.Rows.Count - 1 ' For i = 0 To TmpDTDetalle.Rows.Count - 1
'se excluyen las clasificaciones anteriores para que se asignen las de ingreso ' 'se excluyen las clasificaciones anteriores para que se asignen las de ingreso
If Not TmpDTDetalle(i)("CveClasificacion").ToString().Contiene("19958", "19933", "18097") Then ' If Not TmpDTDetalle(i)("CveClasificacion").ToString().Contiene("19958", "19933", "18097") Then
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDouble).Rows.Count > 0 Then ' If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDouble).Rows.Count > 0 Then
TmpDTDetalle(i)("CveClasificacion") = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDouble).Rows(0)("CveClasificacion").ToString() ' TmpDTDetalle(i)("CveClasificacion") = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=TmpDTDetalle(i)("PorcentajeIVA").ToString().ToDouble).Rows(0)("CveClasificacion").ToString()
End If ' End If
End If ' End If
Next ' Next
End If 'End If
DT = TmpDTDetalle.FiltraParametros($"CvePS <> {CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA"}) DT = TmpDTDetalle.FiltraParametros($"CvePS <> {CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA"})
@@ -15090,13 +15088,8 @@ Partial Class Ventas
ConceptoContable = 61 ConceptoContable = 61
importeMovimiento = importeMovimiento * -1 importeMovimiento = importeMovimiento * -1
importeMX = importeMX * -1 importeMX = importeMX * -1
IdCtaContable = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
Else
IdCtaContable = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
End If End If
CveSubProyectoContabilizar = CveSubProyectoVenta CveSubProyectoContabilizar = CveSubProyectoVenta
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}" If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
End If End If
@@ -15245,13 +15238,10 @@ Partial Class Ventas
End If End If
If ObjFactura.IVA <> 0 Then If ObjFactura.IVA <> 0 Then
Dim PorcentajeImpuestoPago As Decimal = TmpDT.MAX("PorcentajeIVA").ToDecimal Dim PorcentajeImpuestoPago As Decimal = TmpDT.MAX("PorcentajeIVA").ToDecimal
'IVA X TRASLADAR 'IVA X TRASLADAR
IdCtaIVAXTrasladar = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 13, NombreCliente, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString()) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 13, NombreCliente, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, (importeMovimiento * ObjFactura.IVA) / ObjFactura.Total, Referencia, 13, Concepto, Fecha, IdCtaIVAXTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IVA) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, (importeMovimiento * ObjFactura.IVA) / ObjFactura.Total, Referencia, 13, Concepto, Fecha, IdCtaIVAXTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IVA) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then
ErrorPrepoliza = True ErrorPrepoliza = True
@@ -15259,7 +15249,6 @@ Partial Class Ventas
End If End If
'IVA PAGADO 'IVA PAGADO
IdCtaIVATrasladado = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 61, NombreCliente, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString()) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 61, NombreCliente, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, (importeMovimiento * ObjFactura.IVA) / ObjFactura.Total, Referencia, 61, Concepto, Fecha, IdCtaIVATrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IVA) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, (importeMovimiento * ObjFactura.IVA) / ObjFactura.Total, Referencia, 61, Concepto, Fecha, IdCtaIVATrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IVA) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then
ErrorPrepoliza = True ErrorPrepoliza = True
@@ -15267,21 +15256,19 @@ Partial Class Ventas
End If End If
End If End If
If ObjFactura.IEPS <> 0 Then If ObjFactura.IEPS <> 0 Then
Dim PorcentajeImpuestoPago As Decimal = TmpDT.MAX("PorcentajeIEPS").ToDecimal Dim PorcentajeImpuestoPago As Decimal = TmpDT.MAX("PorcentajeIEPS").ToDecimal
'IEPS X TRASLADAR 'IEPS X TRASLADAR
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 38, NombreCliente, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString()) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 38, NombreCliente, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
If ObjFactura.IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, (importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total, Referencia, 38, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSxTrasladar, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then If ObjFactura.IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, (importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total, Referencia, 38, Concepto, Fecha, 0, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then
ErrorPrepoliza = True ErrorPrepoliza = True
Exit For Exit For
End If End If
'IEPS PAGADO 'IEPS PAGADO
Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 39, NombreCliente, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString()) Concepto = ObjConta.ObtenerConceptoEmpresa(UsuarioActual.CveEmpresa, 39, NombreCliente, $"{ObjFactura.Serie}-{ObjFactura.Folio}", FolioIE.ToString())
If ObjFactura.IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, (importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total, Referencia, 39, Concepto, Fecha, UsuarioActual.Empresa.IdCuentaIEPSTrasladado, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then If ObjFactura.IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovimiento, (importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total, Referencia, 39, Concepto, Fecha, 0, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=CveCliente, CveIE:=CveIEPago, ImporteMX:=((importeMovimiento * ObjFactura.IEPS) / ObjFactura.Total) * tipoCambio * Multiplicador, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), CveSubProyecto:=CveSubProyectoContabilizar, PorcentajeImpuesto:=PorcentajeImpuestoPago) Then
ErrorPrepoliza = True ErrorPrepoliza = True
Exit For Exit For
End If End If
@@ -16968,17 +16955,17 @@ Partial Class Ventas
Dim FechaMovimiento As Date = Now Dim FechaMovimiento As Date = Now
Dim Concepto As String = ViewState("VentaFolio").ToString() Dim Concepto As String = ViewState("VentaFolio").ToString()
Dim PrePolizaCorrecta = True Dim PrePolizaCorrecta = True
Dim PorcentajeImpuesto As Decimal = 0 ' Dim PorcentajeImpuesto As Decimal = 0
Dim IdCtaIVAXTrasladar As Integer = 0 Dim IdCtaIVAXTrasladar As Integer = 0
'13 Iva x Trasladar '13 Iva x Trasladar
ImporteMovimiento = Importe13 * PorcentajeAmortizacion ImporteMovimiento = Importe13 * PorcentajeAmortizacion
ImporteMX = Math.Round(ImporteMovimiento, 2) * TipoCambio ImporteMX = Math.Round(ImporteMovimiento, 2) * TipoCambio
PorcentajeImpuesto = TmpDT.MAX("PorcentajeIVA").ToDecimal 'PorcentajeImpuesto = TmpDT.MAX("PorcentajeIVA").ToDecimal
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then 'If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXTrasladar").ToString().ToEntero() ' IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXTrasladar").ToString().ToEntero()
End If 'End If
IdCtaContable = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar) 'IdCtaContable = If(IdCtaIVAXTrasladar > 0, IdCtaIVAXTrasladar, UsuarioActual.Empresa.IdCuentaIVAxTrasladar)
' CveCuenta = If(CveCuentaIVAxTrasladar > 0, CveCuentaIVAxTrasladar, UsuarioActual.Empresa.CveCuentaIVAxTrasladar) ' CveCuenta = If(CveCuentaIVAxTrasladar > 0, CveCuentaIVAxTrasladar, UsuarioActual.Empresa.CveCuentaIVAxTrasladar)
If ImporteMovimiento > 0 Then If ImporteMovimiento > 0 Then
@@ -16988,7 +16975,7 @@ Partial Class Ventas
End If End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, Concepto, 13, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, ImporteMX:=ImporteMX, PorcentajeImpuesto:=PorcentajeImpuesto) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteMovimiento, Concepto, 13, Concepto, FechaMovimiento, IdCtaContable, -1, CveVenta:=CveVenta, CveCliente:=CveCliente, ImporteMX:=ImporteMX) Then
PrePolizaCorrecta = False PrePolizaCorrecta = False
End If End If
End If End If
@@ -17065,11 +17052,10 @@ Partial Class Ventas
ImporteMovimiento = TxtIVA.Text.ToDecimal * PorcentajeAmortizacion ImporteMovimiento = TxtIVA.Text.ToDecimal * PorcentajeAmortizacion
ImporteMX = Math.Round(ImporteMovimiento * TipoCambio, 2) ImporteMX = Math.Round(ImporteMovimiento * TipoCambio, 2)
PorcentajeImpuesto = TmpDT.MAX("PorcentajeIVA").ToDecimal PorcentajeImpuesto = TmpDT.MAX("PorcentajeIVA").ToDecimal
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then 'If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
IdCtaIVATrasladado = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVATrasladado").ToString().ToEntero() ' IdCtaIVATrasladado = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVATrasladado").ToString().ToEntero()
CveCuentaIVATrasladado = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("CveCuentaIVATrasladado").ToString().ToEntero() ' CveCuentaIVATrasladado = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("CveCuentaIVATrasladado").ToString().ToEntero()
End If 'End If
IdCtaContable = If(IdCtaIVATrasladado > 0, IdCtaIVATrasladado, UsuarioActual.Empresa.IdCuentaIVATrasladado)
'CveCuenta = If(CveCuentaIVATrasladado > 0, CveCuentaIVATrasladado, UsuarioActual.Empresa.CveCuentaIVATrasladado) 'CveCuenta = If(CveCuentaIVATrasladado > 0, CveCuentaIVATrasladado, UsuarioActual.Empresa.CveCuentaIVATrasladado)
If ImporteMovimiento > 0 Then If ImporteMovimiento > 0 Then
@@ -23679,7 +23665,7 @@ Partial Class Ventas
End If End If
End If End If
Else Else
If DdlTipoComprobante.SelectedValue.Contiene("Ing", "Rem", "Dev") Then If DdlTipoComprobante.SelectedValue.Contiene("Ing", "Rem", "Dev", "RNC") Then
CargaInventario(Me.CveVenta) CargaInventario(Me.CveVenta)
End If End If
End If End If
@@ -25277,9 +25263,9 @@ Partial Class Ventas
ObjFacturaCancelacion.CveAlmacenDevolucion = CveAlmacenDevolucion ObjFacturaCancelacion.CveAlmacenDevolucion = CveAlmacenDevolucion
'If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso ObjFacturaCancelacion.TipoDocto.Contiene("Rem", "Dev") Then If UsuarioActual.Empresa.Funcionalidad(531) = "1" AndAlso ObjFacturaCancelacion.TipoDocto.Contiene("Rem", "Dev") Then
' ChkDevAlm.Checked = True ChkDevAlm.Checked = True
'End If End If
If UsuarioActual.Empresa.Funcionalidad(567) = "1" AndAlso ObjFacturaCancelacion.TipoDocto = "Rem" Then If UsuarioActual.Empresa.Funcionalidad(567) = "1" AndAlso ObjFacturaCancelacion.TipoDocto = "Rem" Then
ChkDevAlm.Checked = True ChkDevAlm.Checked = True
@@ -27396,11 +27382,11 @@ Partial Class Ventas
Dim ImporteFluctuacion As Decimal = 0 Dim ImporteFluctuacion As Decimal = 0
ImporteFluctuacion = Saldo * (TCPago - TCVenta) ImporteFluctuacion = Saldo * (TCPago - TCVenta)
If TCPago > TCVenta Then If TCPago > TCVenta Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Math.Abs(ImporteFluctuacion), SerieFolio, 64, ConceptoPartida, FechaPago, IdCtaContable:=UsuarioActual.Empresa.IdCuentaGananciaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveCliente:=CveCliente, CveVenta:=CveVenta, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCVenta, TipoCambioPago:=TCPago, CveSubProyecto:=CveSubProyecto) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, Math.Abs(ImporteFluctuacion), SerieFolio, 64, ConceptoPartida, FechaPago, IdCtaContable:=0, CveIE:=-1, IdSegmentoNegocio:=-1, CveCliente:=CveCliente, CveVenta:=CveVenta, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCVenta, TipoCambioPago:=TCPago, CveSubProyecto:=CveSubProyecto) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If
Else Else
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Math.Abs(ImporteFluctuacion), SerieFolio, 65, ConceptoPartida, FechaPago, IdCtaContable:=UsuarioActual.Empresa.IdCuentaPerdidaCambiaria, CveIE:=-1, IdSegmentoNegocio:=-1, CveCliente:=CveCliente, CveVenta:=CveVenta, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCVenta, TipoCambioPago:=TCPago, CveSubProyecto:=CveSubProyecto) Then If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, Math.Abs(ImporteFluctuacion), SerieFolio, 65, ConceptoPartida, FechaPago, IdCtaContable:=0, CveIE:=-1, IdSegmentoNegocio:=-1, CveCliente:=CveCliente, CveVenta:=CveVenta, ImporteMX:=Math.Abs(ImporteFluctuacion), TipoCambio:=TCVenta, TipoCambioPago:=TCPago, CveSubProyecto:=CveSubProyecto) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If
End If End If
@@ -27412,15 +27398,14 @@ Partial Class Ventas
Dim IdCtaIVAXTrasladar As Integer = 0 Dim IdCtaIVAXTrasladar As Integer = 0
If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then 'If GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows.Count > 0 Then
IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXTrasladar").ToString().ToEntero() ' IdCtaIVAXTrasladar = GlobalDTClasificacionPorcentaje(UsuarioActual.CveEmpresa, PorcentajeIVA:=PorcentajeImpuesto).Rows(0)("IdCtaIVAXTrasladar").ToString().ToEntero()
End If 'End If
If IVA > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, ImpuestosMovto, IVA, SerieFolio, 13, ConceptoPartida, FechaPago, IdCtaIVAXTrasladar, -1, CveCliente:=CveCliente, CveVenta:=CveVenta, ImporteMX:=If(tCveMoneda = 1, IVA, IVA * TCVenta), PorcentajeImpuesto:=PorcentajeImpuesto, TipoCambio:=TCVenta, TipoCambioPago:=TCPago) Then If IVA > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, ImpuestosMovto, IVA, SerieFolio, 13, ConceptoPartida, FechaPago, IdCtaIVAXTrasladar, -1, CveCliente:=CveCliente, CveVenta:=CveVenta, ImporteMX:=If(tCveMoneda = 1, IVA, IVA * TCVenta), PorcentajeImpuesto:=PorcentajeImpuesto, TipoCambio:=TCVenta, TipoCambioPago:=TCPago) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If
IdCtaContable = UsuarioActual.Empresa.IdCuentaIEPSxTrasladar
If IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, ImpuestosMovto, IEPS, SerieFolio, 38, ConceptoPartida, FechaPago, IdCtaContable, -1, CveCliente:=CveCliente, CveVenta:=CveVenta, ImporteMX:=If(tCveMoneda = 1, IEPS, IEPS * TCVenta), PorcentajeImpuesto:=PorcentajeImpuesto, TipoCambio:=TCVenta, TipoCambioPago:=TCPago) Then If IEPS > 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, ImpuestosMovto, IEPS, SerieFolio, 38, ConceptoPartida, FechaPago, IdCtaContable, -1, CveCliente:=CveCliente, CveVenta:=CveVenta, ImporteMX:=If(tCveMoneda = 1, IEPS, IEPS * TCVenta), PorcentajeImpuesto:=PorcentajeImpuesto, TipoCambio:=TCVenta, TipoCambioPago:=TCPago) Then
MsgError = "Ocurrio un error al saldar el movimiento" MsgError = "Ocurrio un error al saldar el movimiento"
End If End If
@@ -33428,6 +33413,9 @@ Partial Class Ventas
Dim Cargo As Decimal = DTTamanios.FiltroPrimeroValor("Cargo", $" CveTamaño = { CveTamanioTemp }").ToDecimal Dim Cargo As Decimal = DTTamanios.FiltroPrimeroValor("Cargo", $" CveTamaño = { CveTamanioTemp }").ToDecimal
If DtUsadosDevolucion IsNot Nothing Then
Cargo = DtUsadosDevolucion.FiltroPrimeroValor("PU", $"CvePS = {CvePsTemp}").ToString().ToDecimal()
End If
If DTPSTemp.FiltraParametros($"CvePs = { CvePsTemp }").Rows.Count > 0 Then If DTPSTemp.FiltraParametros($"CvePs = { CvePsTemp }").Rows.Count > 0 Then