About Working Copies

Learn about Working Copies.

A Working Copy enables developers to create a special copy of an application, make changes in the copy, and then merge those changes back into the main development application (or Main application). Similarly, you can also merge changes from the Main application back into the Working Copy. During the export process, you can view a comparison (or diff) of the Working Copy and the Main application and then select which changes to merge.

A common use case for this feature is when you want to test some changes on a page first and then merge them back into the Main application later.

Application Locks and Working Copies

An application lock gives the lock owner exclusive access to edit the locked application in App Builder. The lock applies only to that application. Locking a main application does not lock its working copies.

When an application is locked, only the lock owner can edit or unlock it in App Builder. Other developers and workspace administrators are directed to the Application Locked page. If the locked application has working copies, that page includes links to those working copies.

For more information on locking an application, see Locking and Unlocking an Application.

Tip: To lock an application, unlock an application, or create a working copy programmatically, see the APEX_APPLICATION_ADMIN package in Oracle APEX API Reference:

About the Comparison Process

When you compare a Working Copy to the Main application, a split YAML export is taken of both applications and a checksum is generated on the individual files. The working copy is exported with original IDs to ensure that the IDs are the same between both applications. The checksums are then compared to identify the differences between the two applications.

Note: The YAML export of both applications is performed in a background job. Therefore, your database must have JOB_QUEUE_PROCESSES enabled (that is, JOB_QUEUE_PROCESSES must have a value greater than zero). If the job queue is disabled you will see no progress in the progress bar. Please be aware that for multi-tenant databases the CDB JOB_QUEUE_PROCESSES setting can override the PDB setting so both should be checked. To learn more about JOB_QUEUE_PROCESSES, see Controlling the Number of Concurrent Jobs in Oracle APEX Installation Guide.

When comparing a Working Copy to the Main application, use the MAIN_APP_ID substitution string to identify the main application ID if the current application is a working copy.

About the Merge Process

The merge process takes a subset of pages and shared components from a Working Copy and imports them back into the Main application. If the page or shared component exists, it is replaced. Therefore, changes in your Main application that are not in your Working Copy will be overwritten by the Working Copy merge.

Unsupported Component Types

Working Copies do not support the automatic merging of the following component types:

For unsupported component types, Oracle suggests developers merge the working Working Copy, delete it, and then manually apply the additions or changes for the unsupported component types.

Limitations of Working Copies

Limitations of Working Copies include:

Known Issues for Working Copies

The known issues for Working Copies include: