

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在申请中提交工作
<a name="from-within-applications"></a>

 为了便于用户提交作业，您可以使用应用程序提供的脚本运行时或插件系统。用户拥有熟悉的界面，您可以创建强大的工具来帮助用户提交工作负载。

## 在应用程序中嵌入作业捆绑包
<a name="simple-embedding"></a>

此示例演示如何提交您在应用程序中提供的任务捆绑包。

 要允许用户访问这些任务包，请创建一个嵌入在菜单项中的脚本来启动 Deadline Cloud CLI。

 以下脚本允许用户选择作业捆绑包：

```
deadline bundle gui-submit --install-gui
```

 要改用菜单项中的特定任务包，请使用以下命令：

```
deadline bundle gui-submit {{</path/to/job/bundle>}} --install-gui
```

 这将打开一个对话框，用户可以在其中修改作业参数、输入和输出，然后提交作业。您可以为不同的工作捆绑包设置不同的菜单项，供用户在应用程序中提交。

如果您使用作业捆绑包提交的作业在提交时包含相似的参数和资产引用，则可以在底层作业捆绑包中填写默认值。

## 从应用程序获取信息
<a name="deep-integration"></a>

要从应用程序中提取信息，这样用户就不必手动将其添加到提交中，您可以将 Deadline Cloud 与应用程序集成，这样您的用户就可以使用熟悉的界面提交作业，而无需退出应用程序或使用命令行工具。

如果您的应用程序具有支持 Python 和 pyside/pyqt 的脚本运行时，则可以使用 De [adline Cloud 客户端库](https://github.com/aws-deadline/deadline-cloud)中的 GUI 组件来创建用户界面。有关示例，请参阅上的 [Maya 截止日期云集成](https://github.com/aws-deadline/deadline-cloud-for-maya) GitHub。

Deadline Cloud 客户端库提供的操作可执行以下操作，以帮助您提供强大的集成用户体验：
+ 通过调用应用程序 SDK 从环境变量中提取队列环境参数、作业参数和资产引用。
+ 在作业捆绑包中设置参数。为避免修改原始捆绑包，您应该制作捆绑包的副本并提交副本。

如果您使用`deadline bundle gui-submit`命令提交任务捆绑包，则必须以编程方式使用`parameter_values.yaml`和`asset_references.yaml`文件来传递来自应用程序的信息。有关这些文件的更多信息，请参阅[Deadline Cloud 的打开职位描述 (OpenJD) 模板](build-job-bundle.md)。

如果您需要比 OpenJD 提供的控件更复杂的控件，需要将作业从用户手中抽象出来，或者想要使集成与应用程序的视觉风格相匹配，则可以编写自己的对话框，调用 Deadline Cloud 客户端库来提交作业。