Sumário

# Dados

A página da aba Dados permite atribuir uma fonte de dados ao controle selecionado.

Para acessar este comando...

Abra o menu de contexto do elemento de formulário selecionado e escolha a aba Propriedades do controle - Dados.

Abra a barra de ferramentas Edição de formulário, clique no ícone Controle - aba Dados.

Em formulários com vínculos de banco de dados, o banco de dados associado é definido nas Propriedades do Formulário. Você encontrará as funções para isso na aba Dados.

As configurações possíveis da página da guia Dados de um controle dependem do respectivo controle. Você verá somente as opções disponíveis para o controle e o contexto atuais.
Os campos a seguir estão disponíveis:

## A cadeia de caracteres vazia é NULL

Define como uma cadeia de caracteres vazia deve ser tratada. Se definida como "Sim", uma cadeia de caracteres inserida de tamanho zero será tratada como NULL. Se definida como "Não", toda cadeia de caracteres inserida será tratada tal qual sem qualquer conversão.

Uma cadeia de caracteres vazia é uma cadeia de tamanho zero (""). Normalmente, um valor NULL não é a mesma coisa que uma cadeia vazia. Em geral, um termo NULL é utilizado para denotar um valor indefinido, desconhecido, ou que "ainda não foi inserido".

Sistemas de banco de dados variam e podem tratar um valor NULL de formas diferentes. Consulte a documentação do banco de dados utilizado.

## Campo de dados

Com formulários de banco de dados, você pode vincular controles a campos de dados.

Há várias possibilidades:

1. Primeiro caso: há somente uma tabela no formulário.

   Em Campo de dados, especifique o campo da tabela da fonte de dados cujo conteúdo você deseja exibir.

2. Segundo caso: o controle pertence a um subformulário que foi criado pela consulta SQL.

   Em Campo de dados, especifique o campo da instrução SQL cujo conteúdo você deseja exibir.

1. Terceiro caso: Caixas de Combinação

   No caso de caixas de combinação, o campo da tabela da fonte de dados no qual serão armazenados os valores inseridos ou selecionados pelo usuário é especificado em Campo de Dados. Os valores exibidos na lista da caixa de combinação são baseados na instrução SQL previamente inserida em Conteúdo da lista.

2. Quarto caso: Caixas de Listagem

   A tabela da fonte de dados não contém os dados a serem exibidos, mas sim uma tabela vinculada à tabela da fonte de dados através de um campo de dados em comum.

   Para fazer com que a caixa de lista mostre dados a partir de uma tabela vinculada à tabela da fonte de dados atual, em Campo de dados, especifique o campo da tabela da fonte de dados ao qual o conteúdo da caixa de lista se refere. Ou, especifique o campo do banco de dados que controla a exibição dos dados no formulário. Esse campo de dados oferecerá um vínculo a uma outra tabela se ambas as tabelas puderem ser vinculadas através de um campo de dados comum. Geralmente, esse campo em comum armazena números de identificação exclusivos. O banco de dados, cujo conteúdo é exibido no formulário, é especificado por uma instrução SQL em Conteúdo da lista.

As caixas de listagem funcionam com referências. Elas podem ser implementadas com tabelas vinculadas por instruções SQL (quarto caso) ou por meio de listas de valores:

Referências por meio de tabelas vinculadas (instruções SQL)

Para que uma caixa de lista exiba dados a partir de uma tabela de banco de dados vinculada por um campo de dados comum à tabela na qual o formulário esteja baseado, é necessário especificar o campo de vínculo da tabela do formulário em Campo de dados.

O vínculo é criado com uma instrução SQL SELECT, que, se você tiver selecionado "SQL" ou "SQL Nativo", estará especificada em Tipo de conteúdo da lista no campo Conteúdo da lista. Por exemplo, uma tabela "Orders" (Pedidos) está vinculada ao controle de formulário atual e no banco de dados uma tabela "Customers" (Clientes) está vinculada à tabela "Orders" (Pedidos). Você pode utilizar uma instrução SQL como segue:

SELECT CustomerName, CustomerNo FROM Customers,

