首页 > 其他分享 >帆软学习随笔记录

帆软学习随笔记录

时间:2023-05-26 11:56:27浏览次数:48  
标签:function 控件 FR 记录 value 获取 var 随笔 帆软

--模板>模板Web属性>填报页面设置-为该模板单独设置,添加加载结束事件(JS实现根据当前sheet隐藏参数面板)
$(".fr-sheetbutton-container").click(function()
//给切换sheet的按钮绑定点击事件
{
var a = _g().selectedIndex;
//获取当前sheet的编号(从0开始)
if (a == 1) {
//如果是第2个sheet
$(".parameter-container-collapseimg-up").click();
//点击参数面板收缩按钮,即隐藏参数面板
$('.parameter-container-collapseimg-up').hide();
//隐藏收缩按钮
} else {
$('.parameter-container-collapseimg-down').show();
//展示收缩按钮
$('.parameter-container-collapseimg-down').click();
//点击参数面板收缩按钮,即展示参数面板
}
});

>>> 动态选择显示行.
if(this.getValue()=="是"){
$("tr[tridx=4],tr[tridx=5],tr[tridx=6]").css("display","");
}else{
$("tr[tridx=4],tr[tridx=5],tr[tridx=6]").css("display","none");
}


>>> 点击弹窗-https://help.fanruan.com/finereport/doc-view-2511.html
var iframe = $("<iframe id='inp' name='inp' width='100%' height='100%' scrolling='yes' framedorder='0'>");
// 对话框内 iframe 参数的命名,默认宽高占比是 100%,可向下滚动
iframe.attr("src", cc+"?reportlet=GettingStarted.cpt");
// 给 iframe 添加 src 属性
var o = {
width : 700,//对话框宽度
height: 500//对话框高度
};
FR.showDialog("添加", o.width, o.height, iframe,o);//弹出对话框

>>>>>>使用按钮获取字符串的数字
//alert(A);
var num= A.replace(/[^0-9]/ig,"");
var location = this.options.location; //获取当前控件的位置
var cr = FR.cellStr2ColumnRow(location);
var col = cr.col; //列号
var ro = cr.row; //行号
contentPane.setCellValue(1,ro,num);//此处1位B1的列号,默认从0开始


>>>获取当前编辑行的行号,添加web,填报加载结束事件
_g().on("cellselect", function(td) {
//设置单元格被选中时的监听事件
var num = _g().curLGP.getTDRow(td) - 2; // 如果获取当前编辑列的列序号,则可用 _g().curLGP.getTDCol(td)
//获取当前行号,由于数据是从第三行开始,因此要减2
_g().setCellValue("F1", null, num);
//给F1单元格赋值
})


>>> rs模板参数,绑定单选按钮,状态改变事件
var c = _g().getParameterContainer().getWidgetByName("rs");
var s = c.getValue();
_g().loadSheetByName(s);


>>JS实现报表加载结束后自动滚动到最下方最右侧
setTimeout(function(){
var y=contentPane.$contentPane[0].scrollHeight;//获取页面最大高度
var x=contentPane.$contentPane[0].scrollWidth;//获取页面最大宽度
contentPane.$contentPane.scrollLeft(x);//设置滚动条最左方位置
contentPane.$contentPane.scrollTop(y);//设置滚动条最上方位置
},100)

>>> 长时间不操作就关闭网页
/* if 10 seconds no operation then logout */
var maxTime = 10; // 此处设置倒计时时间,单位为秒
var time = maxTime;
$('body').on('keydown mousemove mousedown', function(e) {
time = maxTime; // reset
});
var intervalId = setInterval(function() {
time--;
if (time <= 0) {
ShowInvalidLoginMessage();
clearInterval(intervalId);
}
}, 1000)
function ShowInvalidLoginMessage() {

FR.Msg.alert("系统提示","您已经长时间没操作了,即将退出系统!");
//TODO 做需要做的操作
//exp:关闭页面
setTimeout(function () {
window.close();
},2000);//弹出提示2秒后关闭页面,此处单位为毫秒
}


>>>> 控件联动:https://help.fanruan.com/finereport/doc-view-1868.html

var row = FR.cellStr2ColumnRow(this.options.location).row + 1;
//获取当前行号
var area = this.getValue();
//获取当前控件值
var province = FR.remoteEvaluate('sql("FRDemo","select 货主省份 from 订单 where 货主地区=\'' + area + '\'",1,1)');
//根据当前选择的地区查询出对应的第一个省份
var city = FR.remoteEvaluate('sql("FRDemo","select 货主城市 from 订单 where 货主地区=\'' + area + '\' and 货主省份=\'' + province + '\'",1,1)');
//根据当前选择的地区和对应的第一个省份,查询出对应的第一个城市
setTimeout(function() {
_g().setCellValue('D' + row, null, province);
//给当前行的省份单元格赋值
}, 200)

