Hola,
El error te "sale" porque el "case" de Delphi no admite tipos que no sean ordinales. Podrías utilizar sin problemas el número de mes (1..12) pero no su nombre. Como no fuera que hicieras plantearas un tipo enumerado con los nombres de los meses... es decir:
Código Delphi
[-]
type
TMeses = (mEnero, mFebrero, mMarzo, mAbril, );
De este modo ya sí que podrías hacer algo como:
Código Delphi
[-]
var
mes: TMeses;
begin
case mes of
mEnero: ;
mFebrero: ;
end;
end;