一、设置卡片界面下 金额字段负数为红色!

 /**
* 设置卡片界面下 金额字段负数为红色!
*/
private void repaintBodyMoneyColor(){
if(!isListPanelSelected()){
int rows = getBModel().getRowCount();
if(rows>0){
for(int i=0;i<rows;i++){
CbGatheringBVO bvo = (CbGatheringBVO)getBModel().getBodyValueRowVO(i, CbGatheringBVO.class.getName());
if(bvo!=null){
if(SafeCompute.compare(UFDouble.ZERO_DBL, bvo.getNbroddaccountreceiv())>0
||SafeCompute.compare(UFDouble.ZERO_DBL, bvo.getNboddaccountreceiv())>0){
setBodyForeGroundByRow(tabB,i,new String[]{"nbroddaccountreceiv","nboddaccountreceiv"}, Color.RED);
}
}
}
}
}
}

 二、读取XML并解析参数

Document document = null;
try {
DocumentBuilderFactory builderFactory = DocumentBuilderFactory
.newInstance();
DocumentBuilder builder = builderFactory.newDocumentBuilder();
// 接收XX电子票返回的信息
document = builder.parse(new ByteArrayInputStream(retStr
.getBytes("utf-8")));
} catch (Exception e) {
e.printStackTrace();
throw new BusinessException("更新失败!!!解析XX返回信息为: " + document);
}
NodeList fphm = document.getElementsByTagName("FP_HM"); // XX号码
NodeList fpdm = document.getElementsByTagName("FP_DM"); // XX代码
NodeList kprq = document.getElementsByTagName("KPRQ");
NodeList code = document.getElementsByTagName("returnCode");
NodeList msg = document.getElementsByTagName("returnMsg");
NodeList pdfurl = document.getElementsByTagName("PDF_URL");
String returncode = code.item(0).getTextContent();
String returnMsg = msg.item(0).getTextContent();
String PDF_URL = pdfurl.item(0).getTextContent(); if (!"0".equals(returncode)) {
throw new BusinessException("更新开票失败!!!XX返回信息为: " + returnMsg);
} String FP_HM = fphm.item(0).getTextContent();
String FP_DM = fpdm.item(0).getTextContent();
String KPRQ1 = kprq.item(0).getTextContent();
String KPRQ = KPRQ1.substring(0, 4) + KPRQ1.substring(4, 7)
+ KPRQ1.substring(7, 10);

  三、继承ManageEventHandler取AggVO(按钮事件类)

@Override
protected void onBoSave() throws Exception { VatinvoiceAggVO aggVO = (VatinvoiceAggVO) getBillCardPanelWrapper()
.getBillVOFromUI();
VatinvoiceBVO[] vatinvoiceBVO = (VatinvoiceBVO[]) aggVO.getChildrenVO();
UFDouble amount = new UFDouble(0);
UFDouble amountnotax = new UFDouble(0);
UFDouble taxamount = new UFDouble(0);
for (VatinvoiceBVO vatBVO : vatinvoiceBVO) {
// 表体含税金额
amount = amount.add(vatBVO.getAmount());
// 表体无税金额
amountnotax = amountnotax.add(vatBVO.getAmountnotax());
// 表体税额
taxamount = taxamount.add(vatBVO.getTaxamount());
}
     // 表头
getBillCardPanelWrapper().getBillCardPanel().getHeadItem("totalamount")
.setValue(amount);
getBillCardPanelWrapper().getBillCardPanel()
.getHeadItem("totalamountnotax").setValue(amountnotax);
getBillCardPanelWrapper().getBillCardPanel()
.getHeadItem("totaltaxamount").setValue(taxamount);
getBillCardPanelWrapper().getBillCardPanel().dataNotNullValidate();
     // 表尾
     getBillCardPanelWrapper().getBillCardPanel().getHeadTailItem("pk_checker").setValue(getChecker(headVO.getPk_manager()));
super.onBoSave();
}

 四、按钮事件类下判断是什么界面

