Neste blog, descrevemos como disponibilizar alguns dados do Excel para o Oracle Data Integrator (ODI).
O Oracle Data Integrator suporta JDBC, permitindo que ele acesse dados de bancos de dados para os quais um driver JDBC está disponível. O Easysoft JDBC-ODBC Bridge estende o número de bancos de dados disponíveis para o Oracle Data Integrator fazendo uma ponte entre JDBC e ODBC. Você também pode trabalhar com dados de back-ends para os quais um driver ODBC está disponível. Usamos o Easysoft JDBC-ODBC Bridge e o ODBC Driver for Microsoft Excel para conectar o Oracle Data Integrator ao Microsoft Excel.
Observação Atualmente, o Easysoft JDBC-ODBC Bridge suporta apenas drivers ODBC de 32 bits. O Windows inclui uma versão de 32 bits do driver ODBC Excel da Microsoft.
Estas etapas mostram como acessar alguns dados do Excel do Oracle Data Integrator no Windows:
- Crie uma nova planilha do Excel.
- Adicione estes dados a Sheet1:
Id MfgPartNumber Manufacturer ProductCategory CategoryCode Description CreationDate UOM Price 1 UL743E Belkin Writing Instruments WI101 .5mm burgundy Barrel Mechanical Pencil 2013-Jan-07 00:00:00 CASE 1.39 3 B5W71AW#ABA UniBall Writing Instruments WI101 Ballpoint Pen Medium Point Black Barrel Black Ink 2013-Jan-21 00:00:00 ea 1.38 7 1752266 Belkin Writing Instruments WI101 Ballpoint Pen Retractable Fine Point Black Ink 2013-Mar-10 00:00:00 dozen 2.95 4 XV87878 Belkin Writing Instruments WI101 Chisel Point Highlighter Fluorescent Green 2013-Mar-10 00:00:01 each 1.4 3 C6Z47UT#ABA Stabilio Writing Instruments WI101 Chisel Point Highlighter Turquoise Green 2013-Jan-22 00:00:00 each 2.26
- Crie um intervalo nomeado para esses dados. Para fazer isso, selecione os dados e, na caixa abaixo do menu arquivo, digite um nome para o intervalo. Por exemplo, "Excel_Data_for_Oracle".
- Salve o arquivo como uma pasta de trabalho no formato Excel97-2003. Este é o formato suportado pelo driver ODBC do Excel fornecido com o Windows.
- Crie uma fonte de dados ODBC do sistema para a nova planilha do Excel.
Para fazer isso, use a versão de 32 bits do ODBC Data Source Administrator em sua máquina Oracle Data Integrator. Em algumas versões do Windows, isso está localizado em Painel de Controle> Ferramentas Administrativas . Em algumas versões do Windows, você precisa procurar ODBC na caixa de pesquisa da barra de tarefas. A versão de 32 bits do ODBC Data Source Administrator deve ser claramente rotulada. Em caso de dúvida, na caixa de diálogo Executar do Windows, digite:
%windir%\syswow64\odbcad32.exe
Na guia Sistema do Administrador de Fonte de Dados ODBC, selecione Driver do Microsoft Excel (.xls) e escolha Adicionar. Na caixa de diálogo ODBC Microsoft Excel Setup, você precisa especificar o caminho da planilha. Deixe as outras configurações inalteradas. - Baixe a ponte Easysoft JDBC-ODBC. (Registro obrigatório.)
- Instale e licencie o Easysoft JDBC-ODBC Bridge na máquina onde a fonte de dados ODBC do Excel local está localizada.
Para obter instruções de instalação, consulte a documentação do Easysoft JDBC-ODBC Bridge.
- Copie o arquivo JAR do Easysoft JDBC-ODBC Bridge, EJOB.jar, para o diretório userlib do ODI, por exemplo,
C:\Users\MyUser\AppData\Roaming\odi\oracledi\userlib
.
O EJOB.jar é instalado no seguinte local na máquina em que você instalou o Easysoft JDBC-ODBC Bridge:
<easysoft_install>\Jars
No Windows de 64 bits, o local padrão paraé :\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge.
- No Oracle Data Integrator Studio, escolha a guia Topologia.
- Em Arquitetura física, clique com o botão direito do mouse em Microsoft Excel e escolha novo Servidor de dados.
- Na caixa de diálogo de configuração do servidor de dados, insira um nome para o servidor de dados.
- Clique em JDBC e insira estes detalhes:
Propriedade Valor Driver JDBC easysoft.sql.jobDriver URL JDBC jdbc:easysoft://localhost/MyExcelDataSourceName:logonuser=MyWindowsUserOnExcelMachine:logonpassword=MyPassword - Salve o novo servidor de dados.
- Clique com o botão direito do mouse no novo servidor de dados e escolha Novo esquema físico.
- Nomeie o Esquema Físico. Escolha Contexto.
- Clique no botão +. Escolha um contexto e insira um nome de esquema lógico. Salve suas alterações.
- Escolha a guia Designer.
- Na guia Designer, crie um novo projeto.
- Crie um novo modelo de dados do Excel. Copiaremos os dados do Excel para este modelo de dados.
- Nomeie o novo modelo e escolha Microsoft Excel como tecnologia. Escolha o esquema lógico que você criou anteriormente. Salve suas alterações.
- Escolha a guia Engenharia reversa.
ODI importa os dados para o modelo de dados. Os dados são nomeados com o mesmo nome do intervalo que você criou no Excel. - Crie um novo modelo de dados Oracle. Copiaremos os dados do Excel para este modelo de dados.
- Dê um nome ao novo modelo e escolha Oracle como a tecnologia. Escolha a pasta do seu novo projeto como a pasta padrão para o modelo. Salve suas alterações.
- Crie um novo diagrama no Oracle Data Model. Nomeie e descreva o diagrama quando solicitado.
- Arraste o armazenamento de dados do Excel do Modelo de Dados do Excel para o painel do diagrama. Escolha OK quando solicitado a confirmar que os dados são de outro modelo.
Se você não vir a estrutura de dados do Excel no painel do diagrama. Escolha o botão Salvar tudo.
- Clique com o botão direito do mouse no modelo de dados Oracle e escolha Gerar DDL.
- Escolha Não quando solicitado se deseja processar apenas tabelas no modelo ODI.
A caixa de diálogo Gerar DDL é exibida.
- Na guia Exibição hierárquica, clique na caixa de seleção Sincronização, ao lado dos dados do Excel. Escolha OK.
O Oracle Data Integrator cria um novo procedimento na pasta para o projeto que você criou anteriormente. O procedimento cria uma nova tabela Oracle que conterá os dados do Excel.
- Escolha o botão Reproduzir para executar o procedimento e criar a tabela vazia.
- Clique com o botão direito do mouse no Oracle Data Model e escolha Generate Mappings IN.
A caixa de diálogo Gerar Mapeamentos IN é exibida. Escolha OK.
Um mapeamento entre os Dados do Excel e a tabela Oracle é criado.
- Execute o mapeamento para preencher a tabela Oracle com os dados do Excel.