Best practices for developing applications


This topic lists some best practices that you can follow while developing applications by using the Developer Studio.

  • Basic Columns
    Use the the Basic Columns feature to gain performance on Object Lists. Selecting Basic Columns option in Object List View in the preference page reduces the time taken to open the object list because only the basic information is fetched.
  • Set column display to No
    If you do not want to Developer Studio to fetch certain columns from the database, set the display type for the column to No. This improves the Developer Studio performance. For information about setting the column display, see Viewing-objects-in-an-object-list.
  • Do not validate tables on form open
    When your form contains lot of tables, it is advisable to select the Do Not Validate Table Fields When a Form is opened option, especially when fields used in the table come from a remote form.
  • Record Object Relationships
    Use the Administration Console > Configurations tab > Record Object Relationships option to improve performance when working with large applications. Setting this option requires a server restart. When restarted for the first time, the server takes some time to get started based on size of the installation. This is just a one-time activity. Once server gets restarted you can utilize the benefit of this feature. However, since the server start time is increased by this setting, it is recommended to only use it option in development server. This feature is heavily used by RDP features like Analyzer, Search, and Relationships view. Even working lists perform better if this feature is on.
  • Working Lists
    Use Working Lists to work on selected objects. Generally, an AR System developer might be working on a subset of objects of the application. In such cases, the Related List and View by Form List allows the developer to work on those objects which are of interest to the developer. There is no need to open up entire object list to find the object of interest. It also lists all the objects in just one view, there is no need to switch between views of different object types to find the needed object.

    View by Form List allows developer to work with set of forms and their workflow objects. Related List on the other hand, allows the developer to work with any object and their directly related or all related objects.
  • All Related
    Use the All Related option only if absolutely required. Related Lists, at the time of its creation, allow a developer to configure to fetch all related objects of a selected object. This option must never be used unless and until it is unavoidable. This option may make Developer Studio unresponsive, as it takes large amount of time to find all related objects of a given object.
  • String Search
    Use String Search to find objects. Developer Studio's String Search is a replacement of RDP Search. Using String Search, one can quickly find all the objects which contain a particular string in it. For example, if you want to find workflow objects which use a particular field in their Run-If qualifications then String Search will help you in achieving this. There are many more locations where you can search a string.

    String Search will be available only if Record Object Relationships is turned on.

  • Relationships View
    Use Relationships View to view related objects. Relationships view, as its name suggests, lists the related objects of a given object. This view is meant to quickly view the related objects. To see related objects of an object in the Object List view, right click on the object and select Show Relationships. This will activate the Relationships views and show any related objects, along with the kind of relation, in the table.

    To see related objects of a field then open the form, select Link with Editor in Relationships view and then select any field in the form. If the selected field has any related objects then they will be shown.

    Show Relationships functionality will be available only if Record Object Relationships is enabled in server.

  • Analyze objects on Save
    You can analyze the objects on save operation to know whether the updated object is violating any rules. Open Analyzer Results view when an editor is opened and select Link with Editor option in the Analyzer Results view to bind it to the current active editor. When this is done, Analyzer will analyze the object whenever the object gets saved through the editor.

    Analyzer will be available only if Record Object Relationships is enabled in server.


Best practices for multiple development teams

When an application is developed by more than one person or teams, Version Control feature can be handy in maintaining integrity and to (optionally) maintain versions of an object. Following sub-parts of Version Control can be used.

  • Object Reservation
    Use Object Reservation to maintain integrity. Using Object Reservation feature one can avoid overwriting changes made by an AR System developer from other team members. Using this feature, an AR System developer can reserve or release an object when required and thus ensure that the object will not be overwritten by other team members till the task is completed.
  • Object Modification Log
    Use Object Modification Log to track changes and optionally enable versioning. Using this feature keeps track of all changes made to an object and revert to the older version if required (optional).

The Object Reservation/Object Modification Logging feature must be enabled in the server in order to use it in the Developer Studio.


 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*