id_spreadsheet = par_id;

sql_expression_parsed = cou_buildEncodedSQL(cnx, expression_parsed);

__CREATE_QUERY( "
UPDATE co_sys_expression
SET expression_parsed='%s'
WHERE id_spreadsheet=%d AND id_column=%d AND id_row=%d
", sql_expression_parsed, id_spreadsheet, id_column, id_row)

__SQL_EXEC

if (!ok) { /* new expression */
snprintf(SQLString, SQLBUFSIZE, "
INSERT INTO co_sys_expression
(id_spreadsheet,id_column,id_row,expression_parsed)
VALUES(%d,%d,%d,'%s')
", id_spreadsheet, id_column, id_row,sql_expression_parsed);


__SQL_EXEC
}
{
const char* class_names[] = {"spreadsheet","spreadsheet_column","spreadsheet_row",NULL};
int object_ids[] = {id_spreadsheet, id_column, id_row };
cou_queueActionX( cnx, "expression", class_names, object_ids, CO_OP_UPDATE, "expression_parsed", expression_parsed, NULL );
}