Blz Galera, tudo bem?
Resolvi o problema, mas gostaria de saber o por que do erro, caso outro momento eu passe por esse mesmo erro.
Tenho um script que roda em shell script e foi homologado pelo usuário em desenvolvimento. Executa normalmente em desenv.
Hoje quando ela colocou em produção apareceu os seguintes erros:
(SELECT cod_empr, cc.sgl_org, TO_CHAR(LPAD(cod_ccusto, 10, '0')) centro_c
usto
*
ERROR at line 64:
ORA-06550: line 64, column 38:
PLS-00307: too many declarations of 'TO_CHAR' match this call
ORA-06550: line 50, column 1:
PL/SQL: SQL Statement ignored
ORA-06550: line 99, column 8:
PLS-00364: loop index variable 'REG_ORGAO' use is invalid
ORA-06550: line 99, column 5:
PL/SQL: Statement ignored
ORA-06550: line 152, column 10:
PLS-00364: loop index variable 'REG_ORGAO' use is invalid
ORA-06550: line 152, column 7:
PL/SQL: Statement ignored
ORA-06550: line 163, column 9:
PLS-00307: too many declarations of 'TO_CHAR' match this call
Entre outros erros.
Seguindo os erros, fui em todos os campos que tinha TO_CHAR e retirei.
Logo depois rodou normalmente.
Mas, o que é inexplicável, se teoricamente todos os ambientes são iguais – colunas, tipos…de produção e desenv. Por que quando rodei no desenv funcionou e prod não.
Alguém ja teve esse tipo de problema?
Pesquisei na net, e teve um cara que postou esse mesmo problema: no 9i conseguiu, mas em 8 não. Só que quem respondeu a postagem somente disse para tirar os TO_CHAR, mas não explicou o motivo disso acontecer.
Se alguém souber, fico agradecido.
[]s e bom fim de semana para todos.