Project Dependencies
  • 06 Mar 2024
  • 4 Minutes to read
  • Dark
    Light

Project Dependencies

  • Dark
    Light

Article Summary

Overview

To develop a process, users need to create several Designer Elements that work together to achieve the process's objective. These elements may or may not be part of a single Project. Thus, Dependencies represent the relationships between Projects where one relies on another to function correctly.

The Dependencies Dashboard in a Project is a location for managing and configuring Project dependencies, ensuring a streamlined approach to project development and integration. This dashboard helps developers create project-level dependencies, enhancing the overall project capabilities and promoting a more cohesive development process.

What changed from v8 to v9?

Parameter

Version 8

Version 9

Declaring dependency

Users could declare a manual dependency on individual entities within the portal.

Users cannot declare a dependency on individual entities.

Users can only declare the entire project as a dependency on other projects.

Circular dependency

Users could create circular dependencies, such as when entities in Project A depend on Project B, and B's entities can be used in A.

Circular dependency is not supported. For instance, if Project A depends on Project B, Project B cannot depend on Project A in return.

However, to use common entities, users can create Project C and declare it as a dependency for both Project A and Project B.

Import/Export

Users had the control to export the dependencies of the project.

Users cannot control the dependencies being exported from a project.

While importing a project, it is important to have the dependent projects in the portal; otherwise, it will not allow the project to be imported.

Upgrading to v9?

Legacy Projects having dependency after Project Conversion will show validation issues. These issues can be tracked in the Issues report located at the Project Info Dashboard. These issues can be resolved after giving the Project its appropriate dependencies. However, users may not be able to clear all the validation issues on the projects with circular dependencies, and this might create issues while using Import/Export actions.

For example:

You have three legacy projects: A, B, and C. They're interdependent in a circular way: A depends on B and C, B depends on A and C, and C depends on A and B.

After upgrading to version 9, users must convert them to new Projects. However, converting the project will give two validations on each project as the dependency is yet to be declared.

Assuming, following is the pattern you start declaring the dependency:

  • Project A: Depends on B and C (clears all the validations)

  • Project B: Depends only on C since A already depends on B (clears only one validation)

  • Project C: Cannot declare dependency since A and B already depend on C (no validations are cleared)

Note:

Validations due to missing dependencies will not have an impact on workflows.

Avoid Validation Issues:

To avoid these validation issues, it is recommended to re-organize the Projects to remove the circular dependency.


Dependencies Dashboard

The Dependencies Dashboard is divided into two distinct sections:

CURRENT PROJECT [Project_Name] RELIES ON:

DEPEND ON CURRENT PROJECT:

This section displays a list of projects on which the current project depends. It indicates that entities from the listed projects can be utilized within the current project.

This section displays a list of projects that rely on the current project. It signifies that entities from the current project can be utilized within the projects listed in this section.


Manage Dependency

Adding a Project/Module Dependency

The Manage button allows users to add or remove any dependencies between the projects. Clicking on the Manage button opens a dialog box that has two sections:

Projects

Modules

This will display only the projects that are not dependent on the current project.

This will display all the installed modules in the platform.

To create a dependency, select the projects and/or modules and click Confirm. This will allow us to use the resources from those projects/modules in the current project.

Dependency Info

If a dependency is declared, users can hover the mouse on the count button that shows the number of entities used in the project.

To access detailed information, users can click on a dependency, which opens a dialog box with two sections,

Info: This section displays the Project Description, the total number of entities within the project, and the Project Health score. Users can remove the dependency or open the project by clicking on the corresponding buttons.

Used Entities: This section demonstrates a list of entities used within the current project.

Removing a Dependency

Unable to remove a dependency?

Removing a dependency is not allowed if any entities from the dependent projects are being used in the current project.

Similarly, to remove a dependency, click on Manage, de-select the Projects/Modules, and click Confirm. This will remove the dependency from the project.


Using a Dependency

Elements available to use within dependent projects are:

  • All Designer Elements

  • Data Structures

  • Project Constants.

Users have two ways to add dependent items to the workflow:

1. Directly from the toolbox:

All the dependent items will be available in the Toolbox under their specific designer entity type. For example, Flows are located at Designer Entities → Flows → Dependent Projects → Flow Name.

2. From the “Pick Existing” dialog:

When Run Sub Flow, Show Form, Run Rule steps, etc., are dragged in the workflows, users have the option to Pick or Create Entity in the Properties Panel.

  1. Clicking on Pick Existing. Pick Existing dialog appears.

  2. Switch the tab to Dependencies.

  3. Select the Project from the drop-down menu and pick the entity you wish to add.


Was this article helpful?

What's Next