- A preparação do modelo, que consiste na confecção de um arquivo de texto que vai servir de base para criar um novo documento;



Documentos relacionados
Word 1 - Introdução Principais recursos do word A janela de documento Tela principal

Manual do site do Comitê do Itajaí: como inserir e atualizar

Fluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos

APOSTILA WORD BÁSICO

Instalando software MÉDICO Online no servidor

Procedimentos para Reinstalação do Sisloc

Sistema de Instalação e Criação da Estrutura do Banco de Dados MANUAL DO INSTALADOR. Julho/2007. Ministério da saúde

Tutorial Plone 4. Manutenção de Sites. Universidade Federal de São Carlos Departamento de Sistemas Web Todos os direitos reservados

Microsoft Office Outlook Web Access ABYARAIMOVEIS.COM.BR

Parte 5 LibreOffice Base

Banco de Dados BrOffice Base

Sumário 1. SOBRE O NFGoiana DESKTOP Apresentação Informações do sistema Acessando o NFGoiana Desktop

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

CICLO DE APERFEIÇOAMENTO PROFISSIONAL DOS SERVIDORES MUNICIPAIS DE MARICÁ- RJ EDITOR DE TEXTO - WORD

V.1.0 SIAPAS. Sistema Integrado de Administração ao Plano de Assistência à Saúde. Contas Médicas

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

Manual da Turma Virtual: MATERIAIS. Para acessar a turma virtual com o perfil Docente, siga o caminho indicado abaixo:

Manual de Utilização COPAMAIL. Zimbra Versão 8.0.2

ÍNDICE... 2 INTRODUÇÃO... 4

A barra de menu a direita possibilita efetuar login/logout do sistema e também voltar para a página principal.

