学习心得3

本文介绍了NC开发中常用的包导入,如Java集合和异常处理,以及SQL查询语句的示例,包括自定义参照、编辑保存校验等场景。同时,提出了编程规范,如避免在代码中写复杂SQL,注意空值处理,并强调了集合操作和服务器管理的注意事项。
摘要由CSDN通过智能技术生成

一、NC开发导包汇总

import java.util.List;Listimport java.util.ArrayList;ArrayListimport java.util.Map;Mapimport java.util.HashMap;HashMapimport nc.vo.pubapp.pattern.exception.ExceptionUtils;ExceptionUtilsimport nc.vo.pub.BusinessException;BusinessExceptionimport nc.ui.yhlypx.pub.baseaction.BaseAction;BaseActionimport nc.vo.pubapp.pattern.pub.SqlBuilder;SqlBuilderimport nc.impl.pubapp.pattern.rule.IRule;IRuleimport nc.impl.pubapp.pattern.rule.ICompareRule;ICompareRule

二、NC常用SQL语句总结

1.自定义参照常用sql语句
/--bd_currtype:币种对应65数据字典中的英文名
/--org_orgs:组织对应65数据字典中的英文名
/--where nvl(dr,0=0 其实就是 where dr is null(查询没被删除过的数据,没被删除过的数据dr=0,被删除过的数据dr=1/--单据状态:billstatus为1表示审批通过态
 select h.vbillno,
       ce.name     as currname,
       h.dbilldate,
       orgs.name   as orgsname,
       h.pk_dkht
  from yhly_yhlypxdkht h
  left join bd_currtype ce
    on h.pk_currtype = ce.pk_currtype
  left join org_orgs orgs
    on h.pk_org = orgs.pk_org
 where nvl(h.dr, 0) = 0
   and billstatus = 1

2.编辑某字段自动带出表头表体信息常用sql语句
步骤一:
select pk_dkht from yhly_yhlypxdkht where vbillno='YH042023030600000014'
-->pk_dkht = '1001QA1000000000TN5D'
步骤二:
select * from yhly_yhlypxdkht where nvl(dr,0) = 0 and pk_dkht = 
'1001QA1000000000TN5D'

3.新增保存校验表体某字段不超过某字段
  select num, def1, pk_dkht_b
    from yhly_yhlypxdkht_b
   where nvl(dr, 0) = 0
     and pk_dkht_b in ('1001QA1000000000UPQJ',
                       '1001QA1000000000UPQK',
                       '1001QA1000000000UPQL',
                       '1001QA1000000000UPQM')

4.查询某单据的下游单据类型
/--单据类型:bd_billtype
/--下游单据类型:forwardbilltype
/--编码:pk_billtypecode
select forwardbilltype from bd_billtype where pk_billtypecode='YH06'

5.查询实体vo中的数据

select * from md_class where id = 'f0c092cb-e990-445d-95b9-b6219c707353'

6.通过单据类型查询该单据类型有没有被使用过
select * from bd_billtype where pk_billtypecode = 'YH04' order by ts desc

7.删除表和删除表中全部数据
/--删除表
drop table yhlx_yhlypxhtfkd
/--删除表中全部数据
delete from yhlx_yhlypxhtfkd

三、问题汇总

1.java中加减乘除和等于全都是用函数,不可以直接使用±*/=

2.单据状态字段的变化
自由态:billstatus = -1
提交态:billstatus = 3
审批态:billstatus = 1

3.编辑前校验
UIRefPane refPane = (UIRefPane) e.getBillCardPanel().getHeadItem(“sqdh”).getComponent();
refPane.getRefModel().setWherePart(" currate >= 2 ");

四、问题汇总

1.Sql能写在sql语句里面就不要写在代码判断里

2.注意区分””和null

3.pub_billtemplet(单据模板表)
select * from pub_billtemplet where modulecode like ‘H6%’ order by ts desc

4.参数对象里面可以加VO或BVO参数
public KfckdBVO[] bvos;

5.列表和卡片的区别
列表是功能列表,卡片是一个个功能项里面具体的东西

6.编辑后的计算,能写到一个方法里面就不用多个方法

7.if判断里面不写很多代码,一般都是如下写法:
if(不满足的条件){
return;
}
满足时要处理的代码

8.编辑前过滤的判断条件if(key.equals(“要过滤字段”)

五、问题汇总

1.Collection是一个接口,不能直接创建他的对象,只能创建它实现类的对象。

2.Collection coll = new ArrayList<>(); //多态的方式创建对象

3.因为Collection里面定义的是共性的方法,所以此时不能通过索引进行删除,只能通过元素的对象进行删除。

4.同一个端口只能启动一个服务器,不然会报错。

5.导入数据的时候必须按照规定的格式才可以把数据导入进去。

6.写sql语句时,不关联其他表就能查出数据的就不要关联其他表。

7.编辑前写where过滤条件,一定要录个日志看看里面sql语句是怎么写的,通过里面的sql语句去加where过滤条件

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

和安韩Pro

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值