-- verificar RNC, que no exista el folio previo al registro.

-- prefijo de RNC si es de Dev
This commit is contained in:
2025-01-29 13:29:02 -07:00
parent 4c1073830b
commit 3c9041e9b6
2 changed files with 74 additions and 75 deletions

View File

@@ -250,7 +250,7 @@
<div class="whitoutcol" style="width: 120px;">
<div class="form-group ">
<asp:Label ID="lblOCLabel" runat="server" CssClass="whitoutcol linewhitsize" Style="width: 40px;"># O.C.:</asp:Label>
<div class="whitoutcol form-group form-md-line-input linewhitsize" style="width: 60px;">
<div class="whitoutcol form-group form-md-line-input linewhitsize" style="width: 75px;">
<asp:TextBox ID="TxtOC" ClientIDMode="Static" runat="server" CssClass="form-control input-xs " onkeypress="fncBuscaOC(event);" MaxLength="100"></asp:TextBox>
</div>
<asp:LinkButton ID="ImgBtnBuscarOC" data-toggle="tooltip" data-placement="top" runat="server" CssClass="linewhitsize" ClientIDMode="Static" BorderWidth="0" Style="float: left;" ToolTip="Buscar O.C" OnClientClick=""><i class="fa fa-search"></i></asp:LinkButton>

View File

