Una pregunta. Tengo que pasar el valor de la variable en la llamada de la funcion? En su ejemplo tengo que pasar el valor de a: Foo(a). Pero esto yo no quiero, pues el valor tendra que venir de la funcion asi:
Código Delphi
[-]function CarregaValores(ano, num: Integer): boolean;
var
tipo, equipamento: String;
begin
tipo := qryOcorPend.FieldByname('ABRANGENCIA').AsString;
equipamento := qryOcorPend.FieldByname('DEFEITO_FALHA').AsString;
...........
Result := True;
end;
if CarregaValores(2009, 2589) then
carga los valores de las variables tipo y equipamento;
Pero en mi ejemplo aca puzo ellos locales a la funcion, pero pueden ser globales o publicas e etc... Esto es solo un ajemplo. No puedo tener una variable como parametro, pues no puedo dar a ella un valor. La funcion tiene mas cosas, esto es solo un ejemplo.