{"__v":8,"_id":"5626a89ce2ce610d004e3dde","category":{"__v":4,"_id":"55faf96917b9d00d00969f48","pages":["5626a5d644c87f0d00fe6396","5626a5e4e2ce610d004e3dd8","5626a89ce2ce610d004e3dde","56429a87f49bfa0d002f54e0"],"project":"55faf11ba62ba1170021a9a7","version":"55faf11ba62ba1170021a9aa","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2015-09-17T17:33:29.016Z","from_sync":false,"order":17,"slug":"run-an-analysis","title":"RUN AN ANALYSIS"},"parentDoc":null,"project":"55faf11ba62ba1170021a9a7","user":"5613e4f8fdd08f2b00437620","version":{"__v":35,"_id":"55faf11ba62ba1170021a9aa","project":"55faf11ba62ba1170021a9a7","createdAt":"2015-09-17T16:58:03.490Z","releaseDate":"2015-09-17T16:58:03.490Z","categories":["55faf11ca62ba1170021a9ab","55faf8f4d0e22017005b8272","55faf91aa62ba1170021a9b5","55faf929a8a7770d00c2c0bd","55faf932a8a7770d00c2c0bf","55faf94b17b9d00d00969f47","55faf958d0e22017005b8274","55faf95fa8a7770d00c2c0c0","55faf96917b9d00d00969f48","55faf970a8a7770d00c2c0c1","55faf98c825d5f19001fa3a6","55faf99aa62ba1170021a9b8","55faf99fa62ba1170021a9b9","55faf9aa17b9d00d00969f49","55faf9b6a8a7770d00c2c0c3","55faf9bda62ba1170021a9ba","5604570090ee490d00440551","5637e8b2fbe1c50d008cb078","5649bb624fa1460d00780add","5671974d1b6b730d008b4823","5671979d60c8e70d006c9760","568e8eef70ca1f0d0035808e","56d0a2081ecc471500f1795e","56d4a0adde40c70b00823ea3","56d96b03dd90610b00270849","56fbb83d8f21c817002af880","573c811bee2b3b2200422be1","576bc92afb62dd20001cda85","5771811e27a5c20e00030dcd","5785191af3a10c0e009b75b0","57bdf84d5d48411900cd8dc0","57ff5c5dc135231700aed806","5804caf792398f0f00e77521","58458b4fba4f1c0f009692bb","586d3c287c6b5b2300c05055"],"is_deprecated":false,"is_hidden":false,"is_beta":true,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"updates":[],"next":{"pages":[],"description":""},"createdAt":"2015-10-20T20:48:28.813Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":3,"body":"The second tab on the Draft Task page, **Define App Settings** allows you to set values for each tool's parameters, if those parameters have been marked to be exposed at runtime. Information on how to expose a parameter of tool is given below.\n\nIf there are exposed parameters, they will be displayed in edit mode and you are able to set their values immediately. Settings that are required by the tool are marked in red, such as the field **Select output format** in the example below. Other fields may be left empty - doing this means that the tool will use its default value for the setting.\n[block:callout]\n{\n  \"type\": \"info\",\n  \"body\": \"\\nIf you are describing a tool that you've added to the CGC with the Tool Editor, you can describe the tool's default value in the field **Tool Default**, on the output port corresponding to that parameter. Note that this field just let's you describe the default value. It doesn't let you set the default.\"\n}\n[/block]\n\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/f017c9a-define-app-settings-1.jpeg\",\n        \"define-app-settings-1.jpeg\",\n        1360,\n        1338,\n        \"#6a3d42\"\n      ],\n      \"caption\": \"Define App Settings\",\n      \"border\": true\n    }\n  ]\n}\n[/block]\nFor each of the nodes you are able to see its current descriptive name and its workflow name (displayed in brackets). You can use the options in the **View Parameters** dropdown list to configure which app settings are displayed:\n* **Show all** - Displays all editable and non-editable parameters.\n* **Show editable** - Displays editable parameters in view mode.\n* **Show non-default** - Displays parameters whose values have been modified compared to the default ones.\n\nWhen any of these options is selected, you can still click **Edit Parameters**, which will display the editable parameters only, and allow you to change their values.\n\nOnce you have entered app settings and set input data, click **Run** in the bottom right hand corner to initiate the execution.\n\n##Expose a parameter\nExposing a tool parameter makes it configurable at runtime, so that you can set it for each execution. You can expose the parameters of tools in a workflow on the Workflow Editor.\n\n1. Open your workflow in the Workflow Editor by selecting the workflow from the **Apps** panel of the project, and clicking **Edit**. The Workflow Editor is shown below:\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/d695341-define-app-settings-2.jpeg\",\n        \"define-app-settings-2.jpeg\",\n        1491,\n        593,\n        \"#dfe3e6\"\n      ],\n      \"caption\": \"The Workflow Editor\",\n      \"border\": true\n    }\n  ]\n}\n[/block]\n2. Click on a tool whose parameters you want to be able to edit with each execution.\n3. Select the panel marked **PARAMS** on the right hand side of the Workflow Editor.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/24524a2-define-app-settings-3.jpeg\",\n        \"define-app-settings-3.jpeg\",\n        1488,\n        594,\n        \"#355d81\"\n      ],\n      \"caption\": \"The PARAMS panel.\",\n      \"border\": true\n    }\n  ]\n}\n[/block]\n4. You will see a list of parameter names, with fields next to them. \n  (a) Click the **expose icon** <img src=\"https://files.readme.io/pY4g8vZTT6ROc24n5uKg_lock-icon.png\"\nheight=\"30px\" width=\"auto\" align=\"inline\" style=\"margin:1px\"/> to make the parameter configurable from the **Draft Task **page. \n  (b) To set the parameter value now, so that it cannot be altered at runtime, simply enter the value in the field.\n  (c) <a name=\"includeinports\" style=\"text-decoration: none; color: #474a54;\">To</a> feed the value of the parameter in from another tool in the workflow, click the **Include in Ports** icon <img src=\"https://files.readme.io/05962d8-define-app-params-include-in-ports-icon.jpg\"\nheight=\"24px\" width=\"auto\" align=\"inline\" style=\"margin:1px\"/>.\n[block:callout]\n{\n  \"type\": \"success\",\n  \"body\": \"Note that if you have [entered a value for a parameter on the Tool Editor](http://docs.cancergenomicscloud.org/docs/edit-a-tool), exposing it in this way will allow you to overwrite that value at runtime.\",\n  \"title\": \"Defining app settings in the Tool Editor\"\n}\n[/block]\nWhen you run the workflow, you will be taken to the Draft Task page, which contains a tab named **Define App Settings**. Here, you will be able to configure all exposed parameters for all tools within the workflow. If any of the parameters is included in input ports using the **Include in Ports** option, and is then connected as an input to multiple tools, this will be visible on the **Define App Settings** tab:\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/47741d9-complex_parameters_wf_no_transparency.jpeg\",\n        \"complex_parameters_wf_no_transparency.jpeg\",\n        1833,\n        892,\n        \"#f0efeb\"\n      ]\n    }\n  ]\n}\n[/block]\nWhen a parameter that is included in input ports is connected to multiple tools, the <img src=\"https://files.readme.io/381e85a-linked_param_icon.png\"\nheight=\"24px\" width=\"auto\" align=\"inline\" style=\"margin:1px\"/> icon is displayed next to the parameter's field. By clicking the icon, you open an info box that shows all tools that share the parameter. The **Tag** parameter in the image above is used as an input parameter for both **BamTools Split 1** and **BamTools Split 2**. When you enter a value in any of the two linked fields and click outside the field, the value will be automatically updated in the other linked field. This behavior also applies to complex linked parameters. Complex parameters are groups of multiple \"simple\" parameters. In the example below, **Value** is a complex parameter in the **QualityCheck** tool and is linked to the **Value** parameter of the **QualityDetect** tool. The complex parameter consists of two \"simple\" ones, **Min** and **Max**. When you update either **Min** or **Max** in any of the linked fields and click outside the field, the value will be automatically reflected in the corresponding field in the other tool, as shown below:\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/16bcf25-group_params_complicated_inputs.jpeg\",\n        \"group_params_complicated_inputs.jpeg\",\n        650,\n        863,\n        \"#edebe7\"\n      ]\n    }\n  ]\n}\n[/block]\nAgain, this only applies if the parameter has been included in input ports, using the <a href=\"#includeinports\">Include in Ports</a> option described above.","excerpt":"","slug":"define-app-settings","type":"basic","title":"Define app settings"}

Define app settings


The second tab on the Draft Task page, **Define App Settings** allows you to set values for each tool's parameters, if those parameters have been marked to be exposed at runtime. Information on how to expose a parameter of tool is given below. If there are exposed parameters, they will be displayed in edit mode and you are able to set their values immediately. Settings that are required by the tool are marked in red, such as the field **Select output format** in the example below. Other fields may be left empty - doing this means that the tool will use its default value for the setting. [block:callout] { "type": "info", "body": "\nIf you are describing a tool that you've added to the CGC with the Tool Editor, you can describe the tool's default value in the field **Tool Default**, on the output port corresponding to that parameter. Note that this field just let's you describe the default value. It doesn't let you set the default." } [/block] [block:image] { "images": [ { "image": [ "https://files.readme.io/f017c9a-define-app-settings-1.jpeg", "define-app-settings-1.jpeg", 1360, 1338, "#6a3d42" ], "caption": "Define App Settings", "border": true } ] } [/block] For each of the nodes you are able to see its current descriptive name and its workflow name (displayed in brackets). You can use the options in the **View Parameters** dropdown list to configure which app settings are displayed: * **Show all** - Displays all editable and non-editable parameters. * **Show editable** - Displays editable parameters in view mode. * **Show non-default** - Displays parameters whose values have been modified compared to the default ones. When any of these options is selected, you can still click **Edit Parameters**, which will display the editable parameters only, and allow you to change their values. Once you have entered app settings and set input data, click **Run** in the bottom right hand corner to initiate the execution. ##Expose a parameter Exposing a tool parameter makes it configurable at runtime, so that you can set it for each execution. You can expose the parameters of tools in a workflow on the Workflow Editor. 1. Open your workflow in the Workflow Editor by selecting the workflow from the **Apps** panel of the project, and clicking **Edit**. The Workflow Editor is shown below: [block:image] { "images": [ { "image": [ "https://files.readme.io/d695341-define-app-settings-2.jpeg", "define-app-settings-2.jpeg", 1491, 593, "#dfe3e6" ], "caption": "The Workflow Editor", "border": true } ] } [/block] 2. Click on a tool whose parameters you want to be able to edit with each execution. 3. Select the panel marked **PARAMS** on the right hand side of the Workflow Editor. [block:image] { "images": [ { "image": [ "https://files.readme.io/24524a2-define-app-settings-3.jpeg", "define-app-settings-3.jpeg", 1488, 594, "#355d81" ], "caption": "The PARAMS panel.", "border": true } ] } [/block] 4. You will see a list of parameter names, with fields next to them. (a) Click the **expose icon** <img src="https://files.readme.io/pY4g8vZTT6ROc24n5uKg_lock-icon.png" height="30px" width="auto" align="inline" style="margin:1px"/> to make the parameter configurable from the **Draft Task **page. (b) To set the parameter value now, so that it cannot be altered at runtime, simply enter the value in the field. (c) <a name="includeinports" style="text-decoration: none; color: #474a54;">To</a> feed the value of the parameter in from another tool in the workflow, click the **Include in Ports** icon <img src="https://files.readme.io/05962d8-define-app-params-include-in-ports-icon.jpg" height="24px" width="auto" align="inline" style="margin:1px"/>. [block:callout] { "type": "success", "body": "Note that if you have [entered a value for a parameter on the Tool Editor](http://docs.cancergenomicscloud.org/docs/edit-a-tool), exposing it in this way will allow you to overwrite that value at runtime.", "title": "Defining app settings in the Tool Editor" } [/block] When you run the workflow, you will be taken to the Draft Task page, which contains a tab named **Define App Settings**. Here, you will be able to configure all exposed parameters for all tools within the workflow. If any of the parameters is included in input ports using the **Include in Ports** option, and is then connected as an input to multiple tools, this will be visible on the **Define App Settings** tab: [block:image] { "images": [ { "image": [ "https://files.readme.io/47741d9-complex_parameters_wf_no_transparency.jpeg", "complex_parameters_wf_no_transparency.jpeg", 1833, 892, "#f0efeb" ] } ] } [/block] When a parameter that is included in input ports is connected to multiple tools, the <img src="https://files.readme.io/381e85a-linked_param_icon.png" height="24px" width="auto" align="inline" style="margin:1px"/> icon is displayed next to the parameter's field. By clicking the icon, you open an info box that shows all tools that share the parameter. The **Tag** parameter in the image above is used as an input parameter for both **BamTools Split 1** and **BamTools Split 2**. When you enter a value in any of the two linked fields and click outside the field, the value will be automatically updated in the other linked field. This behavior also applies to complex linked parameters. Complex parameters are groups of multiple "simple" parameters. In the example below, **Value** is a complex parameter in the **QualityCheck** tool and is linked to the **Value** parameter of the **QualityDetect** tool. The complex parameter consists of two "simple" ones, **Min** and **Max**. When you update either **Min** or **Max** in any of the linked fields and click outside the field, the value will be automatically reflected in the corresponding field in the other tool, as shown below: [block:image] { "images": [ { "image": [ "https://files.readme.io/16bcf25-group_params_complicated_inputs.jpeg", "group_params_complicated_inputs.jpeg", 650, 863, "#edebe7" ] } ] } [/block] Again, this only applies if the parameter has been included in input ports, using the <a href="#includeinports">Include in Ports</a> option described above.