// getting class_name
@co_getProp(par_area, par_class, par_id, '"class_name"');
class_name = get_str;
// getting props, we have to do this before we delete view
@co_filterByProp(par_area, '"meta_prop"', '"*"', '"class_name"', class_name);
NProps = cor_GetTupleCount(cnx, corec);
// executing query
__CREATE_QUERY("DROP VIEW cov_%s_%s", par_area, class_name)
__SQL_EXEC
__CREATE_QUERY("CREATE VIEW cov_%s_%s AS SELECT * ", par_area, class_name)
for(i=0; i<NProps; i++)
{
char * f_body = cor_GetValueByName(cnx, corec, i, "f_body");
char * prop_name = cor_GetValueByName(cnx, corec, i, "prop_name");
if(strlen(f_body)>0)
{
__APPEND_TO_QUERY(" , cof_%s_%s_%s(c) AS %s ", par_area, class_name, prop_name, prop_name)
}
}
__APPEND_TO_QUERY(" FROM co_%s_%s AS c ", par_area, class_name)
__SQL_EXEC
//granting rights to nobody
__CREATE_QUERY(" GRANT ALL ON cov_%s_%s TO nobody ", par_area, class_name)
__SQL_EXEC