| 4D v18DISTINCT ATTRIBUTE VALUES | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v18
 DISTINCT ATTRIBUTE VALUES 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| DISTINCT ATTRIBUTE VALUES ( campoObjeto ; rota ; arrayValores ) | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| campoObjeto | Campo |   | Campo Objeto do qual obtém a lista de valores atributo distintos | |||||
| rota | Texto |   | Rota do atributo cujos valores distintos deseja obter. | |||||
| arrayValores | Array texto, Array inteiro longo, Array booleano, Array data, Time array |   | Valores distintos na rota atributo | |||||
Tema: Arrays
O comando DISTINCT ATTRIBUTE VALUES cria e preenche o arrayValores com valores náo repetidos (únicos) procedentes do atributo rota no campo campoObjeto para a seleção atual da tabela a que pertence o campo. Se campoObjeto não for um campo de objeto indexado, um erro é devlvido.Passe em rota uma rota atributo válida. Utilize a notação ponto padrão para definir rotas a atributos aninhados, por exemplo "empresa.endereço.numero". Lembre que os nomes de atributos objeto são sensíveis às maiúsculas e minúsculas.
O array que passou em arrayValores deve ser do mesmo tipo que o atributo rota passado como parâmetro, do contrário o array volta ser digitado. Só se admitem os seguintes tipos de arrays: numérico, texto, data e hora (os valores devem ser escalar: ponteiros, objetos, blobs ou imagens não são suportados).
Depois da chamada, o tamanho do array é igual ao número de valores diferentes que se encontram na seleção. O comando não muda a seleção atual ou o registro atual.Pode usar a propriedade virtual "comprimento" com este comando. Está automaticamente disponível para todos os atributos do tipo array e oferece o tamanho do array, ou seja, o número de elementos contidos pelo array. Esta propriedade foi criada para ser usada em pesquisas (ver QUERY BY ATTRIBUTEQUERY BY ATTRIBUTE). Pode também ser usada com o comando DISTINCT ATTRIBUTE VALUES para obter os diversos tamanhos de array para um atributo.
Se seu banco de dados contiver um campo objeto [Customer]full_Data (indexado) com 12 registros:

Se executar este código:
 ARRAY LONGINT(aLAges;0)
 ALL RECORDS([Customer])
  //obtém os valores distintos para o atributo  "age"
 DISTINCT ATTRIBUTE VALUES([Customer]full_Data;"age";aLAges)O array aLAges obtém os seguintes 9 elementos:
  //aLAges{1}=33
  //aLAges{2}=35
  //aLAges{3}=36
  //aLAges{4}=40
  //aLAges{5}=42
  //aLAges{6}=44
  //aLAges{7}=52
  //aLAges{8}=54
  //aLAges{9}=60
	Produto: 4D
	Tema: Arrays
	Número 
        1397
        
        
        
	
	Criado por: 4D v16
object, object field
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Manual de linguagem 4D ( 4D v18)
	
	
	
	
	
 Adicionar um comentário
Adicionar um comentário