VFinder

Hereda de: VObjectInstance.

La clase VFinder representa un localizador en ejecución. Nos permite ejecutar el objeto de proyecto localizar. Construimos un objeto VFinder pasándole el objeto VRoot con el cual podemos operar.

Indice de funciones

Constructor

VFinder( VRoot root )

Inicialización

void setFinder( String szIdRefFinder )

De operaciones

Boolean exec()

VRegister result()

Documentación de funciones

Constructor

VFinder( VRoot root)

Crea una instancia de objeto de la clase VQuery. Debe ejecutarse la función setQuery() para asignarle la búsqueda.

Parámetros:

  • root: VRoot que indica el objeto VRoot en curso del que se hará uso, normalmente theRoot.

Inicialización

void setFinder( String szIdRefFinder )

Fija el localizador del proyecto que se asocia al objeto.

Parámetros:

  • szIdRefFinder: cadena que contiene el identificador referencia (IdRef=Alias_Proyecto/Id_Localizador) del localizador.

Funciones de operaciones

Boolean exec()

Ejecuta el objeto localizador y devuelve true si finaliza correctamente.

VRegister result()

Devuelve un objeto VRegister con el registro encontrado mediante el localizador.

Ejemplos

1. Proceso sin origen que lanza un localizador de películas

// --------------------------------------------------------------------------------
// Proceso sin origen que lanza un localizador de películas y si seleccionan una
// la presenta en formulario en diálogo
// --------------------------------------------------------------------------------

importClass("VFinder");

// Crea localizador
var finder = new VFinder(theRoot);
finder.setFinder("CINE/PELICULAS");

// Ejecuta localizador
if (finder.exec())
{
 // Si hay resultados
 if (finder.result())
 {
  // Crea el lanzador del formulario en cuadro de dialogo con el formulario de películas
  var dlg = new VDataViewDialog(theRoot);
  dlg.setDataView(VObjectInfo.TypeForm, "CINE/PELICULA");

  // Le inicializa el resultado del localizador (una peli)
  if (dlg.setRegister(finder.result()))
  {
   // presenta formulario en cuadro de dialogo
   dlg.exec();
  };
 };
};

2. Ejemplo de localizador con subindexación para multiempresa

// ------------------------------------------------------------------------------------------
// Ejemplo de localizador multiempresa
// Localizador subindexado a un parámetro que le pasemos a la variable local que lo subindexa
// ------------------------------------------------------------------------------------------

//Importamos la clase
importClass("VFinder");

//Creamos el localizador
var Finder = new VFinder(theRoot);
Finder.setFinder("49z6dckf.vca/VFINDER");

//Le indicamos la subindexación(por ejemplo para multiempresa) sin el uso de variables globales
Finder.setVar("TIP", 1);

//Mostramos el localizador
if(Finder.exec())
{
  //Si se obtienen resultados
  if(Finder.result()){

  //Mostramos el formulario seleccionado
  var formulario = new VDataViewDialog(theRoot);
  formulario.setDataView(VObjectInfo.TypeForm, "49z6dckf.vca/DUMMY")
  formulario.setRegister(Finder.result());
  formulario.exec(); 
  };
};