A Sql query/ select statement is called as opaque view.In worst scena rios we go for opaque view.
after creation of opaque view in rpd if we not deployed into database,if we use opaque in reports then oracle bi server need to create complex queries.To avoid these complex queries we required to deploy opaque view in to database.
The opaque views are tables that are created with join or other query data that contain ?SELECT? query output. The opaque views make the logical understanding simple for implementation but there are heavy performance constraints. They are only used when there is no other way to get to the final solution.