Merge branch 'master' of http://192.168.10.111:8383/SIG
This commit is contained in:
@@ -259,12 +259,17 @@ Public Class ClsAF
|
||||
Return Retorno
|
||||
End Function
|
||||
|
||||
Public Function GetRepActivosFijosDepreciacion(CveEmpresa As Integer, Fecha As Date) As Boolean
|
||||
Public Function GetRepActivosFijosDepreciacion(CveEmpresa As Integer, Fecha As Date, Optional Depreciados As Integer = 1, Optional CveTipoAF As Integer = -1, Optional CveSubTipoAF As Integer = -1, Optional CveSubProyecto As Integer = -1, Optional CveEstadoActivoFijo As Integer = -1) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
DataAdapter("PA_AF_DepreciacionesGetRep")
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
.Add("@Fecha", SqlDbType.Date).Value = Fecha
|
||||
.Add("@Depreciados", SqlDbType.Int).Value = Depreciados
|
||||
.Add("@CveTipoAF", SqlDbType.Int).Value = CveTipoAF
|
||||
.Add("@CveSubTipoAF", SqlDbType.Int).Value = CveSubTipoAF
|
||||
.Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
|
||||
.Add("@CveEstadoActivoFijo", SqlDbType.Int).Value = CveEstadoActivoFijo
|
||||
End With
|
||||
Try
|
||||
SqlAdapter.Fill(Data)
|
||||
@@ -276,6 +281,23 @@ Public Class ClsAF
|
||||
Return Retorno
|
||||
End Function
|
||||
|
||||
Public Function GetActivosFijosVenta(CveVenta As Integer, CveEmpresa As Integer) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
DataAdapter("PA_AF_ActivosFijosVentaGet")
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@CveVenta", SqlDbType.Int).Value = CveVenta
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
End With
|
||||
Try
|
||||
SqlAdapter.Fill(Data)
|
||||
Retorno = True
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al obtener el los activos fijos de la venta.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
|
||||
End Try
|
||||
|
||||
Return Retorno
|
||||
End Function
|
||||
|
||||
Public Function GetActivosFijos(CveActivoFijo As Integer, CveEmpresa As Integer, Codigo As String, Descripcion As String, CveTipoActivoFijo As Integer, CveSubTipoActivoFijo As Integer, NoSerie As String, Año As Integer, CvePersonaResponsable As Integer, CveProyecto As Integer, CveSubProyecto As Integer, CveEstadoActivoFijo As Integer, CaracteristicaValor As String, CveCliente As Integer, Optional BuscaGrupoEmpresa As Integer = -1, Optional BuscaPorAFPadre As Integer = -1, Optional CveGrupo As Integer = -1) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
DataAdapter("PA_AF_ActivosFijosGet")
|
||||
|
||||
@@ -1196,13 +1196,14 @@ Public Class ClsContabilidad
|
||||
Return Concepto
|
||||
End Function
|
||||
|
||||
Public Function GetPrePolizasDetalle(CvePrePoliza As Integer, CveEmpresa As Integer, Optional CveIE As Integer = -1) As Boolean
|
||||
Public Function GetPrePolizasDetalle(CvePrePoliza As Integer, CveEmpresa As Integer, Optional CveIE As Integer = -1, Optional CveVenta As Integer = -1) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
DataAdapter("PA_Conta_PrePolizasDetalleGet")
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@CvePrePoliza", SqlDbType.Int).Value = CvePrePoliza
|
||||
.Add("@CveIE", SqlDbType.Int).Value = CveIE
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
.Add("@CveVenta", SqlDbType.Int).Value = CveVenta
|
||||
End With
|
||||
|
||||
Try
|
||||
|
||||
@@ -1325,7 +1325,7 @@ Public Class ClsVentas
|
||||
CvePresupuestoIngreso As Integer, Optional TiempoEntrega As String = "", Optional CveVentaDetallePadre As Integer = -1,
|
||||
Optional CveContratoDetalle As Integer = -1, Optional PorcentajeIVA As Decimal = 0, Optional IEPS As Double = -1, Optional PorcentajeIEPS As Double = 0, Optional CvePromocionDetalle As Integer = -1,
|
||||
Optional CveMovimientoDetallePedido As Integer = -1, Optional ImporteRetIVA As Double = 0, Optional PorcentajeRetIVA As Double = 0,
|
||||
Optional ImporteRetISR As Double = 0, Optional PorcentajeRetISR As Double = 0, Optional CuentaPredial As String = "", Optional CvePrecioLista As Integer = -1) As Boolean
|
||||
Optional ImporteRetISR As Double = 0, Optional PorcentajeRetISR As Double = 0, Optional CuentaPredial As String = "", Optional CvePrecioLista As Integer = -1, Optional CveActivoFijo As Integer = -1) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
DataAdapter("PA_VentasDetalleAdd")
|
||||
|
||||
@@ -1356,6 +1356,7 @@ Public Class ClsVentas
|
||||
.Add("@CveMovimientoDetallePedido", SqlDbType.Int).Value = CveMovimientoDetallePedido
|
||||
.Add("@CuentaPredial", SqlDbType.VarChar).Value = CuentaPredial
|
||||
.Add("@CvePrecioLista", SqlDbType.Int).Value = CvePrecioLista
|
||||
.Add("@CveActivoFijo", SqlDbType.Int).Value = CveActivoFijo
|
||||
End With
|
||||
|
||||
Try
|
||||
@@ -5783,6 +5784,26 @@ Public Class ClsVentas
|
||||
|
||||
End Function
|
||||
|
||||
Public Function UpdateEstatusAFVendido(CveActivoFijo As Integer, CveEmpresa As Integer, Optional CveEstadoActivoFijo As Integer = -1) As Boolean
|
||||
Dim Retorno As Boolean = False
|
||||
DataAdapter("PA_AF_EstatusAFUpdate")
|
||||
|
||||
With SqlAdapter.SelectCommand.Parameters
|
||||
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
|
||||
.Add("@CveActivoFijo", SqlDbType.Int).Value = CveActivoFijo
|
||||
.Add("@CveEstadoActivoFijo", SqlDbType.Int).Value = CveEstadoActivoFijo
|
||||
End With
|
||||
Try
|
||||
SqlAdapter.Fill(Data)
|
||||
Retorno = True
|
||||
|
||||
Catch ex As Exception
|
||||
OnError("Ocurrió un error al guardar los cambios del estatus de AF.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
|
||||
End Try
|
||||
|
||||
Return Retorno
|
||||
End Function
|
||||
|
||||
|
||||
#Region "IDisposable Support"
|
||||
|
||||
|
||||
@@ -2421,6 +2421,13 @@ Namespace Modelos
|
||||
Dim IdCtaIVAXTrasladar As Integer = 0
|
||||
Dim IdCtaIVATrasladado As Integer = 0
|
||||
Dim SeContabiliza As Boolean = True
|
||||
Dim DtPrePolizasAFCancelar As DataTable = Nothing
|
||||
|
||||
If ValorMultiplicador = -1 AndAlso ObjFactura.DtDetalle IsNot Nothing AndAlso ObjFactura.DtDetalle.COUNT("CveActivoFijo", "CveActivoFijo > 0") > 0 Then
|
||||
If ObjConta.GetPrePolizasDetalle(-1, UsuarioActual.CveEmpresa, CveVenta:=ObjFactura.CveVenta) Then
|
||||
DtPrePolizasAFCancelar = ObjConta.DtResultados.FiltraParametros("CveConceptoContable IN (271,49,4)")
|
||||
End If
|
||||
End If
|
||||
|
||||
If (UsuarioActual.Empresa.Funcionalidad(343) = "1" AndAlso ObjFactura.TipoDocto = "Ant") Then
|
||||
SeContabiliza = False
|
||||
@@ -2527,6 +2534,16 @@ Namespace Modelos
|
||||
|
||||
importeMovimiento = 0
|
||||
End If
|
||||
|
||||
If ValorMultiplicador = -1 AndAlso DtPrePolizasAFCancelar IsNot Nothing Then
|
||||
For Each RowAF As DataRow In DtPrePolizasAFCancelar.FiltraParametros("CveConceptoContable = 271").Rows
|
||||
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, CBool(RowAF("TipoMovto")), RowAF("Importe").ToString().ToDecimal() * -1, RowAF("Referencia").ToString(), 271, RowAF("Concepto").ToString(), FechaMovimiento, -1, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=-1, ImporteMX:=RowAF("ImporteMN").ToString().ToDecimal() * -1, ImporteME:=RowAF("ImporteME").ToString().ToDecimal() * -1, TipoCambio:=RowAF("TC").ToString().ToDecimal(), CveSubProyecto:=RowAF("CveSubProyecto").ToString().ToEntero(), Contabilizable:=CBool(RowAF("Contabilizable"))) Then
|
||||
ErrorPrepoliza = True
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
|
||||
Case 3 'Cliente
|
||||
@@ -3317,53 +3334,71 @@ Namespace Modelos
|
||||
importeMovimiento = 0
|
||||
|
||||
Case 4 'Venta Clasificacion
|
||||
If Not ObjFactura.TipoDocto.Contiene("Rem", "Ant", "Egs", "Dev", "RNC") Then
|
||||
|
||||
Dim ConceptoContableAplicar = 4
|
||||
Dim CveVentaAplicar = ObjFactura.CveVenta
|
||||
Dim CveVentaAmortizacionAplicar = -1
|
||||
If ValorMultiplicador = -1 AndAlso DtPrePolizasAFCancelar IsNot Nothing Then
|
||||
|
||||
If ObjFactura.TipoDocto.Contiene("Egs") And ObjFactura.TipoDocto = "Ant" And CveDevolucion > 0 And NuevaFactura = 1 Then
|
||||
ConceptoContableAplicar = 11
|
||||
CveVentaAplicar = CveDevolucion
|
||||
CveVentaAmortizacionAplicar = ObjFactura.CveVenta
|
||||
End If
|
||||
|
||||
DT = TmpDTDetalle.FiltraParametros($"CvePS <> {ObjFactura.CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA"})
|
||||
|
||||
If DT.Rows.Count > 0 Then
|
||||
'Se agrega movimiento separado por la cuenta de ventas (ER)
|
||||
For Each Row2 As DataRow In DT.Rows
|
||||
importeMovimiento = ((TmpDTDetalle.SUM("TotalImporte", String.Format("CveClasificacion = {0} AND CveSubProyecto = {1} AND PorcentajeIVA = {2}", Row2("CveClasificacion"), Row2("CveSubProyecto"), Row2("PorcentajeIVA"))).ToString.ToDecimal) * ValorMultiplicador)
|
||||
importeMX = importeMovimiento * tipoCambio * Multiplicador
|
||||
FechaMovimiento = ObjFactura.FechaPago
|
||||
Concepto = $"{ObjFactura.SerieFolio} {If(Row2("CveClasificacion").ToString.ToEntero > 0, ClsPaginas.GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = {Row2("CveClasificacion").ToString}"), "")} - {If(Row2("CveSubProyecto").ToString.ToEntero > 0, ClsPaginas.GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa).FiltroPrimeroValor("SubProyecto", $"CveSubProyecto = {Row2("CveSubProyecto").ToString}"), "Sin SubProyecto Asignado")}"
|
||||
|
||||
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
|
||||
'Nota cuando es Nota de crédiot, debe de tomar el devoluciones y rebajas
|
||||
If ObjFactura.TipoDocto.Contiene("Egs") Then
|
||||
IdCtaContable = ClsPaginas.GlobalDTClasificaciones(ObjFactura.CveEmpresa).FiltroPrimeroValor("IdCuentaGasto", String.Format("CveClasificacion = {0}", Row2("CveClasificacion"))).ToEntero
|
||||
Else
|
||||
IdCtaContable = ClsPaginas.GlobalDTClasificaciones(ObjFactura.CveEmpresa).FiltroPrimeroValor("IdCuentaIngresos", String.Format("CveClasificacion = {0}", Row2("CveClasificacion"))).ToEntero
|
||||
For Each RowAF As DataRow In DtPrePolizasAFCancelar.FiltraParametros("CveConceptoContable IN(4,49)").Rows
|
||||
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, CBool(RowAF("TipoMovto")), RowAF("Importe").ToString().ToDecimal() * -1, RowAF("Referencia").ToString(), RowAF("CveConceptoContable").ToString().ToEntero(), RowAF("Concepto").ToString(), FechaMovimiento, -1, -1, CveVenta:=ObjFactura.CveVenta, CveVentaAmortizacion:=RowAF("CveVentaAmortizacion").ToString().ToEntero(), CveClasificacion:=RowAF("CveClasificacion").ToString().ToEntero(), PorcentajeImpuesto:=RowAF("PorcentajeImpuesto").ToString().ToDecimal(), CveCliente:=ObjFactura.CveCliente, CveIE:=RowAF("CveIE").ToString().ToEntero(), ImporteMX:=RowAF("ImporteMN").ToString().ToDecimal() * -1, ImporteME:=RowAF("ImporteME").ToString().ToDecimal() * -1, TipoCambio:=RowAF("TC").ToString().ToDecimal(), CveSubProyecto:=RowAF("CveSubProyecto").ToString().ToEntero(), CveActivoFijo:=RowAF("CveActivoFijo").ToString().ToEntero(), Contabilizable:=CBool(RowAF("Contabilizable"))) Then
|
||||
ErrorPrepoliza = True
|
||||
End If
|
||||
'REGRESAR EL ACTIVO FIJO A ACTIVO
|
||||
If RowAF("CveActivoFijo").ToString().ToEntero() > 0 Then
|
||||
If Not ObjVentas.UpdateEstatusAFVendido(RowAF("CveActivoFijo").ToString().ToEntero(), UsuarioActual.CveEmpresa, 1) Then
|
||||
ErrorPrepoliza = True
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
If importeMovimiento <> 0 Then
|
||||
Else
|
||||
If Not ObjFactura.TipoDocto.Contiene("Rem", "Ant", "Egs", "Dev", "RNC") Then
|
||||
|
||||
If IdCtaContable <= 0 Then
|
||||
CuentasContablesInvalidas.Append("<br>" & ClsPaginas.GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString + ClsPaginas.GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = {Row2("CveClasificacion").ToString}"))
|
||||
idCuentaContabilizacion = 0
|
||||
End If
|
||||
Dim ConceptoContableAplicar = 4
|
||||
Dim CveVentaAplicar = ObjFactura.CveVenta
|
||||
Dim CveVentaAmortizacionAplicar = -1
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContableAplicar, Concepto, ObjFactura.Fecha, IdCtaContable, -1, CveVenta:=CveVentaAplicar, CveVentaAmortizacion:=CveVentaAmortizacionAplicar, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, CveClasificacion:=Row2("CveClasificacion").ToString.ToEntero, CveSubProyecto:=Row2("CveSubProyecto").ToString.ToEntero, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), TipoCambio:=tipoCambio, PorcentajeImpuesto:=Row2("PorcentajeIVA").ToString().ToDecimal) Then
|
||||
ErrorPrepoliza = True
|
||||
If ObjFactura.TipoDocto.Contiene("Egs") And ObjFactura.TipoDocto = "Ant" And CveDevolucion > 0 And NuevaFactura = 1 Then
|
||||
ConceptoContableAplicar = 11
|
||||
CveVentaAplicar = CveDevolucion
|
||||
CveVentaAmortizacionAplicar = ObjFactura.CveVenta
|
||||
End If
|
||||
|
||||
DT = TmpDTDetalle.FiltraParametros($"CvePS <> {ObjFactura.CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA"})
|
||||
|
||||
If DT.Rows.Count > 0 Then
|
||||
'Se agrega movimiento separado por la cuenta de ventas (ER)
|
||||
For Each Row2 As DataRow In DT.Rows
|
||||
importeMovimiento = ((TmpDTDetalle.SUM("TotalImporte", String.Format("CveClasificacion = {0} AND CveSubProyecto = {1} AND PorcentajeIVA = {2}", Row2("CveClasificacion"), Row2("CveSubProyecto"), Row2("PorcentajeIVA"))).ToString.ToDecimal) * ValorMultiplicador)
|
||||
importeMX = importeMovimiento * tipoCambio * Multiplicador
|
||||
FechaMovimiento = ObjFactura.FechaPago
|
||||
Concepto = $"{ObjFactura.SerieFolio} {If(Row2("CveClasificacion").ToString.ToEntero > 0, ClsPaginas.GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = {Row2("CveClasificacion").ToString}"), "")} - {If(Row2("CveSubProyecto").ToString.ToEntero > 0, ClsPaginas.GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa).FiltroPrimeroValor("SubProyecto", $"CveSubProyecto = {Row2("CveSubProyecto").ToString}"), "Sin SubProyecto Asignado")}"
|
||||
|
||||
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
|
||||
'Nota cuando es Nota de crédiot, debe de tomar el devoluciones y rebajas
|
||||
If ObjFactura.TipoDocto.Contiene("Egs") Then
|
||||
IdCtaContable = ClsPaginas.GlobalDTClasificaciones(ObjFactura.CveEmpresa).FiltroPrimeroValor("IdCuentaGasto", String.Format("CveClasificacion = {0}", Row2("CveClasificacion"))).ToEntero
|
||||
Else
|
||||
ObjFactura.SeGuardoPrePoliza = True
|
||||
IdCtaContable = ClsPaginas.GlobalDTClasificaciones(ObjFactura.CveEmpresa).FiltroPrimeroValor("IdCuentaIngresos", String.Format("CveClasificacion = {0}", Row2("CveClasificacion"))).ToEntero
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
|
||||
If importeMovimiento <> 0 Then
|
||||
|
||||
If IdCtaContable <= 0 Then
|
||||
CuentasContablesInvalidas.Append("<br>" & ClsPaginas.GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString + ClsPaginas.GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = {Row2("CveClasificacion").ToString}"))
|
||||
idCuentaContabilizacion = 0
|
||||
End If
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContableAplicar, Concepto, ObjFactura.Fecha, IdCtaContable, -1, CveVenta:=CveVentaAplicar, CveVentaAmortizacion:=CveVentaAmortizacionAplicar, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, CveClasificacion:=Row2("CveClasificacion").ToString.ToEntero, CveSubProyecto:=Row2("CveSubProyecto").ToString.ToEntero, ImporteMX:=importeMX, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), TipoCambio:=tipoCambio, PorcentajeImpuesto:=Row2("PorcentajeIVA").ToString().ToDecimal) Then
|
||||
ErrorPrepoliza = True
|
||||
Else
|
||||
ObjFactura.SeGuardoPrePoliza = True
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
importeMovimiento = 0
|
||||
Case 150 'Descuento sobre ventas
|
||||
If ObjFactura.TipoDocto.Contiene("Egs", "Dev") AndAlso Not EsNCAmortizacion Then
|
||||
|
||||
@@ -1214,7 +1214,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>ECONOLLANTAS SERVICIOS Y ACCESORIOS SA DE CV</Value>
|
||||
<Value>ECONOLLANTAS SERVICIOS Y ACCESORIOS</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -1387,7 +1387,7 @@
|
||||
<Top>1.75278in</Top>
|
||||
<Left>0.13771in</Left>
|
||||
<Height>0.36206in</Height>
|
||||
<Width>8.13325in</Width>
|
||||
<Width>8.13321in</Width>
|
||||
<ZIndex>1</ZIndex>
|
||||
<Style>
|
||||
<Border>
|
||||
@@ -1509,7 +1509,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>ECONOLLANTAS SERVICIOS Y ACCESORIOS SA DE CV</Value>
|
||||
<Value>ECONOLLANTAS SERVICIOS Y ACCESORIOS</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -1214,7 +1214,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>DESARROLLOS Y COMERCIOS AD S.A DE C.V</Value>
|
||||
<Value>DESARROLLOS Y COMERCIOS AD</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -545,7 +545,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>DESARROLLOS Y COMERCIOS AD S.A DE C.V</Value>
|
||||
<Value>DESARROLLOS Y COMERCIOS AD</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -1214,7 +1214,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>GTP GRUPO TIRES DEL PACIFICO SA DE CV</Value>
|
||||
<Value>GTP GRUPO TIRES DEL PACIFICO</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -545,7 +545,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>GTP GRUPO TIRES DEL PACIFICO SA DE CV</Value>
|
||||
<Value>GTP GRUPO TIRES DEL PACIFICO</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -1214,7 +1214,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>MAGSON LLANTAS Y SERVICIOS, S.A DE C.V</Value>
|
||||
<Value>MAGSON LLANTAS Y SERVICIOS</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -1010,7 +1010,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>MAGSON LLANTAS Y SERVICIOS, S.A DE C.V</Value>
|
||||
<Value>MAGSON LLANTAS Y SERVICIOS</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -1213,7 +1213,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>IMPULSORA DE SERVICIOS AUTOMOTRICES Y LLANTEROS S</Value>
|
||||
<Value>IMPULSORA DE SERVICIOS AUTOMOTRICES Y LLANTEROS</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -1320,7 +1320,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>IMPULSORA DE SERVICIOS AUTOMOTRICES Y LLANTEROS S</Value>
|
||||
<Value>IMPULSORA DE SERVICIOS AUTOMOTRICES Y LLANTEROS</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -1214,7 +1214,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>SOHACO, S.A. DE C.V.</Value>
|
||||
<Value>SOHACO</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -545,7 +545,7 @@
|
||||
<Paragraph>
|
||||
<TextRuns>
|
||||
<TextRun>
|
||||
<Value>SOHACO, S.A. DE C.V.</Value>
|
||||
<Value>SOHACO</Value>
|
||||
<Style>
|
||||
<FontFamily>Calibri</FontFamily>
|
||||
<FontWeight>Bold</FontWeight>
|
||||
|
||||
@@ -455,7 +455,8 @@
|
||||
</ajax:TabPanel>
|
||||
<ajax:TabPanel ID="TabDetalleParteVariable" runat="server" HeaderText="Detalle parte variable">
|
||||
<ContentTemplate>
|
||||
<asp:GridView ID="GVDetalleParteVariable" HeaderStyle-CssClass="ADtr" runat="server" GridLines="None" CssClass="table table-hover table-striped ScrollAD Widthall GVBuscaddor"></asp:GridView>
|
||||
<asp:GridView ID="GVDetalleParteVariable" HeaderStyle-CssClass="ADtr" runat="server" GridLines="None" OnRowDataBound="GVDetalleParteVariable_RowDataBound"
|
||||
CssClass="table table-hover table-striped ScrollAD Widthall GVBuscaddor"></asp:GridView>
|
||||
</ContentTemplate>
|
||||
</ajax:TabPanel>
|
||||
</ajax:TabContainer>
|
||||
|
||||
@@ -920,6 +920,18 @@ public partial class RH_CalculoSBC : ClsPaginas
|
||||
RegistraScript("$('#ModalDoctos').modal();");
|
||||
}
|
||||
|
||||
|
||||
protected void GVDetalleParteVariable_RowDataBound(object sender, GridViewRowEventArgs e)
|
||||
{
|
||||
if(e.Row.RowType == DataControlRowType.DataRow)
|
||||
{
|
||||
for (int i = 0; i < e.Row.Cells.Count; i++)
|
||||
{
|
||||
e.Row.Cells[i].Text = Server.HtmlDecode(e.Row.Cells[i].Text);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
public class archivosD
|
||||
{
|
||||
|
||||
@@ -7491,25 +7491,20 @@ Partial Class RH_Personal
|
||||
|
||||
End If
|
||||
End If
|
||||
If continuar Then
|
||||
|
||||
Using onom As ClsNominas = New ClsNominas()
|
||||
onom.ValidaFechaFinPersonal(CvePersonal, UsuarioActual.CveEmpresa, fecha.ToString("yyyy/MM/dd"))
|
||||
|
||||
If onom.DtResultados.Rows.Count > 0 Then
|
||||
|
||||
continuar = False
|
||||
Dim strbuild As StringBuilder = New StringBuilder()
|
||||
strbuild.Append("No es posible desactivar con esta fecha ya que existen asistencias posteriores a la fecha fin con nominas autorizadas, es necesario desautorizar la siguientes nominas para reintentar el proceso.")
|
||||
|
||||
For Each drow As DataRow In onom.DtResultados.Rows
|
||||
strbuild.AppendFormat("<br/> {0}", drow("PeriodoTexto"))
|
||||
Next
|
||||
Alert(strbuild.ToString(), TipoMensaje.MsgAdvertencia)
|
||||
End If
|
||||
|
||||
End Using
|
||||
End If
|
||||
'If continuar Then
|
||||
' Using onom As ClsNominas = New ClsNominas()
|
||||
' onom.ValidaFechaFinPersonal(CvePersonal, UsuarioActual.CveEmpresa, fecha.ToString("yyyy/MM/dd"))
|
||||
' If onom.DtResultados.Rows.Count > 0 Then
|
||||
' continuar = False
|
||||
' Dim strbuild As StringBuilder = New StringBuilder()
|
||||
' strbuild.Append("No es posible desactivar con esta fecha ya que existen asistencias posteriores a la fecha fin con nominas autorizadas, es necesario desautorizar la siguientes nominas para reintentar el proceso.")
|
||||
' For Each drow As DataRow In onom.DtResultados.Rows
|
||||
' strbuild.AppendFormat("<br/> {0}", drow("PeriodoTexto"))
|
||||
' Next
|
||||
' Alert(strbuild.ToString(), TipoMensaje.MsgAdvertencia)
|
||||
' End If
|
||||
' End Using
|
||||
'End If
|
||||
If continuar Then
|
||||
Using objrh As New ClsRH
|
||||
continuar = objrh.estatusPersonalUp(fecha, CvePersonal, estatus, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario, DdlMotivoBaja.SelectedValue.ToEntero(), Txobservacionesbaja.Text)
|
||||
|
||||
@@ -122,7 +122,14 @@ Partial Class ProductosyServicios
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
Private Property GeneraServicioAF As Integer
|
||||
Get
|
||||
Return IfNull(ViewState("GeneraServicioAF"), "-1", ViewState("GeneraServicioAF")).ToString().ToEntero()
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
ViewState("GeneraServicioAF") = value
|
||||
End Set
|
||||
End Property
|
||||
#End Region
|
||||
|
||||
Private ReadOnly Property PermiteClasificacion2 As Boolean
|
||||
@@ -308,6 +315,22 @@ Partial Class ProductosyServicios
|
||||
LtlScripts.Text = $"<script>function setPoscicion(){{{posiciontipo}}}</script>"
|
||||
If Not CvePS > 0 Then MuestraPanel(True)
|
||||
|
||||
|
||||
If Request("GeneraServicioAF") IsNot Nothing AndAlso IsNumeric(Request("GeneraServicioAF")) AndAlso Request("GeneraServicioAF").ToEntero() = 1 Then
|
||||
GeneraServicioAF = 1
|
||||
TxtPS.Text = "Servicio de facturación de activos fijos"
|
||||
|
||||
DdlTipoPS.SelectedValueExist("1")
|
||||
DdlTipoPS.Enabled = False
|
||||
|
||||
ChkAplicaParaVenta.Checked = True
|
||||
|
||||
Dim DrSAT = GlobalDTPS(UsuarioActual.CveEmpresa, SATClavePS:="84111506", AplicaParaVenta:=1).FiltroPrimero("") ', SATClavePS:=CveSATNC
|
||||
|
||||
DdlSATPS.SelectedValue = DrSAT("CveSATPS").ToString()
|
||||
DdlSATPS.SelectedText = DrSAT("SATClaveProductoServicio").ToString()
|
||||
End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -1403,6 +1426,7 @@ Partial Class ProductosyServicios
|
||||
|
||||
Dim ObjProductosServicios As New ClsProductosServicios()
|
||||
Dim ObjInv As New ClsInventarios(ObjProductosServicios.IniciaTransacSQL())
|
||||
Dim ObjEmpresas As New ClsSisEmpresas(ObjProductosServicios.IniciaTransacSQL())
|
||||
|
||||
Dim TieneError = False
|
||||
Dim AccionJS = ""
|
||||
@@ -1435,6 +1459,7 @@ Partial Class ProductosyServicios
|
||||
TxtFechaVigenciaRSCO.Text = "01/01/1900"
|
||||
End If
|
||||
|
||||
|
||||
If CvePS = -1 Then
|
||||
Dim PSS As String = TxtPS.Text.Trim.Replace("|", "")
|
||||
If UsuarioActual.CveEmpresa.Contiene(1, 72, 80) Then PSS = PSS.ToUpper
|
||||
@@ -1478,6 +1503,24 @@ Partial Class ProductosyServicios
|
||||
TieneError = GuardarProductoEnFranquicia(ObjProductosServicios, PSS, CveMetodoInv, EsPaquete, True)
|
||||
End If
|
||||
|
||||
If GeneraServicioAF = 1 Then
|
||||
|
||||
Dim RowFuncionalidad380 As DataRow = Nothing
|
||||
|
||||
If ObjEmpresas.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa) Then
|
||||
RowFuncionalidad380 = ObjEmpresas.DtResultados.FiltroPrimero("CveFuncionalidad = 380")
|
||||
Else
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
'SI NO TIENE LA FUNCIONALIDAD 380 GUARDAR LA FUNCIONALIDAD
|
||||
If Not TieneError AndAlso RowFuncionalidad380 Is Nothing Then
|
||||
If Not ObjEmpresas.AddUpdateEmpresaFuncionalidades(UsuarioActual.CveEmpresa, 380, $"{Me.CvePS}") Then
|
||||
TieneError = True
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
Else
|
||||
TieneError = True
|
||||
Alert("Ocurrió un Error al agregar el Producto o Servicio. Por favor vuelva a intentar.", TipoMensaje.MsgError)
|
||||
@@ -1595,7 +1638,7 @@ Partial Class ProductosyServicios
|
||||
|
||||
If Not TieneError Then
|
||||
ObjProductosServicios.Commit()
|
||||
Alert("El Producto/Servicio se guardo correctamente.", TipoMensaje.MsgInformacion, AccionJS)
|
||||
Alert("El Producto/Servicio se guardo correctamente." + If(GeneraServicioAF = 1, " Recargue la pagina de ventas para poder utilizar el servicio", ""), TipoMensaje.MsgInformacion, AccionJS)
|
||||
Else
|
||||
ObjProductosServicios.RollBack()
|
||||
End If
|
||||
|
||||
@@ -103,7 +103,7 @@
|
||||
<div class="col-md-12">
|
||||
|
||||
<asp:GridView ID="GvRefacturaciones" runat="server" AutoGenerateColumns="false" EmptyDataText="No se encontraron solicitudes de cancelación"
|
||||
DataKeyNames="CveVenta,CveCliente,SerieFolio,Folio,TipoDocto,Nombre,FolioFiscal,Total,SubTotal,CveEstatusFactura,RFCReceptor,CveEstatusRefacturacion,CveVentaSustitucion,TotalSustitucion,RFCReceptorSustitucion,CveClienteSustitucion,FolioFiscalSustitucion,SerieFolioSustitucion"
|
||||
DataKeyNames="CveVenta,CveCliente,SerieFolio,Folio,TipoDocto,Nombre,FolioFiscal,Total,SubTotal,CveEstatusFactura,RFCReceptor,CveEstatusRefacturacion,CveVentaSustitucion,TotalSustitucion,RFCReceptorSustitucion,CveClienteSustitucion,FolioFiscalSustitucion,SerieFolioSustitucion,CveEstatusFacturaSustitucion"
|
||||
CssClass="table table-striped table-advance table-hover Widthall ScrollAD mysmallbtn" data-sort="true" GridLines="None" Width="99%" OnRowDataBound="GvRefacturaciones_RowDataBound">
|
||||
<Columns>
|
||||
<asp:BoundField HeaderText="Cliente" DataField="Nombre" ItemStyle-Width="25%" />
|
||||
|
||||
@@ -187,12 +187,13 @@ public partial class Ventas_RepCancelacionesPorRespuesta : ClsPaginas
|
||||
|
||||
int CveMotivoCancelacion = -1;
|
||||
int CveEstatusRefacturacion = GvRow.DataKey("CveEstatusRefacturacion").ToEntero();
|
||||
int CveEstatusFacturaSustitucion = GvRow.DataKey("CveEstatusFacturaSustitucion").ToEntero();
|
||||
|
||||
//SI NO SE PUDO CANCELAR, CANCELAR CON EL 02
|
||||
if (CveEstatusRefacturacion == 4)
|
||||
//SI NO SE PUDO CANCELAR O LA FACTURA NUEVA FUE CANCELADA, CANCELAR CON EL 02
|
||||
if (CveEstatusRefacturacion == 4 || CveEstatusFacturaSustitucion == 5)
|
||||
{
|
||||
FolioSustitucion = "";
|
||||
//CUANDO LAS REFACTURACIONES NO SE PUEDEN CANCELAR, DEBE SER CANCELADO CON EL MOTIVO 02
|
||||
FolioSustitucion = "";
|
||||
CveMotivoCancelacion = get_GlobalDTMotivosCancelacionEmpresa(UsuarioActual.CveEmpresa, CveSATMotivoCancelacion: 2).FiltroPrimeroValor("CveMotivoCancelacion").ToEntero();
|
||||
}
|
||||
else
|
||||
|
||||
@@ -1065,7 +1065,7 @@
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</th>
|
||||
<th style="width:120px;">
|
||||
<th style="width: 120px;">
|
||||
<div class="row" id="DivPrecioLista" runat="server" visible="false">
|
||||
<div class="col-md-12">
|
||||
<asp:DropDownList ID="DdlPrecioLista" runat="server" Width="100%" CssClass="select2me" DataValueField="CvePrecioLista" DataTextField="PrecioLista" OnSelectedIndexChanged="DdlPrecioLista_SelectedIndexChanged" AutoPostBack="true"></asp:DropDownList>
|
||||
@@ -3114,26 +3114,129 @@
|
||||
</ContentTemplate>
|
||||
</ajax:TabPanel>
|
||||
|
||||
<ajax:TabPanel ID="TabVentaAF" runat="server" HeaderText="Venta de Activos Fijos" Enabled="False">
|
||||
<ajax:TabPanel ID="TabVentaAF" runat="server" HeaderText="Activos Fijos">
|
||||
<ContentTemplate>
|
||||
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
|
||||
<asp:UpdatePanel ID="UpActivosFijos" runat="server" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<table border="0" cellpadding="0" cellspacing="0" class="TextTab">
|
||||
<tr valign="top">
|
||||
<td>
|
||||
<div>
|
||||
<fieldset>
|
||||
<legend><b>Venta de Activos Fijos</b></legend>
|
||||
<table border="0">
|
||||
<tr align="left">
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
<div class="row" id="DivAgregarAF" runat="server" visible="false">
|
||||
<div class="col-md-12">
|
||||
<div class="portlet light xspadding bordered whitoutcol" style="width: 100%">
|
||||
<div class="portlet-title">
|
||||
<div class="caption font-green">
|
||||
<i class="icon-pin font-green"></i>
|
||||
<span class="caption-subject bold uppercase">Venta de Activos Fijos</span>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<div class="btn-group">
|
||||
</div>
|
||||
</div>
|
||||
<div class="tools">
|
||||
<a href="javascript:;" class="collapse"></a>
|
||||
</div>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="portlet-body ">
|
||||
<div class="portlet solid grey-cascade portlet-filter" style="">
|
||||
<div class="portlet-title portlet-filterT portletfiltrostitlee">
|
||||
<div class="tools">
|
||||
<asp:UpdatePanel runat="server" style="display: inline-block;">
|
||||
<ContentTemplate>
|
||||
<asp:Button ID="BtnFiltrarAF" runat="server" Text="Filtrar" class="btn btn-primary" OnClick="BtnFiltrarAF_Click" />
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</div>
|
||||
<div class="titlefiltros caption">
|
||||
<div class="row">
|
||||
<div class="col-md-1 truncate">Tipo Activo Fijo:</div>
|
||||
<div class="col-md-2">
|
||||
<asp:DropDownList ID="DdlTipoActivoFiltro" CssClass="form-control input-sm select2me" Width="100%" runat="server" DataTextField="TipoActivoFijo" DataValueField="CveTipoActivoFijo" OnSelectedIndexChanged="DdlTipoActivo_SelectedIndexChanged" AutoPostBack="true"></asp:DropDownList>
|
||||
</div>
|
||||
<div class="col-md-1 truncate">SubTipo Activo Fijo:</div>
|
||||
<div class="col-md-2">
|
||||
<asp:DropDownList ID="DdlSubTipoActivoFiltro" CssClass="form-control input-sm select2me" Width="100%" runat="server" DataTextField="SubTipoActivoFijo" DataValueField="CveSubTipoActivoFijo"></asp:DropDownList>
|
||||
</div>
|
||||
<div class="col-md-1 truncate">Sub Proyecto:</div>
|
||||
<div class="col-md-2">
|
||||
<asp:DropDownList ID="DdlSubProyectoFiltroAF" CssClass="form-control input-sm select2me" Width="100%" runat="server" DataTextField="SubProyecto" DataValueField="CveSubProyecto"></asp:DropDownList>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row form-group">
|
||||
<div class="col-md-1">
|
||||
Concepto:
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<asp:DropDownList ID="DdlPSAF" runat="server" DataTextField="PSCodigo" DataValueField="CvePS" Width="100%" CssClass="select2me"></asp:DropDownList>
|
||||
<asp:RequiredFieldValidator ID="RFVPSAF" runat="server" InitialValue="-1" ControlToValidate="DdlPSAF" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Concepto''</b> es necesario, por favor ingréselo." ValidationGroup="GrpValidarAF"></asp:RequiredFieldValidator>
|
||||
<ajax:ValidatorCalloutExtender ID="VCEPSAF" runat="server" HighlightCssClass="vco" TargetControlID="RFVPSAF" Width="350px"></ajax:ValidatorCalloutExtender>
|
||||
</div>
|
||||
<div class="col-md-3 text-center">
|
||||
<asp:HyperLink ID="LnkGenerarPSAF" runat="server" Visible="false" Target="_blank" Text="Crear servicio de facturación de activos fijos" CssClass="btn btn-sm btn-circle btn-primary" NavigateUrl="/Ventas/ProductosServicios.aspx?GeneraServicioAF=1"></asp:HyperLink>
|
||||
</div>
|
||||
<div class="col-md-4"></div>
|
||||
<div class="col-md-1 text-center">
|
||||
<asp:Button ID="BtnGuardarAF" runat="server" CssClass="btn btn-success" Text="Aceptar" OnClick="BtnGuardarAF_Click" ValidationGroup="GrpValidarAF" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="rowpadding">
|
||||
<asp:GridView ID="GvVentaAF" runat="server" GridLines="None" DataKeyNames="CveActivoFijo,Descripcion,DepreciacionAcumulada,MOI,Observaciones" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" Width="100%" AutoGenerateColumns="False" data-heighterror="600" EmptyDataText="No se encontraron registros">
|
||||
<Columns>
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="center" ItemStyle-Width="5%" ItemStyle-CssClass="NoClick">
|
||||
<HeaderTemplate>
|
||||
<asp:CheckBox runat="server" ID="chkSelectAllAF" CssClass="ChkAllClickAF" />
|
||||
</HeaderTemplate>
|
||||
<ItemTemplate>
|
||||
<asp:CheckBox runat="server" ID="chkAF" CssClass="ChkAllEvtAF" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
<asp:HyperLinkField DataTextField="NoSerie" DataNavigateUrlFormatString="/AF/AF.aspx?CveActivoFijo={0}" DataNavigateUrlFields="CveActivoFijo" Target="_blank" ItemStyle-Width="20%" HeaderText="No. Serie" ItemStyle-HorizontalAlign="Left" />
|
||||
<asp:HyperLinkField DataTextField="Descripcion" DataNavigateUrlFormatString="/AF/AF.aspx?CveActivoFijo={0}" DataNavigateUrlFields="CveActivoFijo" Target="_blank" ItemStyle-Width="25%" HeaderText="Activo fijo" ItemStyle-HorizontalAlign="Left" />
|
||||
<asp:BoundField DataField="MOI" ItemStyle-Width="15%" HeaderText="Valor de compra" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:N2}" />
|
||||
<asp:BoundField DataField="DepreciacionAcumulada" ItemStyle-Width="15%" HeaderText="Depreciación" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:N2}" />
|
||||
<asp:TemplateField ItemStyle-HorizontalAlign="Right" ItemStyle-Width="20%" HeaderText="Importe de venta">
|
||||
<ItemTemplate>
|
||||
<asp:TextBox ID="TxtPrecioAF" runat="server" CausesValidation="true" lang="nb" Text="0.00" MaxLength="12" Width="100%" Height="24px" CssClass="form-control input-sm"></asp:TextBox>
|
||||
<ajax:FilteredTextBoxExtender ID="FTBEPrecioAF" runat="server" TargetControlID="TxtPrecioAF" FilterType="Custom, Numbers" ValidChars="." />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row" id="DivVentasAF" runat="server" visible="false">
|
||||
<div class="col-md-12">
|
||||
<div class="portlet light xspadding bordered whitoutcol" style="width: 100%">
|
||||
<div class="portlet-title">
|
||||
<div class="caption font-green">
|
||||
<i class="icon-pin font-green"></i>
|
||||
<span class="caption-subject bold uppercase">Venta de Activos Fijos</span>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<div class="btn-group">
|
||||
</div>
|
||||
</div>
|
||||
<div class="tools">
|
||||
<a href="javascript:;" class="collapse"></a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="portlet-body ">
|
||||
<div class="rowpadding">
|
||||
<asp:GridView ID="GvAF" runat="server" GridLines="None" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" data-sort="true" BorderWidth="1" BorderColor="#D3D3D3" CellSpacing="0" Width="100%" AutoGenerateColumns="False" data-heighterror="600" EmptyDataText="No se encontraron registros">
|
||||
<Columns>
|
||||
<asp:HyperLinkField DataTextField="NoSerie" DataNavigateUrlFormatString="/AF/AF.aspx?CveActivoFijo={0}" DataNavigateUrlFields="CveActivoFijo" ItemStyle-Width="20%" Target="_blank" HeaderText="No. Serie" ItemStyle-HorizontalAlign="Left" />
|
||||
<asp:HyperLinkField DataTextField="Descripcion" DataNavigateUrlFormatString="/AF/AF.aspx?CveActivoFijo={0}" DataNavigateUrlFields="CveActivoFijo" ItemStyle-Width="25%" Target="_blank" HeaderText="Activo fijo" ItemStyle-HorizontalAlign="Left" />
|
||||
<asp:BoundField DataField="Total" ItemStyle-Width="15%" HeaderText="Valor de venta" ItemStyle-HorizontalAlign="Right" DataFormatString="{0:N2}" />
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</ContentTemplate>
|
||||
</asp:UpdatePanel>
|
||||
</ContentTemplate>
|
||||
@@ -9515,6 +9618,8 @@
|
||||
step: 30
|
||||
});
|
||||
|
||||
$('body').on('click', '.ChkAllClickAF input', function () { $(".ChkAllEvtAF input").not(this).prop('checked', $('.ChkAllClickAF input').is(':checked')); });
|
||||
|
||||
if(HdnCargarInventario.value == 'True'){
|
||||
$("#TabAlmacen_tab .ajax__tab_inner").click(function () {
|
||||
CargaMovimientosInventario();
|
||||
|
||||
@@ -2736,6 +2736,9 @@ Partial Class Ventas
|
||||
TmpDT.Columns.Add("CveMarca", GetType(Integer))
|
||||
TmpDT.Columns.Add("CvePrecioLista", GetType(Integer))
|
||||
TmpDT.Columns.Add("PrecioLista", GetType(String))
|
||||
TmpDT.Columns.Add("CveActivoFijo", GetType(Integer))
|
||||
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
|
||||
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
|
||||
|
||||
GvPS.DataSource = ObjVentas.DtResultados
|
||||
GvPS.DataBind()
|
||||
@@ -2763,6 +2766,9 @@ Partial Class Ventas
|
||||
TmpDT.Columns.Add("CveMarca", GetType(Integer))
|
||||
TmpDT.Columns.Add("CvePrecioLista", GetType(Integer))
|
||||
TmpDT.Columns.Add("PrecioLista", GetType(String))
|
||||
TmpDT.Columns.Add("CveActivoFijo", GetType(Integer))
|
||||
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
|
||||
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
|
||||
|
||||
GvPS.DataSource = ObjVentas.DtResultados
|
||||
GvPS.DataBind()
|
||||
@@ -3291,7 +3297,12 @@ Partial Class Ventas
|
||||
DivAddUMPyME.Visible = False
|
||||
End If
|
||||
|
||||
TabVentaAF.Visible = False
|
||||
TabVentaAF.Visible = (UsuarioActual.CveRol = 1)
|
||||
DivAgregarAF.Visible = (CveVenta <= 0 AndAlso UsuarioActual.CveRol = 1)
|
||||
|
||||
If DivAgregarAF.Visible Then
|
||||
CargaDatosAF()
|
||||
End If
|
||||
|
||||
'CARGA VALORES INICIALES PARA AGREGAR PS DESDE MODAL
|
||||
CargaMetodosPSModal()
|
||||
@@ -4635,8 +4646,12 @@ Partial Class Ventas
|
||||
TmpDT.Columns.Add("CveVentaDetalleRNC", GetType(Integer))
|
||||
TmpDT.Columns.Add("TieneProntoPago", GetType(String))
|
||||
TmpDT.Columns.Add("ImporteProntoPago", GetType(Decimal))
|
||||
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
|
||||
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
|
||||
End If
|
||||
|
||||
CargaAFVenta()
|
||||
|
||||
'CargaFirmas
|
||||
If ObjVentas.GetVentasFirmas(CveVenta) Then
|
||||
If ObjVentas.DtResultados.Rows.Count > 0 Then
|
||||
@@ -7658,12 +7673,20 @@ Partial Class Ventas
|
||||
dtt = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1)
|
||||
DdlSubProyectoDatos.DataSource = dtt.FiltraParametros("EsSucursal = True ")
|
||||
DdlSubProyectoDatos.DataBind()
|
||||
|
||||
DdlSubProyectoCobranza.DataSource = dtt.FiltraParametros("EsSucursal = True ")
|
||||
DdlSubProyectoCobranza.DataBind()
|
||||
|
||||
DdlSubProyectoEjecucion.DataSource = dtt.FiltraParametros("EsSucursal = True ")
|
||||
DdlSubProyectoEjecucion.DataBind()
|
||||
|
||||
DdlSubProyectoPyME.DataSource = dtt
|
||||
DdlSubProyectoPyME.DataBind()
|
||||
|
||||
DdlSubProyectoFiltroAF.DataSource = dtt
|
||||
DdlSubProyectoFiltroAF.DataBind()
|
||||
DdlSubProyectoFiltroAF.Items.Insert(0, New ListItem("Todos", "-1"))
|
||||
|
||||
dtt.Dispose()
|
||||
End Sub
|
||||
Private Sub CargaClasificaciones()
|
||||
@@ -13337,7 +13360,7 @@ Partial Class Ventas
|
||||
Row("PU").ToString().ToDouble(If(factura.ConvertirPesos, factura.TipoCambio, 1)), Row("ImporteIVA").ToString().ToDouble, Math.Round((Row("Total").ToString().ToDouble(If(factura.ConvertirPesos, factura.TipoCambio, 1)) * (1 + Row("PorcentajeIVA").ToString().ToDouble(If(factura.ConvertirPesos, factura.TipoCambio, 1)))), 6),
|
||||
Row("Obs").ToString(), Row("Descuento").ToString().ToDouble(If(factura.ConvertirPesos, factura.TipoCambio, 1)), Row("TipoDescuento").ToString().ToEntero(), Row("CveSubProyecto").ToString().ToEntero(), Row("CvePresupuestoIngreso").ToString().ToEntero(), TiempoEntrega:=Row("TiempoEntrega").ToString(), CveVentaDetallePadre:=Row("CveVentaDetalle").ToString().ToEntero(),
|
||||
CveContratoDetalle:=Row("CveContratoDetalle").ToString().ToEntero(), CvePromocionDetalle:=Row("CvePromocionDetalle").ToString().ToEntero(), IEPS:=Row("ImporteIEPS").ToString().ToDouble, CveMovimientoDetallePedido:=Row("CveMovimientoDetallePedido").ToString().ToEntero(), ImporteRetIVA:=Row("ImporteRetIVA").ToString().ToDouble, ImporteRetISR:=Row("ImporteRetISR").ToString().ToDouble,
|
||||
PorcentajeIVA:=Row("PorcentajeIVA").ToString().ToDecimal, PorcentajeIEPS:=Row("PorcentajeIEPS").ToString().ToDouble, PorcentajeRetIVA:=Row("PorcentajeRetIVA").ToString().ToDouble, PorcentajeRetISR:=Row("PorcentajeRetISR").ToString().ToDouble, CuentaPredial:=Row("CuentaPredial").ToString(), CvePrecioLista:=Row("CvePrecioLista").ToString().ToEntero()) Then
|
||||
PorcentajeIVA:=Row("PorcentajeIVA").ToString().ToDecimal, PorcentajeIEPS:=Row("PorcentajeIEPS").ToString().ToDouble, PorcentajeRetIVA:=Row("PorcentajeRetIVA").ToString().ToDouble, PorcentajeRetISR:=Row("PorcentajeRetISR").ToString().ToDouble, CuentaPredial:=Row("CuentaPredial").ToString(), CvePrecioLista:=Row("CvePrecioLista").ToString().ToEntero(), CveActivoFijo:=Row("CveActivoFijo").ToString().ToEntero()) Then
|
||||
ErrorList.Add("Ocurrió un error al agregar un Producto o Servicio a la Factura.<br />Revise su factura y cualquier detalle comuníquese a Soporte Técnico")
|
||||
Exit For
|
||||
Else
|
||||
@@ -13914,6 +13937,25 @@ Partial Class Ventas
|
||||
IdCtaContable = ObjFactura.Cliente.IdCtaContMonedaExtranjera
|
||||
End If
|
||||
IdCtaContableCliente = IdCtaContable
|
||||
|
||||
Dim DtAF As DataTable = TmpDT.FiltraParametros("CveActivoFijo > 0")
|
||||
|
||||
If DtAF.Rows.Count > 0 Then
|
||||
For Each RowAF As DataRow In DtAF.FiltraParametros("", "", {"CveActivoFijo", "Obs"}).Rows
|
||||
Dim ImporteDepreciado As Decimal = DtAF.SUMD("AFDepreciacion", $"CveActivoFijo = {RowAF("CveActivoFijo")}").RoundSQL(2)
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, ImporteDepreciado, Referencia, 271, $"Depreciación {RowAF("Obs")}", FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=(ImporteDepreciado).RoundSQL, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), TipoCambio:=tipoCambio, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), Contabilizable:=SeContabiliza) Then
|
||||
ErrorPrepoliza = True
|
||||
End If
|
||||
|
||||
'MARCAR EL ACTIVO FIJO COMO VENDEDIDO
|
||||
If Not ErrorPrepoliza AndAlso RowAF("CveActivoFijo").ToString().ToEntero() > 0 Then
|
||||
If Not ObjVentas.UpdateEstatusAFVendido(RowAF("CveActivoFijo").ToString().ToEntero(), UsuarioActual.CveEmpresa, 5) Then
|
||||
ErrorPrepoliza = True
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
|
||||
'Case 7 'descuentos
|
||||
@@ -14775,12 +14817,12 @@ Partial Class Ventas
|
||||
CveVentaAmortizacionAplicar = ObjFactura.CveVenta
|
||||
End If
|
||||
|
||||
DT = TmpDTDetalle.FiltraParametros($"CvePS <> {CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA"})
|
||||
DT = TmpDTDetalle.FiltraParametros($"CvePS <> {CvePSAmortizacion}", "", {"CveClasificacion", "CveSubProyecto", "PorcentajeIVA", "CveActivoFijo"})
|
||||
|
||||
If DT.Rows.Count > 0 Then
|
||||
'Se agrega movimiento separado por la cuenta de ventas (ER)
|
||||
For Each Row2 As DataRow In DT.Rows
|
||||
importeMovimiento = (TmpDTDetalle.SUM("TotalImporte", String.Format("CveClasificacion = {0} And CveSubProyecto = {1} AND PorcentajeIVA = {2}", Row2("CveClasificacion"), Row2("CveSubProyecto"), Row2("PorcentajeIVA"))).ToString().ToDecimal()) * ValorMultiplicador
|
||||
importeMovimiento = (TmpDTDetalle.SUM("TotalImporte", String.Format("CveClasificacion = {0} And CveSubProyecto = {1} AND PorcentajeIVA = {2} AND ISNULL(CveActivoFijo,-1) = {3}", Row2("CveClasificacion"), Row2("CveSubProyecto"), Row2("PorcentajeIVA"), If(Row2("CveActivoFijo").ToString().ToEntero() > 0, Row2("CveActivoFijo").ToString().ToEntero(), -1))).ToString().ToDecimal()) * ValorMultiplicador
|
||||
importeMX = importeMovimiento * tipoCambio * Multiplicador
|
||||
FechaMovimiento = ObjFactura.FechaPago
|
||||
Concepto = $"{ObjFactura.SerieFolio} {If(Row2("CveClasificacion").ToString().ToEntero() > 0, GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = {Row2("CveClasificacion").ToString()}"), "")} - {If(Row2("CveSubProyecto").ToString().ToEntero() > 0, GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa).FiltroPrimeroValor("SubProyecto", $"CveSubProyecto = {Row2("CveSubProyecto").ToString()}"), "Sin SubProyecto Asignado")}"
|
||||
@@ -14796,6 +14838,26 @@ Partial Class Ventas
|
||||
|
||||
If importeMovimiento <> 0 Then
|
||||
|
||||
If Row2("CveActivoFijo").ToString().ToEntero() > 0 Then
|
||||
Dim DtAF As DataTable = TmpDT.FiltraParametros($"CveActivoFijo = {Row2("CveActivoFijo")}")
|
||||
|
||||
If DtAF.Rows.Count > 0 Then
|
||||
For Each RowAF As DataRow In DtAF.FiltraParametros("", "", {"CveActivoFijo", "Obs"}).Rows
|
||||
Dim ImporteCosto As Decimal = DtAF.SUMD("AFValorInicial", $"CveActivoFijo = {RowAF("CveActivoFijo")}").RoundSQL(2)
|
||||
Dim ImporteDepreciacion As Decimal = DtAF.SUMD("AFDepreciacion", $"CveActivoFijo = {RowAF("CveActivoFijo")}").RoundSQL(2)
|
||||
Dim ImporteC4 As Decimal = importeMovimiento
|
||||
Dim ImporteC4MX As Decimal = importeMX
|
||||
|
||||
importeMovimiento = ImporteC4 - ImporteCosto + ImporteDepreciacion
|
||||
importeMX = ImporteC4MX - ImporteCosto + ImporteDepreciacion
|
||||
|
||||
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovimiento, ImporteCosto, Referencia, 49, $"COSTO {RowAF("Obs")}", FechaMovimiento, IdCtaContable, -1, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteMX:=(ImporteCosto).RoundSQL, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), TipoCambio:=tipoCambio, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), CveActivoFijo:=Row2("CveActivoFijo").ToString().ToEntero(), Contabilizable:=SeContabiliza) Then
|
||||
ErrorPrepoliza = True
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
|
||||
If IdCtaContable <= 0 Then
|
||||
CuentasContablesInvalidas.Append("<br>" & GlobalDTContaConceptosContables(-1).FiltroPrimero(String.Format("CveConceptoContable = {0}", ConceptoContable))("ConceptoContable").ToString() + GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("Clasificacion", $"CveClasificacion = {Row2("CveClasificacion").ToString()}"))
|
||||
idCuentaContabilizacion = 0
|
||||
@@ -19032,7 +19094,8 @@ Partial Class Ventas
|
||||
Optional EntregaDirecta As Integer = 0, Optional CveContratoDetalle As Integer = 0, Optional CveVentaDetalle As Integer = 0, Optional CveMovimientoDetallePedido As Integer = 0,
|
||||
Optional CveOrdenCompraDetalle As Integer = 0, Optional CveVentaDetalleRemision As Integer = 0, Optional CveVentaDetalleCotizacion As Integer = 0, Optional CuentaPredial As String = "",
|
||||
Optional RegeneraIEPS As Boolean = True, Optional CveVentaDetallePedido2 As Integer = 0, Optional SeActualiza As Boolean = False, Optional CvePromocionDetalle As Integer = -1, Optional EsCargo As Boolean = False,
|
||||
Optional ImporteProntoPago As Decimal = 0, Optional ByRef ObjDescuento As Modelos.VentaDescuentos = Nothing, Optional CvePrecioLista As Integer = -1, Optional PrecioLista As String = "") As Boolean
|
||||
Optional ImporteProntoPago As Decimal = 0, Optional ByRef ObjDescuento As Modelos.VentaDescuentos = Nothing, Optional CvePrecioLista As Integer = -1, Optional PrecioLista As String = "",
|
||||
Optional CveActivoFijo As Integer = -1, Optional AFDepreciacion As Decimal = 0D, Optional AFValorInicial As Decimal = 0D) As Boolean
|
||||
|
||||
Dim Retorno As Boolean = False
|
||||
Try
|
||||
@@ -19128,6 +19191,10 @@ Partial Class Ventas
|
||||
End If
|
||||
End If
|
||||
|
||||
If CveUM <= 0 Then
|
||||
CveUM = DrPS("CveUnidadMedida").ToString().ToEntero()
|
||||
End If
|
||||
|
||||
Row("Cantidad") = Cantidad
|
||||
Row("CveUM") = CveUM
|
||||
Row("UM") = DrPS("UnidadMedida")
|
||||
@@ -19291,6 +19358,11 @@ Partial Class Ventas
|
||||
Row("CvePrecioLista") = CvePrecioLista
|
||||
Row("PrecioLista") = PrecioLista
|
||||
|
||||
Row("CveActivoFijo") = CveActivoFijo
|
||||
Row("AFDepreciacion") = AFDepreciacion
|
||||
Row("AFValorInicial") = AFValorInicial
|
||||
|
||||
|
||||
If UsuarioActual.CveEmpresa.Contiene(119, 13, 83) Then
|
||||
If Not RemisionesLista.Count > 0 Then 'SI VIENE DE REMISION NO SE CONSIDERA
|
||||
|
||||
@@ -19528,6 +19600,10 @@ Partial Class Ventas
|
||||
TmpDT.Columns.Add("CvePrecioLista", GetType(Integer))
|
||||
TmpDT.Columns.Add("PrecioLista", GetType(String))
|
||||
|
||||
TmpDT.Columns.Add("CveActivoFijo", GetType(Integer))
|
||||
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
|
||||
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
|
||||
|
||||
TmpDT.Columns("EsOutSourcing").DefaultValue = False
|
||||
TmpDT.Columns("EsCargo").DefaultValue = False
|
||||
|
||||
@@ -22254,7 +22330,7 @@ Partial Class Ventas
|
||||
Row("PU").ToString().ToDouble(If(ChkConvertirDoctoPesos.Checked, TxtTipoCambio.Text.ToDecimal, 1)), Row("ImporteIVA").ToString().ToDouble, Math.Round((Row("Total").ToString().ToDouble(If(ChkConvertirDoctoPesos.Checked, TxtTipoCambio.Text.ToDecimal, 1)) * (1 + Row("PorcentajeIVA").ToString().ToDouble(If(ChkConvertirDoctoPesos.Checked, TxtTipoCambio.Text.ToDecimal, 1)))), 6),
|
||||
Row("Obs").ToString(), Row("Descuento").ToString().ToDouble(If(ChkConvertirDoctoPesos.Checked, TxtTipoCambio.Text.ToDecimal, 1)), Row("TipoDescuento").ToString().ToEntero(), Row("CveSubProyecto").ToString().ToEntero(), Row("CvePresupuestoIngreso").ToString().ToEntero(), PorcentajeIVA:=Row("PorcentajeIVA").ToString().ToDecimal, IEPS:=Row("ImporteIEPS").ToString().ToDouble(If(ChkConvertirDoctoPesos.Checked, TxtTipoCambio.Text.ToDecimal, 1)), PorcentajeIEPS:=Row("PorcentajeIEPS").ToString().ToDouble, TiempoEntrega:=Row("TiempoEntrega").ToString(),
|
||||
CveVentaDetallePadre:=Row("CveVentaDetalle").ToString().ToEntero(), CveContratoDetalle:=Row("CveContratoDetalle").ToString().ToEntero(), CvePromocionDetalle:=If(DtPromociones IsNot Nothing, DtPromociones.FiltroPrimeroValor("CvePromocionDetalle", $"CvePS={Row("CvePS").ToString()}").ToEntero(), -1),
|
||||
ImporteRetIVA:=Row("ImporteRetIVA").ToString().ToDouble, ImporteRetISR:=Row("ImporteRetISR").ToString().ToDouble, PorcentajeRetIVA:=Row("PorcentajeRetIVA").ToString().ToDouble, PorcentajeRetISR:=Row("PorcentajeRetISR").ToString().ToDouble, CuentaPredial:=Row("CuentaPredial").ToString(), CvePrecioLista:=Row("CvePrecioLista").ToString().ToEntero()) Then
|
||||
ImporteRetIVA:=Row("ImporteRetIVA").ToString().ToDouble, ImporteRetISR:=Row("ImporteRetISR").ToString().ToDouble, PorcentajeRetIVA:=Row("PorcentajeRetIVA").ToString().ToDouble, PorcentajeRetISR:=Row("PorcentajeRetISR").ToString().ToDouble, CuentaPredial:=Row("CuentaPredial").ToString(), CvePrecioLista:=Row("CvePrecioLista").ToString().ToEntero(), CveActivoFijo:=Row("CveActivoFijo").ToString().ToEntero()) Then
|
||||
OcurrioError = True
|
||||
Exit For
|
||||
Else
|
||||
@@ -29986,6 +30062,9 @@ Partial Class Ventas
|
||||
TmpDT.Columns.Add("CveVentaDetalleRNC", GetType(Integer))
|
||||
TmpDT.Columns.Add("TieneProntoPago", GetType(String))
|
||||
TmpDT.Columns.Add("ImporteProntoPago", GetType(Decimal))
|
||||
'TmpDT.Columns.Add("CveActivoFijo", GetType(Integer))
|
||||
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
|
||||
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
|
||||
End If
|
||||
Dim FechaFactura As DateTime = Now
|
||||
|
||||
@@ -35149,6 +35228,8 @@ Partial Class Ventas
|
||||
TmpDT = ObjVentas.DtResultados
|
||||
TmpDT.Columns.Add("EntregaDirecta", GetType(Integer))
|
||||
TmpDT.Columns.Add("CveMovimientoDetallePedido", GetType(Integer))
|
||||
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
|
||||
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
|
||||
End If
|
||||
|
||||
If ObjVentas.GetVenta(CveVentaNC, UsuarioActual.CveEmpresa, VerificaAlmacen:=False) Then
|
||||
@@ -35309,6 +35390,10 @@ Partial Class Ventas
|
||||
TmpDT.Columns.Add("CveMarca", GetType(Integer))
|
||||
TmpDT.Columns.Add("CvePrecioLista", GetType(Integer))
|
||||
TmpDT.Columns.Add("PrecioLista", GetType(String))
|
||||
TmpDT.Columns.Add("CveActivoFijo", GetType(Integer))
|
||||
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
|
||||
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
|
||||
|
||||
Return TmpDT
|
||||
End Function
|
||||
Private Function InicializaDTVentasNCProntoPago() As DataTable
|
||||
@@ -36773,5 +36858,160 @@ Partial Class Ventas
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
#Region " A C T I V O S - F I J O S"
|
||||
|
||||
Protected Sub CargaDatosAF()
|
||||
CargarTipoActivoFijo()
|
||||
CargaDdlAF()
|
||||
|
||||
DdlTipoActivo_SelectedIndexChanged(DdlTipoActivoFiltro, EventArgs.Empty)
|
||||
End Sub
|
||||
|
||||
Protected Sub CargarTipoActivoFijo()
|
||||
DdlTipoActivoFiltro.DataSource = GlobalDTTipoActivoFijo(UsuarioActual.CveEmpresa).FiltraParametros("", "TipoActivoFijo")
|
||||
DdlTipoActivoFiltro.DataBind()
|
||||
DdlTipoActivoFiltro.Items.Insert(0, New ListItem("Todos", "-1"))
|
||||
End Sub
|
||||
|
||||
Protected Sub DdlTipoActivo_SelectedIndexChanged(sender As Object, e As EventArgs)
|
||||
DdlSubTipoActivoFiltro.Items.Clear()
|
||||
DdlSubTipoActivoFiltro.DataSource = GlobalDTSubTipoActivoFijo(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("CveTipoActivoFijo = {0}", DdlTipoActivoFiltro.SelectedValue), "SubTipoActivoFijo")
|
||||
DdlSubTipoActivoFiltro.DataBind()
|
||||
DdlSubTipoActivoFiltro.Items.Insert(0, New ListItem("Todos", "-1"))
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
Protected Sub BtnFiltrarAF_Click(sender As Object, e As EventArgs)
|
||||
Using ObjAF As New ClsAF
|
||||
If ObjAF.GetRepActivosFijosDepreciacion(UsuarioActual.CveEmpresa, Now, Depreciados:=1, CveTipoAF:=DdlTipoActivoFiltro.SelectedValue.ToEntero(), CveSubTipoAF:=DdlSubTipoActivoFiltro.SelectedValue.ToEntero(), CveSubProyecto:=DdlSubProyectoFiltroAF.SelectedValue.ToEntero()) Then
|
||||
GvVentaAF.DataSource = ObjAF.DtResultados.FiltraParametros("CveActivoFijo > 0 AND CveEstadoActivoFijo <> 5")
|
||||
End If
|
||||
End Using
|
||||
|
||||
GvVentaAF.DataBind()
|
||||
UpActivosFijos.Update()
|
||||
End Sub
|
||||
|
||||
Private Sub CargaAFVenta()
|
||||
If CveVenta > 0 AndAlso TmpDT IsNot Nothing AndAlso TmpDT.COUNT("CveActivoFijo", "CveActivoFijo > 0") > 0 Then
|
||||
DivVentasAF.Visible = True
|
||||
Using ObjAF As New ClsAF
|
||||
If ObjAF.GetActivosFijosVenta(Me.CveVenta, UsuarioActual.CveEmpresa) Then
|
||||
GvAF.DataSource = ObjAF.DtResultados
|
||||
End If
|
||||
End Using
|
||||
GvAF.DataBind()
|
||||
UpActivosFijos.Update()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Sub CargaDdlAF()
|
||||
Dim strAF = UsuarioActual.Empresa.Funcionalidad(380)
|
||||
Dim CvePSAF As Integer = -1
|
||||
|
||||
If String.IsNullOrEmpty(strAF) Then
|
||||
Dim RowFuncionalidad380 As DataRow = Nothing
|
||||
|
||||
Using ObjEmpresas As New ClsSisEmpresas
|
||||
If ObjEmpresas.GetEmpresasFuncionalidades(UsuarioActual.CveEmpresa) Then
|
||||
RowFuncionalidad380 = ObjEmpresas.DtResultados.FiltroPrimero("CveFuncionalidad = 380")
|
||||
End If
|
||||
End Using
|
||||
|
||||
If RowFuncionalidad380 IsNot Nothing Then
|
||||
CvePSAF = RowFuncionalidad380("Valor").ToString().ToEntero()
|
||||
End If
|
||||
|
||||
Else
|
||||
CvePSAF = strAF.ToEntero()
|
||||
End If
|
||||
|
||||
If CvePSAF > 0 Then
|
||||
Dim dtt = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=CvePSAF, AplicaParaVenta:=1) ', SATClavePS:=CveSATNC
|
||||
|
||||
If dtt IsNot Nothing Then
|
||||
DdlPSAF.DataSource = dtt
|
||||
DdlPSAF.DataBind()
|
||||
End If
|
||||
Else
|
||||
LnkGenerarPSAF.Visible = True
|
||||
DdlPSAF.Items.Insert(0, New ListItem("Seleccione", "-1"))
|
||||
End If
|
||||
|
||||
End Sub
|
||||
Protected Sub BtnGuardarAF_Click(sender As Object, e As EventArgs)
|
||||
|
||||
Dim Cantidad As Decimal = 1
|
||||
Dim CvePS = DdlPSAF.SelectedValue.ToEntero()
|
||||
Dim CveUnidadMedida As Integer = -1
|
||||
Dim UnidadMedida As String = ""
|
||||
Dim CveClasificacion As Integer = -1
|
||||
Dim Clasificacion As String = ""
|
||||
Dim Obs As String = ""
|
||||
|
||||
Dim PrecioVenta As Decimal = 0.0D
|
||||
|
||||
Dim CveProyecto As Integer = -1
|
||||
Dim Proyecto As String = ""
|
||||
|
||||
Dim CveSubProyecto As Integer = DdlSubProyectoDatos.SelectedValue.ToEntero()
|
||||
Dim SubProyecto As String = DdlSubProyectoDatos.SelectedItem.Text
|
||||
|
||||
If CveSubProyecto > 0 Then
|
||||
Dim RowSP = GlobalDTSubProyectos(-1, CveSubProyecto:=CveSubProyecto, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimero("")
|
||||
If RowSP IsNot Nothing Then
|
||||
CveProyecto = RowSP("CveProyecto").ToString().ToEntero()
|
||||
Proyecto = RowSP("Proyecto").ToString()
|
||||
End If
|
||||
End If
|
||||
|
||||
TmpDT.Rows.Clear()
|
||||
|
||||
Dim CveAF As Integer = -1
|
||||
Dim AFDepreciacion As Decimal = 0
|
||||
Dim AFValorInicial As Decimal = 0
|
||||
|
||||
For Each GvRow As GridViewRow In GvVentaAF.Rows
|
||||
If GvRow.RowType = DataControlRowType.DataRow Then
|
||||
'LIMPIA VARIABLES
|
||||
Obs = ""
|
||||
CveAF = -1
|
||||
AFDepreciacion = 0
|
||||
AFValorInicial = 0
|
||||
|
||||
PrecioVenta = 0D
|
||||
|
||||
If GvRow.FCCheckBox("chkAF").Checked Then
|
||||
Obs = GvRow.DataKey("Observaciones")
|
||||
CveAF = GvRow.DataKey("CveActivoFijo").ToEntero()
|
||||
AFDepreciacion = GvRow.DataKey("DepreciacionAcumulada").ToDecimal()
|
||||
AFValorInicial = GvRow.DataKey("MOI").ToDecimal()
|
||||
|
||||
PrecioVenta = GvRow.FCTextBox("TxtPrecioAF").Text.ToDecimal()
|
||||
|
||||
If PrecioVenta < 1D Then
|
||||
Alert($"El activo fijo '{GvRow.DataKey("Descripcion")}' debe tener un importe para venta.", TipoMensaje.MsgAdvertencia)
|
||||
TmpDT.Rows.Clear()
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
AgregarProductoServicio(Cantidad, CveUnidadMedida, UnidadMedida, CveClasificacion, Clasificacion, CvePS, "", Obs, PrecioVenta, 0,
|
||||
CveProyecto, Proyecto, CveSubProyecto, SubProyecto, CveActivoFijo:=CveAF, AFDepreciacion:=AFDepreciacion, AFValorInicial:=AFValorInicial)
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
Next
|
||||
|
||||
DdlMoneda.SelectedValue = "1"
|
||||
DdlMoneda.Enabled = False
|
||||
|
||||
CalculaTotalesVenta()
|
||||
|
||||
Tab.ActiveTabIndex = 0
|
||||
Updatetabs.Update()
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
|
||||
Reference in New Issue
Block a user