Comme l'évènement est affecté directement à un TField normalement, il n'est pas nécessaire à vérifier
Sinon le code doit être plutôt cela, car il faut soit même affecter la valeur (ce n'est pas indiqué dans l'aide, voir le code de TField.GetDisplayText dans DB.pas, cela aurait pu être du out au lieu du var ...)
1 2 3 4 5 6 7 8
| procedure TDataModule_compta.Query_consulter_lettrageMVT_N_DEBITGetText(
Sender: TField; var Text: String; DisplayText: Boolean);
begin
if DisplayText and (Sender.AsFloat = 0) then
Text := ''
else
Text := Sender.AsString;
end; |
je n'utilise pas l'IDE, je l'affecte manuellement, car je n'ai pas de DataModule, mes Query étant créé à la volée ...
Query_consulter_lettrage.FieldByName('MVT_N_DEBIT').OnGetText := DisplayEmptyOnZero;
1 2 3 4 5 6 7 8
| procedure TDataModule_compta.DisplayEmptyOnZero(
Sender: TField; var Text: String; DisplayText: Boolean);
begin
if DisplayText and (Sender.AsFloat = 0) then
Text := ''
else
Text := Sender.AsString;
end; |
Partager