This is the legacy 4D documentation web site. Documentations are progressively being moved to developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
WP INSERT FORMULA
|
WP INSERT FORMULA ( targetObj ; formula ; mode {; rangeUpdate} ) | ||||||||
Parameter | Type | Description | ||||||
targetObj | Object |
![]() |
Range or element or 4D Write Pro document | |||||
formula | Object |
![]() |
Formula object OR Object with formula and name properties | |||||
mode | Number |
![]() |
Insertion mode | |||||
rangeUpdate | Number |
![]() |
Includes or excludes the inserted content within the range | |||||
The WP INSERT FORMULA command inserts a formula in targetObj according to the specified insertion mode.
In the targetObj parameter, you can pass:
In the formula parameter, pass the 4D formula to evaluate. You can pass:
Property | Type | Description |
name | String | Name to display for the formula in the document |
formula | Object | The formula object created by the Formula or Formula from string command |
In the mode parameter, pass one of the following constants to indicate the insertion mode to be used:
Constant | Type | Value | Comment |
wk append | Longint | 2 | Insert contents at end of target |
wk prepend | Longint | 1 | Insert contents at beginning of target |
wk replace | Longint | 0 | Replace target contents |
Constant | Type | Value | Comment |
wk exclude from range | Longint | 1 | Inserted contents not included in updated range |
wk include in range | Longint | 0 | Inserted contents included in updated range (default) |
Note: Keep in mind that, when called, the formula object is evaluated within the context of the database or component that created it.
To replace all current date formulas with formatted strings:
C_COLLECTION($_formulas)
C_OBJECT($find;$newFormula)
// define the formula to find
$find:=Formula(Current date)
// define the replacement formula
$newFormula:=Formula(String(Current date;System date long))
// find all formulas in the document
$_formulas:=WP Get formulas(WriteProArea)
// query the collection from WP Get formulas
$_formulas:=$_formulas.query("formula.source =:1";$find.source)
// then replace each formula
For each($formula;$_formulas)
WP INSERT FORMULA($formula.range;$newFormula;wk replace)
End for each
You want to use a formula name for the customer name:
//add some data
$data:=New object("customer";New object("lastname";"Smith";"firstname";"John"))
WP SET DATA CONTEXT(WPArea;$data)
//create a formula object with a name
$o:=New object
$o.formula:=Formula(This.data.customer.firstname+" "+This.data.customer.lastname)
$o.name:="Customer name"
//inserts as text
$range:=WP Text range(WPArea;wk start text;wk end text)
WP SET TEXT($range;"Dear ";wk append)
WP INSERT FORMULA($range;$o;wk append)
Result:
Managing formulas
WP COMPUTE FORMULAS
WP FREEZE FORMULAS
WP Get formulas
Product: 4D
Theme: 4D Write Pro Language
Number:
1703
Created: 4D v18 R2
Modified: 4D v20 R3
4D Write Pro Reference ( 4D v20 R7)