no qual "CustomerName" (NomeCliente) corresponde ao campo de dados a partir da tabela vinculada "Customers", e "CustomerNo" (NúmCliente) é o campo da tabela "Customers" que está vinculado ao campo da tabela de formulário "Orders", especificada em Campos de dados.

Referências Utilizando Listas de Valores

Nas caixas de listagem, você pode utilizar listas de valores. Listas de valores são listas que definem os valores de referência. Desse modo, o controle no formulário não exibe diretamente o conteúdo de um campo do banco de dados, mas sim os valores atribuídos na lista de valores.

Se você trabalhar com os valores de referência de uma lista de valores, não verá o conteúdo do campo de dados que especificou em Campo de Dados no formulário, mas sim os valores atribuídos a ele. Se você tiver escolhido "Lista de Valores" na guia Dados em Tipo do conteúdo da lista e atribuído um valor de referência às entradas da lista visíveis no formulário em Entradas da lista (na guia Geral), os valores de referência serão comparados ao conteúdo dos dados do campo de dados determinado. Se uma referência de valor corresponder ao conteúdo de um campo de dados, as entradas da lista associadas serão exibidas no formulário.

## Campo de ligação

Se você excluir o conteúdo da célula do campo de ligação no navegador de propriedades, o primeiro campo do conjunto de resultados será usado para exibir e trocar dados.

Essa propriedade para caixas de listagem define qual campo de dados da tabela será exibido no formulário.

Se uma caixa de lista do formulário tiver de exibir o conteúdo de uma tabela vinculada à tabela do formulário, defina no campo Tipo de conteúdo da lista se a exibição será determinada por um comando SQL ou se a tabela (vinculada) será acessada. Com a propriedade Campo de ligação, você usa um índice para especificar a qual campo de dados da consulta ou da tabela o campo de lista está vinculado.

A propriedade Campo de ligação serve apenas para formulários que acessam mais de uma tabela. Se o formulário for baseado em apenas uma tabela, o campo a ser exibido no formulário será especificado diretamente em Campo de dados. No entanto, se desejar que a caixa de lista exiba dados a partir de uma tabela que esteja vinculada à tabela atual por um campo de dados comum, o campo de dados vinculado será definido pela propriedadeCampo de ligação.

Se você selecionar "SQL" em Tipo de conteúdo da lista, o comando SQL determinará o índice a ser especificado. Exemplo: para especificar um comando SQL como "SELECT Field1, Field2 FROM tablename" em Conteúdo da lista, consulte a tabela a seguir:

Campo de ligação | Vincular
--- | ---
-1 | O índice da entrada selecionada na lista está vinculado ao campo especificado em Campo de dados.
{vazio} ou 0 | O campo de banco de dados "Field1" será vinculado ao campo especificado em Campo de dados.
1 | O campo de banco de dados "Field2" será vinculado ao campo especificado em Campo de dados.

Se você selecionou "Tabela" em Tipo do conteúdo da lista, a estrutura da tabela definirá o índice a ser especificado. Exemplo: caso tenha sido selecionada uma tabela de banco de dados em Conteúdo da lista, consulte a tabela a seguir:

Campo de ligação | Vincular
--- | ---
-1 | O índice da entrada selecionada na lista está vinculado ao campo especificado em Campo de dados.
{vazio} ou 0 | A 1ª coluna da tabela será vinculada ao campo especificado em Campo de dados.
1 | A 2ª coluna da tabela será vinculada ao campo especificado em Campo de dados.
2 | A 3ª coluna da tabela será vinculada ao campo especificado em Campo de dados.

## Conteúdo da célula vinculada

Selecione o modo de vinculação de uma caixa de lista com uma célula vinculada em uma planilha.

1. Conteúdo vinculado: sincronize o conteúdo do texto da entrada da caixa de lista selecionada com o conteúdo da célula. Selecione "A entrada selecionada".

2. Posição de seleção vinculada: a posição do único item selecionado na caixa de lista está sincronizada com o valor numérico da célula. Selecione "Posição da entrada selecionada".

## Conteúdo da lista

Com campos de banco de dados, especifica a fonte de dados para o conteúdo da lista do elemento do formulário. Este campo pode ser utilizado para definir uma lista de valores em documentos sem uma conexão a um banco de dados.

