Understanding Form Control

Form Control is a version-control tool for objects being developed for the presentation layer (client tier) of an application in WinStudio. WinStudio is a form presentation and editing engine used to create and modify forms and global objects. These objects are stored in the forms and templates databases that are configured for WinStudio.

Form Control is used to access the objects stored in these forms and templates databases. Form Control tracks versions of objects and supports access to a repository of versions and an archive of deleted objects. Although implementing Form Control is optional, this tool is particularly useful when several developers are working on an application, as it allows one developer to lock a form or global object while working on it, so that other developers cannot work on the same object at the same time.

Use Form Control to check out objects from the "master" databases (which contain the current versions of objects) to "run-time" databases (which temporarily store the objects) for editing. After editing the objects in WinStudio, you then use Form Control to check the edited objects back in to the master databases. If you use a source control system, Form Control also checks objects in to source control when you check objects in to the master databases.

You can also delete objects from the master and run-time databases and can copy them to archive databases. These previous versions of objects are then available through source control.

Note:  You can use Form Control with login IDs having Site Developer editing permissions. When you log in to Form Control, make sure you select Site in the Scope field.

Before any operation is made on objects, Form Control checks the master and run-time databases for changes, and flushes the cache before proceeding with any operation.

Before You Begin

Before you can use Form Control, you must have at least one system configuration set up using Configuration Manager. Use Configuration Manager to create a configuration, including a tools login that is used to open Form Control and to track check-ins and check-outs. The tools login must have Vendor Developer editing permissions in WinStudio.

For more information about setting up configurations, see the help for Configuration Manager.

Basic Functionality of Form Control

This diagram illustrates the basic functionality of Form Control:

FormControl flow diagram

Use Form Control to check out (from the master databases) any forms or global objects that you want to edit. Form Control places copies of the objects in the run-time database while you have them checked out.

After you check out an object, use WinStudio in Design Mode to make the desired changes. You can also use WinStudio to create new objects. In either case, saving changes in WinStudio stores the changes in the run-time database copy.

When you are finished working with the object in WinStudio, use Form Control to check the object back in to the master database. You can check in at one time both objects that you checked out and new objects you have created.

While using Form Control, keep this information in mind:

  • Form Control works only with the vendor and site default versions of a form or global object. Only developers with vendor or site developer editing permissions can create vendor or site default versions.
  • Checking out an object locks it for your use and prevents other developers from checking it out or saving other changes to it.
    Note:  Other developers can view and work with the form or object in Design Mode, but they cannot save their changes until you check it back in.
  • Checking in objects that you checked out removes the lock on the object.
  • If you create and save a new object, WinStudio saves the object in the appropriate run-time database. It cannot be overwritten, because the object does not yet exist in the master database (until you check it in).
  • Checking in new objects adds them to the master databases and allows Form Control to track them.
  • If you make and save changes to an object that is not checked out (to you or anyone else), your changes will be overwritten the next time anyone checks that object out. To help prevent this from happening, you can set a user preference for WinStudio to warn developers about this type of situation.
  • If Source Control is enabled for a configuration, Form Control also checks objects in to source control when you check objects in to the master databases.

Tips

  • If you cannot check out an object because it is locked, Form Control displays the user ID of the developer who has the object checked out.
  • When you check out a form, you can see a list of all the associated global objects and can check out all or some of those objects at the same time.

    For more information, see Checking Out Forms.

  • When you check out a form, you can also check out the form template associated with it.

    For more information, see Checking Out Forms.

  • You can check out global objects independently, regardless of the forms they are associated with.

    For more information, see Checking Out Global Objects.

  • You can display a report of all the objects you have checked out.

    For more information, see Displaying the Current Status of Forms and Global Objects.

  • If you want to examine or test objects, you can get a copy of the current version of the object without checking it out. In this way, many developers can get the same object, even if the object is locked to a developer. If changes are made, they are not permanent because they cannot be checked in.
  • You can archive a form or global object. Archiving deletes the object from both the master and run-time databases and moves it to the corresponding archive database.

    For more information, see Archiving Forms or Archiving Global Objects.