BillManageUI manageUI = (BillManageUI) getBillUI();
boolean isListPanel = manageUI.isListPanelSelected();
if(isListPanel){//列表界面 }else{//卡片界面 }

 五、取得所有行数

int[] selects = manageUI.getBillListPanel().getHeadTable()
.getSelectedRows();
for (int i : selects) {
VatinvoiceAggVO aggVO = (VatinvoiceAggVO) getBufferData()
.getVOByRowNo(i);
}

六、eclispce起中间间报内存不足

-Dnc.exclude.modules=${FIELD_EX_MODULES} -Dnc.runMode=develop -Dnc.server.location=${FIELD_NC_HOME} -DEJBConfigDir=${FIELD_NC_HOME}/ejbXMLs -DExtServiceConfigDir=${FIELD_NC_HOME}/ejbXMLs
-Xms512m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=256m
-Duser.timezone=GMT+8

 七、设置单据号

String billcode = (new BillcodeGenerater()).getBillCode(
"节点编码", 公司主键, null, null);

 八、取单据VO

AggregatedValueObject[] vos = getBillListPanelWrapper().getBillListPanel().getMultiSelectedVOs(
HzAuthenticateBillVO.class.getName(), HzAuthenticateHVO.class.getName(),
HzAuthenticateHVO.class.getName());
for (AggregatedValueObject vo : vos) {
String key = vo.getParentVO().getPrimaryKey();
HzVatinvoiceBillVO vatbillvo = (HzVatinvoiceBillVO) getService().queryBillVOByPrimaryKey(billVOName, key);
}

NC nc5.x笔记(编辑中)的更多相关文章

  1. [ios-必看] WWDC 2013 Session笔记 - iOS7中的多任务【转】

    感谢:http://onevcat.com/2013/08/ios7-background-multitask/ http://www.objc.io/issue-5/multitasking.htm ...

  2. Android笔记——Android中数据的存储方式(二)

    我们在实际开发中,有的时候需要储存或者备份比较复杂的数据.这些数据的特点是,内容多.结构大,比如短信备份等.我们知道SharedPreferences和Files(文本文件)储存这种数据会非常的没有效 ...

  3. [.NET] 《Effective C#》快速笔记 - C# 中的动态编程

    <Effective C#>快速笔记 - C# 中的动态编程 静态类型和动态类型各有所长,静态类型能够让编译器帮你找出更多的错误,因为编译器能够在编译时进行大部分的检查工作.C# 是一种静 ...

  4. java有关 String char 常见问题 编辑中

    1 输入输出有关 Scanner 的next()方法 返回值是String 所以尝试获得char时 应该用input.next().charAt[0] 2 空值 String 中null是指 对象引用 ...

  5. 涂抹mysql笔记-数据库中的权限体系

    涂抹mysql笔记-数据库中的权限体系<>能不能连接,主机名是否匹配.登陆使用的用户名和密码是否正确.mysql验证用户需要检查3项值:用户名.密码和主机来源(user.password. ...

  6. ArcGIS案例学习笔记-点集中最近点对和最远点对

    ArcGIS案例学习笔记-点集中最近点对和最远点对 联系方式:谢老师,135-4855-4328,xiexiaokui@qq.com 目的:对于点图层,查找最近的点对和最远的点对 数据: 方法: 1. ...

  7. 二、Laya学习笔记 ---- Laya中如何新建一个场景UI并使用

    因为我之前是用Egret的,Egret是场景皮肤HomeSceneSkin.exml,然后在场景代码HomeScene代码中为该场景赋值皮肤this.skinName = "HomeScen ...

  8. 《Cocos2d-x游戏开发实战精解》学习笔记3--在Cocos2d-x中播放声音

    <Cocos2d-x游戏开发实战精解>学习笔记1--在Cocos2d中显示图像 <Cocos2d-x游戏开发实战精解>学习笔记2--在Cocos2d-x中显示一行文字 之前的内 ...

  9. easyui datagrid行编辑中数据联动

    easyui的datagrid中行内编辑使用数据联动.即:当编辑产品编号时,该行的产品名称自动根据产品编号显示出来. 在编辑中获取当前行的索引 function getRowIndex(target) ...

随机推荐

  1. Electronic Payment App analysis

    Electronic Payment App is getting more and more popular now. People don't have to bring credit cards ...

  2. 解决linux yum无法安装mysql

    yum源中默认好像是没有mysql的.为了解决这个问题,我们要先下载mysql的repo源. 1. 下载mysql的repo源 wget http://repo.mysql.com/mysql-com ...

  3. eclipse 最全快捷键 分享快乐与便捷<转发的>

    Ctrl+1 快速修复(最经典的快捷键,就不用多说了) Ctrl+D: 删除当前行  Ctrl+Alt+↓ 复制当前行到下一行(复制增加) Ctrl+Alt+↑ 复制当前行到上一行(复制增加) Alt ...

  4. Ixia测试仪的自动化

    Ixia,美国Ixia公司的通信网络测试仪. 1.Ixia的自动化测试场景 测试PC(安装IxOS)AT框架-->Tcl驱动库SIG_Teq_Ixia.tcl(加载 IxTclHal库)---- ...

  5. CSAPP学习笔记(第一,二章)

    1:文本文件指的是ASCII码文件,二进制文件指的是除文本文件以外,其他文件. 2:区分数据对象的唯一判别方法是数据的上下文. 3:描述一下一个hello.c文件的处理过程.首先hello.c文件我们 ...

  6. php阻止网页被用户频繁刷新

    一般情况下,用户浏览网页的速度都是几秒十几秒甚至更长时间刷新一页,但有时候又会遇到网页被恶意快速刷新,从而导致正常用户浏览速度缓慢,如何来解决这个问题呢?可以使用如下代码来实现每ip页面访问数量限制: ...

  7. CentOS平台部署vsftp(基于虚拟用户)

    1. 安装FTP 1 2 [root@task ~]# yum install vsftpd –y [root@task ~]# chkconfig vsftpd on          # 配置开机 ...

  8. oracle建立数据库连接

    除了全库拷贝,这个应该是oracle两个数据库之间进行数据迁移最快的方法了. CREATE PUBLIC DATABASE LINK zhengshi CONNECT TO 用户名 IDENTIFIE ...

  9. nagios二次开发(三)---nagiosql架构简介

    NAGIOSQL数据库结构简介 个人觉得如果了解一个系统的架构,应该先从数据库着手,因为数据库是灵魂,当然前提是这个系统用到了数据库.刚才说到了架构,其实我还真不知架构到底是个什么东东,也不知第一句话 ...

  10. 简单又高效的Access分页语句

    转自:http://www.ljf.cn/archives/2281 Access实现分页其实也可以在查询语句里面做. 除了流行的top分页法之外,其实还有一种更简单,更容易理解,并且效率也不低的分页 ...