Como Configurar e Passar Parâmetros para Cenários no Oracle Data Integrator (ODI)?
- Rodrigo de Oliveira
- 7 de fev. de 2024
- 2 min de leitura
Como discutido em posts anteriores, um cenário no Oracle Data Integrator (ODI) é uma instância executável de um objeto, podendo ser uma interface/mapeamento, pacote ou procedimento.
Os cenários podem ter várias versões ou apenas uma única versão, sendo sempre recompilados (regenerados) e sobrepondo o código-fonte anterior. No ODI, os cenários são gerados no formato XML e transitam entre os ambientes de desenvolvimento. Um exemplo prático seria criar um ETL no ambiente de desenvolvimento e, em seguida, enviar o cenário correspondente para os ambientes de homologação e produção. Caso queira se aprofundar no assunto veja está artigo aqui do blog https://manage.wix.com/dashboard/3d519f99-643e-40a0-9195-5cfa227d3894/blog/069f04a4-605e-4c6b-b896-72216b7730c3/edit?tab=scheduled
Uma funcionalidade interessante no ODI é a capacidade de utilizar parâmetros nas chamadas dos cenários. Ao clicar em um cenário na versão 11g ou 12c, você encontrará uma aba chamada "Parâmetros Adicionais". Nesta aba, é possível configurar qualquer variável disponível clicando no ícone ao lado da lixeira. Veja a imagem abaixo:

É importante observar que o cenário abre uma nova sessão, diferente da sessão chamadora. Se uma variável está sendo executada no pacote de carga, o valor pode não ser o mesmo que estará disponível no cenário chamado.
Com isso em mente, para que o valor das variáveis do pacote chegue corretamente no cenário. Algumas regras devem ser consideradas ao passar uma variável como parâmetro:
Para utilizar uma variável do tipo "refresh", ela deve estar dentro do pacote que está chamando o cenário, especialmente se o valor de retorno da variável for dinâmico. No campo "Value", adicione a variável com o valor "#nome_variavel".
Para variáveis do tipo "Set", informe um valor no campo "Value".
Adicione apenas variáveis que são utilizadas dentro do cenário que será chamado.
Essas práticas ajudam a assegurar a consistência e integridade na transmissão de valores entre diferentes partes do processo no Oracle Data Integrator (ODI).
Espero que essas informações sejam úteis. Caso tenha mais dúvidas ou precise de esclarecimentos adicionais, estou à disposição.
Comments