?? file_load.jsp
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<%
response.setHeader("Cache-Control","no-store");
response.setHeader("Pragma","no-cache");
response.setDateHeader("Expires",0);
%>
<%@page contentType="text/html;charset=gb2312"%>
<%@page language = "java"%>
<%@page import = "java.lang.*"%>
<%@page import = "publib.*"%>
<jsp:useBean id="DbBean" class="publib.OperDbBean" scope="page"></jsp:useBean>
<%
if((session.getValueNames()).length==0)
{
out.println("<SCRIPT language='JavaScript'>");
out.println("self.location='/sysmang/loginagain.html';");
out.println("</SCRIPT>");
return;
}
//定義區
Pub_file pf = new Pub_file();
Pub_parameter pp = new Pub_parameter();
java.sql.ResultSet rs = null;
String [][] fmf = null; //[file][mc][flag]:文件名,標志0/1 /2 文件不存在/存在已導入/存在未導入
//[....][..][....]
String [][] fmf_fy = null; //費用文件的
String [] filelist = null; //目錄下實際存在的數據文件
String [] filelist_fy = null; //目錄下實際存在的費用文件
String filepath = "";
String dqgzr = "";
String dqgzr_filter = "";//當前工作日期的后綴形式:年+月+日
String dqgzr_fyjk_filter = ""; //當前工作日期的費用文件后綴形式:年+月+01
String f_dqgzr = ""; //費用類文件的當前工作日期形式:年/月/01
String resultZZ = "<TR><TD align='right' ><input type='checkbox' name='check' value='zzfilelist' ></TD><TD align='left' colspan='3'> 總帳類數據文件</TD></TR>"; //總帳文件的顯示結果
String resultFH = "<TR><TD align='right' ><input type='checkbox' name='check' value='fhfilelist' ></TD><TD align='left' colspan='3' > 分戶類數據文件</TD></TR>"; //分戶文件的顯示結果
String resultMX = "<TR><TD align='right' ><input type='checkbox' name='check' value='mxfilelist' ></TD><TD align='left' colspan='3' > 明細類數據文件</TD></TR>"; //明細文件的顯示結果
String resultFY = "<TR><TD align='right' ><input type='checkbox' name='check' value='fyfilelist' ></TD><TD align='left' colspan='3' > 費用類數據文件</TD></TR>"; //費用文件的顯示結果
String resultJX = "<TR><TD align='right' ><input type='checkbox' name='check' value='jxfilelist'></TD><TD align='left' colspan='3' > 結息清單類數據文件</TD></TR>"; //結息文件的顯示結果
String resultGL = "<TR><TD align='right' ><input type='checkbox' name='check' value='glfilelist' ></TD><TD align='left' colspan='3' > 管理人員費用類數據文件</TD></TR>"; //管理文件的顯示結果
String resultGY = "<TR><TD align='right' ><input type='checkbox' name='check' value='gyfilelist' ></TD><TD align='left' colspan='3' > 柜員指標類數據文件</TD></TR>"; //柜員文件的顯示結果
String resultYY = "<TR><TD align='right' ><input type='checkbox' name='check' value='yyfilelist' ></TD><TD align='left' colspan='3' > 營業費用類數據文件</TD></TR>"; //營業費用文件的顯示結果
Integer Toint = new Integer(0);
int num = 0;
//得到參數字典的文件定義
try
{
rs = DbBean.sqlQuery("select count(*) from CSZD where substring(CSBM,1,4) = 'file' and substring(BZ,1,1) not in ( '4','7') ");
rs.next();
fmf = new String[rs.getInt(1)][4];
rs.close();
rs = DbBean.sqlQuery("select CSZ,CSMC,BZ from CSZD where substring(CSBM,1,4) = 'file' and substring(BZ,1,1) not in ( '4','7') ");
for ( int i = 0 ; rs.next() ; i++ )
{
//給數組賦值
fmf[i][0] = rs.getString("CSZ").trim();//數據文件名前綴
fmf[i][1] = rs.getString("CSMC").trim();//數據文件說明
fmf[i][2] = "0";
fmf[i][3] = rs.getString("BZ").trim();//數據文件的類型
/* 0 總帳文件
1 分戶文件
2 明細文件
3 結息文件
5 管理人員文件
6 柜員文件*/
}
rs.close();
//得到費用文件數組fmf_fy
rs = DbBean.sqlQuery("select count(*) from CSZD where substring(CSBM,1,4) = 'file' and substring(BZ,1,1) in ( '4','7') ");
rs.next();
fmf_fy = new String[rs.getInt(1)][4];
rs.close();
rs = DbBean.sqlQuery("select CSZ,CSMC,BZ from CSZD where substring(CSBM,1,4) = 'file' and substring(BZ,1,1) in ( '4','7') ");
for ( int i = 0 ; rs.next() ; i++ )
{
//給數組賦值
fmf_fy[i][0] = rs.getString("CSZ").trim();//數據文件名前綴
fmf_fy[i][1] = rs.getString("CSMC").trim();//數據文件說明
fmf_fy[i][2] = "0";
fmf_fy[i][3] = rs.getString("BZ").trim();//數據文件的類型
/*
4 費用文件
7 營業費用文件
*/
}
rs.close();
filepath = pp.getCSZ("SJWJML").trim();
dqgzr = pp.getCSZ("DQGZR").trim();
//得到當前工作日期的文件名后綴形式
dqgzr_filter = dqgzr.substring(0,4)+dqgzr.substring(5,7)+dqgzr.substring(8,10);//將日期字符串去'/'
//得到當前工作日期的費用文件名后綴形式
dqgzr_fyjk_filter = dqgzr.substring(0,4)+dqgzr.substring(5,7)+"01";//將日期字符串去'/'
//得到費用類文件的當前工作日期形式
f_dqgzr = dqgzr.substring(0,8)+"01";
//設置數據文件路徑
//pf.setFilePath(filepath);
//getFileList(String)方法暫時無法使用??????原因不明
//filelist = pf.getFileList();得到含當日日期的數據文件列表
//實現得到含當日日期的數據文件列表 的處理;
filelist = new String[50];
filelist_fy = new String[20];
String [] list = null;
java.io.File ff = null;
list = pf.getFileList();
if ((list == null)||(list.length == 0))
{
System.out.println("file_load.jsp:文件列表為空");
out.println("文件列表為空");
return;
}
int sm = 0;
//得到filelist數組,存放數據文件目錄下的當日數據文件,不含本月費用文件
//隱含條件:費用類文件的后綴日期為當月+01,而該費用文件的提供時間一般為月末,所以當前日期為01日時,本月的費用類文件不存在;可保證不選入費用類文件
for ( int i = 0 ; i <= list.length-1 ; i++ )
{
ff = new java.io.File(filepath,list[i]);
if ( (list[i].indexOf(dqgzr_filter)!=-1)&&ff.isFile())
{
filelist[sm+1] = list[i];
sm++;
}
}
filelist[0] = ""+sm; //數組filelist[0]存放文件個數
//不多余,因為對文件的過濾應封裝在一個方法中,文件的個數通過數組的第一個元素傳遞出來
num = Toint.parseInt(filelist[0]);
//查找當日存在的數據文件,得到fmf數組的第一列[0],存放當日數據文件的全名;得到fmf數組的第三列[2],存放狀態
for ( int i = 0 ; i <= fmf.length-1 ; i++ )
{
for ( int n = 1 ; n <= num ; n++ )
{
//將當日數據文件名的前綴名與參數字典中的前綴名相比較,如相同,則將數據文件全名賦給fmf
if ( filelist[n].substring(0,filelist[n].indexOf(dqgzr_filter)).equals(fmf[i][0]))
{
fmf[i][0] = filelist[n];
fmf[i][2] = "2";
}
}
}
sm = 0;
//得到filelist_fy數組,存放數據文件目錄下的本月費用文件
for ( int i = 0 ; i <= list.length-1 ; i++ )
{
ff = new java.io.File(filepath,list[i]);
if ( list[i].indexOf( dqgzr_fyjk_filter)!=-1 &&( list[i].substring(0,3).equals("130") || list[i].substring(0,4).equals("yyfy") )&&ff.isFile())
{
filelist_fy[sm+1] = list[i];
sm++;
}
}
filelist_fy[0] = ""+sm; //數組filelist_fy[0]存放文件個數
//不多余,因為對文件的過濾應封裝在一個方法中,文件的個數通過數組的第一個元素傳遞出來
num = Toint.parseInt(filelist_fy[0]);
//查找當月的費用文件,得到fmf_fy數組的第一列[0],存放當月費用文件全名;得到fmf_fy數組的第三列[2],存放狀態
for ( int i = 0 ; i <= fmf_fy.length-1 ; i++ )
{
for ( int n = 1 ; n <= num ; n++ )
{
//將費用文件名的前綴名與參數字典中的前綴名相比較,如相同,則將文件全名賦給fmf_fy
if ( filelist_fy[n].substring(0,filelist_fy[n].indexOf(dqgzr_fyjk_filter)).equals(fmf_fy[i][0]))
{
fmf_fy[i][0] = filelist_fy[n];
fmf_fy[i][2] = "2";
}
}
}
//判斷文件是否已導入
for ( int i = 0 ; i <= fmf.length-1 ; i++ )
{
//得到數據文件的對應階段編碼
// pf.setFileName(fmf[i][0]);
String jdbm = pf.getJDBM(fmf[i][0]);
ff = new java.io.File(filepath,fmf[i][0]);
//選擇條件符合jdbm+jgbm+rq當日+zt成功 的紀錄|||???應對zt 0/1分情況討論,以后頁面上有備注字段???
rs = DbBean.sqlQuery("select * from JCRZ where JGBM = '000000000' and JDBM = '"+jdbm+"' and Rq = '"+dqgzr+"' and ZT = '1' ");
if ( rs.next() )
{
if (ff.exists())
fmf[i][2] = "1" ;
}
}
//判斷費用文件是否已導入
for ( int i = 0 ; i <= fmf_fy.length-1 ; i++ )
{
//得到費用文件的對應階段編碼
// pf.setFileName(fmf_fy[i][0]);
String jdbm = pf.getJDBM(fmf_fy[i][0]);
ff = new java.io.File(filepath,fmf_fy[i][0]);
//選擇條件符合jdbm+jgbm+rq當日+zt成功 的紀錄|||???應對zt 0/1分情況討論,以后頁面上有備注字段???
rs = DbBean.sqlQuery("select * from JCRZ where JGBM = '000000000' and JDBM = '"+jdbm+"' and Rq = '"+f_dqgzr+"' and ZT = '1' ");
if ( rs.next() )
{
if (ff.exists())
fmf_fy[i][2] = "1" ;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -