简介
本指南将向您展示如何在NXLink平台中使用数据规则自定义导入/导出的数据列。通过 模板语言,您可以灵活定义数据规则,从而控制列的数据展示和处理方式, 允许您根据自定义规则对数据进行加工、格式化或过滤,特别适用于导入和导出操作。。
操作步骤
1. 访问自定义列功能
- 进入平台各列表的 导入/导出 模块。
- 点击 管理,选择 自定义报表。
- 在这里,您可以为每一列创建或编辑相应的数据规则。
2. 定义自定义数据规则
- 在 数据规则编辑器 中,您可以为每个列定义自定义数据规则,使用 Beetle 模板语言进行数据处理。
示例模板规则
假设您有一列名为 customer_name
,并希望在导出的文件中以大写字母显示该列内容:
<% if (displayCaller) { %> ${strutil.toUpperCase(displayCaller)} <% } else { %> '暂无' <% } %>
在这个规则中:
- 如果 displayCaller 存在,则会转换为大写格式。
- 如果 displayCaller 不存在,则显示 '暂无名称'。
3. 使用模板语言语法处理数据
支持丰富的字符串操作和条件逻辑。以下是一些常见的场景。
3.1 条件逻辑
您可以使用条件语句根据不同的情况自定义数据的展示。例如,检查订单金额是否大于 1000:
<% if (order_value > 1000) { %>
VIP客户
<% } else { %>
普通客户
<% } %>
此规则根据订单金额显示 VIP客户 或 普通客户。
3.2 字符串操作
您可以利用 Beetle 内置的字符串函数来格式化数据。以下是常用的字符串操作函数:
- 转换为大写:
${strutil.toUpperCase("hello")} // 输出: HELLO
- 检查字符串起始部分
${strutil.startWith("hello", "he")} // 输出: true
- 字符串长度
${strutil.length("hello")} // 输出: 5
- 截取字符串
${strutil.subString("hello", 1)} // 输出: "ello"
${strutil.subStringTo("hello", 1, 2)} // 输出: "e"
3.3 数据格式化
通过模板语言对数据进行格式化。例如,格式化日期:
${strutil.formatDate(order_date, "yyyy-MM-dd")}
此规则将日期转换为 YYYY-MM-DD 格式。
4. 常用函数调用示例
提供了丰富的函数库用于处理数据。以下是常用函数示例:
- 字符串替换:
${strutil.replace("hello", "lo", "loooo")} // 输出: "helloooo"
- 空值判断:
${nvl(user, "不存在")} // 如果 user 为空,返回 "不存在"
5. 预览和测试
完成自定义列规则后,点击 预览 查看实际效果。 测试数据规则时,建议使用不同的数据集,确保其表现符合预期。
6. 保存并应用规则
规则定义完成后,点击 保存 以应用更改。 规则将会自动应用于后续的导入/导出/列表展示操作。
高级功能
7. 处理嵌套数据结构
支持处理嵌套的数据结构。例如访问 address.city:
${address.city}
8. 组合多个字段
您可以将多个字段组合到同一列中输出:
${first_name} ${last_name}
此规则会将 first_name 和 last_name 合并为一个字段。
9. 错误处理
为了避免模板在字段缺失或数据错误时出错,您可以使用默认值:
${nvl(email, "未提供")}