示例:引入国际格式的数字字段
此示例介绍了如何使用 Prism Analytics 导入外部数据,这些外部数据包括一个数值字段,该数值字段内含国际格式的数字。
您公司有一个包含数值数据的带分隔符文件,格式使用句点分隔千位,使用逗号分隔小数。您希望将此数据作为“数值”字段引入到 Prism Analytics,以便对这些数据执行计算。但是,Workday 仅在以下情况下将外部文件中的数据识别为有效的数值数据:
- 使用句点作为小数。
- 不使用任何字符分隔千位。
您有一个包含以下数据的逗号分隔 (CSV) 文件:
Key,Amount 1,"9.000,1222-" 2,"11.111,2333" 3,"9.999.999,34-" 4,"7.777.777,45" 5,"8.888,56"
在您的文件中,小数点后的位数不得超过 4 位。
通过文件上传方式创建表格,使用 CSV 文件定义源架构。该表应具有以下字段:
- 数字类型的键
- 文本类型的金额
基于该表创建一个派生数据集,并使用“DDS InTL”作为数据集名称。
安全性:
- “Prism Analytics”功能区域中的“Prism: Tables Create”域。
- Prism:“Prism Analytics”功能区域中的“Manage File Containers”域。
- “Prism Analytics”功能区域中的“Prism Datasets: Create”域。
- “Prism Analytics”功能区域中的“Prism Datasets: Manage”域。
- 访问“DDS InTL”数据集的“Edit Dataset Transformations”任务。
- 创建一个 Prism 计算字段,通过将任意句点替换为空字符串来移除千位分隔符。
- 选择“添加字段”。
- 在表达式编辑器中输入以下表达式,然后按键盘上的 Enter 或 Return 键:REGEX_REPLACE([Amount],"\.","")
- 在检查器面板中,输入以下内容作为字段名称:金额(千)。
- 创建一个 Prism 计算字段,将小数点逗号替换为小数点句点。
- 选择“添加字段”。
- 在表达式编辑器中输入以下表达式,然后按键盘上的 Enter 或 Return 键:REGEX_REPLACE([Amount no thousands],",",".")
- 在检查器面板中,输入以下内容作为字段名称:金额小数期间
- 创建一个 Prism 计算字段,将该字段中存在的位于值末尾的任何负号加到值的前面。
- 选择“添加字段”。
- 在表达式编辑器中输入以下表达式,然后按键盘上的 Enter 或 Return 键:CASE WHEN SUBSTRING([Amount decimal period], LENGTH([Amount decimal period])-1, LENGTH([Amount decimal period])) = "-" THEN CONCAT("-",REGEX_REPLACE([Amount decimal period],",","")) ELSE [Amount decimal period] END
- 在检查器面板中,输入以下内容作为字段名称:金额减号。
- 创建一个 Prism 计算字段,移除值末尾的任何减号。
- 选择“添加字段”。
- 在表达式编辑器中输入以下表达式,然后按键盘上的 Enter 或 Return 键:CASE WHEN SUBSTRING([Amount minus sign], LENGTH([Amount minus sign])-1, LENGTH([Amount minus sign])) = "-" THEN SUBSTRING([Amount minus sign], 0, LENGTH([Amount minus sign])-1) ELSE [Amount minus sign] END
- 在检查器面板中,输入以下内容作为字段名称:最终金额
- 创建一个 Prism 计算字段,用于将“[最终金额]”文本字段转换为数值字段。
- 选择“添加字段”。
- 在表达式编辑器中输入以下表达式,然后按键盘上的 Enter 或 Return 键:CAST([Amount final] AS Decimal(20,4))
- 在检查器面板中,输入以下内容作为字段名称:金额数值
- 选择“添加阶段”,然后选择“管理字段”。
- 单击小眼图标可隐藏以下字段:
- 金额
- 金额(非千)
- 金额小数期间
- 金额减号
- 最终金额
- 选择“完成”。
- 保存数据集。
该数据集包含以下字段:
- 键为数字类型
- 将金额“数值”设为“数值”类型,小数点前有 20 位,小数后有 4 位。