diff --git a/App_Code/ClsCompras.vb b/App_Code/ClsCompras.vb
index d2fef34d1..bf0da4b34 100644
--- a/App_Code/ClsCompras.vb
+++ b/App_Code/ClsCompras.vb
@@ -2447,6 +2447,30 @@ Public Class ClsCompras
Return Retorno
End Function
+ Public Function GetComprasPagosConciliados(CveCompra As Integer, CveEmpresa As Integer) As Boolean
+
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_Comp_ComprasPagosConciliadosGet")
+ With SqlAdapter.SelectCommand.Parameters
+
+ .Add("@CveCompra", SqlDbType.Int).Value = CveCompra
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+
+ End With
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al obtener los de pagos de compra", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
+ End Try
+
+ Return Retorno
+
+ End Function
+
+
+
+
Public Function RemoveComplementoPagoDesVincular(CveFactura As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Comp_CompraComplementoDesVincular")
diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb
index 8cef487fc..a3d763c62 100644
--- a/App_Code/ClsPaginas.vb
+++ b/App_Code/ClsPaginas.vb
@@ -4386,6 +4386,9 @@ Public Class ClsPaginas
PaginaDict.Add("/Finanzas/RazonesFinancierasCuentas.aspx".ToUpper(), -1)
PaginaDict.Add("/Finanzas/RepRotacionCartera.aspx".ToUpper(), 649)
PaginaDict.Add("/Finanzas/RepRotacionCarteraDetalle.aspx".ToUpper(), 649)
+
+
+ PaginaDict.Add("/Finanzas/RepBalanceGeneralHorizontal2.aspx".ToUpper(), -1)
#End Region
#Region "Flotillas"
diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx
index 8c1422c57..5f3084c38 100644
--- a/Compras/Compras.aspx
+++ b/Compras/Compras.aspx
@@ -3732,11 +3732,18 @@
+
+
+
@@ -4142,7 +4149,7 @@
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb
index 762ed68de..a81131917 100644
--- a/Compras/Compras.aspx.vb
+++ b/Compras/Compras.aspx.vb
@@ -1266,10 +1266,6 @@ Partial Class Compras_Compras
TieneOC = False
CveMoneda = -1
- '[IPP] Eliminar 22Junio2018
- 'If UsuarioActual.Empresa.UsaInventarios Then
- ' TabAlmacen.Enabled = Not UsuarioActual.Empresa.Funcionalidad(153).ToEntero > 0
- 'End If
ImgAnticiposPendientes.Attributes.Add("OnClick", "MuestraAnticipos();")
'ImgCerrar.Attributes.Add("OnClick", "$('#DivAnticipos').hide(200);")
@@ -3955,6 +3951,15 @@ Partial Class Compras_Compras
Dim EstatusCredito As Integer = 0
Dim CveSubProyecto As Integer = 0
'Credito Multiple
+ If RBLPago.SelectedValue.ToEntero = 2 Then
+ If RBLContado.SelectedValue.ToEntero = 6 Or RBLContado.SelectedValue.ToEntero = 2 Then
+ If Not TxtRembolsoNumero.Text.Length > 0 Then
+ Alert("Falta especificar un número de reembolso", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+ End If
+ End If
+
If RBLPago.SelectedValue.ToEntero = 4 Then
Dim DifCreCompra As Decimal = 0
@@ -12836,7 +12841,6 @@ Partial Class Compras_Compras
Select Case RBLPago.SelectedValue
Case "1" 'Credito
PnlContado.Visible = False
-
If Not UsuarioActual.Empresa.UsaAC Then
TxtNumeroReembolso.Text = ""
tdNumeroReembolso.Visible = False
@@ -12845,7 +12849,6 @@ Partial Class Compras_Compras
romCreditosTabla.Visible = False
Case "2" 'Contado
PnlContado.Visible = True
-
TxtNumeroReembolso.Text = ""
tdNumeroReembolso.Visible = False
@@ -12879,7 +12882,6 @@ Partial Class Compras_Compras
Case "3" 'Reembolso/Comprobacion
PnlContado.Visible = True
-
''AGARRA VALORES DE SESSION PARA REEMBOLSO -- SI YA ESTA REGISTRADA LA COMPRA IGNORA DATOS DE REEMBOLSO
If Not CveCompra > 0 Then
If UsuarioActual.Sesion("Comp-NumeroReembolso") <> Nothing AndAlso UsuarioActual.Sesion("Comp-NumeroReembolso").ToString <> "" Then
@@ -13007,26 +13009,61 @@ Partial Class Compras_Compras
Case "1" ' Bancos
PnlContadoBancos.Visible = True
TxtDocumentoImporte.Text = (TxtTotal.Text.ToDecimal - LblAmortizacion.Text.ToDecimal).FormatoNumero
+ ChkCreditoMultiple.Visible = False
+ DivReembolsoModal.Visible = False
+ RfvTxtRembolsoModal.Enabled = False
+ TxtRembolsoModal.Text = ""
+ TxtRembolsoNumero.Text = ""
Case "2" ' F y E
PnlContadoFyE.Visible = True
CargaFuncionariosEmpleados()
+ ChkCreditoMultiple.Visible = False
+ DivReembolsoModal.Visible = True
+ RfvTxtRembolsoModal.Enabled = True
+ TxtRembolsoNumero.Text = ""
+ TxtRembolsoModal.Text = ""
Case "3" ' Creditos
PnlContadoCreditos.Visible = True
+ ChkCreditoMultiple.Visible = True
CargaCreditos()
+ DivReembolsoModal.Visible = False
+ RfvTxtRembolsoModal.Enabled = False
+ TxtRembolsoModal.Text = ""
+ TxtRembolsoNumero.Text = ""
Case "4" ' Deudores
PnlContadoDeudores.Visible = True
CargaDeudores()
+ ChkCreditoMultiple.Visible = False
+ DivReembolsoModal.Visible = False
+ RfvTxtRembolsoModal.Enabled = False
+ TxtRembolsoModal.Text = ""
+ TxtRembolsoNumero.Text = ""
Case "5" ' ACREEDORES
PnlContadoAcreedores.Visible = True
+ ChkCreditoMultiple.Visible = True
CargaAcreedores()
+ DivReembolsoModal.Visible = False
+ RfvTxtRembolsoModal.Enabled = False
+ TxtRembolsoModal.Text = ""
+ TxtRembolsoNumero.Text = ""
Case "6" ' Caja Chica
PnlContadoCajaChica.Visible = True
TxtDocumentoImporteCaja.Text = (TxtTotal.Text.ToDecimal - LblAmortizacion.Text.ToDecimal).FormatoNumero
+ ChkCreditoMultiple.Visible = False
+ DivReembolsoModal.Visible = True
+ RfvTxtRembolsoModal.Enabled = True
+ TxtRembolsoModal.Text = ""
+ TxtRembolsoNumero.Text = ""
End Select
UpContado.Update()
End Sub
+ Protected Sub BtnContado_Click(sender As Object, e As EventArgs)
+ TxtRembolsoNumero.Text = TxtRembolsoModal.Text
+ RegistraScript(String.Format("$('#{0}').modal('hide');", "DivContadoModal"))
+ End Sub
+
Protected Sub RblRembolso_SelectedIndexChanged(sender As Object, e As EventArgs)
TrRembolsoCajaChica.Visible = False
TrRembolsoPersonal.Visible = False
@@ -14600,6 +14637,35 @@ Partial Class Compras_Compras
Protected Sub BtnCancelarCompra2_Click(sender As Object, e As EventArgs)
RegistraScript("$('#DivCancelarCompra').modal('hide');")
+
+ Dim ObjComprasComprobacion As New ClsCompras
+
+
+ If ObjComprasComprobacion.GetComprasPagosConciliados(CveCompra, UsuarioActual.CveEmpresa) Then
+
+ Dim TienePagosConciliados As Boolean = False
+
+ If ObjComprasComprobacion.DtResultados.Rows.Count > 0 Then
+ TienePagosConciliados = True
+ Dim PagosConciliados As New StringBuilder
+
+ For Each Drow As DataRow In ObjComprasComprobacion.DtResultados.Rows
+ PagosConciliados.AppendLine($"{Drow("Folio").ToString}
")
+ Next
+
+
+ Alert($"La compra no se puede cancelar, tiene pagos conciliados:
{PagosConciliados.ToString}", TipoMensaje.MsgAdvertencia)
+ End If
+
+ If TienePagosConciliados Then
+ ObjComprasComprobacion.Dispose()
+ Exit Sub
+ End If
+
+
+ End If
+ ObjComprasComprobacion.Dispose()
+
Dim ObjAC As ClsContPAQi = Nothing
If UsuarioActual.Empresa.UsaAC Or UsuarioActual.Empresa.Funcionalidad(200).ToString = "1" Then
ObjAC = New ClsContPAQi(UsuarioActual.Empresa)
@@ -15135,12 +15201,7 @@ Partial Class Compras_Compras
Dr("RetISRTC") = Dr("RetISR")
Dr("TotalTC") = Dr("ImporteAjustadoDescuento")
- '[IPP] - JAMEntregaAdelantado | AJUSTE DE CANITDAD POR RECIBIR EN BASE A SALDOS DE INV-COMPRAS
- 'If UsuarioActual.CveUsuario = 100 Then
- 'If Dr("CveTipoPS").ToString.ToEntero = 2 And UsuarioActual.Empresa.Funcionalidad(153).ToEntero > 0 Then
- ' Dr("CantidadDisponible") = If(Dr("CantidadDisponible").ToString.ToDouble > Dr("CantidadPendienteVincular").ToString.ToDouble, Dr("CantidadPendienteVincular"), Dr("CantidadDisponible"))
- 'End If
- 'End If
+
Next
'DESCRIPCION DE OC CUANDO NO ES COMPRA REGISTRADA
@@ -15172,7 +15233,7 @@ Partial Class Compras_Compras
'SI PUEDE RECIBIR POR OC Y COMPRA
If UsuarioActual.CveEmpresa.Contiene(119) Then
- If UsuarioActual.Empresa.UsaInventarios And UsuarioActual.Empresa.Funcionalidad(131).ToEntero > 0 And Not UsuarioActual.Empresa.Funcionalidad(153).ToEntero > 0 Then
+ If UsuarioActual.Empresa.UsaInventarios And UsuarioActual.Empresa.Funcionalidad(131).ToEntero > 0 Then
Select Case DdlOCVinculaInv.SelectedValue.ToEntero
Case 176
DTOCGV = DTOCGV.FiltraParametros("((EstatusInventario IN (3,5) AND CveTipoPS = 2) OR CveTipoPS = 1)")
@@ -19412,7 +19473,7 @@ Partial Class Compras_Compras
Case 237
Select Case FleteImportacionOpcion
Case 1
- If Not ObjInventario.AddFletescompras(CveFlete, CveCompra) Then
+ If Not ObjInventario.AddFletesCompras(CveFlete, CveCompra) Then
ErrorTrans = True
End If
'''actualiza la compra para que no se surta en almacen. sino por el flete o importación
diff --git a/Inventarios/RecepcionAlmacen.aspx.vb b/Inventarios/RecepcionAlmacen.aspx.vb
index 819e9bf71..3467d04f4 100644
--- a/Inventarios/RecepcionAlmacen.aspx.vb
+++ b/Inventarios/RecepcionAlmacen.aspx.vb
@@ -535,11 +535,9 @@ Partial Class Inventarios_RecepcionAlmacen
If UsuarioActual.Empresa.Funcionalidad(131).ToEntero > 0 Then
DdlTipo.Items.Insert(1, New ListItem("OC", "2"))
- If UsuarioActual.Empresa.Funcionalidad(153).ToEntero > 0 Then
- DdlTipo.Items.RemoveAt(0)
- DdlTipo.SelectedValue = "2"
- ModalidadRecepcion()
- End If
+
+
+
End If
If UsuarioActual.Empresa.Funcionalidad(155).ToEntero > 0 Then
@@ -3750,7 +3748,7 @@ Partial Class Inventarios_RecepcionAlmacen
Dim ObjOC As New ClsOC
If ObjOC.GetOrdenesCompraRep("OC", -1, -1, -1, -1, MinFecha, MaxFecha, -1, -1, FolioOC, -1, -1, UsuarioActual.CveEmpresa, -1) Then
'If ObjOC.DtResultados.FiltraParametros("TipoTermino = 3").Rows.Count = 1 Then
- If ObjOC.DtResultados.Rows(0)("TieneCompra").ToString.ToEntero > 0 And UsuarioActual.Empresa.Funcionalidad(153).ToEntero > 0 Then 'Or UsuarioActual.Empresa.Funcionalidad(153).ToEntero > 0
+ If ObjOC.DtResultados.Rows(0)("TieneCompra").ToString.ToEntero > 0 Then 'Or UsuarioActual.Empresa.Funcionalidad(153).ToEntero > 0
MensajeCompra = String.Format("{1}", ObjOC.DtResultados.Rows(0)("CveCompraVinculada").ToString, ObjOC.DtResultados.Rows(0)("SerieFolioCompraVinculada").ToString)
Else
CveOC = ObjOC.DtResultados.FiltroPrimeroValor("CveOrdenCompra").ToString.ToEntero