4D v13.4

SELECTION TO ARRAY

Página Inicial

 
4D v13.4
SELECTION TO ARRAY

SELECTION TO ARRAY 


 

SELECTION TO ARRAY {( umCampo | umaTabela ; array {; campo ; array {; campo2 ; array2 ; ... ; campoN ; arrayN}}{; *})} 
Parâmetro Tipo   Descrição
umCampo | umaTabela  Campo, Tabela in Campo usado para pedir dados ou Tabela usada para pedir números de registros
array  Array in Array para receber dados do campo ou número de registros
campo  Campo in Campo a ser requisitado no array
array  Array in Array a receber os dados do campo
Operador in Aguarde execução

O comando SELECTION TO ARRAY cria um ou mais arrays e copia os dados nos campos ou números de registros da seleção atual para os arrays.

O comando SELECTION TO ARRAY aplica-se à seleção para a tabela designada pelo primeiro parâmetro (nome da tabela ou campo). SELECTION TO ARRAY, pode executar o seguinte:

  • Carregar os valores de um ou vários campos.
  • Carrega números de registros da tabela usando a sintaxe [tabela];array
  • Carrega valores dos campos relacionados, desde que haja uma relação Muitos para Um automática entre as tabelas ou desde que tenha anteriormente chamado SET AUTOMATIC RELATIONS para fazer relações manuais Muitos para Um automáticas. Em ambos os casos, os valores são carregados a partir de tabelas com vários níveis de relacionamento Muitos para Um.

Cada array é digitado de acordo com o tipo de campo. Há duas exceções:

  • em modo de compatibilidade ASCII (não-Unicode), se um campo de texto é copiado para um array de String, a matriz continua a ser um array de String.
  • Se um campo de Hora é copiado em um array, o array será um array Inteiro Longo.

Se você carregar um número de registros, eles são copiados para um array inteiro longo.

Quando você passar o parâmetro *, 4D não executar a linha de instrução correspondente imediatamente, mas sim armazena na memória, desta forma você pode empilhar várias linhas terminando com um *. Todas essas linhas que aguarda sua execução são executadas por uma instrução final SELECTION TO ARRAY que não tem o parâmetro *. Por esta razão, o comando agora pode ser chamado sem parâmetros. Neste caso, os tipos de arrays são verificados quando a linha final (sem o parâmetro *) é executada.

Como com o comando QUERY, isto permite que você quebrar uma instrução complexas em um conjunto de linhas, que é mais fácil de ler e manter. Você também pode inserir instruções intermediárias ou construir uma matriz dentro de um loop (ver exemplo 2 do comando ARRAY TO SELECTION).

4D Server: o comando SELECTION TO ARRAY é otimizado para 4D Server. Cada array é criado no servidor e, em seguida, enviado, na sua totalidade, para a máquina cliente.

Advertência: o comando SELECTION TO ARRAY pode criar arrays grandes, dependendo do tamanho da seleção atual e sobre o tipo e o tamanho dos dados que você está carregando. Arrays residem na memória, então é uma boa idéia testar o resultado depois que o comando seja concluído. Para fazer isso, teste o tamanho de cada array resultante ou cubra a chamada para o comando, utilizando um método de projeto ON ERR CALL.

Nota: depois de uma chamada a SELECTION TO ARRAY, a seleção atual e registro atual permanecem o mesmo, mas o registro atual não é mais carregado. Se você precisar usar os valores dos campos no registro atual, use o comando LOAD RECORD após o comando SELECTION TO ARRAY.

No exemplo a seguir, a tabela [Pessoas] tem uma relação automática com a tabela [Empresa]. Os dois arrays asSobrenome e asEmpresaDir são dimensionados de acordo com o número de registros selecionados na tabela [Pessoas] e conterá a informação de ambas as tabelas:

 SELECTION TO ARRAY([Pessoas]Sobrenome;asSobrenome;[Empresa]Endereço;asEmpresaDir)

O exemplo a seguir retorna o números de registro [Clientes] no array alNumerosRegistros e os valores nos campos [Clientes]Nomes no array asNomes

 SELECTION TO ARRAY([Clientes];alNumerosRegistros;[Clientes]Nomes;asNomes)

 
PROPRIEDADES 

Produto: 4D
Tema: Arrays
Número 260

Comportamento diferente em modo remoto

 
INDEX

Lista alfabética dos comandos

 
HISTÓRIA 

New
Criado por: < 4D v6
Modificado: 4D v13

 
VER TAMBÉM 

ARRAY TO SELECTION
MULTI SORT ARRAY
ON ERR CALL
SELECTION RANGE TO ARRAY
SET AUTOMATIC RELATIONS