513
edits
(→参数) |
(→自定义属性) |
||
| Line 37: | Line 37: | ||
== 自定义属性 == | == 自定义属性 == | ||
=== 计算字段 === | |||
You can enter here a formula using other properties of object or any PHP coding to get a dynamic computed value. You can use any PHP compatible formulas including the "?" condition operator, and following global object: $db, $conf, $langs, $mysoc, $user, $object. | |||
WARNING: Only some properties of $object may be available. If you need a properties not loaded, just fetch yourself the object into your formula like in the second example. | |||
Using a computed field means you can't enter yourself any value from interface. Also, if there is a syntax error, the formula may return nothing. | |||
Example of formula: | |||
$object->id < 10 ? round($object->id / 2, 2) : ($object->id + 2 * $user->id) * (int) substr($mysoc->zip, 1, 2) | |||
Example to reload object | |||
(($reloadedobj = new Societe($db)) && ($reloadedobj->fetch($obj->id ? $obj->id : ($obj->rowid ? $obj->rowid : $object->id)) > 0)) ? $reloadedobj->array_options['options_extrafieldkey'] * $reloadedobj->capital / 5 : '-1' | |||
Other example of formula to force load of object and its parent object: | |||
(($reloadedobj = new Task($db)) && ($reloadedobj->fetch($object->id) > 0) && ($secondloadedobj = new Project($db)) && ($secondloadedobj->fetch($reloadedobj->fk_project) > 0)) ? $secondloadedobj->ref : 'Parent project not found' | |||
= 解释 = | = 解释 = | ||
edits