Seguinte vou explicar a situação, tenho um oracle 10g r2 onde criei um Package que me retorna registro do tipo de tabela onde este retorno é feito em variáveis publicas da package, então como o Forms não suporte fazer nome_da_package.nome_da_variavel.nome_campo_tabela criei uma package dentro do da minha biblioteca onde criei as variaveis globais na SPEC e através de uma função do banco peguei os valores que vem da Package do banco e ai no Forms consigo usar nome_da_package.nome_da_variavel.nome_campo_tabela, porém tenho dois bancos com SID diferente um ORCL e outro ORCL2, então quando eu compilo a pll no ORCL2 e uso a pll no ORCL me da o ORA-04062 porém se eu compilo no ORCL e uso no ORCL fica uma maravilha, sendo que os pacotes são todos iguais, não tem nenhuma diferença.
Package do banco:
PKG_HC_CONFIG.F_RETORNA_VAR_FORMS(P_SETUP OUT HC_SETUP%ROWTYPE) RETURN VARCHAR2.
PKG_HC_CFG SPEC:
R_SETUP HC_SETUP%ROWTYPE;
MENSAGEM := PKG_HC_CONFIG.F_RETORNA_VAR_FORMS(P_SETUP => R_SETUP);