>>>输入一个字段,联动获得其他字段数值:https://help.fanruan.com/finereport/doc-view-4061.html
var id=this.getValue();
//获取当前控件值
var cpmc=FR.remoteEvaluate("value('ds1','产品名称','产品ID','"+id+"')");
var dwsl=FR.remoteEvaluate("value('ds1','单位数量','产品ID','"+id+"')");
var cbj=FR.remoteEvaluate("value('ds1','成本价','产品ID','"+id+"')");
var dj=FR.remoteEvaluate("value('ds1','单价','产品ID','"+id+"')");
var kcl=FR.remoteEvaluate("value('ds1','库存量','产品ID','"+id+"')");
//根据产品ID去ds1数据集中获取其他字段的值
var row=FR.cellStr2ColumnRow(this.options.location).row;
//获取当前行号
_g().setCellValue(0,1,row,cpmc);
_g().setCellValue(0,2,row,dwsl);
_g().setCellValue(0,3,row,cbj);
_g().setCellValue(0,4,row,dj);
_g().setCellValue(0,5,row,kcl);


>>> 获得日期90天后的日期值

var date=new Date(this.getValue());
date.setDate(date.getDate() + 90);
var newdate = FR.contentFormat(date, 'Dyyyy-MM-dd')
_g().setCellValue("B2",null,newdate);


>>设置插入最大的行数限制-- https://help.fanruan.com/finereport/doc-view-4045.html
var num = $("td[col=0]:visible").length - 2;
//获取第一列的可见单元格个数,然后减去多余行(比如标题结尾等)
if (num < 10) {
_g().appendReportRow(this.options.location, this.options.reportIndex, 1);
//小于10行则插入行
} else {
FR.Msg.alert("提示", "最多插入十行");
//大于等于10行则提示
}


>>>seq重新排序: web页面设置加载结束
var $tds = $('.x-table td[col=0][fm="SEQ()"]:visible');
//获取第1列中可见的序号单元格(A列)
var n = 0;
$tds.each(function(i, e) {
n = n + 1;
$(e).text(n);
//将当前编号重新设置
})

>>>按钮事件插入指定的行
num = prompt("请输入插入行数","");
_g().appendReportRow(this.options.location, this.options.reportIndex,num)

>>> 删除提示窗口--https://help.fanruan.com/finereport/doc-view-2279.html

var cell = this.options.location;
//获取当前控件所在单元格的编号
FR.Msg.confirm("警告", "确定要删除吗?", function(value) {
if (value) {
_g().deleteReportRC(cell);
//删除当前行
_g().verifyAndWriteReport();
//校验并提交
}
})


>>> 删除插入自定义 --https://help.fanruan.com/finereport/doc-view-595.html
_g().appendReportRC(1);//点击按钮新增一行
_g().deleteReportRC();//点击按钮删除一行


>>控件聚焦编辑: --https://help.fanruan.com/finereport/doc-view-1781.html
var cell = _g().curLGP.getTDCell(0, 1);
//获取A2单元格
setTimeout(function() {
_g().curLGP.selectTDCell(cell);
_g().curLGP.editTDCell(cell);
//聚焦A2单元格
}, 50);

>>获取控件值 --https://help.fanruan.com/finereport/doc-view-2100.html
var temp = "";
var arr = _g().getWidgetsByName("p1");
//获取扩展单选按钮组p1的控件对象数组
if (arr[0] != undefined) {
for (var i = 0; i < arr.length; i++) {
temp = temp + arr[i].getValue() + ' ';
//如果控件长度大于1,则遍历获取控件值并拼接
}
} else {
temp = arr.getValue();
//如果控件长度为1,则直接获取控件值
}
alert(temp);

>>>自定义提交按钮--https://help.fanruan.com/finereport/doc-view-596.html
_g().verifyAndWriteReport();
//校验并提交

>>js实现竖直下拉框隐藏代码--https://help.fanruan.com/finereport/doc-view-2425.html
setTimeout(function() {
var a = 'report0'; //获取对应报表块名称
var b = a.toUpperCase(); //防止大小写出现误差,此处自动将名称转成大写
var wid = ($("div[widgetname='" + b + "']").width() - 17) + 'px'; //获取报表块宽度
$("div[widgetname='" + b + "']").css('width', wid); //重置报表块宽度
var height = ($("div[widgetname='" + b + "']").height() - 16) + 'px'; //获取报表块高度
$("div[widgetname='" + b + "']").css('height', height); //重置报表块高度
}, 100);

