一、供应链采购订单问题
在采购订单参照请购单时,若选择了10行请购单的记录,采购订单的表体也就显示了10条记录,如何才能实现还可以再弹出请购单的参照,追加一条记录,而不需要取消单据后重现选择请购单。
答:截止最新版本,你这个问题只能是退回去,重新选择11条过来,不能如你希望那样10条不动再追加第11条.这是个易用性改进的需求,我转给SCM开发部门.
二、3.1的XML导入文档
只有项目基本档案、客商基本档案,现在客户在5.0的基础上导入
而且人员档案也分成了集团级和公司级。请问
1、项目基本档案和项目管理档案是否只用一个XML文件即可
2、客商基本档案和客商档案是否需要分别导入
3、人员基本档案和人员档案是否需要分别导入
如果有文,请提供(导入文档和XML交换文件格式)
答:1 、RE: 50中可以导入项目基本档案,导入时如果指定导入的公司时,基本档案会自动分配生成项目管理档案。
2、RE:客商基本档案导入时,如果指定了分配的公司,可以自动把基本档案分配到公司生成客户档案和供应商档案
3、RE:人员基本档案和人员档案不需要分别导入,是在一个完成的XML文件中表示数据的
三、关于NCv5的代码部署
自己完成了一个NCv5的程序,需要部署,我是把public、private、client、gen分别打包,然后把jar和xml在一个一个分类拷贝到对应的文件夹,好麻烦,为什么不能在eclipse中直接就部署到nchome呢?.
答:eclipse里面 uap有个工具,右键mde tools 下 export module可以将代码打包,不用一个个来打jar包。
导出来的目录直接考到nchome下module 就可以
四、nc5中下拉框不能返回其内容的问题
在单据模板和查询模板中,将一个字段的数据类型设置为"下拉框",并且设置参照名称为"I,01,02,03,04,05"。运行时下拉框的内容可以显示出来,
但是返回的却是所选值的索引序号,即0,1,2,3,4。 在查询模板中设置了返回类型和显示类型都没有效果。
求助:这是V5的bug还是哪里设置的不对?
我用的是V501
答:换成 SX,01,02,03,04,05
前面设置的参数都有哪些?分别有什么作用?
答:设置查询模板某一字段的数据类型是"下拉" ,然后在参照类型中输入字符串"IX,自由态,游离态,..."
IX,UPP10080806-000024=外部单位,UPP10080806-000040=内部核算单位,UPP10080806-000041=内部法人单位,UPP10080806-000042=内部渠道成员
CX,UC000-0001589=客户,UC000-0000275=供应商,UC000-0001574=客商
I,工行,招行,人行,建行
字符串的前缀有 I IX C CX S SX 六种代表不同的含义:
I 将下拉框的索引号作为整型返回
IX 将下拉框的索引号作为整型返回
C 将下拉框的索引号作为Char类型返回
CX 将下拉框的索引号作为Char类型返回
S 返回下拉框中显示的内容
SX 可设置返回值和显示内容的对应关系,选择某一个显示值则会返回该显示值对应的返回值 格式 "SX,自由态=6,审核通过=7,审核不通过=9"
以上六种类型中两个字母的(IX、CX、SX)可通过"="号设置对应关系,而剩下的类型会把整个字符串包括"="号都显示出来。
五、关于树的问题一个左树右表结构的管理界面的单据不知道如何把树的ROOT根结点改成其它的名字, 还有我对右表里面的数据增加、保存、删除后'如何能同一时间刷新左边的树''用的是V501
答:对于树卡片类界面,调用父类BillTreeCardUI的modifyRootNodeShowName方法修改根节点名称,
对于树管理类界面,调用父类BillTreeManageUI的modifyRootNodeShowName方法修改根节点名称,
UI类对应的Control类的isAutoManageTree方法返回值是true可以在编辑卡片或列表界面后自动刷新树的节点。
在ui类中 可以 ((TableTreeNode)getBillTree().getModel().getRoot()).setUserObject("name");
六、怎样编写代码在待办事务中发送一条消息?
答:可以参考下, 后台代码,就是往数据库插入一条记录
//////////////////////////////
PFMessageBO pfm = new PFMessageBO();
CommonMessageVO comvo = new CommonMessageVO();
UserNameObject usvo = new UserNameObject("a");
usvo.setUserPK("0001ZZ100000000000VJ");
usvo.setUserCode("a");
usvo.setUserName("a");
comvo.setSender("a");
comvo.setReceiver(new UserNameObject[]{usvo});
comvo.setMessageContent("导入数据演示");
comvo.setTitle("外部平台导入数据");
comvo.setType(MessageTypes.MSG_TYPE_INFO);
pfm.insertCommonMessage(comvo);
///////////////////////////////
参见类 nc.ui.uap.sf.SFClientUtil
showNode(String nodecode)
七、报表开发中遇到的问题在报表中,需要对 XX率(比如兑现率) 进行小计合计, 兑现率 = 实发量 / 计划量 , 是一个百分比数, 现在点击"小计合计"按钮,对该列进行统计,是将所有的兑现率加起来,这样算法是错误的,应该是
兑现率合计 = 累计实发量 / 累计计划量.
错误的结果:
兑现率(%)
存货1 50
存货2 90
-小计- 140
-合计- 140
现在不知道修改哪个方法能够修改这个问题,使点击"小计合计"按钮后,将小计合计数由自己来计算.
答:添加 2列内容累计实发量 , 累计计划量 在设置公式列 ( 兑现率)=累计实发量/累计计划量
八、制作报表穿头规则的时候自动生成的代码出现编译类错误制作支持穿透的报表时候,利用左侧的"查询间穿透"代码生成向导生成的规则片段报编译类错误,
生成的代码片段如下:
String value = getPeneValue("SUBJNAME");
getHashParam().put("subj", new ParamVO(value));
StorageDataSet ds = ModelUtil.getQueryResult("gldetail4pene", getHashParam(), "design");
setId("gldetail4pene");
setDataSet(ds);
出现的错误如下:
nc.vo.uap.queryengine.QEBusinessException: 编译类错误....
at nc.bs.pub.querymodel.PenetrateRuleUtilBO.check(PenetrateRuleUtilBO.Java:49)
at nc.impl.uap.queryengine.EmbedCodeUtilImpl.checkPenetrateRule(EmbedCodeUtilImpl.java:67)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at nc.bs.framework.comn.serv.ServiceDispatcher.a(ServiceDispatcher.java:320)
at nc.bs.framework.comn.serv.ServiceDispatcher.execCall(ServiceDispatcher.java:129)
at nc.bs.framework.comn.serv.CommonServletDispatcher.doGet(CommonServletDispatcher.java:76)
at nc.bs.framework.comn.serv.CommonServletDispatcher.doPost(CommonServletDispatcher.java:95)
使用的开发环境,版本是nc501,我使用system.out.print();它也报编译类错误
答:在起中间件服务的JAVA项目的构建路径中增加以下外部JAR就可以了