No caso de formulários de banco de dados, a fonte do banco de dados determina as entradas da caixa de combinação ou de listagem. Dependendo do tipo selecionado, você poderá escolher dentre diferentes fontes de dados em Conteúdo da lista, desde que esses objetos existam no banco de dados. Todos os objetos de banco de dados disponíveis do tipo selecionado em Tipo do conteúdo da lista são oferecidos aqui. Se a exibição de um controle for controlada por um comando SQL, a instrução SQL será inserida aqui.

Exemplos de instruções SQL:

Nas caixas de listagem, a instrução SQL pode ter a seguinte forma:

SELECT field1, field2 FROM table,

Aqui, "tabela" corresponde à tabela cujos dados são exibidos na lista do controlo (tabela de lista). O "campo1" corresponde ao campo de dados que define as entradas visíveis no formulário, sendo o respetivo conteúdo apresentado na caixa de lista. O "campo2" corresponde ao campo da tabela de lista que está associada a uma tabela de formulário (tabela de valores) através do campo especificado em Campo de dados, caso tenha sido selecionado Campo de ligação = 1.

Nas caixas de combinação, uma instrução SQL pode ter a seguinte forma:

SELECT DISTINCT field FROM table,

Aqui, "field" se refere a um campo de dados da tabela de listagem "table" cujo conteúdo é exibido na lista da caixa de combinação.

Listas de valores para documentos HTML

No caso de formulários HTML, você pode inserir uma lista de valores em Conteúdo da lista. Selecione a opção "Lista de Valores" em Tipo de conteúdo da lista. Os valores inseridos aqui não estarão visíveis no formulário e serão utilizados para atribuir valores às entradas visíveis. As entradas feitas em Conteúdo da lista correspondem à tag HTML <OPTION VALUE=...>.

Na transferência de dados de uma entrada selecionada de uma caixa de lista ou de uma caixa de combinação, tanto a lista dos valores apresentados no formulário, introduzida no separador Geral em Entradas de lista, como a lista de valores introduzida no separador Dados em Conteúdo de lista, são tidas em consideração: Se um texto (não vazio) se encontrar na posição selecionada na lista de valores (<OPTION VALUE=...>), será transmitido. Caso contrário, o texto exibido no controle (<OPTION>) é enviado.

Se você desejar que a lista de valores tenha uma cadeia de caracteres vazia, insira o valor "$$$empty$$$" em Conteúdo da lista na posição correspondente (observe as maiúsculas/minúsculas). O LibreOffice interpreta essa entrada como uma cadeia de caracteres vazia e a atribui à entrada da lista correspondente.

As tabelas a seguir mostram as conexões entre HTML, JavaScript e o campo Conteúdo da lista do LibreOffice, utilizando um exemplo da caixa de lista chamada "ListBox1". Nesse caso, "Item" designa uma entrada de lista visível no formulário:

Tag HTML | JavaScript | Entrada na lista de valores do controle (Conteúdo da lista) | Dados transmitidos
<OPTION>Item | Não é permitido | "" | ...a entrada da lista visível ("ListBox1=Item")
<OPTION VALUE="Value">Item | ListBox1.options[0].value="Value" | "Valor" | O valor atribuído à lista ("ListBox1=Value")
<OPTION VALUE="">Item | ListBox1.options[0].value="" | "$$$empty$$$" | Uma cadeia de caracteres vazia ("ListBox1=")

## Célula vinculada

Especifica a referência a uma célula vinculada em uma planilha. O estado de conexão e o conteúdo do controle estão vinculados ao conteúdo da célula. As tabelas a seguir listam os controles e o tipo de vínculo correspondente:

### Caixa de seleção com célula vinculada

