缘起
昨天晚上同事新做完一个流程,遇到一个错误:某参数(Dictionary类型),总提示未初始化。
按说参数是不需要初始化的。
再说,照猫画虎做的应该没错,咋就错了泥?!
同事检查了一遍,没检查出来。
我检查了一遍,确实是按照套路来的,也没查出错。
于是开始步入排错之路。
错误排查
在不同关卡设置Write Line,输出字典的Count,没有抓住错误。
于是决定换个思路。
按说参数是不需要初始化的,即使是字典类型,可是为啥会出现此类提示?于是想起以前关于参数与变量的讲义:
参数与变量の区别
相同点:在定义该变量和参数的xaml文件中,用法跟普通变量相同。
不同点:
如果被Invoke的xaml文件,设计了参数,调用该xaml文件时,可以通过传参数的方法,给该xaml文件传递需要传递的值(可以是变量或常量,也可以是固定值);
变量只能在定义该变量的xaml文件中的相应的范围内使用。
GDBH猜想
根据上述区别,猜测:难道是哪个步骤里定义了同名变量,把输入参数给顶了?
于是在UiPath的搜索功能中进行全局搜索该变量,有很多。
点击第一个config,跳转到参数,没错。
点击第二个config,跳转到变量,终于找到bug,原来是同名变量把参数给打败了。
在一个xaml文件中定义了同名变量和参数,UiPath没给出错误提示,想想UiPath的变量存在范围问题,算了吧,就不做苛刻要求了,或许是UiPath难以提示这种错误,希望高版本(我用的是2.3版)能提示。
解决方案
删除变量中同名变量,再次运行,OK。
(正文结束)
附1:关于本公众号
微信公众号ID:RPA-UiPath-BPC-EDU
微信公众号名称:柴班说
欢迎您的关注和阅读,希望这篇文章能为您带来帮助。
欢迎转载与分享,也请注明出处。
如果您有需要了解的关于RPA的其他内容,也可以给我留言或发邮件(chaijw@126.com)
识别下面的二维码,或者直接搜“柴班说”,或者RPA-UiPath-BPC-EDU,可以关注本公众号。
网友评论