| 4D v15.4Find in array | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v15.4
 Find in array 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Find in array ( array ; valor {; inicio} ) -> Resultado | ||||||||
| Parámetro | Tipo | Descripción | ||||||
| array | Array |   | Array a buscar | |||||
| valor | Expresión |   | Valor del mismo tipo a buscar en el array | |||||
| inicio | Entero largo |   | Elemento a partir del cual comenzar la búsqueda | |||||
| Resultado | Entero largo |   | Número del primer elemento en el array que corresponde al valor | |||||
El comando Find in array devuelve el número del primer elemento del Array que corresponde a valor.
Find in array puede utilizarse con arrays de tipo Texto, Alfa, Numérico, Fecha, Puntero, y Booleano. Los parámetros Array y valor deben ser del mismo tipo.
Si no se encuentra ningún elemento, Find in Array devuelve –1.
Si se especifica principio, el comando comienza la búsqueda en el número de elemento especificado por principio. Si no se especifica principio, el comando comienza la búsqueda en el elemento 1.
El siguiente método de proyecto borra todos los elementos vacíos del array alfa o texto cuyo puntero se pasa como parámetro:
  ` Método de proyecto LIMPIAR ARRAY
  ` LIMPIAR ARRAY ( Puntero )
  ` LIMPIAR ARRAY ( -> Array Texto o Alfa )
 
 C_POINTER($1)
 Repeat
    $vlElem:=Find in array($1->;"")
    If($vlElem>0)
       DELETE FROM ARRAY($1->;$vlElem)
    End if
 Until($vlElem<0)Después de implementar este método de proyecto en una base, puede escribir:
 ARRAY TEXT(atValores;...)
  ` ...
  ` Utilizar el array como quiera
  ` ...
  ` Eliminar los elementos de cadenas vacías
 LIMPIAR ARRAY(->atValores)El método de proyecto siguiente selecciona el primer elemento de un array cuyo puntero pasado como primer parámetro corresponde al valor de la variable o del campo cuyo puntero se pasa como parámetro:
  ` Método de proyecto SELECCIONAR ELEMENTO
  ` SELECCIONAR ELEMENTO( Puntero ; Puntero)
  `SELECCIONAR ELEMENTO ( -> Array Texto o Alfa ; -> Campo o variable de tipo Texto o Alfa )
 
 $1->:=Find in array($1->;$2->)
 If($1->=-1)
    $1->:=0 ` Si no se encuentra un elemento, fijar el array en un elemento no seleccionado
 End ifDespués de implementar este método proyecto en la base, puede escribir por ejemplo:
  ` Método de objeto de menú desplegable asGenero
 Case of
    :(Form event=On Load)
       SELECCIONAR ELEMENTO(->asGenero;->[Personas]Genero)
 
 End case
 
									Count in array
									
									DELETE FROM ARRAY
									
									Find in sorted array
									
									INSERT IN ARRAY
									
									Size of array
									
	Producto: 4D
	Tema: Arrays
	Número 
        230
        
        
        
	
	Creado por: < 4D v6
	Manual de lenguaje 4D ( 4D v15.4)
	
	
	Manual de lenguaje 4D ( 4D v15)
	
	
	
	Manual de lenguaje 4D ( 4D v15.3)
 Añadir un comentario
Añadir un comentario