This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2023-06-15 17:52:01 -07:00
37 changed files with 1433 additions and 1135 deletions

View File

@@ -2498,7 +2498,7 @@ Partial Class AF_AF
FechaBaja:=FechaBaja, Lat:=TxtLatitud.Text, Longi:=TxtLongitud.Text, AgroCuenta:=TxtAgroCuenta.Text) > 0 Then
ViewState("CveActivoFijo") = ObjAF.CveActivoFijo
GlobalDTActivoFijos(UsuarioActual.CveEmpresa) = Nothing
If UsuarioActual.Empresa.TipoContabilidad = 1 Then
If UsuarioActual.Empresa.TipoContabilidad = 1 AndAlso DdlCtaContable.SelectedValue.ToEntero > 0 Then
If Not ObjContabilidad.AddCuentasAsignaciones(49, UsuarioActual.CveEmpresa, CveCuenta:=DdlCtaContable.SelectedValue.ToEntero, CveActivoFijo:=ObjAF.CveActivoFijo) Then
ErrorGuardar = True
End If

View File

@@ -1806,7 +1806,14 @@ Public Class ClsBancos
' Me.OnError("Ocurrió un error al guardar los cambios en el Banco", Ex1, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
Catch ex As Exception
OnError("Ocurrió un error al cancelar el movimiento en bancos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
If ex.Message.Contains("El Movimiento no se puede eliminar porque tiene una cancelación relacionada") Then
OnError("El Movimiento no se puede eliminar porque tiene una cancelación relacionada, se tiene que eliminar primero la cancelación.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
Else
OnError("Ocurrió un error al eliminar el movimiento en bancos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
End If
End Try
Return Retorno
@@ -4210,12 +4217,15 @@ Public Class ClsBancos
#Region "CONCILIACIÓN BANCARIA"
Public Function UpdateConciliacionBancaria(CveIE As Integer, FechaAplicado As Date, CveUsuario As Integer) As Boolean
Public Function UpdateConciliacionBancaria(CveIE As Integer, FechaAplicado As Date, CveIEEstadoCuenta As Integer, FueConciliado As Integer, Opcion As Integer, CveUsuario As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Banc_ConciliacionBancariaUpdate")
With SqlAdapter.SelectCommand.Parameters
.Add("@CveIE", SqlDbType.Int).Value = CveIE
.Add("@FechaAplicado", SqlDbType.Date).Value = FechaAplicado
.Add("@CveIEEstadoCuenta", SqlDbType.Int).Value = CveIEEstadoCuenta
.Add("@FueConciliado", SqlDbType.Int).Value = FueConciliado
.Add("@Opcion", SqlDbType.Int).Value = Opcion
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
End With
Try

View File

@@ -1279,6 +1279,27 @@ Public Class ClsContabilidad
End Try
Return Retorno
End Function
Public Function UpdateContabilizable(CvePrePolizaDetalle As Integer, Contabilizar As Boolean) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Conta_PrePolizasContabilizableUpdate")
With SqlAdapter.SelectCommand.Parameters
.Add("@CvePrePolizaDetalle", SqlDbType.Int).Value = CvePrePolizaDetalle
.Add("@Contabilizar", SqlDbType.Bit).Value = If(Contabilizar, 1, 0)
End With
Try
SqlAdapter.Fill(Data)
Retorno = True
Catch ex As Exception
If ex.Message.Contains("50015;") Then
OnError("No se puede actualizar una póliza en un ejercicio Cerrado", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
Else
OnError("Ocurrió un error al contabilizar las prepoliza detalle.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
End If
End Try
Return Retorno
End Function
Public Function ContabilizarPrePoliza(CvePrePoliza As Integer, CveUsuario As Integer, Empresa As Empresa, Optional Fecha As Date = MinFecha, Optional Concepto As String = "",
Optional ObjConta As ClsContPAQi = Nothing, Optional pIDPoliza As Integer = -1) As Boolean
@@ -1286,7 +1307,7 @@ Public Class ClsContabilidad
Dim Retorno As Boolean = False
Dim OcurrioError As Boolean = False
StrLog.AppendFormat("CvePrep:{0} - Inicio -", CvePrePoliza)
StrLog.AppendFormat("CvePrep:{0} - CveE:{1} - Inicio -", CvePrePoliza, Empresa.CveEmpresa)
If Empresa.TipoContabilizacion = 1 Then ' contabilidad en SIG

View File

@@ -3405,14 +3405,15 @@ Public Class ClsNominas
End Function
#Region "Visor sat"
Public Function SATSolicitudTimbreNominaGral(IDsolicitud As Integer, cveEmpresa As Integer, fechaInicio As String, fechaFin As String, TipoNomina As Integer) As Boolean
Public Function SATSolicitudTimbreNominaGral(IDsolicitud As Integer, CveEmpresa As Integer, FechaInicio As Date, FechaFin As Date, TipoNomina As Integer, RegimenContratacion As Integer) As Boolean
Dim retorno As Boolean = False
DataAdapter("[PA_SAT_SolicitudTimbreNominaGral]", CommandType.StoredProcedure)
addParameters("@IDsolicitud", SqlDbType.Int, IDsolicitud)
addParameters("@TipoNomina", SqlDbType.Int, TipoNomina)
addParameters("@CveEmpresa", SqlDbType.Int, cveEmpresa)
addParameters("@FechaInicio", SqlDbType.VarChar, fechaInicio)
addParameters("@FechaFin", SqlDbType.VarChar, fechaFin)
addParameters("@CveEmpresa", SqlDbType.Int, CveEmpresa)
addParameters("@FechaInicio", SqlDbType.Date, FechaInicio)
addParameters("@FechaFin", SqlDbType.Date, FechaFin)
addParameters("@RegimenContratacion", SqlDbType.Int, RegimenContratacion)
retorno = RunQuery("Ocurrió un error al obtener el Calculo ISR anual.")
Return retorno
End Function

View File

@@ -3519,6 +3519,33 @@ Public Class ClsPaginas
HttpContext.Current.Application(AppNombre) = value
End Set
End Property
Public Shared Property GlobalDTContaCuentasContables(CveEmpresa As Integer, Optional Codigo As String = "-1", Optional Afectable As Integer = -1, Optional CvePadre As Integer = -1) As DataTable
Get
Dim AppNombre As String = $"GlobalDTContaCuentasContables-{CveEmpresa}"
If HttpContext.Current.Application(AppNombre) Is Nothing Then
Using ObjContabilidad As New ClsContabilidad
If ObjContabilidad.GetCuentas(-1, "-1", -1, CveEmpresa) Then HttpContext.Current.Application(AppNombre) = ObjContabilidad.DtResultados Else HttpContext.Current.Application(AppNombre) = Nothing
End Using
End If
Dim filtros As New List(Of String)
If Codigo <> "-1" Then filtros.Add($"Codigo = '{Codigo}'")
If Afectable <> -1 Then filtros.Add($"Afectable = {Afectable}")
If CvePadre <> -1 Then filtros.Add($"CvePadre = {CvePadre}")
If filtros.Count > 0 Then
Dim Dv As New DataView(DirectCast(HttpContext.Current.Application(AppNombre), DataTable), String.Join(" AND ", filtros), "", DataViewRowState.CurrentRows)
GlobalDTContaCuentasContables = Dv.ToTable
Dv.Dispose()
Else
GlobalDTContaCuentasContables = DirectCast(HttpContext.Current.Application(AppNombre), DataTable)
End If
End Get
Set(value As DataTable)
Dim AppNombre As String = $"GlobalDTContaCuentasContables-{CveEmpresa}"
HttpContext.Current.Application(AppNombre) = value
End Set
End Property
#End Region
#Region "**********************************************************************GLOBAL DT RH (RECURSOS HUMANOS)********************************************************************"
Property GlobalDTAsistenciaDetalle() As DataTable

View File

@@ -1343,7 +1343,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, Optional CveActivoFijo 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, Optional NumTurnos As Decimal = 0D) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_VentasDetalleAdd")
@@ -1375,6 +1375,7 @@ Public Class ClsVentas
.Add("@CuentaPredial", SqlDbType.VarChar).Value = CuentaPredial
.Add("@CvePrecioLista", SqlDbType.Int).Value = CvePrecioLista
.Add("@CveActivoFijo", SqlDbType.Int).Value = CveActivoFijo
.Add("@NumTurnos", SqlDbType.Decimal).Value = NumTurnos
End With
Try

View File

@@ -178,8 +178,8 @@ Partial Class Bancos_ConciliacionesBancariasaspx
If Not CBool(Dr("FueConciliado").ToString) And Dr("CveIE").ToString.ToEntero > 0 Then
For Each DrE As DataRow In DtDatosEdoCuenta.Rows
If ((Dr("FechaDocumento").ToString.ToDate = DrE("FechaDocumento").ToString.ToDate And Dr("Importe").ToString.ToDouble = DrE("Importe").ToString.ToDouble And Dr("Tipo").ToString = DrE("Tipo").ToString And DdlCriterio.SelectedValue.ToEntero = 1) Or (Dr("Importe").ToString.ToDouble = DrE("Importe").ToString.ToDouble And Dr("Tipo").ToString = DrE("Tipo").ToString And DdlCriterio.SelectedValue.ToEntero = 2)) And Not CBool(DrE("Seleccionado").ToString) And Not CBool(DrE("FueConciliado").ToString) And Not CBool(Dr("Seleccionado").ToString) Then
If Not ObjBancos.UpdateConciliacionBancaria(Dr("CveIE").ToString.ToEntero, If(Dr("FechaDocumento").ToString.ToDate < txtFechaI.Text.ToDate, TxtFechaAplicado.Text.ToDate, Dr("FechaDocumento").ToString.ToDate), UsuarioActual.CveUsuario) Or Not ObjBancos.UpdateIEEstadoCuenta(DrE("CveIEEstadoCuenta").ToString.ToEntero, DrE("Importe").ToString.ToDouble, True, Dr("CveIE").ToString.ToEntero,
DrE("Referencia").ToString, DrE("Tipo").ToString, DrE("FechaDocumento").ToString.ToDate, DrE("CveCuenta").ToString.ToEntero) Then
If Not ObjBancos.UpdateConciliacionBancaria(Dr("CveIE").ToString.ToEntero, If(Dr("FechaDocumento").ToString.ToDate < txtFechaI.Text.ToDate, TxtFechaAplicado.Text.ToDate, Dr("FechaDocumento").ToString.ToDate), -1, 1, 1, UsuarioActual.CveUsuario) Or
Not ObjBancos.UpdateConciliacionBancaria(Dr("CveIE").ToString.ToEntero, If(Dr("FechaDocumento").ToString.ToDate < txtFechaI.Text.ToDate, TxtFechaAplicado.Text.ToDate, Dr("FechaDocumento").ToString.ToDate), DrE("CveIEEstadoCuenta").ToString.ToEntero, 1, 2, UsuarioActual.CveUsuario) Then
ErrorTrans = True
Else
If Not ObjOI.AddEventoBitacora("El pago ha sido conciliado", "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveIE:=Dr("CveIE").ToString.ToEntero) Then
@@ -283,7 +283,7 @@ Partial Class Bancos_ConciliacionesBancariasaspx
Dim CveIE As Integer = 0
For Each Gvr As GridViewRow In GvDatos.Rows
If Gvr.FCCheckBox("ChkConciliado").Checked And Gvr.FCCheckBox("ChkConciliado").Enabled Then
If Not ObjBancos.UpdateConciliacionBancaria(Gvr.DataKey("CveIE").ToEntero, If(Gvr.DataKey("FechaDocumento").ToString.ToDate < txtFechaI.Text.ToDate, TxtFechaAplicado.Text.ToDate, Gvr.DataKey("FechaDocumento").ToString.ToDate), UsuarioActual.CveUsuario) Then
If Not ObjBancos.UpdateConciliacionBancaria(Gvr.DataKey("CveIE").ToEntero, If(Gvr.DataKey("FechaDocumento").ToString.ToDate < txtFechaI.Text.ToDate, TxtFechaAplicado.Text.ToDate, Gvr.DataKey("FechaDocumento").ToString.ToDate), -1, 1, 1, UsuarioActual.CveUsuario) Then
ErrorTrans = True
Else
If Not ObjOI.AddEventoBitacora("El pago ha sido conciliado", "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveIE:=Gvr.DataKey("CveIE").ToEntero) Then
@@ -350,7 +350,7 @@ Partial Class Bancos_ConciliacionesBancariasaspx
For Each Gvr As GridViewRow In GvDatos.Rows
If Gvr.FCCheckBox("ChkConciliado").Checked And Gvr.FCCheckBox("ChkConciliado").Enabled Then
Selecciono = True
If Not ObjBancos.UpdateConciliacionBancaria(Gvr.DataKey("CveIE").ToEntero, If(Gvr.DataKey("FechaDocumento").ToString.ToDate < txtFechaI.Text.ToDate, TxtFechaAplicado.Text.ToDate, Gvr.DataKey("FechaDocumento").ToString.ToDate), UsuarioActual.CveUsuario) Then
If Not ObjBancos.UpdateConciliacionBancaria(Gvr.DataKey("CveIE").ToEntero, If(Gvr.DataKey("FechaDocumento").ToString.ToDate < txtFechaI.Text.ToDate, TxtFechaAplicado.Text.ToDate, Gvr.DataKey("FechaDocumento").ToString.ToDate), -1, 1, 1, UsuarioActual.CveUsuario) Then
ErrorTrans = True
Else
If Not ObjOI.AddEventoBitacora("El pago ha sido conciliado", "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveIE:=Gvr.DataKey("CveIE").ToEntero) Then

View File

@@ -1297,13 +1297,23 @@
<div class="row">
<div class="col-md-2">Acreedor:</div>
<div class="col-md-10">
<asp:DropDownList ID="DdlAcreedorPrePoliza" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="RazonSocial" DataValueField="CveProveedor" Width="300px">
<asp:DropDownList ID="DdlAcreedorPrePoliza" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="RazonSocial" DataValueField="CveProveedor" Width="300px" AutoPostBack="true">
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVAcreedorPrePoliza" runat="server" ControlToValidate="DdlAcreedorPrePoliza" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Acreedor''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpAplicarSaldo"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEAcreedorPrePoliza" runat="server" HighlightCssClass="vco" TargetControlID="RFVAcreedorPrePoliza" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row">
<div class="col-md-2">Compra:</div>
<div class="col-md-10">
<asp:DropDownList ID="DdlCompras" runat="server" CssClass="select2me" AppendDataBoundItems="true" DataTextField="SerieFolio" DataValueField="CveCompra" Width="300px" >
<asp:ListItem Selected="True" Text="Todos" Value="-1"></asp:ListItem>
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVCompra" runat="server" ControlToValidate="DdlCompras" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Compra''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpAplicarSaldo"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" HighlightCssClass="vco" TargetControlID="RFVCompra" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
</div>
<div class="modal-footer">

View File

@@ -2,7 +2,9 @@
Option Explicit On
Imports System.Data
Imports System.Windows.Forms.VisualStyles.VisualStyleElement
Imports Extensiones
Imports Stimulsoft.Report.StiOptions.Export
Partial Class Bancos_Creditos
Inherits ClsPaginas
@@ -423,8 +425,8 @@ Partial Class Bancos_Creditos
LbSaldo.Text = $"Saldo <b>Acreedor</b> "
If ObjPrepoliza.GetPrePolizasDetalle(ObjCreditos.CvePrePoliza, UsuarioActual.CveEmpresa) AndAlso ObjPrepoliza.DtResultados.Rows.Count > 0 Then
LbSaldoAcreedor.Text = ObjPrepoliza.DtResultados.FiltraParametros("CveConceptoContable = 42").Rows(0)("Importe").ToString.FormatoNumero
LbSaldoDocxPagar.Text = ObjPrepoliza.DtResultados.FiltraParametros("CveConceptoContable = 50").Rows(0)("Importe").ToString.FormatoNumero
LbSaldoAcreedor.Text = ObjPrepoliza.DtResultados.FiltroPrimeroValor("Importe", "CveConceptoContable = 42").FormatoNumero
LbSaldoDocxPagar.Text = ObjPrepoliza.DtResultados.FiltroPrimeroValor("Importe", "CveConceptoContable = 50").FormatoNumero
End If
Else
@@ -1572,65 +1574,111 @@ Partial Class Bancos_Creditos
Dim CvePrePoliza = 0
'GENERA PREPOLIZA
If ObjContabilidad.GetPlantillaConceptos(UsuarioActual.CveEmpresa, 69) AndAlso ObjContabilidad.DtResultados.Rows.Count > 0 Then
Dim DtPlantilla = ObjContabilidad.DtResultados
Dim importeMovimiento = 0.0D
Dim importeMovimiento = 0.0D
Dim ConceptoContable = 0
Dim TipoMovimiento = False
Dim IdCtaContable = 0
Dim Concepto = ""
Dim Referencia = $"Crédito: {TxtReferencia.Text}"
Dim FechaMovimiento = Now.ToDate
Dim MsgError As String = ""
CvePrePoliza = ObjContabilidad.AddPrePolizas("Creditos/RegistrodeRegistro", 69, TxtCSTotalCredito.Text.ToDouble, TxtCSTotalCredito.Text.ToDouble, DdlCSTipoMoneda.SelectedValue.ToEntero, FechaMovimiento, $"Crédito: {TxtReferencia.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
Dim ImporteDocXPagar = TxtTotalCredito.Text.ToDecimal
Dim CveActivoFijo = -1
Dim CveProveedor = -1
Dim CveCreditoPrePoliza = -1
Dim CveCreditoPrePoliza = -1
If CvePrePoliza > 0 Then
importeMovimiento = TxtVehiculoValor.Text.ToDecimal - TxtVehiculoAnticipo.Text.todecimal 'importe financiado
Concepto = $"Crédito: {TxtReferencia.Text}"
Dim Pago As New CompraPago
Pago.Fecha = Now
Pago.CveIE = CveIE
If CvePrePoliza > 0 Then
For Each Row As DataRow In DtPlantilla.Rows
ConceptoContable = Row("CveConcepto").ToString.ToEntero
TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
IdCtaContable = 0
importeMovimiento = 0
Concepto = $"Crédito: {TxtReferencia.Text}"
CveActivoFijo = -1
CveProveedor = -1
CveCreditoPrePoliza = -1
Dim ObjCompra As New ClsCompras
Select Case ConceptoContable
Case 50
importeMovimiento = ImporteDocXPagar
IdCtaContable = DdlCtaContable.SelectedValue.ToEntero
CveCreditoPrePoliza = CveCredito
CveProveedor = DdlProveedores.SelectedValue.ToEntero
Case 42
importeMovimiento = ImporteDocXPagar
If ObjProveedor.GetProveedores(ClsCompProveedores.TipoConsulta.ParaUsoEnEmpresa, DdlAcreedorPrePoliza.SelectedValue.ToEntero, "-1", "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) AndAlso ObjProveedor.DtResultados.Rows.Count > 0 Then
IdCtaContable = ObjProveedor.IdCtaContAcreedor
CveProveedor = ObjProveedor.CveProveedor
End If
End Select
If importeMovimiento <> 0 Then
If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, ImporteMX:=importeMovimiento, CveProveedor:=CveProveedor, CveCredito:=CveCreditoPrePoliza) Then
ErrorPrePoliza = True
End If
If ObjCompra.GetCompras(DdlCompras.SelectedValue.ToEntero, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa) Then
Dim dr As DataRow = ObjCompra.DtResultados.FiltroPrimero("")
Dim CompraActual As New Compra
CompraActual.CveCompra = dr("CveCompra").ToString.ToEntero
CompraActual.CveTipoConceptoProveedor = dr("CveTipoConcepto").ToString.ToEntero
CompraActual.CveProveedor = dr("CveProveedor").ToString.ToEntero
CompraActual.CveMoneda = dr("CveMoneda").ToString.ToEntero
CompraActual.Fecha = dr("Fecha").ToString.ToDate
CompraActual.SerieFolio = dr("SerieFolio").ToString
CompraActual.ProveedorNombre = dr("RazonSocial").ToString
CompraActual.TC = dr("TipoCambioOriginal").ToString.ToDecimal
CompraActual.Total = dr("Total").ToString.ToDecimal
CompraActual.IVA = dr("IVA").ToString.ToDecimal
CompraActual.IVADeducible = dr("IVADeducible").ToString.ToDecimal
CompraActual.IVANoDeducible = dr("IVANoDeducible").ToString.ToDecimal
CompraActual.CompraNoDeducible = dr("NoDeducible").ToString.ToEntero
CompraActual.IEPS = dr("IEPS").ToString.ToDecimal
CompraActual.RetIVA = dr("RetIVA").ToString.ToDecimal
CompraActual.RetISR = dr("RetISR").ToString.ToDecimal
CompraActual.CveConceptoRetISR = dr("CveRetISRConcepto").ToString.ToEntero
CompraActual.CveConceptoRetIVA = dr("CveRetIVAConcepto").ToString.ToEntero
CompraActual.PorcentajeIVA = dr("PorcentajeIVA").ToString.ToDecimal
CompraActual.EsImportacion = dr("EsImportacion").ToString = "1"
CompraActual.UsuarioActual = UsuarioActual
CompraActual.CveSubProyecto = dr("CveSubProyecto").ToString.ToEntero
Pago.CveMonedaPago = CompraActual.CveMoneda
Pago.ImportePago = importeMovimiento
If AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjContabilidad) Then
MsgError = "No se pudo insertar la póliza"
ErrorPrePoliza = True
End If
If Not ErrorPrePoliza Then
If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePoliza, True, importeMovimiento, Referencia, 50, Concepto, FechaMovimiento, IdCtaContable, -1, ImporteMX:=importeMovimiento, CveProveedor:=CveProveedor, CveCredito:=CveCreditoPrePoliza) Then
MsgError = "No se pudo insertar la póliza"
ErrorPrePoliza = True
End If
Next
Else
ErrorPrePoliza = True
End If
End If
'For Each Row As DataRow In DtPlantilla.Rows
' ConceptoContable = Row("CveConcepto").ToString.ToEntero
' TipoMovimiento = If(Row("TipoMovto").ToString = "True", True, False)
' IdCtaContable = 0
' importeMovimiento = 0
' CveActivoFijo = -1
' CveProveedor = -1
' CveCreditoPrePoliza = -1
' Select Case ConceptoContable
' Case 50
' importeMovimiento = ImporteDocXPagar
' IdCtaContable = DdlCtaContable.SelectedValue.ToEntero
' CveCreditoPrePoliza = CveCredito
' CveProveedor = DdlProveedores.SelectedValue.ToEntero
' Case 42
' importeMovimiento = ImporteDocXPagar
' If ObjProveedor.GetProveedores(ClsCompProveedores.TipoConsulta.ParaUsoEnEmpresa, DdlAcreedorPrePoliza.SelectedValue.ToEntero, "-1", "-1", "-1", "-1", "-1", "-1", "-1", -1, UsuarioActual.CveEmpresa) AndAlso ObjProveedor.DtResultados.Rows.Count > 0 Then
' IdCtaContable = ObjProveedor.IdCtaContAcreedor
' CveProveedor = ObjProveedor.CveProveedor
' End If
' End Select
' If importeMovimiento <> 0 Then
' If Not ObjContabilidad.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContable, Concepto, FechaMovimiento, IdCtaContable, -1, ImporteMX:=importeMovimiento, CveProveedor:=CveProveedor, CveCredito:=CveCreditoPrePoliza) Then
' ErrorPrePoliza = True
' End If
' End If
'Next
Else
ErrorPrePoliza = True
MsgError = "No se registró la prepóliza"
End If
If Not ErrorPrePoliza Then
If Not ObjBancos.UpdateCreditosPrePoliza(CveCredito, CvePrePoliza) Then
MsgError = "."
ErrorPrePoliza = True
End If
End If
@@ -1644,6 +1692,22 @@ Partial Class Bancos_Creditos
End If
End Sub
Private Sub DdlAcreedorPrePoliza_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlAcreedorPrePoliza.SelectedIndexChanged
If DdlAcreedorPrePoliza.SelectedValue.ToEntero > 0 Then
Dim ObjCompras As New ClsCompras
DdlCompras.ClearSelection()
If ObjCompras.GetCompras(-1, "-1", "-1", DdlAcreedorPrePoliza.SelectedValue.ToEntero, -1, UsuarioActual.CveEmpresa) Then
DdlCompras.DataSource = ObjCompras.DtResultados.FiltraParametros("Saldo > 0")
Else
DdlCompras.DataSource = Nothing
End If
ObjCompras.Dispose()
DdlCompras.DataBind()
DdlCompras.Items.Insert(0, New ListItem(" - ", "-1"))
End If
End Sub
#End Region

View File

@@ -730,7 +730,7 @@
<asp:RequiredFieldValidator ID="RFVDdlSubproyectoBancos" runat="server" CssClass="help-block errorimput" InitialValue="-1" ControlToValidate="DdlSubproyectoBancos" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo es necesario, por favor ingréselo." ValidationGroup="GrpGuardarBancos"></asp:RequiredFieldValidator>
<i></i>
</div>
<div class="col-md-6" style="text-align: right!important">
<div class="col-md-3" style="text-align: right!important">
<asp:Button Text="Generar Bancos" runat="server" ID="BtnGeneraBancos" OnClick="BtnGeneraBancos_Click" Style="margin-left: 30px;" class="btn btn-primary" ValidationGroup="GrpGuardarBancos" />
<asp:HiddenField ID="HdnBancoCvePrePoliza" runat="server" />
<asp:HyperLink ID="HplBancosLiga" runat="server" Text="Ver Póliza" CssClass="Texto" Visible="false" />

View File

@@ -638,7 +638,7 @@ Partial Class Bancos_FluctuacionCambiaria
Next
If Not ErrorRegistrar AndAlso Banco.UpdateFluctuacionesBitacoraPrePoliza(CvePrePoliza, 3, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
If Not ErrorRegistrar AndAlso Not Banco.UpdateFluctuacionesBitacoraPrePoliza(CvePrePoliza, 3, HdnCveFluctuacionBitacora.Value.ToEntero, UsuarioActual.CveEmpresa) Then
ErrorRegistrar = True
End If
If Not ErrorRegistrar AndAlso Not Conta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual) Then

View File

@@ -291,6 +291,12 @@
<asp:TextBox ID="TxtOtrosIngresosEgresos" runat="server" CssClass="form-control input-sm" ClientIDMode="Static" Style="text-align: right;" AutoComplete="off"></asp:TextBox>
</div>
<label id="lblDevolucion" runat="server" class="col-md-2 control-label ">Dev. Cliente:</label>
<div id="divTxtDevolucion" runat="server" class="col-md-2 input-icon">
<i style="margin: 0px;">$</i>
<asp:TextBox ID="TxtDevolución" runat="server" CssClass="form-control input-sm" ClientIDMode="Static" Style="text-align: right;" AutoComplete="off"></asp:TextBox>
</div>
</div>
<br />
<asp:Panel ID="PnlRecibidoPor" runat="server" Visible="false">
@@ -1485,47 +1491,7 @@
</div>
</div>
</div>
<div id="ModalAjustarMovimiento" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header ">
<button type="button" class="close" data-dismiss="modal">&times;</button>
<h4 class="modal-title">Ajustar Movimiento</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel ID="UpModalAjustarMovimiento" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<div class="row">
<div class="col-xs-2">Importe:</div>
<div class="col-xs-8" style="text-align: left">
<asp:TextBox ID="TxtAjustarMovimiento" runat="server" Width="120px" CssClass="form-control" ClientIDMode="Static" Style="text-align: right;" AutoComplete="off" onkeydown="return (event.keyCode!=13);"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVTxtAjustarMovimiento" runat="server" CssClass="help-block errorimput" ControlToValidate="TxtAjustarMovimiento" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Importe''</b> es necesario, por favor ingréselo." ValidationGroup="GpoAjustarMovimiento"></asp:RequiredFieldValidator>
<ajax:FilteredTextBoxExtender ID="FIETxtAjustarMovimiento" runat="server" TargetControlID="TxtAjustarMovimiento" FilterType="Custom, Numbers" ValidChars="+-.," />
<i></i>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div class="modal-footer">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<asp:Button ID="BtnAjustarMovimiento" Text="Ajustar" runat="server" ClientIDMode="Static" CssClass="btn btn-primary" ValidationGroup="GpoAjustarMovimiento" />
<button type="button" class="btn btn-danger" data-dismiss="modal">Cancelar</button>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</div>
</div>
</div>
<%-- <div id="ModalCancelarComplemetno" class="modal ADS fade" role="dialog">
<div class="modal-dialog">
@@ -1773,11 +1739,23 @@
//VALIDA QUE LA CANTIDAD DE T (TXT) NO SEA MAYOR A C
function ValidarCantidad(t, c) {
var Ot = 0.00;
debugger;
// considera importe de OT ingresos, para que se peuda exceder
if ($get('TxtOtrosIngresosEgresos')) { Ot = ToDouble($get('TxtOtrosIngresosEgresos').value); }
t.value = (ToDouble(t.value) > ToDouble(c) + Ot ? c : t.value)
}
function ValidarCantidadDev(s) {
var Ot = 0.00;
var Dev = 0.00;
debugger; //valida importe
if ($get('TxtDevolución') && (ToDouble($get('TxtDevolución').value) > s)) $get('TxtDevolución').value = s;
// considera importe de OT ingresos, para que se peuda exceder
if ($get('TxtOtrosIngresosEgresos')) { Ot = ToDouble($get('TxtOtrosIngresosEgresos').value); }
if ($get('TxtImporte')) $get('TxtImporte').value = ToDouble($get('TxtDevolución').value) + Ot;
}
var TipoCambioActual = 0.0;
function CambiaTC(txt) {
let TipoCambioTxt = ToDouble(txt.value)

View File

@@ -1072,7 +1072,7 @@ Partial Class Bancos_IE
End If
End If
If UsuarioActual.TienePermisoProceso(85) Then LnkCancelar.Visible = True
If UsuarioActual.TienePermisoProceso(85) AndAlso Not ObjIE.FueConciliado Then LnkCancelar.Visible = True
''COMENTAR - solo para pruebas
'If UsuarioActual.TienePermisoProceso(85) Then LnkCancelar.Visible = True
@@ -1504,6 +1504,8 @@ Partial Class Bancos_IE
DdlCliente.SelectedText = ObjCliente.NombreComercial
DdlCliente.SelectedValue = ObjCliente.CveCliente.ToString
DivOtrosIngresosEgresos.Visible = True
'TxtImporte.ReadOnly = True
TxtImporte.Attributes.Add(“readonly”, “readonly”)
End If
'If UsuarioActual.Empresa.TipoContabilidad = 2 AndAlso UsuarioActual.Empresa.UsaAC AndAlso UsuarioActual.Empresa.Funcionalidad(200) = "1" Then
@@ -3009,7 +3011,8 @@ Partial Class Bancos_IE
If TxtOtrosIngresosEgresos.Text.ToDecimal <> 0 Then
Dim TipoMovtoIE As Boolean = False
Dim CveConcIE As Integer = 78
If Impo > 0 Then
Dim tCveSub As Integer = GlobalDTSubProyectos(-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto").ToEntero
If Impo < 0 Then
TipoMovtoIE = True
Impo = Math.Abs(Impo)
CveConcIE = 78
@@ -3021,7 +3024,7 @@ Partial Class Bancos_IE
IdCtaContableAplicar = UsuarioActual.Empresa.Funcionalidad(266).ToEntero
End If
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoIE, Impo, ReferenciaAplicar, CveConcIE, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=Impo, ImporteME:=0) Then
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoIE, Impo, ReferenciaAplicar, CveConcIE, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=Impo, ImporteME:=0, CveSubProyecto:=tCveSub) Then
MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
Exit Select
End If
@@ -3029,7 +3032,7 @@ Partial Class Bancos_IE
'CANCELA NC
IdCtaContableAplicar = IDCtaBeneficiario
ImporteAplicar = ImporteAplicar + Impo
ImporteAplicar = ImporteAplicar - Impo
ImporteAplicarMN = (ImporteAplicar * If(tCveMoneda = 1, 1, TxtTipoCambio.Text.ToDecimal)).RoundSQL()
If Not ObjMov.AddPrePolizasDetalle(CvePrePoliza, True, -(ImporteAplicar), ReferenciaAplicar, 12, ConceptoAplicar, Now, IdCtaContableAplicar, -1, CveIE, CveVenta:=CveVentaDevDin, CveCliente:=CveCliente, ImporteMX:=-(ImporteAplicarMN), ImporteME:=ImporteAplicarME) Then
MsgError = "Ocurrió un error al registrar el asiento de pago de devolución"
@@ -5806,7 +5809,10 @@ Partial Class Bancos_IE
CvePrePolizaDevDin = UrlParametros("CVEPREPOLIZA").ToString.ToEntero
ImporteOriginalDevDin = UrlParametros("ORIGINAL").ToString.ToDecimal.RoundSQL(6)
TxtImporte.Text = UrlParametros("SALDO").ToString.FormatoNumero()
TxtImporte.Attributes.Add("onkeyup", $"FormatoMoneda(this);ValidarCantidad(this,{UrlParametros("SALDO").ToString});")
TxtDevolución.Text = UrlParametros("SALDO").ToString.FormatoNumero()
'TxtImporte.Attributes.Add("onkeyup", $"FormatoMoneda(this);ValidarCantidad(this,{UrlParametros("SALDO").ToString});")
TxtDevolución.Attributes.Add("onkeyup", $"FormatoMoneda(this);ValidarCantidadDev( {UrlParametros("SALDO").ToString});")
TxtOtrosIngresosEgresos.Attributes.Add("onkeyup", $"ValidarCantidadDev();")
TxtImporteLetra.Text = UrlParametros("SALDO").ToString.ToDouble.Texto2Letras(UrlParametros("CVEMONEDA").ToString.ToEntero)
CargaCliente(CveCliente)
'BuscarCliente()
@@ -6322,26 +6328,26 @@ Partial Class Bancos_IE
End Sub
Private Sub LnkAjustarMovimiento_Click(sender As Object, e As EventArgs) Handles LnkAjustarMovimiento.Click
RegistraScript("$('#ModalAjustarMovimiento').modal('show');")
End Sub
'Private Sub LnkAjustarMovimiento_Click(sender As Object, e As EventArgs) Handles LnkAjustarMovimiento.Click
' RegistraScript("$('#ModalAjustarMovimiento').modal('show');")
'End Sub
Private Sub BtnAjustarMovimiento_Click(sender As Object, e As EventArgs) Handles BtnAjustarMovimiento.Click
'Private Sub BtnAjustarMovimiento_Click(sender As Object, e As EventArgs) Handles BtnAjustarMovimiento.Click
Dim ObjBanco As New ClsBancos
ObjBanco.IniciaTransacSQL()
' Dim ObjBanco As New ClsBancos
' ObjBanco.IniciaTransacSQL()
If ObjBanco.UpdateAjustarMovimiento(CveIE, TxtAjustarMovimiento.Text.ToDecimal, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
ObjBanco.Commit()
RegistraScript("$('#ModalAjustarMovimiento').modal('hide');", "ALTR")
Alert("El ajuste se realizo correctamente.", TipoMensaje.MsgInformacion, $" document.location.href = ""./IE.aspx?CveIE={CveIE}"";")
Else
ObjBanco.RollBack()
End If
' If ObjBanco.UpdateAjustarMovimiento(CveIE, TxtAjustarMovimiento.Text.ToDecimal, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
' ObjBanco.Commit()
' RegistraScript("$('#ModalAjustarMovimiento').modal('hide');", "ALTR")
' Alert("El ajuste se realizo correctamente.", TipoMensaje.MsgInformacion, $" document.location.href = ""./IE.aspx?CveIE={CveIE}"";")
' Else
' ObjBanco.RollBack()
' End If
ObjBanco.Dispose()
' ObjBanco.Dispose()
End Sub
'End Sub

View File

@@ -76,6 +76,7 @@
<asp:CheckBox Text="Pagar con pesos" TextAlign="Right" Visible="false" AutoPostBack="true" ID="ChkPagarPesos" OnCheckedChanged="ChkPagarPesos_CheckedChanged" runat="server" ClientIDMode="Static" />
<asp:CheckBox Text="Pagar con dolares" TextAlign="Right" Visible="false" AutoPostBack="true" ID="ChkPagarDolares" OnCheckedChanged="ChkPagarDolares_CheckedChanged" runat="server" ClientIDMode="Static" />
</div>
</div>
<asp:Panel ID="PanelBancos" runat="server" Visible="true">
@@ -138,16 +139,7 @@
<asp:TextBox ID="TxtPagueseA" runat="server" MaxLength="70" Width="100%"></asp:TextBox>&nbsp;<asp:Image ID="ImgBuscaProv" runat="server" Visible="false" ImageUrl="/Imagenes/buscar.gif" onclick="_loadJavaScript:AbrirVentana('/Ventas/PopUpBuscarClientes.aspx?Opt=Fact',800,600,'popBuscarProv');" Width="16px" Style="cursor: pointer;" alt="Buscar" />
</div>
</div>
<div class="row" runat="server" id="rowComisiones" visible="false">
<label class="col-xs-4" runat="server" id="lblpagocomisiones">Comisiones:</label>
<div class="col-xs-8">
<asp:DropDownList ID="DdlOtrosPagos" CssClass="form-control input-sm select2me" runat="server" AutoPostBack="true" Width="100%">
<asp:ListItem Value="-1">-</asp:ListItem>
<asp:ListItem Value="2">Otros Ingresos</asp:ListItem>
</asp:DropDownList>
</div>
</div>
<asp:UpdatePanel ID="UpCuentaDeposito" UpdateMode="Conditional" runat="server">
<ContentTemplate>
@@ -510,8 +502,11 @@
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Importes</span>
</div>
<div class="col-xs-6" runat="server" id="rowComisiones" visible="false">
<asp:CheckBox ID="ChkComisiones" runat="server" Text="Comisiones" TextAlign="Right" AutoPostBack="true" />
</div>
<div class="actions">
<div class="btn-group">
</div>

View File

@@ -430,7 +430,7 @@ Partial Class Bancos_PopIECompras
CargaCompra(CveCompra)
End If
If UsuarioActual.CveEmpresa.Contiene(4, 7, 11, 12, 72, 80) Then
If UsuarioActual.CveEmpresa.Contiene(4, 7, 11, 12, 72, 80, 122, 140, 141, 145) Then
rowComisiones.Visible = True
End If
@@ -1032,14 +1032,21 @@ Partial Class Bancos_PopIECompras
End If
End Sub
Private Sub DdlOtrosPagos_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlOtrosPagos.SelectedIndexChanged
Dim EsOtrosEgresos As Boolean = (DdlOtrosPagos.SelectedValue.Equals("2"))
'Private Sub DdlOtrosPagos_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlOtrosPagos.SelectedIndexChanged
' Dim EsOtrosEgresos As Boolean = (DdlOtrosPagos.SelectedValue.Equals("2"))
' rowComision.Visible = EsOtrosEgresos
' rowTotal.Visible = EsOtrosEgresos
' TxtComision.Text = "0.00"
' TxtTotal.Text = TxtImporte.Text
'End Sub
Private Sub ChkComisiones_CheckedChanged(sender As Object, e As EventArgs) Handles ChkComisiones.CheckedChanged
Dim EsOtrosEgresos As Boolean = ChkComisiones.Checked
rowComision.Visible = EsOtrosEgresos
rowTotal.Visible = EsOtrosEgresos
TxtComision.Text = "0.00"
TxtTotal.Text = TxtImporte.Text
TxtTotal.Text = TxtImporte.Text
End Sub
Protected Sub DdlFuncionarioEmpleado_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlFuncionarioEmpleado.SelectedIndexChanged
ArrIEFuncionariosEmpleados = New ArrayList()
ArrIE = New ArrayList()
@@ -1399,7 +1406,12 @@ Partial Class Bancos_PopIECompras
Dim Pago As New CompraPago
Pago.Fecha = TxtFechaDocumento.Text.ToDate
Pago.CveMonedaPago = CveMoneda
ImportePagado = TxtImporte.Text.Trim.ToDecimal.RoundSQL
If ChkComisiones.Checked Then
ImportePagado = TxtImporte.Text.Trim.ToDecimal.RoundSQL - TxtComision.Text.ToDecimal
Else
ImportePagado = TxtImporte.Text.Trim.ToDecimal.RoundSQL
End If
'Tipos de cambio
If Pago.CveMonedaPago = 1 AndAlso CompraActual.CveMoneda = 2 Then 'Si la venta viene en Dolares y se va a pagar en Pesos
Pago.TCCambioMoneda = 1 / TxtTipoCambio.Text.ToDecimal
@@ -1416,7 +1428,8 @@ Partial Class Bancos_PopIECompras
Select Case RBLContado.SelectedValue
Case "1" ' Bancos
CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero, Fecha, TxtFolio.Text.Trim, TxtPagueseA.Text.Trim, ImportePagado, CveMoneda, 15.55, TxtObservaciones.Text.Trim, "", True, True, -1, CvePrePoliza, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCuentaTarjeta:=If(DivTarjeta.Visible, DdlTarjeta.SelectedValue.ToEntero, -1), CveCuentaDeposito:=CveCuentaDeposito, Referencia:=If(TxtReferenciaCIE.Visible, TxtReferenciaCIE.Text, "-1"), ConceptoCIE:=If(TxtConceptoCIE.Text.Trim.Length > 0, TxtConceptoCIE.Text, "-1"))
Dim ImporteBancos As Decimal = TxtImporte.Text.ToDecimal
CveIE = ObjIE.AddBancos_IE(DdlCuenta.SelectedValue.ToEntero, DdlTipoTransaccion.SelectedValue.ToEntero, Fecha, TxtFolio.Text.Trim, TxtPagueseA.Text.Trim, ImporteBancos, CveMoneda, 11, TxtObservaciones.Text.Trim, "", True, True, -1, CvePrePoliza, "", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCuentaTarjeta:=If(DivTarjeta.Visible, DdlTarjeta.SelectedValue.ToEntero, -1), CveCuentaDeposito:=CveCuentaDeposito, Referencia:=If(TxtReferenciaCIE.Visible, TxtReferenciaCIE.Text, "-1"), ConceptoCIE:=If(TxtConceptoCIE.Text.Trim.Length > 0, TxtConceptoCIE.Text, "-1"))
If Not CveIE > 0 Then
MsgError = "Ocurrio un Error al registrarse el movimiento bancario."
End If
@@ -1433,7 +1446,7 @@ Partial Class Bancos_PopIECompras
Dim UsaComplementariaBancos As Boolean = Not UsuarioActual.CveEmpresa.Contiene(7, 11, 122, 145, 13, 83)
Dim ConceptoMovimiento As String = $"{TxtPagueseA.Text.Trim} - {TxtObservaciones.Text} {If(Pago.TCPago > 1, $" TC:{Pago.TCPago}", "")}"
Dim Referencia As String = TxtFolio.Text.Trim
Dim tImporteMN As Decimal = ImportePagado
Dim tImporteMN As Decimal = ImporteBancos
Pago.ImportePago = tImporteMN
If DivTarjeta.Visible AndAlso DdlTarjeta.SelectedValue.ToEntero > 0 Then
@@ -1546,7 +1559,7 @@ Partial Class Bancos_PopIECompras
Alert("Debe especificar el Acreedor.", TipoMensaje.MsgAdvertencia)
Exit Sub
End If
Dim Aplicopagocomision As Boolean = False
For Each rw As GridViewRow In GvAcreedores.Rows
If rw.FCCheckBox("Chk").Checked AndAlso rw.FCTextBox("TxtSaldoDeudor").Text.ToDecimal <> 0 Then
Dim TCC As Decimal = 1
@@ -1559,6 +1572,14 @@ Partial Class Bancos_PopIECompras
Pago.TCPago = If(Pago.CveMonedaPago <> 1, TxtTipoCambio.Text.ToDecimal, 1)
Pago.CveProveedor = DdlAcreedor.SelectedValue.ToEntero
Pago.TipoPago = "Egsc"
If TxtComision.Text.ToDecimal <> 0 AndAlso Aplicopagocomision = False Then
Pago.OtroGastoIngreso = TxtComision.Text.ToDecimal
Aplicopagocomision = True 'solo debe de aplicarse una vez, de manera general
Else
Pago.OtroGastoIngreso = 0
End If
If AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjMov) Then
MsgError = "No se pudo insertar la póliza"
Else
@@ -1622,7 +1643,7 @@ Partial Class Bancos_PopIECompras
StrMsg.Append("El Documento se guardó correctamente.<br/>")
If TipoTransaccion = "Egs" AndAlso CveIE > 0 Then GeneraChequePDF(CveIE, UsuarioActual.Empresa)
If UsuarioActual.Empresa.TipoContabilidad = 1 Then
StrMsg.AppendFormat("<br/><br/><a class=""Texto"" target='_blank' href=""/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}"">Ver Póliza</a>", CvePrePoliza)
StrMsg.AppendFormat("<br/><a class=""Texto"" target='_blank' href=""/Contabilidad/RegPrePolizas.aspx?CvePrePoliza={0}"">Ver Póliza</a>", CvePrePoliza)
Else
If IdPoliza > 0 Then
StrMsg.AppendFormat("<br/><br/><a class=""Texto"" target='_blank' href=""/Contabilidad/RegPoliza.aspx?IdPoliza={0}"">Ver Póliza</a>", IdPoliza)
@@ -1818,7 +1839,13 @@ Partial Class Bancos_PopIECompras
Protected Sub CVTxtImporte_ServerValidate(source As Object, args As ServerValidateEventArgs)
Dim Saldo As Decimal = LtlSaldo.Text.Replace("USD", "").Replace("MXN", "").Replace(",", "").ToDecimal
Dim ImportePagado As Decimal = TxtImporte.Text.ToDecimal
Dim ImportePagado As Decimal = 0
If ChkComisiones.Checked Then
ImportePagado = TxtImporte.Text.Trim.ToDecimal.RoundSQL - TxtComision.Text.ToDecimal
Else
ImportePagado = TxtImporte.Text.Trim.ToDecimal.RoundSQL
End If
If ChkPagarPesos.Checked Then

View File

@@ -2521,68 +2521,6 @@
</div>
</div>
</div>
<div class="col-md-3" id="divportalusuarios" runat="server" style="min-width: 315px;">
<div class="portlet light xspadding bordered ">
<div class="portlet-title">
<div class="caption font-green">
<i class="icon-pin font-green"></i>
<span class="caption-subject bold uppercase">Acceso a Portal del Proveedor</span>
</div>
<div class="actions">
<div class="btn-group">
</div>
</div>
<div class="tools">
<a href="javascript:;" class="collapse" data-original-title="" title=""></a>
<a href="javascript:;" class="fullscreen" data-original-title="" title=""></a>
</div>
</div>
<div class="portlet-body nomarginleftright form-horizontal form-row-sepe formnombottom ">
<table border="0">
<tr>
<td>Usuario Activo:</td>
<td>
<asp:Label ID="LblUsuarioActivo" runat="server" Text="No"></asp:Label>
<asp:HiddenField ID="HdnCveUsuarioPortalAdmin" runat="server" />
<asp:HiddenField ID="HdnCveUsuarioPortalActivado" Value="0" runat="server" />
</td>
</tr>
<tr>
<td>Usuario:</td>
<td>
<asp:Label ID="LblUsuarioPortalCliente" runat="server" Text="Admin"></asp:Label>
</td>
</tr>
<tr id="trEnviarActivacion" visible="true" runat="server">
<td>Enviar Activación:</td>
<td>
<asp:LinkButton ID="LbEnviarActivacionPortal" runat="server" CssClass="Texto" Text="Envíar Activación al portal"></asp:LinkButton>
</td>
</tr>
<tr id="trDesactivarUsuario" visible="false" runat="server">
<td>Desactivar Usuario:</td>
<td>
<asp:LinkButton ID="LbDesactivaPortal" runat="server" CssClass="Texto" Text="Desactivar Usuarios del portal" OnClientClick="return confirm('Está seguro de desactivar los usuarios?');"></asp:LinkButton>
</td>
</tr>
</table>
<hr />
<asp:GridView ID="GvUsuariosPortalSis" runat="server" AutoGenerateColumns="False" DataKeyNames="CveUsuario,CveProveedor,Usuario" EmptyDataText="No se encontraron Usuarios Activos"
CssClass="table table-striped table-hover" GridLines="None" BorderColor="#D3D3D3" BorderWidth="1">
<Columns>
<asp:BoundField DataField="Usuario" HeaderText="Usuario" ItemStyle-Width="80px" />
<asp:BoundField DataField="Nombre" HeaderText="Nombre" ItemStyle-Width="200px" />
<%--<asp:BoundField DataField="Correo" HeaderText="Correo" ItemStyle-Width="100px" />--%>
</Columns>
<RowStyle CssClass="Texto" />
<AlternatingRowStyle CssClass="TextoAlterno" />
</asp:GridView>
</div>
</div>
</div>
<div class="col-md-3">
<asp:TextBox ID="TxtBody" runat="server" TextMode="MultiLine" Columns="3" Rows="3" Width="194px" Visible="false" Enabled="false"></asp:TextBox>
</div>

View File

@@ -512,7 +512,7 @@ Partial Class Compras_Proveedores
CargaDocs()
'CargaColectivas()
'CargaSaldosBeneficiarios()
CargaUsuariosPortal()
'CargaUsuariosPortal()
CargarPagosNoBancarios()
CargaFiltroMonedas()
MostrarFiltro()
@@ -605,7 +605,7 @@ Partial Class Compras_Proveedores
If UsuarioActual.Empresa.CvePlataforma = 2 Then
DivFiscal.Visible = False
TrFondoGarantia.Visible = False
divportalusuarios.Visible = False
'divportalusuarios.Visible = False
End If
CveProveedorContacto = -1
@@ -890,8 +890,8 @@ Partial Class Compras_Proveedores
HplAbonarMasivoNotas.NavigateUrl = String.Format("/Bancos/IE.aspx?OPCION=DevDinC&CveProveedor={0}&Masivo={1}", CveProveedor, 1)
TxtCorreoCobranza.Text = ObjProveedor.CorreoCobranza
LblUsuarioPortalCliente.Text = ObjProveedor.CorreoCobranza
LblUsuarioPortalCliente.Attributes("style") = "font-weight: bold;"
'LblUsuarioPortalCliente.Text = ObjProveedor.CorreoCobranza
'LblUsuarioPortalCliente.Attributes("style") = "font-weight: bold;"
ChkFolioDuplicado.Checked = ObjProveedor.EditarFolioDuplicado
DdlMonedaPrefente.SelectedValueExist(ObjProveedor.CveMonedaPreferente.ToString)
@@ -1032,7 +1032,7 @@ Partial Class Compras_Proveedores
Retorno = True
enviaractivacion()
' enviaractivacion()
CargaEventoBitacora()
@@ -1255,38 +1255,38 @@ Partial Class Compras_Proveedores
End Sub
#End Region
Private Sub CargaUsuariosPortal()
Dim ObjUsrs As New ClsSisUsuarios()
GvUsuariosPortalSis.Visible = False
'Private Sub CargaUsuariosPortal()
' Dim ObjUsrs As New ClsSisUsuarios()
' GvUsuariosPortalSis.Visible = False
If ObjUsrs.GetUsuariosPortal(-1, -1, CveProveedor) Then
Dim dtUsr As DataTable = ObjUsrs.DtResultados
'GvUsuariosPortalSis.DataSource = dtUsr.FiltraParametros("Estatus = 1")
' If ObjUsrs.GetUsuariosPortal(-1, -1, CveProveedor) Then
' Dim dtUsr As DataTable = ObjUsrs.DtResultados
' 'GvUsuariosPortalSis.DataSource = dtUsr.FiltraParametros("Estatus = 1")
'busco la clave del admin, si es que existe
Dim dr As DataRow = dtUsr.FiltroPrimero("Nombre = 'Admin'")
' 'busco la clave del admin, si es que existe
' Dim dr As DataRow = dtUsr.FiltroPrimero("Nombre = 'Admin'")
If dr IsNot Nothing Then
HdnCveUsuarioPortalAdmin.Value = dr("CveUsuario").ToString
If Convert.ToBoolean(dr("Estatus")) Then
LblUsuarioActivo.Text = "Si"
'divUsuariosPortal.Visible = True
HdnCveUsuarioPortalActivado.Value = "1"
trDesactivarUsuario.Visible = True
End If
End If
' If dr IsNot Nothing Then
' HdnCveUsuarioPortalAdmin.Value = dr("CveUsuario").ToString
' If Convert.ToBoolean(dr("Estatus")) Then
' LblUsuarioActivo.Text = "Si"
' 'divUsuariosPortal.Visible = True
' HdnCveUsuarioPortalActivado.Value = "1"
' trDesactivarUsuario.Visible = True
' End If
' End If
If HdnCveUsuarioPortalActivado.Value.ToEntero > 0 Then
trEnviarActivacion.Visible = False
End If
Else
' GvUsuariosPortalSis.DataSource = Nothing
End If
ObjUsrs.Dispose()
'GvUsuariosPortalSis.DataBind()
UPUsuarios.Update()
' If HdnCveUsuarioPortalActivado.Value.ToEntero > 0 Then
' trEnviarActivacion.Visible = False
' End If
' Else
' ' GvUsuariosPortalSis.DataSource = Nothing
' End If
' ObjUsrs.Dispose()
' 'GvUsuariosPortalSis.DataBind()
' UPUsuarios.Update()
End Sub
'End Sub
Protected Sub GVHistorial_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GVHistorial.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
@@ -1539,14 +1539,14 @@ Partial Class Compras_Proveedores
ObjProveedores.Dispose()
End Sub
Protected Sub enviaractivacion()
If TxtCorreoCobranza.Text <> "" Then
LbEnviarActivacionPortal.Enabled = True
Else
LbEnviarActivacionPortal.Enabled = False
LbEnviarActivacionPortal.ToolTip = "Debe de agregar una dirección de Email en la pestaña Información del Proveedor, campo 'Cobranza/Portal'."
End If
End Sub
'Protected Sub enviaractivacion()
' If TxtCorreoCobranza.Text <> "" Then
' LbEnviarActivacionPortal.Enabled = True
' Else
' LbEnviarActivacionPortal.Enabled = False
' LbEnviarActivacionPortal.ToolTip = "Debe de agregar una dirección de Email en la pestaña Información del Proveedor, campo 'Cobranza/Portal'."
' End If
'End Sub
Private Function AsignaCuentasAutomaticas(ObjProveedor As ClsCompProveedores, CveProveedor As Integer) As Boolean
Dim IdCtaContProveedores As Integer = If(DdlCveTipoProveedor.SelectedValue.ToEntero = 1, UsuarioActual.Empresa.Funcionalidad(321).ToEntero, UsuarioActual.Empresa.Funcionalidad(322).ToEntero)
@@ -1562,7 +1562,7 @@ Partial Class Compras_Proveedores
End Function
Protected Sub BtnGuardar_Click(sender As Object, e As System.EventArgs) Handles BtnGuardar.Click
enviaractivacion()
'enviaractivacion()
Dim tIdContaProveedor As Integer
Dim CuentaAbono As Integer
@@ -1911,10 +1911,10 @@ Partial Class Compras_Proveedores
Alert("Los cambios se guardaron correctamente.", TipoMensaje.MsgInformacion)
'HABILITA ENVIAR ACTIVACION AL PORTAL PROVEEDOR SI SE AGREGO CORREO
If TxtCorreoCobranza.Text <> "" Then
LbEnviarActivacionPortal.Enabled = True
LbEnviarActivacionPortal.ToolTip = ""
End If
'If TxtCorreoCobranza.Text <> "" Then
' LbEnviarActivacionPortal.Enabled = True
' LbEnviarActivacionPortal.ToolTip = ""
'End If
''''''
'ACTUALIZA SUCURSALES
@@ -2077,122 +2077,122 @@ Partial Class Compras_Proveedores
#Region "U S U A R I O S"
Protected Sub LbSolicitudPortal_Click(sender As Object, e As EventArgs) Handles LbEnviarActivacionPortal.Click
'guarda el nuevo usuario
Dim ObjUsuario As New ClsSisUsuarios
Dim CveUsr As Integer = HdnCveUsuarioPortalAdmin.Value.ToEntero
Dim CvePlataforma As Integer = 7
Dim ErrorUsuario As Boolean = False
'Protected Sub LbSolicitudPortal_Click(sender As Object, e As EventArgs) Handles LbEnviarActivacionPortal.Click
' 'guarda el nuevo usuario
' Dim ObjUsuario As New ClsSisUsuarios
' Dim CveUsr As Integer = HdnCveUsuarioPortalAdmin.Value.ToEntero
' Dim CvePlataforma As Integer = 7
' Dim ErrorUsuario As Boolean = False
'DECLARAMOS PERMISOS DEFAULT DE ADMIN
Dim Permisos() As Integer = {236, 237, 238, 239, 240}
' 'DECLARAMOS PERMISOS DEFAULT DE ADMIN
' Dim Permisos() As Integer = {236, 237, 238, 239, 240}
If TxtCorreoCobranza.Text.Trim = "" Then
Alert("No se ha registrado ningún correo en la pestaña Información del Proveedor.", TipoMensaje.MsgAdvertencia)
Return
End If
' If TxtCorreoCobranza.Text.Trim = "" Then
' Alert("No se ha registrado ningún correo en la pestaña Información del Proveedor.", TipoMensaje.MsgAdvertencia)
' Return
' End If
ObjUsuario.IniciaTransacSQL()
'AGREGAMOS USUARIO ADMIN NUEVO
If CveUsr = 0 Then
'CREA USUARIO
CveUsr = ObjUsuario.AddUsuarioPortal(TxtCorreoCobranza.Text.Trim, ContraseñaPredeterminadaEncriptada, "Admin", TxtCorreoCobranza.Text.Trim, -1, CveProveedor, CvePlataforma, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
' ObjUsuario.IniciaTransacSQL()
' 'AGREGAMOS USUARIO ADMIN NUEVO
' If CveUsr = 0 Then
' 'CREA USUARIO
' CveUsr = ObjUsuario.AddUsuarioPortal(TxtCorreoCobranza.Text.Trim, ContraseñaPredeterminadaEncriptada, "Admin", TxtCorreoCobranza.Text.Trim, -1, CveProveedor, CvePlataforma, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa)
If CveUsr > 0 Then
' AGREGA PERMISO A MODULO PORTALPROVEEDOR
If Not ObjUsuario.UpdateUsuariosModulos(CveUsr, 1201, True, UsuarioActual.CveUsuario) Then
ErrorUsuario = True
End If
Else
ErrorUsuario = True
End If
Else
'ACTUALIZAMOS ESTADO DE USARIO ADMIN INACTIVO
If Not ObjUsuario.UpdateUsuarioPortal(TxtCorreoCobranza.Text.Trim, "Admin", TxtCorreoCobranza.Text.Trim, True, ContraseñaPredeterminadaEncriptada, -1, CveProveedor, CveUsr, UsuarioActual.CveUsuario) Then
ErrorUsuario = True
End If
End If
' If CveUsr > 0 Then
' ' AGREGA PERMISO A MODULO PORTALPROVEEDOR
' If Not ObjUsuario.UpdateUsuariosModulos(CveUsr, 1201, True, UsuarioActual.CveUsuario) Then
' ErrorUsuario = True
' End If
' Else
' ErrorUsuario = True
' End If
' Else
' 'ACTUALIZAMOS ESTADO DE USARIO ADMIN INACTIVO
' If Not ObjUsuario.UpdateUsuarioPortal(TxtCorreoCobranza.Text.Trim, "Admin", TxtCorreoCobranza.Text.Trim, True, ContraseñaPredeterminadaEncriptada, -1, CveProveedor, CveUsr, UsuarioActual.CveUsuario) Then
' ErrorUsuario = True
' End If
' End If
If Not ErrorUsuario Then
'AGREGAMOS PERMISOS A ADMIN
For Each permiso In Permisos
If Not ObjUsuario.UpdateUsuariosProcesos(CveUsr, permiso, True, UsuarioActual.CveUsuario) Then
ErrorUsuario = True
Exit For
End If
Next
End If
' If Not ErrorUsuario Then
' 'AGREGAMOS PERMISOS A ADMIN
' For Each permiso In Permisos
' If Not ObjUsuario.UpdateUsuariosProcesos(CveUsr, permiso, True, UsuarioActual.CveUsuario) Then
' ErrorUsuario = True
' Exit For
' End If
' Next
' End If
'VERIFICAMOS SI HUBO ERRORES
If ErrorUsuario Then
ObjUsuario.RollBack()
Else
'ACTUALIZAMOS SECCION USUARIO PORTAL
HdnCveUsuarioPortalAdmin.Value = CveUsr.ToString
trDesactivarUsuario.Visible = True
trEnviarActivacion.Visible = False
LblUsuarioActivo.Text = "Si"
' 'VERIFICAMOS SI HUBO ERRORES
' If ErrorUsuario Then
' ObjUsuario.RollBack()
' Else
' 'ACTUALIZAMOS SECCION USUARIO PORTAL
' HdnCveUsuarioPortalAdmin.Value = CveUsr.ToString
' trDesactivarUsuario.Visible = True
' trEnviarActivacion.Visible = False
' LblUsuarioActivo.Text = "Si"
GvUsuariosPortalSis.Visible = False
ErrorUsuario = False
ObjUsuario.Commit()
End If
' GvUsuariosPortalSis.Visible = False
' ErrorUsuario = False
' ObjUsuario.Commit()
' End If
ObjUsuario.Dispose()
UPUsuarios.Update()
' ObjUsuario.Dispose()
' UPUsuarios.Update()
'ENVIA CORREO DE ACTIVACION y CARGA USUARIOS
If CveUsr > 0 And Not ErrorUsuario Then
CargaUsuariosPortalProveedor()
UpGvUsuarios.Update()
' 'ENVIA CORREO DE ACTIVACION y CARGA USUARIOS
' If CveUsr > 0 And Not ErrorUsuario Then
' CargaUsuariosPortalProveedor()
' UpGvUsuarios.Update()
Dim MensajeCorreo As String = EnviaCorreoActivacionPortal(CveUsr)
Dim Mensaje As String = IIf(MensajeCorreo = "", $"No se pudo Notificar a : {TxtCorreoCobranza.Text.Trim}", MensajeCorreo).ToString()
Alert($"La Activación del Portal del Proveedor se ha realizado correctamente.<br><br> {Mensaje}", TipoMensaje.MsgInformacion)
End If
End Sub
' Dim MensajeCorreo As String = EnviaCorreoActivacionPortal(CveUsr)
' Dim Mensaje As String = IIf(MensajeCorreo = "", $"No se pudo Notificar a : {TxtCorreoCobranza.Text.Trim}", MensajeCorreo).ToString()
' Alert($"La Activación del Portal del Proveedor se ha realizado correctamente.<br><br> {Mensaje}", TipoMensaje.MsgInformacion)
' End If
'End Sub
Protected Sub LbDesactivaUsuario_Click(sender As Object, e As EventArgs) Handles LbDesactivaPortal.Click
Dim ObjUsuario As New ClsSisUsuarios
Dim ErrorDesactivando As Boolean = False
If ObjUsuario.GetUsuariosPortal(-1, -1, CveProveedor) Then
ViewState("DTUsuariosProveedor") = ObjUsuario.DtResultados
Else
ErrorDesactivando = True
End If
'Protected Sub LbDesactivaUsuario_Click(sender As Object, e As EventArgs) Handles LbDesactivaPortal.Click
' Dim ObjUsuario As New ClsSisUsuarios
' Dim ErrorDesactivando As Boolean = False
' If ObjUsuario.GetUsuariosPortal(-1, -1, CveProveedor) Then
' ViewState("DTUsuariosProveedor") = ObjUsuario.DtResultados
' Else
' ErrorDesactivando = True
' End If
If Not ErrorDesactivando Then
For Each Dr As DataRow In DirectCast(ViewState("DTUsuariosProveedor"), DataTable).Rows
'se desactiva el usuario y se restablece la contraseña
If ObjUsuario.UpdateUsuarioPortal(Dr("Usuario").ToString, Dr("Nombre").ToString, Dr("Correo").ToString, False, ContraseñaPredeterminadaEncriptada, Dr("CveCliente").ToString.ToEntero, Dr("CveProveedor").ToString.ToEntero, Dr("CveUsuario").ToString.ToEntero, UsuarioActual.CveUsuario) Then
ErrorDesactivando = False
Else
ErrorDesactivando = True
Alert("Ocurrió un Error al desactivar a los Usuarios.", TipoMensaje.MsgError)
End If
Next
Else
Alert("No se Encontraron Usuarios.", TipoMensaje.MsgInformacion)
End If
If Not ErrorDesactivando Then
LblUsuarioActivo.Text = "No"
'HdnCveUsuarioPortalAdmin.Value = ""
HdnCveUsuarioPortalActivado.Value = "0"
trEnviarActivacion.Visible = True
trDesactivarUsuario.Visible = False
ViewState("DTUsuariosProveedor") = ""
' If Not ErrorDesactivando Then
' For Each Dr As DataRow In DirectCast(ViewState("DTUsuariosProveedor"), DataTable).Rows
' 'se desactiva el usuario y se restablece la contraseña
' If ObjUsuario.UpdateUsuarioPortal(Dr("Usuario").ToString, Dr("Nombre").ToString, Dr("Correo").ToString, False, ContraseñaPredeterminadaEncriptada, Dr("CveCliente").ToString.ToEntero, Dr("CveProveedor").ToString.ToEntero, Dr("CveUsuario").ToString.ToEntero, UsuarioActual.CveUsuario) Then
' ErrorDesactivando = False
' Else
' ErrorDesactivando = True
' Alert("Ocurrió un Error al desactivar a los Usuarios.", TipoMensaje.MsgError)
' End If
' Next
' Else
' Alert("No se Encontraron Usuarios.", TipoMensaje.MsgInformacion)
' End If
' If Not ErrorDesactivando Then
' LblUsuarioActivo.Text = "No"
' 'HdnCveUsuarioPortalAdmin.Value = ""
' HdnCveUsuarioPortalActivado.Value = "0"
' trEnviarActivacion.Visible = True
' trDesactivarUsuario.Visible = False
' ViewState("DTUsuariosProveedor") = ""
GvUsuariosPortalSis.Visible = False
Alert("Los Usuarios del Portal de Proveedores han sido Desactivados.", TipoMensaje.MsgInformacion)
End If
' GvUsuariosPortalSis.Visible = False
' Alert("Los Usuarios del Portal de Proveedores han sido Desactivados.", TipoMensaje.MsgInformacion)
' End If
ObjUsuario.Dispose()
'ACTUALIZA USUARIOS EN TABUSUARIOS
If Not ErrorDesactivando Then
CargaUsuariosPortalProveedor()
UpGvUsuarios.Update()
End If
End Sub
' ObjUsuario.Dispose()
' 'ACTUALIZA USUARIOS EN TABUSUARIOS
' If Not ErrorDesactivando Then
' CargaUsuariosPortalProveedor()
' UpGvUsuarios.Update()
' End If
'End Sub
Protected Function EnviaCorreoActivacionPortal(CveUsuario As Integer) As String
Dim Mensaje As String = ""

View File

@@ -4866,7 +4866,36 @@ Partial Class Compras_eFacturas
End Sub
Protected Sub GvTraslados_RowCommand(sender As Object, e As GridViewCommandEventArgs) Handles GvTraslados.RowCommand
Dim ImgBtn As LinkButton = DirectCast(e.CommandSource, LinkButton)
Dim GvRow As GridViewRow = DirectCast(ImgBtn.BindingContainer, GridViewRow)
Dim ObjDatos As New ClsCompras
Dim Correcto As Boolean = False
Select Case e.CommandName
Case "ValidarCFDi"
Dim ObjValidacion As New ClsValidaCFDi(GvRow.DataKey("UUID"), GvRow.DataKey("RFCDe"), GvRow.DataKey("RFCPara"), 0)
If ObjValidacion.EsValida > 0 Then
If ObjValidacion.EsValida = 2 Then
Alert("La factura está cancelada ante el SAT.", TipoMensaje.MsgInformacion)
End If
Correcto = ObjDatos.UpdateEstatus(ObjValidacion.EsValida, GvRow.DataKey("CveFactura").ToEntero, UsuarioActual.CveEmpresa)
Else
Alert("La Factura no se pudo validar.", TipoMensaje.MsgAdvertencia)
End If
ObjValidacion.Dispose()
Case "ValidarCFD"
Correcto = ObjDatos.UpdateEstatus(1, GvRow.DataKey("CveFactura").ToEntero, UsuarioActual.CveEmpresa)
Case "Omitir"
Correcto = ObjDatos.UpdateEstatus(3, GvRow.DataKey("CveFactura").ToEntero, UsuarioActual.CveEmpresa)
End Select
ObjDatos.Dispose()
If Correcto Then
CargaDatos()
End If
End Sub
Protected Sub LnkAgregarTraslado_Click(sender As Object, e As EventArgs)

View File

@@ -1710,8 +1710,8 @@ Partial Class General_SaldosIniciales
If Not ObjVentas.AddVenta(TipoDocto, Folio, CveCliente.ToEntero(), CveClienteSucursal, SubTotal, 0, Amortizacion, IVA, RetIVA, RetISR, Total, CveMoneda, TipoCambio.ToDouble,
0, 0, 0, FechaVencimiento, Fecha, "", "", Fecha, CveVendedor, Folio2, "", "", 0, 0, 0, "-1".ToDate, "-1".ToDate, "-1".ToDate, -1, 0, CvePrePoliza,
UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, Serie:=Serie, CveSubProyecto:=Sucursal.ToEntero(), CveSubProyectoEjecucion:=Sucursal.ToEntero(),
CveSubProyectoCobranza:=Sucursal.ToEntero(), IEPS:=IEPS,
ObservacionesAlmacen:=Transaccion, Entrega:=CodCliente, ImpuestoLocal:=ImpuestoLocal, PedidoContrato:=PedidoContrato) Then
CveSubProyectoCobranza:=Sucursal.ToEntero(), IEPS:=IEPS, ObservacionesAlmacen:=Transaccion, Entrega:=CodCliente, ImpuestoLocal:=ImpuestoLocal,
PedidoContrato:=PedidoContrato, CveMetodoPago33:=3) Then
ErrorVentas = True
Exit For
End If

View File

@@ -1953,15 +1953,27 @@ Partial Class Inventarios_EntradasSalidas
OpcionPrePoliza = 11
End If
If ObjConta.ValidacionPrePolizaCuadre(CvePrePoliza, OpcionPrePoliza) Then
If ObjConta.ValorPolizaDescuadre > 0 Then
ErrorMovInv = True
GuardaLogAD($"Inv/ES | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
Alert("No se pudo validar la prepoliza de cuadre.", TipoMensaje.MsgAdvertencia)
End If
Else
Alert("No se pudo validar la prepoliza de cuadre.", TipoMensaje.MsgAdvertencia)
Dim AutoConta As Boolean = True
If (UsuarioActual.CveEmpresa = 119 And EsConsumoInterno) Then
AutoConta = False
End If
If Not ErrorMovInv AndAlso Not ObjConta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual, Opcion:=OpcionPrePoliza, AutoConta:=AutoConta) Then
ErrorMovInv = True
'If ObjConta.ValorPolizaDescuadre > 0 Then
' GuardaLogAD($"Compras/Compras-Guardar | Error{ObjConta.MensajePolizaDescuadre} Diferencia{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
' ErrorPrepolizaDescuadre = True
'End If
End If
'If ObjConta.ValidacionPrePolizaCuadre(CvePrePoliza, OpcionPrePoliza) Then
' If ObjConta.ValorPolizaDescuadre > 0 Then
' ErrorMovInv = True
' GuardaLogAD($"Inv/ES | Error:{ObjConta.MensajePolizaDescuadre} Diferencia:{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
' Alert("No se pudo validar la prepoliza de cuadre.", TipoMensaje.MsgAdvertencia)
' End If
'Else
' Alert("No se pudo validar la prepoliza de cuadre.", TipoMensaje.MsgAdvertencia)
'End If
End If
'------------------------------------------------
@@ -4503,9 +4515,6 @@ Partial Class Inventarios_EntradasSalidas
End If
Next
If Prorratear Then
If Not ErrorMovInv AndAlso CveMovimientoSalida > 0 Then
If ObjInventario.GetMovimientosDetalle(CveMovimientoSalida, UsuarioActual.CveEmpresa) Then
@@ -4527,8 +4536,6 @@ Partial Class Inventarios_EntradasSalidas
End If
End If
If Not ErrorMovInv Then
For Each Dr As DataRow In DtMovimientosEntradaInvFisico.Rows
ImporteConcepto = If(Prorratear, ProPU, Dr("PU").ToString.ToDecimal)
@@ -4635,17 +4642,28 @@ Partial Class Inventarios_EntradasSalidas
End If
End If
End If
End If
If Not ErrorMovInv Then
If ObjConta.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then
ObjConta.GetPrePolizasDetalle(CvePrePoliza, UsuarioActual.CveEmpresa)
If ObjConta.ValorPolizaDescuadre > 0 Then
ErrorMovInv = True
Mensaje = "Ocurrió un error al validar los movimientos contables"
End If
Dim AutoConta As Boolean = True
If (UsuarioActual.CveEmpresa = 119) Then
AutoConta = False
End If
If Not ErrorMovInv AndAlso Not ObjConta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual, AutoConta:=AutoConta) Then
ErrorMovInv = True
'If ObjConta.ValorPolizaDescuadre > 0 Then
' GuardaLogAD($"Compras/Compras-Guardar | Error{ObjConta.MensajePolizaDescuadre} Diferencia{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
' ErrorPrepolizaDescuadre = True
'End If
End If
'If ObjConta.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then
' ObjConta.GetPrePolizasDetalle(CvePrePoliza, UsuarioActual.CveEmpresa)
' If ObjConta.ValorPolizaDescuadre > 0 Then
' ErrorMovInv = True
' Mensaje = "Ocurrió un error al validar los movimientos contables"
' End If
'End If
End If
Dim RetornoVirtual As MMovimientoVirtual = Nothing
@@ -4695,8 +4713,6 @@ Partial Class Inventarios_EntradasSalidas
End Sub
Private Sub BtnGuardarCambiosVigencia_Click(sender As Object, e As EventArgs) Handles BtnGuardarCambiosVigencia.Click
If GvSalidasCambioVigencia.Rows.Count = 0 Then
Alert("No hay ningun registro para generar el movimiento. Por favor rectifique y vuelva a intentar.", TipoMensaje.MsgError)
RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")

View File

@@ -237,6 +237,18 @@ Partial Class Inventarios_PrestamosdeProveedor
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoAlmacen, -tValorInventario, TxtObservacionesEntrega.Text.Trim, CveConceptoContable, TxtObservacionesEntrega.Text.Trim, Fecha, IdCtaContableOtro, -1, CveMovimientoAlmacen:=CveMovimientoSalida, CveClasificacion:=CveClasifCosto, ImporteMX:=-tValorInventario, CveSubProyecto:=CveSubProyecto) Then
ErrorMovInv = True
End If
End If
Dim AutoConta As Boolean = True
If (UsuarioActual.CveEmpresa = 119) Then
AutoConta = False
End If
If Not ErrorMovInv AndAlso Not ObjConta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual, AutoConta:=AutoConta) Then
ErrorMovInv = True
'If ObjConta.ValorPolizaDescuadre > 0 Then
' GuardaLogAD($"Compras/Compras-Guardar | Error{ObjConta.MensajePolizaDescuadre} Diferencia{ObjConta.ValorDiferencia} | CvePrePoliza:{CvePrePoliza}", "LogPrePolizas")
' ErrorPrepolizaDescuadre = True
'End If
End If
Else
ErrorMovInv = True

View File

@@ -1652,7 +1652,7 @@ Partial Class Inventarios_TraspasoAlmacen
'DEBE CONSIDERAR SOLO LAS FILAS QUE TENGA PRODUCTOS, NO EL TOTALIZADOR
If CvePS > 0 Then
CveMovimientoDetalleSalida = GvRow.DataKey("CveMovimientoDetalle").ToEntero
Dim Cantidad As Decimal = GvRow.FCTextBox("TxtCantidad").Text.ToString.ToDecimal
Dim Cantidad As Decimal = GvRow.DataKey("Cantidad").ToDecimal() 'GvRow.FCTextBox("TxtCantidad").Text.ToString.ToDecimal
'If ChkRealizarDevolucion.Checked Then Cantidad = GvRow.FCTextBox("TxtCantidad").Text.ToDecimal

File diff suppressed because it is too large Load Diff

View File

@@ -1783,7 +1783,6 @@ Partial Class Portal_PortalProveedor
'DdlProveedorSucursalPHistorial.DataSource = ObjProveedores.DtResultados
Else
DivSucursalCxC.Visible = False
DivSearch.Attributes("style") = "width:100%"
'DivProveedorSucursalHistorial.Visible = False
End If
End If

View File

@@ -307,6 +307,16 @@
</div>
</div>
<div class="portlet-body" style="display: none">
<div class="row">
<label class="col-md-1 compoonenlabel" style="line-height: 1; max-width: 65px;">Régimen:</label>
<div class="col-md-1">
<asp:DropDownList ID="DdlRegimenContratacion" runat="server" Style="width: 100% !important;" CssClass="select2me">
<asp:ListItem Text="Asalariados" Value="1"></asp:ListItem>
<asp:ListItem Text="Asimilados" Value="2"></asp:ListItem>
<asp:ListItem Text="Todos" Value="3"></asp:ListItem>
</asp:DropDownList>
</div>
</div>
</div>
</div>

View File

@@ -26,21 +26,21 @@ public partial class SAT_SolicitudesNominaSat : ClsPaginas
}
set { ViewState["clasegrid"] = value; }
}
public string fechaInicio
public DateTime fechaInicio
{
get
{
if (ViewState["fechaInicio"] == null) { return ""; }
else { return ViewState["fechaInicio"].ToString(); }
if (ViewState["fechaInicio"] == null) { return ModExtensiones.MinFecha; }
else { return ViewState["fechaInicio"].ToString().ToDate(); }
}
set { ViewState["fechaInicio"] = value; }
}
public string fechaFin
public DateTime fechaFin
{
get
{
if (ViewState["fechaFin"] == null) { return ""; }
else { return ViewState["fechaFin"].ToString(); }
if (ViewState["fechaFin"] == null) { return ModExtensiones.MaxFecha; }
else { return ViewState["fechaFin"].ToString().ToDate(); }
}
set { ViewState["fechaFin"] = value; }
}
@@ -60,7 +60,7 @@ public partial class SAT_SolicitudesNominaSat : ClsPaginas
using (ClsNominas nom = new ClsNominas())
{
nom.SATSolicitudTimbreNominaGral(DdlReporte.SelectedValue.ToString().ToEntero(), UsuarioActual.CveEmpresa, fechaInicio, fechaFin, DdlTipoNomina.SelectedValue.ToEntero());
nom.SATSolicitudTimbreNominaGral(DdlReporte.SelectedValue.ToString().ToEntero(), UsuarioActual.CveEmpresa, fechaInicio, fechaFin, DdlTipoNomina.SelectedValue.ToEntero(), DdlRegimenContratacion.SelectedValue.ToEntero());
ClosedXML.Excel.XLWorkbook wb = new ClosedXML.Excel.XLWorkbook();
var libro = wb.AddWorksheet(nom.DtResultados , "Nomina");
@@ -137,10 +137,10 @@ public partial class SAT_SolicitudesNominaSat : ClsPaginas
{
using (ClsNominas nom = new ClsNominas())
{
fechaInicio = TxtRpdFechaInicio.Text.ToDateTime().ToString("yyyy/MM/dd");
fechaFin = TxtRpdFechaFin.Text.ToDateTime().ToString("yyyy/MM/dd");
fechaInicio = TxtRpdFechaInicio.Text.ToDateTime();
fechaFin = TxtRpdFechaFin.Text.ToDateTime();
nom.SATSolicitudTimbreNominaGral(0, UsuarioActual.CveEmpresa, fechaInicio, fechaFin, DdlTipoNomina.SelectedValue.ToEntero());
nom.SATSolicitudTimbreNominaGral(0, UsuarioActual.CveEmpresa, fechaInicio, fechaFin, DdlTipoNomina.SelectedValue.ToEntero(),DdlRegimenContratacion.SelectedValue.ToEntero());
if (nom.DtResultados.Rows.Count > 0)
{
DataRow drow = nom.DtResultados.Rows[0];
@@ -156,7 +156,7 @@ public partial class SAT_SolicitudesNominaSat : ClsPaginas
}
nom.SATSolicitudTimbreNominaGral(DdlReporte.SelectedValue.ToString().ToEntero(), UsuarioActual.CveEmpresa, fechaInicio, fechaFin, DdlTipoNomina.SelectedValue.ToEntero());
nom.SATSolicitudTimbreNominaGral(DdlReporte.SelectedValue.ToString().ToEntero(), UsuarioActual.CveEmpresa, fechaInicio, fechaFin, DdlTipoNomina.SelectedValue.ToEntero(), DdlRegimenContratacion.SelectedValue.ToEntero());
GVSolicitudTimbreNominaGral.DataSource = nom.DtResultados;
GVSolicitudTimbreNominaGral.DataBind();
clasegrid = string.Format("reporte{0}", DdlReporte.SelectedValue);

View File

@@ -350,6 +350,15 @@ Partial Class Sistemas_PopUpAddUsuario
Next
End If
If CvePlataforma = 7 Then
'DEBE AGREGAR EL USUARIO AL PROVEEDOR
If ObjUsuarios.DtResultados.Rows.Count = 0 Then
If Not HuboError AndAlso Not ObjUsuarios.AddUsuarioProveedor(CveUsuario, CveProveedor) Then
HuboError = True
End If
End If
End If
ElseIf CveUsuario > 0 Then
'VALIDA NO ALTERAR DATOS DE OTRO USUARIO
'Dim DtUsuarios As DataTable = GlobalDTUsuarios.FiltraParametros($"CveUsuario <> {CveUsuario}")
@@ -403,7 +412,20 @@ Partial Class Sistemas_PopUpAddUsuario
If Not ObjUsuarios.UpdateUsuarioPortal(LtlUsuario.Text.Trim, TxtNombre.Text, TxtEmail.Text, ChkEstatus.Checked, "-1", CveCliente, CveProveedor, CveUsuario, UsuarioActual.CveUsuario) Then
HuboError = True
End If
End If
End If
If CvePlataforma = 7 Then
If Not HuboError AndAlso ObjUsuarios.GetUsuarioProveedor(CveUsuario, CveProveedor) Then
'DEBE AGREGAR EL USUARIO AL PROVEEDOR
If ObjUsuarios.DtResultados.Rows.Count = 0 Then
If Not HuboError AndAlso Not ObjUsuarios.AddUsuarioProveedor(CveUsuario, CveProveedor) Then
HuboError = True
End If
End If
Else
HuboError = True
End If
End If
If Not HuboError Then
For Each Row As GridViewRow In GvModulosAcceso.Rows

View File

@@ -16,10 +16,8 @@ Partial Class PopUpSeleccionarEmpresa
End If
End Sub
Private Sub GetEmpresas()
GlobalDTUsuarios(-1, -1) = Nothing 'Esto es por los cambios de contaseña
Private Sub GetEmpresas()
GlobalDTUsuarios(-1, -1) = Nothing
Dim Dt As Data.DataTable = GlobalDTUsuarios(UsuarioActual.CveUsuario)
If Dt IsNot Nothing Then
@@ -90,10 +88,10 @@ Partial Class PopUpSeleccionarEmpresa
RegistraScript("Ir3();")
End If
End If
dt.Dispose()
Else
Alert($"Usuario Nulo {gvr.DataKey("Usuario")} , {gvr.DataKey("Contraseña")}, {IMEI}, {gvr.DataKey("CveEmpresa").ToEntero}", TipoMensaje.MsgAdvertencia)
End If
dt.Dispose()
End If
End If
End If

View File

@@ -3769,7 +3769,7 @@ Partial Class Sistemas_UsuarioDetalle
#Region " CLONAR USUARIO "
Private Sub InicializaClonarUsuario()
DdlUsuarioClonar.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa)
DdlUsuarioClonar.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa).FiltraParametros("", DistinctColumns:={"CveUsuario", "Usuario"})
DdlUsuarioClonar.DataBind()
DdlUsuarioClonar.Items.Insert(0, New ListItem("Seleccione", "-1"))

View File

@@ -1699,7 +1699,7 @@
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px; margin-top:-10px !important;">
<label for="<%= TxtFechaLimiteCredito.ClientID.ToString()%>" style="color: #888888;">F. Limite Crédito: </label>
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:TextBox ID="TxtFechaLimiteCredito" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10" Width="100px"></asp:TextBox>
@@ -1898,15 +1898,15 @@
<span class="caption-subject bold uppercase">Estado de Cuenta</span>
</div>
<div class="tools">
<asp:CheckBox ID="ChkAntIXCNC" Text="Anticipos / NC / IXC" runat="server" Checked="true" OnCheckedChanged="ChkAntIXCNC_CheckedChanged" AutoPostBack="true" />
<a href="javascript:;" class="collapse"></a>
</div>
</div>
<div class="portlet-body">
<asp:CheckBox ID="ChkAntIXCNC" Text="Anticipos / NC / IXC" runat="server" Checked="true" OnCheckedChanged="ChkAntIXCNC_CheckedChanged" AutoPostBack="true" />
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px; margin-top:-10px !important;">
<label for="<%= TxtFechaInicioCxP.ClientID.ToString()%>">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;">
<asp:TextBox ID="TxtFechaInicioCxP" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10" Width="100px"></asp:TextBox>
@@ -1919,7 +1919,7 @@
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px; margin-top:-10px !important;">
<label for="<%= TxtFechaFinCxP.ClientID.ToString()%>">Fecha Fin: </label>
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:TextBox Width="100px" ID="TxtFechaFinCxP" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10"></asp:TextBox>
@@ -1934,7 +1934,7 @@
</div>
<div class="row">
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px; margin-top:-10px !important;">
<label for="<%= TxtFechaVICxP.ClientID.ToString()%>">Fecha V. 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;">
<asp:TextBox ID="TxtFechaVICxP" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10" Width="100px"></asp:TextBox>
@@ -1947,7 +1947,7 @@
</div>
</div>
<div class="col-md-6">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px">
<div class="form-group form-md-line-input input-iconright date date-picker date date-picker" style="min-width: 135px; margin-top:-10px !important;">
<label for="<%= TxtFechaVFCxP.ClientID.ToString()%>">Fecha V. Fin: </label>
<div class="input-group input-sm input-small date date-picker " data-date-format="dd/mm/yyyy" style="width: 120px !important; padding: 0px;">
<asp:TextBox ID="TxtFechaVFCxP" runat="server" CssClass="form-control" CausesValidation="true" MaxLength="10" Width="100px"></asp:TextBox>

View File

@@ -2638,31 +2638,31 @@ Partial Class Clientes
Dim CtaCliente As Integer = DdlCtaContableClientes.SelectedValue.ToEntero()
' si tiene la funcionalidad de la cuenta contable padre
If UsuarioActual.Empresa.Funcionalidad(114) <> "" Then
'If UsuarioActual.Empresa.Funcionalidad(114) <> "" Then
Dim ObjContaAC = New ClsContPAQi(UsuarioActual.Empresa)
' Dim ObjContaAC = New ClsContPAQi(UsuarioActual.Empresa)
ObjContaAC.IniciaTransacSQL()
'se registra la cuenta contable automaticamente
' ObjContaAC.IniciaTransacSQL()
' 'se registra la cuenta contable automaticamente
CtaCliente = ObjContaAC.AddSiguienteCuentaHijo(UsuarioActual.Empresa.Funcionalidad(114).ToEntero(), TxtNombreComercial.Text.Trim, "A", 2)
' CtaCliente = ObjContaAC.AddSiguienteCuentaHijo(UsuarioActual.Empresa.Funcionalidad(114).ToEntero(), TxtNombreComercial.Text.Trim, "A", 2)
If CtaCliente > 0 Then
ObjContaAC.Commit()
DdlCtaContableClientes.Items.Add(New ListItem(TxtNombreComercial.Text.Trim, CtaCliente.ToString()))
DdlCtaContableClientes.SelectedValue = CtaCliente.ToString()
'MsgCuentaContable = String.Format("<br />Con la cuenta contable: {0}", NewCuenta)
' If CtaCliente > 0 Then
' ObjContaAC.Commit()
' DdlCtaContableClientes.Items.Add(New ListItem(TxtNombreComercial.Text.Trim, CtaCliente.ToString()))
' DdlCtaContableClientes.SelectedValue = CtaCliente.ToString()
' 'MsgCuentaContable = String.Format("<br />Con la cuenta contable: {0}", NewCuenta)
Else
' Else
ObjContaAC.RollBack()
ObjContaAC.Dispose()
Alert("Error al guardar la cuenta contable ", TipoMensaje.MsgError)
ObjClientes.Dispose()
Exit Sub
End If
ObjContaAC.Dispose()
End If
' ObjContaAC.RollBack()
' ObjContaAC.Dispose()
' Alert("Error al guardar la cuenta contable ", TipoMensaje.MsgError)
' ObjClientes.Dispose()
' Exit Sub
' End If
' ObjContaAC.Dispose()
'End If
Dim CodigoCuentaAltaCompaq As String = ""
@@ -4123,11 +4123,11 @@ Partial Class Clientes
Dim FechaCorte As Date = ("9999/01/01").ToDate()
Dim TipoDocto As String = If(DdlTipoDocto.GetSelectedValuesM = "", "-1", DdlTipoDocto.GetSelectedValuesM)
Dim TipoDocto2 As String = If(DdlTipoDocto.GetSelectedValuesM = "", "-1", DdlTipoDocto.GetSelectedValuesM(True))
Dim FechaVencimientoI As String = If(TxtFechaVICxP.Text = "", "-1", TxtFechaVICxP.Text).ToString()
Dim FechaVencimientoF As String = If(TxtFechaVFCxP.Text = "", "-1", TxtFechaVFCxP.Text).ToString()
Dim FechaVencimientoI As DateTime = If(TxtFechaVICxP.Text = "", MinFecha, TxtFechaVICxP.Text.ToDate())
Dim FechaVencimientoF As DateTime = If(TxtFechaVFCxP.Text = "", MaxFecha, TxtFechaVFCxP.Text.ToDate())
Dim ObjMovtos As New ClsMovimientos()
If ObjMovtos.GetCxCClienteDetalle(CveCliente, "-1", "-1", -1, -1, UsuarioActual.CveEmpresa, DdlSucursalCliente.SelectedValue.ToEntero()) Then
If ObjMovtos.GetCxCClienteDetalle(CveCliente, FI, FF, -1, -1, UsuarioActual.CveEmpresa, DdlSucursalCliente.SelectedValue.ToEntero(), FechaVencimientoI:=FechaVencimientoI, FechaVencimientoF:=FechaVencimientoF) Then
DtCxCFact = If(DdlTipoCuentasCxC.SelectedValue = "-1", ObjMovtos.DtResultados.FiltraParametros("", "TipoDocto").Copy, ObjMovtos.DtResultados.FiltraParametros("Tipo = 'Act'", "TipoDocto"))
'cargo los anticipos NC
DtCxCFact.Columns.Add("SaldoAnticipo", GetType(Decimal))

View File

@@ -2009,8 +2009,8 @@ Partial Class PV
End If
If TmpDTRecepcionUsados IsNot Nothing Then
If TmpDTRecepcionUsados.Select($"CvePS={Row("CvePS").ToString.ToEntero}").Length > 0 Then
Dim rowInv As DataRow = TmpDTRecepcionUsados.Select($"CvePS={Row("CvePS").ToString.ToEntero}")(0)
If TmpDTRecepcionUsados.Select($"ConsecUsado={Row("Consec").ToString.ToEntero} AND CvePS={Row("CvePS").ToString.ToEntero}").Length > 0 Then
Dim rowInv As DataRow = TmpDTRecepcionUsados.Select($"ConsecUsado={Row("Consec").ToString.ToEntero} AND CvePS={Row("CvePS").ToString.ToEntero}")(0)
rowInv("CveVentaDetalle") = CveVentaDetalle
End If
End If
@@ -7858,11 +7858,15 @@ Partial Class PV
If TmpDTRecepcionUsados.Rows.Count > 0 Then
Dim Elimino As Boolean = False
For Each Row As DataRow In TmpDTRecepcionUsados.Rows
If Row("CvePSRelacionado").ToString().ToEntero() = CvePS Then
If Row("CvePSRelacionado").ToString().ToEntero() = CvePS AndAlso
Row("ConsecUsado").ToString().ToEntero() = ListaPSCargo.FirstOrDefault().ConsecutivoUsado AndAlso
Row("ConsecRelacionado").ToString().ToEntero() = ListaPSCargo.FirstOrDefault().Consecutivo Then
Row.Delete()
Elimino = True
End If
Next
If Elimino Then
TmpDTRecepcionUsados.AcceptChanges()
End If
@@ -8179,7 +8183,7 @@ Partial Class PV
'ELIMINAR LOS USADOS QUE SE MANDAN A RECEPCION
For Each drow As DataRow In TmpDT.Select($"Consec ={Consec}")
For Each RowRecepcionUsados As DataRow In TmpDTRecepcionUsados.Rows
If (RowRecepcionUsados("CvePSRelacionado").ToString() = drow("CvePS").ToString()) Then
If (RowRecepcionUsados("CvePSRelacionado").ToString() = drow("CvePS").ToString()) AndAlso RowRecepcionUsados("ConsecRelacionado").ToString() = drow("Consec").ToString() Then
RowRecepcionUsados.Delete()
End If
Next

View File

@@ -209,7 +209,7 @@ public partial class Ventas_RepNCxAplicar : ClsPaginas
}
string TextAdicionalJAM = Gv.DataKey("Fecha").ToDate().Year <= 2017 && UsuarioActual.CveEmpresa == 119 ? "Anticipo 2017" : "";
string ConceptoPartida = string.Format("{0} {1} ", TxtConcepto.Text, Gv.DataKey("Folio").ToString());
CvePrePoliza = ObjConta.AddPrePolizas("Bancos/RepNCXAplicar", 11, Gv.DataKey("Saldo").ToDouble(), Gv.DataKey("Saldo").ToDouble(), Gv.DataKey("CveMoneda").ToEntero(), TxtFecha.Text.ToDate(), $"{TextAdicionalJAM} {TxtConcepto.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa);
CvePrePoliza = ObjConta.AddPrePolizas("Bancos/RepNCXAplicar", 11, Gv.DataKey("Saldo").ToDouble(), Gv.DataKey("Saldo").ToDouble(), Gv.DataKey("CveMoneda").ToEntero(), TxtFecha.Text.ToDate(), $"{TextAdicionalJAM} {TxtConcepto.Text}", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoPoliza: 3);
if (!ObjConta.AddPrePolizasDetalle(CvePrePoliza, true, -Gv.DataKey("Saldo").ToDecimal(), Gv.DataKey("Folio").ToString(), 12, TxtConcepto.Text, TxtFecha.Text.ToDate(), IdCtaContable, -1, -1, Gv.DataKey("CveVenta").ToEntero(), CveCliente: Gv.DataKey("CveCliente").ToEntero(), ImporteMX: -Gv.DataKey("Saldo").ToDecimal()))
{

View File

@@ -427,7 +427,8 @@
<asp:BoundField HeaderText="Forma de Pago" DataField="FormaPago" ItemStyle-Width="5%" Visible="false" />
<%--18--%>
<asp:BoundField HeaderText="Fecha Hora de Emisión" DataField="FechaIng" ItemStyle-Width="200px" ItemStyle-HorizontalAlign="Center" Visible="false" />
<%--19--%>
<asp:BoundField HeaderText="Num. Turnos" DataField="NumTurnos" DataFormatString="{0:N0}" ItemStyle-Width="5%" ItemStyle-HorizontalAlign="Right" Visible="false" />
</Columns>
<RowStyle CssClass="Texto" />
@@ -475,7 +476,7 @@
<asp:CheckBox ID="ChkFechaHoraEmision" runat="server" Text="Fecha Hora de Emisión" />
</td>
<td style="text-align: left;">
<asp:CheckBox ID="ChkNumTurnos" runat="server" Text="Número de turnos" Visible="false" />
</td>
<td style="text-align: left;">

View File

@@ -85,6 +85,10 @@ Partial Class Ventas_RepProductosServiciosDetalle
End If
If UsuarioActual.CveEmpresa.Contiene(7, 122) Then
ChkNumTurnos.Visible = True
End If
End If
End Sub
@@ -568,6 +572,7 @@ Partial Class Ventas_RepProductosServiciosDetalle
GvDatos.Columns(16).Visible = ChkMetodoPago.Checked
GvDatos.Columns(17).Visible = ChkFormaPago.Checked
GvDatos.Columns(18).Visible = ChkFechaHoraEmision.Checked
GvDatos.Columns(19).Visible = ChkNumTurnos.Checked
CargaDatos()
UPDatos.Update()

View File

@@ -948,7 +948,8 @@
<%--width="100%"--%>
<tr class="Titulos TextTab">
<th>#</th>
<th>Cant</th>
<th style="width: 100px;">
<asp:Literal ID="LblTituloCantidad" runat="server" Text="Cant"></asp:Literal></th>
<th>Unidad</th>
<th>
<div id="DIVClasificacion" runat="server">
@@ -992,13 +993,24 @@
<tr class="TextTab" runat="server" id="TrEdit">
<th>
<asp:Label ID="LtlConsec" runat="server"></asp:Label>&nbsp;</th>
<th>
<asp:TextBox ID="TxtCantidad" onkeyup="Recalcula();" onkeypress="DisableEnterKey(event);" runat="server" CssClass="form-control input-sm " ClientIDMode="Static" MaxLength="12" ValidationGroup="GprAgregaPS" Width="60px" Height="24px"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="SoloNumerosCantidad" runat="server" TargetControlID="TxtCantidad" FilterType="Custom, Numbers" ValidChars="." />
<asp:RequiredFieldValidator ID="RFVCantidad" runat="server" ControlToValidate="TxtCantidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> es necesario, por favor ingréselo." ValidationGroup="GprAgregaPS"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOCantidad1" runat="server" HighlightCssClass="vco" TargetControlID="RFVCantidad" Width="300px"></ajax:ValidatorCalloutExtender>
<asp:CustomValidator ID="CVCantidad" runat="server" ClientValidationFunction="ValidaDecimal6digits" ControlToValidate="TxtCantidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> no tiene el formato correcto. Por favor rectifique y vuelva a intentar." ValidateEmptyText="True" ValidationGroup="GprAgregaPS"></asp:CustomValidator>
<ajax:ValidatorCalloutExtender ID="VCECantidad" runat="server" HighlightCssClass="vco" TargetControlID="CVCantidad" Width="300px"></ajax:ValidatorCalloutExtender>
<th style="width: 100px;">
<div class="row">
<div class="col-md-12">
<asp:TextBox ID="TxtCantidad" onkeyup="Recalcula();" onkeypress="DisableEnterKey(event);" runat="server" CssClass="form-control input-sm " ClientIDMode="Static" MaxLength="12" ValidationGroup="GprAgregaPS" Width="60px" Height="24px"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="SoloNumerosCantidad" runat="server" TargetControlID="TxtCantidad" FilterType="Custom, Numbers" ValidChars="." />
<asp:RequiredFieldValidator ID="RFVCantidad" runat="server" ControlToValidate="TxtCantidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> es necesario, por favor ingréselo." ValidationGroup="GprAgregaPS"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOCantidad1" runat="server" HighlightCssClass="vco" TargetControlID="RFVCantidad" Width="300px"></ajax:ValidatorCalloutExtender>
<asp:CustomValidator ID="CVCantidad" runat="server" ClientValidationFunction="ValidaDecimal6digits" ControlToValidate="TxtCantidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> no tiene el formato correcto. Por favor rectifique y vuelva a intentar." ValidateEmptyText="True" ValidationGroup="GprAgregaPS"></asp:CustomValidator>
<ajax:ValidatorCalloutExtender ID="VCECantidad" runat="server" HighlightCssClass="vco" TargetControlID="CVCantidad" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row" id="DivNumTurnos" runat="server" visible="false">
<asp:Label runat="server" Text="Turno" CssClass="col-md-4"></asp:Label>
<div class="col-md-8">
<asp:TextBox ID="TxtNumTurnos" onkeypress="DisableEnterKey(event);" runat="server" CssClass="form-control input-sm " ClientIDMode="Static" MaxLength="12" Width="100%" Height="24px"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FTBNumTurnos" runat="server" TargetControlID="TxtNumTurnos" FilterType="Custom, Numbers" ValidChars="." />
</div>
</div>
</th>
<th>
<%--<asp:Label ID="LblUnidadMedida" runat="server" Text="UM"></asp:Label> --%>
@@ -1124,17 +1136,38 @@
<%--1--%>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal ID="LtlCantidad" runat="server" Text='<%# Eval("Cantidad", "{0:#,###.####}") %>'></asp:Literal>
<div class="row">
<div class="col-md-12">
<asp:Literal ID="LtlCantidad" runat="server" Text='<%# Eval("Cantidad", "{0:#,###.####}") %>'></asp:Literal>
</div>
</div>
<div class="row">
<div class="col-md-12">
<asp:Literal ID="LtlNumTurnos" runat="server" Visible="false" Text='<%# String.Format("Turnos: {0:#,###.####}", Eval("NumTurnos")) %>'></asp:Literal>
</div>
</div>
</ItemTemplate>
<EditItemTemplate>
<asp:Literal ID="LtlCantidad" runat="server" Text='<%# Eval("Cantidad") %>' Visible="false"></asp:Literal>
<asp:Literal ID="LtlTipoDescuento" runat="server" Text='<%# Eval("TipoDescuento") %>' Visible="false"></asp:Literal>
<asp:Literal ID="LtlDescuento" runat="server" Text='<%# Eval("Descuento") %>' Visible="false"></asp:Literal>
<asp:TextBox ID="TxtCantidad" runat="server" CausesValidation="true" MaxLength="12" Text='<%# Eval("Cantidad", "{0:0.######}") %>' ValidationGroup="GprGV" Width="45px" Height="24px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVCantidad" runat="server" ControlToValidate="TxtCantidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> es necesario, por favor ingréselo." ValidationGroup="GprGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOCantidad1" runat="server" HighlightCssClass="vco" TargetControlID="RFVCantidad" Width="300px"></ajax:ValidatorCalloutExtender>
<asp:CustomValidator ID="CVCantidadEdit" runat="server" ClientValidationFunction="ValidaDecimal6digits" ControlToValidate="TxtCantidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> no tiene el formato correcto. Por favor rectifique y vuelva a intentar." ValidateEmptyText="True" ValidationGroup="GprGV"></asp:CustomValidator>
<ajax:ValidatorCalloutExtender ID="VCECantidadEdit" runat="server" HighlightCssClass="vco" TargetControlID="CVCantidadEdit" Width="300px"></ajax:ValidatorCalloutExtender>
<div class="row">
<div class="col-md-12">
<asp:Literal ID="LtlCantidad" runat="server" Text='<%# Eval("Cantidad") %>' Visible="false"></asp:Literal>
<asp:Literal ID="LtlTipoDescuento" runat="server" Text='<%# Eval("TipoDescuento") %>' Visible="false"></asp:Literal>
<asp:Literal ID="LtlDescuento" runat="server" Text='<%# Eval("Descuento") %>' Visible="false"></asp:Literal>
<asp:TextBox ID="TxtCantidad" runat="server" CausesValidation="true" MaxLength="12" Text='<%# Eval("Cantidad", "{0:0.######}") %>' ValidationGroup="GprGV" Width="45px" Height="24px"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFVCantidad" runat="server" ControlToValidate="TxtCantidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> es necesario, por favor ingréselo." ValidationGroup="GprGV"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCOCantidad1" runat="server" HighlightCssClass="vco" TargetControlID="RFVCantidad" Width="300px"></ajax:ValidatorCalloutExtender>
<asp:CustomValidator ID="CVCantidadEdit" runat="server" ClientValidationFunction="ValidaDecimal6digits" ControlToValidate="TxtCantidad" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Cantidad''</b> no tiene el formato correcto. Por favor rectifique y vuelva a intentar." ValidateEmptyText="True" ValidationGroup="GprGV"></asp:CustomValidator>
<ajax:ValidatorCalloutExtender ID="VCECantidadEdit" runat="server" HighlightCssClass="vco" TargetControlID="CVCantidadEdit" Width="300px"></ajax:ValidatorCalloutExtender>
</div>
</div>
<div class="row">
<asp:Label ID="LblTurnoEditar" runat="server" Text="Turno" CssClass="col-md-4" Visible="false"></asp:Label>
<div class="col-md-8">
<asp:TextBox ID="TxtNumTurnosEditar" Visible="false" Text='<%# Eval("NumTurnos") %>' onkeypress="DisableEnterKey(event);" runat="server" CssClass="form-control input-sm " ClientIDMode="Static" MaxLength="12" Width="100%" Height="24px"></asp:TextBox>
<ajax:FilteredTextBoxExtender ID="FTBNumTurnos" runat="server" TargetControlID="TxtNumTurnosEditar" FilterType="Custom, Numbers" ValidChars="." />
</div>
</div>
</EditItemTemplate>
</asp:TemplateField>
<%--2--%>
@@ -4337,7 +4370,7 @@
<div style="max-height: 300px; overflow-y: auto;">
<asp:GridView ID="GVAnticipos" runat="server" AutoGenerateColumns="False" ClientIDMode="Static" EmptyDataText="No se encontraron Anticipos del Cliente"
ToolTip="Listado de Anticipos" CssClass="GVAnticipos table table-striped table-hover Widthall" data-height="300" Style="text-align: center;" GridLines="None"
DataKeyNames="ISTotal,Saldo,CveIE,Folio,Tipo,CveVenta,CveConceptoContable,CveConceptoContableAmor, TotalAnticipo, SubTotalAnticipo, IVAAnticipo,IEPS, ImpuestosLocalesAnticipo, SubTotalAmortizacion, SubTotal, Original, IVA, RetIVA, RetISR, IdCtaContableNC,FolioFiscal, CveClasificacionNC, TipoCambio,TipoCambioPago,TipoCambioHoy, CveMoneda,Fecha,SaldoSubTotal,SaldoConImpuestos,RegresarImpuesto,DevolucionImportePagado,CveCliente">
DataKeyNames="ISTotal,Saldo,CveIE,Folio,Tipo,CveVenta,CveConceptoContable,CveConceptoContableAmor, TotalAnticipo, SubTotalAnticipo, IVAAnticipo,IEPS, ImpuestosLocalesAnticipo, SubTotalAmortizacion, SubTotal, Original, IVA, RetIVA, RetISR, IdCtaContableNC,FolioFiscal, CveClasificacionNC, TipoCambio,TipoCambioPago,TipoCambioHoy, CveMoneda,Fecha,SaldoSubTotal,SaldoConImpuestos,RegresarImpuesto,DevolucionImportePagado,CveCliente,Descuentos">
<Columns>
<asp:TemplateField>
<ItemTemplate>

View File

@@ -2209,6 +2209,16 @@ Partial Class Ventas
ViewState("EsGarantia") = value
End Set
End Property
Private Property TipoCambioOriginal As Decimal
Get
Return (IfNull(ViewState("TipoCambioOriginal"), 0, ViewState("TipoCambioOriginal"))).ToString().ToDecimal()
End Get
Set(value As Decimal)
ViewState("TipoCambioOriginal") = value
End Set
End Property
Private Property DtMercancias As DataTable
Get
Return If(IsNothing(ViewState("DtMercancias")), Nothing, CType(ViewState("DtMercancias"), DataTable))
@@ -2748,6 +2758,8 @@ Partial Class Ventas
TmpDT.Columns.Add("CveActivoFijo", GetType(Integer))
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
TmpDT.Columns.Add("NumTurnos", GetType(Decimal))
TmpDT.Columns("NumTurnos").DefaultValue = 0D
GvPS.DataSource = ObjVentas.DtResultados
GvPS.DataBind()
@@ -2778,6 +2790,8 @@ Partial Class Ventas
TmpDT.Columns.Add("CveActivoFijo", GetType(Integer))
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
TmpDT.Columns.Add("NumTurnos", GetType(Decimal))
TmpDT.Columns("NumTurnos").DefaultValue = 0D
GvPS.DataSource = ObjVentas.DtResultados
GvPS.DataBind()
@@ -3151,6 +3165,11 @@ Partial Class Ventas
CargaListasPrecios()
End If
If CveVenta <= 0 AndAlso UsuarioActual.CveEmpresa.Contiene(7, 122) Then
TxtCantidad.Width = New Unit("100%")
DivNumTurnos.Visible = True
End If
'SELECCIONA VENDEDOR DEL USUARIO CUANDO SEA VENTA NUEVA Y SIN CLIENTE
'If UsuarioActual.CveVendedor > 0 Then
' If CveVenta = -1 AndAlso Not DdlVendedor.SelectedValue.ToEntero() > 0 Then DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString())
@@ -4771,6 +4790,7 @@ Partial Class Ventas
HdnCveVenta.Value = CveVenta.ToString()
Me.EsGarantia = CBool(DbRowVenta("EsGarantia"))
Me.TipoCambioOriginal = DbRowVenta("TipoCambioOriginal").ToString().ToDecimal()
RFCReceptorVenta = DbRowVenta("RFCReceptor").ToString()
'Adjuntar archivo
@@ -6934,7 +6954,8 @@ Partial Class Ventas
If UsuarioActual.Empresa.Funcionalidad(381).Trim() = CveCliente.ToString() Then
Dim DeshabilitarAutorizacion As Boolean = CBool(GlobalDTSubProyectos(-1, CveSubProyecto:=DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa).FiltroPrimeroValor("DeshabilitaAutorizacion"))
If DdlTipoComprobante.SelectedValue = "PA" AndAlso DeshabilitarAutorizacion Then
'SI ESTA BLOQUEADO POR AUTORZACION O QUE TENGA LA OPCION DE AUTORIZACIONES Y NO SEA DEL MODULO DE COTIZACIONES
If (DdlTipoComprobante.SelectedValue.Contiene("PA") OrElse (DdlTipoComprobante.SelectedValue.Contiene("Cot") AndAlso DdlTipoComprobante.Items.FindByValue("PA") IsNot Nothing AndAlso Not IfNull(Request("Op"), "").ToString() = "Cot")) AndAlso DeshabilitarAutorizacion Then
If DdlTipoComprobante.Items.FindByValue("Rem") Is Nothing Then
DdlTipoComprobante.Items.Insert(0, New ListItem("Remisión", "Rem"))
End If
@@ -7515,6 +7536,8 @@ Partial Class Ventas
DdlTipoComprobante.Items.Remove(DdlTipoComprobante.Items.FindByValue("Pd2"))
End If
End If
HabilitaRemisionPublicoGeneral = 0
HabilitarRemisionesPublicoGeneral()
End If
'CUANDO SEA COTIZACION Y SEA COMPUPROVEEDORES (EMPRESA 72) NO DEBE ENVIAR CORREO AL CLIENTE
@@ -8067,6 +8090,12 @@ Partial Class Ventas
e.Row.FCLinkButton("imgD").Visible = False
End If
If UsuarioActual.CveEmpresa.Contiene(7, 122) Then
e.Row.FCTextBox("TxtCantidad").Width = New Unit("100%")
e.Row.FCLabel("LblTurnoEditar").Visible = True
e.Row.FCTextBox("TxtNumTurnosEditar").Visible = True
End If
'If UsuarioActual.CveEmpresa = 119 Then
' e.Row.FCTextBox("TxtDescuento").Enabled = False
'End If
@@ -8150,6 +8179,10 @@ Partial Class Ventas
e.Row.FCLiteral("LtlPrecioLista").Visible = True
End If
If UsuarioActual.CveEmpresa.Contiene(7, 122) AndAlso e.Row.DBCampo("NumTurnos").ToDecimal() > 0 Then
e.Row.FCLiteral("LtlNumTurnos").Visible = True
End If
'CANTIDAD FACTURADA
Select Case e.Row.DBCampo("TipoDocto")
Case "Cot"
@@ -8456,6 +8489,11 @@ Partial Class Ventas
ObjDescuento = CalcularDescuentos(GvPS.Rows(e.RowIndex).FCDropDownLost("DdlPS").SelectedValue.ToEntero(), Cantidad, PU)
End If
Dim NumTurnos As Decimal = 0
If UsuarioActual.CveEmpresa.Contiene(7, 122) Then
NumTurnos = GvPS.Rows(e.RowIndex).FCTextBox("TxtNumTurnosEditar").Text.ToDecimal()
End If
TmpDT.Rows.Remove(TmpDT.Rows(e.RowIndex))
CalculaUsados()
AgregarProductoServicio(Cantidad, DdlUM.SelectedValue.ToEntero(), DdlUM.SelectedItem.Text, DdlCla.SelectedValue.ToEntero(), DdlCla.SelectedItem.Text,
@@ -8463,7 +8501,8 @@ Partial Class Ventas
GvPS.Rows(e.RowIndex).FCTextBox("TxtObsPS").Text.Trim, PU, ObjDescuento.ImporteDescuento,
GvPS.Rows(e.RowIndex).FCDropDownList("DdlProyecto").SelectedValue.ToEntero(), GvPS.Rows(e.RowIndex).FCDropDownList("DdlProyecto").SelectedItem.Text,
GvPS.Rows(e.RowIndex).FCDropDownList("DdlSubProyecto").SelectedValue.ToEntero(), GvPS.Rows(e.RowIndex).FCDropDownList("DdlSubProyecto").SelectedItem.Text,
CuentaPredial:=CuentaPredial, CveVentaDetalle:=GvPS.Rows(e.RowIndex).DataKey("CveVentaDetalle").ToString().ToEntero(), SeActualiza:=True, CvePromocionDetalle:=ObjDescuento.CvePromocionDetalle, ObjDescuento:=ObjDescuento)
CuentaPredial:=CuentaPredial, CveVentaDetalle:=GvPS.Rows(e.RowIndex).DataKey("CveVentaDetalle").ToString().ToEntero(), SeActualiza:=True, CvePromocionDetalle:=ObjDescuento.CvePromocionDetalle,
ObjDescuento:=ObjDescuento, NumTurnos:=NumTurnos)
' TmpDT.Rows(e.RowIndex)("CveUM") = Ddl.SelectedValue
' TmpDT.Rows(e.RowIndex)("UM") = Ddl.SelectedItem.Text
@@ -8532,8 +8571,11 @@ Partial Class Ventas
TmpDT.Rows(e.RowIndex)("PorcentajeRetISR") = ClienteRetISR
TmpDT.Rows(e.RowIndex)("CuentaPredial") = CuentaPredial
Dim NumTurnos As Decimal = 0
If UsuarioActual.CveEmpresa.Contiene(7, 122) Then
NumTurnos = GvPS.Rows(e.RowIndex).FCTextBox("TxtNumTurnosEditar").Text.ToDecimal()
End If
TmpDT.Rows(e.RowIndex)("NumTurnos") = NumTurnos
If ObjDescuento IsNot Nothing Then
TmpDT.Rows(e.RowIndex)("CvePromocionDetalle") = ObjDescuento.CvePromocionDetalle
@@ -11338,7 +11380,7 @@ Partial Class Ventas
End If
'SI LA APLICACION DE ANTICIPO SE HACE A NIVEL TOTAL, FORZAR EL AJUSTE POR REDONDEO
DtImpuestos = CargaDtImpuestosNC(gvrt.DataKey("CveVenta").ToString().ToEntero(), gvrt.FCTextBox(String.Format("TxtAnticipo{0}", gvrt.RowIndex)).Text.ToDecimal, AplicaImpuestosLocales:=True, NCDescuento:=False, NivelTotal:=tTipoAmortizacion, ForzarAjuste:=ForzarAjuste)
DtImpuestos = CargaDtImpuestosNC(gvrt.DataKey("CveVenta").ToString().ToEntero(), gvrt.FCTextBox(String.Format("TxtAnticipo{0}", gvrt.RowIndex)).Text.ToDecimal, AplicaImpuestosLocales:=True, NCDescuento:=False, NivelTotal:=tTipoAmortizacion, ForzarAjuste:=ForzarAjuste, AplicaDescuentos:=True)
Dim query = From ddr In DtImpuestos
Group By PorcentajeIVA = ddr("PorcentajeIVA").ToString().ToDecimal,
@@ -11352,6 +11394,7 @@ Partial Class Ventas
ImporteRetIVA = x.Sum(Function(s) s("ImporteRetIVA").ToString().ToDecimal()).RoundSQL(2),' Math.Round(s("ImportePU").ToString().ToDecimal, 2)) * PorcentajeRetIVA,
ImporteRetISR = x.Sum(Function(s) s("ImporteRetISR").ToString().ToDecimal()).RoundSQL(2),' Math.Round(s("ImportePU").ToString().ToDecimal, 2)) * PorcentajeRetISR,
ImporteIEPS = x.Sum(Function(s) s("ImporteIEPS").ToString().ToDecimal()).RoundSQL(2), 'Math.Round(s("ImportePU").ToString().ToDecimal, 2)) * PorcentajeIEPS,
Descuento = x.Sum(Function(s) s("Descuento").ToString().ToDecimal()).RoundSQL(2),
PorcentajeIVA = PorcentajeIVA,
PorcentajeRetIVA = PorcentajeRetIVA,
PorcentajeRetISR = PorcentajeRetISR,
@@ -11384,7 +11427,7 @@ Partial Class Ventas
dr("IEPS") = Drr("ImporteIEPS").ToString().ToDecimal
dr("Descuento") = Math.Round(0, NumeroDecimales)
dr("Descuento") = Drr("Descuento").ToString().ToDecimal
dr("TipoDescuento") = HdnTipoDescuento.Value
dr("Total") = Drr("ImporteTotal").ToString().ToDecimal
dr("CveClasificacion") = drpss("CveClasificacion")
@@ -11413,7 +11456,7 @@ Partial Class Ventas
Total = (TotalSubTotal - TotalDescuentos + TotalIVA + TotalIEPS - TotalRetIVA - TotalRetISR - TotalImpuestosLocales)
factura.SubTotal = TotalSubTotal
factura.Descuento = 0
factura.Descuento = TotalDescuentos
factura.IVA = TotalIVA
factura.IEPS = TotalIEPS
factura.RetIVA = TotalRetIVA
@@ -13428,7 +13471,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(), CveActivoFijo:=Row("CveActivoFijo").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(), NumTurnos:=Row("NumTurnos").ToString().ToDecimal()) 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
@@ -14199,13 +14242,18 @@ Partial Class Ventas
If row2.DataKey("CveConceptoContable").ToString().ToEntero() = 3 Then
If row2.FCCheckBox("Chk" & row2.RowIndex).Checked Then
CveIEAnticipo = row2.DataKey("CveIE").ToString().ToEntero()
importeMovimiento = row2.FCTextBox("TxtAnticipo" & row2.RowIndex).Text.ToDecimal '- ((row2.FCTextBox("TxtAnticipo" & row2.RowIndex).Text.ToDecimal / row2.DataKey("TotalAnticipo").ToDecimal) * row2.DataKey("IVAAnticipo").ToDecimal)
Dim ImporteAnticipo As Decimal = importeMovimiento
Dim CveMonedaAnticipo As Integer = row2.DataKey("CveMoneda").ToString().ToEntero()
If tipoCambio > 1 Then Concepto += $" TC:{tipoCambio} ${importeMovimiento.FormatoNumero(2)}"
If DdlTipoAmortizacionAnticipo.SelectedValue = "2" Then ImporteAnticipo = row2.FCTextBox("TxtAnticipo" & row2.RowIndex).Text.ToDecimal / row2.DataKey("TotalAnticipo").ToDecimal * row2.DataKey("SubTotalAnticipo").ToDecimal
If DdlTipoAmortizacionAnticipo.SelectedValue = "2" Then
Dim DescuentosAnticipos As Decimal = row2.DataKey("Descuentos").ToDecimal
ImporteAnticipo = row2.FCTextBox("TxtAnticipo" & row2.RowIndex).Text.ToDecimal / (row2.DataKey("TotalAnticipo").ToDecimal - DescuentosAnticipos) * row2.DataKey("SubTotalAnticipo").ToDecimal
End If
Dim Importe11MX As Decimal = ImporteAnticipo
@@ -14864,6 +14912,10 @@ Partial Class Ventas
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
If EsNCAmortizacion Then
TipoMovimiento = Not TipoMovimiento
End If
IdCtaContable = GlobalDTClasificaciones(ObjFactura.CveEmpresa).FiltroPrimeroValor("IdCuentaGasto", String.Format("CveClasificacion = {0}", Row2("CveClasificacion"))).ToEntero()
Else
IdCtaContable = GlobalDTClasificaciones(ObjFactura.CveEmpresa).FiltroPrimeroValor("IdCuentaDescuento", String.Format("CveClasificacion = {0}", Row2("CveClasificacion"))).ToEntero()
@@ -17074,7 +17126,24 @@ Partial Class Ventas
End If
End If
If ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura) Then
Dim SeTimbro As Boolean = False
Try
SeTimbro = ObjTimbrado.TimbrarFactura(UsuarioActual, ObjFactura)
Catch ex As Exception
SeTimbro = False
End Try
'SI SE TIMBRO CON UN TIPO DE CAMBIO DISTINCTO, DEBE ACTUALIZAR LA PREPOLIZA
If SeTimbro AndAlso ChkEmitirComercioExterior.Checked AndAlso DdlTipoComprobante.SelectedValue = "Ing" AndAlso DdlMoneda.SelectedValue.ToEntero() = 2 AndAlso TxtTipoCambio.Text.ToDecimal() > 1 AndAlso (TxtTipoCambio.Text.ToDecimal() <> TipoCambioOriginal) Then
Using ObjVentas As New ClsVentas
If ObjVentas.UpdateVentaTC(Me.CveVenta, UsuarioActual.CveEmpresa, TxtTipoCambio.Text.ToDecimal()) Then
Alert("Se actualizó el tipo de cambio del documento")
End If
End Using
End If
If SeTimbro Then
'MENSAJE PRINCIPAL
MensajeAlert = New StringBuilder
@@ -18815,11 +18884,16 @@ Partial Class Ventas
End If
End If
Dim NumTurnos As Decimal = 0
If UsuarioActual.CveEmpresa.Contiene(7, 122) Then
NumTurnos = TxtNumTurnos.Text.ToDecimal()
End If
AgregarProductoServicio(Cantidad, DdlUnidadMedida.SelectedValue.ToEntero(), DdlUnidadMedida.SelectedItem.Text, DdlClasificacion.SelectedValue.ToEntero(), DdlClasificacion.SelectedItem.Text,
CvePS, "", TxtObsPS.Text.TrimEnd, PU, ObjDescuento.ImporteDescuento,
DdlProyecto.SelectedValue.ToEntero(), DdlProyecto.SelectedItem.Text, DdlSubProyecto.SelectedValue.ToEntero(), DdlSubProyecto.SelectedItem.Text,
Serie:=If(DIVCod.Visible, TxtCodigoSerie.Text.Trim, ""), TiempoEntrega:=TxtTiempoEntrega.Text, CuentaPredial:=TxtCuentaPredial.Text.Trim, RegeneraIEPS:=ClienteDesglosaIEPS, CvePromocionDetalle:=ObjDescuento.CvePromocionDetalle,
ImporteProntoPago:=ObjDescuento.ImporteProntoPago, ObjDescuento:=ObjDescuento, CvePrecioLista:=CvePrecioListaPS, PrecioLista:=PrecioListaPS)
ImporteProntoPago:=ObjDescuento.ImporteProntoPago, ObjDescuento:=ObjDescuento, CvePrecioLista:=CvePrecioListaPS, PrecioLista:=PrecioListaPS, NumTurnos:=NumTurnos)
CalculaUsados()
@@ -18941,6 +19015,7 @@ Partial Class Ventas
End Sub
Private Sub LimpiaAgregar()
TxtCantidad.Text = ""
TxtNumTurnos.Text = ""
HdnPS.Value = "-1"
HdnCodigoPS.Value = "-1"
HdnTipoPS.Value = "-1"
@@ -19011,7 +19086,7 @@ Partial Class Ventas
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 = "",
Optional CveActivoFijo As Integer = -1, Optional AFDepreciacion As Decimal = 0D, Optional AFValorInicial As Decimal = 0D) As Boolean
Optional CveActivoFijo As Integer = -1, Optional AFDepreciacion As Decimal = 0D, Optional AFValorInicial As Decimal = 0D, Optional NumTurnos As Decimal = 0D) As Boolean
Dim Retorno As Boolean = False
Try
@@ -19274,6 +19349,7 @@ Partial Class Ventas
Row("AFDepreciacion") = AFDepreciacion
Row("AFValorInicial") = AFValorInicial
Row("NumTurnos") = NumTurnos
If UsuarioActual.CveEmpresa.Contiene(119, 13, 83) Then
If Not RemisionesLista.Count > 0 Then 'SI VIENE DE REMISION NO SE CONSIDERA
@@ -19519,6 +19595,9 @@ Partial Class Ventas
TmpDT.Columns("TieneProntoPago").DefaultValue = "No"
TmpDT.Columns("ImporteProntoPago").DefaultValue = 0
TmpDT.Columns.Add("NumTurnos", GetType(Decimal))
TmpDT.Columns("NumTurnos").DefaultValue = 0
End Sub
Private Sub CreaDTmpC()
DTmpC = New DataTable
@@ -22249,7 +22328,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(), CveActivoFijo:=Row("CveActivoFijo").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(), NumTurnos:=Row("NumTurnos").ToString().ToDecimal()) Then
OcurrioError = True
Exit For
Else
@@ -29975,7 +30054,7 @@ Partial Class Ventas
Next
End Sub
Private Function CargaDtImpuestosNC(CveVentaNC As Integer, Importe As Decimal, Optional NCDescuento As Boolean = False, Optional AplicaImpuestosLocales As Boolean = True, Optional NivelTotal As Integer = 1, Optional AplicaNCUsado As Boolean = False, Optional ForzarAjuste As Boolean = False) As DataTable
Private Function CargaDtImpuestosNC(CveVentaNC As Integer, Importe As Decimal, Optional NCDescuento As Boolean = False, Optional AplicaImpuestosLocales As Boolean = True, Optional NivelTotal As Integer = 1, Optional AplicaNCUsado As Boolean = False, Optional ForzarAjuste As Boolean = False, Optional AplicaDescuentos As Boolean = False) As DataTable
Dim Total As Decimal = 0, SubTotal As Decimal = 0, Saldo As Decimal = 0
Dim TmpDT As DataTable = Nothing
@@ -30024,6 +30103,10 @@ Partial Class Ventas
DtImpuestosLocal.Columns.Add("ImporteRetIVA", GetType(Decimal))
DtImpuestosLocal.Columns.Add("ImporteRetISR", GetType(Decimal))
DtImpuestosLocal.Columns.Add("ImporteIEPS", GetType(Decimal))
If AplicaDescuentos Then
DtImpuestosLocal.Columns.Add("Descuento", GetType(Decimal))
End If
Dim ImporteReferencia As Decimal = If(NivelTotal = 1, Total, SubTotal)
Dim Porcentaje As Decimal = ((Importe * 100) / ImporteReferencia) / 100
@@ -30047,7 +30130,12 @@ Partial Class Ventas
For Each Dr As DataRow In DtImpuestosLocal.Rows
FiltroStr = String.Format("ISNULL(PorcentajeIVA,0) = {0} AND ISNULL(PorcentajeRetIVA,0) = {1} AND ISNULL(PorcentajeRetISR,0) = {2} AND ISNULL(PorcentajeIEPS,0) = {3} AND ISNULL(CveSubProyecto,0) = {4} ", Dr("PorcentajeIVA").ToString().ToDecimal, Dr("PorcentajeRetIVA").ToString().ToDecimal, Dr("PorcentajeRetISR").ToString().ToDecimal, Dr("PorcentajeIEPS").ToString().ToDecimal, Dr("CveSubProyecto"))
Dim importePuTemp As Decimal = (Porcentaje * (TmpDT.SUMD("TotalImporte", FiltroStr) - TmpDT.SUMD("Descuento", FiltroStr)))
Dim importePuTemp As Decimal = 0
If AplicaDescuentos Then
importePuTemp = (Porcentaje * (TmpDT.SUMD("TotalImporte", FiltroStr)))
Else
importePuTemp = (Porcentaje * (TmpDT.SUMD("TotalImporte", FiltroStr) - TmpDT.SUMD("Descuento", FiltroStr)))
End If
If Not AplicaImpuestosLocales Then
importePuTemp = importePuTemp - TotalImpuestosLocalesVentaOriginal
@@ -30068,12 +30156,20 @@ Partial Class Ventas
Dr("ImporteRetISR") = (importePuTemp * Dr("PorcentajeRetISR").ToString().ToDecimal())
Dr("ImportePU") = importePuTemp
If AplicaDescuentos Then
Dr("Descuento") = Porcentaje * TmpDT.SUMD("Descuento", FiltroStr)
End If
If AplicaRedondeo Then
Dr("ImporteIEPS") = Dr("ImporteIEPS").ToString().ToDecimal().RoundSQL(2)
Dr("ImporteIVA") = Dr("ImporteIVA").ToString().ToDecimal().RoundSQL(2)
Dr("ImporteRetIVA") = Dr("ImporteRetIVA").ToString().ToDecimal().RoundSQL(2)
Dr("ImporteRetISR") = Dr("ImporteRetISR").ToString().ToDecimal().RoundSQL(2)
Dr("ImportePU") = Dr("ImportePU").ToString().ToDecimal().RoundSQL(6)
If AplicaDescuentos Then
Dr("Descuento") = Dr("Descuento").ToString().ToDecimal().RoundSQL(2)
End If
End If
@@ -33054,11 +33150,25 @@ Partial Class Ventas
'REMOVER EVENTO PARA RECARGAR ALMACEN
'spanAlmacen.Attributes.Remove("onclick")
If UsuarioActual.CveEmpresa.Contiene(7, 122) Then
TxtCantidad.Width = New Unit("100%")
DivNumTurnos.Visible = True
End If
If UsuarioActual.Empresa.Funcionalidad(360) = "1" Then
CargaListasPrecios()
End If
BtnEditar.Visible = False
BtnEmitir.Visible = False
BtnPermisoEditarCotizacion.Visible = False
BtnEditarCotizacion.Visible = False
BtnPermisoEditarRemision.Visible = False
BtnEditarRemision.Visible = False
BtnGenerarRemision.Visible = False
BtnGeneraAutorizacion.Visible = False
HdnCargarInventario.Value = "False"
UpParametros.Update()
@@ -35400,6 +35510,8 @@ Partial Class Ventas
TmpDT.Columns.Add("CveActivoFijo", GetType(Integer))
TmpDT.Columns.Add("AFDepreciacion", GetType(Decimal))
TmpDT.Columns.Add("AFValorInicial", GetType(Decimal))
TmpDT.Columns.Add("NumTurnos", GetType(Decimal))
TmpDT.Columns("NumTurnos").DefaultValue = 0D
Return TmpDT
End Function