Hola
Si "Variable" es de tipo TRetorno no veo cual es el problema
Código Delphi
[-]variable := _CalcularCaloria(dsqryCalculoCaloria, edtCodigo.text, '', 'G');
Showmessage(Variable._Dato); Showmessage(Floattostr(Variable._Valor));
Bueno no se si entendi bien. En tal caso podrias replantear tu duda.
Saludos