A opção Guardar como valor/referência se encontra no tema "Fontes de dados" para os objetos de tipo campo, variável e menus emergentes/listas deslocadas:
![](../../picture/1350179/pict1350179.EN.png)
Esta opção define, no contexto de um campo ou de uma variável associada a uma lista de valores (enumeração), o tipo de conteúdo a armazenar no campo:
- Guardar como Valor (opção por padrão): O valor do elemento escolhido na lista pelo usuário se guarda diretamente. Por exemplo, se o usuário seleciona o valor "Blue", este valor é salvo no campo. Este funcionamento é o das versões anteriores de 4D.
- Guardar como Referência: a referência do elemento da lista de seleção que será guardado no objeto. A referência de um elemento de lista é um valor numérico associado com cada elemento via o parâmetro refElement dos comandos APPEND TO LIST ou SET LIST ITEM, ou no editor de listas:
Esta opção permite otimizar o uso de memória: O armazenamento de valores numéricos nos campos utiliza menos espaço que o armazenamento de cadeias de caracteres. Também faz com que seja mais fácil a tradução das aplicações: Pode criar múltiplas listas em diferentes idiomas, mas com as mesmas referências de elementos e carregar a lista em função da linguagem da aplicação.
O uso da opção Guardar como Referência exige o cumprimento dos seguintes princípios:
- Para poder armazenar a referência, o campo ou variável devem ser de tipo numérico (independentemente do tipo de valor mostrado na lista).
- Referências válidas e únicas devem estar associadas aos elementos da lista.
- Se ativar esta opção para um objeto pop-up menu/lista deslocada, deve estar associado a um campo (ver Utilizar uma lista de seleção).
- Esta opção é compatível com as listas de opções definidas na estrutura. Neste caso, só pode ser selecionado uma opção em cada formulário onde se utiliza o campo enumerado.
Você deseja utilizar um campo "Título" para as pessoas: Sr., Sra., Dr., Monsenhor, etc. Para isso, é criado um campo de tipo inteiro longo chamado "Título". Se define uma lista de opções (chamado "Títulos") que contém todos os títulos possíveis e se associam ao campo.
No formulário de entrada, se mostra o campo "Título " duas vezes com a finalidade de ilustrar o mecanismo implementado: Uma vez como um pop -up e outra vez como uma área de entrada. Ambos objetos se associam a mesma lista de opções e os dados se guardam como referência:
![](../../picture/1350217/pict1350217.EN.png)
Durante a entrada, pode ser selecionado um valor no menu emergente e se mostra corretamente em ambos objetos:
![](../../picture/1350219/pict1350219.EN.png)
Nota: neste formulário, se mostra a janela "Lista de opções " quando a área de entrada tem o foco. Para não mostrar mais esta janela, pode utilizar um menu deslocado para a entrada (e a visualização) do valor. Menus suspensos/Listas suspensas).
![](../../picture/1350221/pict1350221.EN.png)
Pode configurar o formulário de saída com o mesmo princípio: se seleciona a opção Referência para guardar o campo Título:
![](../../picture/1350229/pict1350229.EN.png)
Durante a execução, o valor se mostra corretamente:
![](../../picture/1350231/pict1350231.EN.png)