private void CrearValidaciones()
        {
            try
            {
                UiDxValidaciones.ValidationMode = ValidationMode.Manual;

                ConditionValidationRule validacionTextoCodigo = new ConditionValidationRule();
                validacionTextoCodigo.ConditionOperator = ConditionOperator.Contains;
                validacionTextoCodigo.ErrorText         = "Ingrese el código";
                validacionTextoCodigo.ErrorType         = ErrorType.Critical;

                UiDxValidaciones.SetValidationRule(UiTextoCodigoProyecto, validacionTextoCodigo);

                ConditionValidationRule validacionTextoNombre = new ConditionValidationRule();
                validacionTextoNombre.ConditionOperator = ConditionOperator.Contains;
                validacionTextoNombre.ErrorText         = "Ingrese el nombre";
                validacionTextoNombre.ErrorType         = ErrorType.Critical;

                UiDxValidaciones.SetValidationRule(UiTextoNombreProyecto, validacionTextoNombre);


                ConditionValidationRule validacionTextoNombreCorto = new ConditionValidationRule();
                validacionTextoNombreCorto.ConditionOperator = ConditionOperator.Contains;
                validacionTextoNombreCorto.ErrorText         = "Ingrese el nombre corto(este es el que aparecerá en el móvil)";
                validacionTextoNombreCorto.ErrorType         = ErrorType.Critical;

                UiDxValidaciones.SetValidationRule(UiTextoNombreCortoProyecto, validacionTextoNombreCorto);
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.MensajeErrorDialogo(ex.Message);
            }
        }
        private void UiBotonAgregarDetalleInventario_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            InteraccionConUsuarioServicio.MostrarDialogoDeCargando();
            try
            {
                if (!UiDxValidaciones.Validate())
                {
                    return;
                }
                if (InventarioPendienteDeAsignar == null || InventarioPendienteDeAsignar.Count == 0)
                {
                    InteraccionConUsuarioServicio.MensajeErrorDialogo("Debe seleccionar inventario para asignar al proyecto");
                }
                ;

                UsuarioDeseaAsignarInventarioAProyecto?.Invoke(null, new ProyectoArgumento
                {
                    Login        = InteraccionConUsuarioServicio.ObtenerUsuario(),
                    Proyecto     = ProyectoSeleccionado,
                    LicenciasXml = Xml.ConvertListToXml(InventarioPendienteDeAsignar.Where(m => m.IS_SELECTED).ToList())
                });
                VistaTerminoDeEliminar();
                UiVistaProyecto_Click(sender, e);
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.MensajeErrorDialogo(ex.Message);
            }
            InteraccionConUsuarioServicio.CerrarDialogoDeCargando();
        }
        private void UiBotonGrabarProyecto_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            InteraccionConUsuarioServicio.MostrarDialogoDeCargando();
            try
            {
                if (!UiDxValidaciones.Validate())
                {
                    return;
                }
                ProyectoSeleccionado.CUSTOMER_NAME = null;

                ProyectoSeleccionado.OPPORTUNITY_CODE = UiTextoCodigoProyecto.Text;
                ProyectoSeleccionado.OPPORTUNITY_NAME = UiTextoNombreProyecto.Text;
                ProyectoSeleccionado.SHORT_NAME       = UiTextoNombreCortoProyecto.Text;
                ProyectoSeleccionado.OBSERVATIONS     = UIMemoObservacionesProyecto.Text;
                ProyectoSeleccionado.STATUS           = Enums.GetStringValue(EstadoDeProyecto.Creado);
                ProyectoSeleccionado.CUSTOMER_CODE    = UiListaClienteProyecto.EditValue?.ToString();
                if (string.IsNullOrEmpty(ProyectoSeleccionado.CUSTOMER_CODE))
                {
                    InteraccionConUsuarioServicio.MensajeErrorDialogo("Debe seleccionar cliente");
                    return;
                }
                if (!string.IsNullOrEmpty(ProyectoSeleccionado.CUSTOMER_CODE))
                {
                    var clientes = Clientes.FirstOrDefault(c => c.CUSTOMER_CODE == ProyectoSeleccionado.CUSTOMER_CODE);
                    ProyectoSeleccionado.CUSTOMER_NAME  = clientes?.CUSTOMER_NAME;
                    ProyectoSeleccionado.CUSTOMER_OWNER = clientes?.OWNER;
                }
                UsuarioDeseaGrabarProyecto?.Invoke(null, new ProyectoArgumento
                {
                    Login    = InteraccionConUsuarioServicio.ObtenerUsuario(),
                    Proyecto = ProyectoSeleccionado
                });
            }
            catch (Exception ex)
            {
                InteraccionConUsuarioServicio.MensajeErrorDialogo(ex.Message);
            }
            InteraccionConUsuarioServicio.CerrarDialogoDeCargando();
        }