A view element associates a table or a reporting view with a [[Invantive Studio/Repository/Applications/Business Objects|business object]], under an alias, and says how it is joined: on which column of which other element, and whether rows without a match are kept. The elements of a business object are listed under it as "Elements", in their sequence. The table `itgen_applications`, for instance, is an element of the business object `itgen_tables_v`, joined on the application of the table. The elements of the business object of messages: ![[20261004-studio-business-object-elements.png]] [[Invantive Studio/Repository/Concepts/Autocomplete|Autocomplete]] derives most view elements from the referential constraints. An element that cannot be derived is entered by hand with a sequence number of 900 or higher. Release 28.0 and its BETA release 27.1 join the elements in ANSI style. The "Additional Where Clause" of an element other than the first becomes part of its join condition, so on a left outer join it decides which row is joined, not which rows are shown; release 27.0 put it in the where clause, where a condition without `(+)` on a left outer joined element removed the rows without a match. An element is placed after the element it is joined to and after the elements its "Additional Where Clause" refers to, and otherwise in sequence. ## Fields The details of a view element show these fields: - "Database View Application Code": Code of the application of the business object. - "Database View Code": Unique alphanumeric code. - "Sequence": It's numeric unique sequence number. - "Table Application Code": Code of the application of the table. - "Table Code": Unique alphanumeric code. - "Alias": Alias of the view element's columns in the view's select clause. - "Column Name": Column that is joined with. Normally this is always the 'id' column since Invantive Producer strongly promotes a fully normalised data model with only technical keys. - "Table Joined Code": Code of the table joined with. See the column 'column_name'. - "Joined Column Name": Column being joined. Typically consists of the alias of the table in the related view element plus '_id'. - "Additional Where Clause": Text to be added to the join clause of the view element. Equals additional_where_clause on a view only when not used with a left outer join. - "Reference Columns": Comma-separated list of columns of the referenced table to be included in the view. A '+' means inclusion of the default column list of the table. - "Left Outer Join": Whether the relationship is a left outer join (when 'Y') or a normal join (when 'N'). - "Documentation": Documentation on the view element. Up to and including release 27.0 "Database View Application Code" and "Table Application Code" both read "Application Code". ## Tabs The summary window of a view element shows its related rows on these tabs: - [[Invantive Studio/Repository/Applications/Business Objects|Database View]] - [[Invantive Studio/Repository/Applications/Tables|Table]]