This commit is contained in:
2020-10-12 19:32:10 -07:00
4 changed files with 831 additions and 1460 deletions

View File

@@ -1521,7 +1521,7 @@
<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"
DataKeyNames="CantidadF,FolioREQ,CveProveedorSucursal,PS,CantidadPendienteVincular,IEPSPS,IVA,RetIVA,RetISR,Descuento,IVAPorcentaje,RetIVAPorcentaje,RetISRPorcentaje,IEPSPSPorcentaje,IEPSPSIVAPorcentaje,Cantidad,CveProveedorOC">
DataKeyNames="CantidadF,FolioREQ,CveProveedorSucursal,CveTipoPS,PS,CantidadPendienteVincular,IEPSPS,IVA,RetIVA,RetISR,Descuento,IVAPorcentaje,RetIVAPorcentaje,RetISRPorcentaje,IEPSPSPorcentaje,IEPSPSIVAPorcentaje,Cantidad,CveProveedorOC,Importe">
<Columns>
<asp:TemplateField HeaderText="Folio" ItemStyle-Width="10%" Visible="false">
@@ -1762,7 +1762,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">
<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,SATClaveProductoServicio,PU,Total,Descuento">
<Columns>
<asp:BoundField HeaderText="#" DataField="Consec" ItemStyle-Width="20px" />
<asp:BoundField HeaderText="Cantidad" DataField="Cantidad" DataFormatString="{0:#,##0.00####}" ItemStyle-Width="40px" />

View File

@@ -15489,6 +15489,12 @@ Partial Class Compras_Compras
'If DdlOCVinculaInv.SelectedValue.ToEntero = 237 And Not CveFlete > 0 Then Alert("Necesita vincular un flete si selecciona Factura de Flete", TipoMensaje.MsgAdvertencia) : Exit Sub
'If DdlOCVinculaInv.SelectedValue.ToEntero = 240 And Not CveImportacion > 0 Then Alert("Necesita vincular una Importación si selecciona Factura de Importación", TipoMensaje.MsgAdvertencia) : Exit Sub
If UsuarioActual.CveEmpresa = 119 And DdlTipoComprobante.SelectedValue = "Fac" Then
If Not VerificarProductosCompraConOC() Then
Exit Sub
End If
End If
Dim SubTotalGV = 0.0D
Dim Amortizacion As Decimal = TmpDT.SUMD("Total")
If ListaDocumentos IsNot Nothing AndAlso ListaDocumentos.Count > 0 AndAlso ArrAnticipos IsNot Nothing AndAlso ArrAnticipos.Count > 0 Then
@@ -20300,10 +20306,71 @@ Partial Class Compras_Compras
' Return False
'End If
' Return True
'Return True
'End Function
Private Function VerificarProductosCompraConOC() As Boolean
Dim ProductosNoValidados As New StringBuilder()
Dim DtCompras As New DataTable()
DtCompras.Columns.Add("Cantidad", GetType(String))
DtCompras.Columns.Add("UM", GetType(String))
DtCompras.Columns.Add("PS", GetType(String))
DtCompras.Columns.Add("SATClaveProductoServicio", GetType(String))
DtCompras.Columns.Add("PU", GetType(String))
DtCompras.Columns.Add("Total", GetType(String))
For Each GvOC2Row As GridViewRow In GvOC2.Rows
Dim Cantidad As String = GvOC2Row.DataKey("Cantidad")
Dim UM As String = GvOC2Row.DataKey("UM")
Dim PS As String = GvOC2Row.DataKey("PS")
Dim SATClaveProductoServicio As String = GvOC2Row.DataKey("SATClaveProductoServicio")
Dim PU As String = (GvOC2Row.DataKey("Total").ToEntero / GvOC2Row.DataKey("Cantidad").ToEntero).ToString
Dim Total As String = GvOC2Row.DataKey("Total")
DtCompras.Rows.Add(Cantidad, UM, PS, SATClaveProductoServicio, PU, Total)
Next
For Each GvOCRow As GridViewRow In GvOC1.Rows
Dim TipoPS As String = GvOCRow.DataKey("CveTipoPS")
If TipoPS = "2" Then
Dim ProductoAisloadoString As String = GvOCRow.DataKey("PS").Split("-"c)(1).Trim()
Dim PSOC As String = ProductoAisloadoString
Dim CantidadOC As String = GvOCRow.DataKey("CantidadF")
Dim PrecioUnitarioOC As String = GvOCRow.DataKey("Importe")
Dim Filtro As String = String.Format("Cantidad = {0} AND PS = '{1}' AND PU = {2}", CantidadOC, PSOC, PrecioUnitarioOC)
Dim RenglonCompras As DataRow = DtCompras.FiltroPrimero(Filtro)
If RenglonCompras Is Nothing Then
Dim FiltroCantidad As String = String.Format("Cantidad = {0} AND PS = '{1}'", CantidadOC, PSOC)
Dim RenglonFiltroCantidad As DataRow = DtCompras.FiltroPrimero(FiltroCantidad)
If RenglonFiltroCantidad Is Nothing Then
ProductosNoValidados.AppendFormat("La Cantidad del producto '{0}' no coincide<br/>", PSOC)
End If
Dim FiltroPU As String = String.Format("PS = '{0}' AND PU = {1}", PSOC, PrecioUnitarioOC)
Dim RenglonFiltroPU As DataRow = DtCompras.FiltroPrimero(FiltroPU)
If RenglonFiltroPU Is Nothing Then
ProductosNoValidados.AppendFormat("El Precio Unitario del producto '{0}' no coincide<br/>", PSOC)
End If
ProductosNoValidados.Append("<br/>")
End If
End If
Next
If ProductosNoValidados.ToString().Length() > 0 Then
Dim AlertProductosNoValidados As String = String.Format("Los siguientes productos no se encuentran en la factura: <br/><br/>{0}", ProductosNoValidados.ToString)
Alert(AlertProductosNoValidados, TipoMensaje.MsgAdvertencia)
Return False
End If
Return True
End Function
End Class
Public Class MMensajeDevolucion

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff