Find in array

4D - Documentation   Français   English   German   Español   English   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente

versión 3


Find in array (Array; valor{; principio}) Numérico

ParámetroTipoDescripción
ArrayArrayArray a buscar
valorExpresiónValor del mismo tipo a buscar en el array
principioNuméricoElemento a partir del cual comenzar la búsqueda
ResultadoNuméricoNúmero del primer elemento en el array
que corresponde al valor

Descripción

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.

Ejemplos

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)

2. El método de proyecto siguiente selecciona el primer elemento de un array cuyo puntero pasa como primer parámetro que corresponde al valor de la variable o 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 if

Después de implementar este método en una base, puede escribir:

      ` Método de objeto de menú desplegable asGenero
   Case of
      : (Form event=On Load)
          SELECCIONAR ELEMENTO (->asGenero;->[Personas]Genero)
      
   End case

Ver también

DELETE FROM ARRAY, INSERT IN ARRAY, Size of array.


4D - Documentation   Français   English   German   Español   English   4D v11 SQL, Comandos por temas   4D v11 SQL, Lista alfabética de comandos   4D v11 SQL, Constantes por temas   Regresar   Anterior   Siguiente