private async System.Threading.Tasks.Task Guardar()
        {
            try
            {
                if (SelectPersona == null)
                {
                    return;
                }

                if (SelectedEspecialidadEdicion == null)
                {
                    return;
                }

                if (SelectedEstatus == null)
                {
                    return;
                }

                System.DateTime _fechaActual      = Fechas.GetFechaDateServer;
                var             NuevoEspecialista = new SSP.Servidor.ESPECIALISTA
                {
                    ESTATUS              = SelectedEstatus.CLAVE,
                    ID_ESPECIALIDAD      = SelectedEspecialidadEdicion.Value,
                    ID_PERSONA           = SelectPersona.ID_PERSONA,
                    ID_USUARIO           = GlobalVar.gUsr,
                    ESPECIALISTA_MATERNO = SelectPersona == null ? TextMaterno : string.Empty,
                    ESPECIALISTA_NOMBRE  = SelectPersona == null ? TextNombre : string.Empty,
                    ESPECIALISTA_PATERNO = SelectPersona == null ? TextPaterno : string.Empty,
                    ID_CENTRO_UBI        = GlobalVar.gCentro,
                    REGISTRO_FEC         = _fechaActual
                };

                await StaticSourcesViewModel.CargarDatosMetodoAsync(() =>
                {
                    if (!Bandera_Agregar)
                    {
                        NuevoEspecialista.ID_ESPECIALISTA = SelectedItem != null ? SelectedItem.ID_ESPECIALISTA : new short();
                        new SSP.Controlador.Catalogo.Justicia.cEspecialistas().ActualizarEspecialista(NuevoEspecialista);
                        Bandera_Agregar = true;
                    }
                    else
                    {
                        new SSP.Controlador.Catalogo.Justicia.cEspecialistas().GuardarEspecialista(NuevoEspecialista);
                    }
                });

                new Dialogos().ConfirmacionDialogo("Éxito", "La información se guardo correctamente.");
            }
            catch (Exception ex)
            {
                StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al guardar la especialidad.", ex);
            }
        }
        private async System.Threading.Tasks.Task GuardaEspecialistaSinPersona()
        {
            try
            {
                System.DateTime _fechaActual      = Fechas.GetFechaDateServer;
                var             NuevoEspecialista = new SSP.Servidor.ESPECIALISTA
                {
                    ESTATUS              = SelectedEstatus.CLAVE,
                    ID_ESPECIALIDAD      = SelectedEspecialidadEdicion.Value,
                    ID_PERSONA           = null,
                    ESPECIALISTA_MATERNO = TextMaterno,
                    ESPECIALISTA_NOMBRE  = TextNombre,
                    ESPECIALISTA_PATERNO = TextPaterno,
                    ID_CENTRO_UBI        = GlobalVar.gCentro,
                    ID_USUARIO           = GlobalVar.gUsr,
                    REGISTRO_FEC         = _fechaActual
                };

                bool _Respuesta = false;
                await StaticSourcesViewModel.CargarDatosMetodoAsync(() =>
                {
                    if (!Bandera_Agregar)
                    {
                        NuevoEspecialista.ID_ESPECIALISTA = SelectedItem != null ? SelectedItem.ID_ESPECIALISTA : new short();
                        _Respuesta      = new SSP.Controlador.Catalogo.Justicia.cEspecialistas().ActualizarEspecialista(NuevoEspecialista);
                        Bandera_Agregar = true;
                    }
                    else
                    {
                        _Respuesta = new SSP.Controlador.Catalogo.Justicia.cEspecialistas().GuardarEspecialista(NuevoEspecialista);
                    }
                });

                if (_Respuesta)
                {
                    new Dialogos().ConfirmacionDialogo("Éxito", "La información se guardo correctamente.");
                }
                else
                {
                    new Dialogos().ConfirmacionDialogo("Error", "Surgió un error al guardar.");
                }
            }
            catch (Exception exc)
            {
                new Dialogos().ConfirmacionDialogo("Error", string.Format("{0} {1}", "Surgió un error al guardar.", exc.Message));
            }
        }