# Hub: Programming a General Command request

**URL:** <https://community.easymorph.com/t/hub-programming-a-general-command-request/6794>\
**Category:** Feature requests\
**Created:** [September 21, 2026, 3:29pm UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794 "2026-09-21T15:29:00Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![alistairhay](https://community.easymorph.com/user_avatar/community.easymorph.com/alistairhay/32/100_2.png) [@alistairhay](https://community.easymorph.com/u/alistairhay)\
**Post date:** [September 21, 2026, 3:29pm UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/1 "2026-09-21T15:29:00Z")

</div>

Hi,

Background for our use case:

- We regularly receive requests from analyst customers asking us to build new SQL tables.
- To manage this more effectively, we've built a Hub Morph which:
  - Asks the User to upload a structured spreadsheet containing the details of the request, which then
  - A SQL Stored Procedure pieces together the various elements of the request into a functioning SQL script, which then
  - Produces a prototype data table and is presented to the User

The above works well.

The 2nd stage is the slightly tricky bit. At that point we want:

- The User to click on an 'Approve' button, which then
- Triggers a module within the Morph to populate a Board with details of the request for our Developers to review and productionise.

Currently:

- This is achievable using a Row-level Command, as it passes the Column 'workflow\_ID' value into the Module. However I think it looks visually confusing for the User, as it looks like it's only applying to one row of the table, which it isn't.
- Ideally, I want to use a General Command, as it looks clearer and more appropriate, but I don't think I can pass a computed value into the Module this way?

 ![image](https://community.easymorph.com/uploads/default/original/2X/3/3f216bd2c952d1850d03f7cd1da8593a90e5421d.png)

Row-level Command config:

 ![image](https://community.easymorph.com/uploads/default/original/2X/a/a7162b4a5059ab00b32b301ed76b7307ab8ea5de.png)

General Command config:

 ![image](https://community.easymorph.com/uploads/default/original/2X/c/c6168aec1b637654be41c211770de9b00616fa93.png)

Am I going wrong somewhere? Or is there a workaround?

Thanks as ever.

Alistair

---

<div class="post-metadata">

**Author:** ![serhii](https://community.easymorph.com/letter_avatar_proxy/v4/letter/s/df788c/32.png) [@serhii](https://community.easymorph.com/u/serhii)\
**Post date:** [September 21, 2026, 5:22pm UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/2 "2026-09-21T17:22:20Z")

</div>

Hi Alistair,

Could you clarify at which stage the workflow\_ID is created in your workflow, and whether it is passed to the current asset as a parameter?

---

<div class="post-metadata">

**Author:** ![dgudkov](https://community.easymorph.com/user_avatar/community.easymorph.com/dgudkov/32/5_2.png) [@dgudkov](https://community.easymorph.com/u/dgudkov)\
**Post date:** [September 22, 2026, 2:07am UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/3 "2026-09-22T02:07:21Z")

</div>

@alistairhay

If what the approver sees is a computed dataset that was computed with a parameter (e.g., workflow ID), then this parameter can be linked in the general command. In other words, you need to pass to the workflow behind the general command something that would allow that workflow to obtain this dataset or provide the context in which the dataset was created - issue ID, request number, or something else on which the workflow can act.

In some cases, the workflow that produces the dataset can save something (e.g., a .dset file) which can later be picked up by the general command.

---

<div class="post-metadata">

**Author:** ![alistairhay](https://community.easymorph.com/user_avatar/community.easymorph.com/alistairhay/32/100_2.png) [@alistairhay](https://community.easymorph.com/u/alistairhay)\
**Post date:** [September 22, 2026, 9:31am UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/4 "2026-09-22T09:31:41Z")

</div>

@serhii @dgudkov

Thanks both.

workflow\_ID is a GUID derived in the Main workflow (technically it's from the System Information action in a parent Morph I created for replicability).

How I'd like it to work, in a nutshell:

- User clicks Retrieve, uploads spreadsheet, doesn't need to populate any other parameters
- The workflow\_ID is then created in the Morph (you can see it in the result table above)
- By using a General Command, the workflow\_ID is passed to a parameter in a child module to populate the Board.

I should have added in the initial post, this is the result difference between General and Row Command in my use case, first Issue is General, second Issue is Row, in both instances I'm attempting to use the workflow\_ID as the title of the Issue:

 ![image](https://community.easymorph.com/uploads/default/original/2X/0/0e68c9271d1aba6cb2204bcc84f78426c3ad0f78.png)

Am I right in thinking the underlying challenge is that General Commands can't pass computed values, like Row Commands can?

---

<div class="post-metadata">

**Author:** ![serhii](https://community.easymorph.com/letter_avatar_proxy/v4/letter/s/df788c/32.png) [@serhii](https://community.easymorph.com/u/serhii)\
**Post date:** [September 22, 2026, 2:56pm UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/5 "2026-09-22T14:56:42Z")

</div>

Hi @alistairhay

Yes, general command can pass only a constant value or a parameter from a parent asset.

---

<div class="post-metadata">

**Author:** ![alistairhay](https://community.easymorph.com/user_avatar/community.easymorph.com/alistairhay/32/100_2.png) [@alistairhay](https://community.easymorph.com/u/alistairhay)\
**Post date:** [September 22, 2026, 4:10pm UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/6 "2026-09-22T16:10:56Z")

</div>

Thanks, what is the outlook of adding something like a 'first value of column x' option to General Commands?

---

<div class="post-metadata">

**Author:** ![dgudkov](https://community.easymorph.com/user_avatar/community.easymorph.com/dgudkov/32/5_2.png) [@dgudkov](https://community.easymorph.com/u/dgudkov)\
**Post date:** [September 22, 2026, 7:33pm UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/7 "2026-09-22T19:33:09Z")

</div>

I still think you should be able to have the problem solved with the existing means.

Am I right assuming that the design works as follows?

 ![image](https://community.easymorph.com/uploads/default/original/2X/a/ab6a87ce7a50f6620da7b32eb2216bff115c4f2d.png)

---

<div class="post-metadata">

**Author:** ![alistairhay](https://community.easymorph.com/user_avatar/community.easymorph.com/alistairhay/32/100_2.png) [@alistairhay](https://community.easymorph.com/u/alistairhay)\
**Post date:** [September 23, 2026, 6:39am UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/8 "2026-09-23T06:39:36Z")

</div>

yes that's right, a bit more detail:

- Retrieving Asset A populates a SQL table logging all retrievals (regardless of whether they are approved)
- Clicking 'Approve' runs a Module within Asset A which imports the relevant record from the above SQL table, using 'workflow\_ID' as a parameter
- The details of that record are then passed to a 2nd module to populate the Board, using parameters of the details of the request (e.g. new\_table\_name, user\_email, generated\_SQL etc.)

I'm trying to pass the workflow\_ID to provide the details to the Board without asking the User to populate more parameters than necessary. Can parameters be dynamically populated in the Main module?

---

<div class="post-metadata">

**Author:** ![dgudkov](https://community.easymorph.com/user_avatar/community.easymorph.com/dgudkov/32/5_2.png) [@dgudkov](https://community.easymorph.com/u/dgudkov)\
**Post date:** [September 23, 2026, 4:21pm UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/9 "2026-09-23T16:21:13Z")

</div>

At this point, general commands only accept the parameters of the calling asset (or constants). It's not possible to assign command parameters with dataset values. As a workaround, you may add one more parameter in Asset A, for instance, to obtain the user name or email or something else that would help identify the dataset. But that would require the user to enter additional information besides just uploading a file.

Another option would be to make the workflow behind Asset A save the dataset with a name that can be attributed to the user (e.g. \<user\_name\>-.dset). The user name can be obtained via the "System information" action.

 ![image](https://community.easymorph.com/uploads/default/original/2X/c/c8f9108b6de67600e61b4866cea90436eb15e9ff.png)

Then the general command "Approve" would run a module that would also obtain the user name with the "System information" action and thus will be able to find the latest dataset produced by Asset A and attributed to the user. From the file name, it can extract the workflow ID and use it further. The downside of this approach is that it can only handle one open request per user.

> [@alistairhay](#):
>
> what is the outlook of adding something like a 'first value of column x' option to General Commands?

EasyMorph has recently introduced Exporter assets that are basically workflows that can accept a whole dataset in addition to parameters. However, Exporter assets are still not supported as general commands. We planned to do this in a later version, but after an internal discussion, we've decided to make it possible to use the new Exporter (and Transformer) assets in general commands in the upcoming version 6.2 (planned for release in about 2-3 weeks). When it's added, you can create an Exporter asset, use it for a general command, and the asset will receive the whole dataset, including the column with the workflow ID. The workflow would then work as below:

 ![image](https://community.easymorph.com/uploads/default/original/2X/3/3a7fb78a32d6339436b65547387d27bec720d02b.png)

Until then, the workaround with passing the dataset via a file might work.

---

<div class="post-metadata">

**Author:** ![dgudkov](https://community.easymorph.com/user_avatar/community.easymorph.com/dgudkov/32/5_2.png) [@dgudkov](https://community.easymorph.com/u/dgudkov)\
**Post date:** [September 24, 2026, 1:51am UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/10 "2026-09-24T01:51:04Z")

</div>

After giving it a bit more thought, I think you may not even need an external file. Just add the user name to the SQL table where you log all retrievals. Then you should be able to locate the record with the submission that the user approves.

The limitation remains - this method would allow dealing with only one submission per user at a time.

---

<div class="post-metadata">

**Author:** ![alistairhay](https://community.easymorph.com/user_avatar/community.easymorph.com/alistairhay/32/100_2.png) [@alistairhay](https://community.easymorph.com/u/alistairhay)\
**Post date:** [September 24, 2026, 8:03am UTC](https://community.easymorph.com/t/hub-programming-a-general-command-request/6794/11 "2026-09-24T08:03:17Z")

</div>

Thanks Dmitry, I did something similar yesterday as a test, using a 2nd parameter called 'new\_table\_name', which worked for the General Command.

In the end I've gone back to Row Command, as I think passing calculated values is a better solution for this use case than parameters, so now the User only needs to upload the spreadsheet, and I've tidied how the Row Command columns look:

 ![image](https://community.easymorph.com/uploads/default/original/2X/4/47171987effef045a2e049d75d90d2b46b77a5af.png)

Thanks again for looking into this.
