Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 根据财务年度为项目中的所有交易生成序列单据编号_Java_Jakarta Ee_Struts2_Transactions_Jpa 2.0 - Fatal编程技术网

Java 根据财务年度为项目中的所有交易生成序列单据编号

Java 根据财务年度为项目中的所有交易生成序列单据编号,java,jakarta-ee,struts2,transactions,jpa-2.0,Java,Jakarta Ee,Struts2,Transactions,Jpa 2.0,在我的项目中,每次最终批准后,几乎有150个交易表,我们需要提供唯一的交易编号。对于该财政年度,每笔交易都将使用doc_代码(字符串)进行标识 Ex:Employee表的文档代码为EMP Department表的文档代码为DEPT 一个名为doc series的表用于获取所有事务最近生成的文档编号 在所有交易记录的单据系列表中,将为0分配一个名为“下一个否”的字段。 每次交易表获得批准时,我们都会将下一个编号增加1。 在批准交易表单时,我们将为该特定单据系列取下一个No值,并将该值指定为交易编号

在我的项目中,每次最终批准后,几乎有150个交易表,我们需要提供唯一的交易编号。对于该财政年度,每笔交易都将使用doc_代码(字符串)进行标识

Ex:Employee表的文档代码为EMP Department表的文档代码为DEPT

一个名为doc series的表用于获取所有事务最近生成的文档编号

在所有交易记录的单据系列表中,将为0分配一个名为“下一个否”的字段。 每次交易表获得批准时,我们都会将下一个编号增加1。 在批准交易表单时,我们将为该特定单据系列取下一个No值,并将该值指定为交易编号

获取下一个事务编号的方法:-

List<IptDocumentseries>idslist=
iidsd.findByDocSeriesCode(doccode,financial_year); 
if(idslist!=null && !idslist.isEmpty())
{
docNo =   idslist.get(0).getNextNo();
} 
public synchronized void updateDocSeries(String doccode,String docseries) 
{

 Long nextno= 0L;

 List<IptDocumentseries>   
 idslist  =iidsd.findByDocSeriesCode(doccode,docseries,portcode,companycode); 

 try{  
 if(idslist!=null && !idslist.isEmpty())
 {
 nextno   = idslist.get(0).getNextNo();
 IptDocumentseries ids = new IptDocumentseries();
 ids = idslist.get(0);
 ids.setNextNo(++nextno);
 ids.setModifiedDate(getCurrentTimeStamp());
 iidsd.update(ids);
 }
 }
 catch(Exception e)
 {
 e.printStackTrace();
 }

 }
Listidslist=
iidsd.findByDocSeriesCode(doccode,财政年度);
if(idslist!=null&&!idslist.isEmpty())
{
docNo=idslist.get(0.getNextNo();
} 
我将在Employee Action类中通过传递其文档代码和财政年度来使用上述方法

完成最终批准后,我将该系列的下一个No增加1

更新下一个事务编号的方法:-

List<IptDocumentseries>idslist=
iidsd.findByDocSeriesCode(doccode,financial_year); 
if(idslist!=null && !idslist.isEmpty())
{
docNo =   idslist.get(0).getNextNo();
} 
public synchronized void updateDocSeries(String doccode,String docseries) 
{

 Long nextno= 0L;

 List<IptDocumentseries>   
 idslist  =iidsd.findByDocSeriesCode(doccode,docseries,portcode,companycode); 

 try{  
 if(idslist!=null && !idslist.isEmpty())
 {
 nextno   = idslist.get(0).getNextNo();
 IptDocumentseries ids = new IptDocumentseries();
 ids = idslist.get(0);
 ids.setNextNo(++nextno);
 ids.setModifiedDate(getCurrentTimeStamp());
 iidsd.update(ids);
 }
 }
 catch(Exception e)
 {
 e.printStackTrace();
 }

 }
public synchronized void updateDocSeries(字符串doccode,字符串docseries)
{
长nextno=0升;
列表
idslist=iidsd.findByDocSeriesCode(doccode、docseries、portcode、companycode);
试试{
if(idslist!=null&&!idslist.isEmpty())
{
nextno=idslist.get(0.getNextNo();
IptDocumentseries ID=新的IptDocumentseries();
ids=idslist.get(0);
id.setNextNo(++nextno);
setModifiedDate(getCurrentTimeStamp());
iidsd.更新(ids);
}
}
捕获(例外e)
{
e、 printStackTrace();
}
}
这是一种正确的方法吗?因为在某些情况下,我们会得到重复和缺失的序列

是否有其他方法生成此文档?不,请让我知道

对不起,如果我误导了你

我的数据库表结构是:

Doc_系列表 序列号——文件编号——下一个文件编号——文件系列——年份——有效(T/F) 1---EMP---7---EMP13-14---F

2---EMP---5---EMP14-15---T

3----DEPT----3----DEPT13-14----F

4----DEPT----6----DEPT14-15----T

电磁脉冲表 S.no----文件编号----Doc\U系列\U年份----批准状态


1---1---EMP13-14----批准

2----EMP13-14----草案

3---2---EMP13-14----批准

4---3---EMP13-14----批准

5---4---EMP13-14----批准

6---5---EMP13-14----批准

7----EMP13-14----草案

8---6---EMP13-14----批准

9---1---EMP14-15----批准

10---2---EMP14-15----批准

11---3---EMP14-15----批准

12---4---EMP14-15----批准


部门表 编号-----文件编号-----文件编号----Doc\U系列\U年份-----批准状态


1---1---DEPT13-14----批准

2----DEPT13-14----草案

3---2---DEPT13-14----批准

4---1---DEPT14-15----批准

5---2---DEPT14-15----批准

6---3---DEPT14-15----批准

7----DEPT14-15----草案

8---4---DEPT14-15----批准

9---5---DEPT14-15----批准


我可以通过使一个文档系列处于活动/非活动状态,将其切换到另一个文档系列,但序列号应根据文档系列的年份继续。

查看是否有帮助。不清楚,是否要为文档生成校验和?