Mala Direta com OpenOffice
Demorou e finalmente aconteceu, esperaram até a versão 2.0 para enviarem o anúncio, o HSQLDB será o banco de dados oficial que acompanhará o OpenOffice daqui para frente. Finalmente, quem usa a ferramenta terá um concorrente mais do que à altura do Microsoft Access , lembrando que quem usa o StarOffice já conta com o banco Adabas DB (só que infelizmente, proprietário). O HSQLDB foi nota do meu primeiro artigo publicado neste site, lembrando que ele é relacional (fornece suporte a SQL ANSI-92) e escrito completamente em Java. A grande vantagem é o seu tamanho (menor que 100 Kb) e rapidez. Suas tabelas podem ser mantidas em disco ou em memória RAM.
Mas porque esperarmos até a versão 2.0 para aproveitarmos deste recurso ? Então vamos brincar um pouco com este banco, aproveitando os dados carregados com o artigo passado e gerar uma simples mala direta . Só como referência, vou me utilizar da versão 1.1.2 do OpenOffice (em inglês), gosto de trabalhar com versões em inglês. O dicionário não é uma preocupação, pois bastam cinco passos e tenho o dicionário totalmente em português. No site do OpenOffice Brasil, você obtém os arquivos pt_BR.dic e o pt_BR.aff.
Colocando o dicionário em português no OpenOffice
1) Copie os arquivos pt_BR.dic e pt_BR.aff para a
[pasta OpenOffice]\share\dict\ooo
2) Abra o arquivo dictionary.lst (na mesma pasta) e insira a seguinte linha:
DICT pt BR pt_BR
3) Salve e abra o OpenOffice. Em seguida, acesse:
Tools -> Options -> Language settings -> Languages
4) Selecione o padrão Portuguese (Brazil) .
5) Entre na opção writing aids pressione o botão edit e configure a linguagem adotada.
Voltando à mala direta
Entretanto, estou perdendo o foco do artigo que é fazer uma mala direta. Sendo assim, vamos aos passos para o procedimento então:
1) Modifique o arquivo java.ini localizado em [pasta OpenOffice]\user\config localizando nele, a linha do SystemClasspath. Insira o caminho para o arquivo JDBC do HSQLDB
SystemClasspath=[pasta Driver HSQLDB]\hsqldb.jar;[outros jar já existentes]
2) Crie um novo arquivo texto.
3) O primeiro passo será configurarmos a base de dados. Para isso, acesse a opção Tools | Data Sources...
4) Na janela que se abre clique com o botão direito (na lateral New Data Source) e selecione a opção New Data Source.
5) Na opção Database type selecione JDBC e mude a palheta superior para JDBC
6) Nesta palheta JDBC configure as seguintes opções:
JDBC Driver Class: org.hsqldb.jdbcDriver
URL: (complete jdbc: já existente, com) hsqldb:file:teste
User name: sa
7) Façamos um pequeno teste acessando a palheta Tables e a tabela FRASE deve ser mostrada. Dê um OK para fechar a janela.
8) Escreva qualquer mensagem que você deseje enviar a seus amigos, por exemplo:
Prezado Amigo,
<campo DESFRASE>
Esta mensagem foi escrita por <campo AUTFRASE> e que lhe possa lhe ser de grande ajuda.
Tenha sempre a paz contigo
Fernando Anselmo
9) Para inserir os campos acesse a partir do menu as opções Insert | Fields | Other... ou CTRL+F2 e selecione Database na palheta superior e opção Mail merge fields , pressionando o botão Insert para colocar os campos nas posições indicadas.
Tudo pronto e agora vem a melhor parte. Pode-se simplesmente selecionar View | Data Sources ou F4 para se ter uma visão de como ficará seu documento impresso. Para fazer isso, selecione a tabela FRASE e escolha uma delas, em seguida pressione o botão date to fields . O botão Mail Marge enviará para impressora ou criará os documentos para serem enviados. Se você desejar enviar direto, selecione a opção Tools | Mail Marge...
E se você tivesse construindo um formulário de etiquetas como faria? Mais simples ainda, volte na opção Insert | Fields | Other... e teremos a opção Next Record , basta inserir este e um novo conjunto de campos até que tenhamos a folha completa de etiquetas.
Agora você já está pronto para gerar suas malas diretas de qualquer banco que tenha na sua empresa, pois para isso, basta trocar o driver JDBC. Imagine que às 17:55 da sexta-feira seu chefe solicite uma listagem em etiquetas de todos os clientes cadastrados em um banco de dados ORACLE, mais ou menos 300.000, suas opções são:
• Dizer que isso não pode ser feito.
• Migrar os dados para o MS-Access e fazer uma mala direta com o MS-Office.
• Recorrer a este artigo.
Até a Próxima!
Fernando Anselmo