Regenerating library entries

Occasionally you may need to update library entries by regenerating, rebuilding, or migrating them. For example:

When you regenerate an entry, PowerBuilder recompiles the source form stored in the library and replaces the existing compiled form with the recompiled form. You can regenerate entries in the Library painter or by selecting regenerate from the object’s pop-up menu in the System Tree.

You can also regenerate and rebuild from a command line. For more information, see Appendix B, “The OrcaScript Language.”

StepsTo regenerate library entries in the Library painter:

  1. Select the entries you want to regenerate.

  2. Click the Regenerate button or select Entry>Library Item>Regenerate from the menu bar.

    PowerBuilder uses the source to regenerate the library entry and replaces the current compiled object with the regenerated object. The compilation date and size are updated.

Regenerating descendants

You can use the Browser to easily regenerate all descendants of a changed ancestor object.

StepsTo regenerate descendants:

  1. Click the Browser button in the PowerBar.

    The Browser displays.

  2. Select the tab for the object type you want to regenerate.

    For example, if you want to regenerate all descendants of window w_frame, click the Window tab.

  3. Select the ancestor object and choose Show Hierarchy from its pop-up menu.

    The Regenerate item displays on the pop-up menu.

    Shows is the Window tab page of the Browser. The left half of the screen lists windows, and the right half lists Properties, Events Functions, Variables, and Structures. The pop up menu lists the options Edit, Copy, Paste, Expand All, Regenerate, Show Hierarchy, which is checked, Document, and Help.
  4. Click the Regenerate item.

    PowerBuilder regenerates all descendants of the selected ancestor.

For more about the Browser, see “Browsing the class hierarchy”.

NoteRegenerate limitations If you regenerate a group of objects, PowerBuilder will regenerate them in the order in which they appear in the library, which might cause an error if an object is generated before its ancestor. For this reason, you should use a full or incremental build to update more than one object at a time.