zoukankan
html css js c++ java
产品生成器模块的问题
今天看到设置规则这个地方,在设置本地规则时,验证类型选择 公式,在公式设置选项卡的类型处选择 已计算(这个地方那个英文为Calculated,翻译为已计算不太好理解,翻译成通过计算可能会好一些),然后点击已计算按钮,设定公式,在检查规则语法时出现了如下错误:
跟踪代码后得知,是类PBARuleExpressionActionValue的methodName出现了问题
str methodname()
{
return
(
this
.parmnameRecId()
?
enum2str(PBARuleValueRelation) :
''
)
+
PBARuleExpressionActionValue::methodnameParm(PBAVar,PBARuleArrayIdx,PBARuleActionType)
+
(
this
.parmnameRecId()
?
PBARuleChecker::methodname(
this
.parmnameRecId()) :
''
);
}
我们知道enum2str的结果是标签的内容,如果在中文环境下,该函数的返回结果为中文,这样该方法执行后得到函数名类似于
"公式Table_0_false5637144582",由于在X++中函数名中不能出现汉字,因为汉字并不是合法的标识符的组成元素,于是就出现了不能在脚本中使用此符号的错误。
将该函数更改为如下代码即可:
str methodname()
{
SysDictEnum sysDictEnum
=
new
SysDictEnum(EnumNum(PBARuleValueRelation));
return
(
this
.parmnameRecId()
?
sysDictEnum.value2Symbol(PBARuleValueRelation) :
''
)
+
PBARuleExpressionActionValue::methodnameParm(PBAVar,PBARuleArrayIdx,PBARuleActionType)
+
(
this
.parmnameRecId()
?
PBARuleChecker::methodname(
this
.parmnameRecId()) :
''
);
}
既然中文不能作为标识符,又用Enum2Str的返回结果当成函数名的一部分,不报错才怪。
查看全文
相关阅读:
20145226夏艺华 《Java程序设计》第9周学习总结
20145226夏艺华 EXP5 MSF基础应用
20145226夏艺华 《Java程序设计》第7&8周学习总结、实验一
20145226夏艺华 网络对抗技术EXP4 恶意代码分析
Qt 图形视图框架<二>——<QGraphicsView、QGraphicsScene>
Qt 图形视图框架<一>——<QGraphicsItem>
【转载】C++ 自由存储区是否等价于堆?
QML学习(五)——<TextInput和TextEdif输入框>
QML学习(四)——<Text显示>
QML学习(二)——<QML语法>
原文地址:https://www.cnblogs.com/Farseer1215/p/789847.html
最新文章
python(七):迭代器与生成器
python模块之numpy与pandas
从MySQL到ORM(三):连接、存储过程和用户权限
从MySQL到ORM(二):MySQL基础
前端(十二):react-redux实现逻辑
前端(十一):props、state及redux关系梳理
前端(八):react入门
Django 模板 render传参不转码
toastr通知插件的使用
微信小程序 | app.json配置属性
热门文章
微信机器人使用方式
python常用函数
URL转码
教你如何用Python模拟http请求(GET,POST)
20145226夏艺华 网络对抗技术EXP8 WEB基础实践
20145226夏艺华 网络对抗技术 EXP7 网络欺诈技术防范
20145226夏艺华 《Java程序设计》第10周学习总结
20145226夏艺华 《Java程序设计》实验报告三
20145226夏艺华 《Java程序设计》实验报告五
20145226夏艺华 Exp6 信息搜集与漏洞扫描
Copyright © 2011-2022 走看看