Skip to Content

Component Dependencies, Deletion, and Removal

Introduction

Viewing a component's dependencies lists the other project components that the component is dependent on. If other components are dependent on the component, those dependencies must be removed before a component can be deleted.

Viewing dependencies of and deletion of workflows and operations is covered on these pages:

Viewing dependencies for other project components, such as activities, transformations, scripts, schemas, project variables, global variables, email notifications, and schedules, is also available. Each of these components can also be deleted or removed from an operation using the same method, except for global variables, which are deleted by deleting the portion of a script where they are defined.

Definitions

It is important to understand the terminology when discussing dependencies. Two distinct phrases are used: dependent on and dependency of. In these examples, Component A is dependent on Component B. Component B is a dependency of Component A:

  • Dependent on: If a component is dependent on another component, it needs that component in order to function properly. A component that is dependent on another component cannot stand alone without that component. When Component A needs Component B in order to execute successfully, Component A is dependent on Component B. Another way to say this is that Component A depends on Component B.
  • Dependency of: If a component is a dependency of another component, it is needed by the first component in order for the first component to function properly. A component that is a dependency of another component is the component that is needed by another. When Component A needs Component B in order to execute successfully, Component B is a dependency of Component A.

View Dependencies

Component dependencies can be viewed either through the View Dependencies option in the component actions menus or through a visual indicator in the project pane's Components tab.

View Dependencies Using Component Actions Menus

The View Dependencies option is accessible from these locations:

On selecting View Dependencies, the dependency view opens in the project pane's Workflows tab:

dependencies transformation

In dependency view, the name of the selected component appears below the search and filter areas.

The component name is followed by a list of Dependencies that the component is dependent on. This list is organized by categories such as Workflow, Operation, and Activity. These categories vary depending on the type of component being viewed. For global variables, the categories are further classified under Read or Write to indicate the access type of a particular variable reference:

dependencies global variable

Each category can be expanded or collapsed using the disclosure triangles down arrow 2 down arrow 2.

Only dependencies of the component that are a single level deep are displayed. For example, when viewing dependencies of the transformation "Magento Product Response," while the listed activity "GET Magento Products" is a dependency of the transformation, other components that are a dependency of the activity are not displayed. Neither are components that are dependent on the transformation displayed (that is, other components that the component itself is a dependency of are not listed).

To close out of dependency view, click the close icon close:

dependencies transformation close annotated

View Dependencies Using a Visual Indicator

When selecting a component either in the project pane's Components tab or on the design canvas (while viewing the Components tab), a dependency icon dependency is displayed next to the name of a component that is a dependency of the selected component:

components dependency

A selected component is displayed with a selection icon selected and a gray background.

Delete a Component

The Delete option to permanently delete an individual component is accessible from these locations:

The Delete Unused option to permanently delete unused components in bulk is accessible from this location:

Delete

On selecting Delete, if there are other project components that are dependent on the component being deleted, those components are listed:

unable to delete component

Note that the text in this message incorrectly states that dependencies of the component being deleted are listed. This is not true, and in fact any other components that are dependent on the component are actually what is actually listed. Click Continue to return to the project designer without any action taking place.

To make it so the component can be deleted, you must modify the project so that the component is not dependent on these other components. For example, if activity Component B needs transformation Component A to function properly, first remove transformation Component A from the operation and then try again to delete the activity Component B.

If there are no other components that have the component being deleted as a dependency of any component, a message ask you to confirm you want to delete the component:

delete component

Delete Unused

On selecting Delete Unused, each operation to be deleted is listed:

delete components

Deselect any component you don't want to permanently delete, then click Delete.

Remove a Component

The Remove option to remove a component from all operations is accessible from these locations:

On selecting Remove on a specific instance of an activity, script, transformation, or email notification (in the project pane's Workflows tab or the design canvas), that specific instance of the component is removed. On selecting Remove from the project pane's Components tab, all instances of the component are removed as operation steps from all operations. Any other references to the components, such as within scripts, transformations, or configuration settings, are unaffected.

Removing components used as steps in an operation is allowed regardless of dependencies, as these components are not deleted from the project and are still available from the project pane's Components tab.

However, depending on the dependencies that exist, on removing the component from the operation, this may cause the operation or other components used as steps within the operation to become invalid. That is, removing components from an operation does not affect dependencies.

Removing all of the steps of an operation does not delete the operation from the project. If you do remove all of the steps in an operation, the operation disappears from project pane's Workflows tab and is shown on the design canvas as an empty operation:

operation empty

An empty operation remains available as a component in the Components tab and is listed as a component when deploying the project. As an empty operation is invalid, it cannot be deployed. To delete an operation whose steps have been removed, do so from the operation menu that is accessible from the Components tab or the design canvas.