>>js实现导出报表快
window.open("${servletURL}?op=ec_export&sessionID="+a+"&widgetName=report0&format=excel&extype=simple&__filename__=导出")

>> 控件直接查询 ---https://help.fanruan.com/finereport/doc-view-1434.html
_g().parameterCommit();

>> 设置滚动 demo hr 招聘会参与人数分析
="<marquee id='affiche' align='left' behavior='scroll' direction='up' height='250' width='300' hspace='0' vspace='0' loop='-1' scrollamount='3' scrolldelay='100' onm ouseOver='this.stop()' onm ouseOut='this.start()'>" + REPLACE(E16, ",", "<br /><br />") + "</marquee>"

>> demo-market--传单监控看板
setTimeout(function(){
_g().getWidgetByName('report6').startMarquee()
}, 500);


function(){
if(this.value==_g().getCellValue("J1")) return '<table style="width:100%;height:100%;"> <tr valign=middle align=center> <td><img src ="../../help/picture/icon_top1-18.png" width="62" height="50"></td> </tr></table>';
else if(this.value==_g().getCellValue("J2")) return '<table style="width:100%;height:100%;"> <tr valign=middle align=center> <td><img src ="../../help/picture/icon_top2-19.png" width="62" height="50"></td> </tr></table>';
else if(this.value==_g().getCellValue("J3")) return '<table style="width:100%;height:100%;"> <tr valign=middle align=center> <td><img src ="../../help/picture/icon_top3-20.png" width="62" height="50"></td> </tr></table>';
else if(this.value==_g().getCellValue("J4")) return '<table style="width:100%;height:100%;"> <tr valign=middle align=center> <td><img src ="../../help/picture/icon_top4.png" ></td> </tr></table>';
else if(this.value==_g().getCellValue("J5")) return '<table style="width:100%;height:100%;"> <tr valign=middle align=center> <td><img src ="../../help/picture/icon_top5.png" ></td> </tr></table>';
else if(this.value==_g().getCellValue("J6")) return '<table style="width:100%;height:100%;"> <tr valign=middle align=center> <td><img src ="../../help/picture/icon_top6.png" ></td> </tr></table>';
else if(this.value==_g().getCellValue("J7")) return '<table style="width:100%;height:100%;"> <tr valign=middle align=center> <td><img src ="../../help/picture/icon_top7.png" ></td> </tr></table>';
else if(this.value==_g().getCellValue("J8")) return '<table style="width:100%;height:100%;"> <tr valign=middle align=center> <td><img src ="../../help/picture/icon_top8.png" ></td> </tr></table>';
else if(this.value==_g().getCellValue("J9")) return '<table style="width:100%;height:100%;"> <tr valign=middle align=center> <td><img src ="../../help/picture/icon_top9.png" ></td> </tr></table>';
else return this.value;}

function(){return'<p><img src ="../../help/picture/icon_top1-18.png" width="30" height="30" align="middle"></p>';}
function(){return'<p><img src ="../../help/picture/icon_top2-19.png" width="30" height="30" align="middle"></p>';}
function(){return'<p><img src ="../../help/picture/icon_top3-20.png" width="30" height="30" align="middle"></p>';}


>>序号,模板web属性--分页预览设置,加载结束
$(".x-table tr:visible").each(function(i) {
if (i > 0) {
$(this).find("td:first").text(i);
}
})

>>单元格插入斜线/doc/primary/detailReport
<img style="border:0;width:72px;height:17px;" src="data:image/png;base64,iVBORw0KGgoAAA ANSUhEUgAAAEgAAAARCAYAAAB+bOp4AAABgElEQVR4nO3YQUeGURCG4am+JIlIKaKIIooWUUQRRYtoEUUUUUTRIooooo iiRRRRRBFFiyiiaBFRtIgiiiglleoHdI/Z1C+YWXwP1/5xOO87c0RE3nGGObQhV5L5l0w0YAIH+MQ1VtCNErdmQZOGagxhG 094xBYGUYVUt3ZBU4oerOIGH9jHOOqR4VctZvLQjnmc4wenmEUrcvyqxUwWmjCJI3zhCkvoQpFftZhJoAYj2MELHrCBAVQgxatc 1JShD2u4wxv2MIo6pPtVi5kCdGARF/jGCabRgmy3ZkGjB9IsdkDHYgd2KXaAepCFftViRq9crdgV1KuoV1Kv5rrYVS13axY0+l HXj3u/2Mf+Hq/YFfsZ6E8h4dYuaHR86BQbJ3Ss0PFCx4wpsbEjy61Z0OiAqoPqjNjgqt8xHWQXxAbbfL9qMaMrkK5CY2Krkb5c3 IqtTL1iK1Qyf6JLdqXY0r0ptoQ/iy3lw2JLeppbu6ApFnvWWRZ75tHnnkOx55/GX7b6R+0E0Y0oAAAAAElFTkSuQmCC">

