最佳回答
3
L大大 Lv7 高级互助 发布于2020-3-11 13:54
最简单的可使用sql("数据库名称",select 随机码字段 from table where 随机码='"+$$$+"',1,1)
获取是有此随机码,然后编辑结束后判断单元格
Elison_man(提问者)
- 我这个现在是参数框,一个控件,输入内容去数据库判断,不是单元格。我不知道应该在哪里写公式或者在哪里添加条件
L大大 回复 Elison_man(提问者)
- 新增一个控件,把上面的公式放进去
Elison_man(提问者) 回复 L大大
- 不是这样的效果
L大大 回复 Elison_man(提问者)
- 再用js判断下不就好了
var gh=globalForm.getWidgetByName(\"GH\").getValue();
var pwd=globalForm.getWidgetByName(\"PWD\").getValue();
var lgh=globalForm.getWidgetByName(\"labelGH\").getValue();
var lpwd=globalForm.getWidgetByName(\"labelPWD\").getValue();
var shop=globalForm.getWidgetByName(\"SHOP\").getValue();
var lshop=globalForm.getWidgetByName(\"labelSHOP\").getValue();
if(shop.length==0){
FR.Msg.alert(\"请选择所在门店!\");
}
else if(gh.length==0||pwd.length==0){
FR.Msg.alert(\"请输入账号密码!\");
}
else if(shop!=lshop){
FR.Msg.alert(\"所选门店与档案信息不符!\");
}
else if(gh==lgh&&pwd==lpwd){
FR.doHyperlinkByGet({url:\'${servletURL}?viewlet=门店调拨/1.调拨首页.frm\',title:\'门店调拨\',para:{SHOP:lshop,GH:lgh}});
}else{
FR.Msg.alert(\"账号密码错误!\");
}
取消
评论
最佳回答
0
asanguosha4252 Lv5 初级互助 发布于2020-3-11 14:08
,
方法比较笨,但实际我自己就是这样用,定义一个模板参数, 名字随便取如p1 ,默认值选公式 = sql("数据库名称",select 1 from table where RANDOM_DIGIT ='"+$控件名+"',1,1),
然后在JS事件里面,就可以拿到这个参数进行判断
var parm = FR.remoteEvaluate("$p1") ,parm ==1 就是匹配, 否则就alert提示一下
Elison_man(提问者)
- 我还是没有尝试成功。有没有直接写js然后去获取框中输入的和数据库查询的对比,报错
asanguosha4252 回复 Elison_man(提问者)
- 可以是可以,但是在JS调用数据库是有风险得,人家会玩得拿来做增删改查。https://help.finereport.com/doc-view-2454.html 文档的2.3 章节有说。你看你的模板参数 alert($p1) 一下看能不能出来
asanguosha4252 回复 Elison_man(提问者)
- 公式 = sql(\"数据源名称\",select 1 from table where RANDOM_DIGIT=\'\"+$控件名+\"\',1,1)
数据源名称是你帆软配置的数据源名称
取消
评论
最佳回答
0
axing Lv6 专家互助 发布于2020-3-11 14:10
用下拉框取消允许自定义值就可以实现,缺点是没有提示
最佳回答
0
luojian0323 Lv7 资深互助 发布于2020-8-23 14:37
var a=this.getValue();
var sql="sql(\"连接名\", \"select count(ID) from table where 随机码='" + a+ "'\", 1, 1)"
var jilu=FR.remoteEvaluate(sql)
//JS中调用提示窗口
if(jilu=""||jilu==0){
FR.Msg.alert("提示","请输入正确的随机码.");
}