Pergunta

This might be too generic of a question. But in general, why does an SAP BOBJ universe create joins on tables that aren't referenced in the WEBI query.

I recently added a table to an established universe. I added the relationships consisting of 2 separate foreign keys. Now, anytime we do a webi query using that universe, the new table is joined. Even though there are no objects referencing it in the query.

Any help in pointing me in the correct direction would be helpful.

Thanks

Foi útil?

Solução

This can happen for a number of reasons.

  1. There is a Predefined Condition that is set to "apply to universe". Thus, the condition (and its associated tables) will be included in any query that is generated from the universe.
  2. An object in the universe has a reference to the table even though it's not actually used in the object's SELECT or WHERE clause. This can be set/unset from the "Tables" button in the object settings.
  3. The new table formed or joined a "loop" in a universe context. In this case, as long as two or more member tables of the loop are referenced by the query, all member tables will be included.
  4. An Access Restriction has been applied (Tools->Manage Security). As with a universe-level condition, this would apply to all queries.

Note that most of the above scenarios require something to have been done other than simply adding the table. I can't think of any reason why a newly-added table alone would result in its being joined to all queries.

One way to try to identify the source is to delete the table from the model, then do an Integrity Check. If the table was referenced in any conditions, they should fail the test.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top