VDataViewDialog

Hereda de: VObjectInstance.

La clase VDataViewDialog representa un objeto en ejecución de ficha o lista con interfaz. Nos permite ejecutar objetos de lista o ficha como rejillas, formularios, casilleros, etc. en modo diálogo. Construimos un objeto VDataViewDialog pasándole el objeto VRoot de entrada.

Indice de funciones

Constructor

vDataViewDialog(VRoot, root)

Inicialización

void setDataView( Number nTypeObj, String szIdRefObj )

Boolean setRegister( VRegister register)

Boolean setRegisterList( VRegisterList registerList)

De operaciones

Boolean exec()

Enumeraciones

Runmode (Modos de ejecución)

  • RunInThisThread

  • RunInNewThread

  • RunInServer

Documentación de funciones

Constructor

VDataViewDialog( VRoot, root)

Crea una instancia del objeto de la clase VDataViewDialog. Debe ejecutarse la función setDataView() para asignarle el objeto a ejecutar.

Parámetros:

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

Funciones de inicialización

void setDataView( Number nTypeObj, String szIdRefObj )

Fija el proceso que se asocia al objeto.

Parámetros:

  • nTypeObj: ver enum de tipos de objetos en la clase VObjectInfo.

  • szIdRefObj: identificador de referencia (IdRef=Alias_Proyecto/Id_Objeto) del objeto del proyecto.

Boolean setRegister( VRegister register)

Añade una ficha o registro al objeto. Esta es la forma de alimentar el registro de entrada del objeto.

Parámetros:

  • register: objeto de la clase VRegister del objeto.

El registro que se pasa al objeto si exec devuelve true contendrá la información actualizada tras haber sido procesado en el objeto.

No se genera un nuevo registro de salida (result), sino que se trabaja sobre el mismo VRegister de entrada.

Boolean setRegisterList( VRegisterList registerList)

Añade una lista de registros al objeto. Esta es la forma de alimentar la lista de registros de entrada del objeto.

Parámetros:

La lista de registros que se pasa al objeto si exec devuelve true contendrá la información actualizada tras haber sido procesada en el objeto.

No se genera una lista nueva (result), sino que se trabaja sobre el mismo VRegisterList de entrada.

Funciones de operaciones

Boolean exec()

Ejecuta el objeto. El registro que se pasa al objeto si exec devuelve true contendrá la información actualizada tras haber sido procesado en el objeto. No se genera un nuevo registro de salida (result), sino que se trabaja sobre el mismo VRegister de entrada.

Ejemplos

1. Ejemplo que muestra un formulario de una película seleccionada con un localizador

// --------------------------------------------------------------------------------
// 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. Lanzar un formulario pasándole parámetros y recogiendo valores de retorno

// -------------------------------------------------------------------------------------------
// Abrimos un formulario al que le pasamos parámetros y del que recuperamos valores de retorno
// -------------------------------------------------------------------------------------------

//Manejamos una lista de registros
var Registros = new VRegisterList(theRoot);
Registros.setTable("49z6dcke.vcd/DUMMY");
Registros.load("ID", [1]);

if (Registros.listSize())
{
  //Nos quedamos con un registro
  Registro = Registros.readAt(0);

  //Creamos el formulario
  var formulario = new VDataViewDialog(theRoot);
  formulario.setDataView(VObjectInfo.TypeForm, "49z6dckf.vca/DUMMY")

  //Le pasamos un valor a la variable local del formulario (como manejador de objetos)
  formulario.setVar("TEXTO", "Hola mundo");
  formulario.setRegister(Registro);

  //Mostramos el formulario
  if(formulario.exec())
  {
    //Leemos el valor de una variable del formulario y lo mostramos
    alert(formulario.varToString("RESULTADO"));

Última actualización