Cara,
O problema pelo que eu entendi é a utilização de uma function (ver_codigo) do banco local no insert.
Poderia fazer de duas maneiras:
Alterando o insert, para antes dele, executar essa função ver_codigo e passar o valor retornado como parâmetro.
ou
De uma maneira mais complicada que é alterar o valor do parâmetro para TRUE (seja somente na abordagem de session ou system) e criar um DB Link do banco remoto para o banco local com o mesmo nome do global_name do banco local (select * from global_name).
Acho que a primeira seja uma solução mais simples. 😆
Qualquer coisa, dá uma olhada nesse doc no MOS, que tem um problema bem parecido com o teu:
Inserting Data To View Mapped Via Dblink To Remote Table Returns Ora-02069 [ID 467787.1]