Postagens

Mostrando postagens de fevereiro, 2014

ViewObject Forward Only mode

Hi! Today I was reading a interesting topic about one of ViewObject tuning properties, it is called Forward Only mode, you can programmatically set it by calling setForwardOnly(true). This property won't allow the ViewObject to cache the previous loaded rows while RowSet scroll is happening. Link to the documentation:  http://docs.oracle.com/cd/E21043_01/web.1111/b31974/bcadvvo.htm#sm0342 Section 39.2.6  Use Forward Only Mode to Avoid Caching View Rows As stated in documentation: "Often you  will write code that programmatically iterates through the results of a view object. A typical situation will be custom validation code that must process multiple rows of query results to determine whether an attribute or an entity is valid or not. In these cases, if you intend to read each row in the row set a single time and never require scrolling backward or re-iterating the row set a subsequent time, then you can use "forward only" mode to avoid caching the retr...

Accessing ViewObjectImpl sample methods trough Groovy

Imagem
Hi! Here are two ViewObjectImpl sample methods, one using direct Where Clause modification and another one using ViewCriteriaRow API: Class br.com.home.view.JobsVOImpl.getJobWithMinimumSalary() private static ADFLogger LOGGER = ADFLogger.createADFLogger(JobsVOImpl.class); private String minimumSalaryWhereClause = "MIN_SALARY IN (SELECT MIN(MIN_SALARY)\n" + " FROM HR.JOBS)\n" + " AND ROWNUM = 1"; private String minimumSalaryWhereClauseVC = "SELECT MIN(MIN_SALARY)\n" + " FROM HR.JOBS\n";     public String getJobWithMinimumSalary() {         setWhereClause(minimumSalaryWhereClause);         LOGGER.warning("WHERE clause -> " + this.getWhereClause());         executeQuery();         String jobId = "...