Official Content

In the context of a Transaction object, inferred attributes are those whose value is not stored in any transaction level Base Table but in a table related to the transaction base tables.

The inferred term means "obtained" or "retrieved". Attributes can be inferred, given the value of a foreign key.

The following example shows a set of transactions where attributes CustomerName, ProductName and ProductPrice are inferred attributes in the first and second levels of the Invoice transaction.

Invoice                                  Customer                        Product
{                                        {                               {
  InvoiceId*                                CustomerId*                      ProductId*
  InvoiceDate                               CustomerName                     ProductName
  CustomerId                                CustomerPhone                    ProductPrice
  CustomerName                           }                               }
  InvoiceTotal
  Detail
  {
       ProductId*
       ProductName
       ProductPrice
       InvoiceDetailQuantity
       InvoiceDetailAmmount
  }
}

We say that the CustomerName attribute is an inferred attribute in the Invoice transaction, because its value is not stored in any of its associated tables, but inferred – that is to say, it is obtained – from the Customer table, given the value of the CustomerId attribute. In a similar way, the ProductName and ProductPrice attributes are also inferred in the Invoice transaction, because they are not stored in its associated tables; instead, its values are inferred from the Product table in order to, for example, show them in the form.


See Also

Stored attribute








Last update: February 2024 | © GeneXus. All rights reserved. GeneXus Powered by Globant