标签:function,控件,FR,记录,value,获取,var,随笔,帆软
From: https://www.cnblogs.com/xiaoliwm/p/17434356.html

相关文章

  • c#读写锁浅记录
    publicclassC{staticprivateReaderWriterLockSlimrwl=newReaderWriterLockSlim();publicstaticvoidMain(){Threadt_read1=newThread(newThreadStart(WriteSomething));t_read1.Start();Console.WriteLine("{0}C......
  • 2023/5/25每日随笔
       今天,一天而没上课,因为就一节课体育课,然后下雨没上,学了一天的数据库,学了关系模型,约束条件,完整性,还有建表sql语句与查询sql语句,学到了很多,对项目界面进行简单优化。对于软件的人机交互进行优化lHandler 通过Handler你可以发布或者处理一个消息或者是一个Runnable的实例......
  • 记录一次服务器磁盘爆满问题
    服务器磁盘满了!!!事发突然,我在给博客的图片新增的时候,发现上传文件和下载文件一直报错。因为我用的是1Panel面板去管理服务器,话不多说看图:一开始我还不知道发生了什么,一直以为是这个面板出了问题,然后我就一直刷新,强制刷新。发现并无卵用。然后我就去控制台敲命令,想下个宝塔试试,......
  • 记录--超长溢出头部省略打点,坑这么大,技巧这么多?
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助在业务中,有这么一种场景,表格下的某一列ID值,文本超长了,正常而言会是这样: 通常,这种情况都需要超长省略溢出打点,那么,就会变成这样: 但是,这种展示有个缺点,3个ID看上去就完全一致了,因此,PM希望能够实现头部省略......
  • jrtplib 视频数据发送异常分析记录
    场景之前国标服务推流无人机视频运行一直正常,下午时候只能抓包到信令交互的过程,wireshark没有抓包到视音频数据包排查1怀疑是国标没有收到流媒体转发过来的视音频数据流,导致国标服务无法转发视音频排除:国标日志文件显示已经收到流媒体转发过来的视音频数据流排查2怀疑是国标收到的......
  • 学生成绩管理系统中[考场记录]佐证功能有效地减少学生和学校之间的矛盾。
    每学期考试结束后,大量的成绩需要人工录入到学生的成绩系统。经常会出现,考试成绩公布后,或者毕业前,部分学生对自己的成绩不满意,出现各种争议。有些错误是成绩录入人工错误,有些属于卷子丢失错误,有些是学生自己错误,或者缺考,或者未到场签字,或者是考场作弊,成绩为0,或者是否补考费未交等......
  • C#随笔(1)
    C#随记(1)1.新建第一个C#文件点击新建文件这里选择C#类常规2.使用快捷键上手VS这里输入svm,同时点击两下TAB键,生成主类Ctrl+K、Ctrl+X可以生成C#的代码段这里选择第二个这里输入代码块usingSystem;publicclassClass1{ publicClass1() { }......
  • .net core 6中使用UEditor记录
    1.在NuGet中添加包:UEditor.Core或通过程序包管理控制台:Install-PackageUEditor.Core  2.添加服务端统一请求接口publicclassUEditorController:Controller{privatereadonlyUEditorService_ueditorService;publicUEditorController(UE......
  • express开发api指南--记录日志
    败笔,目前还是我的败笔。没有找到好的方法去记录。现在只能记录请求的记录,api的返回记录没有记录下来。用的morgan中间件。这个在项目创建时已安装。//首先安装轮询文件流插件和时间处理插件cnpminstall--saverotating-file-streamdayjs//修改app.js//引入插件varrfs=......
  • fpga 一月学习记录
    fpga一月学习记录4月初,导师突然接了一个fpga开发的项目,把我和另一个同学叫过来,让我们速成,学习了2个星期Verilog语法,了解了一下vivado的使用,虽然最终项目因故中止,但是一个月的fpga学习也值得记录一下。我的主要工作内容是实现一个数据接口转换,具体因为没有下板成功就不说了,主要是......