ASK
ASK 从您在应用程序模板中放置的标记创建数据输入字段。最常见的模板是路径,其中 ASK 值成为目标文件夹和文件名的一部分。ASK 标记也可以出现在主体元数据模板中,用于艺术家名称、版权和用户评论等字段。
当每次捕获、工作、样本、产品、客户或位置需要一些变化的值时,ASK 非常有用。您只需设计一次路径,然后只填写变化的值,而不是每次都编辑完整路径。
例如,这个路径:
c:\images\@ASK1#Client#\@ASK2#Project#\@GCT4
创建两个名为客户和项目的 ASK 字段。如果您输入 Northwind 和 Catalog,下一个保存的图像可以放在:
c:\images\Northwind\Catalog\0001.jpg
ASK 字段可以在主导航视图中显示,在页眉或页脚中,或在单独的窗口中。这使得 ASK 在重复捕获工作中非常有用,因为路径页面应该保持不干扰。
为什么使用 ASK
当文件位置或文件名依赖于捕获时已知的信息时,ASK 很有帮助。常见用途包括:
- 客户、工作、项目或订单编号。
- 国家、省、市、地点或房间名称。
- 样本、样品、物品、产品或序列号。
- 来自串行扫描仪的条形码值。
- 一个最终字段,可以在输入完成后提交应用程序配置的 ASK 操作。
ASK 使工作流程中的重复部分保持较小。模板决定值的位置。ASK 表单允许操作员仅输入或扫描那些值。
ASK 出现的位置
当 ASK 字段可用时,应用程序可以在主导航视图中显示 ASK。在左侧或紧凑的导航布局中,ASK 作为一个导航项出现,字段在其中。在顶部导航布局中,ASK 作为一个 ASK 按钮出现,点击后在弹出窗口中打开字段。
ASK 也可以被选择为视图标题、视图页脚或单独的应用程序内窗口。当 ASK 显示在这些位置之一时,导航视图中的 ASK 项被隐藏。这保持了活动数据输入表面清晰,并避免在同一时间在两个地方显示相同的 ASK 字段。
当您想要快速访问而不专门使用页眉、页脚或窗口时,请使用导航视图位置。当 ASK 应该在您处理另一个页面时保持可见时,请使用页眉、页脚或应用程序内窗口。
基本概念
一个 ASK 标记有三个可见部分:
@ASK1#Client#
@ASK表示创建一个普通的输入 ASK 字段。1是字段编号。Client是在 ASK 表单中显示的字段标题。
# 字符标记字段描述的开始和结束。字段标题位于它们之间。
支持扫描的 ASK 标记使用 @SCASK:
@SCASK1#Serial#
SCASK 表示支持扫描。这并不意味着仅限于扫描。您仍然可以手动输入 SCASK 字段。
ASK 和 SCASK
当值通常是输入时使用 @ASK。当值通常由条形码扫描仪提供时使用 @SCASK。
示例:
@ASK1#Client#创建一个输入的客户字段。@ASK2#Project#创建一个输入的项目字段。@SCASK1#Serial#创建一个支持扫描的序列字段。@SCASK2#Item#创建一个支持扫描的物品字段。
在 ASK 或 SCASK 后面的数字标识值。例如,每个 @ASK1#...# 标记都指向相同的 ASK1 值。每个 @SCASK1#...# 标记都指向相同的 SCASK1 值。
为每个单独的值使用不同的数字。例如,使用 @ASK1#Client# 和 @ASK2#Project#,而不是两个不同标题的无关 @ASK1 字段。
字段标题
标题是 # 字符之间的文本。它应该简短明了,因为它出现在 ASK 表单中。
好的标题:
ClientProjectIDSerialCity
避免在标题中放入冗长的说明。使用路径示例和此帮助页面的说明,并保持实时数据输入表单快速可扫描。
必填字段
在描述的开头放置 * 以使字段为必填:
@ASK1#*Client#
字段标题仍然是客户。* 表示在字段为空或无效时,无法运行 ASK 提交操作。
必填字段在缺少数据时非常有用,因为这会导致文件夹不正确、文件名不完整或捕获工作流程不完整。
示例:
c:\images\@SCASK1#*ID#\@GCT4
这创建了一个必填的支持扫描的 ID 字段。ASK 提交在 ID 有值之前被阻止。
可选字段
字段默认是可选的。如果可选字段为空,路径通常会删除该空值。
示例:
c:\images\@ASK1#Client#\@ASK2#Project#\@GCT4
如果项目为空,解析后的路径会删除该空段,而不是留下重复的反斜杠。
当值有帮助但并不总是可用时,请使用可选字段。
占位符字段
当您希望空的可选值作为占位符保持可见时,在描述的开头放置 &:
@ASK1#&Client#
如果客户为空,路径会显示一个下划线占位符,例如:
ask1
对于支持扫描的值,占位符使用扫描仪身份:
@SCASK1#&Serial# 在为空时变为 scask1。
当您希望预览或保存的路径显示值被故意留空时,请使用 &。当您希望空的可选文件夹干净地消失时,请不要使用 &。
字段顺序
在标题前放置数字和冒号以控制 ASK 表单中字段的顺序:
@ASK1#1:Client#
1: 表示首先显示此字段。标题仍然是客户。
字段顺序在路径顺序与操作员的输入顺序不同时非常有用。
示例:
c:\images\@ASK3#3:City#\@ASK1#1:Client#\@ASK2#2:Project#\@GCT4
文件夹在路径中是城市、客户、项目。ASK 表单显示客户、项目、城市,因为顺序标记是 1、2 和 3。
提交字段
在描述的末尾放置 ! 当完成该字段应提交应用程序配置的 ASK 操作时:
@ASK1#City!#
字段标题是城市。! 表示完成城市尝试运行配置的 ASK 提交操作。
在相机工作流程中,该操作通常是拍摄。这使得重复输入工作流程以最终值结束并立即请求捕获。
完成提交字段可以通过按 Enter、按 Tab 或扫描到支持扫描的提交字段来完成。必填字段必须先有效。如果必填字段为空或无效,提交将被阻止,焦点将移动到第一个需要注意的字段。提交被接受后,焦点返回到第一个 ASK 字段,以便可以立即输入下一个捕获的数据。
组合标记
标记可以在同一描述中组合。从左到右读取:
@SCASK1#*1:ID!#
这意味着:
@SCASK创建一个支持扫描的字段。1在SCASK之后标识值为 SCASK1。*使字段为必填。1:在 ASK 表单中将其放在第一位。ID是显示给用户的标题。!在字段完成时提交配置的 ASK 操作。
另一个示例:
@ASK2#&3:Province#
这意味着:
@ASK创建一个输入字段。2将值标识为 ASK2。&在为空时保持可见的占位符。3:在 ASK 表单中将其放在第三位。Province是标题。- 没有
!,因此完成省份不会提交操作。
现实世界示例
这些示例可以直接粘贴到路径模板中并根据您的文件夹进行调整。有些使用 @SCASK 作为串行条形码扫描仪。有些在最后一个字段上放置 !,以便完成该字段提交应用程序配置的 ASK 操作。相同的模板可以从路径页面示例列表中获得。
1. 产品摄影客户和 SKU
c:\images\product\@ASK1#1:Client#\@SCASK1#*2:SKU!#\@GCT4
当每个产品拍摄属于一个客户和一个扫描的产品 SKU 时使用此项。SKU 是必填的,完成它可以提交捕获操作。
2. 电子商务颜色和角度设置
c:\images\ecommerce\@ASK1#1:Brand#\@SCASK1#*2:Style#\@ASK2#3:Color#\@ASK3#4:Angle!#\@GCT4
在目录集中使用此项,其中样式代码可能被扫描,操作员在拍摄前输入颜色和角度。
3. 房地产房间覆盖
c:\images\real-estate\@ASK1#1:Property#\@ASK2#2:Room#\@ASK3#3:View#\@GCT4
当图像按物业、房间和视角分组时使用此项。
4. 博物馆物体摄影
c:\images\museum\@SCASK1#*1:Accession#\@ASK1#2:Object#\@ASK2#3:Side!#\@GCT4
当集合或接收条形码标识物体,并且每一面或视图单独捕获时使用此项。
5. 实验室样本接收
c:\images\lab\@SCASK1#*1:Sample#\@ASK1#2:Test#\@ASK2#3:Stage!#\@GCT4
当每个图像必须与扫描的样本 ID、输入的测试名称和处理阶段相关联时使用此项。
6. 实验室板和孔成像
c:\images\lab\plates\@SCASK1#*1:Plate#\@ASK1#2:Well#\@ASK2#3:Channel!#\@GCT4
当扫描一个板条形码并在捕获前输入孔和成像通道时使用此项。
7. 标本托盘文档
c:\images\specimens\@ASK1#1:Project#\@SCASK1#*2:Specimen#\@ASK2#3:Tray#\@ASK3#4:Position!#\@GCT4
当每个标本都有一个扫描的 ID,并且在重复捕获会话中输入托盘和位置时使用此项。
8. 法医证据接收
c:\images\forensics\@SCASK1#*1:Case#\@SCASK2#*2:Evidence#\@ASK1#3:View!#\@GCT4
当案件和证据标识符被扫描,操作员在捕获前输入视图时使用此项。
9. 法医现场位置
c:\images\forensics\@ASK1#*1:Case#\@ASK2#2:Scene#\@ASK3#3:Room#\@ASK4#4:Detail!#\@GCT4
当标识符被输入,最终详细字段可以提交捕获操作时使用此项。
10. 保管链物品照片
c:\images\custody\@SCASK1#*1:Case#\@SCASK2#*2:Bag#\@SCASK3#*3:Item!#\@GCT4
当每次捕获由扫描的案件、袋子和物品条形码驱动时使用此项。
11. 学校学生肖像
c:\images\school\@ASK1#1:School#\@ASK2#2:Grade#\@SCASK1#*3:Student!#\@GCT4
在学校肖像拍摄中使用此项,其中学生 ID 在设置学校和年级后被扫描。
12. 教室项目文档
c:\images\school-projects\@ASK1#1:School#\@ASK2#2:Class#\@ASK3#3:Project#\@SCASK1#4:Student#\@GCT4
当学生 ID 是可选但有帮助时使用此项,主要分组按学校、班级和项目进行。
13. 老照片扫描客户订单
c:\images\scan-service\@ASK1#1:Client#\@SCASK1#*2:Order#\@ASK2#3:Album#\@GCT4
在扫描服务中使用此项,其中订单号被扫描,图像按客户和相册分组。
14. 幻灯片扫描盒和插槽
c:\images\slides\@SCASK1#*1:Order#\@ASK1#2:Box#\@ASK2#3:Slot!#\@GCT4
当客户订单被扫描,每个幻灯片在扫描前通过盒子和插槽进行标识时使用此项。
15. 家庭档案恢复
c:\images\archive\@ASK1#1:Family#\@ASK2#&2:Year#\@ASK3#3:Event#\@ASK4#4:Person!#\@GCT4
当一些历史细节未知时使用此项。Year 字段在为空时保持可见的占位符,而完成 Person 可以提交捕获操作。
扫描仪工作流程
为了可靠的扫描到字段行为,请使用串行条形码扫描仪。键盘楔形扫描仪输入到具有键盘焦点的任何控件中,这在生产工作中更容易误导。
串行扫描仪工作流程:
- 创建一个或多个
@SCASK字段。 - 在扫描仪页面上配置扫描仪。
- 将扫描仪设置为串行模式。
- 编程扫描仪以发送所需的扫描包装。
- 将值扫描到 ASK 表单中。
当没有支持扫描的字段具有键盘焦点时,扫描将转到当前扫描目标,然后转到下一个支持扫描的字段。当支持扫描的字段具有焦点时,扫描将进入该字段。
扫描仪设置包装,例如 !12345@,与 ASK 描述 ! 提交标记是分开的。包装告诉扫描仪页面扫描的开始和结束。ASK 描述 ! 告诉 ASK 完成该字段应提交配置的操作。
输入和 Tab
在 ASK 字段中按 Enter 的效果类似于 Tab。它验证当前字段并移动到下一个字段。
如果当前字段具有 ! 标记,Enter 或 Tab 也会尝试 ASK 提交。如果必填字段为空或无效,则提交被阻止。提交被接受后,焦点返回到第一个 ASK 字段。
这使得重复输入快速:
- 输入或扫描第一个值。
- 按 Enter 或 Tab。
- 继续通过字段。
- 完成最后一个
!字段以提交。 - 从第一个字段开始下一个输入。
预览和保存路径
ASK 值在模板包含匹配的 ASK 标记的任何地方使用。路径预览在完成 ASK 字段后更新,焦点离开字段或接收到扫描值。这使得预览和保存路径数据与完成的数据输入值保持一致,而不是每个部分键入时。
对于空值:
- 必填字段在填充之前显示下划线占位符。
- 带有
&的可选字段在填充之前显示下划线占位符。 - 没有
&的可选字段会折叠为空。
如果没有 & 的可选值是整个文件夹段,路径会删除该空段。这避免了解析路径中的重复反斜杠。
主体元数据模板
当元数据值应来自输入或扫描的数据时,主体元数据字段可以使用 ASK 标记。支持的元数据字段包括:
- 艺术家名称
- 版权
- 用户评论
例如,艺术家名称可以包含 @ASK1#Photographer#,或者用户评论可以包含 Item @SCASK1#*1:Item#。这些标记创建的 ASK 字段与路径标记创建的字段相同。
元数据标记模板保存在配置文件中。字面主体元数据值是相机拥有的主体数据,并不保存在配置文件中。主体元数据支持取决于连接的主体和活动的 Nikon SDK 模式。如果当前 SDK 模式不公开艺术家名称、版权、用户评论或它们的附加开关,元数据 ASK 模板仍然可以保存在配置文件中,但无法写入该连接的主体。当 v2 模式在测试的主体上不公开这些字段时,主体元数据控件被隐藏,保存的模板保留用于遗留 SDK 模式。
标记化捕获元数据写入被实现为瞬态主体元数据。元数据 ASK 模板创建 ASK 字段并与配置文件一起保存。在捕获之前,应用程序解析标记化的元数据模板,并在该字段符合捕获时间附加条件时将解析的值写入相机主体。艺术家名称和版权由主体元数据版权卡控制。该卡的附加或忽略开关控制 Nikon 版权元数据块,其中包括在确认的主体(如 Z50 和 D800)上显示的艺术家名称。用户评论有自己的附加或忽略开关。版权元数据和用户评论元数据仅在匹配的主体元数据开关设置为附加时写入。捕获完成后,应用程序尽力清除为该捕获写入的任何标记化主体元数据字段。如果解析的元数据值过长或包含不支持的字符,捕获将在瞬态值写入主体之前被拒绝。
ASK 和 SCASK 元数据值可能是敏感的。它们可能包含姓名、订单号、证据标识符、样本 ID、学生 ID 或扫描仪有效载荷。ASK 日志使用隐私安全的详细信息,并不记录输入的 ASK 值、扫描仪有效载荷或解析的元数据有效载荷。
故障排除
如果 ASK 字段未出现:
- 确认标记以
@ASK或@SCASK开头。 - 确认数字为 1 到 9。
- 确认两个
#字符都存在。 - 确认标题位于
#字符之间。 - 确认模板在拥有它的页面中已保存或处于活动状态。
如果字段出现顺序错误:
- 添加顺序标记,例如
1:,2:和3:。 - 检查每个顺序标记是否在
#字符之间。 - 保持每个标记在标题之前。
如果提交未运行:
- 确认字段在描述的末尾有
!。 - 确认必填字段已填写。
- 确认值不包含模板源的无效字符。
- 确认应用程序有配置的 ASK 提交操作。
如果路径中出现错误值:
- 检查是否有两个不同的标记使用相同的 ASK 编号。
- 为不同的值使用单独的编号。
- 记住
@ASK1#Client#和@ASK1#Project#都指向 ASK1。
如果扫描仪数据进入错误字段:
- 对应该接收扫描仪值的字段使用
@SCASK。 - 在扫描之前单击预期的支持扫描的字段。
- 检查字段顺序标记。
- 检查扫描仪页面设置和扫描包装。
相关设置
使用路径将 ASK 值放置在目标文件夹和文件名中。当艺术家名称、版权或用户评论应从 ASK 值准备时,请使用主体元数据。当条形码值应填充 @SCASK 字段时,请使用扫描仪。使用配置文件保存和加载包含 ASK 标记的模板。