在前面的文章中我们都是直接选择的文件路径或者配置了固定的密码信息,我们都知道文件路径或者配置信息写死会导致了程序的不可移植,编写完成的BI解决方案在服务器上运行时无法保证文件路径一致,需要针对每一个文件连接重新选择文件路径,这种情况下,开发者首先想到的是能不能利用相对路径解决这个问题。但是在SSDT工具中无法使用相对路径,通过查阅微软官方相关的资料小黎子了解到我们可以使用项目变量解决这个问题。
一、新建项目变量
1、观察你的工作区有没有变量区域,如果没有可以通过在Package区域右键,然后选择变量菜单来调出变量工作区,如下图:
显示项目的变量区域
2、点击变量工作区上部的第一个按钮就可以新建一个变量,可以编辑名称,修改类型,指定值,如下图:
注意事项:经过小黎子的测试,发现作用域一栏要特别留意,在变量处理过程中确保该值为Package,否则部分Task(具体哪些任务会出现后续再讲解)上可能无法使用这一变量。
新建变量后大家可能在操作时已经注意到名称、数据类型、值和表达式都可以进行编辑,很明显它们就是程序中用来存放Script的目录,确保这个目录存在于最终打包的项目目录中,只要以后所有的文件连接的文件路径都基于创建的变量生成,那么最终执行的时候修改这个变量就可以保证所有的文件连接都是有效。接下来我们定义变量名称:脚本文件夹,数据类型:string,值:F:\01 小黎子数据分析\03公众号文章\微软BI\3连接数据源\学生表的信息.sql
二、修改文件连接
1、选中要修改的文件连接
在属性区域点击Expressions右方的按钮,如下图:
2、在弹出的属性表达式编辑器第一行的属性栏选择ConnectionString, 如下图:
3、选择ConnectionString,后,点击第一行表达式一栏的按钮,将会弹出下图表达式生成器
选择User::脚本文件夹从左上方的变量区域拖入表达式区域,此时点击计算表达式按钮,就会发现计算结果值区域内显示了一个脚本文件路径。如果路径有误,请修改表达式。如果无误,点击确定即可。
4、此时在观察Expressions下多了一个ConnectionString属性,如下图:
注意:如果你发现该文件连接的ConnectionString属性还不是正确的路径而是参数名称也没有关系,只需要执行以下Package就可以了。按照此方法修改所有的文件连接,并且以后创建的所有文件连接都依照此方法来做就可以保证BI解决方案的可移植性。
三、总结
本文详细向大家展示了项目变量的使用场景,大家可以结合自己的工作需要进行调整。最终到达解决自己工作的目的,提升自己BI解决方案的处理能力。
网友评论