Saltar al contenido principal
Versión: Siguiente

VP SET DATA CONTEXT

Historia
LanzamientoModificaciones
19 R5Añadidos

VP SET DATA CONTEXT ( vpAreaName : Text ; dataObj : Object {; options : Object } {; sheet : Integer} )
VP SET DATA CONTEXT ( vpAreaName : Text ; dataColl : Collection ; {options : Object } {; sheet : Integer} )

ParámetrosTipoDescripción
vpAreaNameObject->Nombre de objeto formulario área 4D View Pro
dataObjObject->Objeto datos a cargar en el contexto de datos
dataCollCollection->Colección datos a cargar en el contexto de datos
optionsObject->Opciones adicionales
sheetInteger->Índice de la hoja

Descripción

El comando VP SET DATA CONTEXT define el contexto de datos de una hoja. A data context is an object or a collection bound to a worksheet, and whose contents can be used to automatically fill the sheet cells, either by using an autogenerate option or the VP SET BINDING PATH method. Por otro lado, el comando VP Get data context puede devolver un contexto que contenga modificaciones del usuario.

En vpAreaName, pase el nombre del área 4D View Pro. Si pasa un nombre que no existe, se devuelve un error.

En dataObj o dataColl, pase un objeto o una colección que contenga los datos a cargar en el contexto de datos. Las imágenes se convierten en esquemas URI de datos.

Para pasar un valor de tiempo en dataObj o dataColl, encapsúlelo en un objeto con las siguientes propiedades (ver ejemplo 4):

PropiedadTipoDescripción
valueInteger, Real, Boolean, Text, Date, NullValor a poner en el contexto
timeRealValor de tiempo (en segundos) para poner en el contexto

En options, puede pasar un objeto que especifique las opciones adicionales. Las propiedades posibles son:

PropiedadTipoDescripción
resetObjectTrue para restablecer el contenido de la hoja antes de cargar el nuevo contexto, False (por defecto) en caso contrario.
autoGenerateColumnsObjectSólo se utiliza cuando los datos son una colección. True (por defecto) para especificar que las columnas deben generarse automáticamente cuando se vincula el contexto de datos. En este caso, se aplican las siguientes reglas:
  • Si dataColl es una colección de objetos, los nombres de los atributos se utilizan como títulos de las columnas (ver el ejemplo 2).
  • Si dataColl contiene subcolecciones de valores escalares, cada subcolección define los valores de una fila (ver el ejemplo 3). La primera subcolección determina cuántas columnas se crean.

En sheet, pase el índice de la hoja que recibirá el contexto de datos. Si no se pasa ningún índice, el contexto se aplica a la hoja actual.

If you export your document to an object using VP Export to object, or to a 4DVP document using VP EXPORT DOCUMENT, the includeBindingSource option lets you copy the contents of the current contexts as cell values in the exported object or document. Para más detalles, consulte la descripción de esos métodos.

Ejemplo

Pasa un objeto y vincula los datos del contexto a las celdas en la primera línea:

var $data : Object

$data:=New object

$data.firstName:="Freehafer"
$data.lastName:="Nancy"

VP SET DATA CONTEXT("ViewProArea"; $data)

VP SET BINDING PATH(VP Cell("ViewProArea"; 0; 0); "firstName")
VP SET BINDING PATH(VP Cell("ViewProArea"; 1; 0); "lastName")

Ejemplo 2

Pasa una colección de objetos y genera columnas automáticamente:

var $options : Object
var $data : Collection

$data:=New collection()
$data.push(New object("firstname"; "John"; "lastname"; "Smith"))
$data.push(New object("firstname"; "Mary"; "lastname"; "Poppins"))

$options:=New object("autoGenerateColumns"; True)

VP SET DATA CONTEXT("ViewProArea"; $data; $options)

Ejemplo 3

data pasado como parámetro es una colección que contiene subcolecciones. Cada subcolección define el contenido de una línea:

var $data : Collection
var $options : Object

$data:=New collection
$data.push(New collection(1; 2; 3; False; "")) // Se crean 5 columnas
$data.push(New collection) // La segunda línea está vacía
$data.push(New collection(4; 5; Null; "hello"; "world")) // La tercera línea tiene 5 valores
$data.push(New collection(6; 7; 8; 9)) // La cuarta línea tiene 4 valores

$options:=New object("autoGenerateColumns"; True)

VP SET DATA CONTEXT("ViewProArea"; $data; $options)

Ejemplo 4 - Sintaxis de fecha y hora

var $data : Collection
var $options : Object

$data:= New collection()

// Las fechas pueden pasarse como valores escalares
$data.push(New collection("Date"; Current date))

// Los valores hora deben pasarse como atributos objeto
$data.push(New collection("Time"; New object("time"; 5140)))

// Ejemplo de fecha + hora
$data.push(New collection("Date + Time"; New object("value"; Current date; "time"; 5140)))

$options:=New object("autoGenerateColumns"; True)

VP SET DATA CONTEXT("ViewProArea"; $data; $options)

Este es el resultado una vez que se generan las columnas:

Ver también

VP SET BINDING PATH
VP Get binding path
VP Get data context