@@ -13,7 +13,6 @@ Imports MoreLinq
Imports System.Data.SqlClient
Imports ClsPaginas
Imports Microsoft.Reporting.WebForms
Imports Stimulsoft.Report
Partial Class Compras_Compras
Inherits ClsPaginas
@@ -1680,14 +1679,11 @@ Partial Class Compras_Compras
InicializaDTProrrateoGasolina()
End If
If UsuarioActual.Empresa.Funcionalidad(382) = "1" Then
If Request("SaldarRNC") IsNot Nothing AndAlso Request("SaldarRNC").ToString.ToEntero = 1 Then
SaldaConRNC()
End If
End If
'If UsuarioActual.Empresa.Funcionalidad(382) = "1" Then
' If Request("SaldarRNC") IsNot Nothing AndAlso Request("SaldarRNC").ToString.ToEntero = 1 Then
' SaldaConRNC()
' End If
'End If
End If
'SE OCUPAN AFUERA DEL POSTBACK ??
@@ -1721,77 +1717,77 @@ Partial Class Compras_Compras
End Sub
Private Sub SaldaConRNC()
'Private Sub SaldaConRNC()
If CompraSaldo > 0 Then
ImporteRNC = CompraSaldo.ToDecimal
Dim ErrorSaldoRNC As Boolean = False
Dim ObjCompras As New ClsCompras
Dim ObjConta As New ClsContabilidad(ObjCompras.IniciaTransacSQL)
ObjCompras.IniciaTransacSQL()
ObjCompras.IniciaTransacSQL()
' If CompraSaldo > 0 Then
' ImporteRNC = CompraSaldo.ToDecimal
' Dim ErrorSaldoRNC As Boolean = False
' Dim ObjCompras As New ClsCompras
' Dim ObjConta As New ClsContabilidad(ObjCompras.IniciaTransacSQL)
' ObjCompras.IniciaTransacSQL()
' ObjCompras.IniciaTransacSQL()
If UsuarioActual.Empresa.Funcionalidad(574) = "1" AndAlso (ImporteRNC > 0 Or ImporteRNCProntoPago > 0) Then
' If UsuarioActual.Empresa.Funcionalidad(574) = "1" AndAlso (ImporteRNC > 0 Or ImporteRNCProntoPago > 0) Then
Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
' Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
Dim CompraSaldar As New Compra
CompraSaldar.CveCompra = CveCompra
CompraSaldar.CveTipoConceptoProveedor = CveTipoConcepto
CompraSaldar.CveProveedor = CveProveedor
CompraSaldar.CveMoneda = DdlMoneda.SelectedValue.ToEntero
CompraSaldar.Fecha = TxtFecha.Text.ToDate
CompraSaldar.SerieFolio = TxtSerie.Text.Trim & "-" & TxtFolio.Text.Trim
CompraSaldar.ProveedorNombre = HplProveedor.Text
CompraSaldar.TC = TipoCambioOriginal
CompraSaldar.Total = TxtTotal.Text.ToDecimal
CompraSaldar.IVA = TxtIVA.Text.ToDecimal
CompraSaldar.IVADeducible = TxtIVA.Text.ToDecimal
CompraSaldar.IEPS = TxtIEPS.Text.ToDecimal
CompraSaldar.RetIVA = TxtRetIVA.Text.ToDecimal
CompraSaldar.RetISR = TxtRetISR.Text.ToDecimal
CompraSaldar.CveConceptoRetISR = DdlRetISRConcepto.SelectedValue.ToEntero
CompraSaldar.CveConceptoRetIVA = DdlRetIVAConcepto.SelectedValue.ToEntero
CompraSaldar.PorcentajeIVA = PorcentajeIVA
CompraSaldar.UsuarioActual = UsuarioActual
CompraSaldar.CveSubProyecto = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero
CompraSaldar.EsImportacion = chkImportacion.Checked
' Dim CompraSaldar As New Compra
' CompraSaldar.CveCompra = CveCompra
' CompraSaldar.CveTipoConceptoProveedor = CveTipoConcepto
' CompraSaldar.CveProveedor = CveProveedor
' CompraSaldar.CveMoneda = DdlMoneda.SelectedValue.ToEntero
' CompraSaldar.Fecha = TxtFecha.Text.ToDate
' CompraSaldar.SerieFolio = TxtSerie.Text.Trim & "-" & TxtFolio.Text.Trim
' CompraSaldar.ProveedorNombre = HplProveedor.Text
' CompraSaldar.TC = TipoCambioOriginal
' CompraSaldar.Total = TxtTotal.Text.ToDecimal
' CompraSaldar.IVA = TxtIVA.Text.ToDecimal
' CompraSaldar.IVADeducible = TxtIVA.Text.ToDecimal
' CompraSaldar.IEPS = TxtIEPS.Text.ToDecimal
' CompraSaldar.RetIVA = TxtRetIVA.Text.ToDecimal
' CompraSaldar.RetISR = TxtRetISR.Text.ToDecimal
' CompraSaldar.CveConceptoRetISR = DdlRetISRConcepto.SelectedValue.ToEntero
' CompraSaldar.CveConceptoRetIVA = DdlRetIVAConcepto.SelectedValue.ToEntero
' CompraSaldar.PorcentajeIVA = PorcentajeIVA
' CompraSaldar.UsuarioActual = UsuarioActual
' CompraSaldar.CveSubProyecto = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero
' CompraSaldar.EsImportacion = chkImportacion.Checked
Dim FolioFijo As Integer = 0
'cheque
If DdlTipoTransaccion.SelectedValue = "1" AndAlso UsuarioActual.CveEmpresa <> 119 Then FolioFijo = TxtFolio.Text.ToEntero
Dim ConceptoPoliza As String = String.Format("{0} - {1}{2} - {3}", NombreProveedor, TxtSerie.Text, TxtFolio.Text, TxtDescripcion.Text.Trim)
' Dim FolioFijo As Integer = 0
' 'cheque
' If DdlTipoTransaccion.SelectedValue = "1" AndAlso UsuarioActual.CveEmpresa <> 119 Then FolioFijo = TxtFolio.Text.ToEntero
' Dim ConceptoPoliza As String = String.Format("{0} - {1}{2} - {3}", NombreProveedor, TxtSerie.Text, TxtFolio.Text, TxtDescripcion.Text.Trim)
Dim CvePrePolizaSaldar = ObjConta.AddPrePolizas("Compras/SaldarRNC", 53, ImporteRNC.RoundSQL(2), ImporteRNC.RoundSQL(2), DdlMoneda.SelectedValue.ToEntero, TxtFecha.Text.ToDate, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=FolioFijo, ReglaFolioPoliza:=ObjCompras.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa), CveTipoPoliza:=ObjConta.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa))
' Dim CvePrePolizaSaldar = ObjConta.AddPrePolizas("Compras/SaldarRNC", 53, ImporteRNC.RoundSQL(2), ImporteRNC.RoundSQL(2), DdlMoneda.SelectedValue.ToEntero, TxtFecha.Text.ToDate, ConceptoPoliza, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=FolioFijo, ReglaFolioPoliza:=ObjCompras.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa), CveTipoPoliza:=ObjConta.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa))
If CvePrePolizaSaldar > 0 Then
ImporteRNC = ImporteRNC.RoundSQL(2)
If PorcentajeIVA > 0 Then
ImporteRNC = ((ImporteRNC) / (1 + PorcentajeIVA))
End If
' If CvePrePolizaSaldar > 0 Then
' ImporteRNC = ImporteRNC.RoundSQL(2)
' If PorcentajeIVA > 0 Then
' ImporteRNC = ((ImporteRNC) / (1 + PorcentajeIVA))
' End If
If Not GeneraRNC(ObjCompras.IniciaTransacSQL, CveCompra, CompraSaldar, ObjConta, CvePrePolizaSaldar, DdlProveedor.SelectedValue.ToEntero, DdlProveedor.SelectedItem.Text, TxtFecha.Text.ToDate, $"Remisión Nota de Crédito {TxtDescripcion.Text}", DdlMoneda.SelectedValue.ToEntero, TxtTC.Text.ToDecimal,
TxtSerie.Text, TxtFolio.Text, RedondearSaldado:=True) Then
ErrorSaldoRNC = True
End If
End If
' If Not GeneraRNC(ObjCompras.IniciaTransacSQL, CveCompra, CompraSaldar, ObjConta, CvePrePolizaSaldar, DdlProveedor.SelectedValue.ToEntero, DdlProveedor.SelectedItem.Text, TxtFecha.Text.ToDate, $"Remisión Nota de Crédito {TxtDescripcion.Text}", DdlMoneda.SelectedValue.ToEntero, TxtTC.Text.ToDecimal,
' TxtSerie.Text, TxtFolio.Text, RedondearSaldado:=True) Then
' ErrorSaldoRNC = True
' End If
' End If
End If
' End If
If ErrorSaldoRNC Then
ObjCompras.RollBack()
Else
ObjCompras.Commit()
End If
' If ErrorSaldoRNC Then
' ObjCompras.RollBack()
' Else
' ObjCompras.Commit()
' End If
ObjCompras.Dispose()
ObjConta.Dispose()
End If
' ObjCompras.Dispose()
' ObjConta.Dispose()
' End If
End Sub
'End Sub
Private Sub ConfiguraseleccionRemisionNotaCredito()
@@ -15328,7 +15324,7 @@ Partial Class Compras_Compras
Protected Sub GvOC1_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvOC1.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
Dim JSCambiaScript As String = $"CalculaTotalOCEdit('{e.Row.DBCampo("PS").Replace("'", "").Replace(vbLf, " ").Replace(vbCrLf, " ")}', {e.Row.DBCampo("Cantidad).ToDouble},{e.Row.DBCampo("PU").ToDouble}, {e.Row.FCTextBox("TxtCantidad").ClientID}, {e.Row.FCTextBox("TxtPU").ClientID}, {e.Row.FCTextBox("TxtTotalOC1").ClientID}, {e.Row.DBCampo("IEPSPS").ToDouble},{e.Row.FCHiddenField("HdnOC1IEPSImporte").ClientID}, {e.Row.DBCampo("IVA").ToDouble},{e.Row.FCHiddenField("HdnOC1IVA").ClientID},{e.Row.DBCampo("RetIVA").ToDouble},{e.Row.FCHiddenField("HdnOC1RetIVA").ClientID},{e.Row.DBCampo("RetISR").ToDouble},{e.Row.FCHiddenField("HdnOC1RetISR").ClientID},{e.Row.DBCampo("IEPSPS").ToDouble},{e.Row.FCHiddenField("HdnOC1IEPSIVA").ClientID},{e.Row.DBCampo("Descuento")},{e.Row.FCHiddenField("HdnOC1Descuento").ClientID},{e.Row.DBCampo("IVAPorcentaje").ToDouble},{e.Row.DBCampo("RetIVAPorcentaje").ToString.ToDouble},{e.Row.DBCampo("RetISRPorcentaje").ToDouble},{e.Row.DBCampo("IEPSPSPorcentaje").ToDouble},{e.Row.DBCampo("IEPSPSIVAPorcentaje").ToDouble});"
Dim JSCambiaScript As String = $"CalculaTotalOCEdit('{e.Row.DBCampo("PS").Replace("'", "").Replace(vbLf, " ").Replace(vbCrLf, " ")}', {e.Row.DBCampo("Cantidad").ToDouble},{e.Row.DBCampo("PU").ToDouble}, {e.Row.FCTextBox("TxtCantidad").ClientID}, {e.Row.FCTextBox("TxtPU").ClientID}, {e.Row.FCTextBox("TxtTotalOC1").ClientID}, {e.Row.DBCampo("IEPSPS").ToDouble},{e.Row.FCHiddenField("HdnOC1IEPSImporte").ClientID}, {e.Row.DBCampo("IVA").ToDouble},{e.Row.FCHiddenField("HdnOC1IVA").ClientID},{e.Row.DBCampo("RetIVA").ToDouble},{e.Row.FCHiddenField("HdnOC1RetIVA").ClientID},{e.Row.DBCampo("RetISR").ToDouble},{e.Row.FCHiddenField("HdnOC1RetISR").ClientID},{e.Row.DBCampo("IEPSPS").ToDouble},{e.Row.FCHiddenField("HdnOC1IEPSIVA").ClientID},{e.Row.DBCampo("Descuento")},{e.Row.FCHiddenField("HdnOC1Descuento").ClientID},{e.Row.DBCampo("IVAPorcentaje").ToDouble},{e.Row.DBCampo("RetIVAPorcentaje").ToString.ToDouble},{e.Row.DBCampo("RetISRPorcentaje").ToDouble},{e.Row.DBCampo("IEPSPSPorcentaje").ToDouble},{e.Row.DBCampo("IEPSPSIVAPorcentaje").ToDouble});"
e.Row.FCTextBox("TxtCantidad").Attributes.Add("onkeyup", $"LimitaCantidadOC({e.Row.DBCampo("CantidadPendienteVincular")}, this);{JSCambiaScript}")
@@ -19271,7 +19267,7 @@ Partial Class Compras_Compras
If Not GeneraRNC(ObjCompras.IniciaTransacSQL, CveCompra, CompraActual, objConta, CvePrePoliza, DdlProveedor.SelectedValue.ToEntero, DdlProveedor.SelectedItem.Text, TxtFecha.Text.ToDate,
$"Remisión Nota de Crédito {TxtDescripcion.Text}", DdlMoneda.SelectedValue.ToEntero, TipoCambioOriginal,
TxtSerie.Text, TxtFolio.Text, EsDRMN:=True) Then
TxtSerie.Text, TxtFolio.Text, PrefijoSerie:="Dev", EsDRMN:=True) Then
TieneError = True
End If
@@ -22034,7 +22030,7 @@ Partial Class Compras_Compras
Public Function GeneraRNC(ByRef sqltransaccion As SqlTransaction, CveCompraRegistrada As Integer, ByRef CompraActual As Compra, ByRef ObjConta As ClsContabilidad, CvePrePoliza As Integer,
CveProveedor As Integer, NombreProveedor As String, Fecha As Date, Descripcion As String, CveMoneda As Integer, TipoCambio As Decimal, Serie As String, Folio As String,
Optional EsDRMN As Boolean = False, Optional TmpListadoPS As DataTable = Nothing, Optional RedondearSaldado As Boolean = False) As Boolean
Optional PrefijoSerie As String = "D", Optional EsDRMN As Boolean = False, Optional TmpListadoPS As DataTable = Nothing, Optional RedondearSaldado As Boolean = False) As Boolean
CveCompraDRMC = -1
Dim respuesta As Boolean = True
Dim PorcentajeIVA As Decimal = TmpDT.MAX("IVAPorcentaje").ToDecimal
@@ -22068,16 +22064,19 @@ Partial Class Compras_Compras
.Fecha = Fecha,
.CveMoneda = CveMoneda,
.TipoCambio = If(CveMoneda = 1, 1, TipoCambio),
.Serie = $"D-{Serie}",
.Serie = $"{PrefijoSerie}-{Serie}",
.Folio = Folio,
.CveCompraAmortizacion = CveCompraRegistrada,
.CveCompraRelacionada = CveCompraRegistrada
}
'Dim CveTipoPS As Integer = PSRow("CveTipoPS").ToString.ToEntero
'If PSRow("CvePSCargo").ToString <> "" Then
' CveTipoPS = 2
'End If
'VERIFICAR SI NO EXISTE YA EL FOLIO
Dim ObjCompra As New ClsCompras
If ObjCompra.GetCompras(-1, CompraRNC.Serie, CompraRNC.Folio, CompraRNC.CveProveedor, -1, UsuarioActual.CveEmpresa) Then
If ObjCompra.DtResultados.Rows.Count > 0 Then
CompraRNC.Serie = $"{PrefijoSerie}{ObjCompra.DtResultados.Rows.Count}-{Serie}" 'reasigna la serie, para que permita insertar
End If
End If
ObjCompra.Dispose()
Dim CveClasificacion As Integer = PSRow("CveClasificacion").ToString.ToEntero
Dim Clasificacion As String = PSRow("Clasificacion").ToString