{{ transformations:StatusAction.png}}
====== STATUS ======
Category: Workflow / Internal \\

\\ 
=====Description=====
This action updates project execution status with a custom message (which can be calculated using an expression). It serves the same purpose, but works differently, in EasyMorph Desktop, Launcher, and EasyMorph Server (see section Remarks below).

\\
=====Use cases=====
The Status action can be helpful on various occasions:
  * Indicate milestones for long-running projects.
  * Since Status messages from called/iterated subprojects are also displayed, it allows for creating status messages that indicate the progress of iterations (e.g. “10 files processed out of 123”, or “Processing: 12-May-2021”) which can help estimate total run time.
  * Log particular messages or custom warnings into task logs (e.g. number of dates processed, data quality metrics, etc.). Such messages can later be parsed and necessary actions can be taken.
  * Estimate execution time of an action or a chain of actions in a project. In this case, the Status action can be used to record start/end times.
  * Log values of calculated parameters (input parameters are logged automatically in the task log).
  * Create audit records with file names or database tables modified.

\\ 
=====Action settings=====
^Setting^Description^
|Set execution status as|Choose the source of the status message text.  Options:  //Text// (and enter the message text),\\ //Expression// (and enter an expression that returns the message as a calculated result), or\\ //Cell value// (and select the Column and Row number<sup>*</sup> holding the value used for the message).|
|Show also as Windows notification (Launcher only)|When checked, the status message will appear in the Windows notification area when the project is run from the EasyMorph Launcher.|
<sup>*</sup> Setting can be specified using a [[:parameters|parameter]].\\

\\ 
=====Remarks=====
Depending on the environment //Status// is run in, the status message will appear in different locations:
^Environment  ^Message output  ^
|Desktop Application|The status message will appear in the "Still running..." window. Note that the window only shows up when the workflow is running for longer than 3 seconds. Also, the window is not displayed during pro-active background calculations.|
|Desktop (command-line mode)|The status message will appear in the command window.|
|Launcher|The status message will appear in the "Status" tab.  It will also appear in the Windows notification\\ area if that setting was selected.  See Action settings, above.|
|Server|1) It updates the task status in the web console, and 2) writes status messages in the task log.|

\\ 
=====Community examples=====
  * [[https://community.easymorph.com/t/the-status-action/271|Community:  The Status Action]]
  * [[https://community.easymorph.com/t//2156/1|How to process parent-child data structures]] ([[https://community.easymorph.com/uploads/short-url/zmylfn4Qr0ovzu3e5rybl0LVMNG.morph|Project]]; Module: //Scan 1 folder//; Group: //Tab 1//; Table: //Desktop//; Action position: //2//)
  * [[https://community.easymorph.com/t//2158/5|API pagination how I create loop]] ([[https://community.easymorph.com/uploads/short-url/rQmjCeA2LXPlqzxhL5N9IoCE5CR.morph|Project]]; Module: //responseToCSV//; Group: //Tab 1//; Table: //FileGeneration//; Action position: //4//)
  * [[https://community.easymorph.com/t//2641/1|How to publish real-time data to streaming dataset in Power BI]] ([[https://community.easymorph.com/uploads/short-url/22DTxfF295TVGQhGyvWGsHyadRt.morph|Project]]; Module: //Main//; Group: //Tab 1//; Table: //Table 1//; Action position: //4//)


