The AnyPlan3D user interface can be customized in many ways. It can be extended with additional modules, entities or attributes, it can be modified through configuration and also through the use of claims to hide or disabled functionality.
Gantt Grid Columns
The AnyPlan3d data model can be extended by solution developers using attributes or new entities. These can then be displayed in the Gantt data grid as additional columns. Developers can choose to include these in the AnyPlan3D filtering mechanism. A UIFactory class is designed to manage the transformation of domain specific objects to ViewModels and provides the means for third party developers to extend it, such as adding new columns that are available when a plan is loaded in AnyPlan3D.
These additional columns are defined in the Gantt DataGrid control and mapped to specific custom properties that have been added to the domain and its corresponding ViewModel.
AnyPlan3d uses a variety of property panels to provide an interface to many types of object in the network (projects, plans, activities, links, resources and calendars). All property panels can be extended by solution developers using the available frameworks and APIs. The property panels are designed to be activated by user selection and displayed in a modeless floating panel that can be dragged around by the user.
Property Panels are an essential component of Anyplan® and a standard mechanism that is used to view and edit details about the active target object. Property Panels are built on the Model-View-ViewModel pattern where the business logic and presentation is separated, harnessing the power of DataBinding between the View and the ViewModel.
Planning & Scheduling Customization
AnyPlan3D’s Scheduling Engine comes with a variety of scheduling algorithms. The engine has been developed as an independent module and can be replaced by one of the VAR/SI’s own design.
Customizing Portfolio Reports
AnyPlan3D uses a query selection mechanism for creating Portfolio queries. The selection mechanism can be extended to include any custom entities. Portfolios views are very similar to views of live plans (Gantt and other chart views) and UI customization is therefore identical.
Solution developers can provide custom menus to control AnyPlan3D implementation and extensions.
Solution developers can customize the look and feel and branding of Anyplan including splash screens, logos and colors.
Claims for setting UI attributes
AnyPlan3D uses the Microsoft Identity Foundation (MIF) to customize the user interface. Versions of AnyPlan3D can be created that set regions for the UI to one of 3 states
This allows both us and solution developers to create product versions suited to different audiences. The claims are retrieved from the database when the client starts up. We can provide customers and partners with a tool to administer and publish the claims.
UI Configuration Settings
Many aspects of the UI can be configured including the standard footers and headers used in printing plans and charts. A strings XML file is used for most UI labels and messages and any of these can be overridden by custom strings or translated versions.
The AnyPlan3D Search API has been created with the intention that third party developers can utilize the application’s global search field in their own controls and views.
AnyPlan3D® Core Customization
Object Model Customization
The AnyPlan3D data model can be customized by extending the object model’s base classes with custom entities and attributes backed by database metadata.
Custom Business Rules
AnyPlan3D comes with default settings for a wide range of business rules. Rules are created using Injected Business Logic which can be overwritten for different product versions or for specific customer or partner implementations. For example, initialization can load organizational defaults.
Some examples are follows: