Please read the Terms of Use for Materials on ZennoLab

Table of contents


Description

A project in a project allows you to connect a ready-made, recorded project to the current project. This action is similar to Plugins .

How to add an action to a project?

Via the context menu Add ActionProjectProject in project

Or use smart search .


Application


How to work with an action?

Basic settings

Path to the nested project

The absolute path to the subtemplate is specified here (you can use variable macros. In the screenshot you can see the {-Project.Directory-} variable - the path to the current project folder. In order for this variable to be automatically set when writing a project, you must enable the corresponding setting )

Pass project context (project.Context)

project.Context allows you to save C # objects and transfer them between different parts of the template. This option is used when working through the Custom C# code action.

Open browser if necessary

Enabling this setting allows the nested template to launch the browser even if it is disabled in the external project via Project Settings

Passing Variables

Variable mapping

In this window, data is transferred from an external project to an internal one. You can only transfer data using variables.

Associate variables with the same names

When this option is enabled, all variables whose names are identical in both projects will be automatically mapped without the need for manual configuration.

Manual setting takes precedence over “Matching…”.

Example: if the option “Map variables ...” is enabled and both projects have a variable named variable , but you manually, through the settings, mapped the variable variable of the internal project to another variable of the external project, for example second_var, then the internal project will now be associated with the variable second_var .

Don't pass values if execution has failed

By default, all changes to variables in the internal project are reflected in the variables from the external project. When this setting is enabled, changes to variables will be ignored by the external project in case of an erroneous completion of the internal one.


Usage example

An example is sending yourself notifications via email.

You can create a template that will automatically, based on the transmitted email, determine the settings for connecting to the server. You will only have to transfer the message text, sender data, recipient data from an external project.

 


Selling templates that contain nested projects

When selling your templates that are used by nested projects, you should not forget about the commission .


Error loading the project!

If during the creation of the project such a window appeared and the error "Executing the action ProjectInProject Processing error" appears in the log, then with a high degree of probability the problem is that you are trying to run a closed template on inactive hardware.

To fix this, you need to go to UserArea, to the Hardware tab and activate the hardware you are currently working on.


Search for a project with the extension .zp when performing the action "Project in project"

Added in ZennoPoster 7.4.0.0

When this setting is enabled, if the action uses a project of the old format with the .xmlz extension, then if it is absent, a project with the same name, but with a new .zp extension will be searched.

.xmlz - ZennoPoster project extension, which was used in ZennoPoster 5 and below

.zp - project extension used in ZennoPoster 7.


Useful links