Ação | Resultado
--- | ---
Marque a caixa de seleção: | O valor TRUE é inserido na célula vinculada.
Marque a caixa de seleção: | O valor FALSE é inserido na célula vinculada.
A caixa de seleção com três estados está definida com o estado "indeterminado": | #NV é inserido na célula vinculada.
Insira um número ou uma fórmula que retorne um número na célula vinculada: | Se for inserido o valor TRUE ou diferente de 0: a caixa de seleção será marcada Se for inserido o valor FALSE ou 0: a caixa de seleção será desmarcada.
Limpe a célula vinculada ou insira um texto ou uma fórmula que retorne um texto ou um erro: | A caixa de seleção estará definida com o estado "indeterminado" se for uma caixa com três estados; caso contrário, estará desmarcada.
Selecione a caixa. A caixa Valor de referência contém texto: | O texto da caixa Valor de referência será copiado na célula.
Desmarque a caixa. A caixa Valor de referência contém texto: | Uma cadeia vazia é copiada na célula.
A caixa Valor de referência contém texto. Insira o mesmo texto na célula: | A caixa de seleção está marcada.
A caixa Valor de referência contém texto. Insira outro texto na célula: | A caixa de seleção está desmarcada.

### Botão de opção com célula vinculada

Ação | Resultado
--- | ---
Selecione o botão de opção: | O valor TRUE é inserido na célula vinculada.
Para desmarcar um botão de opção, selecione outro: | O valor FALSE é inserido na célula vinculada.
Insira um número ou uma fórmula que retorne um número na célula vinculada: | Se for inserido o valor TRUE ou não 0: o botão de opção será selecionado. Se for inserido o valor FALSE ou 0: o botão de opção será desmarcado.
Limpe a célula vinculada ou insira um texto ou uma fórmula que retorne um texto ou um erro: | O botão de opção não está selecionado.
Clique no botão de opção. A caixa Valor de referência contém texto: | O texto da caixa Valor de referência será copiado na célula.
Clique em outro botão de opção do mesmo grupo. A caixa Valor de referência contém texto: | Uma cadeia vazia é copiada na célula.
A caixa Valor de referência contém texto. Insira o mesmo texto na célula: | O botão de opção está selecionado.
A caixa Valor de referência contém texto. Insira outro texto na célula: | O botão de opção está desmarcado.

### Caixa de texto com célula vinculada

Ação | Resultado
--- | ---
Insira o texto na caixa de texto: | O texto está copiado na célula vinculada.
Desmarque a caixa de texto: | A célula vinculada é apagada.
Insira o texto ou um número na célula vinculada: | O texto ou o número é copiado na caixa de texto.
Insira uma fórmula na célula vinculada: | O resultado da fórmula é copiado na caixa de texto.
Limpe a célula vinculada: | A caixa de texto está desmarcada.

### Campo numérico e campo formatado com célula vinculada

Ação | Resultado
--- | ---
Insira um número no campo: | O número está copiado na célula vinculada.
Limpe o campo: | O valor 0 está definido na célula vinculada.
Insira um número ou uma fórmula que retorne um número na célula vinculada: | O número é copiado no campo.
Limpe a célula vinculada ou insira um texto ou uma fórmula que retorne um texto ou um erro: | Valor 0 é definido no campo.

### Caixa de lista com célula vinculada

As caixas de listagem oferecem suporte a dois tipos diferentes de vinculação. Consulte a propriedade "Conteúdo da célula vinculada".

1. Conteúdo vinculado: sincronize o conteúdo de texto da entrada da caixa de lista selecionada com o da célula.

2. Posição de seleção vinculada: a posição do único item selecionado na caixa de lista está sincronizada com o valor numérico da célula.

Ação | Resultado
--- | ---
Selecione um único item da lista: | O conteúdo está vinculado: o texto do item está copiado na célula vinculada. A seleção está vinculada: a posição do item selecionado está copiada na célula vinculada. Por exemplo, se o terceiro item for selecionado, o número 3 será copiado.
Selecione vários itens da lista: | #NV é inserido na célula vinculada.
Desmarcar todos os itens da lista: | O conteúdo está vinculado: a célula vinculada é apagada. A seleção está vinculada: o valor 0 é inserido na célula vinculada.
Insira um texto ou um número na célula vinculada: | O conteúdo está vinculado: localize e selecione um item de lista idêntico. A seleção está vinculada: o item de lista na posição especificada (começando com 1 para o primeiro item) é selecionado. Caso ele não seja encontrado, todos os itens serão desmarcados.
Insira uma fórmula na célula vinculada: | Localize e selecione um item de lista que corresponda ao resultado da fórmula e ao modo de vinculação.
Limpe a célula vinculada: | Desmarque todos os itens da caixa de lista.
Altere o conteúdo do intervalo de origem da lista: | Os itens da caixa de lista são atualizados de acordo com a alteração e a seleção é preservada. Isso pode fazer com que a célula vinculada seja atualizada.

