Saturday, June 22, 2013

Joins and LinkTypes in Axapta

Here I have created Two Tables 1.Master 2.JoinDetail

I have created a Form using the above two tables. This form demonstrates the effects of joining two datasources in a form.

  Setting the property JoinSource and LinkType in form JoinDetail DataSources level 
InnerJoinRetrieves a record from the main table that matches records in the joined table and vice versa.
There is one record for each match. Records without related records in the other data source are eliminated from the result.
OuterJoin: Retrieves records from the main table whether they have matching records in the joined table.
ExistJoin: Retrieves a record from the main table for each matching record in the joined table.
The differences between InnerJoin and ExistJoin are as follows:
  • When the join type is ExistJoin, the search ends after the first match has been found.
  • When the join type is InnerJoin, all matching records are searched for.

    NotExistJoin: Select records from the main table that do not have a match in the joined table.
    Active: The data source is updated immediately when a new record in the parent data source is selected. Continuous updates consume lots of resources.

Passive: Linked child data sources are not updated automatically. Updates of the child data source must be programmed on the active method of the master data source.
Delayed: A pause is inserted before linked child data sources are updated. This enables faster navigation in the parent data source because the records from child data sources are not updated immediately.
 For example, you can scroll a list of orders where you do not want to review the lines associated with the order until you stop scrolling.

Reference: AOT>Form>tutorial_Form_Join






No comments:

Post a Comment

Enable/Disable form control based on multiple rows select

 class PurchTableFormEventHandler {      [FormDataSourceEventHandler(formDataSourceStr(PurchTable, PurchTable), FormDataSourceEventType::Act...