A capacidade de interagir com um documento através da programação é uma parte importante da utilização do 4D View Pro. Agora pode preencher os seus documentos através de programação. Pode definir dados como etiquetas, campos de base de dados, ou fórmulas no seu documento. Claro que, se pode definir, também pode obter! Também pode recuperar fórmulas celulares ou valores introduzidos pelos seus utilizadores.
Para definir e obter valores em 4D View Pro, 4D fornece-lhe um novo conjunto de comandos:
- VP SET VALUE
- VP SET BOOLEAN VALUE
- VP SET DATE TIME VALUE
- VP SET DATE VALUE
- VP SET TIME VALUE
- VP SET NUM VALUE
- VP SET TEXT VALUE
- VP SET FORMULA
- VP SET FIELD
- VP Get value
- VP Get formula
Aqui está um IDH para ver estes comandos em acção:
Valor SET e GET em células
Valor definido na(s) célula(s)
Para definir um valor em uma ou várias células, é preciso primeiro criar um intervalo de todas as células que se pretende preencher.
Depois, dependendo do tipo de valor (texto, data, hora, etc.), tem duas formas de o definir:
Por tipo: VP SET BOOLEAN VALUE, VP SET DATE TIME VALUE, VP SET DATE VALUE, VP SET TIME VALUE, VP SET NUM VALUE, VP SET TEXT VALUE // Setting "Hello World" in cell G11
VP SET TEXT VALUE (VP Cell ("ViewProArea";6;10); "Hello world")
Genérico: VP SET VALUE
// Setting "Hello World" text in the cells G11
VP SET VALUE ( ("ViewProArea";6;10); ("value"; "Hello world"))VP CellNew object
Valor GET numa(s) célula(s)
Para obter um valor a partir de uma célula, utilize o VP Get value comando. Retorna um objecto que contém o valor da célula:
$cell:=VP Cell ("ViewProArea";5;2)
// retrieve value of F3 cell
$value :=VP Get value ($cell)
// Verify if value is a Text
If (Value type($value.value )=Is text)
// set the value in uppercase in the cell
( ; ($valor. )) VP SET TEXT VALUE$cellUppercasevalue
end if
Preparar e obter fórmula
definir uma fórmula
Para atribuir uma fórmula a uma célula ou a um grupo de células, utilizar o comando VP SET FORMULA comando. Por exemplo:
// Automatically calculate a total in F26
VP SET FORMULA (VP Cell ("ViewProArea";5;25); "SUM($F$21:$F$25)")
Também pode atribuir um método 4D declarado, como explicado em Use methods and database fields in 4D View Pro com o comando VP SET FORMULA command:
// Set the licence information in A1
VP SET FORMULA ( ("ViewProArea";0;0); "get_LicenceInfo()")VP Cell
obter uma fórmula
Para obter uma fórmula atribuída a uma célula utilizando o VP Get formula comando:
// Create a cell range: D17
)
$cell:=VP Cell ("ViewProArea";3;16)
// Get the formula of the cell D17
$formula :=VP Get formula($cell
// Returns $formula="SUM($F$21:$F$25)"
Definir campos de base de dados
definir um campo
Pode atribuir um campo a uma célula com o comando VP SET FIELD comando. Evidentemente, é necessário declarar os seus campos como estruturas virtuais, tal como explicado no post do blogue 4D View Pro Métodos de utilização e campos de base de dados.
// assign the Price1 field to the F21 cell
VP SET FIELD (VP Cell ("ViewProArea1";5;20);->[Invoices]Price1)
Tenha em mente que este campo aparece na fórmula ligada à célula, e os nomes da tabela e do campo são substituídos pelos nomes declarados na estrutura virtual.