The Project DesignerFor a fully customizable overview of the elements, you can use projects. In a project, elements can be grouped and structured according to the developer's preference. This is a powerful alternative to the AOT because all the elements needed for a feature can be collected in one project. Creating a New ProjectThe Project Designer is opened by clicking the Project button on the toolbar. Figure 3-6 shows the Project Designer. Figure 3-6. The Project Designer, showing available private and shared projects.
Except for its structure, the Project Designer behaves exactly like the AOT. Every element in a project is also present in the AOT. When you create a new project, you must decide whether it should be private or shared among all developers. You cannot set access requirements on shared projects. A shared project can be made private (and a private project can be shared) by dragging it from the shared category into the private category. Note
A startup project may be specified in the Options dialog box. If specified, the chosen project automatically opens when Dynamics AX is started. Automatically Generated ProjectsProjects can be automatically generated in several ways to make working with them easier. Group MasksGroups are folders in a project. When you create a group, the contents of the group can be automatically generated by setting the ProjectGroupType property (All is an option) and a regular expression as the GroupMask property. The contents of the group are created automatically and kept up to date as elements are created, deleted, and renamed. This ensures that the project is always current, even when elements are created directly in the AOT. Figure 3-7 shows the ProjectGroupType property set to Tables and the GroupMask property set to <xref on a project group. All table names starting with xref (the prefix for the Cross-Reference tool) will be included in the project group. Figure 3-7. The property sheet specifying settings for ProjectGroupType and GroupMask.
Figure 3-8 shows the resulting project when using the settings from Figure 3-7. Figure 3-8. A project created by using group masks.
FiltersYou can also generate a project based on a filter. Because all elements in the AOT persist in a database format, you can use a query to filter elements and have the results presented in a project. A project filter is created by clicking the Filter button on the project's toolbar. Depending on the complexity of the query, project generation can take several minutes. This feature allows you to create a project containing:
Development ToolsSeveral development tools, such as the Wizard Wizard, produce projects containing the elements created by the wizard. The result of running the Wizard Wizard is a new project that contains a form, a class, and a menu itemall the elements you need to run the wizard. Several other wizards also create projects, such as the Report Wizard and the Class Wizard. You can access the wizards by clicking Tools\Development Tools\Wizards. Layer ComparisonYou can compare all elements in one layer with elements in another layer, called the reference layer. If an element exists in both layers, and the definitions of the element are different or the element does not exist in the reference layer, the element will be added to the resulting project. You can compare layers by clicking Tools\Development Tools\Version Update\Compare Layers. Upgrade ProjectsWhen you upgrade from one version of Dynamics AX to another or install a new service pack, new elements are introduced and existing elements are modified. These changes might conflict with customizations implemented in a higher layer. The upgrade project feature makes a three-way comparison to establish whether an element has an upgrade conflict. It compares the original version with both the customized version and the updated version. If a conflict is detected, the element is added to the project. The resulting project provides a list of elements to update based on upgrade conflicts between versions. You can use the Compare tool described in Chapter 4, "The MorphX Development Tools," to see the conflicts in each element. Together, these features provide a cost-effective toolbox to use when upgrading. You can create an upgrade project by clicking Tools \Development Tools \Version Update\Create Upgrade Project. Project TypesWhen you create a new project, you can specify a project type. So far, the discussions in this chapter have been limited to standard projects. Two specialized project types are also provided:
You can create a custom specialized project by creating a new class that extends the ProjectNode class. Specialized projects allow you to control the structure, icons, and actions available to the project. |