-- mejoras para E189. en manejo de cantidades mayores a los generados en la OC
This commit is contained in:
@@ -1734,7 +1734,7 @@
|
||||
<asp:HiddenField ID="HdnAlertaPUCero" Value="-1" runat="server" ClientIDMode="Static" />
|
||||
|
||||
<asp:GridView runat="server" ID="GvOC1" AutoGenerateColumns="false"
|
||||
GridLines="None" UseAccessibleHeader="true" EmptyDataText="No se encontraron registros." CssClass="table table-striped table-hover Widthall Sortable" RowStyle-HorizontalAlign="Center"
|
||||
GridLines="None" UseAccessibleHeader="true" EmptyDataText="No se encontraron registros." CssClass="table table-striped table-hover Widthall Sortable"
|
||||
DataKeyNames="CantidadF,FolioREQ,CveProveedorSucursal,CveTipoPS,PS,CantidadPendienteVincular,IEPSPS,IVA,RetIVA,RetISR,Descuento,IVAPorcentaje,RetIVAPorcentaje,RetISRPorcentaje,IEPSPSPorcentaje,IEPSPSIVAPorcentaje,Cantidad,CveProveedorOC,Importe,CveSATPS,NumeroParte,CvePS">
|
||||
|
||||
<Columns>
|
||||
@@ -1974,7 +1974,7 @@
|
||||
<asp:UpdatePanel runat="server" ID="UpGvOC2" UpdateMode="Conditional">
|
||||
<ContentTemplate>
|
||||
<div id="DivDatosCompra" style="height: 250px; overflow-y: auto;">
|
||||
<asp:GridView AutoGenerateColumns="false" runat="server" ID="GvOC2" GridLines="None" EmptyDataText="No se encontraron registros." CssClass="table table-striped table-hover gridconheader Widthall" RowStyle-HorizontalAlign="Center" DataKeyNames="Cantidad,UM,PS,CvePS,CodigoPS,SATClaveProductoServicio,PU,Total,Descuento">
|
||||
<asp:GridView AutoGenerateColumns="false" runat="server" ID="GvOC2" GridLines="None" EmptyDataText="No se encontraron registros." CssClass="table table-striped table-hover gridconheader Widthall" DataKeyNames="Cantidad,UM,PS,CvePS,CodigoPS,SATClaveProductoServicio,PU,Total,Descuento">
|
||||
<Columns>
|
||||
<asp:BoundField HeaderText="#" DataField="Consec" ItemStyle-Width="20px" ItemStyle-Font-Size="6pt" />
|
||||
<asp:BoundField HeaderText="Cantidad" DataField="Cantidad" DataFormatString="{0:#,##0.######}" ItemStyle-Width="50px" FooterStyle-HorizontalAlign="Right" />
|
||||
|
||||
@@ -710,7 +710,6 @@ Partial Class Compras_Compras
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
Private Property TipoCambioOriginal As Decimal
|
||||
Get
|
||||
Return ViewState("TipoCambioOriginal").ToString.ToDecimal
|
||||
@@ -2884,7 +2883,6 @@ Partial Class Compras_Compras
|
||||
HfTotalCompra.Value = TxtTotal.Text
|
||||
|
||||
TipoCambio = dr("TipoCambio").ToString.ToDecimal
|
||||
|
||||
TipoCambioOriginal = dr("TipoCambioOriginal").ToString.ToDecimal
|
||||
If TipoCambio > 1 Then LblTC.Text = String.Format("TC: {0}", TipoCambio.ToString("N4"))
|
||||
If TipoCambio <> TipoCambioOriginal Then LblTCO.Text = String.Format("<br/>TC Original: {0}", TipoCambioOriginal.ToString("N4"))
|
||||
@@ -7860,12 +7858,18 @@ Partial Class Compras_Compras
|
||||
End If
|
||||
End If
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(574) = "1" AndAlso (ImporteRNC > 0 OrElse ImporteRNCProntoPago > 0) Then
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(574) = "1" AndAlso (ImporteRNC > 0 Or ImporteRNCProntoPago > 0) Then
|
||||
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, TxtTC.Text.ToDecimal,
|
||||
If ImporteRNC > 0 AndAlso 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}", ImporteRNC, DdlMoneda.SelectedValue.ToEntero, TxtTC.Text.ToDecimal,
|
||||
TxtSerie.Text, TxtFolio.Text) Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
If ImporteRNCProntoPago > 0 AndAlso 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}", ImporteRNCProntoPago, DdlMoneda.SelectedValue.ToEntero, TxtTC.Text.ToDecimal,
|
||||
TxtSerie.Text, TxtFolio.Text, PrefijoSerie:="PP") Then
|
||||
TieneError = True
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
If Not TieneError Then
|
||||
@@ -10246,6 +10250,7 @@ Partial Class Compras_Compras
|
||||
_Moneda = ValorXML(nodo, "Moneda")
|
||||
_TipoComprobante = ValorXML(nodo, "tipoDeComprobante")
|
||||
TipoCambio = ValorXML(nodo, "TipoCambio", "1").ToDecimal
|
||||
TipoCambioOriginal = TipoCambio
|
||||
|
||||
If Version = "3.3" Or Version = "4.0" Then
|
||||
Dim drm As DataRow = GlobalDTVtaMetodoPago.FiltroPrimero(String.Format("ClaveMetodoPagoSAT = '{0}'", ValorXML(nodo, "MetodoPago")))
|
||||
@@ -15329,9 +15334,8 @@ Partial Class Compras_Compras
|
||||
e.Row.FCTextBox("TxtCantidad").Attributes.Add("onkeyup", $"LimitaCantidadOC({e.Row.DBCampo("CantidadPendienteVincular")}, this);{JSCambiaScript}")
|
||||
|
||||
If UsuarioActual.Empresa.Funcionalidad(382) = "1" AndAlso PermisoVinculacionImporteDiferente Then ' código temporal, excluir que valide cantidad GDIAZ
|
||||
e.Row.FCTextBox("TxtCantidad").Attributes.Remove("onkeyup")
|
||||
e.Row.FCTextBox("TxtCantidad").Attributes.Add("onkeyup", $"{JSCambiaScript}") 'se quita el llamado a candado de la cantidad
|
||||
End If
|
||||
|
||||
e.Row.FCTextBox("TxtPU").Attributes.Add("onkeyup", JSCambiaScript)
|
||||
|
||||
e.Row.FCTextBox("TxtCantidad").Attributes.Add("onblur", $"ValidaImporteCero('{e.Row.DBCampo("PS").Replace("'", "")}',{e.Row.FCTextBox("TxtCantidad").ClientID}, {e.Row.FCTextBox("TxtPU").ClientID});")
|
||||
@@ -15686,7 +15690,7 @@ Partial Class Compras_Compras
|
||||
dr = DTOCGV.Rows(gvr.RowIndex)
|
||||
|
||||
Dim Cantidad As Decimal = gvr.FCTextBox("TxtCantidad").Text.ToDecimal 'dr("Cantidad").ToString.ToDouble
|
||||
Dim CantidadF As Decimal = gvr.DataKey("CantidadF").ToString.ToDecimal 'dr("Cantidad").ToString.ToDouble
|
||||
Dim CantidadF As Decimal = gvr.FCTextBox("TxtCantidad").Text.ToDecimal ' gvr.DataKey("CantidadF").ToString.ToDecimal 'dr("Cantidad").ToString.ToDouble
|
||||
Dim CveUM As Integer = dr("CveUM").ToString.ToEntero
|
||||
Dim UM As String = dr("UM").ToString
|
||||
Dim CveClasificacion As Integer = dr("CveClasificacion").ToString.ToEntero
|
||||
@@ -19191,7 +19195,7 @@ Partial Class Compras_Compras
|
||||
Protected Sub BtnDevolucion_Click(sender As Object, e As EventArgs)
|
||||
Dim ObjCompras As New ClsCompras
|
||||
Dim TieneError As Boolean = False
|
||||
Dim ImporteCompra As Decimal = 0
|
||||
Dim ImporteDevCompra As Decimal = 0
|
||||
Dim tCveSubProyeto As Integer = TmpDT.FiltroPrimeroValor("CveSubProyecto", " CveSubProyecto > 0").ToEntero
|
||||
Dim ModalidadDevolucion As Integer = 1 ' 1 - devolución para que alamcen la confirme, 2 - devolución en automático generando RNC
|
||||
|
||||
@@ -19207,7 +19211,7 @@ Partial Class Compras_Compras
|
||||
Dim PU As Decimal = gvr.DataKey("PU").ToDecimal
|
||||
If gvr.FCTextBox("TxtCant").Text.ToDecimal > 0 Then
|
||||
ObjCompras.UpdateEstatusAlmacenDetalle(gvr.DataKey("CveCompraDetalle").ToEntero, 0, UsuarioActual.CveUsuario, CantidadDevolucion:=gvr.FCTextBox("TxtCant").Text.ToDecimal)
|
||||
ImporteCompra = ImporteCompra + ((PU * Cantidad))
|
||||
ImporteDevCompra = ImporteDevCompra + ((PU * Cantidad))
|
||||
Else
|
||||
ObjCompras.UpdateEstatusAlmacenDetalle(gvr.DataKey("CveCompraDetalle").ToEntero, 1, UsuarioActual.CveUsuario, CantidadDevolucion:=0)
|
||||
End If
|
||||
@@ -19226,17 +19230,15 @@ Partial Class Compras_Compras
|
||||
Dim Cantidad As Decimal = gvr.FCTextBox("TxtCant").Text.ToDecimal
|
||||
Dim PU As Decimal = gvr.DataKey("PU").ToDecimal
|
||||
If gvr.FCTextBox("TxtCant").Text.ToDecimal > 0 Then
|
||||
ImporteCompra = ImporteCompra + ((PU * Cantidad))
|
||||
ImporteDevCompra = ImporteDevCompra + ((PU * Cantidad))
|
||||
End If
|
||||
Next
|
||||
|
||||
ImporteRNC = ImporteCompra.RoundSQL
|
||||
|
||||
If ChkEsDevolucionDevInv.Checked Then
|
||||
|
||||
Dim objConta As New ClsContabilidad(ObjCompras.IniciaTransacSQL)
|
||||
|
||||
CvePrePoliza = objConta.AddPrePolizas("Compras/RncDevInv", 53, ImporteCompra, TxtTotal.Text.ToDouble, DdlMoneda.SelectedValue.ToEntero, TxtFecha.Text.ToDate, $"RNC Devolucion Inv {TxtSerie.Text}-{TxtFolio.Text}",
|
||||
CvePrePoliza = objConta.AddPrePolizas("Compras/RncDevInv", 53, ImporteDevCompra, TxtTotal.Text.ToDouble, DdlMoneda.SelectedValue.ToEntero, TxtFecha.Text.ToDate, $"RNC Devolucion Inv {TxtSerie.Text}-{TxtFolio.Text}",
|
||||
UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, FolioFijo:=0, ReglaFolioPoliza:=ObjCompras.ObtenerReglaFolio(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue,
|
||||
UsuarioActual.CveEmpresa), CveTipoPoliza:=objConta.ObtenerTipoPoliza(DdlTipoTransaccion.SelectedValue, DdlTipoTransaccionCaja.SelectedValue, UsuarioActual.CveEmpresa))
|
||||
If CvePrePoliza > 0 Then
|
||||
@@ -19266,7 +19268,7 @@ Partial Class Compras_Compras
|
||||
CompraActual.EsImportacion = chkImportacion.Checked
|
||||
|
||||
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,
|
||||
$"Remisión Nota de Crédito {TxtDescripcion.Text}", ImporteDevCompra, DdlMoneda.SelectedValue.ToEntero, TipoCambioOriginal,
|
||||
TxtSerie.Text, TxtFolio.Text, PrefijoSerie:="Dev", EsDRMN:=True) Then
|
||||
TieneError = True
|
||||
End If
|
||||
@@ -22029,7 +22031,7 @@ Partial Class Compras_Compras
|
||||
#Region "PRONTO PAGO"
|
||||
|
||||
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,
|
||||
CveProveedor As Integer, NombreProveedor As String, Fecha As Date, Descripcion As String, Importe As Decimal, CveMoneda As Integer, TipoCambio As Decimal, Serie As String, Folio As String,
|
||||
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
|
||||
@@ -22084,8 +22086,8 @@ Partial Class Compras_Compras
|
||||
Dim CveUM As Integer = PSRow("CveUnidadMedida").ToString.ToEntero
|
||||
Dim UM As String = PSRow("UnidadMedida").ToString
|
||||
|
||||
Dim IVARNC As Decimal = (ImporteRNC * PorcentajeIVA).RoundSQL(2)
|
||||
Dim TotalRNC As Decimal = If(RedondearSaldado, (ImporteRNC + IVARNC).RoundSQL(2), (ImporteRNC + IVARNC))
|
||||
Dim IVARNC As Decimal = (Importe * PorcentajeIVA).RoundSQL(2)
|
||||
Dim TotalRNC As Decimal = If(RedondearSaldado, (Importe + IVARNC).RoundSQL(2), (Importe + IVARNC))
|
||||
|
||||
CompraRNC.ConfiguraRegistroRapido(CvePS_RNC, CveUM, UM, CveClasificacion, Clasificacion, PS, CveSubProyectoPrincipal, SubProyecto, ImporteRNC, IVARNC, TotalRNC, PorcentajeIVA, TipoCambio:=TipoCambioOriginal)
|
||||
If CompraRNC.AddCompra(sqltransaccion) Then
|
||||
@@ -22104,50 +22106,12 @@ Partial Class Compras_Compras
|
||||
Else
|
||||
respuesta = False
|
||||
End If
|
||||
|
||||
If respuesta AndAlso ImporteRNCProntoPago > 0 Then
|
||||
|
||||
Dim CompraRNCProntoPago As New ClsCompraManagerCompras(UsuarioActual) With {
|
||||
.TipoDocto = "RNC",
|
||||
.CveProveedor = CveProveedor,
|
||||
.CveTipoProveedor = CveTipoProveedor,
|
||||
.CveTipoConceptoProveedor = CveTipoConcepto,
|
||||
.Descripcion = Descripcion,
|
||||
.NombreProveedor = NombreProveedor,
|
||||
.Fecha = Fecha,
|
||||
.CveMoneda = CveMoneda,
|
||||
.TipoCambio = If(CveMoneda = 1, 1, TipoCambio),
|
||||
.Serie = $"PP-{Serie}",
|
||||
.Folio = $"{Folio}",
|
||||
.CveCompraAmortizacion = CveCompraRegistrada,
|
||||
.CveCompraRelacionada = CveCompraRegistrada
|
||||
}
|
||||
Dim IVARNCProntoPago As Decimal = (ImporteRNCProntoPago * PorcentajeIVA).RoundSQL(2)
|
||||
|
||||
CompraRNCProntoPago.ConfiguraRegistroRapido(CvePS_RNC, CveUM, UM, CveClasificacion, Clasificacion, PS, CveSubProyectoPrincipal, SubProyecto, ImporteRNCProntoPago, (ImporteRNCProntoPago + IVARNCProntoPago), IVARNCProntoPago, PorcentajeIVA)
|
||||
If CompraRNCProntoPago.AddCompra(sqltransaccion) Then
|
||||
Dim tImporteRNCProntoPago = ImporteRNCProntoPago + IVARNCProntoPago ' le agrego el importe del iva
|
||||
Dim Pago As New CompraPago
|
||||
Pago.ImportePago = tImporteRNCProntoPago
|
||||
Pago.CveMonedaPago = CompraActual.CveMoneda
|
||||
Pago.CveCompraAmortizacion = CompraRNCProntoPago.CveCompra
|
||||
Pago.Referencia = CompraRNCProntoPago.SerieFolio
|
||||
Pago.TCPago = CompraActual.TC
|
||||
Pago.AplicaAcreditable = False
|
||||
Pago.TipoPago = "RNC"
|
||||
Pago.Fecha = CompraActual.Fecha 'toma la misma fecha de la provisión en el pago de NC
|
||||
respuesta = Not AplicaPrePolizaPagoCompra(CompraActual, Pago, CvePrePoliza, ObjConta)
|
||||
Else
|
||||
respuesta = False
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
|
||||
If RedondearSaldado And respuesta Then
|
||||
Alert("Saldado correctamente")
|
||||
End If
|
||||
|
||||
|
||||
Return respuesta
|
||||
End Function
|
||||
|
||||
|
||||
Reference in New Issue
Block a user