自定义应用工作室 (Custom App Studio)¶
自定义应用工作室是 Teknora EAM 内置的低代码(Low-Code)构建工具。您可以用它添加全新的"应用"——包含数据模型、列表页面和详情页面——完全无需编写代码,通过拖放来设计界面,并将其翻译成系统支持的 11 种语言中的任意一种。
主要区域¶
界面分为三个区域:
| 区域 | 功能 |
|---|---|
| 顶部工具栏(字段类型面板) | 用于向当前标签页添加新字段的按钮 —— 文本、多行文本、数字、日期、日期和时间、是/否、下拉选择、链接、表格、图片 |
| 画布(中间) | 表单的实时(所见即所得)预览 —— 您在这里看到的内容就是用户在运行时看到的内容 |
| 属性面板(右侧) | 根据您在画布上点击的对象自动切换 —— 整个表单、某个标签页、某个区块或某个字段 |
表单属性¶
点击画布上方的 "Form Properties" 栏,查看应用的整体属性:
- 标题:应用的主名称(显示在侧边栏和顶部菜单中)。
- 翻译:将应用名称翻译成任意数量的 11 种语言 —— 使用已翻译语言的用户会自动看到对应的翻译名称。
- 图标:来自 lucide-react 图标库的图标名称。
- 分类:应用在 "Custom Applications" 列表中的分组方式。
- 在表单中显示标题栏:控制详情页面头部是否显示应用名称 + 主字段 + 描述字段。
- 隐藏:将应用从侧边栏和菜单中隐藏,但不删除它。
- 接受附件:在详情页面头部添加附件图标(📎)。
- 接受工作流:目前仅作为意向标记 —— 尚未连接真正的工作流引擎。
- 有报表:在详情页面启用真正的 "Print Reports" 按钮,并使该应用可在 Report Designer 中被选为数据源。
- 接受状态变更:启用真正的状态变更系统(与资产和工单页面使用的系统相同)—— 系统会要求您选择一个提供状态值的域(Domain)(例如 ASSETSTATUS)。
标签页 (Tabs)¶
点击画布上的任意标签页以编辑其属性:
- 名称:标签页向用户显示的标签文字。
- 图标:一个下拉列表,包含现成的图标网格供选择 —— 该图标会显示在画布中标签页名称旁边,以及运行时的详情页面中。
- 翻译:将标签页名称翻译成任意语言。
- 隐藏:将整个标签页从详情页面隐藏,但不删除其中的字段。
点击最后一个标签页旁边的 "+" 以添加新标签页。
区块 (Sections)¶
每个标签页都被划分为若干区块(字段分组)。点击任意区块的标题以:
- 修改并翻译其名称。
- 设置其列数(1、2 或 3)—— 这会直接控制表单实际使用的 CSS Grid 布局,而不仅仅是大致外观。
- 删除该区块 —— 其中的字段会变为"未分类",而不会被删除。
字段 (Fields)¶
点击任意字段以编辑:
- 标签和字段名(字段名自动生成,不可编辑)。
- 翻译 —— 与标签页翻译原理相同。
- 该字段所属的标签页和区块。
- 必填:启用真正的(原生 HTML)验证 —— 未填写则无法保存记录。
- 显示在列表中:控制该列是否显示在列表页面中。
- 主字段:代表记录"标题"的主要字段 —— 它会显示在详情页面头部,而不是在正文中重复出现,并且在首次保存后被锁定(不可再编辑)。
- 只读(Read Only):字段仅显示,不能手动编辑 —— 适用于由 Action Script 控制的字段(例如自动计算的总计)。
如果字段类型是数字,会出现一个额外选项:
- 数字格式:整数(默认)、小数(Float),或货币 —— 选择小数或货币可让字段正常接受小数(如 450.75),而不会被浏览器标记为"无效"。
字段类型¶
除了简单类型(文本、数字、日期、是/否、下拉选择)外,还有两种高级类型:
链接字段 (Link)¶
一个指向其他位置真实记录的字段,而不是自由文本。您可以选择它指向:
- 域(Domain):系统中的任意域。
- 系统表:真实的表,如资产(Assets)、位置(Locations)、物料(Items)、人工(Labors)等。
- 自定义对象:您创建的另一个自定义应用。
还有一个"按当前站点过滤结果"选项 —— 启用后,搜索只会返回与用户所在站点相同的结果。
表格字段 (Table)¶
一个允许在单条记录中添加多行数据的字段(类似资产页面中的备件表格)。有三种定义方式:
- 手动定义列:自行添加列 —— 每列可以是文本/数字/日期/是否/列表,甚至可以是指向真实记录的链接(例如打开资产表搜索的"资产"列)。
- 链接到对象:表格自动从另一个自定义应用的字段中获取其列。
- 链接到域:表格允许从指定域的值中添加行。
每个手动定义的列都有额外属性:
- 宽度(Width):一个相对数值(类似 ERPNext 的列系统)—— 宽度为 2 的列占用宽度为 1 的列两倍的空间,而不是固定像素值。
- 只读:与字段级别原理相同,但作用于单列 —— 适用于由脚本自动计算的列(如行合计)。
- 列表类型:会显示一个"Choices"输入框,输入以逗号分隔的值 —— 该列在运行时会渲染为带有这些值的下拉列表。
- 数字格式:如果该列是数字类型,可以像普通数字字段一样选择整数/小数/货币。
操作步骤¶
1. 创建新的自定义应用¶
在 "Custom Applications" 列表中点击新建应用,填写名称和分类,然后从顶部工具栏开始添加字段。
2. 组织表单¶
拖动字段进行重新排序,将其归类到合理的标签页和区块中,并设置每个区块的列数。
3. 翻译¶
对于需要被使用不同语言的多个用户查看的字段/标签页/区块,点击 "+ Add language" 并添加所需的翻译 —— 无需翻译成全部 11 种语言,只需选择需要的语言即可。
4. 发布¶
完成后,点击屏幕顶部的 Published(已发布) —— 在发布之前,该应用不会出现在用户的侧边栏或顶部菜单中。
5. 权限¶
您必须在角色(Roles)页面为新应用添加读取/创建/修改/删除权限 —— 每个自定义应用都会自动获得一个权限键(custom_<应用名>)。
发布前
发布前请确保所有必填字段(Required)和主字段(Primary)都已正确设置 —— 在用户开始录入数据后再修改它们可能会造成混乱。
返回:自定义应用 ←