&XUVRGH,QWURGXomRDR (GLWRUGH3ODQLOKDV([FHO

Gerenciamento de Arquivos e Pastas. Professor: Jeferson Machado Cordini jmcordini@hotmail.com

Criando Quiz com BrOffice.impress

Manual das funcionalidades Webmail AASP

Windows Explorer. Prof. Valdir

MANUAL DE INSTALAÇÃO DO ODONTO TECHNOLOGY

CENTRO UNIVERSITÁRIO CATÓLICA DE SANTA CATARINA PRÓ-REITORIA ACADÊMICA NÚCLEO DE EDUCAÇÃO EM AMBIENTES DIGITAIS NEAD

Turma. PowerPoint 2003

Mozart de Melo Alves Júnior

COMO COLABORAR NO WIKI DO MOODLE 1. Orientações para produção escolar colaborativa no wiki do Moodle:

Índice. Manual Backup Online. 03 Capítulo 1: Visão Geral

Sistema de Recursos Humanos

MANUAL DO USUÁRIO. Guia de orientações e conceitos para manipulação da plataforma Miraklon. VERSÃO Vigência

Agente Administrativo do MTE

O Microsoft Office é composto por diversos softwares, dentre eles o Word, o Excel, o Access e o Power Point.

Pesquisa e organização de informação

W o r d p r e s s 1- TELA DE LOGIN

Table of Contents. PowerPoint XP

BACKUP ONLINE PASSOS PARA CONFIGURAÇÃO INICIAL DO PRODUTO

Manual do usuário. Softcall Java. versão 1.0.5

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - SLIM

Mozart de Melo Alves Júnior

Manual de Gerenciamento de Conteúdo

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - MILLENNIUM

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

2. INSTALAÇÃO E CONFIGURAÇÃO

SSE 3.0. Guia Rápido. Módulo Secretaria. Nesta Edição

SuperStore. Sistema para Automação de Óticas. MANUAL DO USUÁRIO (Módulo Vendas e Caixa)

WORD. Professor: Leandro Crescencio Colégio Politécnico 1

Associação Educacional Dom Bosco Curso de Engenharia 1º ano

Procedimentos para Instalação do Sisloc

USANDO O ROUNDCUBE WEBMAIL

QualiQuantiSoft Versão 1.3c

EXEMPLO DE COMO FAZER UMA MALA DIRETA

Manual SAGe Versão 1.2 (a partir da versão )

Configuração de assinatura de

Manual do Painel Administrativo

- Acessar o sistema. Para acessar o sistema digite o endereço eletronico e clique em login na barra de menus.

Manual do Spectacle. Boudhayan Gupta Boudhayan Gupta Tradução: André Marcelo Alvarenga

Guia Sphinx: instalação, reposição e renovação

Apostilas OBJETIVA Escrevente Técnico Judiciário TJ Tribunal de Justiça do Estado de São Paulo - Concurso Público Índice

WebEDI - Tumelero Manual de Utilização

IMPORTANTE: O sistema Off-line Dr.Micro é compatível com os navegadores Mozilla Firefox e Internet Explorer.

Como incluir artigos:

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Microsoft Word INTRODUÇÃO

BrOffice.org 2.4 Assistentes

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

Nova versão: Para School Control e acima, combinado com uso do Windows 7.

STK (Start Kit DARUMA) Utilizando conversor Serial/Ethernet com Mini-Impressora DR600/DR700.

Universidade Federal do Mato Grosso - STI-CAE. Índice

MANUAL DE UTILIZAÇÃO

Iniciação à Informática

MANUAL DO PVP SUMÁRIO

SuperStore Sistema para Gestão de Óticas. MANUAL DO USUÁRIO (Ordem de Serviço)

MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Mobile

ANDRÉ APARECIDO DA SILVA APOSTILA BÁSICA SOBRE O POWERPOINT 2007

Microsoft Office PowerPoint 2007

Manual do Usuário. Minha Biblioteca

MANUAL DO SIGPOL 3.0 MÓDULO DOCUMENTOS

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Smart Laudos 1.9. A Forma Inteligente de Criar seus Laudos Médicos. Manual do Usuário

MANUAL DO ANIMAIL Terti Software

LIÇÃO 1 - USANDO O GRAVADOR DE MACROS

Manual de Utilização

UNIVERSIDADE FEDERAL DO AMAPÁ PRÓ REITORIA DE ADMINISTRAÇÃO E PLANEJAMENTO DEPARTAMENTO DE INFORMÁTICA. Manual do Moodle- Sala virtual

Gestão inteligente de documentos eletrônicos

Banco de Dados Microsoft Access: Criar tabelas. Vitor Valerio de Souza Campos

PASSO A PASSO MOVIE MAKER

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

MANUAL BACKUP XDENTAL 2012

Modo Estrutura é o ambiente de definição e estruturação dos campos, tipos de dados, descrição e propriedades do campo.

Tela Inicial: O Banco de Dados e seus objetos:

Google Drive: Acesse e organize seus arquivos

Relatórios Documentos Simulador Quadrante Quadrante Quadrante Quadrante Alterar Senha...

Serviço Técnico de Informática. Curso Básico de PowerPoint

Manual para conversão de Teses e Dissertações em PDF

Edidoc. Copyright , ProDesk Consultoria e Treinamento. Porto Alegre/RS, Brasil.

Microsoft PowerPoint 2003

Transcrição:

Criando documentos de texto no BrOffice com macros e formulários Introdução Como forma de compartilhar a experiência acumulada no processo de criação de formulários e macros do BrOffice.org, para confecção de documentos de comunicação administrativa escrita utilizados pela CAIXA ECONÔMICA FEDERAL, elaboramos esta cartilha técnica, que descreve cada etapa do processo de desenvolvimento. O presente documento é destinado a pessoas e organizações interessadas em utilizar o BrOffice, para criação de documentos padronizados e direcionado a usuários e desenvolvedores com conhecimento básico na formatação de documentos com editor de textos e na linguagem BASIC. As etapas do desenvolvimento compreendem: - A preparação do modelo, que consiste na confecção de um arquivo de texto que vai servir de base para criar um novo documento; - A criação do formulário e macro, que consiste em escrever a macro que vai interagir com o usuário; - E por fim, o empacotamento e instalação. Como resultado teremos um suplemento do BrOffice que pode ser distribuído e instalado em outras máquinas. A seguir, detalhamos cada uma destas etapas. 2

Sumário Introdução... 2 O modelo... 4 Estilos de página... 5 Estilos de parágrafo... 6 Estilos de lista... 7 Inserindo os favoritos...8 A macro... 12 Desenhando o formulário... 13 Escrevendo a macro... 16 O Suplemento... 23 Criando o suplemento...23 Instalando o suplemento...29 Leitura complementar... 31 Developer's Guide... 31 Como distribuir suas macros com um addon... 31 http://www.broffice.org.br/macros http://openoffice.org.br/files/addons1_1_pt_br.zip Ferramenta Xray... 31

Criando documentos de texto no BrOffice com macros e formulários O modelo O modelo é um documento de texto que é usado como base para se criar os novos documentos. Preparar o modelo consiste em formatar as margens, cabeçalhos, rodapés, fontes, parágrafos e os favoritos (ou bookmarks). Para criarmos o modelo, iniciamos o Writer com um novo documento em branco. O próximo passo é efetuar a formatação do documento. Para tanto utilizaremos o recurso de estilos do Writer. Os estilos são manipulados pelo painel Estilos e formatação. O Writer divide os estilos em categorias. Estilos de parágrafo, estilos de caractere, estilos de quadro, estilos de página, e estilos de lista. (figura 2). O acesso ao painel é feito pelo menu Formato, opção Estilos e formatação, ou pela tecla de atalho F11. (figura 1) Figura 1: Menu de acesso ao painel Estilos e formatação 4

Figura 2: Painel Estilos e formatação Estilos de página Figura 3: Diálogos de formatação de estilos de página

Criando documentos de texto no BrOffice com macros e formulários O estilo de página controla, entre outras coisas, margens, tamanho do papel, cabeçalhos e rodapés. Cada novo documento possui naturalmente um estilo de página associado, nomeado de padrão. Em alguns documentos a primeira página possui características diferentes das demais. Para essa formatação, é preciso aplicar um estilo diferente na primeira página. No painel Estilos e formatação escolha a opção estilos de página, e efetue um duplo-clique sobre o estilo existente Primeira página. Isso irá aplicar o estilo na página atual do documento, ou seja, a página 1. Como dito antes, o estilo inicial é o estilo padrão. O próximo passo é ajustar o estilo para refletir o formato do documento. No painel, clique sobre o nome do estilo (botão direito) e selecione modificar. No diálogo estilo de página (figura 3) ajuste o tamanho do papel, as margens, e se necessário, o cabeçalho e rodapé. Observe na aba organizador que no campo próximo estilo o valor é "padrão". Isto significa que o estilo padrão será aplicado às páginas subseqüentes do documento, quando o documento tiver mais de uma página. É necessário, portanto, formatar também o estilo padrão repetindo os passos anteriores. Verifique que isso só se justifica quando a primeira página possui alguma formatação diferente das demais. Se o documento a ser criado possuir um formato único em todas as páginas, basta ajustar o estilo padrão. Próxima etapa, formatar os estilos de parágrafo. Estilos de parágrafo Figura 4: Diálogos de formatação de estilos de parágrafo 6

Finalizados os estilos de página, devemos formatar os estilos de parágrafo. Essa formatação inclui principalmente a definição da fonte, do alinhamento do texto, do espaçamento entre parágrafos. Crie ou modifique tantos estilos quantos forem necessários, de acordo com a complexidade do seu documento. No painel Estilos e formatação clique no ícone Estilos de parágrafo. Com um clique direito sobre um estilo escolha Novo... ou Modificar..., para modificar um estilo ou criar um novo. No diálogo Estilo de parágrafo (figura 4), faça os ajustes necessários. Estilos normalmente necessários em um documento formatam os tópicos, assinaturas, vocativos, endereços, cabeçalhos e rodapés. Esta etapa compreende apenas a criação dos estilos. A aplicação dos mesmos se dará posteriormente. A próxima etapa é formatar os estilos de lista. Estilos de lista Os estilos de lista são usados para formatar as listas numeradas ou de marcadores. Por exemplo, se o documento possuir tópicos numerados, é aqui que definimos o estilo de numeração. O procedimento é idêntico a formatação dos estilos de página e de parágrafo. Aqui configuramos o estilo dos números, espaçamento do texto, subníveis, entre outros. Ao fim do processo, precisamos associar o estilo de numeração a um estilo de parágrafo. Uma hipótese é termos criado um estilo de parágrafo chamado tópicos, para formatar os tópicos do documento. E criamos um estilo de lista chamado numeração de tópicos para formatar a numeração. Para associarmos os dois estilos, vamos ao diálogo estilos de parágrafo (figura 4), para modificar o estilo tópicos e na aba Numeração selecionamos o estilo recém criado. Feito isto, quando for ativada a numeração em um parágrafo de estilo tópicos, a numeração irá seguir a formatação do estilo numeração de tópicos. Além destes, temos também os estilos de caractere e de quadro, que não serão abordados nesta cartilha. O passo seguinte é preparar o documento, aplicando os estilos aos parágrafos e inserindo os favoritos. Inserindo os favoritos Depois de formatar os estilos, passamos a etapa de aplicar os estilos ao documento, e inserir os favoritos. Os favoritos, também chamados de bookmarks, são marcas em pontos diversos do documento que utilizaremos para inserção de texto através da macro. Os bookmarks devem ser

Criando documentos de texto no BrOffice com macros e formulários estrategicamente posicionados de acordo com o documento que será criado. Considerando um documento simples de exemplo como o da figura 5, teríamos o seguinte cenário: Figura 5: Documento de exemplo com os bookmarks (itens numerados) ítem 1 - Neste ponto vai ficar o primeiro bookmark, que vamos chamar de identificacao, para inclusão da identificação e número do documento; ítem 2 - bookmark chamado local, para inclusão do local e data. ítem 3 - bookmark destinatario; ítem 4 - bookmark vocativo; ítem 5 - bookmark texto; ítem 6 - bookmark encerramento e ítem 7 - bookmark assinatura. A inclusão do bookmark é feita pelo menu Inserir, opção "Favoritos...". A inclusão no 8

documento ocorre na posição corrente do cursor, então precisamos posicionar o cursor na posição desejada e acessar o menu, conforme figura 6. Figura 6: Menu de acesso a inclusão de bookmarks Após escolher a opção no menu, é exibido o diálogo de inclusão, onde informamos o nome do bookmark a ser criado. Neste diálogo são listados os bookmarks existentes no documento. (figura 7). Figura 7: Menu de acesso a inclusão de bookmarks É preciso repetir esse processo para os 7 (sete) bookmarks do nosso exemplo.

Criando documentos de texto no BrOffice com macros e formulários Observe que o bookmark incluído não aparece no documento, isto é, ele fica invisível. Mais a frente veremos como verificar os bookmarks existentes e testar o seu funcionamento. Após o término do procedimento, o documento estará como a figura 8. Como não é possível visualizar o bookmark utilizamos a ferramenta navegador, disponível no menu Editar, opção Navegador, ou pela tecla de atalho F5. Sob o ítem Marcadores (figura 9), podemos visualizar os bookmark recém criados. Figura 8: Documento após a criação dos bookmarks (indicados em verde) Para verificar se os bookmark foram posicionados corretamente, efetuamos um duplo-clique sobre o nome do bookmark no navegador (figura 9), o que faz com que o foco do cursor mova-se para o bookmark selecionado. Figura 9: Navegador, com destaque para os bookmarks (marcadores) E para finalizar esta etapa precisamos salvar o documento no formato de um modelo do Writer. 10

No menu Arquivo, opção Salvar como..., alteramos o tipo de arquivo de "Texto do OpenDocument (.odt)" para "Modelo de texto do OpenDocument (.ott)". O modelo salvo será usado na próxima etapa, que é a criação da macro. A macro Nesta etapa vamos escrever a macro e o formulário para interagir com o modelo que criamos. Dentre as linguagens suportadas utilizaremos o StarBasic, visto que o Broffice possui um editor integrado. Acessamos o editor interno através do menu Ferramentas, opção Macros, Organizar macros, BrOffice.org Basic... No diálogo Macros do BrOffice.org Basic,vamos no botão Organizador. No diálogo Organizador de Macros, vamos na aba Bibliotecas, e então escolhemos o botão "Nova...". A biblioteca permite organizar nossas macros e formulários, fazendo um isolamento de outras macros. Vamos nomear a nova biblioteca de minhabiblioteca. (figura 10) Figura 10: Sequência de diálogos para criar uma nova biblioteca Ainda no diálogo Organizador de macros, vamos na aba Caixas de diálogo, selecionamos a biblioteca criada no passo anterior e no botão "Novo..." criamos nosso formulário que vai se chamar meuformulario. (figura 11).

Criando documentos de texto no BrOffice com macros e formulários Figura 11: Sequência de diálogos para criar um novo formulário Por fim, na aba Módulos, botão "Novo...", criamos o módulo meumodulo.(figura 12). Figura 12: Sequência de diálogos para criar um novo módulo Agora podemos fechar os diálogos abertos e voltar ao editor. Desenhando o formulário Antes de escrever qualquer macro vamos preparar o formulário que fará a interação com o usuário. Para isso, no editor de código, selecionamos a aba meuformulario. Para montar o diálogo temos a caixa de ferramentas, localizada no menu Exibir, opção Barra de 12

ferramentas. Através dessa barra, desenharemos o formulário incluindo os controles e ajustando suas propriedades. A figura 13 mostra a caixa de ferramentas e o diálogo em si. Para incluirmos controle no diálogo basta selecionar na caixa de ferramentas e desenhar diretamente no formulário, similar a outros ambientes de desenvolvimento. Na caixa de ferramentas, além dos controles comuns de texto, rótulo, botão de opção, caixa de seleção, de listagem e de combinação, temos controles especializados para criar campos de data, hora, moeda, número, seleção de arquivos, e outros. A figura 14, mostra a descrição de alguns botões encontrados na barra de ferramentas. Figura 13: Barra de ferramentas e o diálogo meuformulario No nosso formulário de exemplo, vamos utilizar os controles : campo de rótulo: para criar as legendas dos campos; caixa de texto: para entrada da cidade, destinatário e assinatura do documento; caixa de combinação: para selecionar a forma de tratamento, a expressão de encerramento e o destinatário; campo numérico: para entrada do número do documento; campo de data: para seleção da data do documento no calendário e; botão: para os botões "Ok" e "Cancelar"; Figura 14: Descrição dos botões Após a inclusão dos controles, nosso formulário, ou caixa de diálogo, deve estar como na figura 15.

Criando documentos de texto no BrOffice com macros e formulários Figura 15: Formulário após inclusão dos controles Cada tipo de controle possui propriedades particulares, que são usadas para configurar o seu comportamento. Por exemplo, em um controle do tipo campo de data podemos definir a data mínima e máxima permitidas, o formato da data, se vai estar disponível um calendário para seleção de data, etc. Nas caixas de combinação devemos criar a lista com os valores, como nos exemplos na figura 16. Figura 16: Exemplo de valores para uso nos controles do formulário Dentre as propriedades de cada controle, devemos dar atenção especial ao nome, pois a referência ao controle na macro é feita pelo nome. Obedecendo a seqüência de campos da figura 15, temos: txtnumero, txtdata, txtcidade, cbodestinatario, txtdestinatario, cbotratamento, cboencerramento e txtassinatura. Este é o fim desta etapa. Nosso formulário está pronto. Escrevendo a macro Agora estamos prontos para escrever a macro. No editor, alternamos para o módulo criado anteriormente: meumodulo. 14

O primeiro passo é declarar uma variável para referenciar o formulário. Embora a declaração de variáveis não seja obrigatória no basic, precisamos que esta assuma o escopo global. Portanto ela deve ser declarada fora de uma função ou subrotina no módulo. Para declarar uma variável usamos a instrução "dim". REM ***** BASIC ***** ' Declaração Dim dlg As Object No próximo passo, vamos escrever a subrotina que carrega e mostra o formulário. Vamos utilizar a subrotina Main que foi criada junto com o módulo. Sub Main DialogLibraries.LoadLibrary("minhaBiblioteca") dlg = CreateUnoDialog(DialogLibraries.minhaBiblioteca.meuFormulario) dlg.execute() End Sub Nestas linhas, basicamente, carregamos a Biblioteca "minhabiblioteca", para depois carregamos o formulário através a função CreateUnoDialog e o atribuímos a variável dlg. Por fim, chamamos o método Execute() do diálogo. Executando essa porção de código o diálogo vai ser exibido, porém ainda não é funcional. Precisamos escrever as rotinas que vão responder aos eventos de clique nos botões Cancelar e Ok. Vamos começar pelo botão Cancelar. O código é o seguinte: Sub btncancel_click dlg.endexecute() End End Sub Primeiro chamamos o método endexecute() do diálogo, que encerra sua execução. Depois usamos a instrução End para finalizar a macro em si. Por fim escrevemos a rotina btnok_click que vai responder ao evento clique no botão OK. Sub btnok_click End Sub As etapas seguintes são :

Criando documentos de texto no BrOffice com macros e formulários 1. Armazenar os controles do diálogo em variáveis. Fazemos isso com o método getcontrol() do diálogo. Sub btnok_click txtnumero = dlg.getcontrol("txtnumero") End Sub Este código armazena o campo txtnumero na variável de mesmo nome. Fazemos isso para todos os campos do formulário. 2. Validar o preenchimento do formulário, verificando se os campos foram corretamente preenchidos. If txtnumero.text = "" Then MsgBox "Informe o número do documento.", 48, "Atenção" txtnumero.setfocus() Exit Sub End If Neste trecho de código verificamos apenas se o campo txtnumero está vazio, através da propriedade Text. Caso não esteja preenchido emitimos uma mensagem ao usuário, movemos o foco para o controle e interrompemos a execução da rotina. Ou seja, enquanto o campo não for preenchido a macro não será executada. Fazemos isso para os campos que forem obrigatórios. Além da validação de preenchimento, podemos fazer qualquer outro tipo de validação aqui. 3. Criar o documento. Dim doc, url, args() url = ConvertToURL("c:\meuModelo.ott") doc = StarDesktop.loadComponentFromUrl(url, "_blank", 0, args()) Usamos a função ConvertToURL() para transformar o caminho onde está o modelo em uma url para uso com a próxima instrução. Esta função pode receber como parâmetro o caminho para um arquivo no disco local, um caminho UNC, um endereço HTTP, entre outros. Daí criamos o documento, baseado no modelo, e armazenamos na variável doc. 4. Inserir o texto no documento. doc.bookmarks.getbyname("identificacao").anchor.setstring("documento Nº " & txtnumero.text)...... doc.currentcontroller.viewcursor.gotorange(doc.bookmarks.getbyname ("texto").anchor, false) 16

O texto deve ser inserido nos bookmark criados anteriormente. Utilizamos o método getbyname() da coleção Bookmarks do documento, para recuperar o bookmark e em seguida utilizamos o método setstring() da propriedade Anchor do bookmark. Repetimos esse processo para todos os bookmark, exceto o bookmark texto. O bookmark texto é usado para posicionarmos o cursor naquele ponto. Usamos o método gotorange(), passando como parâmetro a propriedade Anchor do bookmark. A digitação a partir deste ponto será feita pelo usuário. Por fim precisamos fechar o diálogo e encerrar a execução da macro. Podemos usar a rotina btncancel_click que foi escrita justamente para este fim. A seguir, como vai ficar o código da macro depois de finalizado. REM ***** BASIC ***** ' Declarações Dim dlg As Object ' Rotina principal Sub Main ' carrega a bilioteca minhabibilioteca, cria e exibe o diálogo DialogLibraries.LoadLibrary("minhaBiblioteca") dlg = CreateUnoDialog(DialogLibraries.minhaBiblioteca.meuFormulario) dlg.execute() End Sub ' Botão cancelar Sub btncancel_click ' fecha o diálogo e termina a macro dlg.endexecute() End End Sub ' Botão Ok Sub btnok_click ' recupera os controles no diálogo txtnumero = dlg.getcontrol("txtnumero") txtdata = dlg.getcontrol("txtdata") txtcidade = dlg.getcontrol("txtcidade") cbodestinatario = dlg.getcontrol("cbodestinatario") txtdestinatario = dlg.getcontrol("txtdestinatario") cbotratamento = dlg.getcontrol("cbotratamento") cboencerramento = dlg.getcontrol("cboencerramento") txtassinatura = dlg.getcontrol("txtassinatura")

Criando documentos de texto no BrOffice com macros e formulários ' validação dos dados digitados ' somente 1 campo para fins de exemplo If txtnumero.text = "" Then MsgBox "Informe o número do documento.", 48, "Atenção" txtnumero.setfocus() Exit Sub End If ' dados validados. continua ' cria o documento Dim doc, url, args() url = ConvertToURL("c:\meuModelo.ott") doc = StarDesktop.loadComponentFromUrl(url, "_blank", 0, Args()) ' insere o texto nos bookmark doc.bookmarks.getbyname("identificacao").anchor.setstring("documento Nº " & txtnumero.text) doc.bookmarks.getbyname("local").anchor.setstring(txtcidade.text & ", " & txtdata.text) doc.bookmarks.getbyname("destinatario").anchor.setstring(cbodestinatario.text & Chr(10) & txtdestinatario.text) doc.bookmarks.getbyname("vocativo").anchor.setstring(cbotratamento.text) doc.bookmarks.getbyname("encerramento").anchor.setstring(cboencerramento.text) doc.bookmarks.getbyname("assinatura").anchor.setstring(txtassinatura.text) ' move o foco para o bookmark "texto" doc.currentcontroller.viewcursor.gotorange(doc.bookmarks.getbyname ("texto").anchor, false) ' fecha o diálogo e termina a macro btncancel_click End Sub Resta agora associar as rotinas com os botões do formulário. No formulário, vamos na folha de propriedades do botão Cancelar, aba eventos. Da lista de eventos vamos selecionar o evento "Ao iniciar", clicando no botão "..." conforme (figura 17). 18

Figura 17: Folha de propriedades do botão cancelar, aba Eventos No diálogo seguinte, figura 18, selecionamos a opção atribuir. Nesta tela é possível associar macros a outros eventos e não apenas ao evento selecionado na tela anterior, bastando para isso selecionar um evento diferente na lista. Figura 18: Diálogo Atribuir macro Ao clicarmos no botão "atribuir", temos o diálogo "Seletor de macro". (figura 19).

Criando documentos de texto no BrOffice com macros e formulários Figura 19: Deletor de macro Navegamos até o módulo meumodulo e selecionamos a macro btncancel_click e confirmamos pelo botão Ok. Agora ao clicarmos no botão Cancelar no formulário, será executada a macro associada. Repetimos esse processo para o botão Ok, associando o evento "Ao iniciar" à macro btnok_click A partir deste ponto, já podemos testar o funcionamento da macro. Para isso vamos a janela do moduloprincipal e clicamos no botão "Executar o Basic" localizado na barra de ferramentas "Macro". (figura 20) Figura 20: Barra de ferramentas Macro, com destaque para o botão Executar o BASIC Ao clicarmos neste botão, será executada a subrotina Main(), que é a rotina que carrega e mostra o formulário Continuando o teste preenchemos o formulário conforme figura 21 e clicamos Ok. 20

Figura 21: Formulário preenchido Será então executada a macro que cria o novo documento e insere o texto nos bookmark. A macro btnok_click. O documento criado vai ficar como na figura 22. Figura 22: Documento criado pela macro Observe que o cursor fica posicionado no parágrafo exato para que o usuário faça a digitação do texto. A fonte, margens, o espaçamento entre parágrafos é o definido no modelo, permitindo que os documentos criados pela macro sigam sempre o mesmo padrão, que é o nosso objetivo. A próxima etapa é o empacotamento como um suplemento do BrOffice.

Criando documentos de texto no BrOffice com macros e formulários O Suplemento Para distribuir nossa macro vamos utilizar o recurso de suplementos do BrOffice, também chamados de Add-On. O suplemento permite a distribuição das macros e formulários, e a sua fácil instalação em outras máquinas. Criando o suplemento Para executar esta tarefa vamos precisar dos arquivos da macro e do formulário que criamos. Os arquivos, no windows xp, ficam salvos no caminho "<perfil do usuário>\dados de aplicativos\broffice.org2\user\basic\minhabiblioteca", conforme figura 23. Figura 23: Arquivos para a criação do suplemento Precisamos copiar a pasta "minhabiblioteca" para outro local no disco, por exemplo C:\minhaBiblioteca. Depois, no Organizador de macros, figura 10, devemos excluir a biblioteca que criamos nos passos anteriores. Para criação do suplemento podemos utilizar uma ferramenta disponível no endereço de internet http://openoffice.org.br/files/addons1_1_pt_br.zip. ou em http://www.broffice.org.br/macros. Trata-se de um documento de texto do BrOffice intitulado "Como distribuir suas macros com um Addon" com orientações detalhadas sobre o suplemento e suas possibilidades, além de ter uma macro que auxilia no processo de criação e compressão do suplemento. O documento foi escrito por Bernard Marcelly e traduzido para o português por Noelson Alves Duarte e é distribuído sob a licença LGPL. No subitem "2.2 Criação do arquivo de configuração", temos o botão "Criar arquivo XML" que executa o assistente parar criarmos o arquivo de configuração addon.xcu, base para criação do suplemento. Clicando no botão "Próximo >>" temos o diálogo da figura 24. 22

Figura 24: Criando o suplemento passo 1 Na caixa arquivo de script principal, selecionamos o arquivo script.xlb localizado na pasta minhabiblioteca. Também informamos um nome para o suplemento. Depois, basta clicar Ok para ir para o próximo passo. Figura 25: Criando o suplemento passo 2 No passo 2 escolhemos a opção Adicionar um item de menu no menu Principal. E vamos para o próximo passo. Figura 26: Criando o suplemento passo 3

Criando documentos de texto no BrOffice com macros e formulários O passo 3, figura 26, consiste em selecionar em que contexto do BrOffice vai ser criado o menu. O padrão é todos. Clicamos no botão "Próximo >>". Figura 27: Criando o suplemento passo 4 A figura 27 ilustra o passo 4, onde informamos o título do menu e clicamos no botão "Adicione este texto". Ao fazer isso a caixa Títulos já definidos aqui vai ter seu valor alterado de 0 para 1. Ao clicar em "Concluído", recebemos uma mensagem que agora devemos criar um submenu, O que será feito pelo diálogo da figura 28. Figura 28: Criando o suplemento passo 5 Para criarmos o submenu, o procedimento é o mesmo. Informamos o título, clicamos em "Adicione este texto" e em seguida em "Concluído". A diferença do menu para o submenu é que ao concluirmos este último, somos direcionados para tela onde devemos informar qual ação será executada quando um usuário selecionar esta opção no menu. Vamos escolher a opção "Execute a macro", informando o nome da biblioteca, do módulo e finalmente da macro que será executada. (figura 29) 24

Figura 29: Criando o suplemento passo 6 Clicando em "Próximo >>" vamos para o diálogo que permite selecionar uma imagem para usar como ícone do menu, figura 30. Figura 30: Criando o suplemento passo 7 Vamos escolher a opção "Sem imagem", e vamos para o passo 8. Na sequência, temos a opção de criar outro submenu ou concluirmos nosso arquivo de configuração, figura 31.

Criando documentos de texto no BrOffice com macros e formulários Figura 31: Criando o suplemento passo 8 No nosso exemplo, vamos escolher "Concluído" e criar o arquivo addon.xcu. Figura 32: Criando o suplemento passo 9 O último passo, na figura 32, mostra a mensagem que o arquivo foi criado e um resumo das ações, que foram criar um menu Principal chamado Meus Formulários, e um submenu chamado Meu Documento, que ao ser acionado vai executar a macro minhabiblioteca.meumodulo.main. Ainda nesta tela temos o botão "Comprimir o Addon". Clicando nesta opção vamos finalmente gerar nosso suplemento que será salvo como "C:\minhaBiblioteca.zip". 26

Instalando o suplemento Para o teste final vamos instalar nosso suplemento. Isto é feito com o aplicativo unopkg, localizado no caminho: <pasta de instalação do BrOffice>\program\. A instalação é feita digitando o comando a seguir, numa janela prompt de comandos do windows: <instalação_broffice>\program\unopkg add --shared c:\minhabiblioteca.zip Uma lista completa das opções do aplicativo unopkg pode ser obtida passando o argumento -help, como no exemplo abaixo: <instalação_broffice>\program\unopkg --help A instalação do addon pode ser feita também em modo gráfico, porém o aplicativo em modo texto permite que a instalação seja feita através de script, o que se torna interessante quando a distribuição ocorrer em grande quantidade de máquinas. Para testar nosso suplemento, após instalado, basta abrirmos o BrOffice e vamos percerber um ítem novo no menu, figura 33. O menu Meus Formulários e o submenu Meu Documento. Figura 33: Barra de menus com destaque para o novo menu criado pelo suplemento Selecionando o menu Meu Documento, vamos executar a macro que vai nos mostrar o formulário e permitir criarmos o documento. Figura 34.

Criando documentos de texto no BrOffice com macros e formulários Figura 34: Testando o suplemento Ainda, para o correto funcionamento da macro, não podemos esquecer que o modelo precisa estar acessível, seja no sistemas de arquivo local, na rede ou num endereço http. 28

Leitura complementar Developer's Guide http://wiki.services.openoffice.org/wiki/documentation/dev_guide/openoffice.org_developers_guide Como distribuir suas macros com um addon Orientações de como distribuir as macros através de suplementos http://www.broffice.org.br/macros http://openoffice.org.br/files/addons1_1_pt_br.zip Ferramenta Xray Xray é uma ferramenta para o programador de macros Basic usando a API do OpenOffice. Seu propósito é exibir as propriedades, métodos, serviços e interfaces de uma variável do tipo objeto. http://www.broffice.org.br/macros http://openoffice.org.br/files/xraytool51_br.zip