Usé la siguiente sintaxis y me funcionó.
EXECUTE (Query, Parameters) AT LinkedServerName
Ejemplo:
EXECUTE ( 'BEGIN ? := Package.MyFunction(?,?); END;', @ReturnValue, @InputPara, @OutputPara OUTPUT ) AT LinkedServerName
Puntos importantes:
- No olvide la sintaxis BEGIN y END al llamar funciones
- No olvides el punto y coma al final "FIN**;**"
- Para usar la sintaxis anterior, debe habilitar RPC para el servidor vinculado
- Oracle no considerará la llamada como una llamada de función a menos que acepte la salida en una variable