TTfva permisos cambio clave form
Descripción
El objeto TTfva_permisos_cambio_clave_form (Cambio de clave de un usuario) permite al usuario logueado a la aplicación cambiar su contraseña.

El usuario debe ingresar:
- Clave actual.
- Nueva clave.
- Repetir la nueva clave.
Finalmente presionar "Cambiar clave".
Identidad
- Ancestro: TfvsForm
- Carpeta: C:\DevelopPrx\library
- Archivo: fva_permisos_cambio_clave_form.pas
Declaración
type TTfva_permisos_cambio_clave_form = class(TTfvsForm) Panel1: TPanel; Panel_Usuario: TPanel; Panel_UsuarioI: TPanel; Panel_UsuarioD: TPanel; prxEdit_ClaveActual: TEdit; Panel_Clave: TPanel; Panel_ClaveI: TPanel; Panel_ClaveD: TPanel; prxEdit_NuevaClave: TEdit; Panel_conectar_dominio: TPanel; Panel2: TPanel; Panel3: TPanel; Panel6: TPanel; prxEdit_Confirmacion: TEdit; Button_CambiarClave: TButton; SpeedButton_Cancelar: TSpeedButton; procedure FormShow(Sender: TObject); //override; procedure prxEdit_ClaveActualExit(Sender: TObject); procedure prxEdit_NuevaClaveExit(Sender: TObject); procedure prxEdit_ConfirmacionExit(Sender: TObject); procedure Button_CambiarClaveClick(Sender: TObject); procedure SpeedButton_CancelarClick(Sender: TObject); private protected public function login_user: String; function clave_original: String; function clave_nueva: String; end;
Implementación
function login_user: String
Retorna el código de usuario logueado tomándolo de prxADOClientDM.ADOMainConnection.login_user.
function clave_original: String
Retorna clave actual tomándola de la caja de edición:
Result := Trim(prxEdit_ClaveActual.Text);
function clave_nueva: String
Retorna nueva clave tomándola de la caja de edición:
Result := Trim(prxEdit_NuevaClave.Text);
procedure prxEdit_ClaveActualExit(Sender: TObject)
Evento OnExit sobre el control de edición de la clave actual que verifica que sea correcta.
procedure prxEdit_NuevaClaveExit(Sender: TObject)
Evento OnExit sobre el control de edición de la nueva clave actual que verifica que contenga algo y que no sea igual a la anterior.
procedure prxEdit_ConfirmacionExit(Sender: TObject)
Evento OnExit sobre el control de edición de la confirmación de la nueva clave actual que verifica que sea igual a la nueva clave.
procedure Button_CambiarClaveClick(Sender: TObject)
Ejecutado cuando presionamos el botón de "Cambiar clave" cierra el form con ModalResult := mrOk.
procedure SpeedButton_CancelarClick(Sender: TObject)
Ejecutado cuando presionamos el botón "Cancelar" cierra el form con ModalResult := mrCancel.
Uso
Solo es usado desde TUSUARIO_implemented.ChangePasswordClick, si el resultado del form es mrOk hace el cambio de clave en el servidor con:
procedure TUSUARIO_implemented.ChangePasswordClick(Sender: TObject); var vF: TTfva_permisos_cambio_clave_form; begin inherited; vF := TTfva_permisos_cambio_clave_form.Create(Self); vF.ShowModal; if vF.ModalResult = mrOk then begin QueryAUX.SQLX.Clear; QueryAUX.SQLX.Add('IF EXISTS (SELECT * FROM master.dbo.syslogins WHERE name = ' + Q(vF.login_user) + ')'); QueryAUX.SQLX.Add(' ALTER LOGIN ' + vF.login_user + ' WITH PASSWORD = ' + Q(vF.clave_nueva) + ' OLD_PASSWORD = ' + Q(vF.clave_original)); QueryAUX.SQLX.Add('GO'); if QueryAUX.Apply_Local(QueryAUX.SQLX) then fvsInformationDlg(Self, 'El cambio de clave se ha realizado con éxito'); end; vF.Release; end;