-- vinculación oc

This commit is contained in:
2023-10-30 18:20:04 -07:00
parent f08c296261
commit 02baaa3dd9
2 changed files with 36 additions and 35 deletions

View File

@@ -1518,10 +1518,8 @@
<div class="col-md-6">
<asp:DropDownList ID="DdlOCVinculaInv" OnSelectedIndexChanged="DdlOCVinculaInv_SelectedIndexChanged" AutoPostBack="true" Width="300px" runat="server">
<asp:ListItem Text="Seleccione" Value="-1" Selected="True" />
<asp:ListItem Text="Mercancía recibida por adelantado" Value="176" />
<asp:ListItem Text="Mercancía recibida por adelantado | Sin restricción" Value="0176" />
<asp:ListItem Text="Mercancía pendiente por recibir" Value="205" />
<asp:ListItem Text="Mercancía pendiente por recibir | Sin restricción" Value="0205" />
<asp:ListItem Text="Mercancía recibida por adelantado" Value="176" />
<asp:ListItem Text="Mercancía pendiente por recibir" Value="205" />
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RFVOCVinculaInv" runat="server" ControlToValidate="DdlOCVinculaInv" Display="None" ErrorMessage="<b><span style='text-decoration: underline'>ERROR:</span></b><br />El campo <b>''Tipo de recepción almacén''</b> es necesario, por favor seleccione uno." InitialValue="-1" ValidationGroup="GrpVincularOC"></asp:RequiredFieldValidator>
<ajax:ValidatorCalloutExtender ID="VCEOCVinculaInv" runat="server" HighlightCssClass="vco" TargetControlID="RFVOCVinculaInv" Width="350px"></ajax:ValidatorCalloutExtender>

View File

