I am trying to use this PLSQL block:
DECLARE V_LOG_ENTRY I_LOG_ENTRY; V_LOG_RETURN INTEGER; BEGIN V_LOG_ENTRY := I_LOG_ENTRY(arguments...); V_LOG_RETURN := [email protected](V_LOG_ENTRY, 0); END;
WRITE_LOG_ENTRY is expecting the type I_LOG_ENTRY. This type is present on both the local db and the remote db. They both have the same OID.
When I execute the block, I get the error:
PLS-00306: wrong number or types of arguments in call to 'WRITE_LOG_ENTRY'
function WRITE_LOG_ENTRY( P_LOG_ENTRY I_LOG_ENTRY, P_current_log_level INTEGER DEFAULT NULL )
What I was trying to do is not possible.
Please see Referencing Oracle user defined types over DBLINK? as suggested by @kfinity for a different approach.