После того, как LowerCase попал в ForceGVar, можно упрощать совсем до безобразия
procedure THIGlobalVar.SetName;
begin
GData := ForceGVar(Value);
end;
procedure THIGlobalVar._work_doName;
begin
GData := ForceGVar(ToString(_Data));
end;
Но кто сказал, что так не правильно