diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 56ab2f9d3..8e2c97b11 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -2214,6 +2214,7 @@ Partial Class Ventas If DdlTipoComprobante.SelectedValue.Contiene("Ped", "PeC") Then TrAlmacenAsignado.Visible = True + TrAlmacenOrigen.Visible = True End If Dim CveAlmacenDestino As Integer = DtContratos.FiltroPrimeroValor("CveAlmacenDestino", $"CveContrato = {If(DdlContratosModal.Items.Count > 0, DdlContratosModal.SelectedValue, "0")}").ToEntero() @@ -2232,6 +2233,7 @@ Partial Class Ventas Else RequiereAlmacenDestino = False TrAlmacenAsignado.Visible = False + TrAlmacenOrigen.Visible = False End If 'ENVIO DE FACTURA @@ -2244,9 +2246,10 @@ Partial Class Ventas 'Modalidad Contrato If Request("CveContrato") IsNot Nothing AndAlso IsNumeric(Request("CveContrato")) AndAlso Request("CveContrato").ToEntero() > 0 AndAlso Request("Tipo") IsNot Nothing AndAlso IsNumeric(Request("Tipo")) AndAlso Request("Tipo").Contiene("0", "1") Then - TrAlmacenOrigen.Visible = False + If DdlTipoComprobante.SelectedValue.Contiene("Ped", "PeC") Then TrAlmacenAsignado.Visible = True + TrAlmacenOrigen.Visible = True End If UPCondicionesPago.Visible = False @@ -3014,11 +3017,28 @@ Partial Class Ventas DdlAlmacenAsignado.DataBind() End If + Dim CveAlmacenOrigen As Integer = DrContrato("CveAlmacenOrigen").ToString().ToEntero() + + If CveAlmacenOrigen > 0 Then + 'TrAlmacenOrigen.Visible = True + + DdlAlmacenOrigen.Items.Clear() + DdlAlmacenOrigen.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveTipoAlmacen:=-1, CveAlmacen:=CveAlmacenOrigen) '.FiltraParametros($"CveSubProyecto = {DdlSubProyectoDatos.SelectedValue.ToEntero()}") + DdlAlmacenOrigen.DataBind() + DdlAlmacenOrigen.SelectedValueExist(CveAlmacenOrigen.ToString()) + + End If + If DdlTipoComprobante.SelectedValue.Contiene("Ped", "PeC") Then DdlAlmacenAsignado.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoAlmacen:=-1).FiltraParametros($"CveSubProyecto = {DdlSubProyectoDatos.SelectedValue.ToEntero()}") DdlAlmacenAsignado.Items.Insert(0, New ListItem("Seleccione", "-1")) DdlAlmacenAsignado.SelectedValueExist(CveAlmacenDestino.ToString()) DdlAlmacenAsignado.DataBind() + + DdlAlmacenOrigen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoAlmacen:=-1).FiltraParametros($"CveSubProyecto = {DdlSubProyectoDatos.SelectedValue.ToEntero()}") + DdlAlmacenOrigen.Items.Insert(0, New ListItem("Seleccione", "-1")) + DdlAlmacenOrigen.SelectedValueExist(CveAlmacenOrigen.ToString()) + DdlAlmacenOrigen.DataBind() End If UpParametros.Update() @@ -3273,6 +3293,7 @@ Partial Class Ventas DdlAlmacenAsignado.DataBind() DdlAlmacenAsignado.Enabled = True TrAlmacenAsignado.Visible = True + TrAlmacenOrigen.Visible = True TrTipoPedido.Visible = True TrObs.InnerText = "No. Serie" SpObs.InnerText = "Contrato" @@ -7353,16 +7374,20 @@ Partial Class Ventas If ObjContr.GetContratos(CveContrato, UsuarioActual.CveEmpresa) Then If ObjContr.DtResultados.Rows.Count > 0 Then - ' si es flexible que notifique el monto maximo, si no lo es que notifique el porcentaje alcanzado... flexible = 2, no flexible = 1 - Dim PorcentajeAvance As Double = ObjContr.DtResultados.Rows(0)("ContratoAvance").ToString().ToDouble + + 'SI ES FLEXIBLE QUE NOTIFIQUE EL MONTO MAXIMO, SI NO LO ES QUE NOTIFIQUE EL PORCENTAJE ALCANZADO... FLEXIBLE = 2, NO FLEXIBLE = 1 If ObjContr.DtResultados.Rows(0)("ModalidadDetalle").ToString() = "1" Then + Dim PorcentajeAvance As Double = ObjContr.DtResultados.Rows(0)("ContratoAvance").ToString().ToDouble If PorcentajeAvance >= 100 Then EnviarNotificacionAvance(ObjContr.DtResultados.Rows(0)("NumeroContrato").ToString(), ObjContr.DtResultados.Rows(0)("DescripcionContrato").ToString(), ObjContr.DtResultados.Rows(0)("ContratoTipo").ToString(), ObjContr.DtResultados.Rows(0)("NombreComercial").ToString(), ObjContr.DtResultados.Rows(0)("CorreoVendedor").ToString()) End If Else Dim MontoMaximo As Double = ObjContr.DtResultados.Rows(0)("ImporteMax").ToString().ToDouble + Dim Avance As Double = ObjContr.DtResultados.Rows(0)("Avance").ToString().ToDouble + + Dim PorcentajeAvance As Double = (Avance / MontoMaximo) * 100 If PorcentajeAvance >= 100 And MontoMaximo > 0 Then EnviarNotificacionAvance(ObjContr.DtResultados.Rows(0)("NumeroContrato").ToString(), ObjContr.DtResultados.Rows(0)("DescripcionContrato").ToString(), ObjContr.DtResultados.Rows(0)("ContratoTipo").ToString(), ObjContr.DtResultados.Rows(0)("NombreComercial").ToString(), ObjContr.DtResultados.Rows(0)("CorreoVendedor").ToString(), MontoMaximo) @@ -13098,6 +13123,7 @@ Partial Class Ventas If DdlTipoComprobante.SelectedValue = "Rem" Then DdlTipoComprobante.Enabled = False TrAlmacenAsignado.Visible = False + TrAlmacenOrigen.Visible = False UpParametros.Update() End If @@ -14192,6 +14218,7 @@ Partial Class Ventas 'REINICIALIZA VALORES DE ENTREGA POR ADELANTADO RequiereAlmacenDestino = False TrAlmacenAsignado.Visible = False + TrAlmacenOrigen.Visible = False If DdlTipoComprobante.SelectedValue = "Cot" And UsuarioActual.Empresa.Funcionalidad(135) = "1" Then Alert("Se ocupa una autorización.", TipoMensaje.MsgAdvertencia) @@ -14283,10 +14310,21 @@ Partial Class Ventas DdlAlmacenAsignado.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoAlmacen:=-1).FiltraParametros($"CveSubProyecto = {DdlSubProyectoDatos.SelectedValue.ToEntero()} AND CveTipoAlmacen IN (10)") DdlAlmacenAsignado.DataBind() End If + + Dim CveAlmacenOrigen As Integer = DtContratos.FiltroPrimeroValor("CveAlmacenOrigen", $"CveContrato = {If(DdlContratosModal.Items.Count > 0, DdlContratosModal.SelectedValue, "0")}").ToEntero() + + If CveAlmacenOrigen > 0 Then + DdlAlmacenOrigen.Items.Clear() + DdlAlmacenOrigen.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveTipoAlmacen:=-1, CveAlmacen:=CveAlmacenOrigen) '.FiltraParametros($"CveSubProyecto = {DdlSubProyectoDatos.SelectedValue.ToEntero()}") + DdlAlmacenOrigen.DataBind() + DdlAlmacenOrigen.SelectedValueExist(CveAlmacenOrigen.ToString()) + End If + UpParametros.Update() Else RequiereAlmacenDestino = False TrAlmacenAsignado.Visible = False + TrAlmacenOrigen.Visible = False End If 'ENVIO DE FACTURA