编写规则
编写规则
规则编辑器是您处理规则的位置,您可以执行以下任一作 直接在规则编辑器中键入规则,或使用函数 向导和浏览器,以插入到 统治。
DriveWorks 会自动为规则着色和格式化 使用设置 您可以通过单击命令上的“设置”按钮进行修改 酒吧。
默认情况下, 如果规则无效,则背景色将变为浅色 红色,如果没问题,则背景变为浅色 绿。
在规则编辑器中,可以对规则进行格式设置,使其更易于作 读取。
使用 return 键将规则的元素放在单独的 行和 Tab 键使每个元素内联。
在 Rule Builder 中键入 Functions 时,可以通过按键盘上的 Escape 键来关闭规则洞察。
当需要参数时,将返回 rules insight,再次按 Escape 将关闭 rules insight。
规则编辑器下方是 help 和 diagnostics 选项卡。
帮助和诊断部分最多有六个选项卡 取决于正在构建的规则类型:
帮助 标签
“值”选项卡
步骤 标签
向下钻取 标签
评论 标签
功能 向导选项卡
编写规则
在可以启动规则生成器的位置,您可以构建规则。 规则定义构建它所基于的参数的行为方式。
规则通常涉及一个函数,该函数会评估一些 条件并返回答案,但它也可以是固定的 或 static 值,例如数字或文本。
以下部分说明了可以输入到规则中的内容 建筑工人。
算术规则
规则生成器可以通过以下方式执行算术计算 直接在 Rule Editor 中键入。
例子
算术计算 | 结果 |
5 * (3500 - 500) | 15000 - 将 3500-500 乘以 5 |
(2900+55)/2 | 1477.5 - 将 2900+55 除以 2 |
200-20% | 180 - 从 200 中减去 20% |
12^3 | 1728 - 将数字 12 提高到指数 3 |
数学运算符
变量名称 | 价值 |
+ | 加 |
- | 减去 |
* | 乘 |
/ | 除去 |
% | 百分之 |
^ | 幂运算 |
字符串
字符串是文本,需要括在引号内 (即 “ ”)。
规则生成器按颜色标识规则中的文本字符串 对它们进行编码(下图中的橙色)
例子
文本字符串 | 意义 |
“Hello World” | 返回: Hello World |
包括引号
当结果字符串中需要引号时,每个引号都需要额外的双引号。
例子
文本字符串 | 意义 |
”Hello World“”” | 返回: “Hello World” |
你好 ”“World”“” | 返回: Hello “World” |
连接字符串
字符串可以通过包含 & 符号 (&)。
例子
文本字符串 | 意义 |
“Hello World” & “- 你好吗 今天? | 返回: Hello World - 你今天怎么样? |
连接字符串的另一种方法是使用 Concatenate 函数。
格式化字符串
文本字符串的格式可以通过以下方式包含其他元素 在字符串的开头使用 @ 符号 格式 化。
在要插入格式的位置,使用 @ 符号,并将格式括在方括号 () 内。
例子
格式化字符串 | 意义 |
@“感谢您提交您的 订单,数字 @( DWVariableOrderNumber)" | 返回: “感谢您提交订单,编号 12345"值 12345 是根据变量 OrderNumber 计算得出的。 |
@“总高度将为 @(HeightReturn + 2*DWVariableClearance)mm,总宽度将为 @(DWVariableUnitAWidth + DWVariableUnitBWidth)mm” | 返回: “总高度为 2187 毫米,整体高度为 宽度将为 1675 毫米”值 2187 是根据 Height 的值计算得出的 控件添加到 2 * 变量 Clearance。值 1675 是根据变量的总和计算得出的 UnitAWidth 和 UnitBWidth |
字符串还可以与函数、算术和 整个项目中使用的其他引用。请参阅组合 下面。
布尔值
布尔值只是 True 或 False 值。这些 require 括在引号中。
布尔值通常用于控制 on 或 off 参数,例如表单控件的可见性或捕获的 SOLIDWORKS 功能。
例子
布尔值 | 意义 |
真 | 打开参数或属性 |
假 | 关闭参数或属性 |
IF(复选框返回 = TRUE, TRUE, FALSE) | 评估来自复选框的值,如果 为 TRUE,则 将参数或属性设置为 ON (TRUE),否则将打开 参数或属性 OFF (FALSE)。 |
功能
函数用于计算值。它们可以通过以下方式访问 以下方法:
自动完成
当您开始键入时,在规则编辑器中 窗口中,将出现 Autocomplete (自动完成) 框,其中显示 与输入的字符匹配的建议。
建议将包括:
功能
变量
常数
表
表单控件
来自自动完成框的建议 可以通过使用键盘上的向上和向下箭头进行选择,并且 按 Return 键,或使用鼠标单击。
将鼠标悬停在建议上将显示 建议落入。如果建议是一个函数 a 将显示该函数的作用的描述。
在函数中键入变量名称的开头,筛选 该列表显示与该条目对应的所有值。
选择函数后,使用自动完成规则 Insight 提供了有关构造函数的进一步指导。
规则洞察
Rules Insight 为正在使用的函数提供明确的指导。这 当前必需值以粗体突出显示,并显示 description 函数对参数的期望。
功能按钮
的 Functions 按钮位于规则生成器中命令栏的左侧。
单击 Functions 按钮底部的箭头将显示常用 Functions 的列表。
选择其中一个选项将打开 Function Wizard 选项卡,位于 Rule Builder 的底部。
单击 Functions 按钮将打开 Functions 列表。
有关可用函数的更多信息,请参阅常用函数。
点击放大
Functions (函数) 列表显示所有可用的函数以及每个函数的用途说明。
可以通过在对话框顶部的筛选器框中键入来筛选列表。
过滤器将在 Function Name 和 Description 上匹配。
例如,在筛选器中键入 tangent 将显示描述中使用 tangent 的所有函数。
选择函数
从 Function 对话框中找到所需的函数
选择函数
单击 OK
选择函数后(从函数 对话框或快速选取列表)列出 Help 和 Diagnostics 选项卡 (位于规则编辑器下方)将切换到 所选函数。
函数 按钮位于命令栏左侧的 规则生成器。
单击 Functions 按钮将打开 Functions 对话。
函数对话框列出了所有可用的函数 以及每个用途的描述。
可以通过在顶部的筛选器框中键入来筛选列表 的对话框。
选择函数
从 Function 对话框中找到所需的函数
选择函数
单击 OK
功能 快速选择列表
功能按钮的底部是一个下拉指示器。 单击此按钮将显示常用函数列表。
选择函数后(从函数 对话框或快速选取列表)列出 Help 和 Diagnostics 选项卡 (位于规则编辑器下方)将切换到 所选函数。
规则生成器具有许多预定义功能,请参见 常用 函数获取完整列表。
结合
可输入到规则编辑器中的所有元素都可以 相互组合以形成动态规则。
例如,字符串可以包含算术计算, 它利用一个函数根据 在用户表单上所做的选择。
要以这种方式组合规则的元素,请使用 & 符号 ( &) 符号。
例子
统治 | 意义 |
“引用” & ContactNameExistingReturn & “,引用 ” & Mid(CompanyNameExistingReturn,1,3) & 101 & 2 * OallLengthReturn | 返回: J. Tempest 先生的引言,参考 DRI1014780其中 ContactNameExisting 是值为 Mr. J 的控件。 暴风雨。“, reference ” 是一个字符串。Mid(DWVariableCompanyName,1,3) 是一个函数,该函数返回 变量值的前 3 个字母 CompanyNameExistingReturn,以生成 DRI。101 是一个固定数字。2 * OallLengthReturn 是一个算术计算,它 将控件 OallLength (2390) 中的值乘以 2,得到 结果为 4780。 |
嵌套函数
函数可以插入到其他函数中,这是已知的 作为嵌套。
这允许非常灵活和更动态的规则。
要嵌套函数,只需在 place 在原始函数中,其中值为 必填。
例子
统治 | 意义 |
IF( BoreReturn<4 , 1000 , IF(BoreReturn<8,2000,3000) ) | IF 函数语法: IF( Condition , 如果 True 为 Value , 如果为 False 则为 Value )嵌套函数以粗体显示。初始 IF 的结构 函数保持不变,即逗号分隔两个值 字段和右括号)。代替值 if false 是结构相同的 IF 函数。 |
TEXT( TODAY() , “mm/dd/yy” ) | 文本函数语法: TEXT( value, format )嵌套函数以粗体显示。初始 TEXT 函数,即分隔 Value 的逗号 和格式域以及左方括号 (.代替值 field 是 TODAY 函数。 |
DriveWorks 项目允许嵌套函数无限 深度。
每个 左括号。规则生成器提供匹配帮助 左括号和右括号。
括号匹配
括号匹配允许您查看括号的打开位置和 关闭。轻松识别规则可能失败的位置。
例子
统治 | 意义 |
IF( BoreReturn<4 , 1000 , IF( BoreReturn<8 , 2000 , IF( BoreReturn<12 , 3000 , IF( BoreReturn<16 , 4000 , IF( BoreReturn<20 , 5000 , 6000 ) ) ) ) ) ) | IF 函数语法: IF( Condition , 如果 True 为 Value , 如果为 False 则为 Value )嵌套函数为粗体。初始 IF 的结构 函数保持不变,即逗号分隔两个值 字段和右括号)。代替 false 中的值 每个嵌套都是结构相同的 IF 函数。 |
VLOOKUP( IF( BoreReturn<4 , 1000 , IF( BoreReturn<8 , 2000 , IF( BoreReturn<12 , 3000 , IF( BoreReturn<16 , 4000 , IF( BoreReturn<20 , 5000 , 6000 ) ) ) ) ) , DwLookupBeamCalcs , 3 , TRUE ) | VLOOKUP 函数语法: VLOOKUP( Value , TableName , ColumnIndex , Matchtype 的嵌套函数为粗体。的结构 初始 VLOOKUP 函数保持不变,即逗号 分隔 value 和 TableName 字段以及左括号 ).代替 value 字段的是嵌套的 IF 函数。 |
嵌套多个函数可以使读取规则 难。
考虑使用变量来打破嵌套,参见示例 并将它们与上面的示例进行比较。
例子
统治 | 意义 |
IF( BoreReturn<4 , 1000 , DWVariableLessThan8 )哪里: DWVariableLessThan8 = IF( BoreReturn<8 , 2000 , DWVariableLessThan12 ) DWVariableLessThan12 = IF( BoreReturn<12 , 3000 、DWVariableLessThan16 ) DWVariableLessThan16 = IF( BoreReturn<16 、 4000 、 DWVariableLessThan20 ) DWVariableLessThan20 = IF( BoreReturn<20 , 5000 , 6000 ) | 当条件 BoreReturn<4 为 False 时,它将 返回变量 LessThan8 的结果。当变量 LessThan8 的条件为 False 时,它将返回 变量 LessThan12 的结果。等等...... |
VLOOKUP( DWVariableBoreLookup , DwLookupBeamCalcs , 3 , 真 )哪里: DWVariableBoreLookup = IF( BoreReturn<8 , 2000 、DWVariableLessThan12 ) DWVariableLessThan12 = IF( BoreReturn<12 , 3000 、DWVariableLessThan16 ) DWVariableLessThan16 = IF( BoreReturn<16 , 4000 、DWVariableLessThan20 ) DWVariableLessThan20 = IF( BoreReturn<20 , 5000 , 6000 ) | 将查找变量 BoreLookup 的值当变量 BoreLookup 的条件为 False 时,它将 返回变量 LessThan12 的结果。等等...... |
特殊变量
DriveWorks 内置了称为特殊变量的变量 可以在 rules 中使用。
特殊变量位于 Rule Builder 的 “快速文本”下拉列表。选择后,特殊变量名称将 显示在 Rule Editor 中。
下面列出了可用的特殊变量:
规范 ID
名称:DWSpecificationId
每次在 DriveWorks 中运行项目时,都会为其分配一个 保证的唯一递增编号(称为规范 ID), 它与项目的名称相结合,以给出正在运行的 投影其规范名称。
Specification Id 和 Specification Name 用于 DriveWorks 以多种方式工作,例如:
每当正在运行的项目完成时,都会创建一个文件夹 它以名为 “Results” 与项目文件位于同一文件夹中。
默认情况下,新模型将以其 originals 中,但后缀为规范名称。
您可以使用 将 Specification ID (规范 ID) 和 Specification Name (规范名称) 替换为 使用 Rules 上的 Quick Text 按钮 生成器。
这 Specification ID (规范 ID) 和 Specification Name (规范名称) 可供 在两个名为 “DWSpecificationId” 的特殊变量中运行项目 和 “DWSpecification” 分别。
DWSpecificationID 从 1 开始,范围约为 2 十亿。
例子
统治 | 意义 |
DWSpecificationId | 在管理项目时将导致 9999。一旦项目正在运行,将产生下一个可用数字,例如 1 |
文本 (DWSpecificationID,“0000”) | 将确保结果至少包含 4 个 数字,例如 0001当范围 超过 9999,但始终包含至少 4 位数字。 |
规格名称
名称:DWSpecification
每次在 DriveWorks 中运行项目时,都会为其分配一个 保证的唯一递增编号(称为规范 ID), 它与项目的名称相结合,以给出正在运行的 投影其规范名称。
Specification Id 和 Specification Name 用于 DriveWorks 以多种方式工作,例如:
每当正在运行的项目完成时,都会创建一个文件夹 它以名为 “Results” 与项目文件位于同一文件夹中。
默认情况下,新模型将以其 originals 中,但后缀为规范名称。
您可以使用 将 Specification ID (规范 ID) 和 Specification Name (规范名称) 替换为 使用 Rules 上的 Quick Text 按钮 生成器。
这 Specification ID (规范 ID) 和 Specification Name (规范名称) 可供 在两个名为 “DWSpecificationId” 的特殊变量中运行项目 和 “DWSpecification” 分别。
DWSpecificationID 从 1 开始,范围约为 2 十亿。
例子
统治 | 意义 |
DW指定 | 将返回项目和 SpecifactionID 的组合名称 |