diff --git a/Compras/Compras.aspx b/Compras/Compras.aspx index b52912804..22040bb52 100644 --- a/Compras/Compras.aspx +++ b/Compras/Compras.aspx @@ -5400,12 +5400,16 @@
+
+ " style="display: inline-block; margin-right: -20px; width: 150px;" /> + " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> +
+ CssClass="table GVEstimacion table-advance table-hover Widthall ScrollAD mysmallbtn" GridLines="None" Width="100%"> @@ -5439,6 +5443,9 @@
+
+ +
diff --git a/Compras/Compras.aspx.vb b/Compras/Compras.aspx.vb index 14a68d83c..8ddb0e402 100644 --- a/Compras/Compras.aspx.vb +++ b/Compras/Compras.aspx.vb @@ -18126,46 +18126,86 @@ Partial Class Compras_Compras End If ActualizaTotales = True - Select Case Modalidad - Case "A" 'ADD - - Dim SATClavePS = -1 - Dim PSRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPS.SelectedValue.ToEntero).FiltroPrimero("") - If PSRow IsNot Nothing Then - SATClavePS = PSRow("SATClavePS").ToString.ToEntero - End If - Dim IVA As Double - If chkImportacion.Checked Then - IVA = (txtImportacion.Text.Trim.ToDouble / (TxtCantidad.Text.Trim.ToDouble * TxtPrecio.Text.Trim.ToDouble)) + Dim ObjContratos As New ClsContratos + Dim TieneError As Boolean = False + Dim Mensaje As String = "" + Dim dttemp As DataTable = GlobalDTContratos().FiltraParametros(String.Format("CveSubProyecto = {0}", DdlSubProyecto.SelectedValue.ToString)) + If dttemp IsNot Nothing AndAlso dttemp.Rows.Count > 0 Then + Dim drContrato As DataRow = dttemp.Rows(0) + If ObjContratos.GetContratosDetalle(drContrato("CveContrato").ToString.ToEntero) Then + Dim dtContratodetalle As DataTable = ObjContratos.DtResultados.FiltraParametros(String.Format("CvePS = {0}", DdlPS.SelectedValue.ToString)) + If dtContratodetalle IsNot Nothing AndAlso dtContratodetalle.Rows.Count > 0 Then + Dim drContratoDetalle As DataRow = dtContratodetalle(0) + If Convert.ToBoolean(drContratoDetalle("LimitarCantidad")) Then + If ObjContratos.GetReporteContratosAvancesDetalleControl(drContrato("CveContrato").ToString.ToEntero, UsuarioActual.CveEmpresa) Then + Dim dtContratodetalleControl As DataTable = ObjContratos.DtResultados.FiltraParametros(String.Format("CvePS = {0}", DdlPS.SelectedValue.ToString)) + If dtContratodetalleControl IsNot Nothing AndAlso dtContratodetalleControl.Rows.Count > 0 Then + Dim drContratoDetalleControl As DataRow = dtContratodetalleControl(0) + If TxtCantidad.Text.Trim.ToDouble > drContratoDetalleControl("FaltanteCantidad").ToString.ToDouble Then + Mensaje = String.Format("La cantidad del Producto/Servicio debe ser menor o igual a {0}", drContratoDetalleControl("FaltanteCantidad").ToString) + TieneError = True + End If + Else + Mensaje = "Este producto no pertence al contrato seleccionado" + TieneError = True + End If + Else + Mensaje = "Error al consultar el contrato" + End If + End If Else - IVA = Math.Round(DdlIVA.SelectedValue.ToDouble - 1, 2) + Mensaje = "Este producto no pertence al contrato seleccionado" + TieneError = True End If - AddPS(TxtCantidad.Text.Trim.ToDouble, ddlUM.SelectedValue.ToEntero, ddlUM.SelectedItem.Text, DdlClasificacion.SelectedValue.ToEntero, DdlClasificacion.SelectedItem.Text, DdlPS.SelectedValue.ToEntero, DdlPS.SelectedText, HdnTipoPS.Value.ToEntero, - DdlSubProyecto.SelectedValue.ToString, DdlSubProyecto.SelectedItem.Text, DdlProyecto.SelectedItem.Text, DdlProyecto.SelectedValue.ToString, TxtObsPS.Text.Trim, TxtPrecio.Text.Trim.ToDouble, Total, IVA, - TxtRetIVAModal.Text.ToDouble / 100, TxtRetISRModal.Text.ToDouble / 100, TxtIEPSModal.Text.ToDouble / 100, 0, TxtDescuentoModal.Text.ToDouble, OtrosGastos:=TxtOtrosGastos.Text.ToDouble, CveTipoGasto:=DdlTipoGasto.SelectedValue.ToEntero, TipoGasto:=DdlTipoGasto.SelectedItem.Text, - NoDeducible:=ChkEsNoDeduciblePS.Checked, CveSATPS:=SATClavePS) + Else + Mensaje = "Error al consultar el contrato" - AddPS2() - LimpiaAgregar() + End If + End If + If Not TieneError Then + Select Case Modalidad + Case "A" 'ADD - If ChkAgregar.Checked = True And Modalidad = "A" Then - RegistraScript("displayToastr(1);", "display") - Else + Dim SATClavePS = -1 + Dim PSRow = GlobalDTPS(UsuarioActual.CveEmpresa, CvePS:=DdlPS.SelectedValue.ToEntero).FiltroPrimero("") + If PSRow IsNot Nothing Then + SATClavePS = PSRow("SATClavePS").ToString.ToEntero + End If + Dim IVA As Double + If chkImportacion.Checked Then + IVA = (txtImportacion.Text.Trim.ToDouble / (TxtCantidad.Text.Trim.ToDouble * TxtPrecio.Text.Trim.ToDouble)) + Else + IVA = Math.Round(DdlIVA.SelectedValue.ToDouble - 1, 2) + End If + AddPS(TxtCantidad.Text.Trim.ToDouble, ddlUM.SelectedValue.ToEntero, ddlUM.SelectedItem.Text, DdlClasificacion.SelectedValue.ToEntero, DdlClasificacion.SelectedItem.Text, DdlPS.SelectedValue.ToEntero, DdlPS.SelectedText, HdnTipoPS.Value.ToEntero, + DdlSubProyecto.SelectedValue.ToString, DdlSubProyecto.SelectedItem.Text, DdlProyecto.SelectedItem.Text, DdlProyecto.SelectedValue.ToString, TxtObsPS.Text.Trim, TxtPrecio.Text.Trim.ToDouble, Total, IVA, + TxtRetIVAModal.Text.ToDouble / 100, TxtRetISRModal.Text.ToDouble / 100, TxtIEPSModal.Text.ToDouble / 100, 0, TxtDescuentoModal.Text.ToDouble, OtrosGastos:=TxtOtrosGastos.Text.ToDouble, CveTipoGasto:=DdlTipoGasto.SelectedValue.ToEntero, TipoGasto:=DdlTipoGasto.SelectedItem.Text, + NoDeducible:=ChkEsNoDeduciblePS.Checked, CveSATPS:=SATClavePS) + + AddPS2() + LimpiaAgregar() + + If ChkAgregar.Checked = True And Modalidad = "A" Then + RegistraScript("displayToastr(1);", "display") + Else + RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddProducto")) + End If + + Case "U" 'UPDATE + UpdatePS() + Alert("Concepto actualizado Correctamente.", TipoMensaje.MsgInformacion) RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddProducto")) - End If + End Select + ActualizaTotales = False - Case "U" 'UPDATE - UpdatePS() - Alert("Concepto actualizado Correctamente.", TipoMensaje.MsgInformacion) - RegistraScript(String.Format("$('#{0}').modal('hide');", "divAddProducto")) - End Select - ActualizaTotales = False + If UsuarioActual.Empresa.Funcionalidad(562).ToEntero > 0 Then CargaGastosServicios(UsuarioActual.Empresa.Funcionalidad(562).ToEntero) - If UsuarioActual.Empresa.Funcionalidad(562).ToEntero > 0 Then CargaGastosServicios(UsuarioActual.Empresa.Funcionalidad(562).ToEntero) - - If UsuarioActual.Empresa.UsaAC Then - CompruebaAgregar() - GuardaAC() + If UsuarioActual.Empresa.UsaAC Then + CompruebaAgregar() + GuardaAC() + End If + Else + Alert(Mensaje, TipoMensaje.MsgAdvertencia) End If 'If UsuarioActual.Empresa.Funcionalidad(577).ToString = "1" Then @@ -20786,9 +20826,17 @@ Partial Class Compras_Compras If ObjContratos.DtResultados.Rows.Count > 0 Then GvContratosControl.DataSource = ObjContratos.DtResultados BtnAplicarContrato.Visible = True + divBusqueda.Visible = True + ChkContinualAgregandoControl.Visible = True + ChkContinualAgregandoControl.Checked = True + Else GvContratosControl.DataSource = Nothing BtnAplicarContrato.Visible = False + divBusqueda.Visible = False + ChkContinualAgregandoControl.Visible = False + ChkContinualAgregandoControl.Checked = False + End If End If @@ -20863,11 +20911,9 @@ Partial Class Compras_Compras Next AddPS2() - - - RegistraScript("$('#DivmodalConmtrato').modal('hide')") - - + If Not ChkContinualAgregandoControl.Checked Then + RegistraScript("$('#DivmodalConmtrato').modal('hide')") + End If End Sub diff --git a/OC/OC.aspx b/OC/OC.aspx index b4968ba52..59056f36c 100644 --- a/OC/OC.aspx +++ b/OC/OC.aspx @@ -2747,33 +2747,33 @@
+
+ " style="display: inline-block; margin-right: -20px; width: 150px;" /> + " style="margin-top: -3px;" class="btn btn-circle btn-sm label-info"> +
+ CssClass="table GVEstimacion table-advance table-hover Widthall ScrollAD mysmallbtn" GridLines="None" Width="100%"> - - - - - - <%# Eval("CantidadMax", "{0:N2}")%> - - - - - + - + + + + + + + <%# Eval("PU", "{0:N2}")%> @@ -2790,8 +2790,9 @@
- - +
+ +