Ver Mensaje Individual
  #4  
Antiguo 05-10-2024
navbuoy navbuoy is offline
Miembro
 
Registrado: mar 2024
Posts: 360
Reputación: 3
navbuoy Va por buen camino
a que te refieres con cifrar los datos sensibles??? si solo se trata de ocultarlos de ojos indiscretos puedes poner un boton que de paso a introducir una contraseña para visualizar esos campos "sensibles" y ocultarlos asi:

Ve al campo que deseas ocultar en el DBGrid.
Implementa el evento OnGetText del campo correspondiente en el DataSet.
En el evento OnGetText, puedes reemplazar el contenido del campo por asteriscos cuando se muestre en el DBGrid, pero manteniendo el valor original en la base de datos.

Delphi:
Código:
procedure TForm1.MyFieldGetText(Sender: TField; var Text: string; DisplayText: Boolean);
begin
  // Comprobar si el campo se está mostrando en el DBGrid
  if DisplayText then
  begin
    // Reemplazar el valor original con asteriscos
    Text := StringOfChar('*', Sender.AsString.Length);
  end;
end;
C++ Builder:
Código:
void __fastcall TForm1::MyFieldGetText(TField *Sender, UnicodeString &Text, bool DisplayText)
{
    // Comprobar si el campo se está mostrando en el DBGrid
    if (DisplayText)
    {
        // Reemplazar el valor original con asteriscos
        Text = StringOfChar('*', Sender->AsString.Length());
    }
}
y activarlo o desactivarlo con un IF comprobando la contraseña, yo algo asi hice hace tiempo para un programa mio
Responder Con Cita