### Caixa de combinação com célula vinculada

Ação | Resultado
--- | ---
Insira o texto no campo de edição da caixa de combinação ou selecione uma entrada na lista suspensa: | O texto está copiado na célula vinculada.
Limpe o campo de edição da caixa de combinação: | A célula vinculada é apagada.
Insira um texto ou um número na célula vinculada: | O texto ou o número é copiado no campo de edição da caixa de combinação.
Insira uma fórmula na célula vinculada: | O resultado da fórmula é copiado no campo de edição da caixa de combinação.
Limpe a célula vinculada: | O campo de edição da caixa de combinação está desmarcado.
Altere o conteúdo do intervalo de origem da lista: | Os itens da caixa de lista suspensa são atualizados de acordo com a alteração. O campo de edição da caixa de combinação e a célula vinculada não são alterados.

## Intervalo de células de origem

Insira um intervalo de células que contenha as entradas de uma caixa de lista ou de uma caixa de combinação em uma planilha. Se inserir um intervalo que contenha várias colunas, somente o conteúdo da primeira coluna à esquerda será usado para preencher o controle.

## Proposta de filtro

Ao projetar seu formulário, você pode definir a propriedade "Proposta de filtro" para cada caixa de texto na guia Dados da caixa de diálogo Propriedades correspondente. Em pesquisas subsequentes no modo de filtro, você pode selecionar entre todas as informações contidas nesses campos. O conteúdo do campo pode ser selecionado por meio da função Autocompletar. No entanto, observe que essa função requer uma maior quantidade de espaço e de tempo, especialmente quando usada em bancos de dados grandes; portanto, deve ser usada com restrições.

## Tipo de conteúdo da lista

Determina os dados a preencher nas listas e caixas de combinação.

Com a opção "Lista de valores", todas as entradas inseridas no campo Entradas da lista da guia Geral aparecem no controle. Em formulários de bancos de dados, você pode usar valores de referência (consulte a seção Referências utilizando listas de valores).

Se o conteúdo do controle for lido a partir de um banco de dados, você poderá determinar o tipo da fonte de dados com as outras opções. Por exemplo, você pode escolher entre tabelas e consultas.

## Valor de referência (ativado)

. Você pode atribuir um valor de referência a botões de opção e caixas de seleção. O valor de referência será transmitido ao servidor quando enviar o formulário web. Com formulários de banco de dados os valores inseridos serão gravados no banco de dados atribuído ao campo de controle.

Valores de referência para formulários da Web

Os valores de referência são úteis quando você projeta um formulário da Web e precisa enviar ao servidor as informações sobre o status do controle. Se o usuário clicar no controle, o valor de referência correspondente será enviado ao servidor.

Por exemplo, se você tiver dois campos de controle para as opções "feminino" e "masculino" e atribuir o valor de referência 1 para o campo "feminino" e o valor 2 para o "masculino", o valor 1 será transmitido ao servidor quando o usuário clicar no campo "feminino" e o valor 2 será transmitido quando ele clicar em "masculino".

Valores de referência para formulários de banco de dados

No caso de formulários de banco de dados, você também pode caracterizar o status de uma opção ou caixa de seleção pelo valor de referência e armazená-lo no banco de dados. Se tiver um conjunto de três opções (por exemplo, "em andamento", "concluído" e "reenvio") com os respectivos valores de referência ("ToDo", "OK" e "REV"), esses valores de referência serão exibidos no banco de dados quando o usuário clicar na opção correspondente.

## Valor de referência (desativado)

As caixas de seleção e os botões de opção nas planilhas podem ser vinculados a células no documento atual. Se o controle estiver ativado, o valor que você inserir em Valor de referência (ativado) será copiado na célula. Se o controle estiver desativado, o valor em Valor de referência (desativado) será copiado para a célula.