Para mi, esta es la manera más simple y efectiva :
Código Delphi
[-]Case DayofTheWeek(IBDataSet1DATE.Value) of
1:Label1.Caption := 'Lunes';
2:Label1.Caption := 'Martes';
3:Label1.Caption := 'Miércoles';
4:Label1.Caption := 'Jueves';
5:Label1.Caption := 'Viernes';
6:Label1.Caption := 'Sábado';
7:Label1.Caption := 'Domingo';
end;
Habrá otras muchas formas de hacerlo, con Array's, con constantes del sistema del propio windows, etc., pero para mí esta es la que más me gusta.
Presta atención que DayofTheWeek toma como 1 el Lunes, en cambio DayofWeek toma como 1 el Domingo.
Saludos
Edito : por supuesto se me olvidaba la función que comenta David, FormatDateTime
Edito de nuevo : Ya me acuerdo por qué no utilizo la función FormatDateTime para obtener el día de la semana : me devuelve la primera letra en minúscula, y (tonterías detallistas mías ...) yo la quiero en mayúsculas. Incluir otra función que me saque el primer carácter, me lo convierta a mayúsculas, y me vuelva a dar el string completo, lo veo más lioso y complicado que la efectividad simple del código que he mencionado.
Lo dicho, cada programador tiene una manera diferente de obtener el mismo resultado.