Skip to content

TFormatSettings en Delphi: Control Preciso de la Formatación de Datos

En el mundo de la programación, especialmente en lenguajes orientados a objetos como Delphi, la manipulación de datos es una tarea esencial. ¿Y quien no tuvo algún problema con el formato de DateTime o Currency al mandar nuestra aplicación a producción?

Cuando se trata de representar datos en diferentes formatos, como fechas, números y monedas, en diferentes dispositivos, la clase TFormatSettings de Delphi se convierte en una herramienta que NO PUEDES olvidarte de utilizar.

Esta clase nos permite a los desarrolladores controlar cómo mostrar los datos en función de las configuraciones regionales de casa dispositivo y personales del usuario, garantizando consistencia en cada uno de ellos.

Ejemplo del uso de TFormatSettings:

procedure ConfigRegion;
var
  FormatAr: TFormatSettings;
begin
  // Create new setting
  FormatAr := TFormatSettings.Create;
  FormatAr.DecimalSeparator   := '.';
  FormatAr.ThousandSeparator  := ',';
  FormatAr.CurrencyDecimals    := 2;
  FormatAr.DateSeparator      := '/';
  FormatAr.ShortDateFormat    := 'dd/mm/yyyy';
  FormatAr.LongDateFormat     := 'dd/mm/yyyy';
  FormatAr.TimeSeparator      := ':';
  FormatAr.TimeAMString       := 'AM';
  FormatAr.TimePMString       := 'PM';
  FormatAr.ShortTimeFormat    := 'hh:nn';
  FormatAr.LongTimeFormat     := 'HH:nn:ss';
  FormatAr.CurrencyString     := '$';

  // Assign the App region settings to the newly created format
  FormatSettings := FormatAr;
end;

Propiedades de la clase TFormatSettings en Delphi

  1. CurrencyString: Define el símbolo que utilizamos para representar la moneda. Por ejemplo, en Estados Unidos, se podría establecer el símbolo “$”. La clase TFormatSettings permite personalizar este símbolo según el país o región de cada dispositivo.
  2. DecimalSeparator: Especifica el símbolo para separador decimal, utilizado para separar la parte entera de la parte decimal en números no enteros.
  3. ThousandSeparator: Indica el separador de miles que se utilizará para mejorar la legibilidad de números grandes.
  4. ShortDateFormat y LongDateFormat: Estas dos propiedades controlan el formato de la fecha corta y larga. Permite definir cómo se presentarán ambas fechas, incluyendo el orden del día, mes y año.
  5. ShortTimeFormat y LongTimeFormat: Similar a las propiedades anteriores de fechas vortas y largas, estas dos propiedades determinan cómo se formatearán las horas, minutos y segundos en formatos cortos y largos.
  6. DateSeparator y TimeSeparator: Estas propiedades establecen los separadores que se utilizarán entre las partes de fechas y horas en las representaciones formateadas.

Como funciona TFormatSettings en Delphi

La clase TFormatSettings en Delphi funciona como un conjunto de reglas que dictan cómo se debe formatear y mostrar la información.

Al utilizar estas propiedades podemos garantizar que los datos se presenten de manera coherente y adecuada para los usuarios en diferentes dispositivos con diferentes configuraciones.

Un aspecto crucial de la clase TFormatSettings es que permite la internacionalización y localización de las aplicaciones, podemos plantear diferentes configuracion y detectando la región postrar la más adecuada.