# 模板

> 工作区列里那个全工作站范围的根节点：每个模型都取用的报告库和标签库、它们的文件夹、创建和删除动作，以及谁可以编辑它们。

**模板**是 Process 页面工作区列的第二个根节点，夹在模型和历史之间。它装着不属于任何模型的那两个库：**报告**，也就是一次运行记录发布时用的 PDF 版式，以及**标签**，也就是打印一张标签所依据的打印机指令文件。一份报告版式被任何模型[动作](process-actions)里的报告命令引用，也能把历史里任何一次已记录的运行记录重新导出一遍；一个标签模板被每个模型的标签命令重复使用。正因如此，它们在这里只住一份，而不是每个模型各住一份。

这个根节点画给可以查看模型或者管理模型的角色；只拥有编辑配方与判定的角色看不到它。对一个库的每一次改动（创建、编辑、归档、删除、打印样张或者发一张测试标签）都需要**管理 Process**：没有这项权限的角色只读得了这两个库，一个动作都不画给它，而绕过界面到达服务的命令会被拒绝，理由是“管理这个工作区需要‘管理 Process’权限。”。有单元正在运行时（“有单元在运行时配置是锁住的。”）以及运行时已停止时（“运行时已停止”），每一次写入同样被拒绝。

## 模板页面 {#the-templates-page}

选中这个根节点会打开唯一一张卡片，**库**，带两个方块，报告和标签，各自数出自己有多少个模板。树上那两行带着同样的计数，而一个库什么都没装时写“空”，这样一台刚装好的工作站就分得清空库和没有载入成功的列表。根节点本身既不带计数，也不带动作。

## 报告与标签 {#reports-and-labels}

每个库的页面都是一整面卡片墙，每个模板一张，按名称排序，操作员自己的文件夹画在没有人归档过的那些模板上面。点一张卡片就打开那个模板；卡片上那个小小的删除控件，在问过命令栏动作同样的那句确认之后把它删掉。空的库读作“还没有报告。添加一份。”或者“还没有标签。先添加一个，再写入或导入它的指令。”。

| 节点 | 命令栏动作（前导组） | 危险组（末尾组） |
| --- | --- | --- |
| 报告 | **报告**：在库自己那一层创建一份名叫“报告”的版式（“报告 2”，依此类推），在卡片墙上突出显示并滚动到可见处；用它的卡片打开这份版式。 | 无 |
| 一份报告版式 | **打印样张**：用这台工作站最近一次已完成的运行记录填满这份版式并打印出来（[报告版式](process-reports#print-sample)）。 | **删除报告** |
| 标签 | **标签**：创建一个名叫“标签”的空模板（“标签 2”，依此类推），在卡片墙上突出显示并滚动到可见处；用它的卡片打开之后，指令再在它里面写入或导入。 | 无 |
| 一个标签模板 | 无 | **删除标签** |
| 一个文件夹 | **报告**或**标签**（归入这个文件夹）、**新建文件夹**（一个子文件夹，直到深度上限：“这个文件夹已经到了文件夹能嵌套的最深一层。”）、**重命名文件夹** | **删除文件夹** |

每一个动作在工程锁定之下都变灰并写出自己的理由。这一列自己那个**新建…**按钮，在库这一层提供“新建报告”和“新建标签”，还有“新建文件夹”，带一个点名类别的子菜单（模型、报告、标签）。右键点一行，照着命令栏来一遍：在一个库上是“添加报告”或“添加标签”，在一个模板上是“移动到”和删除动作，在一个文件夹上是那些创建动作、“重命名文件夹”和“删除文件夹”。

删除会先问一次，并说明随后会发生什么：

| 动作 | 确认 | 后果 |
| --- | --- | --- |
| 删除报告 | “引用它的流程不再发布 PDF；已经记录下来的运行记录不受影响。” | 每一条指名这份版式的报告命令都退化成什么也不发布；流程曾经指名过它的那次运行记录，在历史重新生成它的 PDF 时回落到全章节的默认版式。 |
| 删除标签 | “流程动作保留它们的映射以供查看，但无法再生成这个标签。已经记录下来的运行记录不受影响。” | 每一条指名这个模板的标签命令都丢掉自己的引用，但保留它的标记映射；已经冻结在运行记录文件里的那些存档件不受触动。 |
| 删除文件夹 | “要删除文件夹‘X’吗？它里面的 N 份报告会回到报告根目录。什么都不会被删掉。” | 这个文件夹里的那些行，连同子文件夹，一起回到库自己那一层。 |

## 文件夹 {#folders}

文件夹只是导航，别无他用：一个模板是按身份找到的，因此把它归档不会改写任何地方的任何引用。模板右键菜单上的**移动到**提供一个新文件夹（生下来就装着这个模板）、深度允许时这里的一个新子文件夹、库的根目录，以及除当前这个之外的每一个已有文件夹。新文件夹打开时名称字段已经就绪；直接离开就保留“新建文件夹”这个名称。文件夹可以嵌套两层，而声明在报告下面的一个文件夹，和标签或模型下面同名的那个是两回事。

## 谁取用这些库 {#who-draws-from-the-libraries}

| 取用者 | 在哪里 | 取走什么 |
| --- | --- | --- |
| 一个动作的报告命令 | 设定 > [动作](process-actions) | 它在开始时或完成时用来发布的那份版式。 |
| 一个动作的标签命令 | 设定 > 动作 | 它渲染的那个模板，外加每个标记一个来源。 |
| 生成 PDF | [历史](histories-export#pdf) | “（流程自带的报告）”或者库里的任意一份版式。 |
| 用当前模板出一个新标签 | [历史](histories-documents#labels) | 任何一个带打印机指令的模板，对着冻结下来的那次运行记录手工映射。 |
| 打印样张与发送测试 | 模板自己的页面 | 一个装在这台工作站上的打印队列。 |

这个分组的那些页面：

| 页面 | 讲什么 |
| --- | --- |
| [报告版式](process-reports) | 一份版式的每一个字段、章节目录和它的选项、打印样张，以及 PDF 会印出什么。 |
| [标签模板](process-labels) | 名称与编码、打印机指令编辑器和文件导入、标记的写法、装好的队列，以及测试发送。 |
| [产出标签与报告](process-emission) | 开始时和完成时会发生什么、那些队列、那些存档件，以及它们的送达状态。 |
