网格报表设置奇偶行背景色

报表中提供的bgColor是设置单元格的背景样式的,如果要控制整行的,就需要在每个单元格中都设置 下面的案例是对oracle数据库的不同的数据库数据库函数名可能不一样,可以自己到网上查找 要设置奇偶行就需要先知道行号然后判断是奇偶行,获取行号可以用数据库的rownum,判断奇偶行可以用KSQL中mod(Number num1, Number num2) 取模 函数 ksql中的实现可以参考: String ksql = "select mod(SQL.rownum, 2) as num,fj.fName, fj.fFJ from AP_FJ fj "; 在报表的批注表达式中可以判断num的值,如果值为0说明是偶数行,如果值为1说明是奇数行 报表中的具体设置可以参考下图 具体的运行效果如下:

报表默认设置横向打印以及纸张大小

报表中打印默认是纵向的A4纸张大小,如果要调为横向打印同时也要调整纸张大小 如果要修改所有的报表打印都按照横向打印可以修改/UI2/system/service/report/dialog/pageSetup.w中pageInfo上控制这几个值的关系值,看页面展现就能看出来具体的关系名 如果只需要单个报表调整可以在js中设置report组件上的相关的设置如下: this.comp("report1")._config.page.orientation="Landscape"; //设置为横向 this.comp("report1")._config.page.paperType = "B5"; //设置纸张类型 this.comp("report1")._config.page.pageWidth = "182mm"; //设置纸张宽度 this.comp("report1")._config.page.pageHeight = "257mm"; //设置纸张高度 this.comp("report1")._config.page.marginLeft = "10mm";//设置纸张左边距 this.comp("report1")._config.page.marginRight = "10mm";//设置纸张右边距 this.comp("report1")._config.page.marginTop = "10mm";//设置纸张上边距 this.comp("report1")._config.page.marginBottom = "10mm";//设置纸张下边距

报表中div计算的时候如果除数是0怎么写if else

报表中不能用excel表达式,所以不能按照excel中的写法去写if else 一个report对应一个excel文件,同时还有一个跟excel文件同名的xml文件,报表中具体写法要编辑xml文件,参考: 1.在studio中选中xml文件右键切换到资源管理器 2.在资源管理器中用记事本或者notepad++打开xml文件,然后在需要写if的地方有两种写法 第一种用reportData中的字段去计算,如下: <Cell ss:StyleID="s44"><Data ss:Type="String">=if(s6.RUNITPRICE=0) then '0' else (s6.RUNITSINSTOCK div s6.RUNITPRICE)</Data></Cell> 第二种直接用单元格去计算,如下: <Cell ss:StyleID="s35" ss:Formula="=if(RC[-1]=0) then '0' else (RC[-2] div RC[-1])"><Data ss:Type="Error">#NAME?</Data></Cell>

如何调整统一的字体大小

修改某个组件的只是某个组件的字体大小改变了,如果要整体的都改变可以参考 自定义一个css文件如:custom.css 在css文件中如下定义 * { font-size: 12px !important; } 然后在门户portal的首页js中如:/UI2/portal/pc/index.js中引用这个css文件即可

控制附件组件attachment(非attachmentSimple)上传的类型和上传后默认显示的类型以及显示个数

一、控制上传类型 附件组件默认没有提供可以设置上传类型的属性,如果需要限制上传的可以在附件组件的onStart事件中进行控制 在onStart事件中可以通过event.event.file.type可以获取到上传的文件类型,这个类型是用ContentType 类型控制如: event.event.file.type = 'application/msword' 就是控制的.doc,其他相关类型的对应可以参考:http://www.3464.com/Data/HTTPContentType/ 如果要直接判断doc、txt这样的类型可以通过获取的上传的文件名,然后截取后缀去判断,获取文件用event.event.file.name 判断类型不符合条件的可以用event.cancel = true终止上传 如下: Model.prototype.attachment2Start = function(event){ var type = event.event.file.type; if(type != 'application/msword'){//判断类型不为doc justep.Util.hint('文件类型比符合要求', this.getRootNode()); event.cancel = true;//终止上传 } }; 二、附件组件默认显示的文件图标,如何控制类型 控制显示的类型,可以在.w中组件的源码中进行控制,源码中是通过foreach循环遍历的附件的json传进行显示的,所以可以在这个循环中通过bind-visible控制显示的类型,如下控制的是只显示doc类型的 [...]

组织机构函数operatorID()、currentPersonID()、currentPersonMemberID()的区别

operatorID() // 操作者ID currentPersonID() //当前人的ID currentPersonMemberID() //当前人员成员ID 在没有使用代理的情况下,当前人和当前操作者是一样的。 如果使用代理登录系统,那么当前人是被代理人,当前操作者是代理人。 在多岗的情况下当前人的ID都是一样的,但是当前人员成员的ID是不一样的 当前人是SA_OPPerson中的sID值 人员成员是SA_OPOrg中的sID值

BIZ层java文件之间的调用

java分src和dsrc下的 src模块:定义静态 Java,此模块下的Java必须经过编译才能使用。 dsrc模块:定义动态Java,此模块的Java不需要编译,运行时会自动允许修改;此模块的Java不允许有包名。 dsrc下的java调用其他的java如下: 如果是调用同一个code目录下src的方法下的可以直接import导入java类然后调用java中的方法 如果是要调用其它模块code\src下的方法,需要在当前的code/model.config.xml下引用调用的模块的code目录如:/SA/excel/logic/code 如果是调用dsrc下的,需要把dsrc中的java方法设置为一个action对应的调用代码,然后在java中调用action src下的java调用其他的java如下: 如果调用其它他模块code\src下的方法,需要在当前的code/model.config.xml下引用调用的模块的code目录如:/SA/excel/logic/code 如果调用dsrc下的,需要把dsrc中的java方法设置为一个action对应的调用代码,然后在java中调用action java中调用action需要用com.justep.system.action.ActionUtils中提供的invokeAction(s)方法

如何根据人员ID获取部门等信息

在com.justep.system.opm.OrgUtils提供了根据人员ID可以到获取到人员成员的函数 findPersonMembersByID(String orgIDorFID, String personID) 参数: String orgIDorFID 组织的ID或FID, 可以为''或null, 表示不限制部门 String personID 人的ID 返回: List<OrgUnit> 在返回的OrgUtit中可以获取到人员成员的fID和fName,再通过com.justep.system.opm.OrgUtils中提供的传fID和fName获取部门等相关的信息去获取 下面的是通过人员ID获取部门名称 action定义的java代码 public static void findDeptByPersonID(String personID){ List<OrgUnit> orgUtils = OrgUtils.findPersonMembersByID("", personID);//根据人员ID获取人员成员 for (OrgUnit person [...]