## change system code
# in the u:OnBeforeItemCreate, after $object variable is initialized, add lines:
$object->SetDBField('FirstName', array(1,2,3));
$object->SetDBField('MaxValueInc0Valid', 0);
$object->SetDBField('MinValueInc0Valid', 0);
$object->SetDBField('MaxValueExc0Valid', -5);
$object->SetDBField('MinValueExc0Valid', 5);
$object->SetDBField('MaxLen2Valid', '1');
$object->SetDBField('MinLen2Valid', '22');
$object->SetDBField('MaxValueInc0InValid', 5);
$object->SetDBField('MinValueInc0InValid', -5);
$object->SetDBField('MaxValueExc0InValid', 0);
$object->SetDBField('MinValueExc0InValid', 0);
$object->SetDBField('MaxLen2InValid', '333');
$object->SetDBField('MinLen2InValid', '1');
# in the users_config php remove `type` key from `FirstName` field configuration (to bypass type validation)
# in the users_config php add elements to 'VirtualFields' array:
'MaxValueInc0Valid' => Array ('type' => 'int', 'max_value_inc' => 0),
'MinValueInc0Valid' => Array ('type' => 'int', 'min_value_inc' => 0),
'MaxValueExc0Valid' => Array ('type' => 'int', 'max_value_exc' => 0),
'MinValueExc0Valid' => Array ('type' => 'int', 'min_value_exc' => 0),
'MaxLen1Valid' => Array ('type' => 'string', 'max_len' => 1),
'MinLen1Valid' => Array ('type' => 'string', 'min_len' => 1),
'MaxValueInc0InValid' => Array ('type' => 'int', 'max_value_inc' => 0),
'MinValueInc0InValid' => Array ('type' => 'int', 'min_value_inc' => 0),
'MaxValueExc0InValid' => Array ('type' => 'int', 'max_value_exc' => 0),
'MinValueExc0InValid' => Array ('type' => 'int', 'min_value_exc' => 0),
'MaxLen2InValid' => Array ('type' => 'string', 'max_len' => 2),
'MinLen2InValid' => Array ('type' => 'string', 'min_len' => 2),
## testing
# go to {nav User Management > Users}
# press `Add` button
# press `Save` button
# confirm that no `strlen() expects parameter 1 to be string, array given` among resulting errors in the debugger
# confirm that no errors with "Valid" group of added virtual fields among resulting errors in the debugger
# confirm that all six "value_out_of_range" errors with "InValid" group of added virtual fields appears among resulting errors in the debugger