@@ -1725,7 +1725,7 @@ Partial Class Compras_Compras
If ProductosCodigoSATNoPermitidos.ToString.Length > 0 Then
Dim mensajeAdvertencia As String = String.Format("El comprobante contiene productos con código SAT '01010101', revise los productos:</br></br>{0}", ProductosCodigoSATNoPermitidos.ToString)
Alert(mensajeAdvertencia, TipoMensaje.MsgAdvertencia)
If UsuarioActual.CveEmpresa.Contiene(119, 158) AndAlso UsuarioActual.CveUsuario <> 1721 Then BtnGuardar.Enabled = False '' solo se activa para el usuario Sara.JAM
If UsuarioActual.CveEmpresa.Contiene(119, 158) AndAlso Not UsuarioActual.CveUsuario.Contiene(1719, 1721) Then BtnGuardar.Enabled = False '' solo se activa para el usuario Sara.JAM
BtnGuardar.ToolTip = "No se permite registrar facturas con conceptos con código '01010101'. Solicite al proveedor un nuevo comprobante."
End If
@@ -13544,10 +13544,6 @@ Partial Class Compras_Compras
'TabOC.Visible = True
'End If
If Not UsuarioActual.TienePermisoProceso(242) Then
DdlOCVinculaInv.Items.RemoveAt(2)
DdlOCVinculaInv.Items.RemoveAt(3)
End If
End Sub
Protected Sub BtnBuscarOC_Click(sender As Object, e As EventArgs) Handles BtnBuscarOC.Click
@@ -13722,7 +13718,7 @@ Partial Class Compras_Compras
End If
Next
ObjOC.Dispose()
Dim CveConceptoAlmacenSugerido As String = "205"
'MOVIMIENTOS DE ALMACÉN
Dim ObjInventarios As New ClsInventarios
Dim FoliosOCAlmacen As String = ""
@@ -13730,6 +13726,7 @@ Partial Class Compras_Compras
If ObjInventarios.GetMovimientosOC(CveOCItem.ToEntero, UsuarioActual.CveEmpresa) Then
If ObjInventarios.DtResultados.Rows.Count > 0 Then
FoliosOCAlmacen = $"{ObjInventarios.DtResultados.FiltroPrimeroValor("FolioOC")},"
CveConceptoAlmacenSugerido = "176"
End If
Else
Alert("Ocurrió un error al cargar los movimientos de almacén de la orden de compra", TipoMensaje.MsgError)
@@ -13747,6 +13744,7 @@ Partial Class Compras_Compras
' si usa almacen, si tiene activado que reciba por OC, y que si la compra tipo Proveedor. que lo muestre
If UsuarioActual.Empresa.UsaInventarios And UsuarioActual.Empresa.Funcionalidad(131).ToEntero > 0 AndAlso CveTipoConcepto = 1 Then
DivOCVinculaInv.Visible = True
DdlOCVinculaInv.SelectedValueExist(CveConceptoAlmacenSugerido)
End If
'TIPO CAMBIO
@@ -18731,7 +18729,8 @@ Partial Class Compras_Compras
Dim PUCompra As Decimal = 0.0D
Dim CveMoneda As Integer = 1
Dim PS As String = ""
Dim TipoMovtoCosto As Boolean = True
Dim TipoMovtoCosto As Boolean = False
If UsuarioActual.CveEmpresa = 119 Then TipoMovtoCosto = True
tCveProveedor = DtInvOCDiferencias.MAX("CveProveedor").ToEntero
ProveedorNombre = GlobalDTCompProveedores(UsuarioActual.CveEmpresa).FiltroPrimeroValor("RazonSocial", $"CveProveedor = {tCveProveedor}").ToString
@@ -18770,22 +18769,29 @@ Partial Class Compras_Compras
Retorno = False
End If
Dim DiferenciaInvOCCosto As Decimal = DiferenciaInvOC
If TipoMovtoCosto Then DiferenciaInvOCCosto = -DiferenciaInvOC ' cuando es abonado es negativo el valor
If CvePrePoliza > 0 Then
If CveMoneda = 2 Then
ImporteME = (DiferenciaInvOC / TCInvOC).RoundAD()
ImporteMEComp = ((ImporteME * TCInvOC) - ImporteME).RoundAD()
If CveMoneda = 2 Then
ImporteME = (DiferenciaInvOC / TCInvOC).RoundAD()
ImporteMEComp = ((ImporteME * TCInvOC) - ImporteME).RoundAD()
Dim DifImporte As Decimal = DiferenciaInvOC - (ImporteME + ImporteMEComp)
Dim DifImporte As Decimal = DiferenciaInvOC - (ImporteME + ImporteMEComp)
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoCosto, -DiferenciaInvOC, -DiferenciaInvOC, 177, SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, CveOCDetalle:=CveOCDetalle, CveSubProyecto:=CveSubProyecto) Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoCosto, DiferenciaInvOCCosto, DiferenciaInvOCCosto, 177, SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, CveOCDetalle:=CveOCDetalle, CveSubProyecto:=CveSubProyecto) Then
Retorno = False
Exit For
End If
If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteME, ImporteME, 228, SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, ImporteME:=ImporteME, TipoCambio:=TCInvOC, CveOCDetalle:=CveOCDetalle) Then
If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMEComp, ImporteMEComp, 229, SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, ImporteME:=ImporteME, TipoCambio:=TCInvOC, CveOCDetalle:=CveOCDetalle) Then
If DifImporte <> 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoCosto, DifImporte, DifImporte, 69, SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, ImporteME:=DifImporte, TipoCambio:=TCInvOC, CveOCDetalle:=CveOCDetalle, CveClasificacion:=CveClasificacionCostoOC, CveSubProyecto:=CveSubProyecto) Then
If ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, ImporteMEComp, ImporteMEComp, 229, SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, ImporteME:=ImporteME, TipoCambio:=TCInvOC, CveOCDetalle:=CveOCDetalle) Then
If DifImporte <> 0 AndAlso Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoCosto, DifImporte, DifImporte, 69, SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, ImporteME:=DifImporte, TipoCambio:=TCInvOC, CveOCDetalle:=CveOCDetalle, CveClasificacion:=CveClasificacionCostoOC, CveSubProyecto:=CveSubProyecto) Then
Retorno = False
Exit For
End If
Else
Retorno = False
Exit For
End If
@@ -18794,34 +18800,34 @@ Partial Class Compras_Compras
Exit For
End If
Else
Retorno = False
Exit For
End If
Else
'2018.11.24 se cambia concepto 177, de cargo a abono negativo., petición MALL
If ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoCosto, -DiferenciaInvOC, -DiferenciaInvOC, If(ConceptoSalida = 0, 177, 177), SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, CveOCDetalle:=CveOCDetalle, CveSubProyecto:=CveSubProyecto, CveClasificacion:=CveClasificacionCostoOC) Then
If ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovtoCosto, DiferenciaInvOCCosto, DiferenciaInvOCCosto, 177, SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, CveOCDetalle:=CveOCDetalle, CveSubProyecto:=CveSubProyecto, CveClasificacion:=CveClasificacionCostoOC) Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, True, DiferenciaInvOC, DiferenciaInvOC, 176, SerieFolio, ConceptoPartida, CveProveedor:=CveProveedor, CveMovimientoAlmacen:=CveMovimientoAlmacen, CveOC:=CveOrdenCompra, CveOCDetalle:=CveOCDetalle, CveColectiva:=CveColectiva) Then
Retorno = False
Exit For
End If
Else
Retorno = False
Exit For
End If
End If
If Not OC.UpdateOrdenCompraDetalleAjuste(CveOrdenCompra, CveOCDetalle, PUCompra, UsuarioActual.CveUsuario) Then
Retorno = False
Exit For
End If
End If
If Not OC.UpdateOrdenCompraDetalleAjuste(CveOrdenCompra, CveOCDetalle, PUCompra, UsuarioActual.CveUsuario) Then
Retorno = False
Exit For
End If
If Retorno Then
If Not OCBitacora.AddEventoBitacora(String.Format("Se registró una póliza de ajuste por cambio de precio en producto: {0}", PS), "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveOC:=CveOrdenCompra) Then
Retorno = False
If Retorno Then
If Not OCBitacora.AddEventoBitacora(String.Format("Se registró una póliza de ajuste por cambio de precio en producto: {0}", PS), "-1", UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveOC:=CveOrdenCompra) Then
Retorno = False
End If
End If
End If
End If
End If
Next
If Retorno AndAlso Not ObjConta.ValidacionesPrePoliza(CvePrePoliza, UsuarioActual) Then
Alert("No se procesaron las diferencias en precio.", TipoMensaje.MsgAdvertencia)
Retorno = False
End If
Else
Alert("prepóliza de ajuste no registrada.", TipoMensaje.MsgAdvertencia)
Retorno = False
@@ -19135,11 +19141,8 @@ Partial Class Compras_Compras
TrRetIVA.Visible = True
TdRetIVAConcepto.Visible = True
TotalOriginal = TxtTotal.Text.ToDecimal
For Each dRow As DataRow In TmpDT.Rows
If dRow("CvePS").ToString.ToEntero <= 0 Then
Alert("Debe de asignar producto a todas las partidas", TipoMensaje.MsgAdvertencia)