diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2012-08-20 20:02:39 +0200 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2012-08-20 20:02:39 +0200 |
commit | e2a67e0b1f3ee8890ba2fce71d41def0e114aca2 (patch) | |
tree | ccbc5b26503151ec4eeb450a3b4498924ad7cb55 /koffice-i18n-pt_BR/docs/koffice/kexi | |
download | koffice-i18n-e2a67e0b1f3ee8890ba2fce71d41def0e114aca2.tar.gz koffice-i18n-e2a67e0b1f3ee8890ba2fce71d41def0e114aca2.zip |
Initial import of extracted tarballs
Diffstat (limited to 'koffice-i18n-pt_BR/docs/koffice/kexi')
15 files changed, 5585 insertions, 0 deletions
diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/Makefile.am b/koffice-i18n-pt_BR/docs/koffice/kexi/Makefile.am new file mode 100644 index 00000000..babf802f --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/Makefile.am @@ -0,0 +1,4 @@ +KDE_LANG = pt_BR +SUBDIRS = $(AUTODIRS) +KDE_DOCS = AUTO +KDE_MANS = AUTO diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/basics.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/basics.docbook new file mode 100644 index 00000000..4bc87441 --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/basics.docbook @@ -0,0 +1,540 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> + + --> + +<chapter id="basics"> + <title +>Fundamentos do &kexi; </title> + + <sect1 id="doc-vs-project"> + <title +>Bancos de Dados do &kexi; </title> + <para +>Muitas aplicações, como o OpenOffice.org ou o Microsoft Excel criam arquivos chamados <firstterm +>documentos</firstterm +>. O &kexi; também cria arquivos, só que normalmente refere-se a eles como sendo <firstterm +>arquivos de bancos de dados do &kexi;</firstterm +> ou simplesmente <firstterm +>arquivos de bancos de dados</firstterm +>. Os arquivos de bancos de dados do &kexi; possuem normalmente a extensão <filename +>.kexi</filename +>. </para> + +<!-- TODO: Picture of Kexi database icon? --> + + <para +>Além de armazenar os seus bancos de dados nos arquivos, o &kexi; pode também usar os bancos de dados em <firstterm +>servidores dedicados</firstterm +>, razão pela qual se referiu anteriormente aos <emphasis +>arquivos de bancos de dados</emphasis +> e não simplesmente <emphasis +>bancos de dados</emphasis +>. </para> + + <para +>O termo <firstterm +>projeto do &kexi;</firstterm +>, ou simplesmente <firstterm +>projeto</firstterm +>, também é usado para se referir a um banco de dados do &kexi;, independentemente se é gravado num arquivo ou num servidor de banco de dados. </para> + </sect1> + + <sect1 id="new-database"> + <title +>Criando um Novo Arquivo de Banco de Dados </title> + + <procedure> + <step> + <para +>Execute o &kexi; ou, se já estiver rodando, use a opção <menuchoice +> <shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>N</keycap +></keycombo +> </shortcut +> <guimenu +>Arquivo</guimenu +><guimenuitem +>Novo</guimenuitem +> </menuchoice +>. </para> + </step> + <step> + <para +>Clique no botão <guibutton +>OK</guibutton +> para confirmar a criação do projeto. </para> + </step> + <step> + <para +>Insira um nome para o seu projeto e clique em <guibutton +>Próximo</guibutton +>. </para> + </step> + <step> + <para +>Use o navegador de arquivos para escolher a pasta onde deseja gravar o seu arquivo de banco de dados. Você poderá alterar o nome do arquivo no campo de <guilabel +>Localização:</guilabel +>, se não gostar do que é sugerido. </para> + </step> + <step> + <para +>Clique em <guibutton +>Criar</guibutton +>. </para> + </step> + </procedure> + </sect1> + + <sect1 id="main-window"> + <title +>A Janela Principal do &kexi; </title> + <para +>O <guilabel +>Navegador do Projeto</guilabel +> e o <guilabel +>Editor de Propriedades</guilabel +> são mostrados em painéis bem definidos de cada lado da janela-filha. Eles podem ser redimensionados ou ocultos de acordo com a necessidade. Um painel poderá ser oculto clicando-se na pequena cruz na parte superior do mesmo (logo abaixo da barra de ferramentas). </para> + <para +>Os objetos do banco de dados (tabelas, pesquisas, etc.) listados no <guilabel +>Navegador do Projeto</guilabel +> podem ser abertos clicando-se (ou fazendo duplo-clique, dependendo da configuração global do &kde;) nos seus nomes. </para> + +<sect2 id="main-application-elements"> +<title +>Elementos principais da aplicação </title> +<!-- +<br +><img src="img/04_06_00_main_window.png"> +<br +>Kexi's main window<br +><br> +--> +<itemizedlist> +<title +>Os elementos principais da janela da aplicação &kexi; são: </title> +<listitem> +<para +><emphasis +>Barra de Menu</emphasis +></para> +<para +>contém os comandos disponíveis para a aplicação. Você irá encontrar uma descrição detalhada dos vários comandos no apêndice. </para> +</listitem> +<listitem> +<para +><emphasis +>Barra de ferramentas</emphasis +></para> +<para +>contém os comandos usados com maior freqüência. </para> +</listitem> + +<listitem> +<!-- @todo: link to the various chapters from the listitems --> +<para +><emphasis +>Painel do <guilabel +>Navegador do Projeto</guilabel +></emphasis +></para> +<para +>contém uma lista com os vários objetos (tabelas, pesquisas, formulários, ...) criado dentro do projeto atualmente aberto. O navegador também contém uma pequena barra de ferramentas com os comandos mais usados, relacionados com os objetos do banco de dados. </para> +</listitem> + +<listitem> +<para +><emphasis +>Painel dos <guilabel +>Objetos do banco de dados aberto</guilabel +></emphasis +></para> +<para +>uma área central da aplicação que ocupa a maior parte do espaço da tela. No caso do modo de interface IDEAl, contém abas selecionáveis que estão sempre maximizadas. No modo de janelas-filhas, contém janelas flutuantes. </para> +</listitem> + +<listitem> +<para +><emphasis +>Painel de <guilabel +>Propriedades</guilabel +></emphasis +></para> +<para +>contém uma lista das propriedades do objeto ativo atualmente no banco de dados. Para alguns objetos (⪚, ítens gráficos do formulário), poderá consistir em várias abas. </para> +</listitem> + +<listitem> +<para +><emphasis +>Barra de tarefas</emphasis +></para> +<para +>contém uma lista das janelas abertas atualmente com objetos do banco de dados. Para o modo de interface IDEAl, está disponível como um conjunto de abas. Para o modo de interface com janelas-filhas, está disponível como um conjunto de botões que se comportam como a barra de tarefas do seu sistema operacional. </para> +</listitem> + +</itemizedlist> + +<sect3 id="project-navigator-pane"> +<title +>Painel do <guilabel +>Navegador do Projeto</guilabel +></title> +<para +>O painel do <guilabel +>Navegador do Projeto</guilabel +> é um dos elementos usados com maior freqüência na janela principal do &kexi;. O painel contém uma lista com todos os objetos criados dentro do projeto de banco de dados do &kexi; aberto atualmente. Os objetos estão divididos em grupos: tabelas, pesquisas, formulários. </para> +<para id="project-navigator-pane-toolbar" +>O painel do <guilabel +>Navegador do Projeto</guilabel +> contém uma <emphasis +>pequena barra de ferramentas para os comandos mais freqüentes</emphasis +> (da esquerda para a direita): <emphasis +>Abrir o objeto selecionado</emphasis +>, <emphasis +>Desenhar o objeto selecionado</emphasis +>, <emphasis +>Criar um novo objeto</emphasis +> e <emphasis +>Apagar o objeto selecionado</emphasis +>. </para> +<para +>Para cada objeto da lista, existe um menu de contexto que está disponível através do &RMB;. Por exemplo, este é o menu de contexto da tabela <emphasis +>pessoas</emphasis +>. </para> + +<para +>Realizar um duplo-clique com o &LMB; no nome do objeto na lista, permitirá abrir o objeto na Visão de Dados. Se a janela do objeto já estiver aberta, a ação simplesmente ativa a janela sem mudar o modo de visão. </para> +<para +>Lembre-se que o seu sistema operacional poderá estar configurado para lidar com cliques simples em vez de duplos. Neste caso, é suficiente clicar uma vez no nome do objeto para abrir a sua janela. </para> + +</sect3> + +<sect3 id="database-object-windows"> +<title +>Janelas dos objetos do banco de dados</title> + +<orderedlist> +<title +>Abrindo a janela de um objeto</title> +<listitem> +<para +>Selecione o objeto no <link linkend="project-navigator-pane" +>painel do Navegador do Projeto</link +>. </para> +</listitem> +<listitem> +<para +>Clique no botão <guibutton +>Abrir</guibutton +> na <link linkend="project-navigator-pane-toolbar" +>barra de ferramentas do painel do Navegador do Projeto</link +>. </para> +</listitem> +</orderedlist> + +<itemizedlist> +<title +>Comandos relacionados com janelas de objetos</title> +<listitem +><para +><emphasis +>Fechar uma janela de objeto</emphasis +></para> +<para +>Quando for usado o modo de interface IDEAl (o padrão), cada janela terá a sua própria aba. Passe o cursor do mouse sobre o ícone na aba. Um botão para <guibutton +>Fechar</guibutton +> ficará visível. Clicando nele, você irá fechar a aba. </para> +<para +>No modo de janelas-filhas, do lado direito de cada janela aberta, existem botões que você poderá usar para controlar a janela. Clique no primeiro do lado direito para fechar a janela. </para> +<para +>Em alternativa, independente do modo de interface que usar, você poderá selecionar a opção <menuchoice +><guimenu +>Janela</guimenu +><guimenuitem +>Fechar</guimenuitem +></menuchoice +> do menu. </para> +</listitem> +<listitem +><para +><emphasis +>Botões da janela para o modo de interface de janelas-filhas</emphasis +></para> +<!-- +<para> +<br +><img src="img/04_06_02_window_buttons.png"> +<br +>Window's buttons<br +><br> +</para> +--> +<para +>Os outros botões (da direita para a esquerda) podem ser usados para: maximizar, minimizar e desacoplar a janela. </para> +<para +>Existe um ícone pequeno à esquerda da barra de título, que poderá ser clicado para mostrar um menu de contexto com comandos relacionados com a janela. </para> +<!-- +<para +>See also Docking and undocking of the windows.</para> +--> +</listitem> +</itemizedlist> + +</sect3> + +<sect3 id="property-editor-pane"> +<title +>Painel do <guilabel +>Editor de Propriedades</guilabel +></title> +<para +>No painel do <guilabel +>Editor de Propriedades</guilabel +> você pode alterar as propriedades do objeto exibido na janela ativa. Dependendo do contexto, o painel consiste em uma ou mais abas. A primeira das Propriedades, que está sempre visível, contém a lista de propriedades disponíveis. </para> +<!-- +<para> +<img src="img/04_06_03_prop_panel.png"> +<br +>Property Editor<br +><br> +</para> +--> +<itemizedlist> +<title +>Regras para usar o Editor de Propriedades:</title> +<listitem> +<para +>Cada linha corresponde a uma única propriedade.</para> +</listitem> +<listitem> +<para +>Você poderá usar o mouse ou o teclado para mudar os valores das propriedades em particular.</para> +</listitem> +<listitem> +<itemizedlist> +<title +>Os tipos de valores de propriedades usados com maior freqüência são:</title> +<listitem> +<para +><emphasis +>um número;</emphasis +> você poderá inserir o valor diretamente, ou aumentá-lo ou diminuí-lo com o &LMB; nas setas. </para> +</listitem> +<listitem +><para +>texto</para +></listitem> +<listitem +><para +>uma lista de valores</para +></listitem> +<listitem +><para +><emphasis +>valor Sim/Não;</emphasis +> no formato de um botão que poderá comutar; o botão ligado significa um valor <guibutton +>Sim</guibutton +> (<emphasis +>verdadeiro</emphasis +>), enquanto o botão desligado significa um valor <guibutton +>Não</guibutton +> (<emphasis +>falso</emphasis +>). </para> +</listitem> +</itemizedlist> +</listitem> +<listitem +><para +>Não há necessidade de confirmar o valor alterado: as alterações são imediatamente visíveis após mudar para uma linha diferente da lista do Editor de Propriedades ou pressionando-se a tecla <keycombo +><keycap +>Enter</keycap +></keycombo +>. </para +></listitem> +<listitem> +<para +>Os nomes das propriedades alteradas recentemente e que ainda não tenham sido gravadas no banco de dados estão marcadas em negrito. </para> +</listitem> +<listitem> +<para +>Após alterar o valor de uma propriedade, aparece um botão especial para <guibutton +>Desfazer alterações</guibutton +> do lado direito da lista do Editor de Propriedades. Clicando-se nele, você poderá reverter o valor da propriedade ao seu original carregado do banco de dados, quando abriu o objeto do banco de dados. O botão só fica visível quando a propriedade ficar selecionada de fato. </para> +</listitem> +</itemizedlist> + +<itemizedlist> +<title +>O painel do Editor de Propriedades fica vazio se:</title> +<listitem +><para +>não estiver aberto qualquer objeto da banco de dados ou</para> +</listitem> +<listitem +><para +>a janela do objeto ativo do banco de dados não oferecer propriedades; é normalmente o caso quando for aberto na Visão de Dados em vez da Visão de Desenho </para> +</listitem> +</itemizedlist> + +<!-- +<para> +See also the list of keyboard shortcuts available for the Property Editor +pane in appendix Property Editor pane. +</para> +--> + +</sect3> + +</sect2> + + </sect1> + + <sect1 id="project-opening"> + <title +>Abrindo um arquivo de banco de dados do &kexi; existente </title> + <itemizedlist> + <title +>Para abrir um arquivo de banco de dados existente do &kexi;: </title> + <listitem +><para +>selecione-o na janela <guilabel +>Abrir Projeto Existente</guilabel +>; ou </para +></listitem> + <listitem +><para +>abra-o, clicando no ícone do arquivo '.kexi'. </para +></listitem> + </itemizedlist> + + <sect2 id="window-open-existing"> + <title +>Abrindo um arquivo de banco de dados na janela Abrir um Pro<guilabel +>jeto Existente</guilabel +> </title> + <itemizedlist> + <listitem +><para +>Execute o &kexi;. Você deverá ver o diálogo inicial <guilabel +>Escolher Projeto</guilabel +>. Escolha a aba <guilabel +>Abrir Projeto Existente</guilabel +>. Você verá o seguinte diálogo: </para +></listitem> + <listitem +><para +>Na lista <guilabel +>Localização atual</guilabel +>, escolha uma pasta que contenha um arquivo que você procure. </para +></listitem> + <listitem +><para +>Você poderá tanto escolher um arquivo como indicar o seu nome na caixa <guilabel +>Localização:</guilabel +>. </para +></listitem> + <listitem +><para +>Clique <guibutton +>OK</guibutton +>. </para +></listitem> + </itemizedlist> + + <sect3 id="open-existing-notes"> + <title +>Notas </title> + <itemizedlist> + <listitem +><para +>Por padrão, a lista <guilabel +>Filtro:</guilabel +> contém a opção <guilabel +>Projeto de Banco de Dados em Arquivo do Kexi</guilabel +> selecionada. No caso do arquivo que estiver procurando tiver outra extensão, você pode mudar a seleção do <guilabel +>Filtro:</guilabel +> para <guilabel +>Todos os Arquivos</guilabel +> para mostrar todos os arquivos disponíveis (independentemente da extensão). </para +></listitem> + <listitem +><para +>Se você tiver selecionado um arquivo de um tipo externo, como um arquivo MDB do MS Access, o &kexi; fornecerá a opção para importar o arquivo. </para +></listitem> + <listitem +><para +>Se você tiver selecionado um arquivo de <emphasis +>dados da conexão</emphasis +> (com a extensão .kexic) ou um <emphasis +>atalho para um projeto no servidor de banco de dados</emphasis +> (com a extensão .kexis), o &kexi; exibirá as janelas apropriadas. </para +></listitem> + </itemizedlist> + </sect3> + </sect2> + + <sect2 id="open-icon"> + <title +>Abrindo um arquivo de banco de dados do &kexi; existente, clicando no ícone do arquivo .kexi </title> + <para +>Clique no ícone do arquivo usando o seu gerenciador de arquivos ou na tela do seu computador. O &kexi; irá abrir este projeto de banco de dados automaticamente. </para> +<!-- <img src="icons/mime-kexiproject_sqlite.png" class="icon" +></img +> --> + <sect3 id="open-icon-notes"> + <title +>Notas </title> + <para +><emphasis +>Nota sobre os arquivos de bancos de dados acessados remotamente.</emphasis +> Você poderá querer abrir um arquivo de banco de dados que esteja localizado numa fonte remota (⪚, um servidor Web ou FTP ou um compartilhamento de MS Windows). O Ambiente de Trabalho K permite-lhe abrir arquivos de fontes remotas diretamente nas aplicações e salvar as alterações de volta na origem, mas este não é o caso dos arquivos de banco de dados. Clicar em um arquivo de banco de dados localizado numa origem remota, fará com que o arquivo seja transferido para uma pasta temporária no seu computador e todas as suas modificações serão feitas neste arquivo local. O arquivo remoto original irá permanecer sem alteração após fechar o Kexi, por isso recomenda-se que copie (transfira) o arquivo primeiro para o seu computador, abra o arquivo localmente e copie-o de novo para a origem, se quiser atualizá-lo. </para> + </sect3> + </sect2> + </sect1> + + <sect1 id="using-help"> + <title +>Usando a ajuda embutida </title> + <itemizedlist> + <title +>As seguintes formas de obter a ajuda interna do &kexi; estão disponíveis: </title> + <listitem> + <para +><emphasis +>O Manual, no formato de documento eletrônico.</emphasis +></para> + <para +>O Manual está disponível pressionando-se a tecla <keycombo +><keycap +>F1</keycap +></keycombo +> ou selecionando-se a opção <menuchoice +><guimenu +>Ajuda</guimenu +><guimenuitem +>Manual do &kexi;</guimenuitem +></menuchoice +> do menu. </para> + </listitem> + <listitem> + <para +><emphasis +>Sugestões O Que É Isto?.</emphasis +></para> + <para +>Selecione a opção <menuchoice +><guimenu +>Ajuda</guimenu +><guimenuitem +>O Que É Isto?</guimenuitem +></menuchoice +> do menu e clique numa área da aplicação para obter dicas sobre ela. </para> + </listitem> + </itemizedlist> + </sect1> + +</chapter> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/building.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/building.docbook new file mode 100644 index 00000000..4bf61e96 --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/building.docbook @@ -0,0 +1,312 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> +--> + +<chapter id="building-databases"> +<title +>Criando Bancos de Dados Simples</title> +<sect1 id="building-intro"> +<title +>Introdução</title> +<para +>Para aprender os fundamentos do &kexi;, você poderá criar um banco de dados simples, usando as funcionalidades mais elementares do &kexi;. Para tornar as coisas mais simples, os tópicos avançados de desenho de bancos de dados não serão cobertos aqui. </para> +<para +>Comece por criar uma nova <emphasis +>Agenda Telefônica</emphasis +> vazia. </para> + +<para +>Tendo um projeto de banco de dados novo e vazio, execute os seguintes passos:</para> +<procedure> +<step +><para +>Desenhe as tabelas do banco de dados. Leia <xref linkend="designing-tables"/>.</para +></step> +<step +><para +>Insira dados nas tabelas. Leia <xref linkend="entering-data-into-tables"/>.</para +></step> +<step +><para +>Desenhe as consultas do banco de dados. Leia <xref linkend="designing-queries"/>.</para +></step> +<step +><para +>Desenhe os formulários do banco de dados. Leia <xref linkend="designing-forms"/>.</para +></step> +<step +><para +>Use os formulários para inserir dados. Leia <xref linkend="entering-data-using-forms"/>.</para +></step> +</procedure> +</sect1> + +<sect1 id="designing-tables"> +<title +>Desenhando as Tabelas de Banco de Dados</title> +<para +>Primeiro, irão existir duas tabelas que serão adicionadas ao seu banco de dados: a <emphasis +>pessoas</emphasis +> e a <emphasis +>telefones</emphasis +>. Elas são exatamente as mesmas tabelas que estão descritas no capítulo <link linkend="database-and-spreadsheet" +>Banco de dados e planilha</link +>. Poderá ser encontrado um formato para a <emphasis +>Pessoas</emphasis +> na seção de <link linkend="data-integrity-and-validity" +>Integridade e validade dos dados</link +> nesse capítulo. </para> + +<procedure> +<step> +<para +>Selecione a opção do menu <menuchoice +><guimenu +>Inserir</guimenu +><guimenuitem +>Tabela</guimenuitem +> </menuchoice +>. Você poderá também usar o botão <guilabel +>Criar objeto: tabela</guilabel +> da <link linkend="project-navigator-pane" +>barra do Navegador do Projeto</link +>. </para> +</step> +<step> +<para +>A janela do Desenhador de Tabelas irá aparecer. Se olhar para o topo da janela de desenho, você irá reparar que o &kexi; sugeriu um nome genérico do tipo <emphasis +>modelo</emphasis +> para a nova tabela. O desenho da tabela ainda não está salvo, assim você poderá atribuir um nome mais apropriado mais tarde. Além disso, devido à mesma razão, o nome da tabela ainda não está visível no <link linkend="project-navigator-pane" +>Navegador do Projeto</link +>. </para> +</step> +</procedure> + + +<sect2 id="design-window"> +<title +>A Janela do Desenhador de Tabelas</title> +<itemizedlist> +<title +>A janela do Desenhador de Tabelas consiste nas seguintes colunas:</title> +<listitem +><para +><guilabel +>PK</guilabel +> - Chave Primária. </para +></listitem> +<listitem +><para +>Nome do <guilabel +>Título do Campo</guilabel +> - o título do campo que será exibido durante a entrada de dados. </para +></listitem> +<listitem +><para +>Tipo de Da<guilabel +>dos</guilabel +> - uma lista com os tipos de dados que permite atribuir uma regra principal para os dados inseridos num determinado campo. Por exemplo, quando um campo for do tipo de números inteiros, o usuário do banco de dados não poderá inserir letras neste campo. </para +></listitem> +<listitem +><para +>Comentário<guilabel +>s</guilabel +> - você poderá introduzir aqui quaisquer informações úteis para compreender para que serve o campo indicado. Este texto adicional será salvo dentro do desenho das tabelas e só ficará visível no modo de desenho. </para +></listitem> +</itemizedlist> +<para +>Na janela do <guilabel +>Desenhador de tabelas</guilabel +>, cada linha corresponde a um único campo da tabela. Você poderá reconhecer que está no <emphasis +>modo de desenho</emphasis +>, porque o botão do <guibutton +>Mudar para o modo Visão de Desenho</guibutton +> está ativo na barra de ferramentas principal do &kexi;. </para> + + +<procedure> +<title +>Desenhando a tabela de <emphasis +>Pessoas</emphasis +>:</title> +<step +><para +>Na primeira linha, clique na célula da coluna do <guilabel +>Título do Campo</guilabel +> e escreva <emphasis +>Nome</emphasis +> como nome para o campo. </para> +<itemizedlist> +<title +>Notas sobre os nomes e títulos dos campos</title> +<listitem +><para +>Cada campo da tabela deverá ter um nome e um título, que não poderão estar vazios. </para +></listitem> +<listitem +><para +>O nome do campo é uma palavra usada pelo banco de dados que normalmente não está visível para os usuários do banco de dados. O nome não pode conter caracteres especiais (nacionais, como o ±, ¶, Ü) ou espaços. Os nomes só poderão conter letras romanas, números e o sinal de sublinhado "_". Use a última opção em vez dos espaços ou hífens. </para +></listitem> +<listitem +><para +>Os nomes dos campos deverão começar por uma letra ou sublinhado "_", nunca por um número. </para +></listitem> +<listitem +><para +>Não importa se está usando letras maiúsculas ou minúsculas. Para as bases de dados do &kexi;, o nome "Pessoas" é a mesma coisa que "pessoas". </para +></listitem> +<listitem +><para +>O título do campo, por outro lado, permite-lhe inserir quaisquer letras ou caracteres especiais. Será apresentado para os usuários da aplicação do banco de dados. </para +></listitem> +</itemizedlist> +</step> + +<step> +<itemizedlist> +<title +>De forma semelhante, insira os seguintes campos no desenho da tabela:</title> +<listitem +><para +><guilabel +>sobrenome</guilabel +></para +></listitem> +<listitem +><para +>rua</para +></listitem> +<listitem +><para +>numero_casa</para +></listitem> +<listitem +><para +>cidade</para +></listitem> +</itemizedlist> +</step> + +<step +><para +>Todos os campos acima, exceto o <emphasis +>numero_casa</emphasis +> são do tipo texto. Mude o tipo de campo do <emphasis +>numero_casa</emphasis +> para <emphasis +>número inteiro</emphasis +>. Para fazer isto, clique numa célula da coluna do <guilabel +>Tipo de Dados</guilabel +>, na linha <emphasis +>numero_casa</emphasis +> e clique então no botão da lista (você poderá também clicar em <keycombo +><keycap +>F4</keycap +></keycombo +> ou em <keycombo action="simul" +>&Alt;<keycap +>Baixo</keycap +></keycombo +>. A lista de tipos de dados irá então aparecer. Selecione o tipo <emphasis +>Número inteiro</emphasis +>. </para +><para +>A partir de agora, o campo <emphasis +>numero_casa</emphasis +> só aceita números. </para +></step> + +<!-- TODO setting additional properties: e.g. caption --> +<step +><para +>O desenho da tabela <emphasis +>Pessoas</emphasis +> está pronto. Clique no botão <guibutton +>Mudar para a Visão de Dados</guibutton +> da barra de ferramentas para terminar o desenho e mudar para Visão de Dados da tabela. Isto permite-lhe inserir dados na tabela. </para +></step> + +<step +><para +>Como o desenho ainda não está salvo no banco de dados, a janela para <guibutton +>Salvar Objeto Como</guibutton +> irá aparecer. Você terá que especificar o nome da tabela nova. </para> +<para +>O &kexi; oferece um nome genérico <emphasis +>Tabela1</emphasis +>. Para mudar o nome, insira <emphasis +>Pessoas</emphasis +> no campo do <emphasis +>Título</emphasis +> e pressione a tecla <keycombo +><keycap +>Enter</keycap +></keycombo +> ou clique <guibutton +>OK. O campo d</guibutton +>o <guilabel +>Título</guilabel +> será usado para mostrar a tabela para os usuários finais do banco de dados, ⪚, como um formulário. Ao contrário do nome, o título poderá conter quaisquer caracteres, incluindo espaços e caracteres especiais. </para> +<para +>Lembre-se que o preenchimento do campo <guilabel +>Título</guilabel +> preenche automaticamente o campo <guilabel +>Nome</guilabel +>. Para sua conveniência, a regra de utilização de apenas caracteres romanos, números e sublinhados "_" mantém-se. Você poderá alterar o conteúdo do campo <guilabel +>Nome, se o dese</guilabel +>jar. </para +></step> + +<step +><para +>Você será questionado se concorda com a adição automática de uma chave primária à tabela. Clique no botão <guibutton +>Adicionar chave primária</guibutton +> para continuar. </para +></step> + +<step +><para +>A tabela <emphasis +>Pessoas</emphasis +> foi criada e aberta na Visão de Dados. O seu nome aparecerá no painel do <guilabel +>Navegador do Projeto</guilabel +>. </para +></step> + +<step +><para +>Crie a tabela de <emphasis +>telefones</emphasis +>, de forma semelhante à da tabela <emphasis +>pessoas</emphasis +>. </para +></step> + +<step +><para +>Crie um campo <emphasis +>pessoa</emphasis +> do tipo <emphasis +>Número inteiro</emphasis +> e o <emphasis +>telefone</emphasis +> do tipo <emphasis +>Texto</emphasis +>. Não use um número aqui, porque os números de telefone poderão conter vários formatos e prefixos. </para +></step> + +<step +><para +>Clique no botão <guibutton +>Mudar para Visão de Dados</guibutton +> na barra de ferramentas e insira <emphasis +>Telefones</emphasis +> como título da tabela. Como na sua tabela anterior, permita ao &kexi; criar uma chave primária automaticamente. </para +></step> +</procedure> + +</sect2> + +</sect1> +&enteringdataintotables; &querydesigning; &designingforms; &enteringdatausingforms; </chapter> + diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/comparing.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/comparing.docbook new file mode 100644 index 00000000..5062c94c --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/comparing.docbook @@ -0,0 +1,120 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> +--> + +<appendix id="comparing"> + <title +>Comparando o &kexi; com outras aplicações de bancos de dados </title> + <para +>Ainda que as diferentes aplicações de bancos de dados tendam a oferecer funcionalidades semelhantes, usam normalmente terminologias diferentes. Para a sua conveniência, este apêndice mostra como a terminologia usada no &kexi; corresponde à usada pelas outras aplicações de bancos de dados. Assim, este capítulo poderá ser útil ao migrar os bancos de dados de uma aplicação para outra. </para> + <sect1 id="comparing-data-types"> + <title +>Tipos de dados </title> + <para +>A tabela abaixo mostra como os tipos de dados no &kexi; correspondem aos tipos de dados das outras aplicações de bancos de dados. </para> + <para +>Alguns dos tipos de dados aqui indicados são <firstterm +>sub-tipos</firstterm +> de outros tipos. Por exemplo, o <emphasis +>Texto longo</emphasis +> é um sub-tipo de <emphasis +>Texto</emphasis +>. Para usar um sub-tipo no &kexi;, você deverá selecionar o tipo básico correspondente (neste caso, o Texto) no desenhador de tabelas e, depois, selecionar o sub-tipo, com a opção <guilabel +>Sub-tipo</guilabel +> do <guilabel +>Editor de Propriedades</guilabel +>. </para> + <table> + <title +>Comparação dos tipos de dados usados no &kexi; e em outras aplicações de bancos de dados </title> + <tgroup cols="4"> + <thead> + <row> + <entry +>&kexi;</entry> + <entry +>MS Access</entry> + <entry +>dBase/FoxPro</entry> + <entry +>Paradox</entry> + </row> + </thead> + <tbody> + <row> + <entry +>Texto</entry> + <entry +>Texto</entry> + <entry +>Caracter</entry> + <entry +>Alfanumérico</entry> + </row> + <row> + <entry +>Texto longo</entry> + <entry +>Memorando</entry> + <entry +>Memorando</entry> + <entry +>Memorando</entry> + </row> + <row> + <entry +>Data/Hora</entry> + <entry +>Data, Hora</entry> + <entry +>Data</entry> + <entry +>DataHora</entry> + </row> +<!-- Not visible in Kexi GUI yet. + <row> + <entry +>Object (Object)</entry> + <entry +>OLE Object</entry> + <entry +>General</entry> + <entry +>OLE, Graphical Binary</entry> + </row> +--> + <row> + <entry +>Número Inteiro</entry> + <entry +>Número (Inteiro)</entry> + <entry +>Numérico</entry> + <entry +>Inteiro</entry> + </row> + <row> + <entry +>Número Inteiro Grande</entry> + <entry +>Inteiro Longo</entry> + <entry +>Numérico</entry> + <entry +>Inteiro Longo</entry> + </row> + <row> + <entry +>Número de Ponto Flutuante</entry> + <entry +>Número de Precisão Simples/Dupla</entry> + <entry +>Real</entry> + <entry +>Número</entry> + </row> + </tbody> + </tgroup> + </table> + </sect1> +</appendix> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/configuration.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/configuration.docbook new file mode 100644 index 00000000..620dfbf3 --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/configuration.docbook @@ -0,0 +1,182 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> +--> + +<chapter id="configuration"> + <title +>Configurando o &kexi; </title> + + <para +>Este capítulo descreve como você poderá configurar o &kexi; para se adequar às suas próprias necessidades e preferências. </para> + + <sect1 id="configuring-window-layout"> + <title +>Disposição da Janela </title> + <para +>O &kexi; oferece uma <firstterm +>Interface de Documentos Múltiplos</firstterm +> (MDI). Isto significa que você poderá ter vários objetos de banco de dados (como as tabelas, pesquisas e 'scripts') abertos ao mesmo tempo e na mesma janela principal do &kexi;. Cada objeto do banco de dados é mostrado numa <firstterm +>janela-filha</firstterm +> dentro da janela principal. </para> + <para +>Existe a opção de dois modos MDI disponíveis, permitindo escolher a forma como as janelas são gerenciadas e apresentadas. Os dois modos são: <itemizedlist +> <listitem +><para +>modo IDEAl; e</para +></listitem +> <listitem +><para +>Modo de Janelas-filhas.</para +></listitem +> </itemizedlist +> Estes modos são descritos nas duas seções a seguir. Você poderá alterar o modo MDI no sub-menu <guisubmenu +>Modo MDI</guisubmenu +> do menu <guimenu +>Janela</guimenu +>. Lembre-se que a alteração do modo MDI necessita que o &kexi; seja reiniciado antes do modo novo fazer efeito. </para> + <sect2 id="window-layout-ideal"> + <title +>Modo IDEAl </title> +<!-- TODO: Screenshot of IDEAl mode --> + <para +>O modo IDEAl é o modo MDI padrão, e poderá ser familiar em outras aplicações do &kde;. Neste modo, existe apenas uma janela-filha maximizada dentro da janela principal do &kexi; de cada vez. Uma barra de abas, contendo uma página por cada janela-filha, permite às outras janelas-filhas serem vistas, bastando para isso clicar na aba desejada. </para> + </sect2> + <sect2 id="window-layout-childframe"> + <title +>Modo de Janela-filha </title> +<!-- TODO: Screenshot of Childframe mode --> + <para +>No modo de janelas-filhas, as janelas são mostradas na janela principal do &kexi;, mas não necessitam estar maximizadas dentro dela. Para usar o modo de janelas-filhas, você terá que selecionar a opção do menu <action +> <guimenu +>Janela</guimenu +>, <guisubmenu +>Modo MDI</guisubmenu +>, <guimenuitem +>Modo de Janelas-Filhas</guimenuitem +> </action +>. </para> + <para +>Cada janela-filha possui uma barra de título com botões para a maximizar, minimizar e fechar. Elas podem ser movidas e dimensionadas dentro da janela principal, da forma normal (por exemplo, poderão ser movidas ao clicar e arrastar a barra de título). </para> + <para +>Os botões comportam-se da seguinte forma: o botão mais à direita fecha a janela-filha. O botão à esquerda maximiza a janela-filha - lembre-se que isto faz com que os botões passem para o canto superior direito da janela principal, acima do <guilabel +>Editor de propriedades</guilabel +>, se estiver aberta. O botão seguinte à esquerda ativa ou desativa o modo maximizado/restaurado da janela filha. </para> + <para +>O botão mais à esquerda separa ou <firstterm +>desacopla</firstterm +> a janela-filha, permitindo mudá-la de posição para fora da janela principal. Para mais informações sobre como acoplar e desacoplar as janelas, veja a próxima seção. </para> + </sect2> + </sect1> + + <sect1 id="docking-windows"> + <title +>Acoplando e Desacoplando Janelas </title> + <para +>Por padrão, o <guilabel +>Navegador do Projeto</guilabel +> e o <guilabel +>Editor de Propriedades</guilabel +> são apresentados como parte da janela principal do &kexi;. É possível <firstterm +>desacoplar</firstterm +> cada um dos painéis, de modo que sejam apresentados numa janela separada. Uma vez desacoplado, é possível <firstterm +>acoplar</firstterm +> o painel, de modo que apareçam de novo na janela principal. </para> + <para +>No <link linkend="window-layout-childframe" +>modo de janelas-filhas</link +>, também é possível desacoplar janelas-filhas. Por exemplo, uma janela-filha que mostre uma tabela de banco de dados poderá ser desacoplada, permitindo à janela filha que mostra a tabela ser maximizada na tela. </para> + <para +>Pode ser útil desacoplar uma janela ao usar: <itemizedlist> + <listitem> + <para +>uma tela pequena; </para> + </listitem> + <listitem> + <para +>tabelas, pesquisas ou formulários grandes; e/ou </para> + </listitem> + <listitem> + <para +>mais de um monitor. </para> + </listitem> + </itemizedlist> + </para> + <sect2> + <title +>Acoplando e desacoplando painéis laterais </title> + <para +>Os painéis laterais do <guilabel +>Navegador do Projeto</guilabel +> e o <guilabel +>Editor de Propriedades</guilabel +> podem ser desacoplados se: <itemizedlist> + <listitem> + <para +>fizer duplo-clique na pega na parte superior do painel; ou </para> + </listitem> + <listitem> + <para +>clicar uma vez na seta do topo do painel, ao lado da cruz. </para> + </listitem> + </itemizedlist> +<!-- TODO: Screenshot --> + </para> + <para +>Uma vez desacopladas, as janelas do painel podem ser acopladas na janela principal de novo, de forma semelhante ao desacoplamento: <itemizedlist> + <listitem> + <para +>fazendo duplo-clique na pega do topo da janela; ou </para> + </listitem> + <listitem> + <para +>clicar uma vez na seta do topo do painel, ao lado da cruz. </para> + </listitem> +<!-- TODO: Screenshot --> + </itemizedlist> + </para> + </sect2> + <sect2> + <title +>Desacoplando e acoplando as janelas-filhas </title> + <para +>As janelas-filhas podem ser acopladas e desacopladas apenas no <link linkend="window-layout-childframe" +>modo de janelas-filhas</link +>. </para> + <para +>No modo de janelas-filhas, as janelas podem ser desacopladas se: <itemizedlist> + <listitem> + <para +>clicar com o botão direito na barra de abas ou na aba correspondente á janela a ser desacoplada e selecionar <guilabel +>Desacoplar</guilabel +>; ou </para> +<!-- TODO: Screenshot --> + </listitem> + <listitem> + <para +>clicar com o botão direito na barra de título da janela-filha e selecionar <guilabel +>Desacoplar</guilabel +>; ou </para> +<!-- TODO: Screenshot --> + </listitem> + <listitem> + <para +>se a janela-filha <emphasis +>não</emphasis +> estiver maximizada, clicando na seta do canto superior direito da janela-filha (ao lado dos botões para minimizar, maximizar e fechar essa janela-filha); </para> +<!-- TODO: Screenshot --> + </listitem> + <listitem> + <para +>se a janela-filha estiver maximizada, clicando na seta à direita do menu (a seguir aos botões para minimizar, restaurar e fechar dessa janela-filha). </para> +<!-- TODO: Screenshot --> + </listitem> + </itemizedlist> + </para> + <para +>Para acoplar uma janela-filha, clique com o botão direito na barra de abas ou na aba que corresponda à janela a acoplar e selecione a opção <guilabel +>Acoplar</guilabel +>. </para> +<!-- TODO: Screenshot --> + </sect2> + </sect1> +</chapter> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/contact-example.png b/koffice-i18n-pt_BR/docs/koffice/kexi/contact-example.png Binary files differnew file mode 100644 index 00000000..bd63ae89 --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/contact-example.png diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/credits.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/credits.docbook new file mode 100644 index 00000000..3bd55a09 --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/credits.docbook @@ -0,0 +1,103 @@ +<chapter id="credits"> +<!-- Include credits for the programmers, documentation writers, and + contributors here. The license for your software should then be + included below the credits with a reference to the appropriate + license file included in the KDE distribution. --> + +<title +>Créditos e Licença</title> + +<para +><trademark class="copyright" +>Copyright</trademark +> do &kexi; 2002-2006 da Equipe do &kexi; <itemizedlist> + <title +>Programadores do &kexi;:</title> + <listitem> + <para +>Jaroslaw Staniek / OpenOffice Polska <email +>js@iidea.pl</email +></para> + </listitem> + <listitem> + <para +>Lucijan Busch <email +>lucijan@kde.org</email +></para> + </listitem> + <listitem> + <para +>Cedric Pasteur <email +>cedric.pasteur@free.fr</email +></para> + </listitem> + <listitem> + <para +>Adam Pigg <email +>adam@piggz.fsnet.co.uk</email +></para> + </listitem> + <listitem> + <para +>Martin Ellis <email +>martin.ellis@kdemail.net</email +></para> + </listitem> + <listitem> + <para +>Sebastian Sauer <email +>mail@dipe.org</email +></para> + </listitem> + <listitem> + <para +>Christian Nitschkowski <email +>segfault_ii@web.de</email +></para> + </listitem> + <listitem> + <para +>Peter Simonsson <email +>psn@linux.se</email +></para> + </listitem> + <listitem> + <para +>&Joseph.Wenninger; <email +>jowenn@kde.org</email +></para> + </listitem> + <listitem> + <para +>Seth Kurzenberg <email +>seth@cql.com</email +></para> + </listitem> + <listitem> + <para +>Laurent Montel <email +>montel@kde.org</email +></para> + </listitem> + <listitem> + <para +>Till Busch <email +>till@bux.at</email +></para> + </listitem> + </itemizedlist> +</para> + +<para +>Documentação por Martin A. Ellis <email +>martin.ellis@kdemail.net</email +>, Jaroslaw Staniek <email +>js@iidea.pl</email +> com contribuições de Anne-Marie Mahfouf, Raphael Langerhorst, Michal Kubicki e Aron Stansvik. </para> + +<para +>Tradução de Marcus Gama<email +>marcus.gama@gmail.com</email +></para +> +&underFDL; &underLGPL; </chapter> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/database.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/database.docbook new file mode 100644 index 00000000..b2fbf562 --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/database.docbook @@ -0,0 +1,780 @@ +<!-- + <!DOCTYPE appendix PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> +--> + +<appendix id="database"> +<title +>Introdução aos Bancos de Dados</title> + +<sect1 id="what-is-a-database"> +<title +>O que é um Banco de Dados?</title> +<para +>Você poderá definir um banco de dados com uma coleção de dados sobre um tópico. Ele está organizado de forma a permitir encontrar facilmente a informação, fazer alterações ou adicionar ítens novos. </para> +<para +>Veja este diagrama para um dos exemplos acima: uma agenda telefônica simples. </para> +<screenshot> + <screeninfo +>Um diagrama de um banco de dados de uma agenda telefônica</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="contact-example.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Um diagrama de um banco de dados de uma agenda telefônica</phrase> + </textobject> + </mediaobject> +</screenshot> +<para +>A imagem acima mostra um conjunto de dois contatos, sendo cada um deles apresentado em um cartão em separado. Parece que cada um dos cartões poderá constituir uma linha única numa tabela: </para> + +<para +><emphasis +>Tabela de <guilabel +>Contatos</guilabel +></emphasis +></para> +<informaltable> +<tgroup cols="2"> +<tbody> +<row> +<entry +><guilabel +>Nome</guilabel +></entry> +<entry +><guilabel +>Num. Tel.</guilabel +></entry> +</row> +<row> +<entry +>João</entry> +<entry +>699 23 43 12</entry> +</row> +<row> +<entry +>Pedro</entry> +<entry +>711 19 77 21</entry> +</row> +</tbody> +</tgroup> +</informaltable> + +<para +><emphasis +>Termos e definições</emphasis +>: Um dado simples que constitui uma parte de uma coleção maior poderá ser chamado de <firstterm +>linha</firstterm +> ou, de forma mais profissional, um <firstterm +>registro</firstterm +>. A coleção chama-se normalmente <firstterm +>tabela</firstterm +>. Além disso, o nome mais natural para a tabela é um que descreve os dados que oferece/armazena, que é o <guilabel +>Contatos</guilabel +>. Depois disso, cada linha da tabela consiste de <firstterm +>colunas</firstterm +>, também chamadas de <firstterm +>campos</firstterm +>. Na tabela <guilabel +>Contatos</guilabel +>, existem duas colunas (campos): o <guilabel +>Nome</guilabel +> e o <guilabel +>Num. Tel.</guilabel +>. </para> +<para +>Para usos simples, uma única tabela poderá constituir um <firstterm +>banco de dados</firstterm +>. Muitas pessoas consideram estas duas coisas equivalentes. Como você poderá ver, para os bancos de dados reais, é necessário normalmente mais de uma tabela. </para> +<para +>Para resumir, você já tem um banco de dados simples com uma tabela <guilabel +>Contatos</guilabel +>. </para> +</sect1> + + +<sect1 id="database-and-spreadsheet"> +<title +>Banco de Dados e Planilhas</title> +<para +>É bastante provável que você já tenha usado planilhas, como o KSpread, o OpenOffice.org Calc ou o Microsoft Excel. Se for o caso, você irá pensar provavelmente: uma vez que tanto as planilhas como os bancos de dados têm tabelas, porque eu deveria usar os bancos de dados? </para> +<para +>Ao realizar uma comparação entre planilhas e bancos de dados, você poderá encontrar as seguintes questões que serão abordadas mais tarde em detalhes: </para> +<itemizedlist> +<listitem +><para +><link linkend="referential-data-integrity" +>Integridade referencial dos dados</link +></para +></listitem> +<listitem +><para +><link linkend="data-redundyncy" +>Redundância dos dados</link> +</para +></listitem> +<listitem +><para +><link linkend="data-integrity-and-validity" +>Integridade e validade dos dados</link +></para +></listitem> +<listitem +><para +><link linkend="data-limiting" +>Limitação da visualização dos dados</link +></para +></listitem> +<listitem +><para +><link linkend="performance-and-capacity" +>Performance e capacidade</link +></para +></listitem> +<listitem +><para +><link linkend="convenient-data-entry" +>Entrada de dados convenientes</link +></para +></listitem> +<listitem +><para +><link linkend="reports" +>Relatórios</link +></para +></listitem> +<listitem +><para +><link linkend="programming" +>Programação</link +></para +></listitem> +<listitem +><para +><link linkend="multiuse" +>Multi-uso</link +></para +></listitem> +<listitem +><para +><link linkend="security" +>Segurança</link +></para +></listitem> +</itemizedlist> + +<sect2 id="difference-database-and-spreadsheet"> +<title +>Quão diferente o Banco de Dados é da Planilha?</title> + +<para +>Excedendo gradualmente a capacidade de um telefone celular, expanda a sua tabela <guilabel +>Contatos</guilabel +> ao adicionar uma coluna (campo) <guilabel +>Endereço</guilabel +>. Adicione mais números de telefone (escritório, casa) para cada pessoa e adicione sobrenomes aos nomes. Para simplificar, nós assumiremos o seguinte: </para> +<itemizedlist> +<listitem +><para +>a tabela está limitada a duas pessoas (obviamente, poderão existir centenas e milhares delas num banco de dados real)</para +></listitem> +<listitem +><para +>não existem duas pessoas com o mesmo nome e sobrenome</para> +</listitem> +</itemizedlist> +<para +><emphasis +>Tabela de contatos</emphasis +></para> +<informaltable> +<tgroup cols="3"> +<tbody> +<row> +<entry +><emphasis +>Nome e sobrenome</emphasis +></entry> +<entry +><emphasis +>Tel</emphasis +></entry> +<entry +><emphasis +>Endereço</emphasis +></entry> +</row> +<row> +<entry +>João Pires</entry> +<entry +>699 23 43 12</entry> +<entry +>Rua do Angustura, Nr 1, Rio de Janeiro</entry> +</row> +<row> +<entry +>Pedro Morais</entry> +<entry +>711 19 77 21</entry> +<entry +>São Paulo, Rua 7 de Setembro, Nr 2</entry> +</row> +<row> +<entry +>João Pires</entry> +<entry +>110 98 98 00</entry> +<entry +>Rua do Angustura, Nr 1</entry> +</row> +<row> +<entry +>Pires João</entry> +<entry +>312 43 42 22</entry> +<entry +>Rio de Janeiro, Rua do Angustura, Nr 1</entry> +</row> +<row> +<entry +>PEDRO Morais</entry> +<entry +>231 83 02 04</entry> +<entry +>Rua 7 de Setembro, Nr 2, São Paulo</entry> +</row> +</tbody> +</tgroup> +</informaltable> + +<para +>Uma tabela como esta tanto pode ser feita numa planilha como numa base de dados. Usar uma planilha é muito simples, claro. Quais são os problemas que nós encontraremos neste estágio? </para> + +<sect3 id="referential-data-integrity"> +<title +>Integridade referencial de dados</title> +<para +>Suponha que você está usando uma planilha e necessita de alterar o endereço de, pelo menos, uma pessoa. Você tem aí um pequeno problema: terá freqüentemente de alterar o endereço em várias linhas. Por exemplo, o João ocupa três linhas. Um problema real ocorrerá se você se esquecer de alterar uma das linhas - o endereço atribuído a essa pessoa será <emphasis +>ambíguo</emphasis +>, logo <emphasis +>os seus dados perdem integridade</emphasis +>. </para> +<para +>Além disso, não existe uma forma simples de remover uma pessoa escolhida da tabela, uma vez que você terá que se lembrar de apagar todas as linhas relacionadas com ela. </para> +</sect3> + + +<sect3 id="data-redundyncy"> +<title +>Redundância de dados</title> +<para +>Isto está ligado diretamente ao problema anterior. Nos campos <guilabel +>Nome e apelido</guilabel +> e <guilabel +>Endereço</guilabel +>, são indicados os mesmos dados várias vezes. Isto é típico das planilhas, uma forma ineficiente de guardar dados, uma vez que o banco de dados cresce desnecessariamente, consumindo mais recursos do computador (maior tamanho dos dados e um acesso mais lento). </para> +<para +>Como você poderá resolver estes problemas com um banco de dados? Você poderá dividir a informação em blocos menores criando uma tabela adicional <emphasis +>Pessoas</emphasis +> com apenas duas colunas: <guilabel +>Nome e sobrenome</guilabel +> e <guilabel +>Endereço</guilabel +>: </para> + +<para +><emphasis +>Tabela de <guilabel +>Pessoas</guilabel +></emphasis +></para> +<informaltable> +<tgroup cols="2"> +<tbody> +<row> +<entry +><emphasis +>Nome e sobrenome</emphasis +></entry> +<entry +><emphasis +>Endereço</emphasis +></entry> +</row> +<row> +<entry +>João Pires</entry> +<entry +>Rua do Angustura, Nr 1, Rio de Janeiro</entry> +</row> +<row> +<entry +>Pedro Morais</entry> +<entry +>Rua 7 de Setembro, Nr 2, São Paulo</entry> +</row> +</tbody> +</tgroup> +</informaltable> + +<para +>Cada linha da tabela <guilabel +>Pessoas</guilabel +> corresponde a uma <emphasis +>única pessoa</emphasis +>. A tabela <guilabel +>Contatos</guilabel +> é, a partir de agora, uma relação com a tabela <guilabel +>Pessoas</guilabel +>. </para> + +</sect3> + +<sect3 id="data-integrity-and-validity"> +<title +>Integridade e validade dos dados</title> +<para +>Repare na forma como os dados são introduzidos nos campos <guilabel +>Nome e sobrenome</guilabel +> e <guilabel +>Endereço</guilabel +>. As pessoas que inserem os dados poderão ser falíveis ou mesmo negligentes. Nos nossos dados exemplo, existem seqüências diferentes de entrada do mesmo nome e sobrenome (João Pires e Pires João; Pedro e PEDRO), entre outras formas de entrada do mesmo endereço. Obviamente, você ainda poderá pensar em outras formas mais. </para> +<para +>O problema acima mostra que, ⪚, ao procurar o número de telefone de uma pessoa que tenha o endereço "Rua do Angustura, Nr 1, Rio de Janeiro", não irá obter um resultado completo. Irá obter uma linha apenas, em vez de três. Além disso, você não irá encontrar todos os números de telefone que procurem pelo valor "João Pires" no campo <guilabel +>Nome e sobrenome</guilabel +>, uma vez que o "Pires João" não é igual ao "João Pires". </para> +<para +>Como você poderá resolver estes problemas com uma banco de dados? Você poderá fazer isto mudando o desenho da tabela <guilabel +>Pessoas</guilabel +> da seguinte forma: </para> +<orderedlist> +<listitem +><para +><emphasis +>Dividindo os dados</emphasis +> no campo <guilabel +>Nome e sobrenome</guilabel +> em dois campos separados: <guilabel +>Nome</guilabel +> e <guilabel +>Sobrenome</guilabel +>. </para +></listitem> +<listitem +><para +><emphasis +>Dividindo os dados</emphasis +> no campo <guilabel +>Endereço</guilabel +> em três campos separados <guilabel +>Rua</guilabel +>, <guilabel +>Número</guilabel +> e <guilabel +>Cidade</guilabel +>. </para +></listitem> +<listitem +><para +><emphasis +>Garanta a correção dos dados:</emphasis +> assegurando que os campos não estão vazios, ⪚, você terá sempre que indicar o número da casa. </para +></listitem> +</orderedlist> + +<para +>Uma tabela modificada se pareceria com algo como: </para> + +<para +><emphasis +>Tabela de pessoas</emphasis +></para> +<informaltable> +<tgroup cols="5"> +<colspec colnum="1" colname="c1" +></colspec> +<colspec colnum="2" colname="c2" +></colspec> +<colspec colnum="3" colname="c3" +></colspec> +<colspec colnum="4" colname="c4" +></colspec> +<colspec colnum="5" colname="c5" +></colspec> +<tbody> +<row> +<entry +><emphasis +>Nome</emphasis +></entry> +<entry +><emphasis +>Sobrenome</emphasis +></entry> +<entry +><emphasis +>Rua</emphasis +></entry> +<entry +><emphasis +>Número</emphasis +></entry> +<entry +><emphasis +>Cidade</emphasis +></entry> +</row> +<row> +<entry +>João</entry> +<entry +>Pires</entry> +<entry +>Rua do Angustura</entry> +<entry +>1</entry> +<entry +>Rio de Janeiro</entry> +</row> +<row> +<entry +>Pedro</entry> +<entry +>Morais</entry> +<entry +>7 de Setembro</entry> +<entry +>2</entry> +<entry +>São Paulo</entry> +</row> +<row> +<entry namest="c1" nameend="c5" +><emphasis +>Condições</emphasis +></entry> +</row> +<row> +<entry +>campo obrigatório</entry> +<entry +>campo obrigatório</entry> +<entry +>campo obrigatório</entry> +<entry +>campo obrigatório</entry> +<entry +>campo obrigatório</entry> +</row> +</tbody> +</tgroup> +</informaltable> + +<para +>Graças à introdução das condições para <guilabel +>campo obrigatório</guilabel +>, nós poderemos garantir que os dados inseridos estão completos. No caso das outras tabelas, você poderá obviamente permitir a omissão de certos campos ao inserir dados. </para> + +</sect3> + +<sect3 id="data-limiting"> +<title +>Limitando a visualização dos dados</title> +<para +>Uma planilha mostra todas as linhas e colunas da tabela, o que poderá ser incômodo no caso de folhas de dados muito grandes. Você poderá, obviamente, filtrar e ordenar as linhas nas folhas de cálculo, contudo deverá ter bastante cuidado ao fazê-lo. Os usuários da planilhas correm o risco de se esquecer que os dados foram filtrados, o que poderá conduzir a erros. Por exemplo, ao calcular somas, você poderá pensar que tem 100 linhas de dados visíveis, quando de fato existem mais 20 ocultas. </para> +<para +>Se quiser lidar com um pequeno sub-conjunto de dados, ⪚, para o enviar para outras pessoas editarem, você poderá copiá-lo e colá-lo noutra planilha e, após a edição, colar os dados alterados novamente na planilha principal. Esta edição "manual" poderá provocar a perda de dados ou cálculos incorretos. </para> +<para +>Para limitar a <emphasis +>visualização dos dados</emphasis +>, as aplicações de bancos de dados oferecem <emphasis +>pesquisas</emphasis +>, <emphasis +>formulários</emphasis +> e <emphasis +>relatórios</emphasis +>. </para> +<para +>Uma forma muito prática de limitar é a seguinte versão estendida da tabela <guilabel +>Pessoas</guilabel +>, descrita anteriormente: </para> + +<para +><emphasis +>Tabela de pessoas</emphasis +></para> +<informaltable> +<tgroup cols="6"> +<tbody> +<row> +<entry +><emphasis +>Nome</emphasis +></entry> +<entry +><emphasis +>Sobrenome</emphasis +></entry> +<entry +><emphasis +>Rua</emphasis +></entry> +<entry +><emphasis +>Número</emphasis +></entry> +<entry +><emphasis +>Cidade</emphasis +></entry> +<entry +><emphasis +>Vencimento</emphasis +></entry> +</row> +<row> +<entry +>João</entry> +<entry +>Pires</entry> +<entry +>Rua do Angustura</entry> +<entry +>1</entry> +<entry +>Rio de Janeiro</entry> +<entry +>2300</entry> +</row> +<row> +<entry +>Pedro</entry> +<entry +>Morais</entry> +<entry +>7 de Setembro</entry> +<entry +>2</entry> +<entry +>São Paulo</entry> +<entry +>1900</entry> +</row> +</tbody> +</tgroup> +</informaltable> + +<para +>Vamos assumir que a coluna recém introduzida, <guilabel +>Vencimento</guilabel +>, contém dados confidenciais. Como você poderá compartilhar, ⪚, detalhes de contato das pessoas com os seus colaboradores, mas sem <emphasis +>revelar os seus vencimentos</emphasis +>? É possível se <emphasis +>compartilhar apenas uma pesquisa e não a tabela inteira</emphasis +>. A pesquisa poderia selecionar todas as colunas, exceto a coluna <guilabel +>Vencimento</guilabel +>. No mundo dos bancos de dados, esse tipo de pesquisa é normalmente chamado de <guilabel +>visão</guilabel +>. </para> + +</sect3> + +<sect3 id="performance-and-capacity"> +<title +>Performance e capacidade</title> +<para +>O seu computador poderá ser muito rápido, contudo você irá notar que não o ajudará com planilhas lentas e grandes. A sua eficiência baixa é, antes de tudo, devida à falta de índices que acelerem o processo de procura de dados (os bancos de dados oferecem estes índices). Além disso, se você usar coisas como a área de transferência do sistema, até a cópia de dados poderá ser problemática com o tempo. </para> +<para +>As planilhas que contenham grandes conjuntos de dados poderão levar uma eternidade a abrir. A planilha carrega um grande quantidade de dados para a memória do computador ao abrir. A maioria dos dados carregados será provavelmente inútil/desnecessária para você, naquele momento. Os bancos de dados, ao contrário das planilhas, carregam dados do disco do computador apenas se necessário. </para> +<para +>Na maioria dos casos, você não terá que se preocupar como o banco de dados guarda os seus dados. Isto significa que, ao contrário das folhas de cálculo, os bancos de dados não se preocupam com: </para> +<itemizedlist> +<listitem +><para +>A seqüência das linhas, uma vez que você poderá ordená-las de acordo com as suas necessidades. Além disso, você poderá ver os mesmos dados em várias visões com ordenações diferentes. </para +></listitem> +<listitem +><para +>O mesmo acontece com as colunas (campos) da tabela. </para +></listitem> +</itemizedlist> + +<para +>Em conjunto com o <link linkend="data-limiting" +>Limitando a visualização dos dados</link +>, descrito no parágrafo anterior, estas qualidades constituem a vantagem dos bancos de dados. </para> + +</sect3> + +<sect3 id="convenient-data-entry"> +<title +>Entrada de dados</title> +<para +>As últimas edições das aplicações para criar planilhas permitem-lhe desenhar formulários de introdução de dados. Esses formulários são extremamente úteis se os seus dados não puderem ser apresentados convenientemente numa tabela, ⪚, se o texto conter várias linhas ou se todas as colunas não couberem na tela. </para> +<para +>Nesse caso, a forma correta como a planilha funciona é problemática. Os campos para a introdução de dados são colocados à vontade na planilha e, na maior parte dos casos, não são seguros no que diz respeito à intervenção do usuário (intencional ou acidental). </para> +</sect3> + +<sect3 id="reports"> +<title +>Relatórios</title> +<para +>Os bancos de dados permitem agrupar, limitar e somar os dados numa espécie de <emphasis +>relatório</emphasis +>. As folhas de cálculo são normalmente impressas na forma de pequenas tabelas, sem um controle automático completo sobre as divisões das páginas e a disposição dos campos. </para> +</sect3> + +<sect3 id="programming"> +<title +>Programação</title> +<para +>As aplicações para criar bancos de dados contém normalmente linguagens de programação completas. As planilhas mais recentes também têm essa capacidade, contudo os cálculos servem para modificar os campos da planilha e para cópias simples dos dados, sem se importar com a relevância das regras de integridade mencionadas nos parágrafos anteriores. </para> +<para +>O processamento dos dados numa planilha é normalmente feito com uma interface de usuário gráfica, que poderá atrasar a velocidade de processamento dos dados. Os bancos de dados são capazes de funcionar em segundo plano, fora das interfaces gráficas. </para> +</sect3> + +<sect3 id="multiuse"> +<title +>Multi-uso</title> +<para +>É difícil imaginar um multi-uso de uma planilha. Mesmo que seja tecnicamente possível, no caso das últimas aplicações, é necessário bastante disciplina, atenção e conhecimento por parte dos usuários, o que não pode ser garantido. </para> +<para +>Uma forma clássica de compartilhar dados gravados numa planilha com outra pessoa é enviar um arquivo como um todo (usando normalmente o e-mail) ou fornecer uma planilha pela rede. Esta forma de trabalho é pouco eficiente para os grupos maiores de pessoas - os dados que poderiam ser necessários num determinado momento em particular, poderão estar bloqueados atualmente por outra pessoa. </para> +<para +>Por outro lado, os bancos de dados foram desenhadas principalmente com acesso multi-uso e multi-usuário em mente. Mesmo o bloqueio mais simples, ao nível de uma linha de uma tabela em particular, é possível, o que permite um compartilhamento simples dos dados da tabela. </para> +</sect3> + +<sect3 id="security"> +<title +>Segurança</title> +<para +>A segurança de uma planilha ou de seções em particular com uma senha é meramente uma atividade simbólica. Após oferecer um arquivo de planilha na rede do computador, todas as pessoas que sejam capazes de copiar o arquivo, poderão tentar descobrir a senha. Normalmente, não será muito difícil, uma vez que a senha é guardada no mesmo arquivo da planilha. </para> +<para +>Os recursos para bloquear a edição ou a cópia de uma planilha (ou parte dela), são normalmente fáceis de quebrar. </para> +<para +>Os bancos de dados (exceto os salvos em um arquivo em vez de um servidor) não necessitam estar disponíveis num único arquivo. Você irá acessá-los com a rede do computadores, normalmente indicando um usuário e uma senha. Irá ganhar acesso apenas àquelas áreas (tabelas, formulários ou mesmo colunas e linhas selecionadas) que lhe tenham sido atribuídas, através dos direitos de acesso apropriados. </para> +<para +>Os direitos de acesso poderão afetar a capacidade de edição dos dados ou apenas da leitura de dados. Se não estiverem disponíveis quaisquer dados para você, eles não serão sequer enviados para o seu computador, assim não há possibilidade de fazer uma cópia dos dados de forma simples, como acontece nas planilhas. </para> + +</sect3> +</sect2> +</sect1> + +<sect1 id="database-design"> +<title +>Desenho de Banco de Dados</title> +<para +>O desenho de um banco de dados necessita de um planejamento cuidadoso. Lembre-se que a nova organização da tabela de contatos, proposta na seção 1.2, poderá gerar problemas quando a tabela for preenchida com dados. Por exemplo, se mudar o nome de um campo será uma tarefa simples, a divisão do campo <guilabel +>Endereço</guilabel +> em dois campos separados necessita de trabalho cuidadoso e tedioso. </para> +<para +>Para evitar estas situações, <emphasis +>volte a pensar no seu projeto de banco de dados</emphasis +> antes de criá-lo no seu computador e antes de você e os outros começarem a usá-lo. Assim, se investir algum tempo inicial, irá provavelmente poupá-lo no dia-a-dia. </para> +</sect1> + +<sect1 id="who-needs-a-database"> +<title +>Quem precisa de um Banco de Dados?</title> +<itemizedlist> +<title +>Use planilhas se:</title> +<listitem +><para +>As suas necessidades são limitadas e os seus dados nunca irão crescer para grandes volumes (será que consegue prever isso para agora?) </para +></listitem> +<listitem +><para +>Não for capaz de adquirir a metodologia de construção de bancos de dados. Você poderá, contudo, considerar solicitar essa tarefa a alguém que saiba ou usar ferramentas mais simples. </para +></listitem> +<listitem +><para +>Se você usar folhas de cálculo complexas e não tem tempo ou dinheiro para mudar para bancos de dados. Pense ou pergunte a alguém se isso não o levará a um beco-sem-saída. Não conte com ferramentas mágicas que iriam transformar a sua planilha (por melhor que estejam concebidas) num banco de dados. </para +></listitem> +</itemizedlist> + +<itemizedlist> +<title +>Pense em usar bancos de dados se:</title> +<listitem +><para +>A sua coleção de dados se expande todas as semanas.</para +></listitem> +<listitem +><para +>Se você cria com freqüência planilhas novas, as copia para dentro destas e sente que o seu trabalho está cada vez mais aborrecido. Nesse caso, o esforço de mudança para bancos de dados vale sempre a pena. </para +></listitem> +<listitem +><para +>Você poderá criar relatórios e instruções para os quais a visão em tabela da planilha não é adequada. Poderá então pensar em mudar para um banco de dados com visões de formulários. </para +></listitem> +</itemizedlist> +</sect1> + +<sect1 id="database-software"> +<title +>Programas de criação de Banco de Dados</title> +<para +>Até agora, você ainda aprendeu as características gerais dos bancos de dados sem entrar em grandes pormenores sobre as aplicações específicas que os desenharam. </para> +<para +>Os primeiros bancos de dados foram criados em conjunto com os grandes servidores nos anos 60, ⪚, o IBM System/360. Eles não estavam a altura dos PCs atuais, como tal, esses bancos de dados necessitavam de pessoal altamente especializado. Ainda que o 'hardware' dos computadores antigos fosse pouco confiável, extremamente mais lento e tivesse menos capacidade de armazenamento, um dos recursos de banco de dados ainda continua atraente: o acesso aos dados por vários usuários através de uma rede. </para> +<para +>Nos anos 70, os cientistas formaram a teoria dos bancos de dados relacionais (termos como: <firstterm +>tabela</firstterm +>, <firstterm +>registro</firstterm +>, <firstterm +>coluna (campo)</firstterm +> e <firstterm +>relação</firstterm +>, entre outros). Na base desta teoria, os bancos de dados IBM DB2 e Oracle foram criadas, sendo desenvolvidas e usadas até hoje. Na final dos anos 70, foram construídos o primeiros PCs. Os seus usuários poderiam (gradualmente) usar vários tipos de aplicações, incluindo as usadas para a construção de bancos de dados. </para> +<para +>Quando chegaram os grandes bancos de dados nas empresas, a situação não mudou: eles continuam a pedir computadores poderosos ou complexos de computadores chamados <firstterm +>clusters</firstterm +>. Isto vai, porém, além do tópico deste manual. </para> +<para +>Na área de bancos de dados acessíveis, com interfaces gráficas para PCs, você poderá escolher o seguinte: </para> + +<itemizedlist> +<listitem +><para +><ulink url="http://www.dbase.com/" +>DBase</ulink +> - uma ferramenta para operar em bancos de dados para DOS, popular nos anos 80. Os arquivos no formato do DBase ainda hoje são usados em alguns casos específicos, devido à sua simplicidade. </para +></listitem> +<listitem +><para +><ulink url="http://msdn.microsoft.com/vfoxpro/productinfo/overview/" +>FoxPro</ulink +> - uma aplicação semelhante ao DBase (início dos anos 90). Após terem sido adquiridas pela Microsoft, as interfaces gráficas foram introduzidas e, como tal, é usada para criar bancos de dados nos PCs. Este produto ainda é oferecido, ainda que esteja um pouco obsoleto. </para +></listitem> +<listitem +><para +><ulink url="http://office.microsoft.com/access/" +>Microsoft Access</ulink +> - uma aplicação para bancos de dados (dados e desenho gráfico da interface) com muitas simplificações, o que o torna adequado para principiantes; foi desenhada no fim dos anos 80, baseada na arquitetura de 16 bits. Os produtos oferecidos ainda são largamente usados nos dias de hoje, especialmente nas empresas pequenas, onde a eficiência e os requisitos multi-usuário não são muito importantes. </para +></listitem> +<listitem +><para +><ulink url="http://www.filemaker.com/" +>FileMaker</ulink +> - uma aplicação conhecida e semelhante ao MS Access em simplicidade, operando em plataformas Windows e Macintosh, que é oferecida desde 1985. </para +></listitem> +<listitem +><para +><ulink url="http://www.kexi.pl/" +>&kexi;</ulink +> - uma aplicação multi-plataforma (Unix/Linux, Windows, Mac OS X), desenhada em 2003, desenvolvida de acordo com os princípios OpenSource, parte do projeto global que é o <ulink url="http://www.kde.org/" +>Ambiente de Trabalho K</ulink +>, &ie; um ambiente gráfico para os sistemas Unix/Linux. Uma contribuição significativa para o desenvolvimento do &kexi; é a companhia OpenOffice Polônia. </para +></listitem> +</itemizedlist> + +</sect1> + +</appendix> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/designingforms.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/designingforms.docbook new file mode 100644 index 00000000..7815afd6 --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/designingforms.docbook @@ -0,0 +1,1699 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> + + --> + + <sect1 id="designing-forms"> + <title +>Desenhando Formulários</title> + + <sect2 id="most-important-terms"> + <title +>Termos mais importantes</title> + <glosslist> + <glossentry id="gloss-form"> + <glossterm +>Formulário</glossterm> + <glossdef> + <para +>Uma janela fornecida para propiciar uma fácil entrada e apresentação de dados na tela do computador. </para> + </glossdef> + </glossentry> + <glossentry id="gloss-form-data-source"> + <glossterm +>Fontes de dados de formulários</glossterm> + <glossdef> + <para +>Uma tabela ou consulta de um banco de dados fornece os dados exibidos no formulário. A fonte de dados é necessário porque os formulários em si são apenas <emphasis +>ferramentas</emphasis +> para exibição e entrada de dados, enquanto tabelas e consultas são as fontes de dados. Formulários novos e vazios não possuem nenhuma fonte de dados atribuída, assim eles não estarão exibindo dados do seu banco de dados a menos que você atribua uma fonte de dados para eles. </para> + </glossdef> + </glossentry> + <glossentry id="gloss-form-field"> + <glossterm +>Campo de formulário</glossterm> + <glossdef> + <para +>O equivalente direto da coluna em uma tabela ou consulta. Os campos são mais freqüentemente usados para exibir texto e números. Inserir um novo valor ou mudar um valor existente de um campo provoca uma mudança na coluna da tabela ou consulta atribuída ao campo (após a mudança ter sido aceita). </para> + </glossdef> + </glossentry> + <glossentry id="gloss-form-design"> + <glossterm +>Desenho do formulário</glossterm> + <glossdef> + <para +>As tarefas que você executará para definir a aparência e funções do formulário. Para fazer isto, você precisa fornecer uma <glossterm linkend="gloss-form-data-source" +>fonte de dados</glossterm +>, inserir <glossterm linkend="gloss-form-field" +>campos de formulários</glossterm +> dos vários tipos e posicioná-los na posição adequada. </para> + </glossdef> + </glossentry> + <glossentry id="gloss-form-widget"> + <glossterm +>Elemento de formulário</glossterm> + <glossdef> + <para +>Elementos do formulário. Os principais tipos de elemento são:</para> + <itemizedlist> + <listitem> + <para +>Elementos que exibem informações, ⪚ uma caixa de texto ou uma caixa de imagem. Cada elemento deste tipo pode ser <emphasis +>ligado</emphasis +> a um campo da fonte de dados (coluna de uma tabela ou consulta). Como tal, estes tipos de campo são conhecidos também como <glossterm linkend="gloss-form-field" +>campos de formulário</glossterm +>. </para> + </listitem> + <listitem> + <para +>Elementos capazes de executar uma determinada ação, ⪚ um botão que pode fechar o formulário atual. Dentro de outras aplicações, este tipo de elemento é algumas vezes chamado <firstterm +>controle do formulário</firstterm +> porque ele pode realizar ações previamente definidas de <emphasis +>controle</emphasis +> do comportamento de sua aplicação de banco de dados. </para> + </listitem> + <listitem> + <para +>Outros elementos que permitem enriquecer a aparência do formulário, o <quote +>⪚elemento de linha</quote +> que pode separar visualmente duas áreas do formulário. </para> + </listitem> + </itemizedlist> + </glossdef> + </glossentry> + <glossentry id="gloss-container-widget"> + <glossterm +>Elemento container</glossterm> + <glossdef> + <para +>Um elemento que pode <emphasis +>conter</emphasis +> outros elementos dentro de sua área. Por exemplo, elemento de moldura ou elemento de aba são containers. A superfície do formulário em si é um container também. Um botão de comando não pode ser chamado de container porque não é possível inserir um elemento dentro dele. Em casos mais complexos, um elemento de container pode ser inserido dentro de outro container, assim o aninhamento é possível. </para> + <!-- + <screenshot> + <screeninfo +>Example container widgets</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_01_widget_containers.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Example container widgets</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </glossdef> + </glossentry> + </glosslist> + </sect2> + + <sect2 id="forms-versus-tables"> + <title +>Formulários versus tabelas</title> + <para +>No capítulo 5.2 você aprendeu sobre como inserir dados diretamente em tabelas usando sua visão de dados da planilha. No entanto, em muitos casos formulários são mais adequados para entrada de dados: </para> + <itemizedlist> + <listitem> + <para +>Um tabela pode conter muitas colunas para exibí-las em sua tela. Um formulário pode exibir estes dados usando várias linhas. </para> + </listitem> + <listitem> + <para +>Um formulário permites dividir os <glossterm linkend="gloss-form-field" +>campos</glossterm +> de dados visualmente em grupos lógicos, aumentando a legibilidade. Rótulos com informações adicionais podem ser inseridos para fornecer aos usuários dicas sobre como usar o formulário ou o quê o <glossterm linkend="gloss-form-field" +>campo</glossterm +> de dados significa. </para> + </listitem> + <listitem> + <para +>Botões de comando podem ser usados neste formulários para os comandos normalmente usados de modo que os usuários podem usar os formulários de uma maneira semelhante a das aplicações independentes que eles conhecem. </para> + </listitem> + <listitem> + <para +>Em uma visão de dados em planilha exibir <glossterm linkend="gloss-form-field" +>campos</glossterm +> de texto com múltiplas linhas ou imagens é tão fácil quanto em formulários. </para> + </listitem> + </itemizedlist> + </sect2> + + <sect2> + <title +>Trabalhando com o desenhador de formulários</title> + <para +>Como no desenhador de tabelas ou consultas, você é capas de usar a <interface +>Visão em Dados</interface +> e a <interface +>Visão de Desenho</interface +>. O desenho do formulário é executado na <interface +>Visão de Desenho</interface +>. Nós freqüentemente nos referiremos à janela de desenho do formulário como <interface +>Desenhador de Formulário</interface +>. </para> + <procedure> + <step> + <para +>Para criar um novo formulário vazio, selecione <menuchoice +><guimenu +>Inserir</guimenu +><guimenuitem +>Formulário</guimenuitem +></menuchoice +> no menu. Opcionalmente, você pode usar o comando <menuchoice +><guimenuitem +>Novo Formulário</guimenuitem +></menuchoice +> no botão de lista na barra de ferramentas do <interface +>Navegador do Projeto</interface +> ou o comando <menuchoice +><guimenuitem +>Criar Objeto: Formulário</guimenuitem +></menuchoice +> do menu de contexto. </para> + </step> + <step> + <para +>Irá aparecer uma área nova, que você poderá dimensionar o formulário, movendo para isso as suas bordas. O formulário está coberto com uma grade, para simplificar o posicionamento preciso dos elementos. </para> + <!--<screenshot> + <screeninfo +>A window with design of a new form</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_03_new_empty_form.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>A window with design of a new form</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </step> + </procedure> + <para +>Como no desenho de tabelas, o <interface +>Desenhador de Formulário</interface +> fornece um <interface +>Painel de propriedades</interface +>. Para economizar espaço na tela, o painel possui três abas relacionadas ao formulário atualmente selecionado: </para> + <variablelist> + <varlistentry> + <term +>Aba <guilabel +>Propriedades</guilabel +></term> + <listitem> + <para +>Contém uma lista das propriedades para o elemento atualmente selecionado.</para> + </listitem> + </varlistentry> + <varlistentry> + <term +>A página <guilabel +>Fonte de dados</guilabel +> </term> + <listitem> + <para +>Contém propriedades relacionadas especificamente à <glossterm linkend="gloss-form-data-source" +>fonte de dados</glossterm +> do elemento atualmente selecionado ou do formulário propriamente dito. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +>A página <guilabel +>Elementos</guilabel +> </term> + <listitem> + <para +>Contém uma hierarquia de todos os elementos do formulário. A lista simplifica a procura de elementos por nome e a navegação entre eles. </para> + </listitem> + </varlistentry> + </variablelist> + <para +>Informações sobre o nome e tipo de elemento atualmente selecionado são exibidas na primeira e segunda abas. </para> + <para +>Barras de ferramentas adicionais estão também disponíveis:</para> + <itemizedlist> + <listitem> + <para +>A barra de ferramentas <guilabel +>Elementos</guilabel +> usada para inserir novos elementos no formulário </para> + </listitem> + <listitem> + <para +>A barra de ferramentas <guilabel +>Formatação</guilabel +> usada para formatar os elementos do formulário (⪚, ajustar o tamanho dos elementos, agrupar elementos). Comandos de formatação estão também disponíveis no menu <guimenu +>Formatar</guimenu +>. Mais informações sobre estes comandos podem ser encontradas em <xref linkend="formatmenu"/>. </para> + </listitem> + </itemizedlist> + </sect2> + + <sect2 id="using-the-widgets-tab"> + <title +>Usando a aba <guilabel +>Elementos</guilabel +></title> + <para +>A aba <guilabel +>Elementos</guilabel +> no <interface +>Painel de propriedades</interface +> fornece uma lista de elementos do formulário e sua hierarquia. Cada elemento é apresentado dentro da hierarquia ao lado de outros elementos do mesmo nível (o mesmo container pai). Elementos filho (dentro dos containers) são apresentados usando nomes indentados. </para> + <!--<para +>In the picture below, the form (a container) contains two widgets: + <guilabel +>groupBox2</guilabel +> and <guibutton +>options</guibutton +> command button. In + turn, <guilabel +>groupBox2</guilabel +> (being a container itself) contains two check box + widgets. + </para> + <screenshot> + <screeninfo +>Using the <quote +>Widgets</quote +> tab</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_04_widgets_tab.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Using the <quote +>Widgets</quote +> tab</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <para +>Cada elemento exibe seu nome e tipo. O tipo possui também um ícone relacionado - o mesmo que é exibido na barra de ferramentas quando o desenho do formulário é executado. </para> + <note> + <itemizedlist> + <listitem +> + <para +>Mudar a seleção atual na lista provoca a seleção apropriada no formulário de desenho. Isto permite uma busca mais fácil de elementos por nome a uma fácil navegação. Por exemplo, é possível selecionar um elemento por nome, e então alternar para a aba de <guilabel +>Propriedades</guilabel +> para mudar as propriedades do elemento.</para> + </listitem> + <listitem> + <para +>Manter a tecla <keycap +>Ctrl</keycap +> pressionada enquanto um ítem na lista de elementos é selecionado permite que vários elementos sejam selecionados ao mesmo tempo. Manter a tecla <keycap +>Shift</keycap +> pressionada, permite selecionar listas inteiras de elementos.</para> + </listitem> + <!--<listitem> + <para> + When widget is inserted, it is recommended to give it a reasonable name. + For example, <guilabel +>green</guilabel +> check box widget has been named specifically + for its meaning, using the <guilabel +>Properties</guilabel +> tab + (<guilabel +>Name</guilabel +> property has been used to do that). Such change + can make it easier to find a widget within the list. + </para> + <screenshot> + <screeninfo +>Naming the widget as <guilabel +>green</guilabel +></screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_04_renaming_widgets.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Naming the widget as <guilabel +>green</guilabel +></phrase> + </textobject> + </mediaobject> + </screenshot> + </listitem +>--> + </itemizedlist> + </note> + <para +>Atribuir nomes razoáveis aos elementos pode ser útil mas não é obrigatório. Note que o nome do elemento é uma propriedade que não é visível para o usuário do seu formulário. Usuários somente verão o texto do elemento, fornecido pela propriedade <varname +>Texto</varname +> ou similar. </para> + </sect2> + + <sect2 id="inserting-widgets-text-fields"> + <title +>Inserindo elementos - campos de texto</title> + <para +>Vamos criar um formulário fornecendo informações pessoais, isto é, um formulário conectado com a tabela <literal +>Pessoas</literal +>. </para> + <para +>Se o formulário que está sendo desenhado deve apresentar dados obtidos de um banco de dados, você precisa colocar os <glossterm linkend="gloss-form-field" +>campos</glossterm +> apropriados nele. Para fazer isto, use os botões da barra de ferramentas <guilabel +>Elementos</guilabel +>. Cada botão corresponde a um tipo de elemento único. </para> + <procedure> + <step> + <para +>Clique no botão <guibutton +>Caixa de Texto</guibutton +> na barra de ferramentas <guilabel +>Elementos</guilabel +>. </para> + </step> + <step> + <para +>Clique na superfície do formulário com o botão <mousebutton +>esquerdo</mousebutton +> do mouse. Um novo elemento de caixa de texto será posicionado no ponto onde você clicou. Antes de soltar o botão, você pode arrastar seu mouse para especificar o tamanho desejado para o elemento. </para> + </step> + <step> + <para +>Se necessário, mova o elemento inserido usando o arrastar & soltar para a posição desejada. Você pode redimensionar o elemento posteriormente arrastando uma das pequenas caixas que aparecem próximas aos cantos. Note que as caixas só estarão visíveis quando o elemento estiver selecionado. Se você selecionar outro elemento ou a superfície do formulário, as caixas desaparecerão. </para> + </step> + <step> + <para +>Clique novamente no botão <guibutton +>Caixa de Texto</guibutton +> da barra de ferramentas e clique na superfície do formulário para inserir outro elemento. Repita esta ação uma vez mais até que você possua três caixas de texto inseridas em seu formulário. Por questão de simplicidade, nós nos limitaremos a três <glossterm linkend="gloss-form-field" +>campos</glossterm +> de dados. </para> + </step> + </procedure> + <note> + <itemizedlist> + <listitem> + <para +>Existe um menu de contexto disponível no modo de desenho de formulário, ativado por um clique do botão <mousebutton +>direito</mousebutton +> do mouse no elemento desejado ou na superfície do formulário. O menu oferece comandos como <guimenuitem +>Cortar</guimenuitem +>, <guimenuitem +>Copiar</guimenuitem +>, <guimenuitem +>Colar</guimenuitem +>, <guimenuitem +>Excluir</guimenuitem +>, dentre outros mais complexos. Muitos dos comandos também são fornecidos a partir do <guilabel +>Menu</guilabel +>, normalmente no ítem <guimenuitem +>Editar</guimenuitem +>. Atalhos de teclado estão também disponíveis para estes comandos. Alguns dos comandos somente estão disponíveis para determinados tipos de elementos. </para> + </listitem> + <listitem> + <para +>Os comandos <guimenuitem +>Cortar</guimenuitem +>, <guimenuitem +>Copiar</guimenuitem +> e <guimenuitem +>Colar</guimenuitem +> tornam possível mover ou copiar elementos entre formulários, até mesmo formulários de diferentes projetos de bancos de dados </para> + </listitem> + <listitem> + <para +>Mantendo a tecla <keycap +>Ctrl</keycap +> pressionada enquanto clica um elemento permitirá selecionar vários elementos ao mesmo tempo. </para> + </listitem> + <listitem> + <para +>Ao invés de usar os comandos <guimenuitem +>Copiar</guimenuitem +> e <guimenuitem +>Colar</guimenuitem +> para duplicar um elemento dentro do mesmo formulário, você pode manter a tecla <keycap +>Ctrl</keycap +> pressionada enquanto move um elemento. Após a tecla <keycap +>Ctrl</keycap +> ser solta, o elemento arrastado não será movido mas copiado para a nova posição. </para> + </listitem> + </itemizedlist> + </note> + </sect2> + + <sect2 id="assigning-data-sources"> + <title +>Atribuindo fontes de dados</title> + <para +>Os <glossterm linkend="gloss-form-field" +>campos</glossterm +> que você inseriu não possuem nenhuma <emphasis +>fonte de dados</emphasis +> atribuída a eles ainda, assim eles não são capazes de exibir informações do banco de dados. Para atribuir uma fonte de dados, use a página <guilabel +>Fonte de Dados</guilabel +> do <interface +>Painel de propriedades</interface +>. </para> + <para +>O primeiro passo é especificar a <glossterm linkend="gloss-form-data-source" +>fonte de dados do formulário</glossterm +>, isto é, o local de onde os dados exibidos serão buscados. Como mencionado acima, você usar a tabela <literal +>pessoas</literal +> como <glossterm linkend="gloss-form-data-source" +>fonte de dados</glossterm +> para o nosso novo formulário. </para> + <procedure> + <step> + <para +>Clique na superfície do formulário, de modo a alterar as suas propriedades.</para> + </step> + <step> + <para +>Alterne para a aba <guilabel +>Fonte de Dados</guilabel +> e insira o nome da tabela <literal +>pessoas</literal +> na lista <guilabel +>Fonte de dados do formulário</guilabel +>. Em alternativa, você pode selecionar este nome a partir da lista. </para> + <!--<screenshot> + <screeninfo +>Entering <glossterm linkend="gloss-form-data-source" +>form's data source</glossterm +> name</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_05_entering_form_data_source.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Entering <glossterm linkend="gloss-form-data-source" +>form's data source</glossterm +> name</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </step> + </procedure> + <para +>Você atribuiu a <glossterm linkend="gloss-form-data-source" +>fonte de dados do formulário</glossterm +>. Agora você precisa especificar a fonte de dados para os elementos. </para> + <procedure> + <step> + <para +>Clique no primeiro elemento de campo de texto no topo do formulário.</para> + </step> + <step> + <para +>Na página <guilabel +>Fonte de Dados</guilabel +> do painel de propriedades insira o nome do campo <varname +>nome</varname +> na lista <emphasis +>Fonte de dados do elemento</emphasis +>. Alternativamente, você pode selecionar este nome a partir da lista. </para> + <!--<screenshot> + <screeninfo +>Entering widget's data source name</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_05_entering_text_field_data_source.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Entering widget's data source name</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </step> + <step> + <para +>Clique no próximo elemento de campo de texto e insira <varname +>sobrenome</varname +> como fonte de dados.</para> + </step> + <step> + <para +>Insira como fontes de dados <varname +>rua</varname +>, <varname +>numero_casa</varname +> e <varname +>cidade</varname +> para os demais <glossterm linkend="gloss-form-field" +>campos</glossterm +> de texto de maneira semelhante. </para> + </step> + </procedure> + <para +>Você pode agora salvar o desenho do formulário (isto não é obrigatório para testar o funcionamento do formulário). Para salvar, clique o botão <guilabel +>Salvar mudanças do objeto</guilabel +> na barra de ferramentas ou use o menu <menuchoice +><shortcut +><keycombo action="simul" +><keycap +>Ctrl</keycap +><keycap +>S</keycap +></keycombo +></shortcut +> <guimenu +>Arquivo</guimenu +><guimenuitem +>Salvar</guimenuitem +></menuchoice +>. Ao salvar, será solicitado que você insira o nome do formulário. Insira <literal +>Pessoas</literal +> como título e clique no botão <guibutton +>OK</guibutton +>. O nome do formulário será preenchido automaticamente. </para> + <para +>Este é o momento certo para testar o seu formulário. Clique o botão <guibutton +>Alternar para a visão de dados</guibutton +> na barra de ferramentas. A menos que você tenha cometido algum erro ao inserir as fontes de dados, você deverá ver <glossterm linkend="gloss-form-field" +>campos do formulário</glossterm +> preenchidos com dados da tabela <literal +>pessoas</literal +>. </para> + <!--<screenshot> + <screeninfo +>The <literal +>Persons</literal +> form in data view after inserting text fields and assigning data sources</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_06_form_with_text_fields.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>The <literal +>Persons</literal +> form in data view after inserting text fields and assigning data sources</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <note> + <itemizedlist> + <listitem> + <para +>Se você deseja remover a atribuição de <glossterm linkend="gloss-form-data-source" +>fonte de dados</glossterm +> para um elemento do formulário, você pode usar o botão <guibutton +>Limpar fonte de dados do elemento</guibutton +> próximo à lista <guilabel +>Fonte de dados do elemento</guilabel +>. Do mesmo modo, você pode usar o botão <guibutton +>Limpar fonte de dados</guibutton +> próximo à lista <guilabel +>Fonte de dados do formulário</guilabel +>. </para> + </listitem> + <listitem> + <para +>Use o botão <guibutton +>Ir para fonte de dados selecionada</guibutton +> para selecionar a tabela ou consulta apropriada no <interface +>Navegador do Projeto</interface +>, de modo que você possa rapidamente abrir uma tabela ou consulta como <glossterm linkend="gloss-form-data-source" +>fonte de dados</glossterm +> do formulário. </para> + </listitem> + </itemizedlist> + <!-- TODO: mention about creating Auto Fields by using drag & drop --> + </note> + </sect2> + + <sect2 id="inserting-text-labels"> + <title +>Inserindo rótulos de texto</title> + <para +>Para tornar fácil para o usuário do formulário identificar o significado de cada elemento de campo, eles podem ser acrescidos de rótulos de texto com os títulos apropriados. Para criar rótulos de texto, o elemento <literal +>Rótulo</literal +> é usado. </para> + <para +>Insira três elementos de rótulos de texto no formulário, colocando-os à esquerda dos campos de texto (ou à direita se seu sistema operacional usa um layout direita-para-esquerda). Ao inserir um novo rótulo, um cursor de texto aparece na posição onde você pode inserir o título desejado. Insira consecutivamente: <literal +>Nome</literal +>, <literal +>Sobrenome</literal +> e <literal +>Rua</literal +>. Adicionalmente, no topo do formulário insira outro rótulo exibindo o nome do formulários, isto é, <literal +>Pessoas</literal +>. Aumente o tamanho deste rótulo e configure uma fonte maior usando o menu <menuchoice +><guimenu +>Formatar</guimenu +><guimenuitem +>Fonte</guimenuitem +></menuchoice +>. </para> + <!--<screenshot> + <screeninfo +>Ready to use form after adding text labels</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_06_form_with_labels.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Ready to use form after adding text labels</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </sect2> + + <sect2 id="actions"> + <title +>Ações</title> + <para +>Uma <literal +>Ação</literal +> é um atividade única isolada na aplicação, disponível para o usuário executar. Ela pode ser executada automaticamente como uma reação para um determinado evento (⪚, após abrir um formulário). </para> + + <sect3 id="assigning-actions-to-form-buttons"> + <title +>Atribuindo ações aos botões do formulário</title> + <para +>A maioria das ações podem ser atribuídas aos botões do formulário. A ação atribuída é executada após o botão ser clicado. </para> + <para +>Para atribuir uma ação:</para> + <procedure> + <step> + <para +>Alterne para a visão de <interface +>Desenho do formulário</interface +> se você ainda não tiver feito isto.</para> + </step> + <step> + <para +>Selecione o elemento de botão existente clicando nele ou colocando um novo elemento de botão no formulário. Se você inserir um novo botão, insira seu título e pressione <keycombo action="press" +><keycap +>Enter</keycap +></keycombo +>. </para> + </step> + <step> + <para +>Clique no elemento de botão com o botão <mousebutton +>direito</mousebutton +> do mouse para exibir o menu de contexto. </para> + </step> + <step> + <para +>A partir do menu de contexto, selecione o comando <guimenuitem +>Atribuir ação...</guimenuitem +>. </para> + </step> + <step> + <para +>Uma janela para <guilabel +>Atribuir Ação para o Botão de Comando</guilabel +> surgirá apresentando uma lista das ações disponíveis. Uma das ações estará selecionada se o elemento já tiver uma ação atribuída. Caso contrário a lista <guilabel +>Tipo de ação</guilabel +> terá como ítem selecionado o <guilabel +>Nenhum tipo</guilabel +>. </para> + </step> + <step> + <para +>Na lista <guilabel +>Tipo de ação</guilabel +> selecione o ítem <guilabel +>Aplicação</guilabel +>. As ações disponíveis a nível da aplicação serão listadas. </para> + </step> + <step> + <para +>Selecione uma das ações na lista (⪚, <guilabel +>Excluir Linha</guilabel +>).</para> + </step> + <step> + <para +>Clique no botão <guibutton +>OK</guibutton +> ou pressione a tecla <keycombo action="press" +><keycap +>Enter</keycap +></keycombo +> para aceitar sua seleção. </para> + </step> + </procedure> + <!--<screenshot> + <screeninfo +>Assigning <guilabel +>Delete Row</guilabel +> action to a form's button</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_07_assigning_action_to_button.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Assigning <guilabel +>Delete Row</guilabel +> action to a form's button</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <para +>Após alternar para a <emphasis +>visão de dados</emphasis +> do formulário, você pode experimentar se a ação funcione. Por exemplo, se você atribuiu a ação <guilabel +>Excluir Linha</guilabel +>, clicando no botão a linha atualmente selecionada no banco de dados será excluída, da mesma maneira que executando o comando de menu <menuchoice +><shortcut +><keycombo action="simul" +><keycap +>Ctrl</keycap +><keycap +>Delete</keycap +></keycombo +></shortcut +><guimenu +>Editar</guimenu +><guimenuitem +>Excluir Linha</guimenuitem +></menuchoice +> (dependendo das suas configurações, pode ser solicitada uma confirmação para exclusão). </para> + + <note> + <itemizedlist> + <listitem> + <para +>Para remover uma atribuição de uma ação, selecione o ítem <guilabel +>Nenhum tipo</guilabel +> na lista <guilabel +>Tipo de ação</guilabel +> da janela <guilabel +>Atribuir Ação para Botão de Comando</guilabel +>. </para> + </listitem> + <listitem> + <para +>Ações somente funcionam na <emphasis +>visão de dados</emphasis +> do formulário. Nem toda atribuição de ação é razoável. Por exemplo, ações de <guimenuitem +>Fonte...</guimenuitem +> estão disponíveis na visão de dados do formulário, mas somente se você tiver um elemento selecionado na <interface +>Visão de desenho</interface +>. Se você fizer mudanças nas configurações de fonte, as mudnças serão aplicadas ao texto daquele elemento selecionado. </para> + </listitem> + </itemizedlist> + </note> + </sect3> + </sect2> + + <sect2 id="widget-layouts"> + <title +>Disposição dos elementos</title> + <para +>Na maioria dos casos os elementos do formulário deverão ser convenientemente posicionados e alinhados. Posicionar, alinhar e redimensionar elementos manualmente não é fácil e estes parâmetros não serão ajustados quando o usuário redimensiona o formulário. De fato, a situação pode ser ainda pior porque você não pode considerar que um determinado formulário requer um determinado espaço uma vez que os usuários usam diferentes tamanhos de fonte e resoluções de tela. </para> + <!-- + <para> + The following example presents a form where text fields and labels were + placed by hand. Some of them cannot fit in the form's window. + </para> + <screenshot> + <screeninfo +>An example form with widgets that cannot not fit in the window</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_no_fit.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>An example form with widgets that cannot not fit in the window</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <para +>Usar a ferramenta especial chamada disposição de elementos pode ajudá-lo a dispor automaticamente os elementos do formulário. Disposição de elementos é uma ação de grupar dois ou mais elementos de modo que eles estejam bem posicionados e possuam tamanhos apropriados. </para> + <para +>Usar esta disposição em um formulário melhora o alinhamento. Além do mais, seu espaço é melhor aproveitado. Campos de texto estão próximos um do outro e o espaçamento é constante. </para> + <!--<screenshot> + <screeninfo +>Example form with layout used</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_well_fit.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Example form with layout used</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <para +>Existem dois métodos para criar uma disposição de elementos.</para> + <itemizedlist> + <listitem> + <para +>Selecionar dois ou mais elementos que devem ser colocados em uma disposição comum, e selecionar um dos tipos de disposição a partir do ítem <guilabel +>Disposição de Elementos</guilabel +> do menu de contexto. </para> + </listitem> + <listitem> + <para +>Clique em um elemento container (ou na própria superfície do formulário), onde os elementos serão inseridos e selecione um dos tipos de disposição a partir do ítem Disposição de Elementos do menu de contexto. Todos os elementos existentes no container ou no formulário, sendo do mesmo nível, serão colocados em uma disposição comum única. </para> + </listitem> + </itemizedlist> + <para +>Em cada um destes casos, você pode também usar o menu <menuchoice +><guimenu +>Formatar</guimenu +><guimenuitem +>Disposição dos Elementos</guimenuitem +></menuchoice +>. </para> + <!--<screenshot> + <screeninfo +>Selecting widgets that will be put into a layout</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_layout_selecting.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Selecting widgets that will be put into a layout</phrase> + </textobject> + </mediaobject> + </screenshot> + <screenshot> + <screeninfo +>Four widgets are selected</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_layout_selected.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Four widgets are selected</phrase> + </textobject> + </mediaobject> + </screenshot> + <screenshot> + <screeninfo +>Using the context menu for putting the widgets into a grid layout</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_layout_popup.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Using the context menu for putting the widgets into a grid layout</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <para +>A disposição de elementos é apresentada na visão de desenho usando uma caixa azul, verde ou vermelha desenhada com uma linha tracejada. Esta linha é exibida somente na visão de desenho do formulário. </para> + <!--<screenshot> + <screeninfo +>Widgets within a grid layout</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_layout_grid.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Widgets within a grid layout</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <para +>Além do tipo grade, existem outros tipos de disposição de elementos.</para> + <variablelist> + <varlistentry> + <term +>vertical</term> + <listitem> + <para +>Disposição de elementos vertical</para> + <!--<screenshot> + <screeninfo +>Vertical widget layout</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_layout_vertical.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Vertical widget layout</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </listitem> + </varlistentry> + <varlistentry> + <term +>horizontal</term> + <listitem> + <para +>Disposição de elementos horizontal</para> + <!--<screenshot> + <screeninfo +>Horizontal widget layout</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_layout_horizontal.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Horizontal widget layout</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </listitem> + </varlistentry> + <!-- TODO podzia poziomy / pionowy + <br +><img src="img/05_04_08_form_layout_vertical_splitter.png"> + <br +><br> + <br +><img src="img/05_04_08_form_layout_horizontal_splitter.png"> + <br +><br> + </li +> --> + </variablelist> + + <sect3 id="springs-in-widget-layouts"> + <title +>Molas em disposições de elementos</title> + <para +>Uma <emphasis +>mola</emphasis +> em uma disposição de elementos é um elemento especial e invisível que permite ajustar a posição e o tamanho dos elementos dentro de uma disposição. Como uma mola, ele estica e comprime um elemento à direita, na base ao à esquerda, de modo que ele possua a posição e tamanhos desejados. </para> + <para +>Para usar uma mola:</para> + <procedure> + <step> + <para +>Selecione o ícone de mole na barra de ferramentas de <guilabel +>Elementos</guilabel +>. </para> + </step> + <step> + <para +>Clique no ponto selecionado do formulário para inserir a mola.</para> + </step> + </procedure> + <!--<para> + For the following example, the spring has been inserted on the left + hand of the text label "Persons". The label is thus displayed on the + right hand of the form. To make the spring work, it has been put into + a common horizontal layout with the label. + </para> + <screenshot> + <screeninfo +>Horizontal layout containing a spring and a text label</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_spring.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Horizontal layout containing a spring and a text label</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <para +>Para fazer a mola funcionar, você precisa criar uma disposição global de elementos, isto é, uma disposição para o formulário propriamente dito. Após isso, molas podem usar os lados do formulário como limite para expansão. </para> + </sect3> + <!-- + + TODO: The entire text in this section is built around a screenshot + example, so it's commented out for now. + + <sect3 id="advanced-widget-layouts"> + <title +>Advanced widget layouts</title> + <para> + Widget layouts can be combined (or nested). On the following example + you can identify two nested layouts: + </para> + <orderedlist> + <listitem> + <para> + Horizontal layout with a spring, aligning the <literal +>Persons</literal> + text label to the right. + </para> + </listitem> + <listitem> + <para +>Grid layout grouping widgets on the whole form.</para> + </listitem> + </orderedlist> + <screenshot> + <screeninfo +>Two widget layouts combined: horizontal layout inside of a grid layout</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_advanced_layout.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Two widget layouts combined: horizontal layout inside of a grid layout</phrase> + </textobject> + </mediaobject> + </screenshot> + <para> + The horizontal layout is treated in the example as a single widget by + the grid layout - it takes exactly one <quote +>cell</quote +> of the grid. + After opening a form designed this way in the data view, you can notice + (by resizing the form) that: + </para> + <itemizedlist> + <listitem> + <para> + <literal +>Persons</literal +> text label thanks to the spring used is constantly + aligned to the to the right side of the form. + </para> + </listitem> + <listitem> + <para> + Text fields take all of the available width thanks to putting them + into the grid layout. + </para> + </listitem> + <listitem> + <para> + All the form's widgets are pushed to the top thanks to the spring + used at the bottom of the form. + </para> + </listitem> + </itemizedlist> + <screenshot> + <screeninfo +>The form using the two layouts displayed in data view</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_08_form_advanced_layout_view.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>The form using the two layouts displayed in data view</phrase> + </textobject> + </mediaobject> + </screenshot> + </sect3 +>--> + + <sect3 id="removing-widget-layouts"> + <title +>Removendo disposições de elementos</title> + <para +>Para remover uma disposição de elementos sem remover os elementos, execute uma destas a ações: </para> + <itemizedlist> + <listitem> + <para +>Clique com o botão <mousebutton +>direito</mousebutton +> do mouse na borda da disposição e selecione o comando <guimenuitem +>Quebrar Disposição</guimenuitem +> a partir do menu de contexto. </para> + </listitem> + <listitem> + <para +>Clique com o botão <mousebutton +>esquerdo</mousebutton +> do mouse na borda da disposição e selecione o menu <menuchoice +><guimenu +>Formatar</guimenu +><guimenuitem +>Quebrar Disposição</guimenuitem +></menuchoice +>. </para> + </listitem> + </itemizedlist> + <note> + <para +>Remover uma disposição de elementos usando o comando <guimenuitem +>Quebrar Disposição</guimenuitem +> não removerá os elementos contidos na disposição. Se você deseja remover os elementos também, apenas selecione a disposição clicando em sua borda e pressione a tecla <keycap +>Delete</keycap +> ou use o menu <menuchoice +><guimenu +>Editar</guimenu +><guimenuitem +>Excluir</guimenuitem +></menuchoice +> ou o comando equivalente do menu de contexto. </para> + </note> + </sect3> + + <sect3 id="size-policies-for-widgets-within-a-layout"> + <title +>Política de tamanhos para elementos dentro de uma disposição</title> + <para +>Ao invés de usar um tamanho fixo para seus elementos, no &kexi; você pode escolher entre várias políticas de tamanho de elementos. Um <emphasis +>política de tamanho</emphasis +> é uma estratégia flexível para controlar como um elemento é esticado (ou encolhido) dependendo dos elementos vizinhos e do espaço disponível no formulário. </para> + <para +>Após colocar os elementos em uma <emphasis +>disposição</emphasis +>, normalmente cada elemento obtém uma proporcional política de tamanho (<guilabel +>Preferencial</guilabel +>). Estes elementos serão automaticamente redimensionados com as configurações preferenciais, dependendo do seu tipo e tamanho da disposição em si. Por exemplo, três botões colocados em uma disposição horizontal serão redimensionados para manter seus textos visíveis. </para> + <para +>Para cada elemento inserido no formulário, haverão configurações para política de tamanho disponíveis no <interface +>Editor de Propriedades</interface +>. As configurações são apresentadas como grupos de propriedades chamados <guilabel +>Política de Tamanho</guilabel +>. </para> + <!--<screenshot> + <screeninfo +>A group of properties for defining a widget's size policy</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_09_size_policy_properties.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>A group of properties for defining a widget's size policy</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <para +>Este grupo de propriedades contém:</para> + <variablelist> + <varlistentry> + <term +><guilabel +>Política de Tamanho Horizontal</guilabel +></term> + <listitem> + <para +>definindo o tamanho horizontal do elemento,</para> + </listitem> + </varlistentry> + <varlistentry> + <term +><guilabel +>Política de Tamanho Vertical</guilabel +></term> + <listitem> + <para +>definindo o tamanho vertical do elemento,</para> + </listitem> + </varlistentry> + <varlistentry> + <term +><guilabel +>Esticamento Horizontal</guilabel +></term> + <listitem> + <para +>definindo a força da atividade da <guilabel +>Política de Tamanho Horizontal</guilabel +>, </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><guilabel +>Esticamento Vertical</guilabel +></term> + <listitem> + <para +>definindo a força da atividade da <guilabel +>Política de Tamanho Vertical</guilabel +> </para> + </listitem> + </varlistentry> + </variablelist> + + <sect4> + <title +>Valores para as políticas de tamanho</title> + <para +>Os seguintes valores estão disponíveis na lista para as propriedades da <guilabel +>Política Horizontal de Tamanho</guilabel +> e <guilabel +>Política Vertical de Tamanho</guilabel +> visíveis no <interface +>Editor de Propriedades</interface +>: </para> + <variablelist> + <varlistentry> + <term +><guilabel +>Fixo</guilabel +></term> + <listitem> + <para +>este valor significa que o elemento não pode ser automaticamente redimensionado; ele deve manter um tamanho constante definido durante o desenho (largura e altura), </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><guilabel +>Mínimo</guilabel +></term> + <listitem> + <para +>este valor significa que o tamanho original do elemento é configurado como o mínimo permitido, ele é suficiente e não há necessidade de expandir o elemento, mas o elemento será expandido se necessário. Este tipo de política pode ser usada para forçar que o elemento seja expandido para a largura ou altura totais, especialmente se você configurar um valor de esticamento maior que 0. </para> + <!--<screenshot> + <screeninfo +>Text field and two buttons within a grid layout (Minimum horizontal size policy is set for both buttons, so these are slightly wider than needed)</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_09_size_policy_minimum.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Text field and two buttons within a grid layout (Minimum horizontal size policy is set for both buttons, so these are slightly wider than needed)</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </listitem> + </varlistentry> + <varlistentry> + <term +><guilabel +>Máximo</guilabel +></term> + <listitem> + <para +>este valor significa que o tamanho original do elemento está configurado para o máximo permitido e que pode ser diminuído sem quebrar a usabilidade e legibilidade do elemento se outros elementos necessitarem de mais espaço, </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><guilabel +>Preferencial</guilabel +></term> + <listitem> + <para +>este valor significa que o tamanho original do elemento é o mais adequado ou preferencial; no entanto, o elemento pode ser encolhido ou expandido e ele permanecerá legível, </para> + <!--<screenshot> + <screeninfo +>Text field and two buttons within a grid layout (Preferred horizontal size policy is set for both buttons)</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_09_size_policy_preferred.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Text field and two buttons within a grid layout (Preferred horizontal size policy is set for both buttons)</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </listitem> + </varlistentry> + <varlistentry> + <term +><guilabel +>Expansível</guilabel +></term> + <listitem> + <para +>este valor significa que o tamanho original do elemento é razoável mas o elemento pode também ser encolhido; ele pode ser expandido também para tomar tanto espaço quanto possível, </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><guilabel +>Expansão Mínima</guilabel +></term> + <listitem> + <para +>este valor significa que o tamanho original do elemento é permitido; ele pode ser expandido para tomar tanto espaço quanto possível, </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><guilabel +>Ignorado</guilabel +></term> + <listitem> + <para +>este valor significa que o tamanho original do elemento é ignorado; o elemento pode ser expandido para tomar tanto espaço quanto possível mas outros elementos normalmente não permitirão isso </para> + </listitem> + </varlistentry> + </variablelist> + <para +>Tipos diferentes de elementos possuem políticas de tamanho padrão variadas; por exemplo, elementos de botão possuem a política de tamanho padrão configurada para <guilabel +>Mínimo</guilabel +> (em ambas direções), enquanto elementos de campo de texto possuem a política de tamanho vertical configurada para <guilabel +>Fixo</guilabel +>. </para> + <para +>As políticas de tamanho mais freqüentementes usadas são <guilabel +>Preferencial</guilabel +>, <guilabel +>Mínimo</guilabel +> e <guilabel +>Máximo</guilabel +>. </para> + </sect4> + + <sect4> + <title +>Esticamento horizontal e vertical</title> + <para +>As propriedades de <guilabel +>Esticamento Vertical</guilabel +> e <guilabel +>Esticamento Horizontal</guilabel +> aceitam valores inteiro maiores ou iguais a 0. Estas propriedades permitem um ajuste fino do comportamento das políticas de tamanho. O valor padrão para a maioria das propriedades é 0. Um valor maior de esticamento significa que o elemento será expandido mais do que os outros elementos que possuem um valor menor configurado. </para> + <!--<screenshot> + <screeninfo +>Size of button widgets affected by setting Vertical Stretch property of the second button to 1</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_09_size_policy_vertical_stretch.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Size of button widgets affected by setting Vertical Stretch property of the second button to 1</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </sect4> + </sect3> + </sect2> + + <sect2 id="setting-widgets-size-and-position-by-hand"> + <title +>Configurando a posição e tamanho dos elementos manualmente</title> + <para +>Caso o seu formulário não possua nenhuma disposição principal configurada para posicionamento e redimensionamento automáticos, você provavelmente desejará modificar o tamanho e posição dos elementos de modo que o formulário pareça limpo e fácil de usar. O desenhador de formulários do &kexi; simplifica esta tarefa oferecendo os seguintes grupos de comandos: </para> + <itemizedlist> + <listitem> + <para +>Ajustar tamanhos dos elementos selecionados. Os comandos estão disponíveis na opção <menuchoice +><guimenu +>Formatar</guimenu +><guisubmenu +>Ajustar Tamanho dos Elementos</guisubmenu +></menuchoice +> do menu ou na opção <menuchoice +><guisubmenu +>Ajustar Tamanho dos Elementos</guisubmenu +></menuchoice +> do menu de contexto. O botão <guibutton +>Ajustar Tamanho dos Elementos</guibutton +> da barra de ferramentas também está disponível. </para> + <variablelist> + <varlistentry> + <term +><!--<img src="img/aofit.png" class="icon" +>--><guilabel +>Para Caber</guilabel +></term> + <listitem> + <para +>Os tamanhos dos elementos selecionados serão alterados de modo que cada elemento será redimensionado para um tamanho que caiba seu conteúdo; por exemplo, o tamanho dos rótulos de texto serão mudados para caber o seu texto. A posição dos elementos não será mudada. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><!--<img src="img/aogrid.png" class="icon" +>--><guilabel +>À Grade</guilabel +></term> + <listitem> + <para +>Os tamanhos dos elementos selecionados serão alterados de modo que cada canto do elemento será colocado em um ponto da grade do formulário (ou outro container). A posição dos elementos pode ser levemente alterada. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><!--<img src="img/aoshortest.png" class="icon" +>--><guilabel +>Para o Menor</guilabel +></term> + <listitem> + <para +>A altura dos elementos selecionados será alterada de modo que todos eles terão a mesma altura do menor. A posição dos elementos não será mudada. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><!--<img src="img/aotallest.png" class="icon" +>--><guilabel +>Para o Mais Alto</guilabel +></term> + <listitem> + <para +>A altura dos elementos selecionados será alterada de modo que todos eles terão a mesma altura do mais alto. A posição dos elementos não será mudada. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><!--<img src="img/aonarrowest.png" class="icon" +>--><guilabel +>Para o Mais Estreito</guilabel +></term> + <listitem> + <para +>A largura dos elementos selecionados será alterada de modo que todos eles terão a mesma largura do mais estreito. A posição dos elementos não será mudada. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><!--<img src="img/aowidest.png" class="icon" +>--><guilabel +>Para o Mais Largo</guilabel +></term> + <listitem> + <para +>A largura dos elementos selecionados será alterada de modo que todos eles terão a mesma largura do mais largo. A posição dos elementos não será mudada. </para> + </listitem> + </varlistentry> + </variablelist> + </listitem> + <listitem> + <para +>Alinhar as posições dos elementos selecionados. Os comandos estão disponíveis na opção <menuchoice +><guimenu +>Formatar</guimenu +><guisubmenu +>Alinhar Posição dos Elementos</guisubmenu +></menuchoice +> do menu e a opção <menuchoice +><guisubmenu +>Alinhar Posição dos Elementos</guisubmenu +></menuchoice +> do menu de contexto. O botão de lista <guibutton +>Alinhar Posição dos Elementos</guibutton +> da barra de ferramentas também está disponível. </para> + <variablelist> + <varlistentry> + <term +><!--<img src="img/aoleft.png" class="icon" +>--><guilabel +>À Esquerda</guilabel +></term> + <listitem> + <para +>Todos os elementos selecionados serão alinhados com o lado esquerdo do elemento mais à esquerda dentre os selecionados. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><!--<img src="img/aoright.png" class="icon" +>--><guilabel +>À Direita</guilabel +></term> + <listitem> + <para +>Todos os elementos selecionados serão alinhados com o lado direito do elemento mais à direita dentre os selecionados. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><!--<img src="img/aotop.png" class="icon" +>--><guilabel +>Ao Topo</guilabel +></term> + <listitem> + <para +>Todos os elementos selecionados serão alinhados com o lado superior do elemento mais acima dentre os selecionados. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><!--<img src="img/aobottom.png" class="icon" +>--><guilabel +>Ao Fundo</guilabel +></term> + <listitem> + <para +>Todos os elementos selecionados serão alinhados com o lado inferior do elemento mais abaixo dentre os selecionados. </para> + </listitem> + </varlistentry> + <varlistentry> + <term +><!--<img src="img/aopos2grid.png" class="icon" +>--><guilabel +>À Grade</guilabel +></term> + <listitem> + <para +>Todos os 'cantos superiores esquerdo dos elementos selecionados serão movidos de modo que fiquem posicionados no ponto da grade mais próximo. </para> + </listitem> + </varlistentry> + </variablelist> + <para +>Nenhum dos comandos acima redimensiona os elementos.</para> + </listitem> + </itemizedlist> + <para +>Existem também alguns comandos adicionais disponíveis: <guimenuitem +>Trazer Elemento para Frente</guimenuitem +> (isto é, acima de todos os outros elementos) e <guimenuitem +>Enviar Elemento para Trás</guimenuitem +> (isto é, abaixo de todos os outros elementos). Estes dois comandos são raramente usados, uma vez que não é muito comum colocar um elemento acima do outro (exceto quando um container contém outro elemento dentro). Note também que clicar em um elemento com o botão do mouse é o suficiente para trazer o elemento para frente. </para> + </sect2> + + <sect2 id="setting-the-tab-order"> + <title +>Configurando a ordem de tabulação</title> + <para +>O foco do elemento determina a disponibilidade de atividade do elemento usando o teclado. O foco é relacionado aos elementos exibidos na visão de dados do formulário. Somente um elemento de formulário pode ter o foco por vez. O uso mais freqüente do foco é a entrada de texto (quando um campo de texto está ativo, isto é, com foco). Outro exemplo é o elemento de botão - quando dispõe do foco, é possível <quote +>pressioná-lo</quote +> usando a tecla <keycombo action="press" +><keycap +>Enter</keycap +></keycombo +> ou <keycombo action="press" +><keycap +>Espaço</keycap +></keycombo +> ao invés do botão do mouse. </para> + <para +>Existem alguns métodos para tornar os elementos ativos (mover o foco para o elemento): clicar com o botão do mouse, rodar a roda do mouse sobre o elemento, ou usar a tecla <keycombo action="press" +><keycap +>Tab</keycap +></keycombo +>. O último método é freqüentemente usado devido à sua velocidade e conveniência para os usuários. A disponibilidade de métodos de obtenção do foco é controlada pela propriedade <guilabel +>Política de Foco</guilabel +> de um determinado elemento. </para> + <para +>Existe uma relação entre focar (ativar) elementos usando a tecla <keycombo action="press" +><keycap +>Tab</keycap +></keycombo +> e a configuração de tabulação de um formulário. Após pressionar a tecla <keycombo action="press" +><keycap +>Tab</keycap +></keycombo +>, o próximo elemento deverá receber o foco, de modo que o formulário deve conhecer a ordem de tabulação. </para> + <para +>Para alterar a ordem de tabulação para um elemento de formulário:</para> + <procedure> + <step> + <para +>Alterne para a visão de desenho do formulário.</para> + </step> + <step> + <para +>Execute o comando de menu <menuchoice +><guimenu +>Editar</guimenu +><guimenuitem +>Editar Ordem de Tabulação...</guimenuitem +></menuchoice +>. A janela <guilabel +>Editar Ordem de Tabulação</guilabel +> aparecerá com as configuração para este formulário. </para> + <!--<screenshot> + <screeninfo +>A window for editing tab order for a form</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_11_tab_stop_dialog.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>A window for editing tab order for a form</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + <para +>A janela contém uma lista com duas colunas: a primeira coluna exibe os nomes dos elementos, e a segunda os tipos dos elementos. Para tornar mais fácil reconhecer o significado dos nomes e tipos para o usuário, ícones relacionados com os tipos são também exibidos. A lista contém somente elementos que possuem política de foco que permite o uso da tecla <keycap +>Tab</keycap +>. A janela permite que você mude a ordem de tabulação ou configure a ordem de tabulação automática. </para> + </step> + <step> + <para +>Para mudar a ordem de tabulação, você pode:</para> + <itemizedlist> + <listitem> + <para +>Clicar no nome do elemento desejado na lista de elementos e arrastá-lo para a posição desejada (acima ou abaixo) usando o mouse. </para> + </listitem> + <listitem> + <para +>Clicar o nome do elemento desejado na lista de elementos e usar os botões <guibutton +>Mover Acima</guibutton +> ou <guibutton +>Mover Abaixo</guibutton +>, para mover os elementos para a posição desejada. </para> + </listitem> + <listitem> + <para +>Ativar a opção <guilabel +>Manipular ordem de tabulação automaticamente</guilabel +> para configurar a ordem automática de tabulação para o formulário. Se esta opção for ativada, qualquer mudança feita na lista de elementos manualmente não será levada em consideração - o &kexi; manipulará a ordem de tabulação por si mesmo. A ordenação automática implica em que o elemento superior-esquerdo receberá o foco primeiro (ou superior-direito se seu sistema operacional usar uma disposição da direita-para-esquerda), e a ordem vai da esquerda para direita (ou da direita para esquerda, respectivamente) e de cima para baixo. </para> + <!--<screenshot> + <screeninfo +>Automatic tab order for a form</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_04_11_auto_tab_stop.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Automatic tab order for a form</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </listitem> + </itemizedlist> + </step> + <step> + <para +>Clique no botão <guibutton +>OK</guibutton +> para aceitar as mudanças ou no botão <guibutton +>Cancelar</guibutton +> para descartá-las. </para> + </step> + </procedure> + </sect2> + </sect1> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/enteringdataintotables.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/enteringdataintotables.docbook new file mode 100644 index 00000000..719f378e --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/enteringdataintotables.docbook @@ -0,0 +1,159 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> + + --> + + <sect1 id="entering-data-into-tables"> + <title +>Inserindo Dados em Tabelas</title> + <para +>Você desenhou as duas tabelas <literal +>Pessoas</literal +> e <literal +>num_telefones</literal +>. Nenhuma delas contém qualquer dado ainda. Você pode inserir alguns dados, e este capítulo lhe ensinará como fazer isto de maneira rápida e efetiva. </para> + <procedure> + <step> + <para +>Inicie com a tabela <literal +>pessoas</literal +>. Abra-a na <interface +>Visão de Dados</interface +> usando o menu de contexto do <interface +>Navegador do Projeto</interface +>. A célula atual é marcada com uma borda mais grossa (normalmente preta), e um <firstterm +>cursor de célula</firstterm +> é posicionado. O conteúdo do célula, se existir, é realçado com uma cor diferente. A linha atual, neste caso a que você posicionou o cursor retangular, é marcada à esquerda com um símbolo de seta. </para> + <para +>Você pode navegar pelas células da tabela usando as teclas de seta, <keycap +>PageDown</keycap +>, <keycap +>PageUp</keycap +>, <keycap +>Home</keycap +>, <keycap +>End</keycap +>. Você pode também clicar com o mouse em uma célula para selecioná-la. </para> + <para +>Inicialmente, após abrir a tabela <literal +>Pessoas</literal +>, o cursor é posicionado na coluna <literal +>id</literal +>. A coluna possui a propriedade de auto-numeração ativada, marcada com o texto <literal +>(auto-numeração)</literal +> em azul na última linha. Isto significa que você não precisa inserir valores aqui manualmente ao inserir dados para uma nova linha, porque a célula será preenchida automaticamente com números sucessivos. </para> + <!--<screenshot> + <screeninfo +>Data entry</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_02_00_data_editing.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Data entry</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </step> + <step> + <para +>Inserir novas linhas e entrar dados para elas no &kexi; é diferente da maneira que você faz em planilhas. Para inserir dados para a uma nova linha, você precisa usar as teclas de setas ou o mouse, mova o cursor para a última linha vazia marcada com um sinal de somar (+). Coloque o seu cursor na coluna <literal +>nome</literal +> (segunda) e insira um nome de uma pessoa. Insira também o sobrenome, rua, número da casa e cidade. Quando tiver feito, mova o cursor para a última linha vazia, seja usando a <keycap +>Seta para Baixo</keycap +> ou clicando na última linha com o mouse para adicionar uma nova linha. </para> + <note> + <title +>Detalhes Sobre Ações Disponíveis ao Inserir Dados em Tabelas</title> + <itemizedlist> + <listitem> + <para +>A partir do momento que você começou a inserir o primeiro caracter, a linha atual está sendo editada. Um símbolo de um lápis aparece do lado esquerdo da tabela de dados. </para> + </listitem> + <listitem> + <para +>Um clique-duplo em uma célula com o botão ou pr essionar a tecla <keycap +>Enter</keycap +> &LMB;ou <keycap +>F2</keycap +> inicia a edição da linha atual. </para> + </listitem> + <listitem> + <para +>Pressionar a tecla <keycap +>Esc</keycap +>enquanto o conteúdo da célula é editado <emphasis +>cancela as mudanças feitas nesta célula</emphasis +>. No entanto, o símbolo do lápis não desaparecerá porque você pode ainda mover para uma célula diferente da linha editada para mudar seu conteúdo. Para <emphasis +>cancelar as mudanças feitas para toda a linha editada</emphasis +>, pressione a tecla <keycap +>Esc</keycap +> novamente. </para> + </listitem> + <listitem> + <para +>Ao invés de pressionar a tecla <keycap +>Esc</keycap +>, você pode clicar o botão <guibutton +>Cancelar</guibutton +> da barra de ferramentas ou selecionar <menuchoice +><guimenu +>Dados</guimenu +><guimenuitem +>Cancelar Mudanças da Linha</guimenuitem +></menuchoice +> no menu. </para> + </listitem> + <listitem> + <para +>Clique nas teclas <keycombo action="simul" +><keycap +>Shift</keycap +><keycap +>Enter</keycap +></keycombo +> para aceitar as mudanças feitas em todas as células na linha atualmente editada. Você pode também clicar no botão <guibutton +>OK</guibutton +> da barra de ferramentas ou selecionar <menuchoice +><guimenu +>Dados</guimenu +><guimenuitem +>Salvar Linha</guimenuitem +></menuchoice +> no menu. </para> + </listitem> + </itemizedlist> + </note> + </step> + <step> + <para +>Preencha a tabela <literal +>num_telefones</literal +> com os dados. Na coluna <literal +>pessoas</literal +> você precisa fornecer o número da pessoa existente na tabela <literal +>pessoas</literal +>. </para> + <!--<screenshot> + <screeninfo +>Example contents of the <literal +>phone_numbers</literal +> table</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_01_01_table2_contents.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +>Example contents of the <literal +>phone_numbers</literal +> table</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </step> + </procedure> + </sect1> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/enteringdatausingforms.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/enteringdatausingforms.docbook new file mode 100644 index 00000000..624f7ffa --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/enteringdatausingforms.docbook @@ -0,0 +1,31 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> + + --> + + <sect1 id="entering-data-using-forms"> + <title +>Inserindo Dados Usando Formulários</title> + <para +>A inserção e edição de dados é uma tarefa comum do usuário de aplicações de bancos de dados. O programador de bancos de dados deve verificar o formulário em termos de validação da entrada de dados, e ver se o formulário funciona como esperado. </para> + <para +>Para testar seu formulário, alterne para a visão de dados. Uma linha (registro) única de dados será exibida e o cursor de texto será colocado dentro do primeiro campo de dados. Você pode mover entre os campos usando o &LMB; ou as teclas <keycap +>Tab</keycap +> e <keycombo action="simul" +><keycap +>Shift</keycap +><keycap +>Tab</keycap +></keycombo +>. Durante a edição, haverá um ícone de lápis visível próximo ao navegador de registros. Após a inserção da linha (registro) você pode pressionar as teclas <keycombo action="simul" +><keycap +>Shift</keycap +><keycap +>Enter</keycap +></keycombo +> ou o botão <guibutton +>OK</guibutton +> na barra de ferramentas para aceitar as mudanças feitas na linha atual. Clicando o botão <guibutton +>Cancelar</guibutton +> na barra de ferramentas, você descartará as mudanças feitas na linha atual e restaurará o conteúdo dos campos de dados. Você pode usar os botões do navegador de registros para mover para uma nova linha. Todas as funções do navegador estão também disponíveis de maneira semelhante na visão de tabela de dados. </para> + </sect1> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/index.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/index.docbook new file mode 100644 index 00000000..8dc97e6e --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/index.docbook @@ -0,0 +1,152 @@ +<?xml version="1.0" ?> +<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [ + <!ENTITY package "koffice"> + <!ENTITY kappname "&kexi;"> + <!ENTITY % addindex "IGNORE"> + <!ENTITY % Brazilian-Portuguese "INCLUDE"> + + <!-- Chapters --> + <!ENTITY intro SYSTEM "intro.docbook"> + <!ENTITY basics SYSTEM "basics.docbook"> + <!ENTITY building SYSTEM "building.docbook"> + <!ENTITY querydesigning SYSTEM "querydesigning.docbook"> + <!ENTITY enteringdataintotables SYSTEM "enteringdataintotables.docbook"> + <!ENTITY designingforms SYSTEM "designingforms.docbook"> + <!ENTITY enteringdatausingforms SYSTEM "enteringdatausingforms.docbook"> + <!ENTITY configuration SYSTEM "configuration.docbook"> + <!ENTITY menus SYSTEM "menus.docbook"> + <!ENTITY credits SYSTEM "credits.docbook"> + <!ENTITY database SYSTEM "database.docbook"> + <!ENTITY comparing SYSTEM "comparing.docbook"> + <!-- Do not define any other entities; instead, use the entities + from entities/general.entities and $LANG/user.entities. --> +]> + +<book lang="&language;"> + +<bookinfo> +<title +>O Manual do &kexi; </title> + +<authorgroup> + <author +><personname +> <firstname +>Martin</firstname +> <othername +>A.</othername +> <surname +>Ellis</surname +> </personname +> <email +>martin.ellis@kdemail.net</email +> </author> + <author +><personname +> <firstname +>Jaroslaw</firstname +> <surname +>Staniek</surname +> </personname +> <email +>js@iidea.pl</email +> </author> + <othercredit role="translator" +><firstname +>Marcus</firstname +><surname +>Gama</surname +><affiliation +><address +><email +>marcus.gama@gmail.com</email +></address +></affiliation +><contrib +>Tradução</contrib +></othercredit +> +</authorgroup> + +<copyright> + <year +>2004</year> + <year +>2005</year> + <year +>2006</year> + <holder +>Jaroslaw Staniek</holder> + <holder +>Martin Ellis</holder> +</copyright> + +<!-- Translators: put here the copyright notice of the translation --> +<!-- Put here the FDL notice. Read the explanation in fdl-notice.docbook + and in the FDL itself on how to use it. --> +<legalnotice +>&FDLNotice;</legalnotice> + +<!-- Date and version information of the documentation +Don't forget to include this last date and this last revision number, we +need them for translation coordination ! +Please respect the format of the date (YYYY-MM-DD) and of the version +(V.MM.LL), it could be used by automation scripts. +Do NOT change these in the translation. --> + +<date +>2006-09-07</date> +<releaseinfo +>1.6</releaseinfo> + +<!-- Abstract about this handbook --> +<abstract> + <para +>O &kexi; é uma aplicação para criar bancos de dados e para o gerenciamento de dados no pacote de produtividade do &koffice;. </para> +</abstract> + +<!-- Keywords --> +<keywordset> + <keyword +>KDE</keyword> + <keyword +>KOffice</keyword> + <keyword +>Kexi</keyword> + <keyword +>banco de dados</keyword> +</keywordset> + +</bookinfo> + +<!-- The contents of the documentation begin here. Label +each chapter so with the id attribute. This is necessary for two reasons: it +allows you to easily reference the chapter from other chapters of your +document, and if there is no ID, the name of the generated HTML files will vary +from time to time making it hard to manage for maintainers and for the CVS +system. Any chapter labelled (OPTIONAL) may be left out at the author's +discretion. Other chapters should not be left out in order to maintain a +consistent documentation style across all KDE apps. --> + +&intro; +&basics; +&building; +&configuration; +&menus; +&credits; +&database; +&comparing; + +&documentation.index; +</book> + +<!-- +Local Variables: +mode: sgml +sgml-minimize-attributes: nil +sgml-general-insert-case: lower +End: + +vim:tabstop=2:shiftwidth=2:expandtab +kate: space-indent on; indent-width 2; tab-width 2; indent-mode none; +--> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/intro.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/intro.docbook new file mode 100644 index 00000000..eebee60d --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/intro.docbook @@ -0,0 +1,61 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> +--> + +<chapter id="introduction"> +<title +>Introdução</title> + +<!-- The introduction chapter contains a brief introduction for the +application that explains what it does and where to report +problems. Basically a long version of the abstract. Don't include a +revision history. (see installation appendix comment) --> + +<para +>O &kexi; é uma aplicação de gerenciamento de banco dados integrada. Poderá ser usada para criar esquemas de bancos de dados, inserir dados, efetuar pesquisas e processar dados. Os formulários poderão ser criados para oferece uma interface comum aos seus dados. Todos os objetos do banco de dados - tabelas, pesquisas e formulários - são gravados no banco de dados, tornando simples o compartilhamento dos dados e do desenho. </para> + +<para +>O &kexi; faz parte do pacote de produtividade &koffice; para o Ambiente de Trabalho K. </para> + +<para +>Além do &kexi; armazenar os seus bancos de dados em arquivos, ele também poderá guardar os seus dados num <firstterm +>servidor de bancos de dados</firstterm +>. Usando um servidor de bancos de dados, você poderá compartilhar a sua base de dados com outras pessoas, permitindo também a mais de uma pessoa usar o banco de dados ao mesmo tempo. São suportados os seguintes servidores de bancos de dados pelo &kexi;: <itemizedlist> + <listitem> + <para +>MySQL (Veja em <ulink url="http://www.mysql.com/" +>http://www.mysql.com/</ulink +>) </para> + </listitem> + <listitem> + <para +>PostgreSQL (Veja em <ulink url="http://www.postgresql.org/" +>http://www.postgresql.org/</ulink +>) </para> + </listitem> + </itemizedlist> +</para> + +<para +>Mais informações sobre o &kexi; podem ser encontradas na página do &kexi;, dentro da página Web do &koffice; em <ulink url="http://www.koffice.org/kexi/" +>http://www.koffice.org/kexi/</ulink +> e na página do próprio &kexi; em <ulink url="http://www.kexi-project.org/about.html" +>http://www.kexi-project.org/about.html</ulink +>. </para> + +<para +>Se você tiver algumas dúvida sobre o &kexi;, existem duas listas de correio que poderá usar. A <ulink url="mailto:kexi@kde.org" +>lista de correio dos usuários do Kexi</ulink +> poderá ser usada para fazer perguntas sobre a utilização do &kexi; ou sobre o projeto do &kexi;. A <ulink url="mailto:kexi-devel@kde.org" +>lista de correio de desenvolvimento do Kexi</ulink +> poderá ser usada para fazer perguntas sobre o desenvolvimento do &kexi;. Mais informações sobre a inscrição nessas listas, além de algumas formas de entrar em contato com os programadores do &kexi;, poderão ser encontradas em: <itemizedlist +> <listitem +> <para +> <ulink url="http://www.kexi-project.org/support.html" +>http://www.kexi-project.org/support.html</ulink> + </para> + </listitem> + </itemizedlist> +</para> +</chapter> + diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/menus.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/menus.docbook new file mode 100644 index 00000000..b036165d --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/menus.docbook @@ -0,0 +1,1289 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> +--> + +<chapter id="menus"> + <chapterinfo> + <authorgroup> + <author +><firstname +>Anne-Marie</firstname +> <surname +>Mahfouf</surname +> <affiliation +> <address +><email +>annemarie.mahfouf@free.fr</email +></address> + </affiliation> + </author> + <author +><personname +> <firstname +>Jarosław</firstname +> <surname +>Staniek</surname +> </personname +> <email +>js@iidea.pl</email +> </author> + <othercredit role="translator" +><firstname +>Marcus</firstname +><surname +>Gama</surname +><affiliation +><address +><email +>marcus.gama@gmail.com</email +></address +></affiliation +><contrib +>Tradução</contrib +></othercredit +> + </authorgroup> + </chapterinfo +> + <title +>Referência de Comandos</title> + + <sect1 id="filemenu"> + <title +>O Menu <guimenu +>Arquivo</guimenu +></title> + <para> + <variablelist> + <varlistentry> + <term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>N</keycap +></keycombo +> </shortcut +> <guimenu +>Arquivo</guimenu +> <guimenuitem +>Novo...</guimenuitem +> </menuchoice +></term> + <listitem +><para +><action +>Cria um projeto novo.</action +> O projeto aberto atualmente não é afetado.</para +></listitem> + </varlistentry> + + <varlistentry> + <term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>O</keycap +></keycombo +> </shortcut +> <guimenu +>Arquivo</guimenu +> <guimenuitem +>Abrir...</guimenuitem +> </menuchoice +></term> + <listitem +><para +><action +>Abre um projeto existente.</action +> O projeto aberto atualmente não é afetado.</para +></listitem> + </varlistentry> + + <varlistentry> + <term> + <menuchoice +><guimenu +>Arquivo</guimenu +> <guimenuitem +>Obter Bancos de Dados de Exemplo...</guimenuitem +> </menuchoice> + </term> + <listitem> + <para +><action +>Abre a janela do KNewStuff</action +> que lhe permite transferir bancos de dados de exemplo da Internet. Esta opção não está disponível atualmente para o MS Windows.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term> + <menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>S</keycap +></keycombo +> </shortcut +> <guimenu +>Arquivo</guimenu +> <guimenuitem +>Salvar</guimenuitem +> </menuchoice> + </term> + <listitem> + <para +><action +>Salva as mudanças do objeto da janela ativa.</action +></para> + </listitem> + </varlistentry> + + <varlistentry> + <term> + <menuchoice +><guimenu +>Arquivo</guimenu +> <guisubmenu +>Importar...</guisubmenu +><guimenuitem +>Tabela de Dados...</guimenuitem +> </menuchoice> + </term> + <listitem> + <para +><action +>Importa os dados da tabela de um arquivo no formato CSV (Comma Separated Value - Valores Separados por Vírgulas).</action +></para> + </listitem> + </varlistentry> + + <varlistentry> + <term> + <menuchoice +><guimenu +>Arquivo</guimenu +> <guisubmenu +>Exportar</guisubmenu +><guimenuitem +>Tabela ou Consulta como Tabela de Dados...</guimenuitem +> </menuchoice> + </term> + <listitem> + <para +><action +>Exporta os dados da tabela ou consulta ativa para um arquivo no formato CSV (Comma Separated Value).</action +></para> + </listitem> + </varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>P</keycap +></keycombo +> </shortcut +> <guimenu +>Arquivo</guimenu +> <guimenuitem +>Imprimir...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Imprime os dados da tabela ou consulta ativa (aberta).</action +></para> +<important +><para +>Nota para o KDE: Certifique-se de que o sistema de impressão correto está selecionado na seção <quote +>Sistema de impressão usado:</quote +>. Esta opção poderá ser vista após clicar no botão de <guimenu +>Opções>></guimenu +>.</para +></important +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Arquivo</guimenu +> <guimenuitem +>Previsão da Impressão...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Mostra a previsão da impressão para a tabela ou pesquisa ativa (aberta).</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Arquivo</guimenu +> <guimenuitem +>Configuração da Página...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><guibutton +>Configurar Fonte...</guibutton +> para o <guilabel +>Título da página:</guilabel +>, <guibutton +>Mudar...</guibutton +> o <guilabel +>Tamanho da Página & Margens</guilabel +> e <guilabel +>Adicionar bordas de tabela</guilabel +>.</para +></listitem> +</varlistentry> + + <varlistentry> + <term> + <menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>W</keycap +></keycombo +> </shortcut +> <guimenu +>Arquivo</guimenu +> <guimenuitem +>Fechar Projeto</guimenuitem +> </menuchoice> + </term> + <listitem> + <para +><action +>Fecha o documento aberto atualmente mas mantém o &kexi; em execução. </action +></para> + </listitem> + </varlistentry> + + <varlistentry> + <term> + <menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>Q</keycap +></keycombo +> </shortcut +> <guimenu +>Arquivo</guimenu +> <guimenuitem +>Sair</guimenuitem +> </menuchoice> + </term> + <listitem> + <para +><action +>Sai</action +> do &kexi;.</para> + </listitem> + </varlistentry> + </variablelist> + </para> + </sect1> + +<sect1 id="editmenu"> +<title +>O Menu <guimenu +>Editar</guimenu +></title> + +<variablelist> +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>Z</keycap +></keycombo +> </shortcut +> <guimenu +>Editar</guimenu +> <guimenuitem +>Desfazer</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Desfaz uma ação.</action +> Você poderá voltar ao estado que existia antes da sua última alteração.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl; &Shift; <keycap +>Z</keycap +></keycombo +> </shortcut +> <guimenu +>Editar</guimenu +> <guimenuitem +>Refazer</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Anula um ato desfeito.</action +> Volta atrás na ação do Desfazer. Irá restaurar a alteração que tinha feito anteriormente.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>X</keycap +></keycombo +> </shortcut +> <guimenu +>Editar</guimenu +> <guimenuitem +>Cortar</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Remove o texto selecionado atualmente e coloca-o na área de transferência.</action +> Este comando está indisponível se não existir nenhum texto selecionado. Se esta ação for usada no Desenhador de Formulários, o elemento ou grupo de elementos selecionado atualmente é removido e colocado na área de transferência. </para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>C</keycap +></keycombo +> </shortcut +> <guimenu +>Editar</guimenu +> <guimenuitem +>Copiar</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Copia o texto selecionado atualmente e coloca-o na área de transferência.</action +> Este comando está indisponível se nenhum texto estiver selecionado. Se esta ação for usada no Desenhador de Formulários, o elemento ou grupo de elementos selecionado atualmente é copiado para a área de transferência.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>V</keycap +></keycombo +> </shortcut +> <guimenu +>Editar</guimenu +> <guimenuitem +>Colar</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Copia o conteúdo da área de transferência no ponto de inserção.</action +> Este comando está indisponível se a área de transferência estiver vazia. Se esta ação for usada no Desenhador de Formulários e a área de transferência conter elementos copiados, eles serão inseridos no formulário.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Editar</guimenu +> <guisubmenu +>Copiar Especial</guisubmenu +> <guimenuitem +>Tabela ou Consulta como Tabela de Dados...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Copia a tabela ou os dados da consulta selecionados para a área de transferência.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Editar</guimenu +> <guisubmenu +>Colar Especial</guisubmenu +> <guimenuitem +>Como Tabela de Dados...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Cola os dados da área de transferência numa tabela nova do projeto atual. </action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>A</keycap +></keycombo +> </shortcut +> <guimenu +>Editar</guimenu +> <guimenuitem +>Selecionar Tudo</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Seleciona todos os caracteres do campo de texto editado ou todos os elementos gráficos do Desenhador de Formulários. </action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Editar</guimenu +> <guimenuitem +>Excluir</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Remove o objeto atualmente selecionado.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>Delete</keycap +></keycombo +> </shortcut +> <guimenu +>Editar</guimenu +> <guimenuitem +>Remover Linha</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Remove a linha atualmente selecionada de uma tabela.</action +></para +></listitem> +</varlistentry> + +</variablelist> +</sect1> + +<sect1 id="viewmenu"> +<title +>O Menu <guimenu +>Ver</guimenu +></title> + +<variablelist> +<varlistentry> +<term +><menuchoice +><shortcut +><keycap +>F6</keycap +></shortcut +> <guimenu +>Ver</guimenu +> <guimenuitem +>Visão de Dados</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Muda para a Visão de Dados.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +><keycap +>F7</keycap +></shortcut +> <guimenu +>Ver</guimenu +> <guimenuitem +>Visão de Desenho</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Muda para a Visão de Desenho.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +><keycap +>F8</keycap +></shortcut +> <guimenu +>Ver</guimenu +> <guimenuitem +>Visão de Texto</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Muda para a Visão de Texto.</action +> Atualmente, só está disponível para as consultas do banco de dados e significa que muda para a Visão SQL do Desenhador de Consultas.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Alt;<keycap +>1</keycap +></keycombo +> </shortcut +> <guimenu +>Ver</guimenu +> <guimenuitem +>Navegador do Projeto</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Vai para o painel do Navegador do Projeto.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Alt;<keycap +>2</keycap +></keycombo +> </shortcut +> <guimenu +>Ver</guimenu +> <guimenuitem +>Área Principal</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Vai para a área principal.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Alt;<keycap +>3</keycap +></keycombo +> </shortcut +> <guimenu +>Ver</guimenu +> <guimenuitem +>Editor de Propriedades</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Vai para o painel do Editor de Propriedades.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Ver</guimenu +> <guimenuitem +>Mostrar/Ocultar Propriedades</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Mostra ou oculta o painel do Editor de Propriedades.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Ver</guimenu +> <guimenuitem +>Mostrar/Ocultar Navegador do Projeto</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Mostra ou oculta o painel do Navegador do Projeto.</action +></para +></listitem> +</varlistentry> + +</variablelist> +</sect1> + +<sect1 id="insertmenu"> +<title +>O Menu <guimenu +>Inserir</guimenu +></title> + +<variablelist> +<varlistentry> +<term +><menuchoice +><guimenu +>Inserir</guimenu +> <guimenuitem +>Tabela...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Insere o desenho de uma nova tabela vazia sem salvá-la.</action +> A janela do Desenhador de Tabelas irá aparecer.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Inserir</guimenu +> <guimenuitem +>Consulta...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Insere um novo desenho vazio de consulta sem salvá-lo.</action +> A janela do Desenhador de Consultas irá aparecer.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Inserir</guimenu +> <guimenuitem +>Formulário...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Insere um novo desenho vazio de um formulário sem salvá-lo.</action +> A janela do Desenhador de Formulários irá aparecer.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Inserir</guimenu +> <guimenuitem +>Programa...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Insere um novo desenho vazio de um programa sem salvá-lo.</action +> A janela do Editor de Programas irá aparecer. O comando fica disponível apenas se o suporte de programação estiver ativo no &kexi;.</para +></listitem> +</varlistentry> + +</variablelist> +</sect1> + +<sect1 id="formatmenu"> +<title +>O Menu <guimenu +>Formatar</guimenu +></title> + +<variablelist> +<varlistentry> +<term +><menuchoice +><guimenu +>Formatar</guimenu +> <guimenuitem +>Fonte...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Muda o tipo de fonte do objeto selecionado.</action +> Pode ser usado no Desenhador de Formulários para mudar a fonte do ítem gráfico.</para +></listitem> +</varlistentry> + +<!-- Forms --> + +<varlistentry> +<term +><menuchoice +><guimenu +>Formatar</guimenu +> <guimenuitem +>Alinhar à Grade</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Se estiver ativo, ao mover os ítens na superfície do formulário, o canto superior esquerdo do elemento irá ajustar-se ou mover-se para o ponto da grade mais próximo.</action +> Isto reduz a sua liberdade para posicionar à vontade os elementos gráficos no formulário, mas também ajuda a alinhar de forma precisa os elementos.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Formatar</guimenu +> <guimenuitem +>Disposição dos Elementos</guimenuitem +> </menuchoice +></term> +<listitem +><para +>Cria uma nova disposição para os ítens gráficos. Eles podem ser dispostos na Horizontal, Vertical, na Grade, na Horizontal com Separador ou na Vertical com Separador.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Formatar</guimenu +> <guimenuitem +>Quebrar Disposição</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Quebra a disposição selecionada atualmente.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Formatar</guimenu +> <guimenuitem +>Alinhar Posição dos Elementos</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Alinha a posição dos ítens selecionados atualmente: à Esquerda, à Direita, ao Fundo, ao Topo ou à Grade.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Formatar</guimenu +> <guimenuitem +>Alinhar Tamanho dos Elementos</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Alinha o tamanho dos elementos selecionados atualmente: para Caber, à Grade, ao Menor, ao Maior, ao Mais Estreito, ao Mais Largo.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Formatar</guimenu +> <guimenuitem +>Elevar Elemento</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Passa os ítens selecionados atualmente para a frente.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Formatar</guimenu +> <guimenuitem +>Baixar Elemento</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Passa os ítens selecionados atualmente para trás.</action +></para +></listitem> +</varlistentry> + +</variablelist> +</sect1> + +<sect1 id="datamenu"> +<title +>O Menu <guimenu +>Dados</guimenu +></title> + +<!--when do the first two items appear ???--> +<variablelist> +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>Return</keycap +></keycombo +> </shortcut +> <guimenu +>Dados</guimenu +> <guimenuitem +>Salvar Linha</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Salva os dados da tabela selecionada atualmente.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Dados</guimenu +> <guimenuitem +>Cancelar Alterações da Linha</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Cancela as alterações feitas à linha da tabela selecionada atualmente.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Dados</guimenu +> <guisubmenu +>Ordenar</guisubmenu +><guimenuitem +>Ascendente</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Ordena os dados em ordem ascendente (de A a Z e de 0 a 9).</action +> Os dados da coluna selecionada são usados para a ordenação.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Dados</guimenu +> <guisubmenu +>Ordenar</guisubmenu +><guimenuitem +>Descendente</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Ordena os dados em ordem descendente (de Z a A e de 9 a 0).</action +> Os dados da coluna selecionada são usados para a ordenação.</para +></listitem> +</varlistentry> + +</variablelist> +</sect1> + +<sect1 id="toolsmenu"> +<title +>O Menu <guimenu +>Ferramentas</guimenu +></title> + +<variablelist> +<varlistentry> +<term +><menuchoice +><guimenu +>Ferramentas</guimenu +> <guimenuitem +>Importar Banco de Dados...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Abre o Assistente de Importação de Bancos de Dados</action +> para importar um banco de dados existente para um banco de dados do &kexi;.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Ferramentas</guimenu +> <guimenuitem +>Executar Arquivo de Programa...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Mostra a janela de arquivos</action +> para abrir um arquivo de programa existente.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Ferramentas</guimenu +> <guimenuitem +>Gerenciador de Programas...</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Mostra a janela do <guilabel +>Gerenciador de Programas</guilabel +> do &kexi;</action +> para executar, carregar, fechar, instalar, desinstalar ou obter programas.</para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Ferramentas</guimenu +> <guimenuitem +>Programas</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Executa um programa já carregado.</action +></para +></listitem> +</varlistentry> + +</variablelist> +</sect1> + +<sect1 id="windowmenu"> +<title +>O Menu <guimenu +>Janela</guimenu +></title> + +<variablelist> +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Ctrl;<keycap +>W</keycap +></keycombo +> </shortcut +> <guimenu +>Janela</guimenu +> <guimenuitem +>Fechar</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Fecha a janela ativa.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Janela</guimenu +> <guimenuitem +>Fechar Tudo</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Fecha todas as janelas abertas.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Janela</guimenu +> <guisubmenu +>Modo MDI</guisubmenu +> <guimenuitem +>Modo de Janelas-Filhas</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Muda para o modo de interface de Janelas-Filhas.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><guimenu +>Janela</guimenu +> <guisubmenu +>Modo MDI</guisubmenu +> <guimenuitem +>Modo IDEAl</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +><action +>Muda para o modo de interface IDEAl.</action +></action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Alt;<keycap +>Direita</keycap +></keycombo +> </shortcut +> <guimenu +>Janela</guimenu +> <guimenuitem +>Janela Seguinte</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Muda para a janela seguinte.</action +></para +></listitem> +</varlistentry> + +<varlistentry> +<term +><menuchoice +><shortcut +> <keycombo action="simul" +>&Alt;<keycap +>Direita</keycap +></keycombo +> </shortcut +> <guimenu +>Janela</guimenu +> <guimenuitem +>Janela Anterior</guimenuitem +> </menuchoice +></term> +<listitem +><para +><action +>Muda para a janela anterior.</action +></para +></listitem> +</varlistentry> + +</variablelist> +<para +>Os últimos ítens deste menu mostram os nomes das janelas abertas atualmente.</para> +</sect1> + + <sect1 id="settingsmenu"> + <title +>O Menu <guimenu +>Configurações</guimenu +></title> + + <para> + <variablelist> + <varlistentry> + <term> + <menuchoice +><guimenu +>Configurações</guimenu +> <guimenuitem +>Barras de Ferramentas</guimenuitem +> </menuchoice> + </term> + <listitem> + <para +><action +>Mostra ou oculta uma das barras de ferramentas.</action +></para> + </listitem> + </varlistentry> + + <varlistentry> + <term> + <menuchoice +><guimenu +>Configurações</guimenu +> <guimenuitem +>Configurar Atalhos...</guimenuitem +> </menuchoice> + </term> + <listitem> + <para +><action +>Configura os atalhos de teclado usados pelo &kexi;. </action +> Veja a seção de configuração dos atalhos para mais detalhes.</para> + </listitem> + </varlistentry> + + </variablelist> +</para> +</sect1> + +<sect1 id="helpmenu"> + <title +>O Menu <guimenu +>Ajuda</guimenu +></title> +&help.menu.documentation; </sect1> +</chapter> diff --git a/koffice-i18n-pt_BR/docs/koffice/kexi/querydesigning.docbook b/koffice-i18n-pt_BR/docs/koffice/kexi/querydesigning.docbook new file mode 100644 index 00000000..ead73852 --- /dev/null +++ b/koffice-i18n-pt_BR/docs/koffice/kexi/querydesigning.docbook @@ -0,0 +1,153 @@ +<!-- + <!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"> + + --> + + <sect1 id="designing-queries"> + <title +>Desenhando Consultas ao Banco de Dados</title> + <para +>A finalidade primária de um banco de dados é armazenar informações e auxiliá-lo a extrair as informações que esteja procurando. Diferentemente dos bancos de dados escritos em folhas de papel, o banco de dados do &kexi; permite que você especifique mais critérios de busca. Os resultados serão exibidos mais rapidamente, até para grandes conjuntos de dados. Isto é o grande poder que o banco de dados oferece. No entanto, para você ser capaz de executar <emphasis +>consultas</emphasis +> efetivas em seu banco de dados, você precisa aprender como dizer ao banco de dados o que você está procurando. </para> + <para +>Com consultas ao banco de dados, você pode limitar os dados retornados de uma tabela para um pré-definido conjunto de linhas e colunas bem como <firstterm +>juntar</firstterm +> dinamicamente os dados provenientes de várias tabelas. </para> + <para +>Para ver como as consultas funcionam na prática, você criará uma consulta <literal +>contatos</literal +> mesclando dados de duas tabelas: <literal +>pessoas</literal +> e <literal +>num_telefones</literal +> (desenhadas no capítulo 3.1 e preenchidas com dados no capítulo 3.2). </para> + <procedure> + <step> + <para +>Crie uma nova consulta vazia selecionando <menuchoice +><guimenu +>Inserir</guimenu +><guimenuitem +>Consulta</guimenuitem +></menuchoice +> no menu. A janela de desenho aparecerá. A janela é dividida em duas áreas: relacionamentos da consulta no topo e colunas da consulta abaixo. </para> + </step> + <step> + <para +>Selecione a tabela <literal +>pessoas</literal +> na lista <guilabel +>Tabela:</guilabel +> localizada no topo da janela e clique no botão <guibutton +>Adicionar</guibutton +>. Uma representação gráfica da tabela aparecerá na área de relações. Faça o mesmo para a tabela <literal +>num_telefones</literal +> para inserí-la também, como na figura abaixo. </para> + <!--<screenshot> + <screeninfo +><literal +>contacts</literal +> query design</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_03_00_query_design.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +><literal +>contacts</literal +> query design</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </step> + <step> + <para +>Adicione o relacionamento da consulta usando a técnica arrastar & soltar do mouse: clique no campo <literal +>id</literal +> na tabela <literal +>pessoas</literal +>, arraste-o e solte no campo <literal +>pessoa</literal +> da tabela <literal +>num_telefones</literal +>. Isto irá <emphasis +>juntar ambos os campos criando um novo relacionamento</emphasis +>. </para> + </step> + <step> + <para +>Dê um duplo-clique no campo <literal +>nome</literal +> na tabela <literal +>pessoas</literal +> para adicionar o campo como uma <firstterm +>coluna da consulta</firstterm +>. Da mesma maneira, adicione os campos <literal +>sobrenome</literal +>, <literal +>rua</literal +>, <literal +>num_casa</literal +>, <literal +>cidade</literal +> da tabela <literal +>pessoas</literal +> e o campo <literal +>telefone</literal +> da tabela <literal +>num_telefones</literal +>. </para> + </step> + <step> + <para +>O desenho da consulta agora está pronto para testes. Clique no botão <guibutton +>Alternar para visão de dados</guibutton +> na barra de ferramentas, para alternar da visão de desenho para a de dados fornecidos como resultados da consulta. </para> + <!--<screenshot> + <screeninfo +><literal +>Contacts</literal +> query results</screeninfo> + <mediaobject> + <imageobject> + <imagedata fileref="img/05_03_00_query_results.png" format="PNG"/> + </imageobject> + <textobject> + <phrase +><literal +>Contacts</literal +> query results</phrase> + </textobject> + </mediaobject> + </screenshot +>--> + </step> + <step> + <para +>Salve o desenho da consulta para uso posterior clicando no botão <guibutton +>Salvar</guibutton +> na barra de ferramentas. Você pode também usar o <menuchoice +><guimenu +>Arquivo</guimenu +><guimenuitem +>Salvar</guimenuitem +></menuchoice +> do menu ou pressionar as teclas <keycombo action="simul" +><keycap +>Ctrl</keycap +><keycap +>S</keycap +></keycombo +>. Como sua consulta não havia sido salvo ainda, você será solicitado a especificar um nome para ela. Insira o texto <literal +>Contatos</literal +> no campo <guilabel +>título</guilabel +> e clique no botão <guibutton +>OK</guibutton +>. </para> + </step> + </procedure> + </sect1> |