First, the cached properties applies to lookup situations, where you have to fill drop-downs based on mastertables. Having the data cached will cause the dropdown to be empty after the initial query because the related data cannot be found in the cached dataset. Do not use on master datasets.
To refresh your form, simply close the dataset like in the following example:
//
function dbgrid_1_onProcessRow($app, $row, $sender, $buttonid)
{
$sql='update employees set upddate=:upd where emp_no=:emp';
$$qq->sql=$sql;
$$qq->SetStringFieldByName(':upd', $$calendar_1->value);
$$qq->SetStringFieldByName(':emp', $row['employees_emp_no']);
$$qq->SimpleExecSQL();
$$dbtable_1->Close();
}
The basic query is executed, as the update does not apply to the cached table. The main reason is that there could be triggers on the master table that otherwise would not affect the shown data.