Commit 03461a6cbfed92c78d773505c2f6541da2707912

Authored by 山上
1 parent 3febdfca

ファイル整理

Too many changes to show.

To preserve performance only 26 of 26+ files are displayed.

1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:外部リンクからのグループログイン処理  
4 -//* プログラムID:SIM0001.php  
5 -//* 機能 :外部リンクからのグループログイン  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include('./inc/const.inc');  
10 -  
11 -$cookGroupID = $_COOKIE["cookie_GroupID"];  
12 -$cookGroupPW = $_COOKIE["cookie_GroupPW"];  
13 -  
14 -include('./inc/smarty.conf');  
15 -  
16 -$gid = $_POST["gid"];  
17 -$gpw = $_POST["gpw"];  
18 -  
19 -?>  
20 -<html>  
21 -<head>  
22 -<meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
23 -<meta http-equiv="content-style-type" content="text/css">  
24 -<meta name="robots" content="noindex, nofollow">  
25 -<title></title>  
26 -<script language="javascript">  
27 -function trans(){  
28 -  
29 - if (document.frm.gid.value == false  
30 - && document.frm.gpw.value == false) {  
31 - location.href = "<?PHP echo $DEFARR[1] ?>";  
32 - }else{  
33 - document.frm.action = "SIM0010.php";  
34 - document.frm.method="POST";  
35 - document.frm.submit();  
36 - }  
37 -  
38 -}  
39 -</script>  
40 -</head>  
41 -<body onload="trans();">  
42 -<form name="frm">  
43 -<input type="hidden" name="gid" value="<?PHP echo $gid ?>">  
44 -<input type="hidden" name="gpw" value="<?PHP echo $gpw ?>">  
45 -<input type="hidden" name="backurl" value="hp">  
46 -</form>  
47 -</body>  
48 -</html>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:ユーザログイン  
4 -//* プログラムID:SIM0010.php  
5 -//* 機能 :グループログインチェック+ユーザログイン画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/dbcon_group.inc");  
10 -include('./inc/smarty.conf');  
11 -include('./inc/const.inc');  
12 -  
13 -if(trim($_POST["gid"]) != "" && trim($_POST["gpw"]) != ""){  
14 - $gid = trim($_POST["gid"]);  
15 - $gpw = trim($_POST["gpw"]);  
16 -}else{  
17 -  
18 - header("Location:".$DEFARR[1]);  
19 - exit;  
20 -}  
21 -  
22 -$strSQLGroup="SELECT * From group_inf where group_id='".$gid."' and group_pw='".$gpw."'";  
23 -$objRecGroup = pg_exec($strSQLGroup);  
24 -if($objRecGroup==false){  
25 - echo("SQL実行に失敗しました(SELECT)");  
26 - exit;  
27 -}  
28 -session_unregister("PHP_DB_NAME");  
29 -session_unregister("PHP_GROUP_NAME");  
30 -  
31 -if(pg_numrows($objRecGroup) > 0){  
32 - $objGroup = pg_fetch_object($objRecGroup, 0);  
33 - $PHP_DB_NAME = $objGroup->db_name;  
34 - $PHP_GROUP_NAME = $objGroup->group_name;  
35 - session_register("PHP_DB_NAME");  
36 - session_register("PHP_GROUP_NAME");  
37 -  
38 - //クッキーセット  
39 - setcookie("cookie_GroupID",$gid,time() + 604800);  
40 - setcookie("cookie_GroupPW",$gpw,time() + 604800);  
41 -  
42 -}else{  
43 - if ($_POST["backurl"] == hp) {  
44 - header("Location:".$DEFARR[1]);  
45 - }else{  
46 - header("Location:./index.php?err=1");  
47 - }  
48 - exit;  
49 -}  
50 -  
51 -//最終ログイン時間  
52 -$lastDate = date("Y/m/d H:i:s");  
53 -  
54 -$strSQLGroup="UPDATE group_inf SET last_login = '". $lastDate ."' WHERE group_id='".$gid."' AND group_pw='".$gpw."'";  
55 -$objRecGroup = pg_exec($strSQLGroup);  
56 -if($objRecGroup==false){  
57 - echo("SQL実行に失敗しました(SELECT)");  
58 - exit;  
59 -}  
60 -  
61 -  
62 -//ユーザリスト  
63 -include("./inc/dbcon.inc");  
64 -$strSQL = "select * from user_inf order by disp_rank";  
65 -$objRec = pg_exec($strSQL);  
66 -if($objRec==false){  
67 - echo("SQL実行に失敗しました(SELECT)");  
68 - exit;  
69 -}  
70 -$userCMB = "";  
71 -for ($intCnt = 0; $intCnt < pg_numrows($objRec); $intCnt++) {  
72 - $objUser = pg_fetch_object($objRec, $intCnt);  
73 - $userCMB .= '<option value="'.$objUser->user_seq.'"';  
74 - if(($objUser->user_seq == $_COOKIE["cookie_user_cd"])){  
75 - $userCMB .= " selected";  
76 - }  
77 - $userCMB .= '>'.$objUser->user_namekj."</option>";  
78 -}  
79 -  
80 -//HTMLヘッダの書き出し  
81 -?>  
82 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
83 -<html>  
84 -<head>  
85 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
86 - <meta http-equiv="content-style-type" content="text/css">  
87 - <meta name="robots" content="noindex, nofollow">  
88 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
89 - <link rel="stylesheet" href="./templates/SIMlite.css" type="text/css" />  
90 -</head>  
91 -<?PHP  
92 -  
93 -//デバッグ  
94 -//echo("gid:".$gid." gpw:".$gpw." useq:".$useq." upw:".$upw." <br>" );  
95 -  
96 -//define  
97 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
98 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
99 -$o_smarty->assign('DEFARR',$DEFARR);  
100 -  
101 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
102 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
103 -$o_smarty->assign('userCMB',$userCMB);  
104 -$o_smarty->assign('gid',$gid);  
105 -$o_smarty->assign('gpw',$gpw);  
106 -$o_smarty->display('SIM0010.tpl');  
107 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:ユーザログインチェック  
4 -//* プログラムID:SIM0011.php  
5 -//* 機能 :グループログインチェック  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/dbcon.inc");  
10 -include('./inc/smarty.conf');  
11 -  
12 -$errFlg = 1;  
13 -  
14 - session_unregister("PHP_BUMON_SEQ");  
15 - session_unregister("PHP_BUMON_NAME");  
16 - session_unregister("PHP_BUMON_ADMIN");  
17 - session_unregister("PHP_USER_SEQ");  
18 - session_unregister("PHP_USER_NAME");  
19 - session_unregister("PHP_USER_ADMIN");  
20 - session_unregister("PHP_USER_NYUKIN");  
21 - session_unregister("PHP_USER_SHIKIN");  
22 -  
23 -if(trim($_POST["useq"]) != "" && trim($_POST["upw"]) != ""){  
24 -  
25 - $useq = trim($_POST["useq"]);  
26 - $upw = trim($_POST["upw"]);  
27 -  
28 -// $strSQL = "SELECT * FROM user_inf WHERE user_seq = '".$useq."' AND user_pw='".$upw."'";  
29 -  
30 - $strSQL = "SELECT bm.bumon_seq, bm.bumon_name, bm.all_flg, us.user_seq, us.user_namekj, ";  
31 - $strSQL .= "us.admin_flg, us.nyukin_flg, us.shikin_flg FROM user_inf AS us ";  
32 - $strSQL .= "INNER JOIN bumon_tbl AS bm ON (us.bumon_seq = bm.bumon_seq) ";  
33 - $strSQL .= "WHERE us.user_seq = '".$useq."' AND us.user_pw='".$upw."'";  
34 -  
35 -  
36 - $objRecSet = pg_exec($strSQL);  
37 - if($objRecSet==false){  
38 - echo("SQL実行に失敗しました(SELECT)");  
39 - exit;  
40 - }  
41 -  
42 -//デバッグ  
43 -//echo($strSQL."<br>useq:".$useq."<br>numrows:".pg_numrows($objRecSet));  
44 -  
45 - if (pg_numrows($objRecSet) == 1) {  
46 - $objData = pg_fetch_object($objRecSet, 0);  
47 - $PHP_BUMON_SEQ=($objData->bumon_seq);  
48 - $PHP_BUMON_NAME=($objData->bumon_name);  
49 - $PHP_BUMON_ADMIN=($objData->all_flg);  
50 - $PHP_USER_SEQ=($objData->user_seq);  
51 - $PHP_USER_NAME=($objData->user_namekj);  
52 - $PHP_USER_ADMIN=($objData->admin_flg);  
53 - $PHP_USER_NYUKIN=($objData->nyukin_flg);  
54 - $PHP_USER_SHIKIN=($objData->shikin_flg);  
55 -  
56 - session_register("PHP_BUMON_SEQ");  
57 - session_register("PHP_BUMON_NAME");  
58 - session_register("PHP_BUMON_ADMIN");  
59 - session_register("PHP_USER_SEQ");  
60 - session_register("PHP_USER_NAME");  
61 - session_register("PHP_USER_ADMIN");  
62 - session_register("PHP_USER_NYUKIN");  
63 - session_register("PHP_USER_SHIKIN");  
64 - setcookie("cookie_user_cd",$useq,time() + 604800);  
65 -  
66 - $errFlg = 0;  
67 -  
68 - }else{  
69 - $errFlg = 1;  
70 - }  
71 -}else{  
72 - $errFlg = 1;  
73 -}  
74 -  
75 -if($errFlg == 0){  
76 - header("Location:./SIM0100.php");  
77 - exit;  
78 -}else{  
79 -?>  
80 -<html>  
81 -<head>  
82 -<meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
83 -<meta http-equiv="content-style-type" content="text/css">  
84 -<meta name="robots" content="noindex, nofollow">  
85 -<title></title>  
86 -<script language="javascript">  
87 -function trans(){  
88 - document.frm.action = "SIM0010.php";  
89 - document.frm.method="POST";  
90 - document.frm.submit();  
91 -}  
92 -</script>  
93 -</head>  
94 -<body onload="trans();">  
95 -<form name="frm">  
96 -  
97 -<input type="hidden" name="gid" value="<?PHP echo trim($_POST["gid"])?>">  
98 -<input type="hidden" name="gpw" value="<?PHP echo trim($_POST["gpw"])?>">  
99 -<input type="hidden" name="uid" value="<?PHP echo trim($_POST["useq"])?>">  
100 -<input type="hidden" name="upw" value="<?PHP echo trim($_POST["upw"])?>">  
101 -  
102 -</form>  
103 -</body>  
104 -</html>  
105 -<?PHP  
106 -}  
107 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:メニュー  
4 -//* プログラムID:SIM0100.php  
5 -//* 機能 :メニュー画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -//初期データない場合は設定  
17 -$strSQL = "select * from start_tbl";  
18 -$objRec = pg_exec($strSQL);  
19 -if($objRec==false){  
20 - echo("SQL実行に失敗しました(SELECT)");  
21 - exit;  
22 -}  
23 -if(pg_numrows($objRec)>0){  
24 - $objData = pg_fetch_object($objRec, 0);  
25 - $START_YEAR = $objData->start_year;  
26 - $START_MONTH = $objData->start_month;  
27 - $START_MONEY = $objData->start_money;  
28 -}else{  
29 - $strSQL2 = "insert into start_tbl (start_year, start_month, start_money) values(".date("Y").", ".date("n").", 0)";  
30 - $objRec2 = pg_exec($strSQL2);  
31 - if($objRec2==false){  
32 - echo("SQL実行に失敗しました(INSERT)");  
33 - exit;  
34 - }  
35 - $START_YEAR = date("Y");  
36 - $START_MONTH = date("n");  
37 - $START_MONEY = 0;  
38 -}  
39 -session_register("START_YEAR");  
40 -session_register("START_MONTH");  
41 -session_register("START_MONEY");  
42 -  
43 -  
44 -  
45 -//HTMLヘッダの書き出し  
46 -?>  
47 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
48 -<html>  
49 -<head>  
50 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
51 - <meta http-equiv="content-style-type" content="text/css">  
52 - <meta name="robots" content="noindex, nofollow">  
53 - <script type="text/javascript" src="./js/SIM0100.js"></script>  
54 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
55 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
56 -</head>  
57 -<?PHP  
58 -  
59 -//タイトル部分の表示  
60 -dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0100");  
61 -  
62 -//メインHTML部分の表示  
63 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
64 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
65 -$o_smarty->assign('DEFARR',$DEFARR);  
66 -  
67 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
68 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
69 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
70 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
71 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
72 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
73 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
74 -$o_smarty->display('SIM0100.tpl');  
75 -  
76 -//フッタ部分の表示  
77 -dspFooter($DEFARR[1], $DEFARR[3]);  
78 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:入金画面  
4 -//* プログラムID:SIM0200.php  
5 -//* 機能 :入金画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -$yyyy = $_POST["yyyy"]; //年  
17 -$bSeq = $_POST["bSeq"]; //期間区分シーケンスNo.  
18 -$dSeq = $_POST["dSeq"]; //項目シーケンスNo.  
19 -$chgmode = $_GET["chgmode"]; //絞込みモード  
20 -$bFlg = $_GET["back"]; //入力画面から遷移フラグ  
21 -$sMode = $_POST["sMode"]; //収支モード  
22 -$bumon = $PHP_BUMON_SEQ;  
23 -  
24 -//メニューボックスの年取得  
25 -if($yyyy == False){  
26 - $yyyy = date("Y");  
27 -}  
28 -$lstY = year_lst($yyyy);  
29 -  
30 -//メニューボックスの分類名取得  
31 -if ($bFlg ==="1") {  
32 - $bunrui = edit_bunrui("999");  
33 -}else{  
34 - $bunrui = edit_bunrui($bSeq);  
35 -}  
36 -  
37 -//メニューボックスの大項目取得  
38 -if ($chgmode === "b") {  
39 - $dkoumoku = edit_dai($bumon, $bSeq, "999");  
40 -}elseif($bFlg ==="1") {  
41 - $dkoumoku = edit_dai($bumon, "999", "999");  
42 -}else{  
43 - $dkoumoku = edit_dai($bumon, $bSeq, $dSeq);  
44 -}  
45 -  
46 -//デバッグ  
47 -//echo("sMode".$sMode."<br>");  
48 -  
49 -//初回表示時全件表示  
50 -if ($bSeq == False || $bFlg == 1){  
51 - $bSeq = "999";  
52 -}  
53 -if ($dSeq == False || $bFlg == 1){  
54 - $dSeq = "999";  
55 -}  
56 -  
57 -$strSQL = "";  
58 -  
59 -//デバッグ  
60 -//echo("bSeq:".$bSeq." dseq:".$dSeq." cseq:".$cSeq." chgmode:".$chgmode."bFlg:".$bFlg."<br>");  
61 -  
62 -//収支切替・更新  
63 -if ($bSeq == True && $dSeq == True) {  
64 -  
65 - $strSQL = "SELECT bt.bunrui_seq, bt.bunrui_name, kt.koumoku_seq AS kt_seq, kt.koumoku_name AS kt_name, ";  
66 - $strSQL .= "kt2.koumoku_seq AS kt2_seq, kt2.koumoku_name AS kt2_name ";  
67 - $strSQL .= "FROM bunrui_tbl AS bt INNER JOIN koumoku_tbl AS kt ON (bt.bunrui_seq = kt.koumoku_parent) ";  
68 - $strSQL .= "INNER JOIN koumoku_tbl AS kt2 ON (kt.koumoku_seq = kt2.koumoku_parent) ";  
69 - $strSQL .= "INNER JOIN kengen_tbl AS ken ON (ken.koumoku_seq = kt2.koumoku_seq) ";  
70 - $strSQL .= "WHERE kt.koumoku_mode = 1 AND kt2.koumoku_mode = 2 AND ken.bumon_seq = ".$bumon." " ;  
71 -  
72 - //入力画面からの遷移時、全件表示  
73 - if ($bFlg == False){  
74 - //分類の絞込み  
75 - if ($bSeq !== "999") {  
76 - $strSQL .= "AND bt.bunrui_seq = ". $bSeq ." ";  
77 - //大項目の絞込み  
78 - if ($chgmode !== "b") {  
79 - if ($dSeq !== "999") {  
80 - $strSQL .= "AND kt.koumoku_seq = ". $dSeq ." ";  
81 - }  
82 - }  
83 - }  
84 - }  
85 - $strSQL .= "ORDER BY bt.disp_rank, kt.disp_rank, kt2.disp_rank";  
86 -}  
87 -  
88 -$objRec = pg_exec($strSQL);  
89 -if($objRec==false){  
90 - echo("SQL実行に失敗しました(SELECT)");  
91 - exit;  
92 -}  
93 -$bSeq = 0;  
94 -$dSeq = 0;  
95 -  
96 -//デバッグ  
97 -//echo("<br> SQL:".$strSQL."num_rows ".pg_num_rows($objRec));  
98 -  
99 -if(pg_num_rows($objRec) > 0){  
100 - //レコード取得  
101 - for ($i = 0; $i < pg_numrows($objRec); $i++) {  
102 -  
103 - $objData = pg_fetch_object($objRec, $i);  
104 - $objTabDat[$i] = $objData;  
105 - $cSeqDisp[$i] = intval($objData->kt2_seq);  
106 - $cNameDisp[$i] = $objData->kt2_name;  
107 -  
108 -//デバッグ  
109 -//echo(" <BR>cSeq:".$cSeqDisp[$i]."←".$objData->kt2_seq." cName:".$cNameDisp[$i]."←".$objData->kt2_name." <BR>");  
110 -  
111 - if ($sMode == 1 || $sMode == False){  
112 - //収入 金額の取得  
113 - $strSQL2 = "select * from nyukin_tbl where koumoku_seq = ".$cSeqDisp[$i]." and nyukin_year = ".$yyyy." and nyukin_mode = 1 order by nyukin_month";  
114 - $objRec2 = pg_exec($strSQL2);  
115 - if($objRec2==false){  
116 - echo("SQL実行に失敗しました(SELECT)");  
117 - exit;  
118 - }  
119 - for ($j = 0; $j < pg_numrows($objRec2); $j++) {  
120 - $objData2 = pg_fetch_object($objRec2, $j);  
121 - $dataIn[$i][$j] = number_format($objData2->nyukin_data);  
122 -  
123 - //コメントの取得  
124 - $jbuff = intval($j)+1;  
125 - $strSQL3 = "SELECT * FROM comment_tbl WHERE koumoku_seq = ".$cSeqDisp[$i]." AND nyukin_year = ".$yyyy." AND nyukin_month = ".$jbuff." AND nyukin_mode = 1 ORDER BY nyukin_month";  
126 - $objRec3 = pg_exec($strSQL3);  
127 - if(pg_numrows($objRec3) > 0){  
128 - $objData3 = pg_fetch_object($objRec3, 0);  
129 - $CommentIn[$i][$j] = $objData3->comment_text;  
130 -  
131 -//echo("<br>SQL3:".$strSQL3);  
132 -//echo(" ".$objRec3->comment_text." com".$i."/".$j.":".$CommentIn[$i][$j]." ");  
133 -  
134 - }  
135 - }  
136 -  
137 - }elseif ($sMode == 2){  
138 - //支出  
139 - $strSQL2 = "select * from nyukin_tbl where koumoku_seq = ".$cSeqDisp[$i]." and nyukin_year = ".$yyyy." and nyukin_mode = 2 order by nyukin_month";  
140 - $objRec2 = pg_exec($strSQL2);  
141 - if($objRec2==false){  
142 - echo("SQL実行に失敗しました(SELECT)");  
143 - exit;  
144 - }  
145 - for ($j = 0; $j < pg_numrows($objRec2); $j++) {  
146 - $objData2 = pg_fetch_object($objRec2, $j);  
147 - $dataOut[$i][$j] = number_format($objData2->nyukin_data);  
148 -  
149 - //コメントの取得  
150 - $ibuff = intval($j)+1;  
151 - $strSQL3 = "SELECT * FROM comment_tbl WHERE koumoku_seq = ".$cSeqDisp[$i]." AND nyukin_year = ".$yyyy." AND nyukin_month = ".$ibuff." AND nyukin_mode = 2 ORDER BY nyukin_month";  
152 - $objRec3 = pg_exec($strSQL3);  
153 - if(pg_numrows($objRec3) > 0){  
154 - $objData3 = pg_fetch_object($objRec3, 0);  
155 - $CommentOut[$i][$j] = $objData3->comment_text;  
156 -  
157 - }  
158 - }  
159 - }  
160 - }  
161 - //表の縦の行数取得  
162 - $cCnt = pg_num_rows($objRec);  
163 -}  
164 -  
165 -//金額単位取得  
166 -$strSQL = "select * from start_tbl";  
167 -$objRec = pg_exec($strSQL);  
168 -if($objRec==false){  
169 - echo("SQL実行に失敗しました(SELECT)");  
170 - exit;  
171 -}  
172 -if(pg_numrows($objRec)>0){  
173 - $objData = pg_fetch_object($objRec, 0);  
174 - $sUnit = $objData->start_unit;  
175 -  
176 - switch ($sUnit) {  
177 - case 0:  
178 - $sUnitName = "円";  
179 - break;  
180 - case 1:  
181 - $sUnitName = "千円";  
182 - break;  
183 - case 2:  
184 - $sUnitName = "万円";  
185 - break;  
186 - }  
187 -  
188 -}else{  
189 - $sUnitName = "";  
190 -}  
191 -  
192 -//HTMLヘッダの書き出し  
193 -?>  
194 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
195 -  
196 -<html>  
197 -<head>  
198 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
199 - <meta http-equiv="content-style-type" content="text/css">  
200 - <meta name="robots" content="noindex, nofollow">  
201 - <script type="text/javascript" src="./js/jquery1.3.2.js"></script>  
202 - <script type="text/javascript" src="./js/jquery-ui-1.7.1.custom.min.js"></script>  
203 - <script type="text/javascript" src="./js/jquery.tipsy.js"></script>  
204 - <script type="text/javascript" src="./js/SIM0200.js"></script>  
205 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
206 - <link type="text/css" href="./templates/jquery-ui-1.7.1.css" rel="stylesheet" />  
207 - <link type="text/css" href="./templates/tipsy.css" rel="stylesheet" />  
208 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
209 -</head>  
210 -<?PHP  
211 -  
212 -//タイトル部分の表示  
213 -dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0200");  
214 -  
215 -//メインHTML部分の表示  
216 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
217 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
218 -$o_smarty->assign('DEFARR',$DEFARR);  
219 -  
220 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
221 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
222 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
223 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
224 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
225 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
226 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
227 -$o_smarty->assign('START_YEAR',$START_YEAR);  
228 -$o_smarty->assign('START_MONTH',$START_MONTH);  
229 -  
230 -$o_smarty->assign('lstY',$lstY);  
231 -  
232 -$o_smarty->assign('sUnitName',$sUnitName);  
233 -$o_smarty->assign('bSeq',$bSeq);  
234 -$o_smarty->assign('bunrui',$bunrui);  
235 -  
236 -$o_smarty->assign('dSeq',$dSeq);  
237 -$o_smarty->assign('dkoumoku',$dkoumoku);  
238 -  
239 -$o_smarty->assign('cCnt',$cCnt);  
240 -$o_smarty->assign('cSeq',$cSeqDisp);  
241 -$o_smarty->assign('cName',$cNameDisp);  
242 -  
243 -$o_smarty->assign('sMode',$sMode);  
244 -  
245 -$o_smarty->assign('objTabDat',$objTabDat);  
246 -  
247 -$o_smarty->assign('dataIn',$dataIn);  
248 -$o_smarty->assign('dataOut',$dataOut);  
249 -$o_smarty->assign('CommentIn',$CommentIn);  
250 -$o_smarty->assign('CommentOut',$CommentOut);  
251 -  
252 -$o_smarty->display('SIM0200.tpl');  
253 -  
254 -//フッタ部分の表示  
255 -dspFooter($DEFARR[1], $DEFARR[3]);  
256 -  
257 -  
258 -//関数  
259 -function year_lst($prm){  
260 - $ret = "";  
261 - for($i=($prm-2);$i<=($prm+2);$i++){  
262 - if($i==$prm){  
263 - $ret .= "<option value='".$i."' selected>".$i."</option>";  
264 - }else{  
265 - $ret .= "<option value='".$i."'>".$i."</option>";  
266 - }  
267 - }  
268 - return $ret;  
269 -}  
270 -  
271 -function edit_bunrui($prm){  
272 - $strSQL = "select * from bunrui_tbl order by disp_rank";  
273 - $objRec = pg_exec($strSQL);  
274 - if($objRec==false){  
275 - echo("SQL実行に失敗しました(SELECT)");  
276 - exit;  
277 - }  
278 - for ($j = 0; $j < pg_numrows($objRec); $j++) {  
279 - $objData = pg_fetch_object($objRec, $j);  
280 - $bSeq[$j] = $objData->bunrui_seq;  
281 - $bName[$j] = $objData->bunrui_name;  
282 - }  
283 - //引数が空のとき、全件取得  
284 - if ($prm == false){  
285 - $prm = 999;  
286 - }  
287 -  
288 - $ret = "";  
289 - for($i=0;$i<count($bSeq);$i++){  
290 - if($bSeq[$i] == $prm){  
291 - $ret .= "<option value='".$bSeq[$i]."' selected>".$bName[$i]."</option>";  
292 - }else{  
293 - $ret .= "<option value='".$bSeq[$i]."'>".$bName[$i]."</option>";  
294 - }  
295 - }  
296 - if (999 == $prm) {  
297 - $ret .= "<option value="."\"999\""." selected>全て</option>";  
298 - }else{  
299 - $ret .= "<option value="."\"999\"".">全て</option>";  
300 - }  
301 -  
302 - return $ret;  
303 -}  
304 -  
305 -//大区分セレクトメニュー作成  
306 -function edit_dai($bumon, $prm, $prm2){  
307 -  
308 - $ret = "";  
309 -  
310 - //親シーケンスNo.が無いとき、全件取得  
311 - if ($prm==FALSE) {  
312 - $prm = 999;  
313 - }  
314 -  
315 - if ($prm!="999") {  
316 -  
317 - $strSQL = "SELECT DISTINCT kou1.koumoku_seq, kou1.koumoku_name ";  
318 - $strSQL .= "FROM koumoku_tbl AS kou2 ";  
319 - $strSQL .= "INNER JOIN koumoku_tbl AS kou1 ON (kou1.koumoku_seq = kou2.koumoku_parent) ";  
320 - $strSQL .= "INNER JOIN kengen_tbl AS ken ON (ken.koumoku_seq = kou2.koumoku_seq) ";  
321 - $strSQL .= "WHERE ";  
322 - $strSQL .= "kou1.koumoku_parent = ".$prm." AND ";  
323 - $strSQL .= "kou2.koumoku_mode = 2 AND ";  
324 - $strSQL .= "kou1.koumoku_mode = 1 AND ";  
325 - $strSQL .= "ken.bumon_seq = ".$bumon." " ;  
326 -// $strSQL .= "ORDER BY kou2.disp_rank";  
327 -  
328 - $objRec = pg_exec($strSQL);  
329 - if($objRec==false){  
330 - echo("SQL実行に失敗しました(SELECT)");  
331 - exit;  
332 - }  
333 - for ($j = 0; $j < pg_numrows($objRec); $j++) {  
334 - $objData = pg_fetch_object($objRec, $j);  
335 - $kSeq[$j] = $objData->koumoku_seq;  
336 - $kName[$j] = $objData->koumoku_name;  
337 - }  
338 -  
339 - for($i=0;$i<count($kSeq);$i++){  
340 - if($kSeq[$i] == $prm2){  
341 - $ret .= "<option value='".$kSeq[$i]."' selected>".$kName[$i]."</option>";  
342 - }else{  
343 - $ret .= "<option value='".$kSeq[$i]."'>".$kName[$i]."</option>";  
344 - }  
345 - }  
346 - }  
347 -  
348 - if($prm2 === "999" || $prm === "999"){  
349 - $ret .= "<option value=\"999\" selected>全て</option>";  
350 - }else{  
351 - $ret .= "<option value=\"999\">全て</option>";  
352 - }  
353 -  
354 - return $ret;  
355 -}  
356 -  
357 -//先頭の分類シーケンスNo.を取得  
358 -function get_bunrui_head($prm){  
359 -  
360 - $strSQL = "select * from bunrui_tbl order by disp_rank";  
361 - $objRec = pg_exec($strSQL);  
362 - if($objRec==false){  
363 - echo("SQL実行に失敗しました(SELECT)");  
364 - exit;  
365 - }  
366 - if (pg_numrows($objRec) > 0) {  
367 - $objData = pg_fetch_object($objRec, 0);  
368 - $ret = $objData->bunrui_seq;  
369 - }  
370 -  
371 - return $ret;  
372 -}  
373 -  
374 -//期間中で先頭となる大項目シーケンスNo.を取得(引数:部門seq,分類Seq、返り値:大項目Seq)  
375 -function get_dai_head($bumon, $prm){  
376 -  
377 - $strSQL = "SELECT * FROM koumoku_tbl WHERE koumoku_mode = 1 AND koumoku_parent = ".$prm." ORDER BY disp_rank";  
378 -  
379 - $strSQL = "SELECT kou1.koumoku_seq, kou1.koumoku_name, kou2.koumoku_seq, kou2.koumoku_name ";  
380 - $strSQL .= "FROM koumoku_tbl AS kou1 ";  
381 - $strSQL .= "INNER JOIN koumoku_tbl AS kou2 ON (kou2.koumoku_parent = kou1.koumoku_seq) ";  
382 - $strSQL .= "INNER JOIN kengen_tbl AS ken ON (kou2.koumoku_seq = ken.koumoku_seq) ";  
383 - $strSQL .= "WHERE ";  
384 - $strSQL .= "kou1.koumoku_mode = 1 AND kou1.koumoku_parent = ".$prm." AND ";  
385 - $strSQL .= "kou2.koumoku_mode = 2 AND ken.bumon_seq = ".$bumon." ";  
386 - $strSQL .= "ORDER BY disp_rank ";  
387 - $objRec = pg_exec($strSQL);  
388 - if($objRec==false){  
389 - echo("SQL実行に失敗しました(SELECT)");  
390 - exit;  
391 - }  
392 - if (pg_numrows($objRec) > 0) {  
393 - $objData = pg_fetch_object($objRec, 0);  
394 - $ret = $objData->koumoku_seq;  
395 - }  
396 -  
397 - return $ret;  
398 -}  
399 -  
400 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:入金画面コメント入力  
4 -//* プログラムID:SIM0201.php  
5 -//* 機能 :コメント入力  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -  
13 -$yyyy = $_POST["yyyy"]; //年  
14 -$mm = $_GET["mm"]; //月  
15 -$bSeq = $_GET["bSeq"]; //期間区分シーケンスNo.  
16 -$dSeq = $_GET["dSeq"]; //大項目シーケンスNo.  
17 -$cSeq = $_GET["cSeq"]; //中項目シーケンスNo.  
18 -$sMode = $_POST["sMode"]; //収支モード  
19 -  
20 -$strSQL = "";  
21 -  
22 -//デバッグ  
23 -//echo("bSeq:".$bSeq." dseq:".$dSeq." cseq:".$cSeq." chgmode:".$chgmode."bFlg:".$bFlg."<br>");  
24 -  
25 -//収支・期間・項目名取得  
26 -if ($bSeq == True && $dSeq == True && $cSeq == True) {  
27 -  
28 - $strSQL = "SELECT bt.bunrui_seq, bt.bunrui_name, kt.koumoku_seq AS kt_seq, kt.koumoku_name AS kt_name, ";  
29 - $strSQL .= "kt2.koumoku_seq AS kt2_seq, kt2.koumoku_name AS kt2_name ";  
30 - $strSQL .= "FROM bunrui_tbl AS bt INNER JOIN koumoku_tbl AS kt ON (bt.bunrui_seq = kt.koumoku_parent) ";  
31 - $strSQL .= "INNER JOIN koumoku_tbl AS kt2 ON (kt.koumoku_seq = kt2.koumoku_parent) ";  
32 - $strSQL .= "WHERE kt.koumoku_mode = 1 AND kt2.koumoku_mode = 2 ";  
33 - $strSQL .= "AND bt.bunrui_seq = ". $bSeq ." ";  
34 - $strSQL .= "AND kt.koumoku_seq = ". $dSeq ." ";  
35 - $strSQL .= "AND kt2.koumoku_seq = ". $cSeq ." ";  
36 - $strSQL .= "ORDER BY bt.disp_rank, kt.disp_rank, kt2.disp_rank";  
37 -  
38 - $objRec = pg_exec($strSQL);  
39 - if($objRec==false){  
40 - echo("SQL実行に失敗しました(SELECT)");  
41 - exit;  
42 - }  
43 -  
44 - if(pg_num_rows($objRec) > 0){  
45 - //レコード取得  
46 - $objData = pg_fetch_object($objRec, $i);  
47 - $bName = $objData->bunrui_name;  
48 - $dName = $objData->kt_name;  
49 - $cName = $objData->kt2_name;  
50 -//デバッグ  
51 -//echo("bName:".$bName." dName:".$dName." cName:".$cName."<br>");  
52 - }  
53 -}  
54 -  
55 -if ($yyyy == True && $mm == True && $cSeq == True && $sMode == True){  
56 - $strSQL = "SELECT * FROM comment_tbl WHERE ";  
57 - $strSQL .= "koumoku_seq = ".$cSeq." AND nyukin_year = ".$yyyy." ";  
58 - $strSQL .= "AND nyukin_month = ".$mm." AND nyukin_mode = ".$sMode." ";  
59 -  
60 - $objRec2 = pg_exec($strSQL);  
61 - if($objRec2==false){  
62 - echo("SQL実行に失敗しました(SELECT)");  
63 - exit;  
64 - }  
65 -  
66 - if(pg_num_rows($objRec2) > 0){  
67 - $objComment = pg_fetch_object($objRec2, 0);  
68 - $sComment = $objComment->comment_text;  
69 -//デバッグ  
70 -echo("<br>comment:".$sComment);  
71 - }  
72 -  
73 -}  
74 -  
75 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
76 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
77 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
78 -$o_smarty->assign('START_YEAR',$START_YEAR);  
79 -$o_smarty->assign('START_MONTH',$START_MONTH);  
80 -  
81 -$o_smarty->assign('yyyy',$yyyy);  
82 -$o_smarty->assign('mm',$mm);  
83 -$o_smarty->assign('bName',$bName);  
84 -$o_smarty->assign('dSeq',$dSeq);  
85 -$o_smarty->assign('dName',$dName);  
86 -$o_smarty->assign('cSeq',$cSeq);  
87 -$o_smarty->assign('cName',$cName);  
88 -$o_smarty->assign('sMode',$sMode);  
89 -$o_smarty->assign('sComment',$sComment);  
90 -  
91 -$o_smarty->display('SIM0201.tpl');  
92 -  
93 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:入金コメント更新処理  
4 -//* プログラムID:SIM0202.php  
5 -//* 機能 :入金コメント更新処理  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -  
12 -$yyyy = $_POST["yyyy"];  
13 -$mm = $_POST["mm"];  
14 -$sMode = $_POST["sMode"];  
15 -$dSeq = $_POST["dSeq"];  
16 -$cSeq = $_POST["cSeq"];  
17 -$sComment = $_POST["comment"];  
18 -  
19 -  
20 -//収入コメント更新処理  
21 -//DELETE  
22 -$strSQL = "DELETE FROM comment_tbl WHERE ";  
23 -$strSQL .= "koumoku_seq = ".$cSeq." AND nyukin_year = ".$yyyy." ";  
24 -$strSQL .= "AND nyukin_month = ".$mm." AND nyukin_mode = ".$sMode." ";  
25 -  
26 -$objRec = pg_exec($strSQL);  
27 -if($objRec==false){  
28 - echo("SQL実行に失敗しました(DELETE)");  
29 - exit;  
30 -}  
31 -  
32 -//INSERT nyukin_mode 1:収入 2:支出  
33 -$strSQL = "INSERT INTO comment_tbl (koumoku_seq, nyukin_year, nyukin_month, nyukin_mode, comment_text) ";  
34 -$strSQL .= "values(".$cSeq.", ".$yyyy.", ".$mm.", ".$sMode.", '". $sComment ."')";  
35 -$objRec = pg_exec($strSQL);  
36 -if($objRec==false){  
37 - echo("SQL実行に失敗しました(INSERT)");  
38 - exit;  
39 -}  
40 -  
41 -  
42 -?>  
43 -<html>  
44 -<head>  
45 -<meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
46 -<meta http-equiv="content-style-type" content="text/css">  
47 -<meta name="robots" content="noindex, nofollow">  
48 -<title></title>  
49 -<script language="javascript">  
50 -function trans(){  
51 - document.frm.action = "SIM0200.php";  
52 - document.frm.method="POST";  
53 - document.frm.submit();  
54 -}  
55 -</script>  
56 -</head>  
57 -<body onload="trans();">  
58 -<form name="frm">  
59 -<input type="hidden" name="sMode" value="<?PHP echo $_POST["sMode"]?>">  
60 -<input type="hidden" name="yyyy" value="<?PHP echo $_POST["yyyy"]?>">  
61 -</form>  
62 -</body>  
63 -</html>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:入金画面  
4 -//* プログラムID:SIM0210.php  
5 -//* 機能 :入金画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -$yyyy = $_POST["yyyy"];  
17 -$bumon = $PHP_BUMON_SEQ;  
18 -  
19 -//画面切替モード(y:年切替 b:分類(期間区分) d:大項目 c:小区分 f:一覧画面から遷移 )  
20 -$chgmode = $_GET["chgmode"];  
21 -  
22 -//収支モード(1:収入 2:支出)  
23 -$sMode = $_POST["sMode"];  
24 -  
25 -//入金一覧からSeqを渡された場合  
26 -$bSeq = $_GET["bSeq"];  
27 -$dSeq = $_GET["dSeq"];  
28 -$cSeq = $_GET["cSeq"];  
29 -  
30 -$upflg = 0;  
31 -  
32 -//画面更新でSeqを引継ぐ場合  
33 -if ($bSeq == False && $chgmode != "f"){  
34 - $bSeq = $_POST["bSeq"];  
35 - if($chgmode == false) {  
36 - $upflg = 1; //更新フラグON  
37 - }  
38 -}  
39 -if ($dSeq == False && $chgmode != "f"){  
40 - $dSeq = $_POST["dSeq"];  
41 - if($chgmode == false) {  
42 - $upflg = 1; //更新フラグON  
43 - }  
44 -}  
45 -if ($cSeq == False && $chgmode != "f"){  
46 - if ($chgmode == "b" || $chgmode == "d") {  
47 - $cSeq = "999";  
48 - if($chgmode == false) {  
49 - $upflg = 1; //更新フラグON  
50 - }  
51 - } else {  
52 - $cSeq = $_POST["cSeq"];  
53 - if($chgmode == false) {  
54 - $upflg = 1; //更新フラグON  
55 - }  
56 - }  
57 -}  
58 -//入金一覧からも画面更新でもSeqが渡されていない場合、先頭のSeqを取得  
59 -if ($bSeq == False) {  
60 - $bSeq = get_bunrui_head($bSeq);  
61 -}  
62 -if ($dSeq == False) {  
63 - $dSeq = get_dai_head($bumon, $bSeq);  
64 -}  
65 -if ($cSeq == False) {  
66 - $cSeq = "999";  
67 -}  
68 -  
69 -//コンボボックスの年取得  
70 -if($yyyy == ""){  
71 - $yyyy = date("Y");  
72 -}  
73 -$lstY = year_lst($yyyy);  
74 -  
75 -//コンボボックスの期間名取得  
76 -$bunrui = edit_bunrui($bSeq);  
77 -  
78 -//メニューボックスの大区分取得  
79 -if ($chgmode === "b") {  
80 - $dkoumoku = edit_dai($bumon, $bSeq, "999");  
81 -}else{  
82 - $dkoumoku = edit_dai($bumon, $bSeq, $dSeq);  
83 -}  
84 -  
85 -//コンボボックスの小区分取得  
86 -if ($chgmode === "b" ) {  
87 - $ckoumoku = edit_chu($bumon, $bSeq, "", "999");  
88 -}elseif ($chgmode === "d") {  
89 - $ckoumoku = edit_chu($bumon, $bSeq, $dSeq, "999");  
90 -}else{  
91 - $ckoumoku = edit_chu($bumon, $bSeq, $dSeq, $cSeq);  
92 -}  
93 -  
94 -//デバッグ  
95 -//echo("sMode".$sMode."<br>");  
96 -  
97 -//デバッグ  
98 -//echo($bumon." bSeq:".$bSeq." dseq:".$dSeq." cSeq:".$cSeq." chgmode:".$chgmode."<br>");  
99 -  
100 -//テーブル表示項目取得 初回表示  
101 -if($bSeq == True || $chgmode != False) {  
102 -  
103 - $strSQL = "";  
104 - //初回表示  
105 - if ($bSeq == "" && $chgmode == True){  
106 - $strSQL = "select * from bunrui_tbl order by disp_rank";  
107 - $objRec = pg_exec($strSQL);  
108 - if($objRec==false){  
109 - echo("SQL実行に失敗しました(SELECT)");  
110 - exit;  
111 - }  
112 - $objData = pg_fetch_object($objRec, 0);  
113 -  
114 - $strSQL = "SELECT bt.bunrui_seq, bt.bunrui_name, kt.koumoku_seq AS kt_seq, kt.koumoku_name AS kt_name, ";  
115 - $strSQL .= "kt2.koumoku_seq AS kt2_seq, kt2.koumoku_name AS kt2_name ";  
116 - $strSQL .= "FROM bunrui_tbl AS bt INNER JOIN koumoku_tbl AS kt ON (bt.bunrui_seq = kt.koumoku_parent) ";  
117 - $strSQL .= "INNER JOIN koumoku_tbl AS kt2 ON (kt.koumoku_seq = kt2.koumoku_parent) ";  
118 - $strSQL .= "INNER JOIN kengen_tbl AS ken ON (ken.koumoku_seq = kt2.koumoku_seq) ";  
119 - $strSQL .= "WHERE bunrui_seq = ". $objData->bunrui_seq ." AND kt.koumoku_mode = 1 AND ";  
120 - $strSQL .= "kt2.koumoku_mode = 2 AND ken.bumon_seq = ".$bumon." ";  
121 - $strSQL .= "ORDER BY bt.disp_rank, kt.disp_rank, kt2.disp_rank";  
122 - }  
123 -  
124 - //収支切替・更新  
125 - if ($bSeq == True) {  
126 - $strSQL = "SELECT bt.bunrui_seq, bt.bunrui_name, kt.koumoku_seq AS kt_seq, kt.koumoku_name AS kt_name, ";  
127 - $strSQL .= "kt2.koumoku_seq AS kt2_seq, kt2.koumoku_name AS kt2_name ";  
128 - $strSQL .= "FROM bunrui_tbl AS bt INNER JOIN koumoku_tbl AS kt ON (bt.bunrui_seq = kt.koumoku_parent) ";  
129 - $strSQL .= "INNER JOIN koumoku_tbl AS kt2 ON (kt.koumoku_seq = kt2.koumoku_parent) ";  
130 - $strSQL .= "INNER JOIN kengen_tbl AS ken ON (ken.koumoku_seq = kt2.koumoku_seq) ";  
131 - $strSQL .= "WHERE kt.koumoku_mode = 1 AND kt2.koumoku_mode = 2 ";  
132 -  
133 - //期間の絞込み  
134 - if ($bSeq !== "999") {  
135 - $strSQL .= "AND bt.bunrui_seq = ". $bSeq ." ";  
136 - //大項目の絞込み  
137 - if ($dSeq == False || $chgmode ==="b") {  
138 - //大項目が空のとき、大項目の先頭を取得  
139 - $dSeq = get_dai_head($bumon, $bSeq);  
140 - }  
141 - $strSQL .= "AND kt.koumoku_seq = ". $dSeq ." ";  
142 -  
143 - //小区分の絞込み  
144 -// if ($cSeq === "999" && $chgmode != False ) {  
145 - if ($cSeq === "999") {  
146 - //条件なし  
147 - }else{  
148 - if ($cSeq == False) {  
149 - //更新時は条件なし  
150 - //$cSeq = get_chu_head($dSeq);  
151 - }  
152 - $strSQL .= "AND kt2.koumoku_seq = ". $cSeq ." ";  
153 - }  
154 - }  
155 - $strSQL .= " AND ken.bumon_seq = ".$bumon." ";  
156 - $strSQL .= "ORDER BY bt.disp_rank, kt.disp_rank, kt2.disp_rank";  
157 - }  
158 -  
159 -//デバッグ  
160 -//echo("bSeq:".$bSeq." dseq:".$dSeq." cSeq:".$cSeq." chgmode:".$chgmode."<br>");  
161 -  
162 -//デバッグ  
163 -//echo("SQL:".$strSQL."<br>");  
164 -  
165 - $objRec = pg_exec($strSQL);  
166 - if($objRec==false){  
167 - echo("SQL実行に失敗しました(SELECT)");  
168 - exit;  
169 - }  
170 - $bSeq = 0;  
171 - $dSeq = 0;  
172 -  
173 - //入金データ取得  
174 - if(pg_num_rows($objRec) > 0){  
175 - //レコード取得  
176 - for ($i = 0; $i < pg_numrows($objRec); $i++) {  
177 - $objData = pg_fetch_object($objRec, $i);  
178 - $objTabDat[$i] = $objData;  
179 - $kSeq[$i] = $objData->kt2_seq;  
180 - $kName[$i] = $objData->kt2_name;  
181 - if ($sMode === "1" || $sMode == False) {  
182 - //収入  
183 - $strSQL2 = "select * from nyukin_tbl where koumoku_seq = ".$kSeq[$i]." and nyukin_year = ".$yyyy." and nyukin_mode = 1 order by nyukin_month";  
184 - $objRec2 = pg_exec($strSQL2);  
185 - if($objRec2==false){  
186 - echo("SQL実行に失敗しました(SELECT)");  
187 - exit;  
188 - }  
189 - for ($j = 0; $j < pg_numrows($objRec2); $j++) {  
190 - //金額の取得  
191 - $objData2 = pg_fetch_object($objRec2, $j);  
192 - $dataIn[$i][$j] = $objData2->nyukin_data;  
193 -  
194 - //コメントの取得  
195 - $jbuff = intval($j)+1;  
196 - $strSQL3 = "SELECT * FROM comment_tbl WHERE koumoku_seq = ".$kSeq[$i]." AND nyukin_year = ".$yyyy." AND nyukin_month = ".$jbuff." AND nyukin_mode = 1 ORDER BY nyukin_month";  
197 - $objRec3 = pg_exec($strSQL3);  
198 - if(pg_numrows($objRec3) > 0){  
199 - $objData3 = pg_fetch_object($objRec3, 0);  
200 - $CommentTxt[$i][$j] = $objData3->comment_text;  
201 -//echo($CommentTxt[$i][$j].$i.$j." ");  
202 - }  
203 - }  
204 -  
205 - }elseif ($sMode === "2") {  
206 - //支出  
207 - $strSQL2 = "select * from nyukin_tbl where koumoku_seq = ".$kSeq[$i]." and nyukin_year = ".$yyyy." and nyukin_mode = 2 order by nyukin_month";  
208 - $objRec2 = pg_exec($strSQL2);  
209 - if($objRec2==false){  
210 - echo("SQL実行に失敗しました(SELECT)");  
211 - exit;  
212 - }  
213 - for ($j = 0; $j < pg_numrows($objRec2); $j++) {  
214 - //金額の取得  
215 - $objData2 = pg_fetch_object($objRec2, $j);  
216 - $dataOut[$i][$j] = $objData2->nyukin_data;  
217 -  
218 - //コメントの取得  
219 - $ibuff = intval($j)+1;  
220 - $strSQL3 = "SELECT * FROM comment_tbl WHERE koumoku_seq = ".$kSeq[$i]." AND nyukin_year = ".$yyyy." AND nyukin_month = ".$ibuff." AND nyukin_mode = 2 ORDER BY nyukin_month";  
221 - $objRec3 = pg_exec($strSQL3);  
222 - if(pg_numrows($objRec3) > 0){  
223 - $objData3 = pg_fetch_object($objRec3, 0);  
224 - $CommentTxt[$i][$j] = $objData3->comment_text;  
225 - }  
226 -  
227 - }  
228 - }  
229 - }  
230 - }  
231 -}  
232 -  
233 -//金額単位取得  
234 -$strSQL = "select * from start_tbl";  
235 -$objRec = pg_exec($strSQL);  
236 -if($objRec==false){  
237 - echo("SQL実行に失敗しました(SELECT)");  
238 - exit;  
239 -}  
240 -if(pg_numrows($objRec)>0){  
241 - $objData = pg_fetch_object($objRec, 0);  
242 - $sUnit = $objData->start_unit;  
243 -  
244 - switch ($sUnit) {  
245 - case 0:  
246 - $sUnitName = "円";  
247 - break;  
248 - case 1:  
249 - $sUnitName = "千円";  
250 - break;  
251 - case 2:  
252 - $sUnitName = "万円";  
253 - break;  
254 - }  
255 -  
256 -}else{  
257 - $sUnitName = "千円";  
258 -}  
259 -  
260 -//HTMLヘッダの書き出し  
261 -?>  
262 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
263 -  
264 -<html>  
265 -<head>  
266 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
267 - <meta http-equiv="content-style-type" content="text/css">  
268 - <meta name="robots" content="noindex, nofollow">  
269 - <script type="text/javascript" src="./js/jquery1.3.2.js"></script>  
270 - <script type="text/javascript" src="./js/jquery-ui-1.7.1.custom.min.js"></script>  
271 - <script type="text/javascript" src="./js/jquery.tipsy.js"></script>  
272 - <script type="text/javascript" src="./js/SIM0210.js"></script>  
273 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
274 - <link type="text/css" href="./templates/jquery-ui-1.7.1.css" rel="stylesheet" />  
275 - <link type="text/css" href="./templates/tipsy.css" rel="stylesheet" />  
276 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
277 -</head>  
278 -<?PHP  
279 -  
280 -//タイトル部分の表示  
281 -dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0210");  
282 -  
283 -  
284 -//メインHTML部分の表示  
285 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
286 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
287 -$o_smarty->assign('DEFARR',$DEFARR);  
288 -  
289 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
290 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
291 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
292 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
293 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
294 -$o_smarty->assign('START_YEAR',$START_YEAR);  
295 -$o_smarty->assign('START_MONTH',$START_MONTH);  
296 -  
297 -$o_smarty->assign('lstY',$lstY);  
298 -$o_smarty->assign('yyyy',$yyyy);  
299 -$o_smarty->assign('sUnitName',$sUnitName);  
300 -  
301 -$o_smarty->assign('bSeq',$bSeq);  
302 -$o_smarty->assign('bunrui',$bunrui);  
303 -  
304 -$o_smarty->assign('dSeq',$dSeq);  
305 -$o_smarty->assign('dkoumoku',$dkoumoku);  
306 -  
307 -$o_smarty->assign('cSeq',$cSeq);  
308 -$o_smarty->assign('ckoumoku',$ckoumoku);  
309 -  
310 -$o_smarty->assign('kSeq',$kSeq);  
311 -$o_smarty->assign('kName',$kName);  
312 -  
313 -$o_smarty->assign('sMode',$sMode);  
314 -$o_smarty->assign('upflg',$upflg);  
315 -$o_smarty->assign('objTabDat',$objTabDat);  
316 -$o_smarty->assign('CommentTxt',$CommentTxt);  
317 -$o_smarty->assign('dataIn',$dataIn);  
318 -$o_smarty->assign('dataOut',$dataOut);  
319 -  
320 -$o_smarty->display('SIM0210.tpl');  
321 -  
322 -//フッタ部分の表示  
323 -dspFooter($DEFARR[1], $DEFARR[3]);  
324 -  
325 -  
326 -//関数  
327 -function year_lst($prm){  
328 - $ret = "";  
329 - for($i=($prm-2);$i<=($prm+2);$i++){  
330 - if($i==$prm){  
331 - $ret .= "<option value='".$i."' selected>".$i."</option>";  
332 - }else{  
333 - $ret .= "<option value='".$i."'>".$i."</option>";  
334 - }  
335 - }  
336 - return $ret;  
337 -}  
338 -  
339 -function edit_bunrui($prm){  
340 -  
341 - $strSQL = "select * from bunrui_tbl order by disp_rank";  
342 - $objRec = pg_exec($strSQL);  
343 - if($objRec==false){  
344 - echo("SQL実行に失敗しました(SELECT)");  
345 - exit;  
346 - }  
347 - for ($j = 0; $j < pg_numrows($objRec); $j++) {  
348 - $objData = pg_fetch_object($objRec, $j);  
349 - $bSeq[$j] = $objData->bunrui_seq;  
350 - $bName[$j] = $objData->bunrui_name;  
351 - }  
352 -  
353 - $ret = "";  
354 - for($i=0;$i<count($bSeq);$i++){  
355 - if($bSeq[$i] == $prm){  
356 - $ret .= "<option value='".$bSeq[$i]."' selected>".$bName[$i]."</option>";  
357 - }else{  
358 - $ret .= "<option value='".$bSeq[$i]."'>".$bName[$i]."</option>";  
359 - }  
360 - }  
361 -  
362 -/*  
363 - if (999 == $prm) {  
364 - $ret .= "<option value="."\"999\""." selected>全て</option>";  
365 - }else{  
366 - $ret .= "<option value="."\"999\"".">全て</option>";  
367 - }  
368 -*/  
369 - return $ret;  
370 -}  
371 -//大項目のコンボボックス作成(引数:部門Seq, 分類seq, 大項目Seq, 返値:小区分Seq)  
372 -function edit_dai($bumon, $prm, $prm2){  
373 -  
374 - //親Seq.が無いとき、先頭の分類Seq.を取得  
375 - if ($prm==FALSE) {  
376 - $prm = get_bunrui_head($prm);  
377 - }  
378 -  
379 - //分類Seq.から大項目を取得  
380 -// $strSQL = "select * from koumoku_tbl where koumoku_mode = 1 and koumoku_parent = ".$prm." order by disp_rank";  
381 -  
382 - $strSQL = "SELECT DISTINCT kou1.koumoku_seq, kou1.koumoku_name ";  
383 - $strSQL .= "FROM koumoku_tbl AS kou2 ";  
384 - $strSQL .= "INNER JOIN koumoku_tbl AS kou1 ON (kou1.koumoku_seq = kou2.koumoku_parent) ";  
385 - $strSQL .= "INNER JOIN kengen_tbl AS ken ON (ken.koumoku_seq = kou2.koumoku_seq) ";  
386 - $strSQL .= "WHERE ";  
387 - $strSQL .= "kou1.koumoku_parent = ".$prm." AND ";  
388 - $strSQL .= "kou2.koumoku_mode = 2 AND ";  
389 - $strSQL .= "kou1.koumoku_mode = 1 AND ";  
390 - $strSQL .= "ken.bumon_seq = ".$bumon." " ;  
391 -// $strSQL .= "ORDER BY kou2.disp_rank";  
392 -  
393 - $objRec = pg_exec($strSQL);  
394 - if($objRec==false){  
395 - echo("SQL実行に失敗しました(SELECT)");  
396 - exit;  
397 - }  
398 - if (pg_numrows($objRec) > 0) {  
399 - //大項目Seq.と大項目名を配列に格納  
400 - for ($j = 0; $j < pg_numrows($objRec); $j++) {  
401 - $objData = pg_fetch_object($objRec, $j);  
402 - $kSeq[$j] = $objData->koumoku_seq;  
403 - $kName[$j] = $objData->koumoku_name;  
404 - }  
405 - //大項目Seq.が引数にある場合、選択住みにする。  
406 - $ret = "";  
407 - for($i=0;$i<count($kSeq);$i++){  
408 - if($kSeq[$i] == $prm2){  
409 - $ret .= "<option value='".$kSeq[$i]."' selected>".$kName[$i]."</option>";  
410 - }else{  
411 - $ret .= "<option value='".$kSeq[$i]."'>".$kName[$i]."</option>";  
412 - }  
413 - }  
414 - }else{  
415 - $ret .= "<option value=\"999\" selected>全て</option>";  
416 - }  
417 -  
418 - return $ret;  
419 -  
420 -}  
421 -  
422 -//小区分のコンボボックス作成(引数:(部門Seq, 分類seq, 大項目Seq, 小区分Seq)、返値:小区分Seq)  
423 -function edit_chu($bumon, $prm, $prm2, $prm3){  
424 -  
425 - //親Seq.が無いとき、分類Seqから先頭の大項目Seq.を取得  
426 - if ($prm2==FALSE) {  
427 - $prm2 = get_dai_head($bumon, $prm);  
428 - }  
429 -  
430 - //大項目Seq.から小区分を取得  
431 - $strSQL = "SELECT kou2.koumoku_seq, kou2.koumoku_name ";  
432 - $strSQL .= "FROM koumoku_tbl AS kou2 ";  
433 - $strSQL .= "INNER JOIN kengen_tbl AS ken ON (ken.koumoku_seq = kou2.koumoku_seq) ";  
434 - $strSQL .= "WHERE ";  
435 - $strSQL .= "kou2.koumoku_parent = ".$prm2." AND ";  
436 - $strSQL .= "kou2.koumoku_mode = 2 AND ";  
437 - $strSQL .= "ken.bumon_seq = ".$bumon." ";  
438 - $strSQL .= "ORDER BY kou2.disp_rank ";  
439 -  
440 - $objRec = pg_exec($strSQL);  
441 - if($objRec==false){  
442 - echo("SQL実行に失敗しました(SELECT)");  
443 - exit;  
444 - }  
445 - //小区分Seq.と小区分名を配列に格納  
446 - for ($j = 0; $j < pg_numrows($objRec); $j++) {  
447 - $objData = pg_fetch_object($objRec, $j);  
448 - $cSeq[$j] = $objData->koumoku_seq;  
449 - $cName[$j] = $objData->koumoku_name;  
450 - }  
451 - //小区分Seq.が引数にある場合、選択住みにする。  
452 - $ret = "";  
453 - for($i=0;$i<count($cSeq);$i++){  
454 - if($cSeq[$i] == $prm3){  
455 - $ret .= "<option value='".$cSeq[$i]."' selected>".$cName[$i]."</option>";  
456 - }else{  
457 - $ret .= "<option value='".$cSeq[$i]."'>".$cName[$i]."</option>";  
458 - }  
459 - }  
460 - //小区分Seq.の引数が999の場合、小区分を全件取得  
461 - if($prm3 === "999"){  
462 - $ret .= "<option value=\"999\" selected>全て</option>";  
463 - }else{  
464 - $ret .= "<option value=\"999\">全て</option>";  
465 - }  
466 - return $ret;  
467 -}  
468 -  
469 -//先頭の分類シーケンスNo.を取得  
470 -function get_bunrui_head($prm){  
471 -  
472 - $strSQL = "select * from bunrui_tbl order by disp_rank";  
473 - $objRec = pg_exec($strSQL);  
474 - if($objRec==false){  
475 - echo("SQL実行に失敗しました(SELECT)");  
476 - exit;  
477 - }  
478 - if (pg_numrows($objRec) > 0) {  
479 - $objData = pg_fetch_object($objRec, 0);  
480 - $ret = $objData->bunrui_seq;  
481 - }  
482 -  
483 - return $ret;  
484 -}  
485 -  
486 -//期間中で先頭となる大項目シーケンスNo.を取得(引数:部門Seq, 分類Seq、返り値:大項目Seq)  
487 -function get_dai_head($bumon, $prm){  
488 -  
489 - $strSQL = "SELECT kou1.koumoku_seq, kou1.koumoku_name ";  
490 - $strSQL .= "FROM koumoku_tbl AS kou1 ";  
491 - $strSQL .= "INNER JOIN koumoku_tbl AS kou2 ON (kou2.koumoku_parent = kou1.koumoku_seq) ";  
492 - $strSQL .= "INNER JOIN kengen_tbl AS ken ON (kou2.koumoku_seq = ken.koumoku_seq) ";  
493 - $strSQL .= "WHERE ";  
494 - $strSQL .= "kou1.koumoku_mode = 1 AND kou1.koumoku_parent = ".$prm." AND ";  
495 - $strSQL .= "kou2.koumoku_mode = 2 AND ken.bumon_seq = ".$bumon." ";  
496 - $strSQL .= "ORDER BY kou1.disp_rank";  
497 -  
498 -//echo("<br>SQL:".$strSQL);  
499 -  
500 - $objRec = pg_exec($strSQL);  
501 - if($objRec==false){  
502 - echo("SQL実行に失敗しました(SELECT)");  
503 - exit;  
504 - }  
505 - if (pg_numrows($objRec) > 0) {  
506 - $objData = pg_fetch_object($objRec, 0);  
507 - $ret = $objData->koumoku_seq;  
508 - }else{  
509 - $ret = -1;  
510 - }  
511 -  
512 - return $ret;  
513 -}  
514 -  
515 -//大項目中で先頭となる小区分シーケンスNo.を取得(引数:大項目Seq、返り値:小区分Seq)  
516 -function get_chu_head($prm){  
517 -  
518 - $strSQL = "SELECT * FROM koumoku_tbl WHERE koumoku_mode = 2 AND koumoku_parent = ".$prm." ORDER BY disp_rank";  
519 - $objRec = pg_exec($strSQL);  
520 - if($objRec==false){  
521 - echo("SQL実行に失敗しました(SELECT)");  
522 - exit;  
523 - }  
524 - if (pg_numrows($objRec) > 0) {  
525 - $objData = pg_fetch_object($objRec, 0);  
526 - $ret = $objData->koumoku_seq;  
527 - }  
528 -  
529 - return $ret;  
530 -}  
531 -  
532 -  
533 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:入金画面更新処理  
4 -//* プログラムID:SIM0201.php  
5 -//* 機能 :入金画面更新処理  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -  
12 -$yyyy = $_POST["yyyy"];  
13 -$bSeq = $_POST["bSeq"];  
14 -$dSeq = $_POST["dSeq"];  
15 -$dSeqIn = $_POST["kSeqIn"];  
16 -$dSeqOut = $_POST["kSeqOut"];  
17 -  
18 -$cSeq = $_POST["cSeq"];  
19 -//$sMode = $_POST["sMode"];  
20 -//$chgmode = $_GET["chgmode"];  
21 -  
22 -  
23 -//収入更新処理  
24 -if (count($_POST["txtin1"]) > 0) {  
25 - $arrCnt = count($_POST["txtin1"]);  
26 - $nSeq = $dSeqIn;  
27 -  
28 - //データ更新  
29 - for($i=0;$i<$arrCnt;$i++){  
30 -  
31 - //DELETE  
32 - $strSQL = "delete from nyukin_tbl where koumoku_seq = ".$nSeq[$i]." and nyukin_year = ".$yyyy." and nyukin_mode = 1" ;  
33 - $objRec = pg_exec($strSQL);  
34 - if($objRec==false){  
35 - echo("SQL実行に失敗しました(DELETE)");  
36 - exit;  
37 - }  
38 -  
39 - for($j=1;$j<=12;$j++){  
40 - //INSERT nyukin_mode 1:収入 2:支出  
41 - $strSQL = "insert into nyukin_tbl (koumoku_seq, nyukin_year, nyukin_month, nyukin_mode, nyukin_data, nyukin_ym) ";  
42 - $strSQL .= "values(".$nSeq[$i].", ".$yyyy.", ".$j.", 1, ".intval($_POST["txtin".$j][$i]).", ".$yyyy.sprintf('%02d', $j).")";  
43 - $objRec = pg_exec($strSQL);  
44 - if($objRec==false){  
45 - echo("SQL実行に失敗しました(INSERT)");  
46 - exit;  
47 - }  
48 - }  
49 - }  
50 -  
51 - //コメント更新  
52 - for($i=0;$i<$arrCnt;$i++){  
53 - for($j=1;$j<=12;$j++){  
54 - if ($_POST["hdnIn".$j][$i] == True) {  
55 - //DELETE  
56 - $strSQL = "DELETE FROM comment_tbl WHERE ";  
57 - $strSQL .= "koumoku_seq = ".$nSeq[$i]." AND nyukin_year = ".$yyyy." ";  
58 - $strSQL .= "AND nyukin_month = ".$j." AND nyukin_mode = ".$sMode." ";  
59 - $objRec = pg_exec($strSQL);  
60 -  
61 - if($objRec==false){  
62 - echo("SQL実行に失敗しました(DELETE)");  
63 - exit;  
64 - }  
65 -  
66 - //INSERT  
67 - $strSQL = "INSERT INTO comment_tbl (koumoku_seq, nyukin_year, nyukin_month, nyukin_mode, comment_text) ";  
68 - $strSQL .= "values(".$nSeq[$i].", ".$yyyy.", ".$j.", ".$sMode.", '". strval($_POST["hdnIn".$j][$i])."')";  
69 -  
70 - $objRec = pg_exec($strSQL);  
71 - if($objRec==false){  
72 - echo("SQL実行に失敗しました(INSERT)");  
73 - exit;  
74 - }  
75 -  
76 - }  
77 - }  
78 - }  
79 -}  
80 -  
81 -//支出更新処理  
82 -if (count($_POST["txtout1"]) > 0) {  
83 - $arrCnt = count($_POST["txtout1"]);  
84 - $nSeq = $dSeqOut;  
85 -  
86 - for($i=0;$i<$arrCnt;$i++){  
87 -  
88 - //DELETE  
89 - $strSQL = "delete from nyukin_tbl where koumoku_seq = ".$nSeq[$i]." and nyukin_year = ".$yyyy." and nyukin_mode = 2" ;  
90 -  
91 - $objRec = pg_exec($strSQL);  
92 - if($objRec==false){  
93 - echo("SQL実行に失敗しました(DELETE)");  
94 - exit;  
95 - }  
96 -  
97 - for($j=1;$j<=12;$j++){  
98 - //INSERT nyukin_mode 1:収入 2:支出  
99 - $strSQL = "insert into nyukin_tbl (koumoku_seq, nyukin_year, nyukin_month, nyukin_mode, nyukin_data, nyukin_ym) ";  
100 - $strSQL .= "values(".$nSeq[$i].", ".$yyyy.", ".$j.", 2, ".intval($_POST["txtout".$j][$i]).", ".$yyyy.sprintf('%02d', $j).")";  
101 - $objRec = pg_exec($strSQL);  
102 - if($objRec==false){  
103 - echo("SQL実行に失敗しました(INSERT)");  
104 - exit;  
105 - }  
106 - }  
107 - }  
108 -}  
109 -  
110 -?>  
111 -<html>  
112 -<head>  
113 -<meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
114 -<meta http-equiv="content-style-type" content="text/css">  
115 -<meta name="robots" content="noindex, nofollow">  
116 -<title></title>  
117 -<script language="javascript">  
118 -function trans(){  
119 - document.frm.action = "SIM0210.php";  
120 - document.frm.method="POST";  
121 - document.frm.submit();  
122 -}  
123 -</script>  
124 -</head>  
125 -<body onload="trans();">  
126 -<form name="frm">  
127 -<input type="hidden" name="sMode" value="<?PHP echo $_POST["sMode"] ?>">  
128 -<input type="hidden" name="yyyy" value="<?PHP echo $_POST["yyyy"] ?>">  
129 -<input type="hidden" name="bSeq" value="<?PHP echo $_POST["bSeq"] ?>">  
130 -<input type="hidden" name="dSeq" value="<?PHP echo $_POST["dSeq"] ?>">  
131 -<input type="hidden" name="cSeq" value="<?PHP echo $_POST["cSeq"] ?>">  
132 -  
133 -</form>  
134 -</body>  
135 -</html>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:入金画面コメント入力  
4 -//* プログラムID:SIM0220.php  
5 -//* 機能 :コメント入力  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -  
13 -$yyyy = $_GET["yyyy"]; //年  
14 -$mm = $_GET["mm"]; //月  
15 -$bSeq = $_GET["bSeq"]; //期間区分シーケンスNo.  
16 -$dSeq = $_GET["dSeq"]; //大項目シーケンスNo.  
17 -$cSeq = $_GET["cSeq"]; //中項目シーケンスNo.  
18 -$sMode = $_GET["sMode"]; //収支モード  
19 -  
20 -$strSQL = "";  
21 -  
22 -//デバッグ  
23 -//echo("sMode:".$sMode."yyyy:".$yyyy."mm:".$mm."bSeq:".$bSeq." dseq:".$dSeq." cseq:".$cSeq." chgmode:".$chgmode."bFlg:".$bFlg."<br>");  
24 -  
25 -  
26 -//収支・期間・項目名取得  
27 -if ($bSeq == True && $dSeq == True && $cSeq == True) {  
28 -  
29 - $strSQL = "SELECT bt.bunrui_seq, bt.bunrui_name, kt.koumoku_seq AS kt_seq, kt.koumoku_name AS kt_name, ";  
30 - $strSQL .= "kt2.koumoku_seq AS kt2_seq, kt2.koumoku_name AS kt2_name ";  
31 - $strSQL .= "FROM bunrui_tbl AS bt INNER JOIN koumoku_tbl AS kt ON (bt.bunrui_seq = kt.koumoku_parent) ";  
32 - $strSQL .= "INNER JOIN koumoku_tbl AS kt2 ON (kt.koumoku_seq = kt2.koumoku_parent) ";  
33 - $strSQL .= "WHERE kt.koumoku_mode = 1 AND kt2.koumoku_mode = 2 ";  
34 - $strSQL .= "AND bt.bunrui_seq = ". $bSeq ." ";  
35 - $strSQL .= "AND kt.koumoku_seq = ". $dSeq ." ";  
36 - $strSQL .= "AND kt2.koumoku_seq = ". $cSeq ." ";  
37 - $strSQL .= "ORDER BY bt.disp_rank, kt.disp_rank, kt2.disp_rank";  
38 -  
39 - $objRec = pg_exec($strSQL);  
40 - if($objRec==false){  
41 - echo("SQL実行に失敗しました(SELECT)");  
42 - exit;  
43 - }  
44 -  
45 - if(pg_num_rows($objRec) > 0){  
46 - //レコード取得  
47 - $objData = pg_fetch_object($objRec, $i);  
48 - $bName = $objData->bunrui_name;  
49 - $dName = $objData->kt_name;  
50 - $cName = $objData->kt2_name;  
51 -//デバッグ  
52 -//echo("bName:".$bName." dName:".$dName." cName:".$cName."<br>");  
53 - }  
54 -}  
55 -  
56 -if ($yyyy == True && $mm == True && $cSeq == True && $sMode == True){  
57 - $strSQL = "SELECT * FROM comment_tbl WHERE ";  
58 - $strSQL .= "koumoku_seq = ".$cSeq." AND nyukin_year = ".$yyyy." ";  
59 - $strSQL .= "AND nyukin_month = ".$mm." AND nyukin_mode = ".$sMode." ";  
60 -  
61 - $objRec2 = pg_exec($strSQL);  
62 - if($objRec2==false){  
63 - echo("SQL実行に失敗しました(SELECT)");  
64 - exit;  
65 - }  
66 -  
67 - if(pg_num_rows($objRec2) > 0){  
68 - $objComment = pg_fetch_object($objRec2, 0);  
69 - $sComment = $objComment->comment_text;  
70 -//デバッグ  
71 -//echo("<br>comment:".$sComment);  
72 - }  
73 -  
74 -}  
75 -  
76 -//HTMLヘッダの書き出し  
77 -?>  
78 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
79 -  
80 -<html>  
81 -<head>  
82 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
83 - <meta http-equiv="content-style-type" content="text/css">  
84 - <meta name="robots" content="noindex, nofollow">  
85 - <script type="text/javascript" src="./js/SIM0220.js"></script>  
86 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
87 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
88 -</head>  
89 -<?PHP  
90 -  
91 -//メインHTML部分の表示  
92 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
93 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
94 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
95 -$o_smarty->assign('START_YEAR',$START_YEAR);  
96 -$o_smarty->assign('START_MONTH',$START_MONTH);  
97 -  
98 -$o_smarty->assign('yyyy',$yyyy);  
99 -$o_smarty->assign('mm',$mm);  
100 -$o_smarty->assign('bSeq',$bSeq);  
101 -$o_smarty->assign('bName',$bName);  
102 -$o_smarty->assign('dSeq',$dSeq);  
103 -$o_smarty->assign('dName',$dName);  
104 -$o_smarty->assign('cSeq',$cSeq);  
105 -$o_smarty->assign('cName',$cName);  
106 -$o_smarty->assign('sMode',$sMode);  
107 -$o_smarty->assign('sComment',$sComment);  
108 -  
109 -$o_smarty->display('SIM0220.tpl');  
110 -  
111 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:入金コメント更新処理  
4 -//* プログラムID:SIM0221.php  
5 -//* 機能 :入金コメント更新処理  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -  
12 -$yyyy = $_POST["yyyy"];  
13 -$mm = $_POST["mm"];  
14 -$sMode = $_POST["sMode"];  
15 -$dSeq = $_POST["dSeq"];  
16 -$cSeq = $_POST["cSeq"];  
17 -  
18 -//コメントの特殊文字を変換  
19 -$sComment = htmlspecialchars($_POST["comment"], ENT_QUOTES );  
20 -  
21 -//echo("yyyy:".$yyyy." mm:".$mm." dseq:".$dSeq." cseq:".$cSeq." sMode:".$sMode."<br> ".$sComment."<br>");  
22 -  
23 -  
24 - //収入コメント削除処理  
25 - //DELETE nyukin_mode 1:収入 2:支出  
26 - $strSQL = "DELETE FROM comment_tbl WHERE ";  
27 - $strSQL .= "koumoku_seq = ".$cSeq." AND nyukin_year = ".$yyyy." ";  
28 - $strSQL .= "AND nyukin_month = ".$mm." AND nyukin_mode = ".$sMode." ";  
29 -  
30 - $objRec = pg_exec($strSQL);  
31 - if($objRec==false){  
32 - echo("SQL実行に失敗しました(DELETE)");  
33 - exit;  
34 - }  
35 -  
36 -if (Trim($sComment) != "") {  
37 - //収入コメント登録処理  
38 - //INSERT nyukin_mode 1:収入 2:支出  
39 - $strSQL = "INSERT INTO comment_tbl (koumoku_seq, nyukin_year, nyukin_month, nyukin_mode, comment_text) ";  
40 - $strSQL .= "values(".$cSeq.", ".$yyyy.", ".$mm.", ".$sMode.", '". $sComment ."')";  
41 - $objRec = pg_exec($strSQL);  
42 - if($objRec==false){  
43 - echo("SQL実行に失敗しました(INSERT)");  
44 - exit;  
45 - }  
46 -}  
47 -  
48 -?>  
49 -<html>  
50 -<head>  
51 -<meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
52 -<meta http-equiv="content-style-type" content="text/css">  
53 -<meta name="robots" content="noindex, nofollow">  
54 -<title></title>  
55 -<script language="javascript">  
56 -function trans(){  
57 - var strUrl = "";  
58 - var ret = 0;  
59 -  
60 - objParent = window.opener;  
61 - objParent.name = "parentWin";  
62 -  
63 - strUrl = objParent.document.URL;  
64 - ret = strUrl.indexOf("SIM0210.php");  
65 -  
66 - if (ret > 0) {  
67 - objParent.document.frm.target = "parentWin";  
68 - objParent.document.frm.action = "SIM0210.php";  
69 - objParent.document.frm.method = "POST";  
70 - objParent.document.frm.submit();  
71 - }  
72 -  
73 - self.close();  
74 -  
75 -}  
76 -</script>  
77 -</head>  
78 -<body onload="trans();">  
79 -<form name="frmsub">  
80 -<input type="hidden" name="sMode" value="<?PHP echo $_POST["sMode"] ?>">  
81 -<input type="hidden" name="yyyy" value="<?PHP echo $_POST["yyyy"] ?>">  
82 -<input type="hidden" name="bSeq" value="<?PHP echo $_POST["bSeq"] ?>">  
83 -<input type="hidden" name="dSeq" value="<?PHP echo $_POST["dSeq"] ?>">  
84 -<input type="hidden" name="cSeq" value="<?PHP echo $_POST["cSeq"] ?>">  
85 -</form>  
86 -</body>  
87 -</html>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:閲覧画面  
4 -//* プログラムID:SIM0500.php  
5 -//* 機能 :閲覧画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -  
17 -$yyyy = $_POST["yyyy"];  
18 -$mon = $_POST["mon"];  
19 -$kikan = $_POST["kikan"];  
20 -$chousei = $_POST["chousei"];  
21 -$shikin = $_POST["shikin"];  
22 -  
23 -//年  
24 -if($yyyy == ""){  
25 - $yyyy = date("Y");  
26 -}  
27 -//月  
28 -if($mon == ""){  
29 - $mon = date("n");  
30 -}  
31 -if($yyyy.sprintf('%02d', $mon) < $START_YEAR.sprintf('%02d', $START_MONTH)){  
32 - $yyyy = $START_YEAR;  
33 - $mon = $START_MONTH;  
34 -}  
35 -  
36 -//コンボ内容  
37 -$lstY = year_lst($yyyy);  
38 -$lstM = month_lst($mon);  
39 -  
40 -//期間が空なら3ヶ月をデフォルトにする。  
41 -if($kikan == ""){  
42 - $kikan = "3";  
43 -}  
44 -  
45 -//期間SELECTの内容  
46 -$kikanArr = array("3","6","12");  
47 -$kikanNameArr = array("3ヶ月","6ヶ月","1年");  
48 -$lstK = "";  
49 -for($i=0;$i<count($kikanArr);$i++){  
50 - if($kikan == $kikanArr[$i]){  
51 - $lstK .= "<option value='".$kikanArr[$i]."' selected>".$kikanNameArr[$i]."</option>";  
52 - }else{  
53 - $lstK .= "<option value='".$kikanArr[$i]."'>".$kikanNameArr[$i]."</option>";  
54 - }  
55 -}  
56 -  
57 -//何ヶ月表示?  
58 -$DISP_CNT = $kikan;  
59 -  
60 -//年月配列  
61 -for($i=0;$i<$DISP_CNT;$i++){  
62 - $dataYM[$i][0]=$yyyy;  
63 - $dataYM[$i][1]=intval($mon) + $i;  
64 - if($dataYM[$i][1] > 12){  
65 - $dataYM[$i][0] = intval($dataYM[$i][0]) + 1;  
66 - $dataYM[$i][1] = intval($mon) + $i - 12;  
67 - }  
68 -}  
69 -  
70 -//繰越金算出 初期設定の開始期間〜シミュレーション開始期間の前月まで  
71 -$sYM = $START_YEAR.sprintf('%02d', $START_MONTH); //開始年月  
72 -$eYM = $dataYM[0][0].sprintf('%02d', $dataYM[0][1]); //シミュ開始年月  
73 -  
74 -//最初の前月繰越金(+なら[1]、-なら[2])  
75 -//$kuriStart = $kuriTemp[1] - $kuriTemp[2] + $START_MONEY;  
76 -$kuriStart = Kurikoshi_Get($START_MONEY, $sYM, $eYM, $DEFARR[10]);  
77 -  
78 -$kurikoshi[3][0] = $kuriStart;  
79 -if($kuriStart < 0){  
80 - $kurikoshi[1][0] = 0;  
81 - $kurikoshi[2][0] = abs($kuriStart);  
82 -}else{  
83 - $kurikoshi[1][0] = $kuriStart;  
84 - $kurikoshi[2][0] = 0;  
85 -}  
86 -  
87 -//調整額更新  
88 -for($i=0;$i<count($shikin[1]);$i++){  
89 - $dpltDate = split("/", $shikin[4][$i]);  
90 - //調整額(収入)  
91 - $strSQL = "delete from nyukin_tbl where koumoku_seq = 0 and nyukin_year = ".$dpltDate[0]." and nyukin_month = ".$dpltDate[1]." and nyukin_mode = 1";  
92 - $objRec = pg_exec($strSQL);  
93 - $strSQL = "insert into nyukin_tbl (koumoku_seq, nyukin_year, nyukin_month, nyukin_mode, nyukin_data, nyukin_ym) ";  
94 - $strSQL .= "values(0, ".$dpltDate[0].", ".$dpltDate[1].", 1, ".intval($shikin[1][$i]).", ".$dpltDate[0].sprintf('%02d', $dpltDate[1]).")";  
95 - $objRec = pg_exec($strSQL);  
96 - if($objRec==false){  
97 - echo("SQL実行に失敗しました(INSERT)");  
98 - exit;  
99 - }  
100 - //調整額(支出)  
101 - $strSQL = "delete from nyukin_tbl where koumoku_seq = 0 and nyukin_year = ".$dpltDate[0]." and nyukin_month = ".$dpltDate[1]." and nyukin_mode = 2";  
102 - $objRec = pg_exec($strSQL);  
103 - $strSQL = "insert into nyukin_tbl (koumoku_seq, nyukin_year, nyukin_month, nyukin_mode, nyukin_data, nyukin_ym) ";  
104 - $strSQL .= "values(0, ".$dpltDate[0].", ".$dpltDate[1].", 2, ".intval($shikin[2][$i]).", ".$dpltDate[0].sprintf('%02d', $dpltDate[1]).")";  
105 - $objRec = pg_exec($strSQL);  
106 - if($objRec==false){  
107 - echo("SQL実行に失敗しました(INSERT)");  
108 - exit;  
109 - }  
110 -}  
111 -  
112 -//データ  
113 -//分類取得  
114 -$strSQL = "select * from bunrui_tbl order by disp_rank";  
115 -$objRec = pg_exec($strSQL);  
116 -if($objRec==false){  
117 - echo("SQL実行に失敗しました(SELECT)");  
118 - exit;  
119 -}  
120 -if(pg_numrows($objRec) > 0){  
121 - for($i=0;$i<pg_numrows($objRec);$i++){  
122 - $objData = pg_fetch_object($objRec, $i);  
123 - $bData[$i][0] = $objData->bunrui_seq;  
124 - $bData[$i][1] = $objData->bunrui_name;  
125 - }  
126 -}  
127 -  
128 -//分類(期間)の件数だけループ  
129 -for($i=0;$i<count($bData);$i++){  
130 - //大項目  
131 - $strSQL = "select * from koumoku_tbl where koumoku_mode = 1 and koumoku_parent = ".$bData[$i][0]." order by disp_rank";  
132 - $objRec = pg_exec($strSQL);  
133 - if($objRec==false){  
134 - echo("SQL実行に失敗しました(SELECT)");  
135 - exit;  
136 - }  
137 - if(pg_numrows($objRec) > 0){  
138 - $jCnt[$i] = pg_numrows($objRec);  
139 - //大項目の件数だけループ  
140 - for($j=0;$j<pg_numrows($objRec);$j++){  
141 - $objData = pg_fetch_object($objRec, $j);  
142 -  
143 -/*  
144 -$dData[$i][$j]覚書  
145 -$dData[$i][$j][0]:大項目SEQ  
146 -$dData[$i][$j][1]:大項目項目名  
147 -$dData[$i][$j][2]:小項目SEQ配列  
148 -$dData[$i][$j][3][0]:小項目収入配列消費税計算無し  
149 -$dData[$i][$j][3][1]:小項目収入配列消費税計算有り  
150 -$dData[$i][$j][4][0]:小項目支出配列消費税計算無し  
151 -$dData[$i][$j][4][1]:小項目支出配列消費税計算有り  
152 -$dData[$i][$j][5]:大項目小計値  
153 -$dData[$i][$j][6]:小項目収入合計配列  
154 -$dData[$i][$j][7]:小項目支出合計配列  
155 -  
156 -*/  
157 -  
158 - $dData[$i][$j][0] = $objData->koumoku_seq; //SEQ  
159 - $dData[$i][$j][1] = $objData->koumoku_name; //項目名  
160 - //大項目配下の中項目検索  
161 - //消費税無し  
162 - $strSQL2_1 = "select * from koumoku_tbl where koumoku_mode = 2 and ";  
163 - $strSQL2_1 .= " koumoku_parent = ".$dData[$i][$j][0]." AND (shouhizei_flg = 0 OR shouhizei_flg is NULL ) ";  
164 - $objRec2_1 = pg_exec($strSQL2_1);  
165 - if($objRec2_1==false){  
166 - echo("SQL実行に失敗しました(SELECT)");  
167 - exit;  
168 - }  
169 - //消費税有り  
170 - $strSQL2_2 = "select * from koumoku_tbl where koumoku_mode = 2 and ";  
171 - $strSQL2_2 .= " koumoku_parent = ".$dData[$i][$j][0]." AND shouhizei_flg = 1 order by disp_rank";  
172 - $objRec2_2 = pg_exec($strSQL2_2);  
173 - if($objRec2_2==false){  
174 - echo("SQL実行に失敗しました(SELECT)");  
175 - exit;  
176 - }  
177 - if(pg_numrows($objRec2_1) > 0 || pg_numrows($objRec2_2) > 0){  
178 - //消費税無し  
179 - for($k=0;$k<pg_numrows($objRec2_1);$k++){  
180 - $objData2 = pg_fetch_object($objRec2_1, $k);  
181 - $dData[$i][$j][2][0][$k] = intval($objData2->koumoku_seq); //小項目 SEQ  
182 - }  
183 - //消費税有り  
184 - for($k=0;$k<pg_numrows($objRec2_2);$k++){  
185 - $objData2 = pg_fetch_object($objRec2_2, $k);  
186 - $dData[$i][$j][2][1][$k] = intval($objData2->koumoku_seq); //小項目 SEQ  
187 - }  
188 -  
189 - //大項目小計値  
190 - $dData[$i][$j][5] = 0;  
191 -  
192 - //小項目の合計値算出  
193 - for($k=0;$k<count($dataYM);$k++){  
194 - //消費税有り  
195 - if(count($dData[$i][$j][2][0])>0){  
196 - $wh = "koumoku_seq = ".join(" or koumoku_seq = ", $dData[$i][$j][2][0]);  
197 - $strSQL3 = "select sum(nyukin_data) as totaldata from nyukin_tbl where nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 1 and (".$wh.")";  
198 - $objRec3 = pg_exec($strSQL3);  
199 - if($objRec3==false){  
200 - echo("SQL実行に失敗しました(SELECT)");  
201 - exit;  
202 - }  
203 - if(pg_numrows($objRec3) > 0){  
204 - $objData3 = pg_fetch_object($objRec3, 0);  
205 - $dData[$i][$j][3][0][$k] = $objData3->totaldata; //消費税無し収入計  
206 - }else{  
207 - $dData[$i][$j][3][0][$k] = 0; //収入計  
208 - }  
209 -  
210 - $strSQL3 = "select sum(nyukin_data) as totaldata from nyukin_tbl where nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 2 and (".$wh.")";  
211 - $objRec3 = pg_exec($strSQL3);  
212 - if($objRec3==false){  
213 - echo("SQL実行に失敗しました(SELECT)");  
214 - exit;  
215 - }  
216 - if(pg_numrows($objRec3) > 0){  
217 - $objData3 = pg_fetch_object($objRec3, 0);  
218 - $dData[$i][$j][4][0][$k] = $objData3->totaldata; //消費税無し支出計  
219 - }else{  
220 - $dData[$i][$j][4][0][$k] = 0; //支出計  
221 - }  
222 - }  
223 - if (count($dData[$i][$j][2][1])>0){  
224 - $wh = "koumoku_seq = ".join(" or koumoku_seq = ", $dData[$i][$j][2][1]);  
225 - $strSQL3 = "select sum(nyukin_data) as totaldata from nyukin_tbl where nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 1 and (".$wh.")";  
226 - $objRec3 = pg_exec($strSQL3);  
227 - if($objRec3==false){  
228 - echo("SQL実行に失敗しました(SELECT)");  
229 - exit;  
230 - }  
231 - if(pg_numrows($objRec3) > 0){  
232 - $objData3 = pg_fetch_object($objRec3, 0);  
233 - $dData[$i][$j][3][1][$k] = $objData3->totaldata; //消費税有り収入計  
234 - }else{  
235 - $dData[$i][$j][3][1][$k] = 0; //収入計  
236 - }  
237 -  
238 - $strSQL3 = "select sum(nyukin_data) as totaldata from nyukin_tbl where nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 2 and (".$wh.")";  
239 - $objRec3 = pg_exec($strSQL3);  
240 - if($objRec3==false){  
241 - echo("SQL実行に失敗しました(SELECT)");  
242 - exit;  
243 - }  
244 - if(pg_numrows($objRec3) > 0){  
245 - $objData3 = pg_fetch_object($objRec3, 0);  
246 - $dData[$i][$j][4][1][$k] = $objData3->totaldata; //消費税無し支出計  
247 - }else{  
248 - $dData[$i][$j][4][1][$k] = 0; //支出計  
249 - }  
250 - }  
251 - if (count($dData[$i][$j][2][0])==0 && count($dData[$i][$j][2][1])==0){  
252 - $dData[$i][$j][3][0][$k] = 0; //収入計  
253 - $dData[$i][$j][4][0][$k] = 0; //支出計  
254 - $dData[$i][$j][3][1][$k] = 0; //収入計  
255 - $dData[$i][$j][4][1][$k] = 0; //支出計  
256 - $comData[$i][$j][1][$k] = 0; //収入コメント無し  
257 - $comData[$i][$j][2][$k] = 0; //支出コメント無し  
258 - }  
259 - $dData[$i][$j][5] = $dData[$i][$j][5] + intval($dData[$i][$j][3][$k]);  
260 -  
261 - $whflg =0;  
262 - if (count($dData[$i][$j][2][0])>0 || count($dData[$i][$j][2][1])>0){  
263 - $wh = "koumoku_seq = ";  
264 - if (count($dData[$i][$j][2][0]) > 0) {  
265 - $wh .= join(" or koumoku_seq = ", $dData[$i][$j][2][0]);  
266 - $whflg =1;  
267 - }  
268 - if (count($dData[$i][$j][2][1]) > 0){  
269 - if ($whflg ==1 ) {  
270 - $wh .= " or koumoku_seq = ";  
271 - }  
272 - $wh .= join(" or koumoku_seq = ", $dData[$i][$j][2][1]);  
273 - }  
274 - }  
275 - //収入コメントの有無チェック  
276 - $strSQL3 = "SELECT * FROM comment_tbl WHERE nyukin_year = ".$dataYM[$k][0]." AND nyukin_month = ".$dataYM[$k][1]." AND nyukin_mode = 1 AND (".$wh.")";  
277 - $objRec3 = pg_exec($strSQL3);  
278 - if($objRec3==false){  
279 - echo("SQL実行に失敗しました(SELECT)");  
280 - exit;  
281 - }  
282 - if(pg_numrows($objRec3) > 0){  
283 - $objData3 = pg_fetch_object($objRec3, 0);  
284 - if ( mb_strlen($objData3->comment_text, "EUC-JP" ) > 0){  
285 - $comData[$i][$j][1][$k] = 1; //収入コメント有り  
286 - }  
287 - }  
288 - //支出コメントの有無チェック  
289 - $strSQL3 = "SELECT * FROM comment_tbl WHERE nyukin_year = ".$dataYM[$k][0]." AND nyukin_month = ".$dataYM[$k][1]." AND nyukin_mode = 2 AND (".$wh.")";  
290 - $objRec3 = pg_exec($strSQL3);  
291 - if($objRec3==false){  
292 - echo("SQL実行に失敗しました(SELECT)");  
293 - exit;  
294 - }  
295 - if(pg_numrows($objRec3) > 0){  
296 - $objData3 = pg_fetch_object($objRec3, 0);  
297 - if ( mb_strlen($objData3->comment_text, "EUC-JP" ) > 0){  
298 - $comData[$i][$j][2][$k] = 1; //支出コメント有り  
299 - }  
300 - }  
301 - }  
302 - }  
303 - }  
304 - }  
305 -}  
306 -  
307 -//小計  
308 -$miniTotal;  
309 -for($i=0;$i<count($bData);$i++){  
310 - for($j=0;$j<count($dData[$i]);$j++){  
311 - for($k=0;$k<count($dataYM);$k++){  
312 - $miniTotal[$i][1][$k] = intval($miniTotal[$i][1][$k]) + intval($dData[$i][$j][3][0][$k]) + round(intval($dData[$i][$j][3][1][$k]) * floatval($DEFARR[10])) ; //収入小計  
313 - $miniTotal[$i][2][$k] = intval($miniTotal[$i][2][$k]) + intval($dData[$i][$j][4][0][$k]) + round(intval($dData[$i][$j][4][1][$k]) * floatval($DEFARR[10])) ; //支出小計  
314 - $miniTotal[$i][3][$k] = intval($miniTotal[$i][1][$k]) - intval($miniTotal[$i][2][$k]); //小計残高  
315 - }  
316 - }  
317 -}  
318 -//経費  
319 -$keihi;  
320 -$keihi[1][0] = $kurikoshi[1][0];  
321 -$keihi[2][0] = $kurikoshi[2][0];  
322 -for($i=0;$i<count($bData);$i++){  
323 - for($k=0;$k<count($dataYM);$k++){  
324 - $keihi[1][$k] = intval($keihi[1][$k]) + $miniTotal[$i][1][$k];  
325 - $keihi[2][$k] = intval($keihi[2][$k]) + $miniTotal[$i][2][$k];  
326 - }  
327 -}  
328 -  
329 -  
330 -//調整  
331 -for($k=0;$k<count($dataYM);$k++){  
332 - $strSQL = "select * from nyukin_tbl where koumoku_seq = 0 and nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 1";  
333 - $objRec = pg_exec($strSQL);  
334 - if($objRec==false){  
335 - echo("SQL実行に失敗しました(SELECT)");  
336 - exit;  
337 - }  
338 - if(pg_numrows($objRec) > 0){  
339 - $objData = pg_fetch_object($objRec, 0);  
340 - $shikin[1][$k] = $objData->nyukin_data;  
341 - }else{  
342 - $shikin[1][$k] = 0;  
343 - }  
344 - $strSQL = "select * from nyukin_tbl where koumoku_seq = 0 and nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 2";  
345 - $objRec = pg_exec($strSQL);  
346 - if($objRec==false){  
347 - echo("SQL実行に失敗しました(SELECT)");  
348 - exit;  
349 - }  
350 - if(pg_numrows($objRec) > 0){  
351 - $objData = pg_fetch_object($objRec, 0);  
352 - $shikin[2][$k] = $objData->nyukin_data;  
353 - }else{  
354 - $shikin[2][$k] = 0;  
355 - }  
356 - $shikin[3][$k] = intval($shikin[1][$k]) - intval($shikin[2][$k]);  
357 -  
358 - for($i=0;$i<count($bData);$i++){  
359 - if($i == 0){  
360 - $miniTotal[$i][3][$k] = $miniTotal[$i][3][$k] + $kurikoshi[3][$k];  
361 - }else{  
362 - $miniTotal[$i][3][$k] = $miniTotal[$i][3][$k] + $miniTotal[$i-1][3][$k];  
363 - }  
364 - if($i == (count($bData) - 1)){  
365 - //次月の繰越データ生成  
366 - $keihi[3][$k] = $miniTotal[$i][3][$k];// + intval($shikin[1][$k]) - intval($shikin[2][$k]);  
367 - if($keihi[3][$k] + $shikin[3][$k] < 0){  
368 - $kurikoshi[1][$k+1] = 0;  
369 - $kurikoshi[2][$k+1] = abs($keihi[3][$k] + $shikin[3][$k]);  
370 - }else{  
371 - $kurikoshi[1][$k+1] = $keihi[3][$k] + $shikin[3][$k];  
372 - $kurikoshi[2][$k+1] = 0;  
373 - }  
374 - $kurikoshi[3][$k+1] = $kurikoshi[1][$k+1] - $kurikoshi[2][$k+1];  
375 - }  
376 - }  
377 - if($k > 0){  
378 - //2月目以降  
379 - $keihi[1][$k] = $keihi[1][$k] + $kurikoshi[1][$k];  
380 - $keihi[2][$k] = $keihi[2][$k] + $kurikoshi[2][$k];  
381 - }  
382 -}  
383 -  
384 -  
385 -//金額をカンマ区切りの文字列に変換  
386 -for($k=0;$k<count($dataYM);$k++){  
387 - //繰越データ 表示用配列  
388 - $dspkuri[1][$k] = number_format($kurikoshi[1][$k]);  
389 - $dspkuri[2][$k] = number_format($kurikoshi[2][$k]);  
390 - $dspkuri[3][$k] = number_format($kurikoshi[3][$k]);  
391 -  
392 - //経費  
393 - $dspkeihi[1][$k] = number_format($keihi[1][$k]);  
394 - $dspkeihi[2][$k] = number_format($keihi[2][$k]);  
395 - $dspkeihi[3][$k] = number_format($keihi[3][$k]);  
396 -  
397 - //資金繰り調整  
398 - $dspshikin[3][$k] = number_format($shikin[3][$k]);  
399 -}  
400 -//金額をカンマ区切りの文字列に変換  
401 -//分類(期間)の件数だけループ  
402 -for($i=0;$i<count($bData);$i++){  
403 - //大項目の件数だけループ  
404 - for($j=0;$j<$jCnt[$i];$j++){  
405 -  
406 - //大項目小計  
407 - $dspData[$i][$j][5] = number_format($dData[$i][$j][5]);  
408 -  
409 - //集計月のループ  
410 - for($k=0;$k<count($dataYM);$k++){  
411 - if ($j==0){  
412 - //大項目小計  
413 - $dspminiTotal[$i][1][$k] = number_format($miniTotal[$i][1][$k]);  
414 - $dspminiTotal[$i][2][$k] = number_format($miniTotal[$i][2][$k]);  
415 - $dspminiTotal[$i][3][$k] = number_format($miniTotal[$i][3][$k]);  
416 - }  
417 - //大項目金額  
418 - $dspData[$i][$j][3][$k] = number_format( round( intval($dData[$i][$j][3][0][$k]) + (intval($dData[$i][$j][3][1][$k]) * floatval($DEFARR[10])) ) );  
419 - $dspData[$i][$j][4][$k] = number_format( round( intval($dData[$i][$j][4][0][$k]) + (intval($dData[$i][$j][4][1][$k]) * floatval($DEFARR[10])) ) );  
420 -  
421 - //金額が0の時、空白に置き換える  
422 - if ($dspData[$i][$j][3][$k] == 0) {  
423 - $dspData[$i][$j][3][$k] = "";  
424 - }  
425 - if ($dspData[$i][$j][4][$k] == 0) {  
426 - $dspData[$i][$j][4][$k] = "";  
427 - }  
428 -  
429 - }  
430 - }  
431 -}  
432 -  
433 -//金額単位取得  
434 -$strSQL = "select * from start_tbl";  
435 -$objRec = pg_exec($strSQL);  
436 -if($objRec==false){  
437 - echo("SQL実行に失敗しました(SELECT)");  
438 - exit;  
439 -}  
440 -if(pg_numrows($objRec)>0){  
441 - $objData = pg_fetch_object($objRec, 0);  
442 - $sUnit = $objData->start_unit;  
443 -  
444 - switch ($sUnit) {  
445 - case 0:  
446 - $sUnitName = "円";  
447 - break;  
448 - case 1:  
449 - $sUnitName = "千円";  
450 - break;  
451 - case 2:  
452 - $sUnitName = "万円";  
453 - break;  
454 - }  
455 -  
456 -}else{  
457 - $sUnitName = "";  
458 -}  
459 -  
460 -//HTMLヘッダの書き出し  
461 -if($_GET["mode"] == "p"){  
462 -?>  
463 - <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
464 - <html>  
465 - <head>  
466 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
467 - <meta http-equiv="content-style-type" content="text/css">  
468 - <meta name="robots" content="noindex, nofollow">  
469 - <script type="text/javascript" src="./js/SIM0501.js"></script>  
470 - <style TYPE="text/css">  
471 - @media print {  
472 - ul {  
473 - list-style-image: url(image/yajirusi.gif);  
474 - }  
475 - li {  
476 - margin-left: 20px;  
477 - padding: 0px 0px 4px 0px;  
478 - background: none;  
479 - }  
480 - .needless {  
481 - display: none;  
482 - }  
483 - }  
484 - </style>  
485 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
486 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
487 - </head>  
488 -<?PHP  
489 -}else{  
490 -?>  
491 - <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
492 - <html>  
493 - <head>  
494 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
495 - <meta http-equiv="content-style-type" content="text/css">  
496 - <meta name="robots" content="noindex, nofollow">  
497 - <script type="text/javascript" src="./js/SIM0500.js"></script>  
498 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
499 - <?PHP if($DISP_CNT == "3" || $DISP_CNT == ""){ ?>  
500 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
501 - <?PHP }elseif($DISP_CNT == "6"){ ?>  
502 - <link rel="stylesheet" href="./templates/SIMshikin6.css" type="text/css" />  
503 - <?PHP }else{ ?>  
504 - <link rel="stylesheet" href="./templates/SIMshikin12.css" type="text/css" />  
505 - <?PHP } ?>  
506 - </head>  
507 -<?PHP  
508 - //タイトル部分の表示  
509 - dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0500");  
510 -}  
511 -  
512 -//メインHTML部分の表示  
513 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
514 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
515 -$o_smarty->assign('DEFARR',$DEFARR);  
516 -  
517 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
518 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
519 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
520 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
521 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
522 -$o_smarty->assign('hidKaishi',$START_YEAR.sprintf('%02d', $START_MONTH));  
523 -  
524 -$o_smarty->assign('lstY',$lstY);  
525 -$o_smarty->assign('lstM',$lstM);  
526 -$o_smarty->assign('lstK',$lstK);  
527 -$o_smarty->assign('DISP_CNT',$DISP_CNT);  
528 -$o_smarty->assign('chousei',$chousei);  
529 -$o_smarty->assign('shikin',$shikin);  
530 -$o_smarty->assign('dspshikin',$dspshikin);  
531 -  
532 -$o_smarty->assign('sUnitName',$sUnitName);  
533 -  
534 -$o_smarty->assign('bData',$bData);  
535 -$o_smarty->assign('dData',$dData);  
536 -$o_smarty->assign('dspData',$dspData);  
537 -$o_smarty->assign('comData',$comData);  
538 -$o_smarty->assign('dataYM',$dataYM);  
539 -$o_smarty->assign('dspminiTotal',$dspminiTotal);  
540 -$o_smarty->assign('dspkeihi',$dspkeihi);  
541 -$o_smarty->assign('dspkuri',$dspkuri);  
542 -  
543 -if($_GET["mode"] == "p"){  
544 - $o_smarty->display('SIM0501.tpl');  
545 -}else{  
546 - $o_smarty->display('SIM0500.tpl');  
547 -  
548 - //フッタ部分の表示  
549 - dspFooter($DEFARR[1], $DEFARR[3]);  
550 -}  
551 -  
552 -  
553 -//関数  
554 -function year_lst($prm){  
555 - $ret = "";  
556 - for($i=($prm-2);$i<=($prm+2);$i++){  
557 - if($i==$prm){  
558 - $ret .= "<option value='".$i."' selected>".$i."</option>";  
559 - }else{  
560 - $ret .= "<option value='".$i."'>".$i."</option>";  
561 - }  
562 - }  
563 - return $ret;  
564 -}  
565 -function month_lst($prm){  
566 - $ret = "";  
567 - for($i=1;$i<=12;$i++){  
568 - if($i==$prm){  
569 - $ret .= "<option value='".$i."' selected>".$i."</option>";  
570 - }else{  
571 - $ret .= "<option value='".$i."'>".$i."</option>";  
572 - }  
573 - }  
574 - return $ret;  
575 -}  
576 -  
577 -//最初の前月繰越取得  
578 -function Kurikoshi_Get($pStartMoney, $sYM, $eYM, $zei){  
579 -  
580 - $kurikoshi = 0;  
581 -  
582 - //初期登録月からシミュレーション開始月までの総収入 消費税計算無し  
583 - $strSQL = "SELECT sum(nt.nyukin_data) AS totaldata FROM nyukin_tbl AS nt ";  
584 - $strSQL .= "INNER JOIN koumoku_tbl AS kt ON (kt.koumoku_seq = nt.koumoku_seq) ";  
585 - $strSQL .= "WHERE nt.nyukin_ym >= ".$sYM." AND nt.nyukin_ym < ".$eYM." ";  
586 - $strSQL .= "AND nt.nyukin_mode = 1 AND (kt.shouhizei_flg = 0 OR kt.shouhizei_flg is NULL )";  
587 - $objRec = pg_exec($strSQL);  
588 - if($objRec==false){  
589 - echo("SQL実行に失敗しました(INSERT)");  
590 - exit;  
591 - }  
592 - if (pg_numrows($objRec) > 0) {  
593 - $objData = pg_fetch_object($objRec, 0);  
594 - if ($objData->totaldata > 0){  
595 - $kurikoshi = $kurikoshi + intval($objData->totaldata);  
596 - }  
597 - }  
598 -  
599 - //初期登録月からシミュレーション開始月までの総収入 消費税計算有り  
600 - $strSQL = "SELECT sum(nt.nyukin_data) AS totaldata FROM nyukin_tbl AS nt ";  
601 - $strSQL .= "INNER JOIN koumoku_tbl AS kt ON (kt.koumoku_seq = nt.koumoku_seq) ";  
602 - $strSQL .= "WHERE nt.nyukin_ym >= ".$sYM." AND nt.nyukin_ym < ".$eYM." ";  
603 - $strSQL .= "AND nt.nyukin_mode = 1 AND kt.shouhizei_flg = 1";  
604 - $objRec = pg_exec($strSQL);  
605 - if($objRec==false){  
606 - echo("SQL実行に失敗しました(INSERT)");  
607 - exit;  
608 - }  
609 - if (pg_numrows($objRec) > 0) {  
610 - $objData = pg_fetch_object($objRec, 0);  
611 - if ($objData->totaldata > 0){  
612 - $kurikoshi = $kurikoshi + ( intval($objData->totaldata) * floatval($zei) );  
613 - }  
614 - }  
615 -  
616 -  
617 - //初期登録月からシミュレーション開始月までの総支出 消費税計算無し  
618 - $strSQL = "SELECT sum(nt.nyukin_data) AS totaldata FROM nyukin_tbl AS nt ";  
619 - $strSQL .= "INNER JOIN koumoku_tbl AS kt ON (kt.koumoku_seq = nt.koumoku_seq) ";  
620 - $strSQL .= "WHERE nt.nyukin_ym >= ".$sYM." AND nt.nyukin_ym < ".$eYM." ";  
621 - $strSQL .= "AND nt.nyukin_mode = 2 AND (kt.shouhizei_flg = 0 OR kt.shouhizei_flg is NULL )";  
622 - $objRec = pg_exec($strSQL);  
623 - if($objRec==false){  
624 - echo("SQL実行に失敗しました(INSERT)");  
625 - exit;  
626 - }  
627 - if (pg_numrows($objRec) > 0) {  
628 - $objData = pg_fetch_object($objRec, 0);  
629 - if ($objData->totaldata > 0){  
630 - $kurikoshi = $kurikoshi - intval($objData->totaldata);  
631 - }  
632 - }  
633 -  
634 - //初期登録月からシミュレーション開始月までの総支出 消費税計算有り  
635 - $strSQL = "SELECT sum(nt.nyukin_data) AS totaldata FROM nyukin_tbl AS nt ";  
636 - $strSQL .= "INNER JOIN koumoku_tbl AS kt ON (kt.koumoku_seq = nt.koumoku_seq) ";  
637 - $strSQL .= "WHERE nt.nyukin_ym >= ".$sYM." AND nt.nyukin_ym < ".$eYM." ";  
638 - $strSQL .= "AND nt.nyukin_mode = 2 AND kt.shouhizei_flg = 1";  
639 - $objRec = pg_exec($strSQL);  
640 - if($objRec==false){  
641 - echo("SQL実行に失敗しました(INSERT)");  
642 - exit;  
643 - }  
644 - if (pg_numrows($objRec) > 0) {  
645 - $objData = pg_fetch_object($objRec, 0);  
646 - if ($objData->totaldata > 0){  
647 - $kurikoshi = $kurikoshi - ( intval($objData->totaldata) * floatval($zei) );  
648 - }  
649 - }  
650 -  
651 - //初期繰越金  
652 - $kurikoshi = round($kurikoshi + $pStartMoney);  
653 -  
654 - return $kurikoshi;  
655 -}  
656 -  
657 -  
658 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:資金繰り表CSVファイル吐き出し  
4 -//* プログラムID:SIM0600.php  
5 -//* 機能 :CSVファイルにデータを吐き出す  
6 -//*****************************************************************************  
7 -//***************************  
8 -//* インクルードファイル  
9 -//***************************  
10 -include("./inc/session_start.inc");  
11 -include("./inc/SessionChk.inc");  
12 -include("./inc/dbcon.inc");  
13 -include('./inc/smarty.conf');  
14 -include("./inc/const.inc");  
15 -include("./inc/jcode.php");  
16 -  
17 -$filename = "資金繰表".date("Y").date("m").date("d").".csv";  
18 -//$filename = JcodeConvert($filename, 1, 2);  
19 -  
20 -Header("Content-Disposition: attachment; filename=\"$filename\"");  
21 -Header("Content-Type: text/csv");  
22 -  
23 -$yyyy = $_POST["yyyy"];  
24 -$mon = $_POST["mon"];  
25 -$kikan = $_POST["kikan"];  
26 -$chousei = $_POST["chousei"];  
27 -$shikin = $_POST["shikin"];  
28 -  
29 -//年  
30 -if($yyyy == ""){  
31 - $yyyy = date("Y");  
32 -}  
33 -//月  
34 -if($mon == ""){  
35 - $mon = date("n");  
36 -}  
37 -if($yyyy.sprintf('%02d', $mon) < $START_YEAR.sprintf('%02d', $START_MONTH)){  
38 - $yyyy = $START_YEAR;  
39 - $mon = $START_MONTH;  
40 -}  
41 -  
42 -//期間が空なら3ヶ月をデフォルトにする。  
43 -if($kikan == ""){  
44 - $kikan = "3";  
45 -}  
46 -  
47 -//何ヶ月表示?  
48 -$DISP_CNT = $kikan;  
49 -  
50 -//年月配列  
51 -for($i=0;$i<$DISP_CNT;$i++){  
52 - $dataYM[$i][0]=$yyyy;  
53 - $dataYM[$i][1]=intval($mon) + $i;  
54 - if($dataYM[$i][1] > 12){  
55 - $dataYM[$i][0] = intval($dataYM[$i][0]) + 1;  
56 - $dataYM[$i][1] = intval($mon) + $i - 12;  
57 - }  
58 -}  
59 -  
60 -//繰越金算出 初期設定の開始期間〜シミュレーション開始期間の前月まで  
61 -$sYM = $START_YEAR.sprintf('%02d', $START_MONTH); //開始年月  
62 -$eYM = $dataYM[0][0].sprintf('%02d', $dataYM[0][1]); //シミュ開始年月  
63 -  
64 -//最初の前月繰越金(+なら[1]、-なら[2])  
65 -//$kuriStart = $kuriTemp[1] - $kuriTemp[2] + $START_MONEY;  
66 -$kuriStart = Kurikoshi_Get($START_MONEY, $sYM, $eYM, $DEFARR[10]);  
67 -  
68 -$kurikoshi[3][0] = $kuriStart;  
69 -if($kuriStart < 0){  
70 - $kurikoshi[1][0] = 0;  
71 - $kurikoshi[2][0] = abs($kuriStart);  
72 -}else{  
73 - $kurikoshi[1][0] = $kuriStart;  
74 - $kurikoshi[2][0] = 0;  
75 -}  
76 -  
77 -//データ  
78 -//分類取得  
79 -$strSQL = "select * from bunrui_tbl order by disp_rank";  
80 -$objRec = pg_exec($strSQL);  
81 -if($objRec==false){  
82 - echo("SQL実行に失敗しました(SELECT)");  
83 - exit;  
84 -}  
85 -if(pg_numrows($objRec) > 0){  
86 - for($i=0;$i<pg_numrows($objRec);$i++){  
87 - $objData = pg_fetch_object($objRec, $i);  
88 - $bData[$i][0] = $objData->bunrui_seq;  
89 - $bData[$i][1] = $objData->bunrui_name;  
90 - }  
91 -}  
92 -  
93 -//分類(期間)の件数だけループ  
94 -for($i=0;$i<count($bData);$i++){  
95 - //大項目  
96 - $strSQL = "select * from koumoku_tbl where koumoku_mode = 1 and koumoku_parent = ".$bData[$i][0]." order by disp_rank";  
97 - $objRec = pg_exec($strSQL);  
98 - if($objRec==false){  
99 - echo("SQL実行に失敗しました(SELECT)");  
100 - exit;  
101 - }  
102 - if(pg_numrows($objRec) > 0){  
103 - $jCnt[$i] = pg_numrows($objRec);  
104 - //大項目の件数だけループ  
105 - for($j=0;$j<pg_numrows($objRec);$j++){  
106 - $objData = pg_fetch_object($objRec, $j);  
107 -  
108 -/*  
109 -$dData[$i][$j]覚書  
110 -$dData[$i][$j][0]:大項目SEQ  
111 -$dData[$i][$j][1]:大項目項目名  
112 -$dData[$i][$j][2]:小項目SEQ配列  
113 -$dData[$i][$j][3][0]:小項目収入配列消費税計算無し  
114 -$dData[$i][$j][3][1]:小項目収入配列消費税計算有り  
115 -$dData[$i][$j][4][0]:小項目支出配列消費税計算無し  
116 -$dData[$i][$j][4][1]:小項目支出配列消費税計算有り  
117 -*/  
118 -  
119 - $dData[$i][$j][0] = $objData->koumoku_seq; //SEQ  
120 - $dData[$i][$j][1] = $objData->koumoku_name; //項目名  
121 - //大項目配下の中項目検索  
122 - //消費税無し  
123 - $strSQL2_1 = "select * from koumoku_tbl where koumoku_mode = 2 and ";  
124 - $strSQL2_1 .= " koumoku_parent = ".$dData[$i][$j][0]." AND (shouhizei_flg = 0 OR shouhizei_flg is NULL ) ";  
125 - $objRec2_1 = pg_exec($strSQL2_1);  
126 - if($objRec2_1==false){  
127 - echo("SQL実行に失敗しました(SELECT)");  
128 - exit;  
129 - }  
130 - //消費税有り  
131 - $strSQL2_2 = "select * from koumoku_tbl where koumoku_mode = 2 and ";  
132 - $strSQL2_2 .= " koumoku_parent = ".$dData[$i][$j][0]." AND shouhizei_flg = 1 order by disp_rank";  
133 - $objRec2_2 = pg_exec($strSQL2_2);  
134 - if($objRec2_2==false){  
135 - echo("SQL実行に失敗しました(SELECT)");  
136 - exit;  
137 - }  
138 - if(pg_numrows($objRec2_1) > 0 || pg_numrows($objRec2_2) > 0){  
139 - //消費税無し  
140 - for($k=0;$k<pg_numrows($objRec2_1);$k++){  
141 - $objData2 = pg_fetch_object($objRec2_1, $k);  
142 - $dData[$i][$j][2][0][$k] = intval($objData2->koumoku_seq); //小項目 SEQ  
143 - }  
144 - //消費税有り  
145 - for($k=0;$k<pg_numrows($objRec2_2);$k++){  
146 - $objData2 = pg_fetch_object($objRec2_2, $k);  
147 - $dData[$i][$j][2][1][$k] = intval($objData2->koumoku_seq); //小項目 SEQ  
148 - }  
149 -  
150 - //小項目の合計値算出  
151 - for($k=0;$k<count($dataYM);$k++){  
152 - //消費税有り  
153 - if(count($dData[$i][$j][2][0])>0){  
154 - $wh = "koumoku_seq = ".join(" or koumoku_seq = ", $dData[$i][$j][2][0]);  
155 - $strSQL3 = "select sum(nyukin_data) as totaldata from nyukin_tbl where nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 1 and (".$wh.")";  
156 - $objRec3 = pg_exec($strSQL3);  
157 - if($objRec3==false){  
158 - echo("SQL実行に失敗しました(SELECT)");  
159 - exit;  
160 - }  
161 - if(pg_numrows($objRec3) > 0){  
162 - $objData3 = pg_fetch_object($objRec3, 0);  
163 - $dData[$i][$j][3][0][$k] = $objData3->totaldata; //消費税無し収入計  
164 - }else{  
165 - $dData[$i][$j][3][0][$k] = 0; //収入計  
166 - }  
167 -  
168 - $strSQL3 = "select sum(nyukin_data) as totaldata from nyukin_tbl where nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 2 and (".$wh.")";  
169 - $objRec3 = pg_exec($strSQL3);  
170 - if($objRec3==false){  
171 - echo("SQL実行に失敗しました(SELECT)");  
172 - exit;  
173 - }  
174 - if(pg_numrows($objRec3) > 0){  
175 - $objData3 = pg_fetch_object($objRec3, 0);  
176 - $dData[$i][$j][4][0][$k] = $objData3->totaldata; //消費税無し支出計  
177 - }else{  
178 - $dData[$i][$j][4][0][$k] = 0; //支出計  
179 - }  
180 - }  
181 - if (count($dData[$i][$j][2][1])>0){  
182 - $wh = "koumoku_seq = ".join(" or koumoku_seq = ", $dData[$i][$j][2][1]);  
183 - $strSQL3 = "select sum(nyukin_data) as totaldata from nyukin_tbl where nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 1 and (".$wh.")";  
184 - $objRec3 = pg_exec($strSQL3);  
185 - if($objRec3==false){  
186 - echo("SQL実行に失敗しました(SELECT)");  
187 - exit;  
188 - }  
189 - if(pg_numrows($objRec3) > 0){  
190 - $objData3 = pg_fetch_object($objRec3, 0);  
191 - $dData[$i][$j][3][1][$k] = $objData3->totaldata; //消費税有り収入計  
192 - }else{  
193 - $dData[$i][$j][3][1][$k] = 0; //収入計  
194 - }  
195 -  
196 - $strSQL3 = "select sum(nyukin_data) as totaldata from nyukin_tbl where nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 2 and (".$wh.")";  
197 - $objRec3 = pg_exec($strSQL3);  
198 - if($objRec3==false){  
199 - echo("SQL実行に失敗しました(SELECT)");  
200 - exit;  
201 - }  
202 - if(pg_numrows($objRec3) > 0){  
203 - $objData3 = pg_fetch_object($objRec3, 0);  
204 - $dData[$i][$j][4][1][$k] = $objData3->totaldata; //消費税無し支出計  
205 - }else{  
206 - $dData[$i][$j][4][1][$k] = 0; //支出計  
207 - }  
208 - }  
209 - if (count($dData[$i][$j][2][0])==0 && count($dData[$i][$j][2][1])==0){  
210 - $dData[$i][$j][3][0][$k] = 0; //収入計  
211 - $dData[$i][$j][4][0][$k] = 0; //支出計  
212 - $dData[$i][$j][3][1][$k] = 0; //収入計  
213 - $dData[$i][$j][4][1][$k] = 0; //支出計  
214 - $comData[$i][$j][1][$k] = 0; //収入コメント無し  
215 - $comData[$i][$j][2][$k] = 0; //支出コメント無し  
216 - }  
217 -  
218 -  
219 - $whflg =0;  
220 - if (count($dData[$i][$j][2][0])>0 || count($dData[$i][$j][2][1])>0){  
221 - $wh = "koumoku_seq = ";  
222 - if (count($dData[$i][$j][2][0]) > 0) {  
223 - $wh .= join(" or koumoku_seq = ", $dData[$i][$j][2][0]);  
224 - $whflg =1;  
225 - }  
226 - if (count($dData[$i][$j][2][1]) > 0){  
227 - if ($whflg ==1 ) {  
228 - $wh .= " or koumoku_seq = ";  
229 - }  
230 - $wh .= join(" or koumoku_seq = ", $dData[$i][$j][2][1]);  
231 - }  
232 - }  
233 - //収入コメントの有無チェック  
234 - $strSQL3 = "SELECT * FROM comment_tbl WHERE nyukin_year = ".$dataYM[$k][0]." AND nyukin_month = ".$dataYM[$k][1]." AND nyukin_mode = 1 AND (".$wh.")";  
235 - $objRec3 = pg_exec($strSQL3);  
236 - if($objRec3==false){  
237 - echo("SQL実行に失敗しました(SELECT)");  
238 - exit;  
239 - }  
240 - if(pg_numrows($objRec3) > 0){  
241 - $objData3 = pg_fetch_object($objRec3, 0);  
242 - if ( mb_strlen($objData3->comment_text, "EUC-JP" ) > 0){  
243 - $comData[$i][$j][1][$k] = 1; //収入コメント有り  
244 - }  
245 - }  
246 - //支出コメントの有無チェック  
247 - $strSQL3 = "SELECT * FROM comment_tbl WHERE nyukin_year = ".$dataYM[$k][0]." AND nyukin_month = ".$dataYM[$k][1]." AND nyukin_mode = 2 AND (".$wh.")";  
248 - $objRec3 = pg_exec($strSQL3);  
249 - if($objRec3==false){  
250 - echo("SQL実行に失敗しました(SELECT)");  
251 - exit;  
252 - }  
253 - if(pg_numrows($objRec3) > 0){  
254 - $objData3 = pg_fetch_object($objRec3, 0);  
255 - if ( mb_strlen($objData3->comment_text, "EUC-JP" ) > 0){  
256 - $comData[$i][$j][2][$k] = 1; //支出コメント有り  
257 - }  
258 - }  
259 - }  
260 - }  
261 - }  
262 - }  
263 -}  
264 -  
265 -//小計  
266 -$miniTotal;  
267 -for($i=0;$i<count($bData);$i++){  
268 - for($j=0;$j<count($dData[$i]);$j++){  
269 - for($k=0;$k<count($dataYM);$k++){  
270 - $miniTotal[$i][1][$k] = intval($miniTotal[$i][1][$k]) + intval($dData[$i][$j][3][0][$k]) + round(intval($dData[$i][$j][3][1][$k]) * floatval($DEFARR[10])) ; //収入小計  
271 - $miniTotal[$i][2][$k] = intval($miniTotal[$i][2][$k]) + intval($dData[$i][$j][4][0][$k]) + round(intval($dData[$i][$j][4][1][$k]) * floatval($DEFARR[10])) ; //支出小計  
272 - $miniTotal[$i][3][$k] = intval($miniTotal[$i][1][$k]) - intval($miniTotal[$i][2][$k]); //小計残高  
273 - }  
274 - }  
275 -}  
276 -//経費  
277 -$keihi;  
278 -$keihi[1][0] = $kurikoshi[1][0];  
279 -$keihi[2][0] = $kurikoshi[2][0];  
280 -for($i=0;$i<count($bData);$i++){  
281 - for($k=0;$k<count($dataYM);$k++){  
282 - $keihi[1][$k] = intval($keihi[1][$k]) + $miniTotal[$i][1][$k];  
283 - $keihi[2][$k] = intval($keihi[2][$k]) + $miniTotal[$i][2][$k];  
284 - }  
285 -}  
286 -  
287 -  
288 -//調整  
289 -for($k=0;$k<count($dataYM);$k++){  
290 - $strSQL = "select * from nyukin_tbl where koumoku_seq = 0 and nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 1";  
291 - $objRec = pg_exec($strSQL);  
292 - if($objRec==false){  
293 - echo("SQL実行に失敗しました(SELECT)");  
294 - exit;  
295 - }  
296 - if(pg_numrows($objRec) > 0){  
297 - $objData = pg_fetch_object($objRec, 0);  
298 - $shikin[1][$k] = $objData->nyukin_data;  
299 - }else{  
300 - $shikin[1][$k] = 0;  
301 - }  
302 - $strSQL = "select * from nyukin_tbl where koumoku_seq = 0 and nyukin_year = ".$dataYM[$k][0]." and nyukin_month = ".$dataYM[$k][1]." and nyukin_mode = 2";  
303 - $objRec = pg_exec($strSQL);  
304 - if($objRec==false){  
305 - echo("SQL実行に失敗しました(SELECT)");  
306 - exit;  
307 - }  
308 - if(pg_numrows($objRec) > 0){  
309 - $objData = pg_fetch_object($objRec, 0);  
310 - $shikin[2][$k] = $objData->nyukin_data;  
311 - }else{  
312 - $shikin[2][$k] = 0;  
313 - }  
314 - $shikin[3][$k] = intval($shikin[1][$k]) - intval($shikin[2][$k]);  
315 -  
316 - for($i=0;$i<count($bData);$i++){  
317 - if($i == 0){  
318 - $miniTotal[$i][3][$k] = $miniTotal[$i][3][$k] + $kurikoshi[3][$k];  
319 - }else{  
320 - $miniTotal[$i][3][$k] = $miniTotal[$i][3][$k] + $miniTotal[$i-1][3][$k];  
321 - }  
322 - if($i == (count($bData) - 1)){  
323 - //次月の繰越データ生成  
324 - $keihi[3][$k] = $miniTotal[$i][3][$k];// + intval($shikin[1][$k]) - intval($shikin[2][$k]);  
325 - if($keihi[3][$k] + $shikin[3][$k] < 0){  
326 - $kurikoshi[1][$k+1] = 0;  
327 - $kurikoshi[2][$k+1] = abs($keihi[3][$k] + $shikin[3][$k]);  
328 - }else{  
329 - $kurikoshi[1][$k+1] = $keihi[3][$k] + $shikin[3][$k];  
330 - $kurikoshi[2][$k+1] = 0;  
331 - }  
332 - $kurikoshi[3][$k+1] = $kurikoshi[1][$k+1] - $kurikoshi[2][$k+1];  
333 - }  
334 - }  
335 - if($k > 0){  
336 - //2月目以降  
337 - $keihi[1][$k] = $keihi[1][$k] + $kurikoshi[1][$k];  
338 - $keihi[2][$k] = $keihi[2][$k] + $kurikoshi[2][$k];  
339 - }  
340 -}  
341 -  
342 -/********************************************************/  
343 -//CSV出力  
344 -//ヘッダの取得  
345 -$strHead = Header_Get($dataYM[0][0], $dataYM[0][1], $DISP_CNT);  
346 -echo(JcodeConvert($strHead, 1, 2) );  
347 -  
348 -  
349 -//繰越金をカンマ区切りの文字列で出力  
350 -$strZen = "前月繰越,,";  
351 -for($k=0;$k<count($dataYM);$k++){  
352 - $strZen .= $kurikoshi[1][$k].",".$kurikoshi[2][$k].",".$kurikoshi[3][$k];  
353 - if ($k < count($dataYM)-1) {  
354 - $strZen .= ",";  
355 - }  
356 - if ($k == count($dataYM)-1) {  
357 - $strZen .= "\n";  
358 - }  
359 -}  
360 -echo(JcodeConvert($strZen, 1, 2) );  
361 -  
362 -//分類(期間)の件数だけループ  
363 -$strKikan = "";  
364 -$strminiTotal = "";  
365 -for($i=0;$i<count($bData);$i++){  
366 - //大項目の件数だけループ  
367 - for($j=0;$j<$jCnt[$i];$j++){  
368 - //分類、大項目  
369 - $strKikan = $bData[$i][1].",";  
370 - $strKikan .= $dData[$i][$j][1].",";  
371 -  
372 - //年月の分のループ  
373 - for($k=0;$k<count($dataYM);$k++){  
374 - //金額  
375 - $strKikan .= intval($dData[$i][$j][3][0][$k]) + round(intval($dData[$i][$j][3][1][$k]) * floatval($DEFARR[10])) ."," ;  
376 - $strKikan .= intval($dData[$i][$j][4][0][$k]) + round(intval($dData[$i][$j][4][1][$k]) * floatval($DEFARR[10])) ."," ;  
377 - if ($k < (count($dataYM)-1) ){  
378 - $strKikan .= ",";  
379 - }  
380 - }  
381 - $strKikan .= "\n";  
382 - echo(JcodeConvert($strKikan, 1, 2) );  
383 - }  
384 -  
385 - //小計  
386 - $strminiTotal = $bData[$i][1]."小計,," ;  
387 - //年月の分のループ  
388 - for($k=0;$k<count($dataYM);$k++){  
389 - $strminiTotal .= $miniTotal[$i][1][$k].",".$miniTotal[$i][2][$k].",".$miniTotal[$i][3][$k] ;  
390 - if ($k < (count($dataYM)-1) ){  
391 - $strminiTotal .= "," ;  
392 - }  
393 - }  
394 - $strminiTotal .= "\n" ;  
395 - echo(JcodeConvert($strminiTotal, 1, 2) );  
396 -}  
397 -  
398 -//経費計  
399 -$strKeihi = "経費計,,";  
400 -for($k=0;$k<count($dataYM);$k++){  
401 - $strKeihi .= $keihi[1][$k].",".$keihi[2][$k].",".$keihi[3][$k];  
402 - if ($k < (count($dataYM)-1) ){  
403 - $strKeihi .= ",";  
404 - }  
405 -}  
406 -$strKeihi .= "\n";  
407 -echo(JcodeConvert($strKeihi, 1, 2) );  
408 -  
409 -//資金繰り調整  
410 -$strShikin = "資金繰り調整,,";  
411 -for($k=0;$k<count($dataYM);$k++){  
412 - $strShikin .= $shikin[1][$k].",".$shikin[2][$k].",".$shikin[3][$k];  
413 - if ($k < (count($dataYM)-1) ){  
414 - $strShikin .= ",";  
415 - }  
416 -}  
417 -$strShikin .= "\n";  
418 -  
419 -echo(JcodeConvert($strShikin, 1, 2) );  
420 -  
421 -/***********************************************/  
422 -  
423 -//ヘッダー行取得  
424 -function Header_Get($pYear, $pMonth, $pkikan){  
425 -  
426 - //年月の取得  
427 - $strDate = $pYear."年,";  
428 - for ($i=$pMonth; $i<($pMonth+$pkikan); $i++) {  
429 - if ($i < 13) {  
430 - $wkM = $i;  
431 - }else{  
432 - $strDate .= $pYear + 1;  
433 - $wkM = $i - 12;  
434 - }  
435 - if ($i == ($pMonth+$pkikan-1) ) {  
436 - $strDate .= ",".$wkM."月";  
437 - }else{  
438 - $strDate .= ",".$wkM."月,,";  
439 - }  
440 - }  
441 - $strDate .= "\n";  
442 -  
443 - //項目行の取得  
444 - $strTitle = "収支,";  
445 - for ($i=0; $i<$pkikan; $i++) {  
446 - $strTitle .= ",入金,出金,残高";  
447 - }  
448 - $strTitle .= "\n";  
449 -  
450 - $ret = $strDate.$strTitle;  
451 -  
452 - return $ret;  
453 -}  
454 -  
455 -//最初の前月繰越取得  
456 -function Kurikoshi_Get($pStartMoney, $sYM, $eYM, $zei){  
457 -  
458 - $kurikoshi = 0;  
459 -  
460 - //初期登録月からシミュレーション開始月までの総収入 消費税計算無し  
461 - $strSQL = "SELECT sum(nt.nyukin_data) AS totaldata FROM nyukin_tbl AS nt ";  
462 - $strSQL .= "INNER JOIN koumoku_tbl AS kt ON (kt.koumoku_seq = nt.koumoku_seq) ";  
463 - $strSQL .= "WHERE nt.nyukin_ym >= ".$sYM." AND nt.nyukin_ym < ".$eYM." ";  
464 - $strSQL .= "AND nt.nyukin_mode = 1 AND (kt.shouhizei_flg = 0 OR kt.shouhizei_flg is NULL )";  
465 - $objRec = pg_exec($strSQL);  
466 - if($objRec==false){  
467 - echo("SQL実行に失敗しました(INSERT)");  
468 - exit;  
469 - }  
470 - if (pg_numrows($objRec) > 0) {  
471 - $objData = pg_fetch_object($objRec, 0);  
472 - if ($objData->totaldata > 0){  
473 - $kurikoshi = $kurikoshi + intval($objData->totaldata);  
474 - }  
475 - }  
476 -  
477 - //初期登録月からシミュレーション開始月までの総収入 消費税計算有り  
478 - $strSQL = "SELECT sum(nt.nyukin_data) AS totaldata FROM nyukin_tbl AS nt ";  
479 - $strSQL .= "INNER JOIN koumoku_tbl AS kt ON (kt.koumoku_seq = nt.koumoku_seq) ";  
480 - $strSQL .= "WHERE nt.nyukin_ym >= ".$sYM." AND nt.nyukin_ym < ".$eYM." ";  
481 - $strSQL .= "AND nt.nyukin_mode = 1 AND kt.shouhizei_flg = 1";  
482 - $objRec = pg_exec($strSQL);  
483 - if($objRec==false){  
484 - echo("SQL実行に失敗しました(INSERT)");  
485 - exit;  
486 - }  
487 - if (pg_numrows($objRec) > 0) {  
488 - $objData = pg_fetch_object($objRec, 0);  
489 - if ($objData->totaldata > 0){  
490 - $kurikoshi = $kurikoshi + ( intval($objData->totaldata) * floatval($zei) );  
491 - }  
492 - }  
493 -  
494 -  
495 - //初期登録月からシミュレーション開始月までの総支出 消費税計算無し  
496 - $strSQL = "SELECT sum(nt.nyukin_data) AS totaldata FROM nyukin_tbl AS nt ";  
497 - $strSQL .= "INNER JOIN koumoku_tbl AS kt ON (kt.koumoku_seq = nt.koumoku_seq) ";  
498 - $strSQL .= "WHERE nt.nyukin_ym >= ".$sYM." AND nt.nyukin_ym < ".$eYM." ";  
499 - $strSQL .= "AND nt.nyukin_mode = 2 AND (kt.shouhizei_flg = 0 OR kt.shouhizei_flg is NULL )";  
500 - $objRec = pg_exec($strSQL);  
501 - if($objRec==false){  
502 - echo("SQL実行に失敗しました(INSERT)");  
503 - exit;  
504 - }  
505 - if (pg_numrows($objRec) > 0) {  
506 - $objData = pg_fetch_object($objRec, 0);  
507 - if ($objData->totaldata > 0){  
508 - $kurikoshi = $kurikoshi - intval($objData->totaldata);  
509 - }  
510 - }  
511 -  
512 - //初期登録月からシミュレーション開始月までの総支出 消費税計算有り  
513 - $strSQL = "SELECT sum(nt.nyukin_data) AS totaldata FROM nyukin_tbl AS nt ";  
514 - $strSQL .= "INNER JOIN koumoku_tbl AS kt ON (kt.koumoku_seq = nt.koumoku_seq) ";  
515 - $strSQL .= "WHERE nt.nyukin_ym >= ".$sYM." AND nt.nyukin_ym < ".$eYM." ";  
516 - $strSQL .= "AND nt.nyukin_mode = 2 AND kt.shouhizei_flg = 1";  
517 - $objRec = pg_exec($strSQL);  
518 - if($objRec==false){  
519 - echo("SQL実行に失敗しました(INSERT)");  
520 - exit;  
521 - }  
522 - if (pg_numrows($objRec) > 0) {  
523 - $objData = pg_fetch_object($objRec, 0);  
524 - if ($objData->totaldata > 0){  
525 - $kurikoshi = $kurikoshi - ( intval($objData->totaldata) * floatval($zei) );  
526 - }  
527 - }  
528 -  
529 - //初期繰越金  
530 - $kurikoshi = round($kurikoshi + $pStartMoney);  
531 -  
532 - return $kurikoshi;  
533 -}  
534 -  
535 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:パスワード設定画面  
4 -//* プログラムID:SIM0810.php  
5 -//* 機能 :分類設定画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -$uSeq = $PHP_USER_SEQ;  
17 -$uName = $PHP_USER_NAME;  
18 -  
19 -//デバッグ  
20 -//echo("mode:".$mode." uSeq :".$uSeq." uName:".$uName."<br>");  
21 -  
22 - $mode == "pass";  
23 -  
24 - //修正  
25 - $strSQL = "SELECT * FROM user_inf WHERE user_seq = ".$uSeq." ORDER BY disp_rank";  
26 - $objRec = pg_exec($strSQL);  
27 - if($objRec==false){  
28 - echo("SQL実行に失敗しました(SELECT)");  
29 - exit;  
30 - }  
31 - $objData = pg_fetch_object($objRec, 0);  
32 - $uSeq = $objData->user_seq;  
33 - $uPw = $objData->user_pw;  
34 - $uName = $objData->user_namekj;  
35 - $btnCap = "個人情報修正";  
36 -  
37 -//HTMLヘッダの書き出し  
38 -?>  
39 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
40 -  
41 -<html>  
42 -<head>  
43 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
44 - <meta http-equiv="content-style-type" content="text/css">  
45 - <meta name="robots" content="noindex, nofollow">  
46 - <script type="text/javascript" src="./js/SIM0810.js"></script>  
47 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
48 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
49 -</head>  
50 -<?PHP  
51 -  
52 -//タイトル部分の表示  
53 -dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0210");  
54 -  
55 -  
56 -//メインHTML部分の表示  
57 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
58 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
59 -$o_smarty->assign('DEFARR',$DEFARR);  
60 -  
61 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
62 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
63 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
64 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
65 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
66 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
67 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
68 -  
69 -$o_smarty->assign('uSeq',$uSeq);  
70 -$o_smarty->assign('uPw',$uPw);  
71 -$o_smarty->assign('uName',$uName);  
72 -  
73 -$o_smarty->assign('btnCap',$btnCap);  
74 -  
75 -$o_smarty->display('SIM0810.tpl');  
76 -  
77 -//フッタ部分の表示  
78 -dspFooter($DEFARR[1], $DEFARR[3]);  
79 -  
80 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:ユーザ更新処理  
4 -//* プログラムID:SIM0952.php  
5 -//* 機能 :ユーザ更新処理  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -  
12 -$seq = $_POST["uSeq"];  
13 -$uName = $_POST["uName"];  
14 -  
15 -$uPw = $_POST["uPw"];  
16 -  
17 -//デバッグ  
18 -echo("mode:".$mode." seq:".$seq." uName:".$uName." uAdmin:".$uAdmin ." uNyukin:".$uNyukin." uShikin:".$uShikin."<br>");  
19 -  
20 -//修正  
21 -$strSQL = "UPDATE user_inf SET user_pw = '".$uPw."' " ;  
22 -$strSQL .= " WHERE user_seq = ".$uSeq ;  
23 -  
24 -//デバグ  
25 -echo($strSQL."<br>");  
26 -  
27 - $objRec = pg_exec($strSQL);  
28 - if($objRec==false){  
29 - echo("SQL実行に失敗しました(UPDATE)");  
30 - exit;  
31 - }  
32 -  
33 -?>  
34 -  
35 -<html>  
36 -<head>  
37 -<meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
38 -<meta http-equiv="content-style-type" content="text/css">  
39 -<meta name="robots" content="noindex, nofollow">  
40 -<title></title>  
41 -<script language="javascript">  
42 -function trans(){  
43 - document.frm.action = "SIM0810.php";  
44 - document.frm.method="POST";  
45 - document.frm.submit();  
46 -}  
47 -</script>  
48 -</head>  
49 -<body onload="trans();">  
50 -<form name="frm">  
51 -  
52 -</form>  
53 -</body>  
54 -</html>  
55 -  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:ユーザ小区分画面  
4 -//* プログラムID:SIM0820.php  
5 -//* 機能 :ユーザ小区分画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -//部門取得  
17 -$bumon = $PHP_BUMON_SEQ;  
18 -  
19 -$strSQL = "select * from bunrui_tbl order by disp_rank";  
20 -$objRec = pg_exec($strSQL);  
21 -if($objRec==false){  
22 - echo("SQL実行に失敗しました(SELECT)");  
23 - exit;  
24 -}  
25 -for ($intCnt = 0; $intCnt < pg_numrows($objRec); $intCnt++) {  
26 - $objData = pg_fetch_object($objRec, $intCnt);  
27 - $bSeq[$intCnt] = $objData->bunrui_seq;  
28 - $bName[$intCnt] = $objData->bunrui_name;  
29 -  
30 -// $strSqlD = "select * from koumoku_tbl where koumoku_mode = 1 and koumoku_parent = ".$bSeq[$intCnt]." order by disp_rank";  
31 -  
32 - $strSqlD = "SELECT distinct kt.koumoku_seq AS kt_seq, kt.koumoku_name AS kt_name, ";  
33 - $strSqlD .= "kt.koumoku_parent AS kt_parent, kt.koumoku_mode AS kt_mode ";  
34 - $strSqlD .= "FROM bunrui_tbl AS bt INNER JOIN koumoku_tbl AS kt ON (bt.bunrui_seq = kt.koumoku_parent) ";  
35 - $strSqlD .= "INNER JOIN koumoku_tbl AS kt2 ON (kt.koumoku_seq = kt2.koumoku_parent) ";  
36 - $strSqlD .= "INNER JOIN kengen_tbl AS ken ON (ken.koumoku_seq = kt2.koumoku_seq) ";  
37 - $strSqlD .= "WHERE kt.koumoku_mode = 1 AND kt2.koumoku_mode = 2 AND ken.bumon_seq = ".$bumon." " ;  
38 -// $strSqlD .= "ORDER BY bt.disp_rank, kt.disp_rank, kt2.disp_rank";  
39 -  
40 -  
41 - $objRecD = pg_exec($strSqlD);  
42 - if($objRecD==false){  
43 - echo("SQL実行に失敗しました(SELECT)");  
44 - exit;  
45 - }  
46 - for ($j = 0; $j < pg_numrows($objRecD); $j++) {  
47 - $objDataD = pg_fetch_object($objRecD, $j);  
48 - $kSeq[$intCnt][$j] = $objDataD->kt_seq;  
49 - $kMode[$intCnt][$j] = $objDataD->kt_mode;  
50 - $kParent[$intCnt][$j] = $objDataD->kt_parent;  
51 - $kName[$intCnt][$j] = $objDataD->kt_name;  
52 -  
53 -// $strSqlC = "select * from koumoku_tbl where koumoku_mode = 2 and koumoku_parent = ".$kSeq[$intCnt][$j]." ORDER BY disp_rank";  
54 - $strSqlC = "SELECT kt2.koumoku_seq AS kt2_seq, kt2.koumoku_name AS kt2_name, ";  
55 - $strSqlC .= "kt2.koumoku_parent AS kt2_parent, kt2.koumoku_mode AS kt2_mode, kt2.shouhizei_flg AS kt2_flg ";  
56 - $strSqlC .= "FROM koumoku_tbl AS kt ";  
57 - $strSqlC .= "INNER JOIN koumoku_tbl AS kt2 ON (kt.koumoku_seq = kt2.koumoku_parent) ";  
58 - $strSqlC .= "INNER JOIN kengen_tbl AS ken ON (ken.koumoku_seq = kt2.koumoku_seq) ";  
59 - $strSqlC .= "WHERE kt.koumoku_mode = 1 AND kt2.koumoku_mode = 2 AND kt2.koumoku_parent = ".$kSeq[$intCnt][$j]." AND ken.bumon_seq = ".$bumon." " ;  
60 - $strSqlC .= "ORDER BY kt.disp_rank, kt2.disp_rank";  
61 -  
62 -//echo($strSqlC."<BR>");  
63 -  
64 - $objRecC = pg_exec($strSqlC);  
65 - if($objRecC==false){  
66 - echo("SQL実行に失敗しました(SELECT)");  
67 - exit;  
68 - }  
69 - for ($k = 0; $k < pg_numrows($objRecC); $k++) {  
70 - $objDataC = pg_fetch_object($objRecC, $k);  
71 - $cSeq[$intCnt][$j][$k] = $objDataC->kt2_seq;  
72 - $cMode[$intCnt][$j][$k] = $objDataC->kt2_mode;  
73 - $cParent[$intCnt][$j][$k] = $objDataC->kt2_parent;  
74 - $cName[$intCnt][$j][$k] = $objDataC->kt2_name;  
75 - $cZeiflg[$intCnt][$j][$k] = $objDataC->kt2_flg;  
76 - }  
77 - }  
78 -}  
79 -  
80 -//HTMLヘッダの書き出し  
81 -?>  
82 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
83 -  
84 -<html>  
85 -<head>  
86 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
87 - <meta http-equiv="content-style-type" content="text/css">  
88 - <meta name="robots" content="noindex, nofollow">  
89 - <script type="text/javascript" src="./js/SIM0820.js"></script>  
90 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
91 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
92 -</head>  
93 -<?PHP  
94 -  
95 -//タイトル部分の表示  
96 -dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0210");  
97 -  
98 -  
99 -//メインHTML部分の表示  
100 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
101 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
102 -$o_smarty->assign('DEFARR',$DEFARR);  
103 -  
104 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
105 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
106 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
107 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
108 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
109 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
110 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
111 -  
112 -$o_smarty->assign('bName',$bName);  
113 -$o_smarty->assign('bSeq',$bSeq);  
114 -  
115 -$o_smarty->assign('kSeq',$kSeq);  
116 -$o_smarty->assign('kMode',$kMode);  
117 -$o_smarty->assign('kParent',$kParent);  
118 -$o_smarty->assign('kName',$kName);  
119 -  
120 -$o_smarty->assign('cSeq',$cSeq);  
121 -$o_smarty->assign('cMode',$cMode);  
122 -$o_smarty->assign('cParent',$cParent);  
123 -$o_smarty->assign('cName',$cName);  
124 -$o_smarty->assign('cZeiflg',$cZeiflg);  
125 -  
126 -$o_smarty->display('SIM0820.tpl');  
127 -  
128 -//フッタ部分の表示  
129 -dspFooter($DEFARR[1], $DEFARR[3]);  
130 -  
131 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:ユーザ小区分設定画面  
4 -//* プログラムID:SIM0821.php  
5 -//* 機能 :小区分設定画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -$mode = $_GET["mode"];  
17 -$seq = $_GET["seq"];  
18 -$kSeq = $_GET["kSeq"];  
19 -$bSeq = $_GET["bSeq"];  
20 -  
21 -  
22 -  
23 -if($mode == "add"){  
24 - //新規  
25 - $kName = "";  
26 - $kParent = get_bunrui($bSeq);  
27 - $kParentD = get_dai($kSeq);  
28 - $kMode = 2;  
29 - $btnCap = "作成";  
30 - $seq = $kSeq;  
31 -  
32 -}else if($mode == "edt"){  
33 - //修正  
34 -  
35 - //小区分取得  
36 - $strSQL = "SELECT * FROM koumoku_tbl WHERE koumoku_seq = ".$seq;  
37 - $objRec = pg_exec($strSQL);  
38 - if($objRec==false){  
39 - echo("SQL実行に失敗しました(SELECT)");  
40 - exit;  
41 - }  
42 - $objData = pg_fetch_object($objRec, 0);  
43 - $kName = $objData->koumoku_name;  
44 - $kParentD = get_dai($objData->koumoku_parent);  
45 - $tmpParent = $objData->koumoku_parent;  
46 - $kMode = 2;  
47 - $kzei = $objData->shouhizei_flg;  
48 - $btnCap = "修正";  
49 -  
50 - //親区分のSeqを取得  
51 - $strSQL = "select * from koumoku_tbl where koumoku_seq = ".$tmpParent;  
52 - $objRec = pg_exec($strSQL);  
53 - if($objRec==false){  
54 - echo("SQL実行に失敗しました(SELECT)");  
55 - exit;  
56 - }  
57 - $objData = pg_fetch_object($objRec, 0);  
58 - $kParent = get_bunrui($objData->koumoku_parent);  
59 -  
60 -}  
61 -  
62 -//HTMLヘッダの書き出し  
63 -?>  
64 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
65 -  
66 -<html>  
67 -<head>  
68 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
69 - <meta http-equiv="content-style-type" content="text/css">  
70 - <meta name="robots" content="noindex, nofollow">  
71 - <script type="text/javascript" src="./js/SIM0821.js"></script>  
72 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
73 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
74 -</head>  
75 -<?PHP  
76 -  
77 -//タイトル部分の表示  
78 -dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0210");  
79 -  
80 -  
81 -//メインHTML部分の表示  
82 -  
83 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
84 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
85 -$o_smarty->assign('DEFARR',$DEFARR);  
86 -  
87 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
88 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
89 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
90 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
91 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
92 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
93 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
94 -  
95 -$o_smarty->assign('kName',$kName);  
96 -$o_smarty->assign('kParent',$kParent);  
97 -$o_smarty->assign('kParentD',$kParentD);  
98 -$o_smarty->assign('kMode',$kMode);  
99 -$o_smarty->assign('btnCap',$btnCap);  
100 -$o_smarty->assign('seq',$seq);  
101 -$o_smarty->assign('kSeq',$kSeq);  
102 -$o_smarty->assign('bSeq',$bSeq);  
103 -$o_smarty->assign('mode',$mode);  
104 -$o_smarty->assign('kzei',$kzei);  
105 -  
106 -$o_smarty->display('SIM0821.tpl');  
107 -  
108 -//フッタ部分の表示  
109 -dspFooter($DEFARR[1], $DEFARR[3]);  
110 -  
111 -//関数  
112 -function get_bunrui($prm){  
113 -  
114 - $strSQL = "SELECT * FROM bunrui_tbl WHERE bunrui_seq = ".$prm;  
115 - $objRec = pg_exec($strSQL);  
116 - if($objRec==false){  
117 - echo("SQL実行に失敗しました(SELECT)");  
118 - exit;  
119 - }  
120 - $objData = pg_fetch_object($objRec, 0);  
121 - $ret = $objData->bunrui_name;  
122 -  
123 - return $ret;  
124 -}  
125 -  
126 -function get_dai($prm){  
127 -  
128 - $strSQL = "SELECT * FROM koumoku_tbl WHERE koumoku_seq = ".$prm;  
129 - $objRec = pg_exec($strSQL);  
130 - if($objRec==false){  
131 - echo("SQL実行に失敗しました(SELECT)");  
132 - exit;  
133 - }  
134 - $objData = pg_fetch_object($objRec, 0);  
135 - $ret = $objData->koumoku_name;  
136 -  
137 - return $ret;  
138 -}  
139 -  
140 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:小区分更新処理  
4 -//* プログラムID:SIM0932.php  
5 -//* 機能 :小区分更新処理  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -  
12 -$mode = $_GET["mode"];  
13 -$seq = $_GET["seq"];  
14 -$kmode = $_GET["kmode"];  
15 -$kName = $_POST["kName"];  
16 -  
17 -$bumon = $PHP_BUMON_SEQ;  
18 -  
19 -if ($_POST["kzei"]){  
20 - $kzei = 1;  
21 -}else{  
22 - $kzei = 0;  
23 -}  
24 -  
25 -if($mode == "add"){  
26 - //新規  
27 - //seq設定  
28 - $strSQL = "SELECT * FROM koumoku_tbl ORDER BY koumoku_seq DESC";  
29 - $objRec = pg_exec($strSQL);  
30 - if($objRec==false){  
31 - echo("SQL実行に失敗しました(SELECT)");  
32 - exit;  
33 - }  
34 - if(pg_numrows($objRec) > 0){  
35 - $objData = pg_fetch_object($objRec, 0);  
36 - $newSeq = $objData->koumoku_seq + 1;  
37 - }else{  
38 - $newSeq = 1;  
39 - }  
40 - //disp_rank  
41 - $strSQL2 = "SELECT * FROM koumoku_tbl WHERE koumoku_mode = ".$kmode." ORDER BY disp_rank DESC";  
42 - $objRec2 = pg_exec($strSQL2);  
43 - if($objRec2==false){  
44 - echo("SQL実行に失敗しました(SELECT)");  
45 - exit;  
46 - }  
47 - if(pg_numrows($objRec2) > 0){  
48 - $objData2 = pg_fetch_object($objRec2, 0);  
49 - $newRank = $objData2->disp_rank + 1;  
50 - }else{  
51 - $newRank = 1;  
52 - }  
53 -  
54 - //項目テーブルINSERT  
55 - $strSQL = "INSERT INTO koumoku_tbl (koumoku_seq, koumoku_mode, koumoku_parent, koumoku_name, disp_rank, shouhizei_flg) ";  
56 - $strSQL .= "VALUES(".$newSeq.", ".$kmode.", ".$seq.", '".$kName."', ".$newRank.", ".$kzei." )";  
57 - $objRec = pg_exec($strSQL);  
58 - if($objRec==false){  
59 - echo("SQL実行に失敗しました(INSERT)");  
60 - exit;  
61 - }  
62 -  
63 - //権限テーブルの新Seq取得  
64 - $strSQL = "SELECT kengen_seq FROM kengen_tbl ORDER BY kengen_seq DESC";  
65 - $objRec = pg_exec($strSQL);  
66 - if($objRec==false){  
67 - echo("SQL実行に失敗しました(SELECT)");  
68 - exit;  
69 - }  
70 - if(pg_numrows($objRec) > 0){  
71 - $objData = pg_fetch_object($objRec, 0);  
72 - $kSeq = $objData->kengen_seq + 1;  
73 - }  
74 -  
75 - //部門に権限を付ける  
76 - $strSQL = "SELECT bumon_seq FROM bumon_tbl WHERE (all_flg = 1 OR bumon_seq = ".$bumon." )" ;  
77 - $objRec = pg_exec($strSQL);  
78 -//echo("SQL:".$strSQL." count:".pg_numrows($objRec)."<BR>" );  
79 - if($objRec==false){  
80 - echo("SQL実行に失敗しました(SELECT)");  
81 - exit;  
82 - }  
83 -  
84 - if(pg_numrows($objRec) > 0){  
85 - for ($i = 0; $i < pg_numrows($objRec); $i++) {  
86 - $objData = pg_fetch_object($objRec, $i);  
87 - $bumSeq[$i] = $objData->bumon_seq;  
88 -  
89 - //権限テーブルINSERT  
90 - $strSQL2 = "INSERT INTO kengen_tbl (kengen_seq, bumon_seq, koumoku_seq) ";  
91 - $strSQL2 .= " VALUES(".($kSeq+$i). ", " .$bumSeq[$i]. ", " .$newSeq. " )";  
92 -  
93 -//echo( "kenSeq:".$kSeq+$i." bumSeq:".$bumSeq[$i]." SQL:".$strSQL2."<BR>" );  
94 - $objRec2 = pg_exec($strSQL2);  
95 - if($objRec2==false){  
96 - echo("SQL実行に失敗しました(INSERT)");  
97 - exit;  
98 - }  
99 -  
100 - }  
101 - }  
102 -  
103 -  
104 -}else if($mode == "edt"){  
105 - //修正  
106 - $strSQL = "UPDATE koumoku_tbl SET koumoku_name = '".$kName."' , shouhizei_flg = ".$kzei." WHERE koumoku_seq = ".$seq ;  
107 -  
108 - $objRec = pg_exec($strSQL);  
109 - if($objRec==false){  
110 - echo("SQL実行に失敗しました(UPDATE)");  
111 - exit;  
112 - }  
113 -  
114 -}else if($mode == "del"){  
115 - //削除  
116 - $strSQL = "DELETE FROM koumoku_tbl WHERE koumoku_seq = ".$seq;  
117 - $objRec = pg_exec($strSQL);  
118 - if($objRec==false){  
119 - echo("SQL実行に失敗しました(DELETE)");  
120 - exit;  
121 - }  
122 - //入金データ削除  
123 - $strSQL = "DELETE FROM nyukin_tbl WHERE koumoku_seq = ".$seq;  
124 - $objRec = pg_exec($strSQL);  
125 - if($objRec==false){  
126 - echo("SQL実行に失敗しました(DELETE)");  
127 - exit;  
128 - }  
129 -  
130 - //権限の削除  
131 - $strSQL = "DELETE FROM kengen_tbl WHERE koumoku_seq = ".$seq;  
132 - $objRec = pg_exec($strSQL);  
133 - if($objRec==false){  
134 - echo("SQL実行に失敗しました(DELETE)");  
135 - exit;  
136 - }  
137 -  
138 - header("Location:./SIM0820.php");  
139 - exit;  
140 -  
141 -}  
142 -  
143 -header("Location:./SIM0820.php");  
144 -exit;  
145 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:分類画面  
4 -//* プログラムID:SIM0910.php  
5 -//* 機能 :分類画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -$strSQL = "select * from bunrui_tbl order by disp_rank";  
17 -$objRec = pg_exec($strSQL);  
18 -if($objRec==false){  
19 - echo("SQL実行に失敗しました(SELECT)");  
20 - exit;  
21 -}  
22 -for ($intCnt = 0; $intCnt < pg_numrows($objRec); $intCnt++) {  
23 - $objData = pg_fetch_object($objRec, $intCnt);  
24 - $bSeq[$intCnt] = $objData->bunrui_seq;  
25 - $bName[$intCnt] = $objData->bunrui_name;  
26 - $bStart[$intCnt] = cnv_date($objData->bunrui_start);  
27 - $bEnd[$intCnt] = cnv_date($objData->bunrui_end);  
28 - $bRanc[$intCnt] = cnv_date($objData->disp_rank);  
29 -  
30 -}  
31 -  
32 -//HTMLヘッダの書き出し  
33 -?>  
34 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
35 -  
36 -<html>  
37 -<head>  
38 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
39 - <meta http-equiv="content-style-type" content="text/css">  
40 - <meta name="robots" content="noindex, nofollow">  
41 - <script type="text/javascript" src="./js/SIM0910.js"></script>  
42 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
43 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
44 -</head>  
45 -<?PHP  
46 -  
47 -//タイトル部分の表示  
48 -dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0210");  
49 -  
50 -  
51 -//メインHTML部分の表示  
52 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
53 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
54 -$o_smarty->assign('DEFARR',$DEFARR);  
55 -  
56 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
57 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
58 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
59 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
60 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
61 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
62 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
63 -$o_smarty->assign('bName',$bName);  
64 -$o_smarty->assign('bStart',$bStart);  
65 -$o_smarty->assign('bEnd',$bEnd);  
66 -$o_smarty->assign('bSeq',$bSeq);  
67 -$o_smarty->assign('bRank',$bRank);  
68 -  
69 -$o_smarty->display('SIM0910.tpl');  
70 -  
71 -//フッタ部分の表示  
72 -dspFooter($DEFARR[1], $DEFARR[3]);  
73 -  
74 -function cnv_date($prm){  
75 - if($prm == 99){  
76 - $ret="末日";  
77 - }else if($prm == 98){  
78 - $ret="末日前";  
79 - }else{  
80 - $ret=$prm."日";  
81 - }  
82 - return $ret;  
83 -}  
84 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:分類設定画面  
4 -//* プログラムID:SIM0911.php  
5 -//* 機能 :分類設定画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -$mode = $_GET["mode"];  
17 -$seq = $_GET["seq"];  
18 -  
19 -if($mode == "add"){  
20 - //新規  
21 - $bName = "";  
22 - $bStart = edit_date(1);  
23 - $bEnd = edit_date(1);  
24 - $btnCap = "作成";  
25 - $seq = 0;  
26 -  
27 -}else if($mode == "edt"){  
28 - //修正  
29 - $strSQL = "select * from bunrui_tbl where bunrui_seq = ".$seq;  
30 - $objRec = pg_exec($strSQL);  
31 - if($objRec==false){  
32 - echo("SQL実行に失敗しました(SELECT)");  
33 - exit;  
34 - }  
35 - $objData = pg_fetch_object($objRec, 0);  
36 - $bName = $objData->bunrui_name;  
37 - $bStart = edit_date($objData->bunrui_start);  
38 - $bEnd = edit_date($objData->bunrui_end);  
39 - $btnCap = "修正";  
40 -  
41 -}else if($mode == "del"){  
42 - //削除  
43 - //配下項目seq取得  
44 - $strSQL = "select * from koumoku_tbl where koumoku_mode = 1 and koumoku_parent = ".$seq;  
45 - $objRec = pg_exec($strSQL);  
46 - if($objRec==false){  
47 - echo("SQL実行に失敗しました(SELECT)");  
48 - exit;  
49 - }  
50 - if(pg_numrows($objRec) > 0){  
51 - for ($intCnt = 0; $intCnt < pg_numrows($objRec); $intCnt++) {  
52 - $objData = pg_fetch_object($objRec, $intCnt);  
53 - $delSeq[$intCnt] = $objData->koumoku_seq;  
54 - $strSQL2 = "select * from koumoku_tbl where koumoku_mode = 2 and koumoku_parent = ".$delSeq[$intCnt];  
55 - $objRec2 = pg_exec($strSQL2);  
56 - if($objRec2==false){  
57 - echo("SQL実行に失敗しました(SELECT)");  
58 - exit;  
59 - }  
60 - if(pg_numrows($objRec2) > 0){  
61 - for($j=0;$j<pg_numrows($objRec2);$j++){  
62 - $objData2 = pg_fetch_object($objRec2, $j);  
63 - $delSeqC[$j] = $objData2->koumoku_seq;  
64 - }  
65 - for ($j = 0; $j < count($delSeqC); $j++) {  
66 - //中項目削除  
67 - $strSQL3 = "delete from koumoku_tbl where koumoku_seq = ".$delSeqC[$j];  
68 - $objRec3 = pg_exec($strSQL3);  
69 - if($objRec3==false){  
70 - echo("SQL実行に失敗しました(DELETE)");  
71 - exit;  
72 - }  
73 - //入金データ削除  
74 - $strSQL3 = "delete from nyukin_tbl where koumoku_seq = ".$delSeqC[$j];  
75 - $objRec3 = pg_exec($strSQL3);  
76 - if($objRec2==false){  
77 - echo("SQL実行に失敗しました(DELETE)");  
78 - exit;  
79 - }  
80 - }  
81 - }  
82 - }  
83 - for ($j = 0; $j < count($delSeq); $j++) {  
84 - //大項目削除  
85 - $strSQL3 = "delete from koumoku_tbl where koumoku_seq = ".$delSeq[$j];  
86 - $objRec3 = pg_exec($strSQL3);  
87 - if($objRec3==false){  
88 - echo("SQL実行に失敗しました(DELETE)");  
89 - exit;  
90 - }  
91 - }  
92 -  
93 - }  
94 -  
95 - //分類削除  
96 - $strSQL = "delete from bunrui_tbl where bunrui_seq = ".$seq;  
97 - $objRec = pg_exec($strSQL);  
98 - if($objRec==false){  
99 - echo("SQL実行に失敗しました(DELETE)");  
100 - exit;  
101 - }  
102 - header("Location:./SIM0910.php");  
103 - exit;  
104 -}  
105 -//HTMLヘッダの書き出し  
106 -?>  
107 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
108 -  
109 -<html>  
110 -<head>  
111 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
112 - <meta http-equiv="content-style-type" content="text/css">  
113 - <meta name="robots" content="noindex, nofollow">  
114 - <script type="text/javascript" src="./js/SIM0911.js"></script>  
115 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
116 - <link rel="stylesheet" href="./templates/SIMmain.css" type="text/css" />  
117 -</head>  
118 -<?PHP  
119 -  
120 -//タイトル部分の表示  
121 -dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0911");  
122 -  
123 -  
124 -//メインHTML部分の表示  
125 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
126 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
127 -$o_smarty->assign('DEFARR',$DEFARR);  
128 -  
129 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
130 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
131 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
132 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
133 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
134 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
135 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
136 -  
137 -$o_smarty->assign('bName',$bName);  
138 -$o_smarty->assign('bStart',$bStart);  
139 -$o_smarty->assign('bEnd',$bEnd);  
140 -$o_smarty->assign('btnCap',$btnCap);  
141 -$o_smarty->assign('seq',$seq);  
142 -$o_smarty->assign('mode',$mode);  
143 -  
144 -$o_smarty->display('SIM0911.tpl');  
145 -  
146 -//フッタ部分の表示  
147 -dspFooter($DEFARR[1], $DEFARR[3]);  
148 -  
149 -function edit_date($prm){  
150 - $arr = array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,98,99);  
151 - $arrD = array("1日","2日","3日","4日","5日","6日","7日","8日","9日","10日","11日","12日","13日","14日","15日","16日","17日","18日","19日","20日","21日","22日","23日","24日","25日","26日","27日","28日","29日","30日","31日","末日前","末日");  
152 - $ret = "";  
153 - for($i=0;$i<count($arr);$i++){  
154 - if($arr[$i] == $prm){  
155 - $ret .= "<option value='".$arr[$i]."' selected>".$arrD[$i]."</option>";  
156 - }else{  
157 - $ret .= "<option value='".$arr[$i]."'>".$arrD[$i]."</option>";  
158 - }  
159 - }  
160 - return $ret;  
161 -}  
162 -  
163 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:分類更新処理  
4 -//* プログラムID:SIM0912.php  
5 -//* 機能 :分類更新処理  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -  
12 -$mode = $_GET["mode"];  
13 -$seq = $_GET["seq"];  
14 -$bName = $_POST["bName"];  
15 -$bStart = $_POST["bStart"];  
16 -$bEnd = $_POST["bEnd"];  
17 -  
18 -if($mode == "add"){  
19 - //新規  
20 - //seq設定  
21 - $strSQL = "select * from bunrui_tbl order by bunrui_seq desc";  
22 - $objRec = pg_exec($strSQL);  
23 - if($objRec==false){  
24 - echo("SQL実行に失敗しました(SELECT)");  
25 - exit;  
26 - }  
27 - if(pg_numrows($objRec) > 0){  
28 - $objData = pg_fetch_object($objRec, 0);  
29 - $newSeq = $objData->bunrui_seq + 1;  
30 -  
31 - //disp_rank  
32 - $strSQL2 = "select * from bunrui_tbl order by disp_rank desc";  
33 - $objRec2 = pg_exec($strSQL2);  
34 - if($objRec2==false){  
35 - echo("SQL実行に失敗しました(SELECT)");  
36 - exit;  
37 - }  
38 - if(pg_numrows($objRec2) > 0){  
39 - $objData2 = pg_fetch_object($objRec2, 0);  
40 - $newRank = pg_numrows($objRec2) + 1;  
41 - }  
42 -  
43 - }else{  
44 - $newSeq = 1;  
45 - $newRank = 1;  
46 - }  
47 - //INSERT  
48 - $strSQL = "insert into bunrui_tbl (bunrui_seq, bunrui_name, bunrui_start, bunrui_end, disp_rank) values(".$newSeq.", '".$bName."', ".$bStart.", ".$bEnd.", ".$newRank.")";  
49 - $objRec = pg_exec($strSQL);  
50 - if($objRec==false){  
51 - echo("SQL実行に失敗しました(INSERT)");  
52 - exit;  
53 - }  
54 -  
55 -}else if($mode == "edt"){  
56 - //修正  
57 - $strSQL = "update bunrui_tbl set bunrui_name = '".$bName."', bunrui_start = ".$bStart.", bunrui_end = ".$bEnd." where bunrui_seq = ".$seq;  
58 - $objRec = pg_exec($strSQL);  
59 - if($objRec==false){  
60 - echo("SQL実行に失敗しました(UPDATE)");  
61 - exit;  
62 - }  
63 -  
64 -}else if($mode == "up" || $mode == "down"){  
65 - if($mode == "up"){ //上へ  
66 - $addNum = -1;  
67 - }else if($mode == "down"){ //下へ  
68 - $addNum = 1;  
69 - }  
70 - //変更対象の表示順取得  
71 - $strSQL = "select * from bunrui_tbl where bunrui_seq = ".$seq;  
72 - $objRec = pg_exec($strSQL);  
73 - if($objRec==false){  
74 - echo("SQL実行に失敗しました(SELECT)");  
75 - exit;  
76 - }  
77 - $objData = pg_fetch_object($objRec, 0);  
78 - $newRank = $objData->disp_rank + $addNum; //新しいdisp_rank  
79 - $oldRank = $objData->disp_rank; //いまのdisp_rank  
80 - //変更対象の前or後のデータ取得  
81 - $strSQL = "select * from bunrui_tbl where disp_rank = ".$newRank;  
82 - $objRec = pg_exec($strSQL);  
83 - if($objRec==false){  
84 - echo("SQL実行に失敗しました(SELECT)");  
85 - exit;  
86 - }  
87 - $objData = pg_fetch_object($objRec, 0);  
88 - $frdSeq = $objData->bunrui_seq;  
89 - //変更対象の前or後のデータ更新  
90 - $strSQL = "update bunrui_tbl set disp_rank = ".$oldRank." where bunrui_seq = ".$frdSeq;  
91 - $objRec = pg_exec($strSQL);  
92 - if($objRec==false){  
93 - echo("SQL実行に失敗しました(UPDATE)");  
94 - exit;  
95 - }  
96 - //変更対象のデータ更新  
97 - $strSQL = "update bunrui_tbl set disp_rank = ".$newRank." where bunrui_seq = ".$seq;  
98 - $objRec = pg_exec($strSQL);  
99 - if($objRec==false){  
100 - echo("SQL実行に失敗しました(UPDATE)");  
101 - exit;  
102 - }  
103 -  
104 -}  
105 -  
106 -header("Location:./SIM0910.php");  
107 -exit;  
108 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:大項目画面  
4 -//* プログラムID:SIM0920.php  
5 -//* 機能 :大項目画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -  
14 -$strSQL = "select * from bunrui_tbl order by disp_rank";  
15 -$objRec = pg_exec($strSQL);  
16 -if($objRec==false){  
17 - echo("SQL実行に失敗しました(SELECT)");  
18 - exit;  
19 -}  
20 -for ($intCnt = 0; $intCnt < pg_numrows($objRec); $intCnt++) {  
21 - $objData = pg_fetch_object($objRec, $intCnt);  
22 - $bSeq[$intCnt] = $objData->bunrui_seq;  
23 - $bName[$intCnt] = $objData->bunrui_name;  
24 -  
25 - $strSqlD = "select * from koumoku_tbl where koumoku_mode = 1 and koumoku_parent = ".$bSeq[$intCnt]." order by disp_rank";  
26 - $objRecD = pg_exec($strSqlD);  
27 - if($objRecD==false){  
28 - echo("SQL実行に失敗しました(SELECT)");  
29 - exit;  
30 - }  
31 - for ($j = 0; $j < pg_numrows($objRecD); $j++) {  
32 - $objDataD = pg_fetch_object($objRecD, $j);  
33 - $kSeq[$intCnt][$j] = $objDataD->koumoku_seq;  
34 - $kMode[$intCnt][$j] = $objDataD->koumoku_mode;  
35 - $kParent[$intCnt][$j] = $objDataD->koumoku_parent;  
36 - $kName[$intCnt][$j] = $objDataD->koumoku_name;  
37 -  
38 -  
39 - }  
40 -}  
41 -  
42 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
43 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
44 -$o_smarty->assign('DEFARR',$DEFARR);  
45 -  
46 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
47 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
48 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
49 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
50 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
51 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
52 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
53 -$o_smarty->assign('bName',$bName);  
54 -$o_smarty->assign('bSeq',$bSeq);  
55 -  
56 -$o_smarty->assign('kSeq',$kSeq);  
57 -$o_smarty->assign('kMode',$kMode);  
58 -$o_smarty->assign('kParent',$kParent);  
59 -$o_smarty->assign('kName',$kName);  
60 -  
61 -$o_smarty->display('SIM0920.tpl');  
62 -  
63 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:大項目設定画面  
4 -//* プログラムID:SIM0921.php  
5 -//* 機能 :大項目設定画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -  
14 -$mode = $_GET["mode"];  
15 -$seq = $_GET["seq"];  
16 -  
17 -if($mode == "add"){  
18 - //新規  
19 - $kName = "";  
20 - $kParent = edit_bunrui(0);  
21 - $kMode = 1;  
22 - $btnCap = "作成";  
23 - $seq = 0;  
24 -  
25 -}else if($mode == "edt"){  
26 - //修正  
27 - $strSQL = "select * from koumoku_tbl where koumoku_seq = ".$seq;  
28 - $objRec = pg_exec($strSQL);  
29 - if($objRec==false){  
30 - echo("SQL実行に失敗しました(SELECT)");  
31 - exit;  
32 - }  
33 - $objData = pg_fetch_object($objRec, 0);  
34 - $kName = $objData->koumoku_name;  
35 - $kParent = edit_bunrui($objData->koumoku_parent);  
36 - $kMode = 1;  
37 - $btnCap = "修正";  
38 -  
39 -}else if($mode == "del"){  
40 - //削除  
41 - $strSQL = "delete from koumoku_tbl where koumoku_seq = ".$seq;  
42 - $objRec = pg_exec($strSQL);  
43 - if($objRec==false){  
44 - echo("SQL実行に失敗しました(DELETE)");  
45 - exit;  
46 - }  
47 - //配下の中項目seq取得  
48 - $strSQL = "select * from koumoku_tbl where koumoku_mode = 2 and koumoku_parent = ".$seq;  
49 - $objRec = pg_exec($strSQL);  
50 - if($objRec==false){  
51 - echo("SQL実行に失敗しました(SELECT)");  
52 - exit;  
53 - }  
54 - if(pg_numrows($objRec) > 0){  
55 - for ($intCnt = 0; $intCnt < pg_numrows($objRec); $intCnt++) {  
56 - $objData = pg_fetch_object($objRec, $intCnt);  
57 - $delSeq[$intCnt] = $objData->koumoku_seq;  
58 - }  
59 - for ($intCnt = 0; $intCnt < count($delSeq); $intCnt++) {  
60 - //中項目削除  
61 - $strSQL2 = "delete from koumoku_tbl where koumoku_seq = ".$delSeq[$intCnt];  
62 - $objRec2 = pg_exec($strSQL2);  
63 - if($objRec2==false){  
64 - echo("SQL実行に失敗しました(DELETE)");  
65 - exit;  
66 - }  
67 - //入金データ削除  
68 - $strSQL2 = "delete from nyukin_tbl where koumoku_seq = ".$delSeq[$intCnt];  
69 - $objRec2 = pg_exec($strSQL2);  
70 - if($objRec2==false){  
71 - echo("SQL実行に失敗しました(DELETE)");  
72 - exit;  
73 - }  
74 - }  
75 -  
76 - }  
77 -  
78 - header("Location:./SIM0920.php");  
79 - exit;  
80 -}  
81 -  
82 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
83 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
84 -$o_smarty->assign('DEFARR',$DEFARR);  
85 -  
86 -$o_smarty->assign('PHP_SYSNAME',$PHP_SYSNAME);  
87 -$o_smarty->assign('PHP_GROUP_NAME',$PHP_GROUP_NAME);  
88 -$o_smarty->assign('PHP_BUMON_NAME',$PHP_BUMON_NAME);  
89 -$o_smarty->assign('PHP_USER_NAME',$PHP_USER_NAME);  
90 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
91 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
92 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
93 -  
94 -$o_smarty->assign('kName',$kName);  
95 -$o_smarty->assign('kParent',$kParent);  
96 -$o_smarty->assign('kMode',$kMode);  
97 -$o_smarty->assign('btnCap',$btnCap);  
98 -$o_smarty->assign('seq',$seq);  
99 -$o_smarty->assign('mode',$mode);  
100 -  
101 -$o_smarty->display('SIM0921.tpl');  
102 -  
103 -function edit_bunrui($prm){  
104 -  
105 - $strSQL = "select * from bunrui_tbl order by disp_rank";  
106 - $objRec = pg_exec($strSQL);  
107 - if($objRec==false){  
108 - echo("SQL実行に失敗しました(SELECT)");  
109 - exit;  
110 - }  
111 - for ($j = 0; $j < pg_numrows($objRec); $j++) {  
112 - $objData = pg_fetch_object($objRec, $j);  
113 - $bSeq[$j] = $objData->bunrui_seq;  
114 - $bName[$j] = $objData->bunrui_name;  
115 -  
116 - }  
117 -  
118 - $ret = "";  
119 - for($i=0;$i<count($bSeq);$i++){  
120 - if($bSeq[$i] == $prm){  
121 - $ret .= "<option value='".$bSeq[$i]."' selected>".$bName[$i]."</option>";  
122 - }else{  
123 - $ret .= "<option value='".$bSeq[$i]."'>".$bName[$i]."</option>";  
124 - }  
125 - }  
126 - return $ret;  
127 -}  
128 -  
129 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:大項目更新処理  
4 -//* プログラムID:SIM0922.php  
5 -//* 機能 :大項目更新処理  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -  
12 -$mode = $_GET["mode"];  
13 -$seq = $_GET["seq"];  
14 -$kmode = $_GET["kmode"];  
15 -$kName = $_POST["kName"];  
16 -$kParent = $_POST["kParent"];  
17 -  
18 -if($mode == "add"){  
19 - //新規  
20 - //seq設定  
21 - $strSQL = "select * from koumoku_tbl order by koumoku_seq desc";  
22 - $objRec = pg_exec($strSQL);  
23 - if($objRec==false){  
24 - echo("SQL実行に失敗しました(SELECT)");  
25 - exit;  
26 - }  
27 - if(pg_numrows($objRec) > 0){  
28 - $objData = pg_fetch_object($objRec, 0);  
29 - $newSeq = $objData->koumoku_seq + 1;  
30 - }else{  
31 - $newSeq = 1;  
32 - }  
33 - //disp_rank  
34 - $strSQL2 = "select * from koumoku_tbl where koumoku_mode = 1 order by disp_rank desc";  
35 - $objRec2 = pg_exec($strSQL2);  
36 - if($objRec2==false){  
37 - echo("SQL実行に失敗しました(SELECT)");  
38 - exit;  
39 - }  
40 - if(pg_numrows($objRec2) > 0){  
41 - $objData2 = pg_fetch_object($objRec2, 0);  
42 - $newRank = $objData2->disp_rank + 1;  
43 - }else{  
44 - $newRank = 1;  
45 - }  
46 -  
47 - //INSERT  
48 - $strSQL = "insert into koumoku_tbl (koumoku_seq, koumoku_mode, koumoku_parent, koumoku_name, disp_rank) values(".$newSeq.", ".$kmode.", ".$kParent.", '".$kName."', ".$newRank.")";  
49 - $objRec = pg_exec($strSQL);  
50 - if($objRec==false){  
51 - echo("SQL実行に失敗しました(INSERT)");  
52 - exit;  
53 - }  
54 -  
55 -}else if($mode == "edt"){  
56 - //修正  
57 - $strSQL = "update koumoku_tbl set koumoku_name = '".$kName."', koumoku_parent = ".$kParent." where koumoku_seq = ".$seq;  
58 - $objRec = pg_exec($strSQL);  
59 - if($objRec==false){  
60 - echo("SQL実行に失敗しました(UPDATE)");  
61 - exit;  
62 - }  
63 -  
64 -}else if($mode == "up" || $mode == "down"){  
65 - if($mode == "up"){ //上へ  
66 - $addNum = -1;  
67 - }else if($mode == "down"){ //下へ  
68 - $addNum = 1;  
69 - }  
70 - //変更対象の表示順取得  
71 - //Parent取得  
72 - $strSQL = "SELECT * FROM koumoku_tbl WHERE koumoku_seq = ".$seq;  
73 - $objRec = pg_exec($strSQL);  
74 - if($objRec==false){  
75 - echo("SQL実行に失敗しました(SELECT)");  
76 - exit;  
77 - }  
78 - if(pg_numrows($objRec) > 0){  
79 - $objRec = pg_fetch_object($objRec, 0);  
80 - $parentSeq = $objRec->koumoku_parent ;  
81 - }  
82 -  
83 - $strSQL = "SELECT * FROM koumoku_tbl WHERE koumoku_mode = 1 AND koumoku_parent = ".$parentSeq." ORDER BY disp_rank" ;  
84 - $objRec = pg_exec($strSQL);  
85 - if($objRec==false){  
86 - echo("SQL実行に失敗しました(SELECT)");  
87 - exit;  
88 - }  
89 - if(pg_numrows($objRec) > 0){  
90 - for ($i = 0; $i < pg_numrows($objRec); $i++) {  
91 - //親Seqが同じレコードを配列に格納  
92 - $objDspRec[$i] = pg_fetch_object($objRec, $i);  
93 - $dspSeq[$i] = $objDspRec[$i]->koumoku_seq ;  
94 - $dspRnk[$i] = $objDspRec[$i]->disp_rank ;  
95 -//デバッグ  
96 -//echo($i." : ".$dspRnk[$i]." : ".$dspSeq[$i]." : ".$seq."<br>");  
97 - if ($dspSeq[$i] == $seq) {  
98 - //自分が何番目かを取得  
99 - $ownCnt = $i ;  
100 - }  
101 - }  
102 - }  
103 -  
104 - //変更対象の前or後のデータ更新  
105 - $strSQL = "UPDATE koumoku_tbl SET disp_rank = ".$dspRnk[$ownCnt]." WHERE koumoku_seq = ".$dspSeq[$ownCnt+$addNum]." AND koumoku_mode = 1" ;  
106 -//echo($strSQL);  
107 - $objRec = pg_exec($strSQL);  
108 - if($objRec==false){  
109 - echo("SQL実行に失敗しました(UPDATE)");  
110 - exit;  
111 - }  
112 - //変更対象のデータ更新  
113 - $strSQL = "UPDATE koumoku_tbl SET disp_rank = ".$dspRnk[$ownCnt+$addNum]." WHERE koumoku_seq = ".$dspSeq[$ownCnt]." AND koumoku_mode = 1" ;  
114 - $objRec = pg_exec($strSQL);  
115 - if($objRec==false){  
116 - echo("SQL実行に失敗しました(UPDATE)");  
117 - exit;  
118 - }  
119 -  
120 -}  
121 -  
122 -header("Location:./SIM0920.php");  
123 -exit;  
124 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:区分編集画面  
4 -//* プログラムID:SIM0930.php  
5 -//* 機能 :区分編集画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -include("./inc/pagetitle.inc");  
14 -include("./inc/pagefooter.inc");  
15 -  
16 -//期間区分取得  
17 -$strSQL = "select * from bunrui_tbl order by disp_rank";  
18 -$objRec = pg_exec($strSQL);  
19 -if($objRec==false){  
20 - echo("SQL実行に失敗しました(SELECT)");  
21 - exit;  
22 -}  
23 -for ($intCnt = 0; $intCnt < pg_numrows($objRec); $intCnt++) {  
24 - $objData = pg_fetch_object($objRec, $intCnt);  
25 - $bSeq[$intCnt] = $objData->bunrui_seq;  
26 - $bName[$intCnt] = $objData->bunrui_name;  
27 -  
28 - //期間区分に紐つく大区分の数を取得  
29 - $bCnt[$intCnt] = get_colspanK($bSeq[$intCnt]);  
30 -  
31 - //大区分の取得  
32 - $strSqlD = "select * from koumoku_tbl where koumoku_mode = 1 and koumoku_parent = ".$bSeq[$intCnt]." order by disp_rank";  
33 - $objRecD = pg_exec($strSqlD);  
34 - if($objRecD==false){  
35 - echo("SQL実行に失敗しました(SELECT)");  
36 - exit;  
37 - }  
38 - for ($j = 0; $j < pg_numrows($objRecD); $j++) {  
39 - $objDataD = pg_fetch_object($objRecD, $j);  
40 - $kSeq[$intCnt][$j] = $objDataD->koumoku_seq;  
41 - $kMode[$intCnt][$j] = $objDataD->koumoku_mode;  
42 - $kParent[$intCnt][$j] = $objDataD->koumoku_parent;  
43 - $kName[$intCnt][$j] = $objDataD->koumoku_name;  
44 - $kRank[$intCnt][$j] = $objDataD->disp_rank;  
45 -  
46 - //大区分に紐付く小区分の数を取得  
47 - $kCnt[$intCnt][$j] = get_colspanD($kSeq[$intCnt][$j]);  
48 -  
49 - //小区分の取得  
50 - $strSqlC = "select * from koumoku_tbl where koumoku_mode = 2 and koumoku_parent = ".$kSeq[$intCnt][$j]." order by disp_rank";  
51 - $objRecC = pg_exec($strSqlC);  
52 - if($objRecC==false){  
53 - echo("SQL実行に失敗しました(SELECT)");  
54 - exit;  
55 - }  
56 - for ($k = 0; $k < pg_numrows($objRecC); $k++) {  
57 - $objDataC = pg_fetch_object($objRecC, $k);  
58 - $cSeq[$intCnt][$j][$k] = $objDataC->koumoku_seq;  
59 - $cMode[$intCnt][$j][$k] = $objDataC->koumoku_mode;  
60 - $cParent[$intCnt][$j][$k] = $objDataC->koumoku_parent;  
61 - $cName[$intCnt][$j][$k] = $objDataC->koumoku_name;  
62 - $cRank[$intCnt][$j][$k] = $objDataC->disp_rank;  
63 - $cZeiflg[$intCnt][$j][$k] = $objDataC->shouhizei_flg;  
64 - }  
65 - }  
66 -}  
67 -  
68 -//区分Seqの最大値取得  
69 - $strSql = "SELECT * FROM koumoku_tbl ORDER BY koumoku_seq DESC";  
70 - $objRec = pg_exec($strSql);  
71 - if($objRec==false){  
72 - echo("SQL実行に失敗しました(SELECT)");  
73 - exit;  
74 - }  
75 - if (pg_numrows($objRec) > 0) {  
76 - $objData = pg_fetch_object($objRec, 0);  
77 - $SeqMax = $objData->koumoku_seq;  
78 - } else {  
79 - $SeqMax = 0;  
80 - }  
81 -  
82 -//区分rankの最大値取得  
83 - $strSql = "SELECT * FROM koumoku_tbl ORDER BY disp_rank DESC";  
84 - $objRec = pg_exec($strSql);  
85 - if($objRec==false){  
86 - echo("SQL実行に失敗しました(SELECT)");  
87 - exit;  
88 - }  
89 - if (pg_numrows($objRec) > 0) {  
90 - $objData = pg_fetch_object($objRec, 0);  
91 - $rankMax = $objData->disp_rank;  
92 - } else {  
93 - $rankMax = 0;  
94 - }  
95 -  
96 -//HTMLヘッダの書き出し  
97 -?>  
98 -  
99 -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">  
100 -<html>  
101 -<head>  
102 - <meta http-equiv="content-type" content="text/html; cahrset=euc-jp">  
103 - <meta http-equiv="content-style-type" content="text/css">  
104 - <meta name="robots" content="noindex, nofollow">  
105 -  
106 - <script type="text/javascript" src="./js/jquery1.3.2.js"></script>  
107 - <script type="text/javascript" src="./js/ui.core.js"></script>  
108 - <script type="text/javascript" src="./js/ui.draggable.js"></script>  
109 - <script type="text/javascript" src="./js/ui.droppable.js"></script>  
110 - <script type="text/javascript" src="./js/ui.sortable.js"></script>  
111 - <script type="text/javascript" src="./js/jquery.tipsy.js"></script>  
112 - <script type="text/javascript" src="./js/SIM0930.js"></script>  
113 - <title><?PHP echo($PHP_SYSNAME); ?></title>  
114 - <link type="text/css" href="./templates/jquery-ui-1.7.1.css" rel="stylesheet" />  
115 - <link type="text/css" href="./templates/tipsy.css" rel="stylesheet" />  
116 - <link type="text/css" href="./templates/SIMmain.css" rel="stylesheet" />  
117 -  
118 -</head>  
119 -  
120 -<?PHP  
121 -  
122 -/*  
123 -<!--  
124 - <script type="text/javascript" src="./js/jquery.tablednd_0_5.js"></script>  
125 - <script type="text/javascript" src="./js/ui.core.js"></script>  
126 - <script type="text/javascript" src="./js/ui.draggable.js"></script>  
127 - <script type="text/javascript" src="./js/ui.droppable.js"></script>  
128 - <script type="text/javascript" src="./js/ui.sortable.js"></script>  
129 --->  
130 -*/  
131 -  
132 -//タイトル部分の表示  
133 -dspTitle($PHP_SYSNAME, $PHP_GROUP_NAME, $PHP_BUMON_NAME, $PHP_USER_NAME, "0930");  
134 -  
135 -  
136 -//メインHTML部分の表示  
137 -//[0]システムURL、[1]HP URL、[2]マニュアルURL、[3]MTC HP URL、[4]マスタメールアドレス、  
138 -//[5]期間区分名、[6]大区分名、[7]小区分名、[8]支出名、[9]収入名、[10]消費税率(文字型)  
139 -$o_smarty->assign('DEFARR',$DEFARR);  
140 -  
141 -$o_smarty->assign('PHP_USER_ADMIN',$PHP_USER_ADMIN);  
142 -$o_smarty->assign('PHP_USER_NYUKIN',$PHP_USER_NYUKIN);  
143 -$o_smarty->assign('PHP_USER_SHIKIN',$PHP_USER_SHIKIN);  
144 -$o_smarty->assign('bName',$bName);  
145 -$o_smarty->assign('bSeq',$bSeq);  
146 -$o_smarty->assign('bCnt',$bCnt);  
147 -  
148 -$o_smarty->assign('kSeq',$kSeq);  
149 -$o_smarty->assign('kMode',$kMode);  
150 -$o_smarty->assign('kParent',$kParent);  
151 -$o_smarty->assign('kName',$kName);  
152 -$o_smarty->assign('kRank',$kRank);  
153 -$o_smarty->assign('kCnt',$kCnt);  
154 -  
155 -$o_smarty->assign('cSeq',$cSeq);  
156 -$o_smarty->assign('cMode',$cMode);  
157 -$o_smarty->assign('cParent',$cParent);  
158 -$o_smarty->assign('cName',$cName);  
159 -$o_smarty->assign('cRank',$cRank);  
160 -$o_smarty->assign('cZeiflg',$cZeiflg);  
161 -  
162 -$o_smarty->assign('SeqMax',$SeqMax);  
163 -$o_smarty->assign('rankMax',$rankMax);  
164 -  
165 -$o_smarty->display('SIM0930.tpl');  
166 -  
167 -//フッタ部分の表示  
168 -dspFooter($DEFARR[1], $DEFARR[3]);  
169 -  
170 -  
171 -function get_colspanK($kSeq){  
172 - //期間区分に紐付く大区分の数を取得  
173 - $strSQL = "SELECT count(*) AS cnt FROM koumoku_tbl AS kt WHERE kt.koumoku_parent = ".$kSeq." ";  
174 - $strSQL .= "AND kt.koumoku_mode = 1 ";  
175 - $objRec = pg_exec($strSQL);  
176 - if($objRec==false){  
177 - echo("SQL実行に失敗しました(SELECT)");  
178 - exit;  
179 - }  
180 - if(pg_num_rows($objRec) > 0){  
181 - $objData = pg_fetch_object($objRec, 0);  
182 - $kcnt = $objData->cnt;  
183 - }  
184 - $ret = $kcnt;  
185 - return $ret;  
186 -}  
187 -  
188 -function get_colspanD($dSeq){  
189 - //大区分に紐付く小区分の数を取得  
190 - $strSQL = "SELECT count(*) AS cnt FROM koumoku_tbl AS kt2 WHERE kt2.koumoku_parent = ".$dSeq." ";  
191 - $strSQL .= "AND kt2.koumoku_mode = 2 ";  
192 - $objRec = pg_exec($strSQL);  
193 - if($objRec==false){  
194 - echo("SQL実行に失敗しました(SELECT)");  
195 - exit;  
196 - }  
197 - if(pg_num_rows($objRec) > 0){  
198 - $objData = pg_fetch_object($objRec, 0);  
199 - $dcnt = $objData->cnt;  
200 - }  
201 - $ret = $dcnt;  
202 - return $ret;  
203 -}  
204 -  
205 -?>  
1 -<?PHP  
2 -//*****************************************************************************  
3 -//* プログラム名:小区分設定画面  
4 -//* プログラムID:SIM0931.php  
5 -//* 機能 :小区分設定画面  
6 -//*****************************************************************************  
7 -header("Content-type: text/html; charset=EUC-JP");  
8 -include("./inc/session_start.inc");  
9 -include("./inc/SessionChk.inc");  
10 -include("./inc/dbcon.inc");  
11 -include('./inc/smarty.conf');  
12 -include("./inc/const.inc");  
13 -  
14 -//画面の項目設定の取得  
15 -$dName = $_POST["hdnDName"];  
16 -$dSeq = $_POST["hdnDSeq"];  
17 -$dParent = $_POST["hdnDPare"];  
18 -$dRank = $_POST["hdnDRank"];  
19 -  
20 -$sName = $_POST["hdnSName"];  
21 -$sSeq = $_POST["hdnSSeq"];  
22 -$sParent = $_POST["hdnSPare"];  
23 -$sRank = $_POST["hdnSRank"];  
24 -$sZei = $_POST["hdnSZei"];  
25 -  
26 -//=======================================  
27 -//=== 大区分リストの取得  
28 -//=======================================  
29 -$strSQL = "SELECT * FROM koumoku_tbl WHERE koumoku_mode = 1 ORDER BY disp_rank";  
30 -$objRec = pg_exec($strSQL);  
31 -if($objRec==false){  
32 - echo("SQL実行に失敗しました(SELECT)");  
33 - exit;  
34 -}  
35 -if(pg_numrows($objRec) > 0){  
36 - for ($i = 0; $i < pg_numrows($objRec); $i++) {  
37 - $objData = pg_fetch_object($objRec, $i);  
38 - $dbdSeq[$i] = $objData->koumoku_seq;  
39 - $dbdName[$i] = $objData->koumoku_name;  
40 - $dbdParent[$i] = $objData->koumoku_parent;  
41 - $dbdRank[$i] = $objData->disp_rank;  
42 - }  
43 -}else{  
44 - //レコードセットが空の場合  
45 - $objData = false;  
46 -}  
47 -  
48 -//=======================================  
49 -//=== 大区分リストのDELETE  
50 -//=======================================  
51 -$result = dKubunDelete($dbdSeq, $dSeq);  
52 -if ($result === false) {  
53 - exit;  
54 -}  
55 -//=======================================  
56 -//=== 大区分リストのINSERT  
57 -//=======================================  
58 -$result = dKubunInsert($dbdSeq, $dSeq, $dName, $dParent, $dRank);  
59 -if ($result === false) {  
60 - exit;  
61 -}  
62 -//=======================================  
63 -//=== 大区分リストのUPDATE  
64 -//=======================================  
65 -//DBとPOSTを比較して、差異があればUPDATE  
66 -$result = dKubunUpdate($dbdSeq, $dbdName, $dbdParent, $dbdRank,  
67 - $dSeq, $dName, $dParent, $dRank);  
68 -if ($result === false) {  
69 - exit;  
70 -}  
71 -  
72 -//=======================================  
73 -//=== 小区分リストの取得  
74 -//=======================================  
75 -$strSQL = "SELECT * FROM koumoku_tbl WHERE koumoku_mode = 2 ORDER BY disp_rank";  
76 -$objRec = pg_exec($strSQL);  
77 -if($objRec==false){  
78 - echo("SQL実行に失敗しました(SELECT)");  
79 - exit;  
80 -}  
81 -if(pg_numrows($objRec) > 0){  
82 - for ($i = 0; $i < pg_numrows($objRec); $i++) {  
83 - $objData = pg_fetch_object($objRec, $i);  
84 - $dbsSeq[$i] = $objData->koumoku_seq;  
85 - $dbsName[$i] = $objData->koumoku_name;  
86 - $dbsParent[$i] = $objData->koumoku_parent;  
87 - $dbsRank[$i] = $objData->disp_rank;  
88 - $dbsZei[$i] = $objData->shouhizei_flg;  
89 - }  
90 -}else{  
91 - //レコードセットが空の場合  
92 - $objData = false;  
93 -}  
94 -//=======================================  
95 -//=== 小区分リストのDELETE  
96 -//=======================================  
97 -$result = sKubunDelete($dbsSeq, $sSeq);  
98 -if ($result === false) {  
99 - exit;  
100 -}  
101 -//=======================================  
102 -//=== 小区分リストのINSERT  
103 -//=======================================  
104 -$result = sKubunInsert($dbsSeq, $sSeq, $sName, $sParent, $sRank, $sZei);  
105 -if ($result === false) {  
106 - exit;  
107 -}  
108 -//=======================================  
109 -//=== 大区分リストのUPDATE  
110 -//=======================================  
111 -//DBとPOSTを比較して、差異があればUPDATE  
112 -$result = sKubunUpdate($dbsSeq, $dbsName, $dbsParent, $dbsRank, $dbsZei,  
113 - $sSeq, $sName, $sParent, $sRank, $sZei);  
114 -if ($result === false) {  
115 - exit;  
116 -}  
117 -  
118 -//=======================================  
119 -//=== 大区分リストのDELETE関数  
120 -//=== 引数:DBの大区分SEQ配列, POSTの大区分SEQ配列  
121 -//=== 返値:正常時はtrue、異常時はfalse  
122 -//=======================================  
123 -function dKubunDelete($dbdSeq, $dSeq) {  
124 -  
125 - $dChild = Array();  
126 - $dbuff = "";  
127 -  
128 - //削除する配列要素をカンマ区切りテキストに変換  
129 - for ($i = 0; $i<count($dbdSeq); $i++) {  
130 - if ( array_search($dbdSeq[$i], $dSeq) === false ) {  
131 - if ($dbuff !== "" ) {  
132 - $dbuff .= ", ";  
133 - }  
134 - $dbuff .= $dbdSeq[$i];  
135 - }  
136 - }  
137 -  
138 - if ($dbuff != false ) {  
139 - //項目テーブル削除  
140 - $strSQL = "DELETE FROM koumoku_tbl ";  
141 - $strSQL .= " WHERE koumoku_mode = 1 AND koumoku_seq IN ( ".$dbuff." )";  
142 -//echo("<br>削除SEQ:".$strSQL);  
143 - $objRec = pg_exec($strSQL);  
144 - if($objRec==false){  
145 - echo("SQL実行に失敗しました(DELETE)");  
146 - return false;  
147 - }  
148 -  
149 - //権限の削除  
150 - $strSQL = "DELETE FROM kengen_tbl ";  
151 - $strSQL .= " WHERE koumoku_seq IN ( ".$dbuff." )";  
152 -//echo("<br>削除SEQ:".$strSQL);  
153 - $objRec = pg_exec($strSQL);  
154 - if($objRec==false){  
155 - echo("SQL実行に失敗しました(DELETE)");  
156 - return false;  
157 - }  
158 - }  
159 - return true;  
160 -}  
161 -  
162 -//=======================================  
163 -//=== 大区分リストのINSERT関数  
164 -//=== 引数:DBの大区分SEQ配列, POSTの大区分SEQ、NAME、親SEQ、表示順、配列  
165 -//=== 返値:正常時はtrue、異常時はfalse  
166 -//=======================================  
167 -function dKubunInsert($dbdSeq, $dSeq, $dName, $dParent, $dRank) {  
168 -  
169 - $arrdSeq = array();  
170 - for ($i = 0; $i<count($dSeq); $i++) {  
171 - if ( array_search(intval($dSeq[$i]), $dbdSeq) === false ) {  
172 -//echo("<br>post:".$dSeq[$i]." db:".$dbdSeq[$i]." arr:".array_search($dSeq[$i], $dbdSeq));  
173 - //項目テーブルに追加する配列要素のINSERT文を作成  
174 - $strSQL .= "INSERT INTO koumoku_tbl ";  
175 - $strSQL .= " (koumoku_seq, koumoku_mode, koumoku_parent, koumoku_name, disp_rank, ";  
176 - $strSQL .= " shouhizei_flg, nyukin_mode, disp_flg) VALUES ( ";  
177 - $strSQL .= " ".$dSeq[$i].", 1, ".$dParent[$i].", '".$dName[$i]."', ".$dRank[$i].", ";  
178 - $strSQL .= " null , 3, 0 );";  
179 -  
180 - //追加する項目Seqの配列作成  
181 - array_push($arrdSeq, $dSeq[$i]);  
182 - }  
183 - }  
184 - if ($strSQL == false) {  
185 - //新規追加なし  
186 - return true;  
187 - }  
188 - //項目テーブルの追加実行  
189 -//echo("<br>追加SEQ:".$strSQL);  
190 - $objRec = pg_exec($strSQL);  
191 - if($objRec==false){  
192 - echo("SQL実行に失敗しました(INSERT)");  
193 - return false;  
194 - }  
195 - return true;  
196 -}  
197 -  
198 -  
199 -//=======================================  
200 -//=== 大区分リストのUPDATE関数  
201 -//=== 引数:DBの大区分SEQ、NAME、親SEQ、表示順、配列、  
202 -//=== POSTの大区分SEQ、NAME、親SEQ、表示順、配列  
203 -//=== 返値:正常時はtrue、異常時はfalse  
204 -//=======================================  
205 -function dKubunUpdate($dbdSeq, $dbdName, $dbdParent, $dbdRank,  
206 - $dSeq, $dName, $dParent, $dRank) {  
207 -  
208 - //DBとPOST共通のSeqを取得  
209 - $arrbuf = array_intersect($dbdSeq, $dSeq);  
210 - $arrdSeq = array_unique($arrbuf);  
211 - $strSQL = "";  
212 -  
213 - //更新処理  
214 - foreach ($arrdSeq as $arrval) {  
215 - //DBとPOSTの各配列から、更新すべきSEQの配列番号を取得  
216 - $dbkey = array_search($arrval, $dbdSeq);  
217 - $pokey = array_search($arrval, $dSeq);  
218 -  
219 - //各値を比較し変更があればUPDATE  
220 - if ( $dbkey !== false && $pokey !== false) {  
221 -//echo("<br>".$arrval." db:".$dbdName[$dbkey].":".$dbdParent[$dbkey].":".$dbdRank[$dbkey]." ");  
222 -//echo("<br>".$arrval." po:".$dName[$pokey].":".$dParent[$pokey].":".$dRank[$pokey]." ");  
223 -  
224 - //各値を比較  
225 - $upflg = false;  
226 - if (strcmp((string)$dbdName[$dbkey], (string)$dName[$pokey]) !== 0) { ;  
227 - $upflg = true;  
228 - }  
229 - if (strcmp((string)$dbdParent[$dbkey], (string)$dParent[$pokey]) !== 0) { ;  
230 - $upflg = true;  
231 - }  
232 - if (strcmp((string)$dbdRank[$dbkey], (string)$dRank[$pokey]) !== 0) { ;  
233 - $upflg = true;  
234 - }  
235 -  
236 -//echo("<br>up:".$upflg);  
237 - //差分があるレコードはUPDATE  
238 - if ($upflg === true) {  
239 - $strSQL .= "UPDATE koumoku_tbl SET " ;  
240 - $strSQL .= " koumoku_parent = ".$dParent[$pokey].", " ;  
241 - $strSQL .= " koumoku_name = '".$dName[$pokey]."', " ;  
242 - $strSQL .= " disp_rank = ".$dRank[$pokey]." ";  
243 - $strSQL .= " WHERE koumoku_seq = ".$dSeq[$pokey]." AND koumoku_mode = 1 ;" ;  
244 - }  
245 - }  
246 - }  
247 -  
248 -//echo("<br>更新SEQ:".$strSQL.":bite".strlen( $strSQL));  
249 - //$strSQLの実行  
250 - if ( mb_strlen($strSQL, "EUC-JP") > 0) {  
251 -//echo("strSQL: ".$strSQL);  
252 - $objRec = pg_exec($strSQL);  
253 - if($objRec==false){  
254 - echo("SQL実行に失敗しました(UPDATE)");  
255 - exit;  
256 - }  
257 - }  
258 - return true;  
259 -  
260 -}  
261 -  
262 -//echo("<br>=========================================================<br>");  
263 -  
264 -//=======================================  
265 -//=== 小区分リストのDELETE関数  
266 -//=== 引数:DBの小区分SEQ配列, POSTの小区分SEQ配列  
267 -//=== 返値:正常時はtrue、異常時はfalse  
268 -//=======================================  
269 -function sKubunDelete($dbsSeq, $sSeq) {  
270 - //削除する配列要素をカンマ区切りテキストに変換  
271 - $sbuff = false;  
272 -  
273 - if ( count($sSeq) > 0 ) {  
274 - for ($i = 0; $i<count($dbsSeq); $i++) {  
275 - if ( array_search($dbsSeq[$i], $sSeq) === false ) {  
276 - if ($sbuff !== false && $sbuff !== "") {  
277 - $sbuff .= ", ";  
278 - }  
279 - $sbuff .= $dbsSeq[$i];  
280 - }  
281 - }  
282 - }  
283 -  
284 - if ($sbuff !== false && $sbuff !== "") {  
285 - //項目テーブル削除  
286 - $strSQL = "DELETE FROM koumoku_tbl ";  
287 - $strSQL .= " WHERE koumoku_mode = 2 AND koumoku_seq IN ( ".$sbuff." )";  
288 -//echo("<br>削除SEQ:".$strSQL);  
289 - $objRec = pg_exec($strSQL);  
290 - if($objRec==false){  
291 - echo("SQL実行に失敗しました(DELETE)");  
292 - return false;  
293 - }  
294 -  
295 - //入金データ削除  
296 - $strSQL = "DELETE FROM nyukin_tbl ";  
297 - $strSQL .= " WHERE koumoku_seq IN ( ".$sbuff." )";  
298 -//echo("<br>削除SEQ:".$strSQL);  
299 - $objRec = pg_exec($strSQL);  
300 - if($objRec==false){  
301 - echo("SQL実行に失敗しました(DELETE)");  
302 - return false;  
303 - }  
304 -  
305 - //権限の削除  
306 - $strSQL = "DELETE FROM kengen_tbl ";  
307 - $strSQL .= " WHERE koumoku_seq IN ( ".$sbuff." )";  
308 -//echo("<br>削除SEQ:".$strSQL);  
309 - $objRec = pg_exec($strSQL);  
310 - if($objRec==false){  
311 - echo("SQL実行に失敗しました(DELETE)");  
312 - return false;  
313 - }  
314 - }  
315 - return true;  
316 -}  
317 -  
318 -  
319 -//=======================================  
320 -//=== 小区分リストのINSERT関数  
321 -//=== 引数:DBの小区分SEQ配列, POSTの小区分SEQ、NAME、親SEQ、表示順、消費税、配列  
322 -//=== 返値:正常時はtrue、異常時はfalse  
323 -//=======================================  
324 -function sKubunInsert($dbsSeq, $sSeq, $sName, $sParent, $sRank, $sZei) {  
325 -  
326 - $strSQL = false;  
327 - $arrsSeq = array();  
328 - for ($i = 0; $i<count($sSeq); $i++) {  
329 - if ( count($dbsSeq) > 0 ) {  
330 - if ( array_search(intval($sSeq[$i]), $dbsSeq) === false ) {  
331 -//echo("<br>post:".$sSeq[$i]." db:".$dbsSeq[$i]." arr:".array_search(intval($sSeq[$i]), $dbsSeq). " *:".intval(false));  
332 - //項目テーブルに追加する配列要素のINSERT文を作成  
333 - $strSQL .= "INSERT INTO koumoku_tbl ";  
334 - $strSQL .= " (koumoku_seq, koumoku_mode, koumoku_parent, koumoku_name, disp_rank, ";  
335 - $strSQL .= " shouhizei_flg, nyukin_mode, disp_flg) VALUES ( ";  
336 - $strSQL .= " ".$sSeq[$i].", 2, ".$sParent[$i].", '".$sName[$i]."', ".$sRank[$i].", ";  
337 - $strSQL .= " ".intval($sZei[$i]).",3 , 0 );";  
338 -  
339 - //追加する項目Seqの配列作成  
340 - array_push($arrsSeq, $sSeq[$i]);  
341 - }  
342 - }  
343 - }  
344 - if ($strSQL === false || $strSQL === "") {  
345 - //新規追加なし  
346 - return true;  
347 - }  
348 - //項目テーブルの追加実行  
349 -//echo("<br>追加SEQ:".$strSQL);  
350 - $objRec = pg_exec($strSQL);  
351 - if($objRec==false){  
352 - echo("SQL実行に失敗しました(INSERT)");  
353 - return false;  
354 - }  
355 -  
356 - //権限テーブルの新Seq取得  
357 - $strSQL = "SELECT kengen_seq FROM kengen_tbl ORDER BY kengen_seq DESC";  
358 - $objRec = pg_exec($strSQL);  
359 - if($objRec==false){  
360 - echo("SQL実行に失敗しました(SELECT)");  
361 - return false;  
362 - }  
363 - if(pg_numrows($objRec) > 0){  
364 - $objData = pg_fetch_object($objRec, 0);  
365 - $kSeq = $objData->kengen_seq + 1;  
366 - }  
367 -  
368 - $kcnt = 0;  
369 - $strSQL2 = "";  
370 - //部門に権限を付ける  
371 - $strSQL = "SELECT bumon_seq FROM bumon_tbl WHERE all_flg = 1" ;  
372 - $objRec = pg_exec($strSQL);  
373 - if($objRec==false){  
374 - echo("SQL実行に失敗しました(SELECT)");  
375 - exit;  
376 - }  
377 - if(pg_numrows($objRec) > 0){  
378 - for ($i = 0; $i < pg_numrows($objRec); $i++) {  
379 - $objData = pg_fetch_object($objRec, $i);  
380 - $bumSeq[$i] = $objData->bumon_seq;  
381 -  
382 - for ($j = 0; $j < count($arrsSeq); $j++) {  
383 - //権限テーブルINSERT  
384 - $strSQL2 .= " INSERT INTO kengen_tbl (kengen_seq, bumon_seq, koumoku_seq) ";  
385 - $strSQL2 .= " VALUES(".($kSeq+$kcnt).", ".$bumSeq[$i].", ".$arrsSeq[$j]." );";  
386 - $kcnt++;  
387 - }  
388 - }  
389 - //権限テーブルの追加実行  
390 -//echo("<br>追加SEQ2:".$strSQL2);  
391 - $objRec2 = pg_exec($strSQL2);  
392 - if($objRec2==false){  
393 - echo("SQL実行に失敗しました(INSERT)");  
394 - exit;  
395 - }  
396 - }  
397 - return true;  
398 -}  
399 -  
400 -  
401 -//=======================================  
402 -//=== 小区分リストのUPDATE関数  
403 -//=== 引数:DBの小区分SEQ、NAME、親SEQ、表示順、消費税、配列、  
404 -//=== POSTの小区分SEQ、NAME、親SEQ、表示順、消費税、配列  
405 -//=== 返値:正常時はtrue、異常時はfalse  
406 -//=======================================  
407 -function sKubunUpdate($dbsSeq, $dbsName, $dbsParent, $dbsRank, $dbsZei,  
408 - $sSeq, $sName, $sParent, $sRank, $sZei) {  
409 -  
410 - //DBとPOST共通のSeqを取得  
411 - $arrbuf = array_intersect($dbsSeq, $sSeq);  
412 - $arrsSeq = array_unique($arrbuf);  
413 - $strSQL = "";  
414 -  
415 - //更新処理  
416 - foreach ($arrsSeq as $arrval) {  
417 - //DBとPOSTの各配列から、更新すべきSEQの配列番号を取得  
418 - $dbkey = array_search($arrval, $dbsSeq);  
419 - $pokey = array_search($arrval, $sSeq);  
420 -  
421 - //各値を比較し変更があればUPDATE  
422 - if ( $dbkey !== false && $pokey !== false) {  
423 -//echo("<br>".$arrval." db:".$dbsName[$dbkey].":".$dbsParent[$dbkey].":".$dbsRank[$dbkey].":".$dbsZei[$dbkey]." ");  
424 -//echo("<br>".$arrval." po:".$sName[$pokey].":".$sParent[$pokey].":".$sRank[$pokey].":".$sZei[$pokey]." ");  
425 -  
426 - //各値を比較  
427 - $upflg = false;  
428 - if (strcmp((string)$dbsName[$dbkey], (string)$sName[$pokey]) !== 0) { ;  
429 - $upflg = true;  
430 - }  
431 - if (strcmp((string)$dbsParent[$dbkey], (string)$sParent[$pokey]) !== 0) { ;  
432 - $upflg = true;  
433 - }  
434 - if (strcmp((string)$dbsRank[$dbkey], (string)$sRank[$pokey]) !== 0) { ;  
435 - $upflg = true;  
436 - }  
437 - if (strcmp((string)$dbsZei[$dbkey], (string)$sZei[$pokey]) !== 0) { ;  
438 - $upflg = true;  
439 - }  
440 -  
441 -//echo("<br>up:".$upflg);  
442 - //差分があるレコードはUPDATE  
443 - if ($upflg === true) {  
444 - $strSQL .= "UPDATE koumoku_tbl SET " ;  
445 - $strSQL .= " koumoku_parent = ".$sParent[$pokey].", " ;  
446 - $strSQL .= " koumoku_name = '".$sName[$pokey]."', " ;  
447 - $strSQL .= " disp_rank = ".$sRank[$pokey]." ";  
448 - if (mb_strlen($sZei[$pokey], "EUC-JP") > 0) {  
449 - $strSQL .= ", shouhizei_flg = ".$sZei[$pokey]." " ;  
450 - }  
451 - $strSQL .= " WHERE koumoku_seq = ".$sSeq[$pokey]." AND koumoku_mode = 2 ;" ;  
452 - }  
453 - }  
454 - }  
455 -//echo("<br>更新SEQ:".$strSQL.":bite".strlen( $strSQL));  
456 -  
457 - //$strSQLの実行  
458 - if ( mb_strlen($strSQL, "EUC-JP") > 0) {  
459 - $objRec = pg_exec($strSQL);  
460 - if($objRec==false){  
461 - echo("SQL実行に失敗しました(UPDATE)");  
462 - exit;  
463 - }  
464 - }  
465 -  
466 - return true;  
467 -  
468 -}  
469 -  
470 -header("Location:./SIM0930.php");  
471 -exit;  
472 -  
473 -?>  
474 -//<a href="SIM0930.php">もどる</a>  
Please register or login to post a comment