psdi.app.configure

Class MaxViewColumn

  • java.lang.Object
  • All Implemented Interfaces:
    java.rmi.Remote, MaxViewColumnRemote, MboConstants, MboRemote, MaxRemoteProxy


    public class MaxViewColumn
    extends Mbo
    implements MaxViewColumnRemote
    Mbo object to represent MaxViewColumn.

    See Configure Package description.

    This is a system level object.

    The key attributes for this object are ViewName, ViewColumnName.

    The attributes in this object are as follows:

    Attribute NameDescription
    SameStorageAsMaster viewcolumnname. Will be non-null if this column's value is always equivalent to the value of another column in this view, and this is to be treated as secondary. For example, if this view joins two tables on the "siteid" column, the secondary attribute will have samestorageas the primary attribute.
    TableColumnName, TableNameThe source of the data for this view. TableName + TableColumnName represent a column on a table. Will be null if this is a calculated field.
    ViewColumnNameThe name of the attribute defined in this view.
    ViewNameThe name of this view.

    MaxViewColumn contains a row for every attribute from the table(s) that participate in the view. A view that joins two tables will have a row in MaxViewColumn for every attribute from each table. For example, if tables A and B are joined by column X, there will be a row in MaxViewColumn for A.X and a row for B.X (as well as for all of the other attributes on those tables). For the joined rows, A.X = B.X. There will exist only one row for X in MaxAttribute for this view.

    So for this scenario, MaxViewColumn would contain the following:

    ViewNameViewColumnNameSameStorageAsTableNameTableColumnName
    MYVIEWX1(null)AX
    MYVIEWX2X1BX
    MYVIEWY(null)AY
    MYVIEWZ(null)BZ

    MaxAttribute for the view would contain the following:

    ObjectNameAttributeNameEntityNameColumnName
    MYVIEWX1MYVIEWX1
    MYVIEWYMYVIEWY
    MYVIEWZMYVIEWZ

    We can see that the following hold true for column X:

    1. The primary row in MaxViewColumn (A) indicates the row on MaxAttribute. MaxViewColumn (ViewName + ViewColumnName) --> MaxAttribute (EntityName + ColumnName).
    2. The redundant row in MaxViewColumn (B) refers to its primary in MaxViewColumn (A) via SameStorageAs.
    3. There is an indirect relationship between the redundant row in MaxViewColumn (B) and the related row in MaxAttribute (A).

    Additionally, when the table(s) include a Rowstamp column, MaxViewColumn will contain a row for each table's Rowstamp. However, MaxAttribute for the view and table(s) will not contain a row for Rowstamp. The existance of Rowstamp on a table is indicated on MaxTable AddRowstamp.

    • Constructor Detail

      • MaxViewColumn

        public MaxViewColumn(MboSet ms)
                      throws java.rmi.RemoteException
        Construct the MaxViewColumn object
        Throws:
        java.rmi.RemoteException