From 4c632cdb860fe90d49c1e34fd172a63a754552c8 Mon Sep 17 00:00:00 2001 From: rrene Date: Tue, 24 Dec 2024 05:25:01 -0700 Subject: [PATCH] =?UTF-8?q?--=20limitar=20la=20vinculaci=C3=B3n=20de=20RNC?= =?UTF-8?q?.=20cuando=20es=20mayor=20la=20RNC=20a=20la=20vinculaci=C3=B3n?= =?UTF-8?q?=20de=20la=20NC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Compras/Compras.aspx | 4 +- Compras/Compras.aspx.vb | 85 +++++++++++++++++++++-------------------- 2 files changed, 45 insertions(+), 44 deletions(-) diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index e0236af06..49d571215 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -995,10 +995,10 @@ - +
- diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 70e4cba07..e24f5713c 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -13,6 +13,7 @@ Imports MoreLinq Imports System.Data.SqlClient Imports ClsPaginas Imports Microsoft.Reporting.WebForms +Imports CrystalDecisions.[Shared] Partial Class Compras_Compras Inherits ClsPaginas @@ -2305,7 +2306,7 @@ Partial Class Compras_Compras If item("CveUM").ToString() <> EquivalenciaBase("CveUM").ToString() Then Dim EquivalenciaACambiar = GlobalDTProductosServiciosEquivalencias(item("CvePS").ToString().ToEntero(), item("CveUM").ToString().ToEntero(), UsuarioActual.CveEmpresa).FiltroPrimero("") If EquivalenciaACambiar IsNot Nothing Then - Dim Cantidad As Decimal = Math.Round(item("Cantidad").ToString().ToDecimal() / EquivalenciaACambiar("Cantidad").ToString().ToDecimal(), 6) + Dim Cantidad As Decimal = Math.Round(EquivalenciaACambiar("Cantidad").ToString.ToDecimal * item("Cantidad").ToString.ToDecimal, 6) Dim PU As Decimal = Math.Round((item("Total").ToString().ToDecimal() + item("Descuento").ToString().ToDecimal()) / Cantidad, 6) item("Cantidad") = Cantidad item("PU") = PU @@ -4298,7 +4299,7 @@ Partial Class Compras_Compras End If End If - If Not ValidaPresupuesto(2) Then + If Not ValidaPresupuesto(2) Then Exit Sub End If @@ -7190,43 +7191,36 @@ Partial Class Compras_Compras Next If UsuarioActual.Empresa.Funcionalidad(574) = "1" Then + Dim TotalSaldo As Decimal = TxtTotal.Text.ToDecimal - - - For Each gvRow As GridViewRow In GVRemisionesNotaDeCredito.Rows + For Each gvRow As GridViewRow In GvRNC.Rows If gvRow.FCCheckBox("Chk").Checked Then Dim ImporteRNCSaldar As Decimal = gvRow.DataKey("Saldo").ToDecimal Dim CveCompraRNC As Integer = gvRow.DataKey("CveCompra").ToEntero + If ImporteRNCSaldar > TotalSaldo Then ImporteRNCSaldar = TotalSaldo If Not ErrorPrepoliza Then - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteRNCSaldar, ImporteRNCSaldar, 373, Referencia, Concepto, CveCompra:=CveCompraRNC, CveProveedor:=Me.CveProveedor, ImporteME:=If(TipoCambio = 1, 0, ImporteRNCSaldar), TipoCambio:=TipoCambio, + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, False, ImporteRNCSaldar, ImporteRNCSaldar, 373, Referencia, Concepto, CveCompra:=CveCompraRNC, CveProveedor:=Me.CveProveedor, ImporteME:=If(TipoCambio = 1, 0, ImporteRNCSaldar), TipoCambio:=TipoCambio, CveClasificacion:=-1, CveSubProyecto:=CompraActual.CveSubProyecto, Contabilizable:=True) Then - ErrorPrepoliza = True - Exit For - End If - - If Not ErrorPrepoliza Then - Dim ConPrePNC As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(15, CompraActual.CveMoneda, True, CompraActual.CveTipoConceptoProveedor) - - If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteRNCSaldar, ImporteRNCSaldar, ConPrePNC.CveConcepto, Referencia, Concepto, CveCompra:=CompraActual.CveCompra, CveProveedor:=Me.CveProveedor, ImporteME:=If(TipoCambio = 1, 0, ImporteRNCSaldar), TipoCambio:=TipoCambio, - CveClasificacion:=-1, CveSubProyecto:=CompraActual.CveSubProyecto, Contabilizable:=True) Then ErrorPrepoliza = True Exit For End If + + If Not ErrorPrepoliza Then + Dim ConPrePNC As ConceptosTipoSaldo = ObtenerCveConceptoPrePoliza(15, CompraActual.CveMoneda, True, CompraActual.CveTipoConceptoProveedor) + + If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteRNCSaldar, ImporteRNCSaldar, ConPrePNC.CveConcepto, Referencia, Concepto, CveCompra:=CompraActual.CveCompra, CveProveedor:=Me.CveProveedor, ImporteME:=If(TipoCambio = 1, 0, ImporteRNCSaldar), TipoCambio:=TipoCambio, + CveClasificacion:=-1, CveSubProyecto:=CompraActual.CveSubProyecto, Contabilizable:=True) Then + ErrorPrepoliza = True + Exit For + End If + End If End If End If - End If - - Next - - - - - If ErrorPrepoliza Then ErrorMovtosCxP = True Exit Select @@ -9695,12 +9689,14 @@ Partial Class Compras_Compras 'End Function Private Sub MandaCorreoActualizacionDetalle() + Dim DTCorreos As New DataTable Dim DTMovimientos As New DataTable Dim strBody As New StringBuilder Dim Asunto, Para, ArrayCC, Body As String 'Para = GlobalDTUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa).FiltroPrimeroValor("Correo") - Para = "fernanda.romo@agrojam.com.mx" + Para = "" + If EsProduccion Then Para = "fernanda.romo@agrojam.com.mx" If Para.ToString = "" AndAlso UsuarioActual.CveRol = 1 Then Para = Para & ";oscar.irigoyen@adssistemas.mx;rene.molina@adssistemas.mx" @@ -9747,7 +9743,7 @@ Partial Class Compras_Compras strBody.Append("") '' ENVIO DEL CORREO - Asunto = $"Actualizacion de Compra: {SerieFolioCompra} Proveedor: {HplProveedor.Text}" + Asunto = $"Actualización de Compra: {SerieFolioCompra} Proveedor: {HplProveedor.Text}" ArrayCC = "" Body = strBody.ToString Dim Mail As New ClsSisMail() @@ -14101,7 +14097,8 @@ Partial Class Compras_Compras CargaGVsAF() CargaTipoCentroCostoOC() - GvOC1.DataSource = DTOCTemp.FiltraParametros("", "CodigoPS") + DTOCTemp = DTOCTemp.FiltraParametros("", "CodigoPS") + GvOC1.DataSource = DTOCTemp Dim DTCVEOCS As DataTable = DTOCTemp.FiltraParametros("", "", {"CveOrdenCompra"}) If DTCVEOCS IsNot Nothing AndAlso DTCVEOCS.Rows.Count > 1 Then @@ -15181,14 +15178,13 @@ Partial Class Compras_Compras 'SI ES MAS DE UNA OC ORDENA POR PRODUCTO Dim ArrayCveOC As String() = HdnVCveOC.Value.Split(New Char() {","c}) - DTOCGV = If(ArrayCveOC.Length > 1, DTOCGV.FiltraParametros("", "Producto"), DTOCGV) + 'DTOCGV = If(ArrayCveOC.Length > 1, DTOCGV.FiltraParametros("", "Producto"), DTOCGV) + DTOCGV = DTOCGV.FiltraParametros("", " CodigoPS") CargaTipoCentroCostoOC() - - GvOC1.DataSource = DTOCGV.FiltraParametros("", "CodigoPS") + GvOC1.DataSource = DTOCGV GvOC1.DataBind() - Dim DTCVEOGV As DataTable = DTOCGV.FiltraParametros("", "", {"CveOrdenCompra"}) If DTCVEOGV.Rows.Count > 1 Then GvOC1.Columns(0).Visible = True @@ -15210,7 +15206,12 @@ Partial Class Compras_Compras Dim Change As Boolean = False For Each Dr2 As DataRow In TmpDT.Rows If Gvr.DataKey("NumeroParte") = Dr2("NoIdentificacion").ToString() OrElse Gvr.DataKey("CvePS") = Dr2("CvePS").ToString() Then - Gvr.FCTextBox("TxtCantidad").Text = Dr2("Cantidad").ToString + ' que la cantidad de la Fact no exceda a la de la OC + If Dr2("Cantidad").ToString.ToDecimal > Gvr.DataKey("CantidadF").ToDecimal Then + Gvr.FCTextBox("TxtCantidad").Text = Gvr.DataKey("CantidadF").ToDecimal.ToString("#,###.####") + Else + Gvr.FCTextBox("TxtCantidad").Text = Dr2("Cantidad").ToString + End If Change = True End If Next @@ -15234,7 +15235,8 @@ Partial Class Compras_Compras GvOC1.Columns(5).Visible = False 'proyecto GvOC1.Columns(6).Visible = False 'codigoSAT GvOC2.Columns(4).Visible = False - GvOC2.DataSource = TmpDT.FiltraParametros("", "CodigoPS") + TmpDT = TmpDT.FiltraParametros("", "CodigoPS") + GvOC2.DataSource = TmpDT Else GvOC2.DataSource = TmpDT @@ -15866,7 +15868,7 @@ Partial Class Compras_Compras CargaGVsAF() CargaTipoCentroCostoOC() - GvOC1.DataSource = DTOCGV.FiltraParametros("", "CodigoPS") + GvOC1.DataSource = DTOCGV GvOC1.DataBind() Dim DTCVEOCS As DataTable = DTOCGV.FiltraParametros("", "", {"CveOrdenCompra"}) @@ -21878,10 +21880,11 @@ Partial Class Compras_Compras Else Dim TmpImporteRNC As Decimal = If(AjusteProntoPagoPorcentajeIVA > 0, ImporteRNC + (ImporteRNC * AjusteProntoPagoPorcentajeIVA), ImporteRNC) Dim TmpImporteRNCProntoPago As Decimal = If(AjusteProntoPagoPorcentajeIVA > 0, ImporteRNCProntoPago + (ImporteRNCProntoPago * AjusteProntoPagoPorcentajeIVA), ImporteRNCProntoPago) + Dim PorcentajeRNCs As Decimal = (TmpImporteRNC + TmpImporteRNCProntoPago) / TxtTotal.Text.ToDecimal * 100D - Dim StrMsg As String = $"Existe una diferencia de ${(TmpImporteRNC + TmpImporteRNCProntoPago).ToString("###,###,###.00")} entre la compra y la Orden de Compra.
Se generaran Remisiones de Nota de Crédito.
- Descuento de ${TmpImporteRNC.ToString("###,###,###.00")}.
" + Dim StrMsg As String = $"Existe una diferencia de ${(TmpImporteRNC + TmpImporteRNCProntoPago).ToString("###,###,###.00")} ({PorcentajeRNCs.FormatoNumero}%) entre la compra y la Orden de Compra.
Se generaran Remisiones de Nota de Crédito.
- Descuento de ${TmpImporteRNC.ToString("###,###,###.00")} ({ (TmpImporteRNC / TxtTotal.Text.ToDecimal * 100D).FormatoNumero}%) .
" If TmpImporteRNCProntoPago > 0 Then - StrMsg = StrMsg & $"- Pronto pago de ${TmpImporteRNCProntoPago.ToString("###,###,###.00")}" + StrMsg = StrMsg & $"- Pronto pago de ${TmpImporteRNCProntoPago.ToString("###,###,###.00")} ({ (TmpImporteRNCProntoPago / TxtTotal.Text.ToDecimal * 100D).FormatoNumero}%)" End If LblModalConfirmaVinculacionProntoPago.Text = StrMsg @@ -21904,8 +21907,8 @@ Partial Class Compras_Compras Private Sub CargaGVRemisionNotaCredito() 'DvDdlRemisionNotaCredito.Visible = True DTRemisionesNotaDeCredito = New DataTable - GVRemisionesNotaDeCredito.DataSource = Nothing - GVRemisionesNotaDeCredito.Visible = False + GvRNC.DataSource = Nothing + GvRNC.Visible = False Dim CveComprasAmortizadas As New List(Of String) @@ -21921,14 +21924,12 @@ Partial Class Compras_Compras If ObjCompras.GetNotasCreditoRep(DdlProveedor.SelectedValue.ToEntero, 0, "-1", "-1", UsuarioActual.CveEmpresa, 2, String.Join(",", CveComprasAmortizadas)) Then 'DdlRemisionNotaCredito.DataSource = ObjCompras.DtResultados DTRemisionesNotaDeCredito = ObjCompras.DtResultados - GVRemisionesNotaDeCredito.DataSource = DTRemisionesNotaDeCredito - GVRemisionesNotaDeCredito.Visible = True + GvRNC.DataSource = DTRemisionesNotaDeCredito + GvRNC.Visible = True End If ObjCompras.Dispose() - - - GVRemisionesNotaDeCredito.DataBind() + GvRNC.DataBind() 'DdlRemisionNotaCredito.DataBind() 'DdlRemisionNotaCredito.Items.Insert(0, New ListItem("-", "-1"))