viewmoneysum.java

来自「自行开发的j2me小软件」· Java 代码 · 共 185 行

JAVA
185
字号
 /*
 * 创建日期 2005-1-28
 *
 * TODO 要更改此生成的文件的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
package src;

import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
//import javax.microedition.lcdui.Image;
//import javax.microedition.lcdui.ImageItem;

import javax.microedition.rms.RecordEnumeration;
import javax.microedition.rms.RecordStore;

/**
 * @author ryu-java
 *
 * TODO 要更改此生成的类型注释的模板,请转至
 * 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
public class ViewMoneySum extends myScreen{
	Form MoneySumForm=new Form("$财产状况$");
	Command Back =new Command("返回",Command.SCREEN,1);
	Command Count =new Command("重新统计",Command.SCREEN,1);
	int Sum[]=new int[4];
	int RsSum[]=new int[4];
	
	String SumDBname[]={myScreen.INCOME,myScreen.OUTGO,myScreen.BORROW,myScreen.LEND};
	public ViewMoneySum()
	{
		String cash="";
		String MoneySum="";
		    MoneySum ms=new MoneySum();
	        ms.setDBname(myScreen.MONEYSUM);
	        ms.GetRsNums();
	        if(ms.getRsNum()==0){
	        	build();
	        }
	        else{
	        	ms.setRid(1);
	        	ms.GetData();
	        	Sum[0]=ms.getincome();
	        	Sum[1]=ms.getoutgo();
	        	Sum[2]=ms.getborrow();
	        	Sum[3]=ms.getlend();
	        	RsSum[0]=ms.getincomecount();
	        	RsSum[1]=ms.getoutgocount();
	        	RsSum[2]=ms.getborrowcount();
	        	RsSum[3]=ms.getlendcount();
	        	String tpIncome=Integer.toString(Sum[0]/100)+"."+ (((Sum[0]%100))>10?Integer.toString(Sum[0]%100):("0"+Integer.toString(Sum[0]%100)));
	    		String tpOutgo=Integer.toString(Sum[1]/100)+"."+ (((Sum[1]%100))>10?Integer.toString(Sum[1]%100):("0"+Integer.toString(Sum[1]%100)));
	    		String tpBorrow=Integer.toString(Sum[2]/100)+"."+ (((Sum[2]%100))>10?Integer.toString(Sum[2]%100):("0"+Integer.toString(Sum[2]%100)));
	    		String tpLend=Integer.toString(Sum[3]/100)+"."+ (((Sum[3]%100))>10?Integer.toString(Sum[3]%100):("0"+Integer.toString(Sum[3]%100)));
	    		if((Sum[0]-Sum[1]-Sum[2]+Sum[3])>0){
	    		cash=Integer.toString((Sum[0]-Sum[1]-Sum[2]+Sum[3])/100)+"."+ ((((Sum[0]-Sum[1]-Sum[2]+Sum[3])%100))>10?Integer.toString((Sum[0]-Sum[1]-Sum[2]+Sum[3])%100):("0"+Integer.toString((Sum[0]-Sum[1]-Sum[2]+Sum[3])%100)));
	    		}
	    		else 
	    		{
	    			int ttsum=0-(Sum[0]-Sum[1]-Sum[2]+Sum[3]);
	    			cash="-"+Integer.toString(ttsum/100)+"."+ (((ttsum%100))>10?Integer.toString(ttsum%100):("0"+Integer.toString(ttsum%100)));
	    		}
	    		if((Sum[0]-Sum[1])>0){
	    		MoneySum=Integer.toString((Sum[0]-Sum[1])/100)+"."+ ((((Sum[0]-Sum[1])%100))>10?Integer.toString((Sum[0]-Sum[1])%100):("0"+Integer.toString((Sum[0]-Sum[1])%100)));
	    		}
	    		else
	    		{
	    			int ttsum=0-(Sum[0]-Sum[1]);
	    			MoneySum="-"+Integer.toString(ttsum/100)+"."+ (((ttsum%100))>10?Integer.toString(ttsum%100):("0"+Integer.toString(ttsum%100)));
	    			
	    		}
	    		MoneySumForm.append("\n收入单:"+RsSum[0]+" 张\n"+"收入共:"+tpIncome+" 元\n" +
	    				"--------------\n"+"支出单:"+RsSum[1]+" 张\n"+"支出共:"+tpOutgo+" 元\n--------------"+
	    				"\n借出单:"+RsSum[2]+" 张\n"+"借出共:"+tpBorrow+" 元\n--------------"+
	    				"\n借入单:"+RsSum[3]+" 张\n"+"借入共:"+tpLend+" 元\n--------------"+
	    				"\n$现金为:"+cash+" 元"+	"\n$财产为:"+MoneySum+" 元");
	        }

		this.addCommand(Back);
		this.addCommand(Count);
		this.setMainForm(MoneySumForm);
		this.installCommands();
	   }
	
	
	public int handleCommand (Command cmd,Displayable s)
	{
		 if(cmd==Back)
		    {
			return myScreen.MAINFORM;
		    }
		 else if(cmd==Count)
		 {
		 	build();
		 }
		 return myScreen.WITHOUT;
	}
	
	private void build()
	{
		String cash="";
		String MoneySum="";
		for(int i=0;i<Sum.length;i++)
		{
			Sum[i]=0;
			RsSum[i]=0;
		}
		
		    for(int i=0;i<MoneySumForm.size();i++)
			MoneySumForm.delete(0);
		
		
		RecordStore DataS;
		MoneyData vd=new MoneyData();
		long start=System.currentTimeMillis();
		try
		{
	   	for(int i=0;i<4;i++)
	   	{
	   	vd.setDBname(SumDBname[i]);
		DataS=vd.openRS();

		
			RecordEnumeration re=DataS.enumerateRecords(null,null,false);
			while(re.hasNextElement())
			{
				byte tmp[]=re.nextRecord();
				vd.decode(tmp);
				Sum[i]+=vd.getSum();
				RsSum[i]++;
			}
	
			DataS.closeRecordStore();
	   	}
				
		}catch(Exception e)
		{
			
		}
        MoneySum ms=new MoneySum(Sum[0],RsSum[0],Sum[1],RsSum[1],Sum[2],RsSum[2],Sum[3],RsSum[3]);
        ms.setDBname(myScreen.MONEYSUM);
        ms.GetRsNums();
        if(ms.getRsNum()==0)
        	ms.AddData();
        else{
        	ms.setRid(1);
        	ms.SetData();
        }
        
		String tpIncome=Integer.toString(Sum[0]/100)+"."+ (((Sum[0]%100))>10?Integer.toString(Sum[0]%100):("0"+Integer.toString(Sum[0]%100)));
		String tpOutgo=Integer.toString(Sum[1]/100)+"."+ (((Sum[1]%100))>10?Integer.toString(Sum[1]%100):("0"+Integer.toString(Sum[1]%100)));
		String tpBorrow=Integer.toString(Sum[2]/100)+"."+ (((Sum[2]%100))>10?Integer.toString(Sum[2]%100):("0"+Integer.toString(Sum[2]%100)));
		String tpLend=Integer.toString(Sum[3]/100)+"."+ (((Sum[3]%100))>10?Integer.toString(Sum[3]%100):("0"+Integer.toString(Sum[3]%100)));
		if((Sum[0]-Sum[1]-Sum[2]+Sum[3])>0){
    		cash=Integer.toString((Sum[0]-Sum[1]-Sum[2]+Sum[3])/100)+"."+ ((((Sum[0]-Sum[1]-Sum[2]+Sum[3])%100))>10?Integer.toString((Sum[0]-Sum[1]-Sum[2]+Sum[3])%100):("0"+Integer.toString((Sum[0]-Sum[1]-Sum[2]+Sum[3])%100)));
    		}
    		else 
    		{
    			int ttsum=0-(Sum[0]-Sum[1]-Sum[2]+Sum[3]);
    			cash="-"+Integer.toString(ttsum/100)+"."+ (((ttsum%100))>10?Integer.toString(ttsum%100):("0"+Integer.toString(ttsum%100)));
    		}
    		if((Sum[0]-Sum[1])>0){
    		MoneySum=Integer.toString((Sum[0]-Sum[1])/100)+"."+ ((((Sum[0]-Sum[1])%100))>10?Integer.toString((Sum[0]-Sum[1])%100):("0"+Integer.toString((Sum[0]-Sum[1])%100)));
    		}
    		else
    		{
    			int ttsum=0-(Sum[0]-Sum[1]);
    			MoneySum="-"+Integer.toString(ttsum/100)+"."+ (((ttsum%100))>10?Integer.toString(ttsum%100):("0"+Integer.toString(ttsum%100)));
    			
    		}
    		long end=System.currentTimeMillis();
		MoneySumForm.append("\n收入单:"+RsSum[0]+" 张\n"+"收入共:"+tpIncome+" 元\n" +
				"--------------\n"+"支出单:"+RsSum[1]+" 张\n"+"支出共:"+tpOutgo+" 元\n--------------"+
				"\n借出单:"+RsSum[2]+" 张\n"+"借出共:"+tpBorrow+" 元\n--------------"+
				"\n借入单:"+RsSum[3]+" 张\n"+"借入共:"+tpLend+" 元\n--------------"+
				"\n$现金为:"+cash+" 元"+	"\n$财产为:"+MoneySum+" 元"+"\n统计用时:"+(end-start)+"ms");
		
		//MoneySumForm.append("\n统计用时:"+(end-start)+"ms");	
	}


}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?